From fad750ad90961bbcdfee82dd46119caff6cb5f3c Mon Sep 17 00:00:00 2001 From: Wanli Jiang <35160485+Wanli-Jiang@users.noreply.github.com> Date: Tue, 11 Aug 2026 23:34:19 -0700 Subject: [PATCH] [None][doc] Add Qwen3.8 deployment guide and configs Signed-off-by: Wanli Jiang <35160485+Wanli-Jiang@users.noreply.github.com> --- docs/source/_static/config_db.json | 52 +++ docs/source/_static/config_selector.js | 14 +- .../deployment-guide-for-qwen3.5-on-trtllm.md | 257 -------------- ...ent-guide-for-qwen3.8-qwen3.5-on-trtllm.md | 322 ++++++++++++++++++ docs/source/deployment-guide/index.rst | 2 +- docs/source/features/speculative-decoding.md | 2 +- docs/source/models/supported-models.md | 2 +- .../eplb/qwen3.8-ep32-static544-mtp3.yaml | 99 ++++++ .../curated/eplb/qwen3.8-ep32-static544.yaml | 98 ++++++ examples/configs/curated/lookup.yaml | 20 ++ .../curated/qwen3.8-high-throughput-mtp3.yaml | 34 ++ .../curated/qwen3.8-high-throughput.yaml | 32 ++ .../curated/qwen3.8-low-latency-mtp3.yaml | 33 ++ .../configs/curated/qwen3.8-low-latency.yaml | 28 ++ scripts/generate_config_table.py | 40 ++- 15 files changed, 768 insertions(+), 267 deletions(-) delete mode 100644 docs/source/deployment-guide/deployment-guide-for-qwen3.5-on-trtllm.md create mode 100644 docs/source/deployment-guide/deployment-guide-for-qwen3.8-qwen3.5-on-trtllm.md create mode 100644 examples/configs/curated/eplb/qwen3.8-ep32-static544-mtp3.yaml create mode 100644 examples/configs/curated/eplb/qwen3.8-ep32-static544.yaml create mode 100644 examples/configs/curated/qwen3.8-high-throughput-mtp3.yaml create mode 100644 examples/configs/curated/qwen3.8-high-throughput.yaml create mode 100644 examples/configs/curated/qwen3.8-low-latency-mtp3.yaml create mode 100644 examples/configs/curated/qwen3.8-low-latency.yaml diff --git a/docs/source/_static/config_db.json b/docs/source/_static/config_db.json index a63c6245df00..feb0d3ec0383 100644 --- a/docs/source/_static/config_db.json +++ b/docs/source/_static/config_db.json @@ -36,6 +36,54 @@ "model_url": "https://huggingface.co/Qwen/Qwen3-Next-80B-A3B-Thinking", "scenario": "Max Throughput" }, + { + "command": "trtllm-serve Qwen/Qwen3.8-2.4T-A95B-FP8 --config ${TRTLLM_DIR}/examples/configs/curated/qwen3.8-low-latency.yaml", + "config_filename": "qwen3.8-low-latency.yaml", + "config_github_url": "https://github.com/NVIDIA/TensorRT-LLM/blob/main/examples/configs/curated/qwen3.8-low-latency.yaml", + "config_path": "examples/configs/curated/qwen3.8-low-latency.yaml", + "config_raw_url": "https://raw.githubusercontent.com/NVIDIA/TensorRT-LLM/main/examples/configs/curated/qwen3.8-low-latency.yaml", + "gpu_compatibility": "B200, B300, GB200, GB300", + "model": "Qwen/Qwen3.8-2.4T-A95B-FP8", + "model_display_name": "Qwen3.8-2.4T-A95B (FP8)", + "model_url": "https://huggingface.co/Qwen/Qwen3.8-2.4T-A95B-FP8", + "scenario": "Min Latency (No MTP)" + }, + { + "command": "trtllm-serve Qwen/Qwen3.8-2.4T-A95B-FP8 --config ${TRTLLM_DIR}/examples/configs/curated/qwen3.8-low-latency-mtp3.yaml", + "config_filename": "qwen3.8-low-latency-mtp3.yaml", + "config_github_url": "https://github.com/NVIDIA/TensorRT-LLM/blob/main/examples/configs/curated/qwen3.8-low-latency-mtp3.yaml", + "config_path": "examples/configs/curated/qwen3.8-low-latency-mtp3.yaml", + "config_raw_url": "https://raw.githubusercontent.com/NVIDIA/TensorRT-LLM/main/examples/configs/curated/qwen3.8-low-latency-mtp3.yaml", + "gpu_compatibility": "B200, B300, GB200, GB300", + "model": "Qwen/Qwen3.8-2.4T-A95B-FP8", + "model_display_name": "Qwen3.8-2.4T-A95B (FP8)", + "model_url": "https://huggingface.co/Qwen/Qwen3.8-2.4T-A95B-FP8", + "scenario": "Min Latency (MTP3)" + }, + { + "command": "cd \"${TRTLLM_DIR}\" && trtllm-serve Qwen/Qwen3.8-2.4T-A95B-FP8 --config ${TRTLLM_DIR}/examples/configs/curated/qwen3.8-high-throughput.yaml", + "config_filename": "qwen3.8-high-throughput.yaml", + "config_github_url": "https://github.com/NVIDIA/TensorRT-LLM/blob/main/examples/configs/curated/qwen3.8-high-throughput.yaml", + "config_path": "examples/configs/curated/qwen3.8-high-throughput.yaml", + "config_raw_url": "https://raw.githubusercontent.com/NVIDIA/TensorRT-LLM/main/examples/configs/curated/qwen3.8-high-throughput.yaml", + "gpu_compatibility": "B200, B300, GB200, GB300", + "model": "Qwen/Qwen3.8-2.4T-A95B-FP8", + "model_display_name": "Qwen3.8-2.4T-A95B (FP8)", + "model_url": "https://huggingface.co/Qwen/Qwen3.8-2.4T-A95B-FP8", + "scenario": "Max Throughput (Static EPLB, No MTP)" + }, + { + "command": "cd \"${TRTLLM_DIR}\" && trtllm-serve Qwen/Qwen3.8-2.4T-A95B-FP8 --config ${TRTLLM_DIR}/examples/configs/curated/qwen3.8-high-throughput-mtp3.yaml", + "config_filename": "qwen3.8-high-throughput-mtp3.yaml", + "config_github_url": "https://github.com/NVIDIA/TensorRT-LLM/blob/main/examples/configs/curated/qwen3.8-high-throughput-mtp3.yaml", + "config_path": "examples/configs/curated/qwen3.8-high-throughput-mtp3.yaml", + "config_raw_url": "https://raw.githubusercontent.com/NVIDIA/TensorRT-LLM/main/examples/configs/curated/qwen3.8-high-throughput-mtp3.yaml", + "gpu_compatibility": "B200, B300, GB200, GB300", + "model": "Qwen/Qwen3.8-2.4T-A95B-FP8", + "model_display_name": "Qwen3.8-2.4T-A95B (FP8)", + "model_url": "https://huggingface.co/Qwen/Qwen3.8-2.4T-A95B-FP8", + "scenario": "Max Throughput (Static EPLB, MTP3)" + }, { "command": "trtllm-serve nvidia/Qwen3.5-397B-A17B-NVFP4 --config ${TRTLLM_DIR}/examples/configs/curated/qwen3.5.yaml", "config_filename": "qwen3.5.yaml", @@ -4226,6 +4274,10 @@ "display_name": "Qwen3-Next-80B", "url": "https://huggingface.co/Qwen/Qwen3-Next-80B-A3B-Thinking" }, + "Qwen/Qwen3.8-2.4T-A95B-FP8": { + "display_name": "Qwen3.8-2.4T-A95B (FP8)", + "url": "https://huggingface.co/Qwen/Qwen3.8-2.4T-A95B-FP8" + }, "deepseek-ai/DeepSeek-R1-0528": { "display_name": "DeepSeek-R1", "url": "https://huggingface.co/deepseek-ai/DeepSeek-R1-0528" diff --git a/docs/source/_static/config_selector.js b/docs/source/_static/config_selector.js index ca053655923a..b0d5eca2e84b 100644 --- a/docs/source/_static/config_selector.js +++ b/docs/source/_static/config_selector.js @@ -594,11 +594,15 @@ const model = entry._hfModel || entry.model || ""; const configPath = entry.config_path || ""; if (!model || !configPath) return entry.command || ""; - return [ - `export TRTLLM_DIR=/app/tensorrt_llm`, - `trtllm-serve ${model} \\`, - ` --config \${TRTLLM_DIR}/${configPath}`, - ].join("\n"); + const lines = [`export TRTLLM_DIR=/app/tensorrt_llm`]; + // Configs that reference another repo file through a relative path (for example + // moe_config.load_balancer) only resolve it when served from the TensorRT LLM + // directory. generate_config_table.py marks those entries with a cd prefix. + if ((entry.command || "").startsWith("cd ")) { + lines.push(`cd "\${TRTLLM_DIR}"`); + } + lines.push(`trtllm-serve ${model} \\`, ` --config \${TRTLLM_DIR}/${configPath}`); + return lines.join("\n"); } function curatedEntriesForModel(curatedEntries, model) { diff --git a/docs/source/deployment-guide/deployment-guide-for-qwen3.5-on-trtllm.md b/docs/source/deployment-guide/deployment-guide-for-qwen3.5-on-trtllm.md deleted file mode 100644 index dfb0f6192a14..000000000000 --- a/docs/source/deployment-guide/deployment-guide-for-qwen3.5-on-trtllm.md +++ /dev/null @@ -1,257 +0,0 @@ -# Deployment Guide for Qwen3.5 on TensorRT LLM - Blackwell & Hopper Hardware - -## Introduction - -This deployment guide provides step-by-step instructions for running the Qwen3.5-397B-A17B model using TensorRT LLM. It covers model access, environment setup, server configuration, and inference validation. - -## Prerequisites - -* GPU: NVIDIA Blackwell or Hopper Architecture -* OS: Linux -* Drivers: CUDA Driver 575 or Later -* Docker with NVIDIA Container Toolkit installed -* Python3 and python3-pip (Optional, for accuracy evaluation only) - -## Models - -* [nvidia/Qwen3.5-397B-A17B-NVFP4](https://huggingface.co/nvidia/Qwen3.5-397B-A17B-NVFP4) -* [Qwen/Qwen3.5-397B-A17B](https://huggingface.co/Qwen/Qwen3.5-397B-A17B) (base, BF16) - -## GPU Requirements - -The NVFP4 checkpoint is the recommended (and minimum-footprint) deployment precision for Qwen3.5. It quantizes the linear layers in the MoE blocks to NVFP4 and uses an FP8 KV cache. - -| Platform | Minimum GPUs | -|----------|--------------| -| B200 | 4x B200 | -| B300 | 4x B300 | -| GB200 | 4x GB200 | -| GB300 | 4x GB300 | - -The NVFP4 checkpoint has been validated on B200 with `tensor_parallel_size = 4`. A single node of 4 Blackwell GPUs fits the NVFP4 weights plus the KV cache with headroom. - -## Deployment Steps - -### Run Docker Container - -Run the docker container using the TensorRT LLM NVIDIA NGC image. - -```shell -docker run --rm -it \ ---ipc=host \ ---gpus all \ --p 8000:8000 \ --v ~/.cache:/root/.cache:rw \ ---name tensorrt_llm \ -nvcr.io/nvidia/tensorrt-llm/release:x.y.z \ -/bin/bash -``` - -Note: - -* The command mounts your user `.cache` directory to save the downloaded model checkpoints which are saved to `~/.cache/huggingface/hub/` by default. This prevents having to redownload the weights each time you rerun the container. If the `~/.cache` directory doesn't exist please create it using `$ mkdir ~/.cache`. -* You can mount additional directories and paths using the `-v :` flag if needed, such as mounting the downloaded weight paths. -* The command also maps port `8000` from the container to your host so you can access the LLM API endpoint from your host. -* See the for all the available containers. The containers published in the main branch weekly have `rcN` suffix, while the monthly release with QA tests has no `rcN` suffix. Use the `rc` release to get the latest model and feature support. - -If you want to use latest main branch, you can choose to build from source to install TensorRT LLM, the steps refer to [https://nvidia.github.io/TensorRT-LLM/latest/installation/build-from-source.html](https://nvidia.github.io/TensorRT-LLM/latest/installation/build-from-source.html) - -### Recommended Performance Settings - -We maintain YAML configuration files with recommended performance settings in the [`examples/configs`](https://github.com/NVIDIA/TensorRT-LLM/tree/main/examples/configs) directory. These config files are present in the TensorRT LLM container at the path `/app/tensorrt_llm/examples/configs`. You can use these out-of-the-box, or adjust them to your specific use case. - -```shell -TRTLLM_DIR=/app/tensorrt_llm # change as needed to match your environment -EXTRA_LLM_API_FILE=${TRTLLM_DIR}/examples/configs/curated/qwen3.5.yaml -``` - -Note: if you don't have access to the source code locally, you can manually create the YAML config file using the code in the dropdown below. - -````{admonition} Show code -:class: dropdown - -```{literalinclude} ../../../examples/configs/curated/qwen3.5.yaml ---- -language: shell -prepend: | - EXTRA_LLM_API_FILE=/tmp/config.yml - - cat << EOF > ${EXTRA_LLM_API_FILE} -append: EOF ---- -``` -```` - -The config is a starting point tuned for max throughput on 4x B200; adjust the parallelism, batch sizes, and KV cache fraction to match your hardware and traffic pattern. - -### Launch the TensorRT LLM Server - -Below is an example command to launch the TensorRT LLM server with the Qwen3.5 NVFP4 model from within the container. - -```shell -trtllm-serve nvidia/Qwen3.5-397B-A17B-NVFP4 --host 0.0.0.0 --port 8000 --reasoning_parser qwen3_5 --tool_parser qwen3 --config ${EXTRA_LLM_API_FILE} -``` - -Qwen3.5 uses the `qwen3_5` reasoning parser (its chat template pre-injects a `` block, so reasoning starts at the beginning of the response). The `qwen3` tool parser handles the Qwen3 function-call format. - -After the server is set up, the client can now send prompt requests to the server and receive results. - -### LLM API Options (YAML Configuration) - - - -These options provide control over TensorRT LLM's behavior and are set within the YAML file passed to the `trtllm-serve` command via the `--config` argument. - -#### `tensor_parallel_size` - -* **Description:** Sets the **tensor-parallel size**. This should typically match the number of GPUs you intend to use for a single model instance. - -#### `moe_expert_parallel_size` - -* **Description:** Sets the **expert-parallel size** for Mixture-of-Experts (MoE) models. Like `tensor_parallel_size`, this should generally match the number of GPUs you're using. This setting has no effect on non-MoE models. - -#### `enable_attention_dp` - -* **Description:** Enables **attention data parallelism** for the attention/linear-attention layers while keeping the MoE expert-parallel. This generally improves throughput at high concurrency and long context. - -#### `kv_cache_config.free_gpu_memory_fraction` - -* **Description:** A value between `0.0` and `1.0` that specifies the fraction of free GPU memory to reserve for the KV cache after the model is loaded. Since memory usage can fluctuate, this buffer helps prevent out-of-memory (OOM) errors. -* **Recommendation:** If you experience OOM errors, try reducing this value to `0.7` or lower. - -#### `max_batch_size` - -* **Description:** The maximum number of user requests that can be grouped into a single batch for processing. The actual max batch size that can be achieved depends on total sequence length (input + output). - -#### `max_num_tokens` - -* **Description:** The maximum total number of tokens (across all requests) allowed inside a single scheduled batch. - -#### `max_seq_len` - -* **Description:** The maximum possible sequence length for a single request, including both input and generated output tokens. We won't specifically set it. It will be inferred from model config. - -#### `trust_remote_code` - -* **Description:** Allows TensorRT LLM to download models and tokenizers from Hugging Face. This flag is passed directly to the Hugging Face API. - -#### `cuda_graph_config` - -* **Description**: A section for configuring CUDA graphs to optimize performance. - -* **Options**: - - * `enable_padding`: If `"true"`, input batches are padded to the nearest `cuda_graph_batch_size`. This can significantly improve performance. - - **Default**: `false` - - * `max_batch_size`: Sets the maximum batch size for which a CUDA graph will be created. - - **Default**: `0` - - **Recommendation**: Set this to the same value as the `--max_batch_size` command-line option. - -#### `moe_config` - -* **Description**: Configuration for Mixture-of-Experts (MoE) models. - -* **Options**: - - * `backend`: The backend to use for MoE operations. - **Default**: `CUTLASS` - -See the [`TorchLlmArgs` class](https://nvidia.github.io/TensorRT-LLM/llm-api/reference.html#tensorrt_llm.llmapi.TorchLlmArgs) for the full list of options which can be used in the YAML configuration file. - -## Testing API Endpoint - -### Basic Test - -Start a new terminal on the host to test the TensorRT LLM server you just launched. - -You can query the health/readiness of the server using: - -```shell -curl -s -o /dev/null -w "Status: %{http_code}\n" "http://localhost:8000/health" -``` - -When the `Status: 200` code is returned, the server is ready for queries. Note that the very first query may take longer due to initialization and compilation. - -After the TensorRT LLM server is set up and shows Application startup complete, you can send requests to the server. - -```shell -curl http://localhost:8000/v1/chat/completions -H "Content-Type: application/json" -d '{ - "model": "nvidia/Qwen3.5-397B-A17B-NVFP4", - "messages": [ - { - "role": "user", - "content": "Where is New York?" - } - ], - "max_tokens": 1024, - "top_p": 1.0 -}' -w "\n" -``` - -### Troubleshooting Tips - -* If you encounter CUDA out-of-memory errors, try reducing `max_batch_size`, `max_num_tokens`, or `kv_cache_config.free_gpu_memory_fraction`. -* Ensure your model checkpoints are compatible with the expected format. -* For performance issues, check GPU utilization with `nvidia-smi` while the server is running. -* If the container fails to start, verify that the NVIDIA Container Toolkit is properly installed. -* For connection issues, make sure the server port (`8000` in this guide) is not being used by another application. -* Reasoning is controlled with `--reasoning_parser qwen3_5`. To toggle thinking per request, pass `enable_thinking` through `chat_template_kwargs` in the request body, for example `{"chat_template_kwargs": {"enable_thinking": true}}` (set it to `false` to disable reasoning). - -## Benchmarking Performance - -To benchmark the performance of your TensorRT LLM server you can leverage the built-in `benchmark_serving.py` script. To do this, first create a wrapper `bench.sh` script. - -```shell -cat <<'EOF' > bench.sh -#!/usr/bin/env bash -set -euo pipefail - -MODEL_NAME="nvidia/Qwen3.5-397B-A17B-NVFP4" - -concurrency_list="1 2 4 8 16 32 64 128 256" -multi_round=5 -isl=1024 -osl=1024 -result_dir=/tmp/qwen3_5_output - -for concurrency in ${concurrency_list}; do - num_prompts=$((concurrency * multi_round)) - python -m tensorrt_llm.serve.scripts.benchmark_serving \ - --model ${MODEL_NAME} \ - --backend openai \ - --dataset-name "random" \ - --random-input-len ${isl} \ - --random-output-len ${osl} \ - --random-prefix-len 0 \ - --random-ids \ - --num-prompts ${num_prompts} \ - --max-concurrency ${concurrency} \ - --ignore-eos \ - --tokenize-on-client \ - --percentile-metrics "ttft,tpot,itl,e2el" -done -EOF -chmod +x bench.sh -``` - -To achieve max throughput, with attention DP on, one needs to sweep up to `concurrency = max_batch_size * num_gpus`. - -If you want to save the results to a file add the following options. - -```shell ---save-result \ ---result-dir "${result_dir}" \ ---result-filename "concurrency_${concurrency}.json" -``` - -For more benchmarking options see [benchmark_serving.py](https://github.com/NVIDIA/TensorRT-LLM/blob/main/tensorrt_llm/serve/scripts/benchmark_serving.py) - -Run `bench.sh` to begin a serving benchmark. This will take a long time if you run all the concurrencies mentioned in the above `bench.sh` script. - -```shell -./bench.sh -``` diff --git a/docs/source/deployment-guide/deployment-guide-for-qwen3.8-qwen3.5-on-trtllm.md b/docs/source/deployment-guide/deployment-guide-for-qwen3.8-qwen3.5-on-trtllm.md new file mode 100644 index 000000000000..1fa1fbac82f5 --- /dev/null +++ b/docs/source/deployment-guide/deployment-guide-for-qwen3.8-qwen3.5-on-trtllm.md @@ -0,0 +1,322 @@ +# Deployment Guide for Qwen3.8 MoE and Qwen3.5 MoE on TensorRT LLM - Blackwell Hardware + +## Introduction + +This guide describes how to serve the Qwen3.8 MoE and Qwen3.5 MoE hybrid models with the TensorRT LLM PyTorch backend. It covers the following checkpoints: + +* **Qwen3.8-2.4T-A95B MoE FP8** — 2.4 trillion total parameters and 95 billion active parameters per token. +* **Qwen3.5-397B-A17B MoE NVFP4** — 397 billion total parameters and 17 billion active parameters per token. + +The models share the `qwen3_5_moe_text` decoder architecture and use the same TensorRT LLM implementation, registered as `Qwen3_5MoeForCausalLM`. Both interleave three gated-delta-network (GDN) linear-attention layers with one grouped-query-attention (GQA) layer, and both use 512 routed experts with top-10 routing. + +Sharing an implementation does not make their deployment configurations interchangeable. Qwen3.8 MoE is substantially larger, uses an FP8 checkpoint, and is text-only. The NVIDIA Qwen3.5 MoE NVFP4 checkpoint uses a multimodal wrapper around the shared text decoder. Parallelism, quantization backends, cache sizing, and expert placement must be selected for the exact checkpoint. + +## Architecture and Checkpoint Differences + +| Property | Qwen3.8-2.4T-A95B MoE FP8 | Qwen3.5-397B-A17B MoE NVFP4 | +|---|---:|---:| +| Hugging Face text architecture | `Qwen3_5MoeForCausalLM` | `Qwen3_5MoeForCausalLM` inside `Qwen3_5MoeForConditionalGeneration` | +| Decoder layers | 92 | 60 | +| Hidden size | 8192 | 4096 | +| GDN / GQA layers | 69 / 23 | 45 / 15 | +| Routed experts / experts per token | 512 / 10 | 512 / 10 | +| Built-in MTP modules | 1 recurrent module | 1 recurrent module | +| Recommended checkpoint precision in this guide | Block-scaled FP8 routed experts | NVFP4 with FP8 KV cache | +| Modality | Text | Text, image, and video | + +The Qwen3.8 MoE FP8 checkpoint quantizes the routed expert projections to FP8 (E4M3) with 128x128 weight block scales and dynamic activation scaling. Attention, GDN projections, shared experts, routers, embeddings, and the LM head are excluded from quantization and retain their checkpoint dtypes. + +The serving configuration controls the attention KV-cache dtype and GDN recurrent-state dtype independently through `kv_cache_config.dtype` and `kv_cache_config.mamba_ssm_cache_dtype`. The GDN state supports `auto`, `float16`, `bfloat16`, and `float32`. + +## Support Status + +| Capability | Qwen3.8 MoE FP8 | Qwen3.5 MoE NVFP4 | +|---|---|---| +| Aggregated serving | Supported | Supported | +| Disaggregated serving | Supported | Supported | +| MTP speculative decoding | Supported | Supported | +| Static EPLB | Supported | Supported | +| Online EPLB | Supported | Supported | +| Attention data parallelism and expert parallelism | Supported | Supported | +| GDN state replay | Supported | Supported | +| KV cache manager V2 | Supported and default | Supported and default | + +## Performance + +The performance reference uses GB300, aggregated serving, and an exact 8192-input/1024-output-token workload. Low-latency profiles use TP16/EP1 on 16 GPUs at concurrency 1. High-throughput profiles use attention DP with TP32/EP32 on 32 GPUs and a 544-slot static EPLB map. Low-latency throughput is output tokens per second per user (`1000 / median TPOT`); high-throughput is total input-plus-output tokens per second per GPU. + +The following are the best audited Qwen3.8 MoE FP8 checkpoint points across the validated implementation variants: + +| Objective | Speculative decoding | Topology | Concurrency | Best audited value | +|---|---|---|---:|---:| +| Low latency | Disabled | TP16/EP1 | 1 | **133.502 output tok/s/user** (7.491 ms median TPOT) | +| Low latency | MTP3 | TP16/EP1 | 1 | **383.051 output tok/s/user** (2.611 ms median TPOT) | +| High throughput | Disabled | Attention DP32/EP32, Static544 | 3264 | **4059.200 total tok/s/GPU** | +| High throughput | MTP3 | Attention DP32/EP32, Static544 | 2304 | **4118.164 total tok/s/GPU** | + +MTP3 performance results use a controlled accepted-draft count of 2.3. + +## Prerequisites + +* GPU: NVIDIA Blackwell or Hopper Architecture +* OS: Linux +* Drivers: CUDA Driver 575 or Later +* Docker with NVIDIA Container Toolkit installed +* Python3 and python3-pip (Optional, for accuracy evaluation only) + +## Models + +* [Qwen/Qwen3.8-2.4T-A95B-FP8](https://huggingface.co/Qwen/Qwen3.8-2.4T-A95B-FP8) (FP8; the checkpoint the Qwen3.8 profiles in this guide target) +* [Qwen/Qwen3.8-2.4T-A95B](https://huggingface.co/Qwen/Qwen3.8-2.4T-A95B) (base, BF16) +* [nvidia/Qwen3.5-397B-A17B-NVFP4](https://huggingface.co/nvidia/Qwen3.5-397B-A17B-NVFP4) +* [Qwen/Qwen3.5-397B-A17B](https://huggingface.co/Qwen/Qwen3.5-397B-A17B) (base, BF16) + +## GPU Requirements + +The following table lists the minimum validated GPU counts for the checkpoints and platforms covered by this guide: + +| Checkpoint | Platform | Minimum GPUs | +|---|---|---| +| Qwen3.8-2.4T-A95B MoE FP8 | B200 | 16x B200 | +| Qwen3.8-2.4T-A95B MoE FP8 | B300 | 16x B300 | +| Qwen3.8-2.4T-A95B MoE FP8 | GB200 | 16x GB200 | +| Qwen3.8-2.4T-A95B MoE FP8 | GB300 | 16x GB300 | +| Qwen3.5-397B-A17B MoE NVFP4 | B200 | 4x B200 | +| Qwen3.5-397B-A17B MoE NVFP4 | B300 | 4x B300 | +| Qwen3.5-397B-A17B MoE NVFP4 | GB200 | 4x GB200 | +| Qwen3.5-397B-A17B MoE NVFP4 | GB300 | 4x GB300 | + +The Qwen3.8 MoE FP8 checkpoint uses `tensor_parallel_size: 16` for the minimum-GPU configurations on B200, B300, GB200, and GB300. The Qwen3.5 MoE NVFP4 checkpoint has been validated with `tensor_parallel_size: 4`. + +## Deployment Steps + +### Run Docker Container + +Run the docker container using the TensorRT LLM NVIDIA NGC image. + +```shell +docker run --rm -it \ +--ipc=host \ +--gpus all \ +-p 8000:8000 \ +-v ~/.cache:/root/.cache:rw \ +--name tensorrt_llm \ +nvcr.io/nvidia/tensorrt-llm/release:x.y.z \ +/bin/bash +``` + +Note: + +* The command mounts your user `.cache` directory to save the downloaded model checkpoints which are saved to `~/.cache/huggingface/hub/` by default. This prevents having to redownload the weights each time you rerun the container. If the `~/.cache` directory doesn't exist please create it using `$ mkdir ~/.cache`. +* You can mount additional directories and paths using the `-v :` flag if needed, such as mounting the downloaded weight paths. +* The command also maps port `8000` from the container to your host so you can access the LLM API endpoint from your host. +* See the for all the available containers. The containers published in the main branch weekly have `rcN` suffix, while the monthly release with QA tests has no `rcN` suffix. Use the `rc` release to get the latest model and feature support. + +If you want to use latest main branch, you can choose to build from source to install TensorRT LLM, the steps refer to [https://nvidia.github.io/TensorRT-LLM/latest/installation/build-from-source.html](https://nvidia.github.io/TensorRT-LLM/latest/installation/build-from-source.html). + +### Recommended Performance Settings + +We maintain YAML configuration files with recommended performance settings in the [`examples/configs`](https://github.com/NVIDIA/TensorRT-LLM/tree/main/examples/configs) directory. These config files are present in the TensorRT LLM container at the path `/app/tensorrt_llm/examples/configs`. You can use these out-of-the-box, or adjust them to your specific use case. + +Set the TensorRT LLM directory and select one of the configuration files listed below: + +```shell +TRTLLM_DIR=/app/tensorrt_llm # change as needed to match your environment +cd "${TRTLLM_DIR}" +EXTRA_LLM_API_FILE=${TRTLLM_DIR}/examples/configs/curated/qwen3.8-low-latency.yaml +``` + +| Checkpoint | Profile | Configuration file | +|---|---|---| +| Qwen3.8-2.4T-A95B MoE FP8 | Low latency | [`qwen3.8-low-latency.yaml`](../../../examples/configs/curated/qwen3.8-low-latency.yaml) | +| Qwen3.8-2.4T-A95B MoE FP8 | Low latency with MTP3 | [`qwen3.8-low-latency-mtp3.yaml`](../../../examples/configs/curated/qwen3.8-low-latency-mtp3.yaml) | +| Qwen3.8-2.4T-A95B MoE FP8 | High throughput | [`qwen3.8-high-throughput.yaml`](../../../examples/configs/curated/qwen3.8-high-throughput.yaml) | +| Qwen3.8-2.4T-A95B MoE FP8 | High throughput with MTP3 | [`qwen3.8-high-throughput-mtp3.yaml`](../../../examples/configs/curated/qwen3.8-high-throughput-mtp3.yaml) | +| Qwen3.5-397B-A17B MoE NVFP4 | General deployment | [`qwen3.5.yaml`](../../../examples/configs/curated/qwen3.5.yaml) | + +The MTP draft length is configurable through `speculative_config.max_draft_len`; the MTP3 profiles set it to 3. The high-throughput profiles use the following static expert placements: + +| Profile | Static EPLB configuration | +|---|---| +| High throughput without MTP | [`qwen3.8-ep32-static544.yaml`](../../../examples/configs/curated/eplb/qwen3.8-ep32-static544.yaml) | +| High throughput with MTP3 | [`qwen3.8-ep32-static544-mtp3.yaml`](../../../examples/configs/curated/eplb/qwen3.8-ep32-static544-mtp3.yaml) | + +Each file assigns expert IDs to 544 global slots for every MoE layer. Repeated expert IDs create replicas of heavily routed experts. `layer_updates_per_iter: 0` keeps the assignment static. The no-MTP map covers the 92 target-model layers, while the MTP3 map also includes the MTP layer. These placements are specific to Qwen3.8-2.4T-A95B, EP32, the selected MTP mode, and the benchmark traffic distribution. Generate a new placement when any of those inputs changes. See the [EPLB example](https://github.com/NVIDIA/TensorRT-LLM/tree/main/examples/wide_ep/ep_load_balancer) for collecting routing statistics and generating a placement file. + +### Launch the TensorRT LLM Server + +Below is an example command to launch the TensorRT LLM server from within the container with the checkpoint that matches the configuration file you selected above. + +```shell +trtllm-serve --host 0.0.0.0 --port 8000 --reasoning_parser qwen3_5 --tool_parser qwen3 --config ${EXTRA_LLM_API_FILE} +``` + +Qwen3.8 and Qwen3.5 both use the `qwen3_5` reasoning parser (their chat template pre-injects a `` block, so reasoning starts at the beginning of the response). The `qwen3` tool parser handles the Qwen3 function-call format. + +After the server is set up, the client can now send prompt requests to the server and receive results. + +## Testing API Endpoint + +### Basic Test + +Start a new terminal on the host to test the TensorRT LLM server you just launched. + +You can query the health/readiness of the server using: + +```shell +curl -s -o /dev/null -w "Status: %{http_code}\n" "http://localhost:8000/health" +``` + +When the `Status: 200` code is returned, the server is ready for queries. Note that the very first query may take longer due to initialization and compilation. + +After the TensorRT LLM server is set up and shows Application startup complete, you can send requests to the server. + +```shell +curl http://localhost:8000/v1/chat/completions -H "Content-Type: application/json" -d '{ + "model": "", + "messages": [ + { + "role": "user", + "content": "Where is New York?" + } + ], + "max_tokens": 1024, + "top_p": 1.0 +}' -w "\n" +``` + +## Benchmarking Performance + +To benchmark the performance of your TensorRT LLM server you can leverage the built-in `benchmark_serving.py` script. To do this, first create a wrapper `bench.sh` script. + +```shell +cat <<'EOF' > bench.sh +#!/usr/bin/env bash +set -euo pipefail + +MODEL_NAME="" + +concurrency_list="1 2 4 8 16 32 64 128 256" +multi_round=5 +isl=8192 +osl=1024 +result_dir=/tmp/qwen3_output + +for concurrency in ${concurrency_list}; do + num_prompts=$((concurrency * multi_round)) + python -m tensorrt_llm.serve.scripts.benchmark_serving \ + --model ${MODEL_NAME} \ + --backend openai \ + --dataset-name "random" \ + --random-input-len ${isl} \ + --random-output-len ${osl} \ + --random-prefix-len 0 \ + --random-ids \ + --num-prompts ${num_prompts} \ + --max-concurrency ${concurrency} \ + --ignore-eos \ + --tokenize-on-client \ + --percentile-metrics "ttft,tpot,itl,e2el" +done +EOF +chmod +x bench.sh +``` + +To achieve max throughput, with attention DP on, one needs to sweep up to `concurrency = max_batch_size * num_gpus`. + +If you want to save the results to a file add the following options. + +```shell +--save-result \ +--result-dir "${result_dir}" \ +--result-filename "concurrency_${concurrency}.json" +``` + +For more benchmarking options see [benchmark_serving.py](https://github.com/NVIDIA/TensorRT-LLM/blob/main/tensorrt_llm/serve/scripts/benchmark_serving.py) + +Run `bench.sh` to begin a serving benchmark. This will take a long time if you run all the concurrencies mentioned in the above `bench.sh` script. + +```shell +./bench.sh +``` + +## Key Configuration Options + +These options control TensorRT LLM behavior and are set in the YAML file passed to `trtllm-serve` with the `--config` argument. + +### `tensor_parallel_size` + +Sets the tensor-parallel size. This should typically match the number of GPUs used by one model instance. + +### `moe_expert_parallel_size` + +Sets the expert-parallel size for MoE layers. It can differ from the attention tensor-parallel behavior when attention data parallelism is enabled. + +### `enable_attention_dp` + +Enables data parallelism for attention and linear-attention layers while keeping the MoE layers expert-parallel. This is primarily a throughput-oriented configuration. + +### `kv_cache_config.free_gpu_memory_fraction` + +Specifies the fraction of free GPU memory reserved for the KV cache after the model is loaded. Reduce this value if initialization reports an out-of-memory error. + +### `kv_cache_config.use_kv_cache_manager_v2` + +Selects KV cache manager V2 when set to `true`. Preserve the value in the curated profile unless the alternative cache-management path has been qualified with the selected topology and MTP mode. + +### `kv_cache_config.avg_seq_len` + +Helps KV cache manager V2 divide memory between attention KV blocks and recurrent GDN state. Set it to the expected average total sequence length for throughput deployments. + +### `kv_cache_config.mamba_ssm_cache_dtype` + +Selects the GDN recurrent-state dtype independently of the attention KV-cache dtype. Supported values are `auto`, `float16`, `bfloat16`, and `float32`. + +### `max_batch_size` + +Sets the maximum number of requests that can be grouped into one scheduled batch. The achievable batch size also depends on the total input and output sequence lengths. + +### `max_num_tokens` + +Sets the maximum total number of tokens across all requests in one scheduled batch. + +### `max_seq_len` + +Sets the maximum sequence length for one request, including input and generated tokens. + +### `trust_remote_code` + +Allows Hugging Face to load custom model and tokenizer code from the model repository. Enable it only for trusted model sources. + +### `cuda_graph_config` + +Controls CUDA graph capture and padding: + +* `enable_padding`: Pads input batches to a captured CUDA graph batch size. +* `max_batch_size`: Sets the largest batch size for which CUDA graphs are captured. + +### `moe_config` + +Controls MoE execution: + +* `backend`: Selects the MoE backend. +* `max_num_tokens`: Limits the number of tokens processed by one fused MoE invocation before chunking. +* `load_balancer`: Accepts a static EPLB configuration file or an inline Online EPLB configuration. + +### `speculative_config.max_draft_len` + +Sets the MTP draft length. Tune it for the deployment objective; the MTP3 profiles set it to 3. + +See the [`TorchLlmArgs` API reference](https://nvidia.github.io/TensorRT-LLM/llm-api/reference.html#tensorrt_llm.llmapi.TorchLlmArgs) for the complete configuration schema, [KV cache documentation](../features/kvcache.md) for hybrid-state cache settings, and [speculative decoding documentation](../features/speculative-decoding.md) for MTP details. + +## Troubleshooting Tips + +* If you encounter CUDA out-of-memory errors, try reducing `max_batch_size`, `max_num_tokens`, or `kv_cache_config.free_gpu_memory_fraction`. If the error occurs during CUDA graph capture, also reduce `cuda_graph_config.max_batch_size`. +* Ensure your model checkpoints are compatible with the expected format. If a Qwen3.8 MoE checkpoint is routed to an unsupported architecture, verify that its `config.json` advertises `Qwen3_5MoeForCausalLM` and `qwen3_5_moe_text`. +* If MTP output is empty or incorrect, confirm that the checkpoint contains its MTP weights and that the selected `max_draft_len` is configured consistently on every rank. +* For performance issues, check GPU utilization with `nvidia-smi` while the server is running and complete initialization and warmup before measuring performance. +* If static EPLB regresses throughput, verify the placement-file hash and `num_slots`, and recollect statistics using representative traffic. Do not reuse a map from another checkpoint or MTP mode. +* If online EPLB is enabled, wait for the configured observation and migration period before measuring steady state, and retain logs that show completed layer updates. +* If the container fails to start, verify that the NVIDIA Container Toolkit is properly installed. +* For connection issues, make sure the server port (`8000` in this guide) is not being used by another application. +* Reasoning is controlled with `--reasoning_parser qwen3_5`. To toggle thinking per request, pass `enable_thinking` through `chat_template_kwargs` in the request body, for example `{"chat_template_kwargs": {"enable_thinking": true}}` (set it to `false` to disable reasoning). diff --git a/docs/source/deployment-guide/index.rst b/docs/source/deployment-guide/index.rst index 006f63fe87a2..ae4fabe886ab 100644 --- a/docs/source/deployment-guide/index.rst +++ b/docs/source/deployment-guide/index.rst @@ -34,7 +34,7 @@ The deployment guides below provide more detailed instructions for serving speci deployment-guide-for-llama4-scout-on-trtllm.md deployment-guide-for-gpt-oss-on-trtllm.md deployment-guide-for-qwen3-on-trtllm.md - deployment-guide-for-qwen3.5-on-trtllm.md + deployment-guide-for-qwen3.8-qwen3.5-on-trtllm.md deployment-guide-for-kimi-k2-thinking-on-trtllm.md deployment-guide-for-kimi-k3-on-trtllm.md deployment-guide-for-glm-5-on-trtllm.md diff --git a/docs/source/features/speculative-decoding.md b/docs/source/features/speculative-decoding.md index 33e384dc3381..848112cc31f9 100644 --- a/docs/source/features/speculative-decoding.md +++ b/docs/source/features/speculative-decoding.md @@ -103,7 +103,7 @@ llm = LLM("/path/to/target_model", speculative_config=speculative_config, disabl ### MTP -MTP is supported by DeepSeek models and other architectures that ship native MTP modules (including Step-3.x). MTP can be tuned with the following configuration options: +MTP is supported by DeepSeek models and other architectures that ship native MTP modules, including Qwen3.8 MoE, Qwen3.5 MoE, and Step-3.x. MTP can be tuned with the following configuration options: * `max_draft_len`: Maximum draft candidate length. * `num_nextn_predict_layers`: Number of MTP modules to use. Currently must match `max_draft_len`. diff --git a/docs/source/models/supported-models.md b/docs/source/models/supported-models.md index fd77fd29eb72..ddf98f350c74 100644 --- a/docs/source/models/supported-models.md +++ b/docs/source/models/supported-models.md @@ -55,7 +55,7 @@ The following is a table of supported models for the PyTorch backend: | `Qwen3ForTextEmbedding` | Qwen3-Embedding | `Qwen/Qwen3-Embedding-8B` | | `Qwen3MoeForCausalLM` | Qwen3MoE | `Qwen/Qwen3-30B-A3B` | | `Qwen3NextForCausalLM` | Qwen3Next | `Qwen/Qwen3-Next-80B-A3B-Thinking` | -| `Qwen3_5MoeForCausalLM` | Qwen3.5-MoE | `Qwen/Qwen3.5-397B-A17B` | +| `Qwen3_5MoeForCausalLM` | Qwen3.8-MoE, Qwen3.5-MoE | `Qwen/Qwen3.8-2.4T-A95B`, `Qwen/Qwen3.5-397B-A17B` | | `SeedOssForCausalLM` [^5] | Seed OSS, Seed-Coder | `ByteDance-Seed/Seed-OSS-36B-Instruct` | | `SkyworkR1V2ForConditionalGeneration` [^5] | Skywork R1V2, Skywork SWE | `Skywork/Skywork-R1V2-38B` | | `SmolLM3ForCausalLM` [^5] | SmolLM3 | `HuggingFaceTB/SmolLM3-3B` | diff --git a/examples/configs/curated/eplb/qwen3.8-ep32-static544-mtp3.yaml b/examples/configs/curated/eplb/qwen3.8-ep32-static544-mtp3.yaml new file mode 100644 index 000000000000..3a6f9c9c94aa --- /dev/null +++ b/examples/configs/curated/eplb/qwen3.8-ep32-static544-mtp3.yaml @@ -0,0 +1,99 @@ +# Copyright (c) 2026, NVIDIA CORPORATION. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +initial_global_assignments: + 0: [422, 305, 245, 404, 210, 93, 6, 143, 240, 410, 215, 255, 202, 385, 126, 507, 10, 192, 305, 426, 399, 442, 70, 348, 241, 151, 194, 401, 258, 382, 122, 167, 477, 49, 184, 374, 137, 443, 408, 326, 83, 4, 344, 488, 467, 121, 321, 191, 95, 504, 182, 184, 374, 448, 73, 355, 316, 293, 300, 226, 157, 501, 489, 471, 102, 511, 20, 452, 250, 337, 188, 162, 216, 320, 201, 447, 37, 144, 85, 252, 469, 281, 486, 260, 116, 140, 32, 189, 493, 415, 119, 107, 317, 366, 445, 235, 47, 177, 42, 52, 11, 428, 140, 32, 165, 12, 313, 506, 274, 222, 430, 346, 356, 272, 457, 80, 161, 383, 3, 205, 82, 380, 375, 318, 263, 91, 62, 460, 135, 117, 400, 496, 411, 354, 295, 409, 158, 22, 142, 434, 26, 128, 233, 473, 376, 458, 455, 105, 5, 432, 309, 72, 307, 290, 87, 35, 470, 86, 77, 71, 225, 193, 244, 327, 259, 51, 377, 61, 103, 357, 290, 148, 380, 361, 39, 286, 141, 180, 43, 239, 508, 405, 104, 101, 303, 118, 69, 290, 148, 438, 420, 298, 446, 444, 359, 15, 48, 28, 207, 277, 292, 386, 461, 236, 416, 46, 111, 125, 279, 248, 136, 17, 139, 280, 365, 59, 368, 472, 435, 204, 459, 416, 476, 456, 294, 475, 84, 44, 170, 479, 268, 323, 369, 256, 384, 199, 21, 58, 416, 87, 340, 195, 14, 474, 63, 243, 481, 363, 132, 423, 287, 186, 312, 306, 296, 419, 219, 249, 146, 217, 273, 412, 127, 206, 315, 494, 276, 329, 208, 0, 498, 441, 55, 54, 389, 362, 100, 94, 74, 88, 449, 8, 465, 64, 334, 56, 198, 224, 345, 55, 271, 227, 414, 266, 418, 427, 490, 60, 388, 491, 187, 304, 509, 89, 166, 364, 229, 54, 164, 108, 178, 25, 2, 50, 264, 13, 133, 163, 67, 396, 283, 254, 16, 229, 54, 242, 342, 341, 483, 160, 322, 478, 270, 185, 152, 333, 134, 214, 351, 454, 123, 267, 282, 463, 106, 487, 79, 110, 482, 57, 196, 360, 183, 18, 29, 433, 169, 36, 429, 211, 275, 319, 393, 114, 90, 349, 9, 464, 379, 131, 265, 510, 31, 96, 36, 503, 282, 221, 23, 398, 407, 30, 431, 75, 38, 99, 468, 284, 159, 314, 223, 36, 267, 218, 350, 402, 406, 174, 1, 154, 451, 417, 436, 53, 112, 425, 171, 347, 237, 429, 394, 390, 92, 372, 179, 150, 343, 367, 330, 484, 113, 336, 325, 278, 246, 371, 466, 500, 200, 230, 311, 155, 328, 228, 98, 213, 439, 331, 129, 247, 308, 395, 371, 450, 301, 397, 7, 149, 181, 261, 27, 109, 40, 81, 269, 145, 373, 66, 370, 371, 429, 301, 197, 168, 156, 190, 299, 505, 387, 353, 480, 297, 485, 502, 251, 203, 147, 231, 456, 253, 220, 310, 19, 453, 176, 289, 234, 495, 209, 392, 302, 45, 332, 147, 173, 164, 212, 138, 130, 403, 381, 492, 34, 413, 324, 288, 424, 421, 291, 338, 147, 499, 211, 238, 33, 335, 339, 124, 440, 97, 76, 120, 352, 115, 262, 172, 41, 147, 499, 24, 497, 462, 437, 65, 232, 175, 153, 257, 358, 285, 68, 391, 78, 378] + 1: [18, 305, 288, 175, 360, 209, 466, 469, 304, 448, 307, 188, 395, 340, 509, 27, 5, 36, 324, 431, 161, 45, 174, 170, 235, 179, 38, 250, 150, 96, 144, 287, 510, 358, 36, 324, 88, 400, 240, 280, 122, 114, 289, 42, 362, 9, 301, 57, 202, 189, 483, 128, 504, 251, 113, 227, 139, 294, 99, 298, 354, 87, 166, 486, 75, 208, 271, 85, 194, 62, 507, 365, 28, 25, 115, 436, 320, 382, 492, 79, 449, 372, 332, 438, 118, 194, 504, 129, 238, 254, 211, 56, 54, 180, 52, 371, 497, 281, 355, 73, 275, 278, 228, 65, 348, 274, 82, 159, 394, 387, 234, 29, 3, 205, 119, 435, 198, 369, 183, 228, 386, 23, 64, 138, 325, 392, 309, 357, 231, 266, 500, 291, 201, 199, 502, 276, 228, 152, 356, 490, 80, 155, 142, 123, 225, 93, 487, 133, 421, 284, 10, 468, 474, 228, 152, 356, 19, 4, 76, 475, 415, 14, 146, 433, 7, 477, 366, 33, 220, 452, 295, 32, 342, 451, 328, 143, 191, 334, 489, 97, 462, 17, 505, 68, 440, 398, 408, 295, 65, 23, 248, 117, 460, 229, 100, 95, 69, 428, 277, 134, 482, 236, 379, 414, 445, 66, 459, 279, 71, 177, 338, 493, 367, 335, 405, 410, 74, 297, 126, 424, 136, 445, 32, 21, 481, 132, 224, 241, 457, 437, 454, 106, 53, 347, 72, 264, 197, 378, 31, 256, 41, 267, 472, 232, 101, 204, 77, 110, 165, 488, 94, 399, 476, 260, 404, 31, 15, 312, 156, 329, 8, 326, 195, 480, 127, 107, 89, 282, 385, 397, 182, 479, 31, 116, 353, 268, 300, 423, 184, 299, 11, 176, 390, 364, 51, 120, 368, 302, 162, 31, 412, 341, 61, 35, 168, 484, 290, 242, 148, 389, 112, 388, 46, 315, 223, 145, 181, 406, 292, 473, 417, 121, 422, 262, 149, 221, 396, 141, 147, 13, 59, 140, 135, 181, 406, 292, 1, 458, 259, 157, 30, 20, 207, 323, 246, 226, 407, 343, 171, 90, 321, 104, 341, 261, 296, 78, 495, 416, 169, 311, 351, 427, 257, 339, 213, 37, 345, 63, 160, 151, 16, 12, 327, 222, 441, 125, 86, 47, 350, 206, 478, 450, 105, 419, 272, 160, 151, 446, 98, 2, 192, 425, 420, 130, 270, 508, 361, 164, 373, 336, 263, 506, 344, 245, 214, 501, 210, 391, 499, 461, 453, 331, 376, 103, 24, 111, 426, 464, 383, 308, 190, 163, 131, 447, 247, 491, 237, 317, 470, 217, 310, 230, 413, 187, 203, 383, 409, 443, 318, 380, 337, 319, 403, 456, 154, 363, 303, 186, 158, 243, 375, 40, 383, 409, 245, 511, 411, 193, 55, 306, 0, 44, 83, 48, 349, 498, 253, 108, 439, 383, 153, 305, 432, 384, 244, 67, 381, 39, 370, 401, 49, 293, 402, 393, 102, 249, 442, 285, 342, 58, 215, 359, 258, 43, 322, 91, 352, 70, 434, 455, 200, 26, 467, 172, 218, 178, 313, 333, 34, 233, 81, 216, 418, 137, 330, 185, 429, 374, 255, 269, 172, 218, 60, 485, 465, 444, 50, 265, 316, 283, 377, 471, 196, 346, 22, 239, 286, 430, 124, 252, 503, 173, 219, 84, 496, 92, 494, 212, 273, 314, 167, 463, 109, 6] + 2: [484, 390, 510, 320, 196, 405, 134, 4, 247, 157, 310, 351, 473, 123, 63, 96, 370, 324, 245, 401, 124, 426, 83, 208, 288, 444, 352, 74, 228, 146, 3, 465, 325, 454, 203, 251, 202, 333, 180, 476, 246, 85, 270, 466, 319, 39, 338, 189, 109, 327, 194, 203, 251, 78, 171, 132, 94, 198, 308, 212, 393, 188, 470, 52, 48, 307, 106, 447, 203, 115, 367, 461, 397, 257, 345, 165, 243, 119, 144, 421, 377, 496, 374, 483, 279, 203, 166, 69, 217, 2, 229, 315, 378, 44, 417, 103, 122, 359, 170, 457, 295, 110, 203, 28, 267, 363, 313, 304, 494, 249, 59, 340, 114, 427, 493, 449, 373, 423, 277, 258, 435, 431, 409, 283, 489, 380, 456, 453, 289, 330, 250, 76, 21, 237, 375, 424, 258, 435, 92, 268, 469, 240, 446, 23, 278, 265, 140, 291, 227, 232, 429, 486, 398, 258, 321, 160, 90, 62, 89, 88, 508, 455, 459, 364, 41, 420, 408, 82, 20, 80, 258, 321, 400, 509, 361, 478, 414, 60, 328, 360, 178, 167, 49, 33, 158, 372, 448, 258, 42, 440, 151, 365, 38, 17, 238, 143, 27, 300, 348, 50, 192, 84, 29, 95, 346, 322, 403, 168, 99, 339, 343, 57, 264, 22, 259, 504, 384, 438, 387, 102, 341, 262, 382, 224, 100, 201, 334, 415, 174, 104, 329, 260, 244, 503, 19, 433, 394, 53, 262, 322, 490, 148, 176, 230, 411, 385, 136, 47, 371, 336, 442, 314, 439, 7, 86, 220, 31, 355, 266, 152, 344, 155, 419, 326, 32, 131, 263, 462, 299, 392, 5, 70, 220, 31, 55, 505, 128, 1, 225, 6, 430, 147, 154, 125, 10, 236, 181, 184, 71, 220, 272, 491, 164, 271, 347, 197, 451, 200, 54, 349, 292, 418, 68, 323, 492, 389, 220, 272, 239, 113, 45, 316, 221, 182, 391, 502, 64, 30, 175, 117, 87, 156, 318, 199, 36, 133, 179, 159, 97, 379, 434, 255, 353, 399, 297, 332, 432, 248, 475, 234, 199, 298, 218, 290, 406, 337, 477, 487, 241, 195, 107, 463, 186, 471, 72, 183, 425, 12, 193, 472, 161, 368, 211, 284, 485, 153, 121, 254, 376, 190, 18, 282, 511, 317, 12, 193, 395, 335, 34, 381, 149, 497, 24, 129, 205, 474, 108, 500, 127, 413, 213, 12, 81, 138, 309, 204, 358, 93, 506, 222, 499, 275, 402, 142, 253, 14, 354, 362, 12, 36, 207, 37, 139, 26, 162, 105, 177, 145, 209, 0, 226, 301, 422, 75, 56, 311, 215, 366, 43, 482, 13, 306, 16, 141, 187, 25, 173, 137, 428, 77, 412, 51, 404, 235, 11, 498, 98, 256, 305, 460, 67, 443, 169, 214, 441, 452, 269, 436, 73, 404, 274, 91, 233, 112, 65, 458, 66, 507, 357, 383, 280, 294, 9, 40, 479, 210, 404, 215, 252, 286, 312, 276, 501, 116, 150, 46, 101, 281, 488, 206, 342, 293, 191, 404, 215, 8, 480, 388, 396, 120, 58, 468, 15, 172, 126, 287, 111, 369, 79, 481, 464, 235, 445, 35, 386, 302, 118, 231, 216, 356, 223, 416, 61, 350, 163, 185, 273, 235, 235, 135, 407, 495, 331, 410, 467, 450, 285, 296, 303, 242, 437, 261, 219, 130] + 3: [445, 228, 188, 210, 103, 358, 183, 477, 302, 127, 426, 333, 331, 23, 500, 284, 123, 445, 228, 347, 128, 435, 335, 330, 28, 49, 160, 310, 433, 143, 107, 121, 130, 493, 445, 316, 97, 271, 41, 99, 195, 78, 146, 233, 314, 412, 421, 215, 69, 80, 369, 445, 316, 414, 489, 385, 135, 82, 109, 196, 225, 187, 372, 449, 229, 275, 452, 303, 382, 361, 243, 203, 90, 11, 200, 17, 480, 406, 304, 29, 441, 45, 46, 91, 70, 218, 120, 27, 66, 235, 344, 105, 351, 511, 341, 112, 249, 162, 301, 404, 383, 129, 218, 120, 298, 308, 313, 261, 169, 307, 498, 305, 444, 405, 468, 182, 376, 198, 381, 320, 446, 281, 280, 458, 77, 63, 343, 213, 461, 179, 159, 357, 43, 174, 486, 117, 267, 446, 68, 346, 118, 54, 418, 451, 443, 9, 424, 38, 25, 293, 479, 170, 255, 89, 56, 234, 380, 110, 164, 309, 422, 57, 157, 153, 26, 44, 0, 194, 253, 141, 89, 214, 475, 321, 429, 485, 114, 272, 339, 263, 507, 353, 181, 315, 47, 491, 296, 89, 469, 324, 459, 113, 232, 111, 481, 375, 98, 297, 278, 75, 71, 133, 134, 269, 89, 469, 419, 37, 317, 219, 186, 442, 311, 510, 192, 12, 470, 163, 399, 216, 266, 440, 226, 7, 212, 279, 245, 171, 408, 254, 268, 487, 434, 258, 409, 488, 40, 197, 247, 299, 482, 241, 478, 209, 239, 265, 161, 32, 191, 499, 360, 95, 332, 172, 15, 247, 299, 102, 354, 60, 386, 325, 393, 67, 262, 24, 402, 101, 55, 425, 59, 1, 291, 34, 326, 494, 427, 155, 396, 42, 312, 166, 236, 431, 328, 178, 156, 356, 465, 291, 299, 417, 223, 93, 204, 276, 224, 355, 150, 14, 322, 206, 73, 350, 395, 509, 388, 167, 482, 83, 119, 108, 4, 334, 257, 286, 256, 288, 365, 306, 503, 411, 460, 240, 227, 466, 96, 2, 33, 184, 244, 505, 19, 390, 222, 471, 287, 432, 116, 39, 240, 230, 340, 149, 367, 292, 420, 72, 18, 64, 248, 205, 413, 20, 398, 439, 450, 240, 230, 250, 36, 84, 147, 144, 329, 327, 79, 362, 259, 165, 124, 13, 282, 88, 240, 230, 250, 392, 87, 142, 202, 323, 208, 106, 104, 506, 394, 185, 193, 51, 502, 240, 167, 391, 168, 260, 483, 294, 448, 359, 496, 22, 6, 273, 400, 363, 464, 158, 201, 3, 173, 264, 504, 476, 221, 336, 484, 373, 85, 423, 137, 115, 139, 462, 371, 349, 366, 251, 231, 180, 473, 501, 474, 61, 410, 377, 86, 207, 132, 492, 30, 50, 467, 345, 352, 122, 126, 295, 428, 387, 5, 490, 53, 430, 374, 319, 176, 211, 151, 467, 345, 397, 368, 348, 337, 35, 454, 189, 378, 62, 237, 65, 318, 438, 238, 447, 467, 199, 48, 217, 177, 415, 74, 140, 81, 384, 455, 283, 290, 242, 364, 145, 508, 246, 457, 274, 300, 342, 52, 92, 497, 76, 389, 453, 190, 152, 154, 495, 401, 148, 457, 457, 136, 416, 8, 403, 379, 31, 463, 94, 138, 100, 437, 220, 338, 436, 10, 457, 457, 370, 285, 277, 407, 252, 131, 16, 472, 175, 456, 289, 270, 58, 125, 21] + 4: [53, 334, 244, 351, 21, 371, 93, 200, 57, 309, 265, 450, 413, 479, 95, 87, 422, 53, 299, 165, 218, 92, 237, 47, 424, 240, 347, 201, 436, 6, 178, 182, 7, 51, 3, 2, 35, 231, 472, 384, 396, 45, 22, 298, 31, 58, 482, 42, 151, 173, 389, 3, 106, 403, 365, 88, 158, 262, 409, 66, 339, 457, 428, 128, 56, 416, 180, 220, 3, 106, 138, 192, 378, 355, 227, 476, 364, 278, 404, 132, 287, 485, 470, 387, 206, 3, 481, 184, 373, 153, 20, 171, 471, 366, 54, 97, 67, 249, 303, 108, 261, 167, 217, 198, 474, 391, 169, 124, 328, 454, 189, 52, 202, 308, 469, 68, 89, 357, 85, 228, 292, 38, 172, 251, 465, 40, 361, 245, 72, 143, 338, 425, 359, 0, 350, 243, 228, 430, 99, 142, 500, 36, 455, 17, 135, 64, 327, 368, 505, 330, 216, 275, 84, 228, 430, 468, 282, 280, 446, 37, 420, 246, 34, 5, 388, 393, 383, 290, 427, 140, 228, 380, 196, 147, 401, 410, 473, 207, 461, 76, 157, 219, 448, 185, 230, 277, 105, 228, 380, 170, 253, 48, 397, 13, 160, 41, 9, 400, 229, 120, 29, 155, 27, 462, 94, 421, 267, 296, 323, 442, 191, 501, 103, 98, 78, 233, 477, 28, 488, 417, 136, 94, 199, 490, 183, 352, 398, 109, 381, 412, 438, 232, 186, 211, 110, 333, 453, 166, 270, 210, 81, 18, 197, 464, 345, 484, 301, 23, 26, 329, 316, 324, 215, 294, 506, 270, 402, 62, 75, 73, 63, 319, 418, 372, 83, 252, 65, 163, 55, 478, 293, 508, 270, 129, 405, 115, 362, 181, 268, 349, 71, 187, 121, 407, 259, 19, 452, 305, 177, 43, 284, 133, 111, 353, 460, 134, 304, 122, 247, 325, 113, 451, 456, 8, 24, 264, 43, 499, 342, 503, 411, 101, 225, 295, 314, 269, 493, 248, 408, 82, 311, 341, 385, 43, 395, 239, 125, 429, 348, 86, 447, 50, 434, 263, 367, 226, 307, 272, 16, 458, 43, 210, 441, 487, 315, 266, 423, 150, 208, 255, 399, 382, 146, 467, 156, 444, 321, 59, 284, 489, 256, 234, 331, 310, 11, 377, 107, 118, 486, 439, 46, 222, 14, 360, 59, 284, 127, 74, 116, 195, 12, 91, 297, 285, 419, 495, 254, 235, 498, 274, 369, 509, 284, 374, 322, 306, 317, 426, 161, 279, 291, 494, 104, 126, 131, 344, 318, 130, 463, 60, 445, 370, 337, 119, 386, 176, 179, 112, 354, 300, 271, 152, 44, 242, 302, 463, 415, 1, 79, 496, 117, 96, 214, 440, 221, 61, 190, 33, 497, 443, 174, 241, 480, 69, 162, 260, 39, 394, 276, 340, 346, 375, 154, 510, 343, 70, 223, 32, 504, 480, 69, 358, 459, 209, 435, 25, 77, 433, 188, 406, 475, 379, 363, 204, 390, 30, 480, 60, 80, 432, 483, 145, 449, 392, 289, 90, 10, 414, 257, 224, 141, 123, 320, 480, 60, 236, 212, 281, 102, 283, 507, 332, 258, 326, 335, 437, 431, 502, 194, 213, 286, 286, 100, 273, 511, 148, 149, 159, 193, 168, 466, 164, 356, 491, 250, 144, 336, 286, 286, 139, 376, 312, 313, 492, 49, 288, 137, 4, 203, 114, 205, 175, 15, 238] + 5: [351, 422, 240, 319, 415, 142, 430, 140, 206, 274, 449, 491, 511, 228, 316, 440, 127, 351, 80, 64, 1, 73, 374, 385, 365, 487, 315, 407, 340, 2, 498, 50, 213, 420, 351, 80, 275, 465, 272, 393, 459, 312, 137, 68, 113, 203, 398, 490, 197, 205, 254, 351, 0, 431, 152, 478, 276, 503, 151, 334, 286, 41, 249, 333, 202, 307, 447, 164, 351, 58, 269, 63, 354, 18, 293, 302, 180, 472, 284, 90, 317, 370, 111, 223, 252, 324, 457, 6, 57, 400, 118, 371, 427, 461, 232, 429, 460, 446, 466, 390, 361, 154, 324, 218, 322, 425, 326, 94, 455, 268, 433, 129, 14, 501, 7, 463, 392, 114, 153, 324, 422, 259, 287, 388, 167, 303, 229, 115, 110, 161, 266, 82, 97, 256, 485, 225, 243, 216, 380, 308, 362, 30, 20, 432, 468, 510, 323, 98, 214, 450, 488, 328, 285, 243, 216, 99, 368, 509, 305, 226, 184, 304, 355, 441, 194, 3, 71, 424, 103, 101, 253, 482, 173, 321, 356, 193, 74, 220, 481, 100, 469, 496, 12, 158, 241, 410, 437, 489, 196, 116, 473, 198, 108, 288, 310, 157, 358, 130, 215, 125, 148, 309, 244, 15, 489, 397, 436, 128, 396, 506, 122, 313, 378, 87, 91, 55, 282, 29, 389, 372, 224, 489, 149, 175, 191, 402, 17, 59, 121, 375, 343, 395, 479, 76, 277, 147, 453, 448, 489, 8, 44, 474, 234, 165, 418, 299, 373, 70, 359, 236, 106, 416, 53, 335, 464, 489, 8, 263, 199, 16, 88, 387, 270, 52, 188, 406, 69, 330, 508, 89, 9, 329, 13, 196, 176, 21, 327, 48, 458, 117, 492, 92, 295, 190, 182, 341, 195, 104, 248, 311, 49, 283, 462, 208, 35, 135, 96, 495, 360, 77, 155, 367, 296, 150, 51, 217, 386, 344, 56, 476, 291, 439, 247, 179, 93, 292, 138, 141, 467, 132, 25, 331, 5, 386, 344, 493, 36, 112, 186, 262, 211, 391, 342, 350, 353, 172, 251, 279, 168, 32, 386, 49, 289, 383, 45, 219, 83, 423, 79, 257, 177, 238, 34, 438, 174, 442, 260, 183, 200, 337, 237, 281, 131, 364, 67, 348, 33, 428, 233, 250, 404, 502, 297, 265, 183, 11, 384, 504, 230, 405, 72, 105, 31, 144, 414, 4, 109, 409, 102, 258, 78, 183, 336, 470, 62, 28, 294, 411, 267, 66, 38, 271, 298, 399, 381, 273, 162, 124, 183, 344, 84, 123, 107, 376, 46, 477, 300, 207, 338, 301, 187, 345, 95, 139, 280, 42, 227, 255, 408, 204, 363, 379, 382, 169, 261, 435, 181, 339, 156, 143, 43, 377, 42, 227, 484, 10, 146, 65, 347, 60, 239, 290, 426, 133, 443, 325, 357, 451, 456, 412, 417, 189, 24, 171, 499, 421, 507, 136, 346, 434, 264, 366, 471, 486, 403, 27, 412, 145, 454, 119, 19, 221, 75, 306, 170, 352, 61, 278, 246, 160, 134, 126, 192, 412, 145, 163, 54, 494, 401, 185, 349, 178, 39, 445, 242, 500, 222, 394, 332, 475, 412, 159, 444, 497, 81, 201, 22, 40, 86, 235, 505, 318, 166, 23, 245, 452, 37, 417, 417, 26, 419, 480, 314, 120, 209, 210, 47, 320, 85, 413, 483, 212, 369, 231] + 6: [375, 142, 499, 322, 292, 476, 343, 114, 217, 319, 119, 86, 341, 103, 428, 416, 506, 112, 224, 245, 185, 116, 165, 227, 286, 145, 237, 161, 83, 105, 265, 95, 304, 127, 112, 144, 491, 203, 228, 345, 315, 70, 316, 368, 294, 313, 216, 3, 241, 126, 259, 112, 270, 8, 405, 359, 19, 379, 367, 486, 471, 164, 419, 326, 240, 485, 387, 352, 112, 270, 4, 299, 96, 106, 181, 472, 372, 75, 41, 238, 353, 15, 178, 250, 190, 112, 220, 205, 382, 282, 278, 308, 113, 272, 78, 143, 466, 121, 321, 109, 22, 229, 112, 220, 263, 340, 383, 260, 385, 147, 332, 230, 235, 221, 323, 128, 442, 17, 309, 112, 53, 364, 502, 138, 52, 418, 108, 266, 420, 434, 123, 510, 210, 43, 91, 6, 112, 193, 35, 324, 25, 125, 33, 244, 90, 171, 32, 394, 242, 452, 391, 347, 195, 439, 312, 370, 56, 243, 351, 285, 0, 479, 436, 31, 441, 71, 199, 317, 480, 464, 439, 256, 162, 482, 36, 401, 27, 500, 84, 226, 504, 336, 188, 361, 356, 169, 168, 439, 296, 380, 444, 328, 68, 186, 298, 279, 97, 451, 392, 378, 489, 333, 26, 202, 73, 76, 176, 475, 89, 192, 509, 200, 94, 58, 311, 467, 377, 335, 12, 281, 443, 73, 76, 74, 295, 373, 421, 363, 507, 21, 284, 2, 408, 166, 246, 423, 88, 264, 73, 312, 129, 225, 85, 330, 465, 470, 133, 77, 137, 501, 404, 208, 314, 469, 354, 196, 261, 153, 146, 493, 50, 455, 40, 461, 331, 111, 141, 23, 478, 14, 424, 389, 289, 160, 248, 413, 254, 468, 402, 117, 448, 456, 218, 163, 239, 155, 337, 276, 79, 289, 160, 398, 462, 101, 122, 397, 438, 118, 431, 355, 399, 291, 120, 349, 92, 98, 99, 28, 62, 7, 5, 446, 445, 307, 498, 426, 365, 310, 131, 72, 130, 206, 16, 201, 28, 306, 457, 358, 1, 473, 410, 174, 269, 64, 407, 231, 189, 268, 213, 384, 159, 494, 393, 232, 460, 107, 252, 454, 430, 425, 48, 388, 450, 458, 329, 42, 277, 159, 494, 474, 100, 81, 414, 440, 350, 257, 492, 37, 233, 381, 102, 342, 417, 61, 412, 453, 124, 320, 67, 13, 115, 211, 187, 251, 477, 156, 234, 395, 20, 148, 198, 412, 511, 45, 505, 344, 34, 249, 271, 173, 194, 415, 490, 183, 215, 348, 449, 376, 412, 511, 44, 267, 360, 435, 290, 55, 150, 288, 167, 222, 366, 280, 219, 204, 93, 412, 511, 483, 151, 136, 305, 157, 287, 422, 447, 318, 180, 459, 433, 9, 38, 63, 87, 390, 191, 253, 236, 302, 255, 487, 29, 214, 386, 51, 80, 339, 409, 503, 369, 400, 170, 184, 403, 39, 47, 406, 177, 411, 481, 374, 346, 275, 396, 300, 30, 357, 400, 390, 179, 65, 158, 54, 104, 484, 60, 18, 223, 135, 212, 508, 139, 172, 69, 496, 170, 432, 207, 463, 110, 274, 362, 371, 262, 327, 10, 24, 338, 149, 197, 175, 496, 170, 140, 11, 258, 209, 427, 437, 82, 297, 429, 134, 488, 49, 495, 247, 152, 496, 170, 182, 57, 325, 497, 303, 273, 132, 301, 283, 154, 66, 46, 59, 293, 334] + 7: [111, 260, 309, 37, 275, 294, 221, 312, 445, 130, 12, 372, 318, 32, 247, 417, 449, 111, 419, 285, 433, 341, 248, 427, 208, 240, 505, 80, 492, 398, 330, 25, 484, 271, 111, 120, 56, 364, 49, 254, 348, 412, 122, 17, 405, 353, 333, 173, 42, 242, 250, 111, 98, 509, 223, 227, 284, 264, 415, 75, 92, 193, 491, 5, 224, 142, 150, 496, 111, 499, 234, 219, 3, 201, 163, 182, 27, 134, 295, 100, 143, 338, 61, 215, 339, 111, 185, 453, 351, 422, 397, 456, 187, 48, 236, 67, 46, 118, 400, 437, 139, 69, 111, 497, 346, 261, 452, 51, 222, 36, 283, 91, 29, 474, 451, 507, 175, 500, 39, 225, 101, 442, 354, 276, 113, 244, 206, 268, 90, 358, 301, 357, 238, 156, 59, 324, 225, 260, 465, 316, 159, 74, 57, 164, 503, 178, 304, 109, 33, 414, 158, 296, 439, 504, 434, 160, 408, 34, 308, 97, 480, 482, 14, 119, 78, 281, 286, 190, 60, 404, 504, 434, 144, 336, 490, 315, 202, 362, 252, 257, 168, 96, 216, 85, 226, 133, 126, 504, 349, 293, 191, 478, 189, 89, 302, 209, 359, 241, 263, 340, 356, 440, 184, 411, 504, 63, 429, 323, 220, 154, 486, 292, 20, 385, 112, 266, 66, 82, 179, 421, 217, 504, 108, 207, 245, 325, 258, 45, 10, 383, 249, 129, 305, 155, 203, 361, 86, 229, 504, 108, 502, 425, 11, 382, 347, 321, 350, 138, 495, 390, 94, 58, 310, 448, 426, 504, 9, 68, 479, 352, 197, 447, 345, 511, 181, 413, 253, 176, 188, 423, 38, 279, 504, 459, 444, 303, 88, 132, 7, 510, 435, 0, 251, 256, 409, 379, 371, 128, 170, 157, 211, 267, 463, 489, 107, 446, 297, 481, 192, 131, 265, 166, 389, 2, 218, 508, 157, 255, 44, 306, 280, 378, 54, 493, 23, 457, 121, 186, 84, 403, 213, 332, 370, 157, 13, 424, 355, 41, 43, 161, 153, 420, 290, 35, 270, 169, 269, 272, 31, 483, 366, 211, 399, 212, 30, 273, 458, 443, 320, 79, 455, 342, 360, 26, 494, 487, 24, 366, 211, 151, 235, 436, 289, 327, 374, 50, 407, 232, 388, 428, 392, 410, 460, 62, 328, 72, 311, 438, 396, 110, 317, 140, 501, 329, 200, 83, 506, 387, 115, 71, 470, 402, 99, 102, 287, 137, 450, 461, 262, 104, 466, 124, 162, 314, 180, 117, 194, 498, 406, 331, 167, 239, 488, 73, 146, 416, 278, 19, 8, 141, 464, 87, 95, 230, 198, 406, 125, 127, 274, 15, 376, 469, 335, 93, 70, 177, 288, 52, 473, 152, 237, 22, 406, 125, 343, 148, 462, 365, 307, 337, 368, 136, 485, 369, 377, 6, 319, 334, 386, 406, 99, 135, 183, 105, 165, 171, 65, 172, 123, 477, 81, 299, 205, 467, 391, 431, 401, 471, 145, 55, 76, 64, 291, 259, 149, 103, 367, 393, 384, 53, 77, 381, 243, 401, 471, 322, 476, 16, 47, 454, 214, 174, 231, 298, 394, 282, 114, 441, 4, 418, 401, 331, 210, 395, 380, 204, 228, 199, 313, 196, 116, 344, 1, 363, 147, 475, 18, 472, 472, 277, 300, 326, 21, 106, 28, 432, 430, 468, 233, 40, 195, 246, 373, 375] + 8: [110, 459, 317, 104, 77, 499, 391, 311, 498, 128, 262, 369, 63, 162, 208, 74, 370, 110, 488, 26, 297, 358, 456, 323, 264, 207, 68, 448, 302, 185, 466, 439, 112, 126, 436, 332, 124, 103, 197, 268, 154, 247, 23, 40, 231, 433, 449, 157, 89, 495, 226, 436, 177, 21, 490, 194, 455, 450, 109, 95, 296, 313, 66, 182, 338, 330, 379, 278, 436, 179, 82, 390, 169, 324, 421, 176, 58, 407, 253, 161, 434, 221, 383, 116, 372, 436, 3, 4, 345, 316, 259, 83, 286, 168, 463, 46, 482, 93, 298, 331, 389, 250, 436, 142, 118, 84, 62, 473, 73, 478, 181, 371, 480, 219, 113, 362, 423, 234, 48, 510, 360, 394, 139, 244, 150, 425, 382, 293, 230, 427, 441, 501, 328, 241, 435, 462, 510, 17, 270, 102, 276, 481, 288, 38, 57, 159, 291, 186, 477, 122, 258, 318, 61, 257, 243, 420, 489, 403, 114, 56, 39, 309, 277, 361, 53, 217, 96, 9, 468, 5, 257, 294, 314, 24, 242, 191, 41, 491, 91, 397, 71, 59, 246, 367, 123, 72, 211, 257, 437, 340, 35, 261, 213, 352, 374, 172, 18, 204, 81, 260, 470, 164, 152, 0, 140, 346, 494, 303, 206, 283, 44, 357, 210, 310, 500, 263, 387, 137, 404, 465, 33, 140, 346, 373, 222, 355, 10, 280, 321, 1, 359, 274, 406, 351, 203, 476, 486, 430, 140, 346, 365, 64, 511, 25, 347, 315, 108, 228, 22, 350, 20, 187, 287, 129, 265, 376, 94, 239, 415, 99, 52, 131, 497, 54, 457, 163, 165, 452, 166, 308, 146, 509, 376, 348, 212, 19, 43, 115, 227, 13, 127, 344, 428, 416, 504, 201, 483, 424, 502, 376, 229, 205, 132, 299, 45, 87, 469, 143, 451, 55, 130, 300, 461, 233, 363, 190, 376, 156, 47, 479, 306, 507, 301, 290, 199, 50, 384, 238, 281, 422, 413, 184, 136, 376, 156, 342, 267, 409, 378, 120, 444, 255, 215, 236, 34, 173, 149, 411, 31, 354, 376, 377, 29, 86, 51, 396, 175, 443, 336, 271, 218, 398, 305, 119, 334, 474, 405, 97, 171, 386, 16, 135, 401, 42, 178, 28, 183, 393, 329, 410, 148, 224, 153, 101, 92, 349, 445, 80, 76, 269, 252, 418, 100, 327, 75, 8, 343, 417, 49, 107, 339, 92, 349, 245, 216, 493, 412, 419, 266, 395, 282, 240, 106, 27, 138, 487, 307, 117, 92, 304, 155, 442, 11, 496, 232, 2, 251, 272, 326, 508, 248, 284, 279, 36, 98, 92, 304, 200, 375, 209, 235, 364, 111, 289, 503, 134, 65, 285, 440, 453, 388, 335, 92, 304, 438, 144, 147, 180, 174, 192, 472, 426, 292, 322, 460, 15, 400, 189, 85, 92, 171, 195, 366, 333, 237, 505, 196, 193, 353, 273, 467, 220, 6, 78, 392, 12, 381, 381, 399, 485, 319, 249, 256, 198, 141, 492, 167, 67, 320, 506, 79, 7, 37, 381, 105, 225, 337, 385, 188, 475, 295, 254, 133, 69, 414, 454, 312, 125, 325, 402, 381, 121, 32, 341, 275, 431, 170, 202, 356, 90, 30, 368, 408, 158, 160, 471, 145, 381, 349, 223, 429, 446, 151, 60, 484, 70, 464, 380, 88, 14, 458, 447, 432, 214] + 9: [110, 111, 63, 386, 444, 498, 33, 248, 187, 192, 180, 353, 91, 80, 250, 298, 50, 320, 462, 212, 394, 67, 378, 116, 126, 451, 270, 16, 70, 506, 303, 11, 113, 68, 320, 90, 149, 247, 507, 390, 161, 23, 92, 410, 137, 62, 401, 196, 445, 255, 257, 320, 324, 127, 277, 325, 417, 123, 402, 363, 344, 274, 108, 37, 129, 217, 186, 9, 453, 98, 337, 28, 281, 130, 128, 483, 65, 315, 208, 53, 333, 246, 176, 229, 31, 453, 462, 163, 52, 301, 122, 476, 484, 427, 332, 359, 263, 29, 198, 302, 195, 121, 370, 234, 182, 362, 12, 305, 188, 147, 364, 480, 296, 45, 422, 275, 101, 382, 295, 370, 234, 503, 376, 150, 341, 200, 190, 114, 294, 439, 504, 309, 393, 30, 392, 473, 370, 287, 139, 385, 124, 431, 104, 404, 434, 267, 230, 461, 405, 244, 487, 81, 280, 370, 115, 463, 389, 258, 338, 204, 38, 84, 278, 340, 472, 231, 21, 380, 82, 459, 370, 115, 329, 156, 36, 271, 293, 133, 79, 365, 6, 232, 304, 478, 415, 175, 42, 370, 55, 367, 44, 261, 201, 103, 251, 458, 205, 100, 164, 266, 432, 464, 381, 511, 370, 291, 403, 78, 398, 508, 311, 495, 454, 428, 35, 155, 174, 131, 262, 203, 61, 368, 314, 443, 41, 60, 17, 146, 24, 20, 328, 10, 71, 416, 399, 73, 211, 456, 368, 450, 138, 322, 165, 276, 407, 442, 457, 172, 411, 273, 460, 474, 371, 468, 178, 489, 18, 177, 75, 197, 345, 319, 106, 160, 469, 331, 39, 437, 0, 169, 430, 317, 489, 173, 272, 491, 366, 141, 347, 142, 488, 269, 134, 425, 57, 288, 46, 159, 96, 489, 173, 118, 279, 34, 286, 327, 48, 299, 310, 307, 253, 167, 213, 125, 387, 207, 489, 418, 86, 424, 94, 334, 336, 447, 87, 132, 499, 148, 135, 89, 433, 452, 352, 312, 18, 26, 265, 243, 467, 426, 346, 220, 76, 225, 494, 358, 326, 166, 419, 88, 236, 83, 22, 241, 154, 455, 412, 19, 54, 351, 481, 256, 249, 183, 436, 268, 151, 236, 83, 438, 441, 162, 15, 214, 486, 140, 184, 383, 414, 193, 25, 465, 5, 8, 236, 330, 500, 409, 259, 413, 348, 119, 95, 423, 191, 391, 99, 505, 32, 435, 43, 236, 239, 216, 206, 357, 105, 245, 227, 493, 501, 361, 109, 308, 72, 479, 112, 189, 236, 239, 120, 379, 254, 485, 492, 145, 429, 14, 335, 252, 377, 283, 240, 168, 219, 223, 83, 97, 226, 323, 384, 313, 321, 224, 471, 375, 194, 360, 202, 475, 51, 297, 47, 477, 222, 221, 466, 282, 215, 1, 420, 107, 170, 306, 510, 3, 339, 350, 490, 47, 185, 228, 509, 40, 13, 356, 449, 77, 7, 181, 58, 152, 318, 171, 349, 396, 47, 185, 136, 496, 290, 343, 102, 85, 470, 238, 242, 27, 285, 369, 284, 448, 300, 47, 289, 395, 397, 421, 408, 179, 2, 406, 235, 388, 69, 59, 374, 497, 144, 49, 440, 477, 117, 4, 446, 264, 199, 93, 218, 482, 355, 316, 342, 158, 74, 373, 210, 477, 477, 157, 153, 260, 292, 66, 233, 354, 56, 400, 143, 209, 64, 372, 502, 237] + 10: [71, 52, 55, 192, 230, 56, 4, 305, 114, 60, 421, 181, 387, 78, 256, 257, 319, 71, 364, 460, 335, 118, 486, 404, 239, 464, 455, 88, 111, 58, 70, 494, 463, 379, 71, 301, 238, 225, 193, 435, 374, 492, 151, 30, 178, 121, 505, 309, 289, 270, 279, 71, 21, 272, 35, 119, 182, 313, 266, 44, 504, 59, 165, 131, 417, 104, 368, 24, 76, 234, 362, 485, 392, 454, 323, 11, 355, 474, 2, 202, 375, 507, 33, 304, 302, 76, 171, 397, 260, 465, 468, 376, 369, 46, 281, 108, 50, 359, 154, 414, 373, 65, 76, 171, 341, 333, 297, 370, 80, 122, 231, 255, 73, 329, 458, 206, 85, 45, 39, 66, 62, 19, 129, 427, 146, 363, 336, 439, 315, 441, 426, 249, 284, 112, 209, 365, 94, 138, 473, 221, 81, 267, 31, 278, 438, 437, 406, 99, 90, 191, 286, 493, 10, 94, 451, 431, 190, 269, 358, 428, 91, 247, 321, 172, 251, 26, 144, 383, 147, 377, 94, 163, 232, 273, 245, 87, 510, 361, 188, 291, 98, 25, 117, 16, 157, 327, 169, 94, 62, 371, 48, 106, 41, 241, 15, 37, 453, 300, 86, 337, 159, 13, 215, 254, 152, 416, 89, 47, 320, 264, 219, 425, 290, 444, 311, 137, 153, 344, 185, 429, 511, 223, 401, 307, 124, 203, 199, 395, 6, 347, 490, 448, 378, 243, 299, 479, 244, 324, 223, 259, 276, 38, 380, 483, 204, 470, 22, 262, 456, 436, 422, 212, 200, 53, 220, 194, 348, 345, 136, 461, 500, 308, 498, 340, 126, 484, 9, 67, 390, 74, 343, 332, 194, 478, 148, 292, 222, 201, 248, 54, 325, 97, 77, 296, 328, 127, 180, 69, 61, 194, 34, 236, 447, 145, 240, 339, 205, 92, 388, 156, 93, 250, 261, 208, 14, 162, 194, 401, 258, 449, 334, 317, 107, 218, 491, 211, 20, 367, 125, 179, 295, 49, 415, 183, 338, 400, 214, 64, 419, 5, 268, 155, 508, 330, 217, 411, 497, 446, 326, 242, 183, 338, 40, 113, 318, 135, 82, 354, 274, 132, 51, 252, 109, 432, 29, 298, 412, 183, 338, 399, 195, 210, 110, 63, 184, 84, 403, 394, 43, 306, 316, 8, 177, 391, 183, 405, 36, 123, 469, 103, 17, 402, 233, 120, 265, 389, 480, 226, 423, 471, 167, 183, 348, 413, 502, 366, 475, 128, 141, 7, 357, 174, 496, 42, 342, 372, 287, 459, 271, 68, 322, 3, 196, 263, 213, 430, 246, 158, 360, 452, 409, 382, 398, 462, 100, 271, 68, 285, 149, 384, 275, 207, 142, 314, 227, 224, 173, 253, 393, 115, 303, 176, 271, 187, 434, 79, 164, 27, 23, 495, 57, 466, 310, 476, 350, 410, 349, 140, 503, 271, 506, 102, 440, 487, 1, 282, 457, 293, 481, 288, 283, 386, 396, 150, 139, 509, 271, 506, 408, 418, 385, 331, 312, 407, 445, 160, 235, 116, 277, 83, 499, 198, 482, 271, 32, 442, 216, 143, 501, 12, 0, 381, 168, 229, 170, 189, 352, 467, 450, 161, 271, 166, 72, 294, 101, 134, 197, 351, 443, 433, 488, 18, 186, 133, 472, 237, 130, 68, 68, 105, 477, 424, 28, 75, 346, 420, 280, 356, 96, 175, 95, 489, 353, 228] + 11: [108, 214, 472, 387, 94, 236, 284, 424, 254, 29, 504, 412, 368, 192, 462, 404, 378, 138, 255, 87, 131, 104, 354, 229, 142, 428, 153, 317, 405, 60, 301, 12, 78, 38, 24, 226, 26, 77, 70, 325, 267, 122, 225, 489, 202, 105, 111, 64, 80, 118, 364, 24, 226, 322, 495, 290, 68, 124, 123, 467, 440, 179, 335, 425, 367, 227, 220, 22, 24, 193, 3, 228, 265, 276, 445, 475, 219, 401, 324, 262, 393, 307, 298, 334, 98, 24, 480, 218, 278, 446, 52, 376, 270, 431, 40, 471, 372, 23, 246, 148, 191, 496, 24, 375, 156, 215, 56, 481, 435, 414, 497, 460, 483, 318, 292, 224, 357, 174, 363, 24, 362, 353, 161, 342, 132, 444, 263, 434, 113, 452, 510, 93, 296, 36, 69, 81, 24, 235, 66, 5, 302, 453, 198, 83, 21, 44, 8, 30, 308, 85, 133, 34, 487, 24, 255, 185, 157, 373, 176, 257, 465, 2, 259, 61, 436, 482, 430, 158, 347, 20, 494, 121, 355, 126, 498, 209, 352, 89, 0, 300, 388, 379, 167, 203, 499, 269, 165, 188, 121, 248, 508, 385, 31, 280, 57, 391, 231, 92, 32, 463, 433, 381, 171, 277, 115, 91, 337, 406, 448, 6, 86, 183, 240, 75, 304, 309, 261, 450, 230, 457, 426, 115, 33, 88, 134, 476, 251, 469, 116, 173, 7, 454, 327, 418, 272, 222, 128, 358, 115, 189, 221, 306, 502, 486, 182, 303, 144, 162, 356, 155, 242, 55, 175, 76, 491, 115, 187, 468, 50, 427, 326, 178, 371, 49, 72, 127, 310, 345, 282, 274, 432, 470, 291, 180, 384, 109, 346, 195, 241, 370, 199, 365, 253, 84, 286, 500, 275, 314, 208, 291, 91, 377, 333, 206, 380, 281, 100, 47, 194, 490, 299, 423, 53, 27, 507, 154, 106, 196, 232, 250, 449, 283, 329, 160, 410, 349, 216, 293, 505, 252, 159, 186, 82, 106, 196, 350, 136, 366, 58, 169, 234, 67, 492, 135, 399, 382, 421, 305, 4, 9, 106, 340, 103, 125, 79, 35, 146, 201, 137, 279, 484, 15, 141, 459, 268, 439, 73, 106, 180, 112, 331, 351, 117, 16, 464, 207, 114, 416, 336, 217, 245, 289, 237, 149, 106, 180, 10, 130, 1, 437, 488, 102, 150, 455, 344, 320, 332, 287, 247, 205, 473, 96, 54, 323, 383, 42, 506, 442, 341, 456, 266, 223, 419, 447, 394, 420, 239, 63, 96, 503, 184, 110, 17, 461, 45, 74, 238, 25, 48, 441, 243, 210, 143, 41, 273, 140, 369, 163, 328, 312, 477, 319, 212, 348, 402, 474, 97, 398, 28, 339, 311, 466, 140, 43, 297, 330, 213, 211, 509, 37, 493, 145, 101, 485, 166, 46, 249, 359, 151, 140, 43, 177, 39, 170, 411, 119, 409, 107, 396, 403, 181, 19, 389, 408, 501, 315, 140, 43, 415, 51, 258, 478, 168, 316, 62, 197, 90, 479, 18, 59, 164, 288, 422, 11, 11, 443, 120, 338, 374, 71, 343, 244, 65, 417, 260, 360, 233, 271, 451, 438, 11, 11, 14, 413, 395, 264, 386, 295, 95, 99, 400, 172, 129, 285, 407, 152, 313, 11, 147, 429, 256, 200, 294, 13, 190, 397, 204, 390, 458, 139, 361, 321, 511, 392] + 12: [39, 469, 334, 303, 155, 116, 307, 37, 215, 424, 345, 496, 273, 70, 229, 381, 343, 295, 8, 93, 438, 451, 25, 492, 134, 470, 449, 222, 398, 220, 24, 160, 501, 89, 295, 114, 269, 278, 76, 137, 43, 213, 392, 64, 316, 293, 132, 314, 51, 419, 379, 295, 138, 401, 240, 494, 480, 373, 353, 302, 332, 80, 368, 42, 367, 380, 211, 124, 237, 65, 423, 90, 428, 257, 404, 299, 386, 122, 94, 395, 224, 457, 92, 483, 288, 237, 504, 31, 435, 508, 378, 53, 272, 440, 45, 170, 192, 266, 270, 150, 290, 452, 237, 504, 409, 485, 455, 256, 431, 400, 468, 463, 34, 324, 11, 281, 346, 340, 2, 237, 8, 72, 484, 462, 232, 102, 57, 123, 359, 405, 164, 320, 176, 111, 351, 184, 467, 425, 338, 453, 479, 131, 432, 371, 195, 384, 193, 30, 366, 265, 312, 194, 198, 467, 425, 209, 113, 115, 219, 174, 488, 4, 396, 203, 429, 489, 168, 357, 38, 436, 467, 97, 280, 238, 177, 27, 304, 413, 355, 410, 473, 243, 121, 476, 441, 331, 71, 467, 97, 130, 274, 254, 74, 230, 15, 86, 471, 169, 242, 227, 422, 402, 252, 127, 467, 387, 99, 26, 40, 407, 3, 173, 369, 153, 333, 354, 190, 56, 406, 439, 433, 129, 417, 487, 83, 135, 17, 507, 241, 185, 157, 0, 437, 146, 279, 180, 505, 503, 129, 208, 120, 318, 448, 159, 408, 427, 103, 152, 261, 464, 372, 147, 52, 356, 497, 129, 61, 446, 189, 309, 450, 315, 105, 202, 498, 251, 165, 236, 271, 239, 63, 399, 129, 260, 322, 91, 143, 349, 390, 460, 466, 393, 35, 36, 377, 511, 48, 108, 166, 129, 181, 310, 445, 225, 88, 297, 500, 342, 49, 7, 126, 364, 69, 206, 21, 29, 129, 197, 499, 245, 247, 263, 100, 389, 221, 502, 510, 283, 33, 106, 212, 337, 264, 129, 197, 301, 79, 182, 306, 259, 289, 277, 376, 442, 465, 443, 23, 383, 275, 394, 10, 358, 101, 47, 447, 163, 20, 6, 73, 493, 186, 44, 13, 148, 285, 22, 330, 10, 216, 456, 287, 68, 95, 87, 118, 292, 67, 323, 77, 109, 214, 397, 136, 187, 62, 472, 5, 66, 414, 161, 188, 144, 32, 14, 172, 246, 328, 481, 374, 298, 204, 62, 191, 482, 171, 341, 228, 305, 59, 81, 391, 98, 300, 370, 84, 421, 267, 217, 62, 495, 85, 200, 313, 382, 325, 255, 416, 326, 179, 9, 276, 506, 258, 119, 199, 308, 509, 78, 327, 319, 226, 335, 234, 347, 149, 284, 294, 210, 19, 412, 444, 50, 308, 459, 133, 360, 415, 454, 426, 117, 104, 329, 16, 434, 112, 336, 262, 474, 339, 308, 472, 461, 350, 491, 268, 286, 75, 418, 248, 365, 490, 110, 175, 167, 388, 54, 107, 509, 282, 1, 201, 311, 12, 233, 375, 458, 348, 55, 363, 145, 478, 291, 475, 231, 231, 82, 60, 141, 207, 352, 249, 244, 183, 430, 162, 403, 361, 411, 156, 96, 231, 509, 41, 196, 253, 362, 317, 477, 28, 151, 223, 218, 58, 486, 128, 235, 140, 231, 509, 205, 125, 139, 321, 154, 344, 250, 296, 18, 142, 178, 158, 420, 46, 385] + 13: [51, 196, 220, 305, 45, 57, 346, 450, 44, 233, 319, 258, 445, 435, 114, 369, 76, 51, 124, 148, 54, 239, 80, 437, 331, 379, 135, 433, 400, 322, 488, 392, 214, 232, 51, 174, 160, 130, 329, 5, 373, 306, 335, 100, 438, 94, 83, 126, 165, 31, 91, 51, 154, 73, 475, 452, 63, 66, 344, 105, 191, 471, 222, 415, 64, 53, 417, 168, 51, 418, 99, 215, 264, 414, 345, 141, 98, 22, 17, 492, 204, 451, 225, 490, 347, 252, 352, 106, 224, 397, 393, 303, 299, 360, 291, 426, 473, 495, 133, 350, 39, 234, 252, 190, 440, 343, 315, 396, 70, 84, 387, 453, 151, 314, 125, 11, 434, 399, 480, 252, 190, 486, 58, 19, 14, 75, 368, 132, 181, 326, 227, 48, 337, 212, 187, 283, 252, 65, 439, 144, 67, 229, 281, 385, 42, 318, 289, 429, 85, 195, 159, 171, 497, 252, 56, 378, 461, 370, 238, 104, 476, 218, 4, 260, 310, 221, 295, 9, 253, 23, 252, 235, 424, 49, 92, 408, 192, 254, 274, 484, 276, 507, 511, 304, 183, 275, 250, 252, 235, 152, 12, 207, 320, 506, 340, 501, 467, 93, 332, 359, 509, 109, 95, 153, 34, 8, 411, 134, 386, 43, 442, 242, 503, 117, 502, 62, 261, 266, 465, 391, 354, 34, 8, 351, 271, 200, 334, 406, 263, 55, 307, 247, 372, 24, 189, 180, 401, 178, 34, 140, 338, 376, 20, 508, 262, 188, 113, 32, 13, 296, 257, 77, 46, 300, 380, 34, 140, 217, 145, 60, 111, 86, 328, 365, 52, 112, 361, 33, 243, 163, 119, 149, 34, 172, 470, 321, 146, 138, 353, 457, 462, 30, 292, 436, 210, 389, 21, 1, 28, 230, 498, 15, 421, 7, 341, 285, 2, 311, 186, 90, 177, 175, 213, 36, 129, 155, 336, 498, 131, 478, 102, 493, 443, 468, 413, 395, 216, 489, 273, 61, 228, 223, 504, 316, 25, 481, 455, 472, 454, 458, 249, 176, 118, 494, 427, 236, 323, 447, 16, 35, 316, 366, 38, 357, 279, 317, 500, 403, 333, 265, 219, 464, 485, 71, 479, 460, 244, 316, 197, 272, 41, 158, 327, 469, 240, 50, 297, 101, 248, 128, 103, 162, 164, 441, 241, 383, 325, 404, 422, 430, 97, 59, 474, 444, 405, 425, 139, 308, 74, 298, 477, 241, 185, 394, 505, 390, 409, 309, 166, 432, 82, 342, 302, 410, 456, 419, 349, 68, 241, 78, 270, 284, 362, 407, 88, 89, 26, 367, 420, 208, 294, 209, 287, 142, 290, 202, 487, 301, 237, 355, 496, 206, 156, 448, 147, 382, 246, 339, 375, 137, 161, 251, 202, 487, 282, 423, 256, 116, 277, 211, 431, 136, 269, 81, 110, 358, 184, 398, 123, 202, 487, 72, 40, 482, 364, 47, 363, 384, 127, 428, 245, 108, 377, 356, 150, 194, 202, 383, 259, 199, 6, 293, 69, 120, 374, 27, 179, 255, 87, 193, 170, 491, 388, 115, 278, 121, 157, 463, 402, 203, 167, 173, 483, 446, 226, 288, 268, 79, 182, 459, 115, 278, 122, 412, 280, 37, 107, 324, 416, 449, 267, 330, 348, 169, 198, 466, 3, 18, 278, 10, 0, 371, 231, 205, 313, 201, 312, 143, 29, 96, 381, 286, 510, 499] + 14: [498, 193, 172, 7, 502, 169, 165, 240, 233, 401, 489, 509, 183, 287, 267, 370, 76, 376, 372, 130, 463, 5, 180, 418, 162, 188, 22, 473, 62, 27, 164, 505, 397, 301, 459, 359, 333, 26, 69, 468, 127, 354, 103, 221, 488, 52, 481, 288, 156, 232, 286, 459, 253, 323, 32, 428, 341, 390, 118, 377, 239, 9, 89, 313, 40, 13, 161, 447, 181, 36, 104, 95, 367, 475, 357, 261, 342, 58, 173, 214, 427, 189, 186, 467, 18, 181, 113, 140, 198, 436, 363, 105, 277, 150, 466, 143, 182, 262, 378, 225, 440, 41, 259, 212, 68, 63, 208, 20, 304, 228, 482, 275, 319, 289, 303, 73, 327, 43, 338, 259, 451, 455, 494, 138, 381, 290, 132, 394, 458, 204, 495, 195, 371, 421, 445, 310, 259, 451, 487, 256, 66, 295, 216, 16, 457, 347, 266, 166, 131, 414, 346, 146, 206, 259, 451, 231, 4, 511, 491, 91, 135, 56, 133, 229, 384, 2, 360, 74, 15, 102, 259, 433, 492, 422, 19, 34, 203, 506, 79, 490, 85, 269, 219, 448, 86, 326, 355, 259, 250, 111, 263, 396, 44, 302, 116, 238, 444, 480, 476, 21, 120, 461, 399, 308, 259, 250, 499, 25, 383, 272, 314, 258, 279, 411, 251, 67, 271, 96, 155, 187, 460, 400, 77, 426, 154, 81, 335, 472, 385, 380, 361, 362, 471, 124, 163, 1, 391, 153, 400, 368, 126, 332, 344, 148, 366, 159, 119, 408, 241, 149, 24, 373, 50, 49, 379, 400, 334, 402, 274, 470, 137, 171, 54, 324, 387, 504, 442, 249, 222, 410, 417, 419, 400, 334, 237, 134, 42, 365, 255, 168, 33, 350, 107, 431, 325, 213, 298, 340, 268, 400, 334, 122, 75, 439, 157, 245, 382, 294, 141, 202, 309, 322, 479, 226, 270, 330, 400, 486, 276, 167, 215, 260, 194, 252, 364, 500, 227, 37, 429, 139, 151, 389, 110, 400, 55, 190, 184, 247, 273, 11, 200, 306, 317, 185, 211, 423, 312, 415, 235, 248, 297, 77, 353, 64, 114, 218, 501, 14, 496, 369, 87, 109, 469, 464, 174, 46, 28, 388, 129, 452, 136, 121, 196, 430, 477, 53, 358, 176, 329, 328, 29, 38, 243, 420, 388, 375, 125, 31, 220, 30, 88, 59, 170, 449, 217, 152, 316, 70, 158, 192, 78, 388, 23, 503, 416, 210, 386, 284, 437, 412, 57, 144, 142, 12, 244, 441, 311, 48, 264, 285, 51, 403, 343, 199, 246, 0, 99, 453, 71, 507, 307, 434, 94, 446, 392, 264, 128, 17, 508, 435, 349, 282, 230, 393, 177, 112, 257, 443, 108, 201, 197, 234, 264, 129, 283, 47, 345, 178, 465, 425, 6, 462, 395, 223, 339, 98, 478, 398, 331, 264, 129, 205, 82, 35, 179, 450, 484, 242, 300, 292, 45, 39, 8, 65, 72, 432, 264, 129, 424, 280, 191, 293, 405, 321, 474, 92, 336, 61, 3, 454, 320, 497, 404, 90, 285, 236, 485, 115, 97, 160, 100, 147, 106, 296, 93, 291, 10, 224, 60, 305, 409, 285, 209, 456, 438, 348, 145, 80, 175, 351, 413, 254, 281, 278, 407, 356, 483, 406, 285, 117, 265, 510, 83, 374, 337, 318, 101, 207, 299, 493, 352, 315, 123, 84] + 15: [401, 362, 362, 328, 235, 348, 405, 59, 321, 444, 339, 364, 231, 70, 68, 431, 375, 467, 88, 319, 361, 313, 247, 112, 249, 420, 161, 87, 476, 479, 439, 82, 310, 11, 467, 37, 413, 201, 308, 497, 418, 31, 222, 428, 395, 289, 449, 399, 5, 193, 451, 467, 417, 243, 47, 454, 344, 228, 1, 295, 121, 51, 98, 10, 198, 311, 426, 30, 467, 180, 243, 498, 288, 396, 118, 320, 266, 302, 17, 343, 32, 176, 318, 18, 109, 467, 325, 425, 374, 346, 179, 233, 80, 267, 366, 40, 466, 131, 252, 268, 434, 412, 467, 393, 425, 213, 391, 397, 33, 394, 27, 184, 62, 183, 342, 340, 292, 403, 23, 286, 324, 255, 468, 488, 258, 202, 332, 373, 459, 214, 26, 150, 210, 502, 323, 496, 286, 383, 216, 160, 207, 305, 115, 66, 470, 4, 129, 350, 478, 427, 166, 205, 105, 286, 383, 191, 471, 133, 46, 273, 143, 357, 359, 34, 132, 79, 355, 274, 491, 55, 286, 21, 474, 170, 322, 329, 168, 506, 481, 114, 334, 244, 448, 75, 335, 81, 297, 286, 21, 307, 67, 415, 404, 69, 175, 192, 293, 53, 178, 389, 265, 237, 306, 380, 42, 324, 487, 400, 209, 138, 173, 486, 135, 472, 430, 281, 28, 211, 402, 151, 221, 42, 324, 101, 460, 185, 388, 509, 409, 296, 437, 124, 36, 147, 122, 424, 56, 139, 370, 294, 9, 386, 485, 219, 275, 167, 458, 279, 263, 48, 351, 309, 83, 251, 257, 159, 97, 312, 218, 242, 398, 283, 299, 38, 96, 450, 84, 50, 92, 6, 440, 95, 206, 378, 341, 282, 174, 360, 188, 507, 12, 301, 331, 250, 377, 240, 177, 287, 490, 206, 229, 85, 127, 35, 421, 199, 89, 422, 238, 94, 0, 408, 499, 438, 245, 196, 206, 462, 446, 119, 330, 464, 158, 204, 256, 333, 24, 452, 500, 261, 165, 232, 406, 298, 378, 445, 384, 203, 197, 392, 269, 504, 7, 387, 41, 253, 29, 441, 353, 190, 447, 189, 385, 246, 110, 113, 91, 144, 463, 291, 352, 60, 153, 117, 194, 410, 260, 74, 371, 142, 225, 108, 455, 315, 171, 19, 226, 230, 169, 469, 63, 272, 15, 107, 74, 371, 106, 77, 3, 278, 241, 314, 130, 423, 22, 473, 154, 372, 347, 442, 262, 74, 371, 482, 456, 381, 128, 376, 510, 489, 64, 111, 104, 102, 223, 57, 349, 8, 134, 125, 390, 45, 78, 148, 457, 505, 368, 316, 137, 13, 484, 145, 156, 103, 187, 200, 208, 76, 354, 90, 365, 195, 419, 54, 508, 236, 140, 65, 172, 300, 416, 290, 277, 208, 285, 363, 443, 358, 369, 475, 477, 407, 212, 461, 52, 100, 367, 239, 2, 73, 317, 429, 356, 453, 141, 264, 511, 259, 224, 411, 162, 495, 271, 465, 379, 149, 73, 317, 254, 93, 86, 303, 276, 182, 234, 123, 99, 338, 345, 186, 336, 14, 215, 73, 208, 436, 181, 248, 20, 382, 44, 480, 58, 61, 280, 164, 304, 327, 49, 39, 492, 317, 146, 43, 120, 220, 483, 227, 152, 16, 217, 270, 494, 157, 72, 337, 116, 317, 317, 414, 503, 71, 136, 155, 432, 284, 326, 493, 501, 126, 25, 435, 433, 163] + 16: [51, 505, 293, 217, 237, 10, 180, 479, 182, 179, 44, 461, 127, 22, 338, 290, 297, 51, 227, 296, 134, 82, 364, 36, 23, 203, 243, 132, 429, 129, 508, 119, 456, 252, 51, 451, 361, 244, 467, 177, 501, 423, 188, 347, 98, 49, 43, 148, 401, 375, 268, 83, 345, 377, 476, 376, 79, 233, 485, 426, 0, 18, 265, 388, 295, 503, 309, 256, 83, 435, 462, 24, 112, 397, 193, 13, 453, 428, 270, 300, 114, 336, 80, 19, 94, 158, 500, 130, 123, 246, 507, 335, 392, 328, 165, 419, 257, 381, 318, 147, 106, 104, 158, 469, 312, 253, 299, 198, 454, 70, 395, 140, 99, 496, 431, 174, 121, 37, 326, 158, 266, 154, 57, 248, 45, 310, 380, 185, 164, 90, 399, 275, 365, 404, 211, 11, 158, 126, 231, 205, 463, 54, 95, 346, 457, 330, 194, 157, 482, 366, 150, 68, 55, 486, 460, 418, 414, 20, 363, 235, 153, 131, 88, 236, 156, 468, 133, 490, 488, 298, 486, 412, 210, 282, 384, 432, 40, 124, 100, 322, 255, 247, 204, 220, 415, 360, 108, 486, 412, 113, 9, 168, 191, 373, 354, 53, 344, 416, 355, 327, 66, 498, 216, 258, 486, 232, 12, 400, 213, 65, 352, 333, 390, 504, 438, 169, 371, 238, 332, 116, 383, 486, 87, 30, 118, 151, 138, 142, 200, 72, 483, 261, 206, 241, 78, 143, 225, 159, 486, 115, 386, 201, 93, 245, 444, 422, 459, 34, 135, 362, 436, 449, 387, 250, 271, 486, 115, 167, 102, 301, 161, 96, 190, 409, 189, 491, 374, 214, 408, 110, 274, 329, 101, 162, 77, 14, 394, 29, 370, 50, 356, 311, 122, 228, 17, 506, 152, 242, 403, 101, 192, 407, 184, 443, 510, 74, 279, 450, 263, 6, 172, 492, 32, 42, 278, 183, 101, 192, 71, 109, 222, 219, 144, 341, 120, 368, 63, 319, 202, 284, 196, 262, 291, 101, 192, 69, 494, 125, 434, 97, 379, 393, 46, 308, 294, 103, 452, 357, 389, 269, 101, 16, 442, 331, 455, 288, 289, 427, 283, 48, 465, 303, 260, 448, 186, 475, 305, 101, 27, 3, 484, 224, 317, 199, 91, 61, 76, 25, 425, 470, 441, 208, 285, 445, 350, 358, 410, 439, 323, 173, 75, 369, 406, 33, 321, 197, 411, 128, 64, 359, 221, 350, 162, 320, 304, 139, 314, 273, 420, 1, 81, 31, 146, 337, 59, 39, 26, 430, 212, 141, 424, 421, 480, 85, 207, 292, 223, 60, 35, 155, 117, 62, 313, 474, 47, 212, 141, 267, 15, 502, 497, 280, 111, 175, 339, 471, 38, 163, 160, 382, 473, 391, 212, 358, 107, 493, 4, 181, 316, 324, 276, 385, 28, 249, 487, 239, 21, 398, 287, 372, 141, 281, 340, 489, 209, 229, 2, 264, 334, 307, 170, 8, 351, 353, 195, 277, 477, 367, 52, 145, 226, 402, 286, 149, 240, 315, 92, 5, 73, 105, 215, 259, 166, 477, 141, 58, 187, 349, 478, 466, 251, 171, 56, 178, 272, 378, 499, 343, 230, 348, 302, 396, 417, 437, 342, 447, 472, 464, 433, 176, 41, 481, 137, 306, 511, 86, 218, 302, 367, 405, 509, 325, 458, 495, 136, 440, 254, 67, 89, 446, 413, 7, 84, 234] + 17: [282, 491, 492, 166, 496, 7, 444, 72, 353, 44, 73, 249, 81, 246, 20, 216, 302, 200, 242, 438, 157, 51, 321, 122, 382, 15, 257, 394, 400, 95, 50, 19, 165, 451, 489, 67, 84, 319, 366, 448, 329, 387, 177, 483, 144, 60, 125, 254, 261, 23, 413, 489, 300, 128, 253, 420, 370, 28, 179, 77, 280, 220, 205, 379, 391, 76, 311, 306, 489, 134, 284, 299, 381, 176, 403, 434, 378, 341, 70, 344, 192, 389, 384, 22, 290, 489, 134, 65, 162, 269, 406, 407, 500, 87, 502, 93, 156, 62, 124, 196, 190, 182, 236, 67, 307, 239, 213, 422, 17, 149, 100, 209, 343, 88, 56, 11, 142, 499, 201, 58, 143, 292, 283, 270, 14, 385, 318, 312, 411, 501, 68, 348, 459, 63, 445, 185, 58, 143, 354, 105, 281, 298, 199, 274, 469, 509, 263, 301, 212, 155, 346, 415, 97, 58, 143, 260, 13, 139, 414, 24, 333, 285, 399, 439, 357, 112, 151, 412, 21, 364, 58, 188, 376, 181, 360, 154, 409, 396, 362, 317, 38, 386, 146, 171, 230, 308, 356, 58, 188, 172, 12, 251, 342, 57, 79, 36, 296, 431, 247, 435, 252, 423, 405, 206, 58, 436, 486, 94, 336, 276, 480, 96, 288, 174, 197, 465, 241, 130, 361, 310, 432, 58, 184, 18, 221, 457, 462, 106, 8, 78, 119, 195, 238, 137, 153, 1, 210, 224, 58, 232, 161, 458, 121, 295, 214, 64, 123, 202, 0, 466, 250, 369, 358, 419, 204, 334, 494, 449, 467, 223, 120, 46, 82, 178, 468, 495, 402, 203, 272, 328, 86, 231, 372, 297, 347, 92, 505, 404, 194, 225, 392, 278, 66, 427, 428, 503, 61, 479, 287, 455, 297, 262, 198, 289, 240, 34, 350, 41, 470, 218, 104, 115, 189, 279, 424, 30, 168, 256, 286, 374, 259, 193, 291, 433, 129, 102, 127, 229, 266, 305, 31, 273, 368, 168, 26, 85, 482, 271, 163, 74, 6, 35, 147, 453, 59, 267, 39, 461, 293, 148, 168, 26, 108, 140, 54, 380, 235, 25, 471, 3, 114, 506, 437, 339, 443, 441, 507, 168, 487, 484, 454, 187, 401, 42, 430, 375, 4, 481, 27, 83, 363, 89, 245, 228, 168, 297, 327, 488, 2, 294, 131, 429, 48, 493, 464, 365, 132, 393, 183, 52, 118, 264, 309, 377, 207, 383, 258, 497, 395, 418, 138, 237, 10, 447, 416, 373, 268, 164, 264, 256, 16, 173, 325, 398, 91, 255, 313, 388, 323, 234, 476, 442, 265, 49, 219, 264, 256, 371, 135, 222, 170, 498, 75, 55, 320, 109, 226, 450, 227, 32, 426, 53, 478, 309, 233, 352, 99, 440, 340, 337, 111, 126, 43, 397, 116, 314, 160, 367, 145, 359, 275, 101, 40, 490, 322, 215, 390, 110, 345, 277, 303, 510, 463, 208, 472, 5, 9, 152, 133, 351, 485, 103, 417, 355, 460, 330, 217, 410, 332, 186, 315, 243, 244, 113, 152, 473, 248, 477, 45, 107, 69, 326, 150, 324, 338, 117, 159, 167, 508, 136, 80, 80, 473, 425, 47, 33, 452, 191, 349, 211, 141, 504, 421, 456, 90, 158, 175, 80, 152, 446, 304, 331, 474, 408, 335, 180, 316, 98, 29, 169, 511, 37, 475, 71] + 18: [501, 291, 231, 326, 50, 496, 79, 450, 357, 13, 307, 300, 272, 114, 418, 324, 465, 90, 25, 346, 40, 474, 456, 157, 374, 316, 104, 206, 144, 290, 447, 349, 96, 239, 90, 241, 455, 75, 126, 154, 6, 404, 377, 424, 448, 260, 390, 57, 7, 348, 407, 90, 291, 435, 315, 52, 54, 263, 44, 253, 420, 347, 34, 118, 156, 368, 78, 228, 188, 384, 204, 327, 285, 276, 48, 337, 5, 136, 261, 292, 17, 21, 27, 334, 419, 188, 246, 214, 185, 370, 296, 279, 38, 216, 303, 59, 391, 442, 164, 492, 350, 35, 188, 246, 214, 110, 84, 14, 213, 321, 459, 198, 509, 73, 375, 437, 305, 131, 286, 388, 184, 376, 66, 403, 4, 33, 162, 39, 201, 0, 494, 367, 242, 135, 309, 122, 388, 384, 476, 49, 398, 313, 431, 428, 142, 301, 132, 28, 158, 194, 363, 338, 397, 106, 270, 124, 511, 67, 473, 351, 8, 378, 91, 68, 145, 196, 133, 15, 182, 396, 106, 464, 484, 146, 362, 320, 488, 12, 271, 207, 199, 19, 322, 499, 205, 85, 226, 106, 464, 108, 446, 83, 412, 343, 240, 3, 137, 18, 355, 372, 359, 113, 127, 95, 106, 140, 484, 342, 259, 402, 171, 93, 358, 490, 288, 87, 356, 453, 51, 80, 186, 287, 341, 64, 102, 426, 47, 277, 482, 130, 249, 60, 295, 302, 139, 119, 42, 411, 287, 371, 395, 193, 415, 227, 310, 163, 373, 477, 115, 481, 405, 29, 401, 187, 495, 287, 371, 179, 485, 150, 325, 101, 9, 58, 275, 26, 479, 138, 16, 283, 293, 211, 287, 62, 190, 247, 393, 298, 440, 268, 353, 236, 503, 92, 454, 37, 449, 463, 331, 470, 471, 248, 203, 195, 434, 429, 243, 141, 210, 192, 209, 382, 11, 383, 36, 469, 244, 366, 55, 24, 220, 217, 392, 238, 427, 2, 409, 365, 336, 161, 100, 497, 20, 430, 148, 360, 491, 53, 352, 41, 414, 361, 264, 452, 152, 299, 86, 107, 167, 387, 430, 215, 457, 254, 98, 120, 265, 169, 282, 69, 10, 172, 200, 458, 147, 444, 410, 430, 507, 189, 380, 328, 345, 330, 121, 235, 116, 425, 297, 269, 304, 399, 475, 218, 430, 45, 128, 165, 109, 159, 493, 166, 143, 257, 72, 22, 31, 63, 252, 153, 256, 430, 45, 56, 221, 149, 344, 468, 483, 105, 508, 306, 500, 223, 180, 151, 125, 421, 423, 273, 376, 245, 445, 250, 510, 266, 112, 99, 318, 30, 219, 183, 65, 1, 197, 222, 70, 323, 178, 498, 280, 422, 462, 461, 251, 89, 451, 237, 289, 441, 111, 175, 222, 70, 202, 224, 486, 94, 329, 229, 439, 335, 294, 81, 339, 255, 385, 278, 173, 222, 43, 77, 472, 82, 76, 369, 364, 389, 233, 212, 314, 191, 129, 416, 433, 208, 222, 273, 476, 417, 466, 394, 467, 406, 176, 267, 436, 308, 274, 460, 332, 177, 71, 502, 319, 408, 432, 225, 170, 340, 312, 381, 262, 32, 155, 506, 489, 311, 46, 174, 379, 319, 134, 258, 103, 386, 61, 97, 181, 230, 413, 443, 232, 478, 400, 123, 168, 487, 487, 88, 23, 74, 333, 480, 160, 354, 284, 281, 234, 504, 505, 438, 317, 117] + 19: [103, 431, 61, 99, 437, 299, 477, 252, 262, 370, 113, 358, 426, 466, 159, 18, 347, 103, 320, 267, 13, 474, 40, 468, 112, 484, 508, 348, 22, 400, 190, 488, 132, 42, 103, 327, 221, 228, 37, 36, 201, 433, 198, 171, 247, 59, 243, 357, 353, 298, 154, 324, 489, 111, 10, 374, 397, 210, 379, 172, 50, 222, 322, 233, 388, 482, 412, 332, 324, 489, 138, 197, 155, 505, 483, 350, 395, 343, 48, 77, 422, 360, 428, 5, 31, 324, 207, 494, 490, 493, 94, 124, 458, 450, 447, 250, 3, 211, 41, 240, 354, 145, 324, 207, 399, 386, 146, 449, 510, 285, 200, 362, 56, 130, 336, 118, 91, 139, 300, 324, 157, 167, 323, 396, 392, 446, 261, 260, 101, 202, 87, 389, 90, 342, 264, 164, 324, 169, 331, 131, 411, 351, 257, 476, 121, 416, 229, 182, 170, 206, 75, 271, 54, 324, 169, 352, 313, 419, 152, 266, 497, 496, 179, 148, 345, 158, 443, 503, 378, 256, 33, 295, 96, 334, 83, 366, 346, 312, 293, 238, 35, 407, 143, 150, 492, 102, 368, 33, 318, 226, 316, 246, 178, 184, 161, 134, 305, 373, 404, 282, 223, 109, 19, 160, 33, 255, 487, 273, 329, 107, 165, 341, 225, 421, 330, 265, 462, 263, 390, 163, 475, 33, 453, 359, 254, 68, 23, 333, 455, 227, 204, 4, 387, 363, 63, 7, 286, 361, 33, 453, 168, 151, 193, 436, 456, 30, 311, 259, 95, 58, 281, 384, 25, 499, 183, 33, 219, 337, 408, 290, 119, 195, 500, 471, 189, 237, 424, 478, 220, 287, 209, 203, 344, 78, 427, 317, 270, 216, 162, 441, 511, 51, 89, 27, 280, 335, 230, 507, 296, 344, 349, 199, 44, 307, 57, 284, 186, 439, 126, 12, 442, 355, 39, 275, 135, 464, 344, 295, 123, 47, 405, 297, 425, 16, 11, 127, 501, 369, 413, 380, 26, 14, 32, 432, 235, 20, 294, 310, 309, 308, 470, 438, 321, 301, 339, 24, 115, 110, 304, 62, 177, 105, 460, 84, 448, 108, 251, 401, 49, 174, 277, 66, 504, 372, 365, 93, 181, 21, 122, 9, 340, 435, 128, 409, 92, 239, 72, 465, 356, 253, 137, 452, 423, 205, 21, 122, 73, 367, 232, 472, 376, 218, 141, 192, 278, 306, 479, 38, 176, 45, 65, 21, 187, 60, 166, 398, 495, 217, 381, 382, 117, 429, 88, 394, 17, 86, 371, 268, 21, 187, 506, 315, 434, 314, 85, 444, 248, 242, 383, 97, 236, 375, 303, 74, 231, 2, 385, 276, 402, 440, 114, 338, 82, 245, 279, 269, 393, 81, 244, 274, 71, 418, 2, 70, 34, 463, 457, 509, 136, 104, 283, 53, 502, 467, 461, 52, 67, 234, 208, 2, 70, 100, 410, 212, 98, 140, 214, 325, 188, 125, 194, 0, 417, 292, 1, 133, 2, 180, 445, 498, 29, 491, 420, 473, 79, 55, 481, 43, 272, 215, 377, 258, 430, 2, 122, 116, 319, 249, 291, 173, 8, 142, 28, 459, 149, 480, 414, 46, 144, 15, 129, 364, 213, 451, 469, 156, 486, 120, 289, 403, 328, 196, 175, 302, 241, 406, 326, 64, 364, 485, 391, 106, 76, 6, 153, 454, 147, 185, 224, 191, 288, 69, 80, 415] + 20: [421, 413, 260, 290, 103, 293, 425, 28, 85, 245, 458, 10, 304, 370, 285, 146, 419, 33, 413, 314, 113, 297, 350, 389, 161, 501, 429, 485, 169, 181, 239, 116, 94, 78, 275, 375, 84, 328, 32, 0, 417, 13, 437, 228, 171, 457, 382, 476, 394, 294, 44, 275, 256, 189, 366, 503, 23, 107, 483, 108, 135, 446, 236, 289, 444, 283, 111, 134, 63, 312, 313, 195, 194, 66, 2, 341, 269, 333, 338, 492, 117, 38, 199, 267, 395, 63, 312, 511, 409, 502, 456, 358, 403, 102, 439, 206, 445, 29, 363, 139, 305, 64, 63, 375, 222, 443, 495, 470, 65, 301, 150, 4, 98, 351, 16, 93, 428, 255, 376, 226, 461, 234, 334, 43, 59, 115, 354, 25, 37, 77, 377, 61, 210, 144, 499, 494, 399, 461, 50, 75, 106, 391, 487, 185, 212, 193, 86, 418, 27, 360, 286, 257, 95, 472, 384, 404, 387, 46, 204, 342, 17, 125, 343, 56, 402, 225, 123, 435, 127, 235, 472, 384, 365, 416, 475, 372, 481, 381, 201, 270, 356, 148, 188, 70, 265, 426, 433, 472, 384, 230, 310, 142, 21, 145, 345, 121, 153, 291, 434, 47, 455, 197, 192, 442, 472, 482, 50, 509, 205, 420, 507, 357, 15, 203, 90, 8, 359, 238, 99, 510, 118, 373, 122, 448, 200, 371, 369, 432, 337, 177, 462, 454, 11, 213, 58, 227, 249, 486, 373, 122, 452, 273, 208, 133, 306, 508, 223, 216, 233, 411, 300, 224, 271, 353, 52, 373, 506, 164, 175, 478, 14, 92, 39, 364, 31, 104, 423, 447, 183, 497, 214, 311, 430, 440, 76, 137, 20, 422, 182, 473, 490, 36, 180, 82, 496, 390, 246, 465, 240, 430, 368, 41, 408, 367, 287, 241, 355, 71, 309, 248, 138, 362, 243, 278, 261, 72, 167, 190, 464, 155, 219, 276, 252, 196, 258, 396, 6, 101, 147, 319, 40, 166, 207, 167, 190, 317, 308, 281, 160, 96, 471, 327, 87, 322, 18, 406, 303, 489, 178, 12, 167, 168, 163, 60, 460, 400, 97, 298, 280, 184, 237, 130, 42, 202, 284, 74, 388, 167, 131, 49, 174, 110, 198, 259, 170, 339, 22, 105, 91, 296, 7, 393, 441, 176, 167, 324, 230, 266, 316, 277, 217, 19, 326, 479, 172, 302, 57, 250, 100, 162, 491, 374, 344, 221, 431, 253, 244, 157, 323, 352, 383, 251, 83, 436, 156, 336, 119, 149, 374, 414, 159, 424, 412, 242, 410, 120, 132, 379, 484, 51, 112, 209, 218, 151, 505, 374, 414, 466, 69, 154, 62, 330, 392, 215, 504, 397, 480, 1, 136, 463, 45, 264, 468, 186, 247, 143, 53, 467, 114, 500, 24, 450, 469, 274, 378, 211, 315, 427, 398, 54, 349, 262, 140, 272, 477, 453, 231, 80, 165, 3, 299, 307, 88, 348, 329, 449, 54, 186, 164, 68, 232, 282, 332, 325, 415, 493, 401, 79, 129, 438, 488, 5, 318, 54, 186, 386, 405, 320, 30, 321, 187, 26, 229, 179, 128, 451, 152, 498, 459, 474, 220, 109, 73, 9, 158, 331, 335, 347, 340, 292, 126, 81, 191, 55, 380, 67, 34, 220, 254, 268, 48, 35, 407, 173, 89, 279, 346, 263, 295, 288, 124, 385, 141, 361] + 21: [481, 5, 467, 29, 244, 468, 198, 230, 103, 178, 136, 66, 68, 217, 474, 302, 240, 481, 161, 304, 258, 428, 402, 448, 358, 399, 0, 347, 311, 268, 370, 57, 140, 36, 242, 8, 207, 119, 162, 389, 90, 403, 46, 38, 40, 27, 332, 43, 54, 85, 223, 242, 91, 502, 433, 310, 340, 388, 393, 187, 155, 508, 269, 482, 308, 451, 391, 23, 171, 107, 392, 92, 470, 417, 126, 247, 290, 431, 477, 195, 264, 200, 232, 83, 295, 171, 499, 159, 166, 462, 257, 22, 491, 11, 196, 328, 478, 4, 410, 65, 172, 397, 171, 499, 349, 350, 167, 367, 216, 376, 441, 485, 238, 203, 245, 390, 249, 108, 53, 171, 177, 435, 194, 387, 70, 405, 305, 104, 56, 450, 500, 123, 144, 476, 174, 487, 171, 404, 282, 459, 26, 434, 42, 283, 503, 501, 18, 445, 453, 419, 306, 234, 179, 171, 317, 28, 346, 511, 188, 438, 472, 183, 71, 77, 98, 316, 110, 130, 106, 334, 171, 62, 28, 406, 151, 150, 205, 100, 270, 13, 416, 6, 219, 2, 345, 193, 380, 171, 343, 161, 80, 111, 128, 185, 32, 129, 423, 437, 429, 401, 276, 239, 48, 333, 342, 17, 89, 362, 312, 344, 327, 173, 9, 265, 274, 211, 82, 16, 74, 201, 14, 231, 112, 314, 88, 309, 222, 425, 301, 81, 255, 225, 76, 133, 94, 101, 480, 34, 221, 10, 212, 186, 181, 461, 59, 84, 271, 256, 267, 156, 409, 21, 254, 102, 348, 221, 10, 465, 354, 300, 113, 336, 224, 303, 496, 148, 287, 202, 241, 33, 504, 199, 475, 325, 207, 288, 355, 260, 420, 372, 492, 51, 58, 284, 12, 414, 99, 63, 44, 142, 293, 160, 490, 37, 444, 105, 135, 299, 378, 184, 275, 132, 488, 369, 298, 237, 142, 293, 39, 115, 139, 15, 189, 430, 120, 228, 7, 250, 122, 114, 272, 210, 24, 142, 293, 143, 495, 320, 96, 197, 469, 158, 95, 395, 484, 19, 498, 479, 30, 131, 142, 164, 443, 506, 209, 218, 321, 374, 277, 117, 246, 146, 432, 464, 330, 307, 147, 142, 164, 243, 493, 45, 180, 31, 329, 289, 413, 69, 494, 324, 138, 456, 489, 398, 142, 458, 304, 262, 509, 457, 220, 235, 170, 466, 400, 452, 292, 252, 273, 41, 72, 157, 315, 463, 145, 486, 442, 165, 422, 371, 60, 365, 418, 473, 455, 169, 137, 352, 266, 510, 229, 20, 361, 313, 280, 118, 153, 331, 483, 35, 381, 286, 351, 408, 259, 266, 510, 497, 73, 505, 55, 127, 124, 79, 109, 318, 278, 49, 377, 407, 214, 383, 439, 341, 141, 427, 386, 326, 359, 116, 363, 208, 190, 396, 152, 436, 337, 134, 394, 439, 424, 47, 297, 253, 233, 78, 154, 507, 87, 294, 263, 446, 335, 291, 322, 251, 227, 215, 460, 226, 368, 182, 149, 93, 279, 323, 236, 449, 357, 379, 319, 3, 261, 227, 341, 360, 447, 426, 384, 454, 175, 471, 50, 338, 385, 1, 75, 204, 353, 248, 364, 215, 25, 121, 366, 421, 412, 382, 285, 52, 339, 168, 411, 125, 206, 373, 67, 364, 215, 281, 163, 64, 61, 97, 375, 356, 86, 176, 192, 415, 191, 213, 440, 296] + 22: [456, 493, 24, 119, 191, 352, 224, 328, 69, 344, 511, 284, 152, 213, 46, 17, 301, 348, 155, 74, 463, 428, 462, 379, 445, 33, 196, 193, 242, 302, 331, 258, 317, 123, 348, 155, 313, 236, 113, 215, 480, 414, 125, 433, 261, 438, 20, 398, 40, 409, 75, 487, 377, 31, 87, 500, 259, 58, 283, 291, 292, 297, 141, 170, 479, 383, 323, 166, 111, 296, 93, 498, 238, 278, 376, 81, 371, 340, 508, 459, 466, 203, 446, 484, 272, 316, 296, 455, 85, 510, 329, 287, 252, 112, 22, 294, 281, 176, 437, 126, 336, 339, 392, 296, 38, 142, 146, 384, 435, 357, 120, 88, 130, 32, 492, 2, 256, 248, 183, 71, 467, 139, 263, 15, 290, 449, 175, 345, 363, 390, 186, 57, 63, 144, 218, 114, 71, 467, 38, 60, 415, 274, 471, 185, 372, 10, 212, 25, 338, 413, 249, 164, 214, 458, 333, 493, 367, 260, 150, 465, 389, 227, 188, 134, 44, 386, 148, 98, 181, 439, 451, 6, 56, 47, 504, 62, 39, 388, 244, 324, 351, 488, 153, 361, 285, 314, 356, 451, 436, 140, 26, 162, 201, 52, 21, 135, 230, 320, 268, 232, 365, 237, 65, 506, 451, 360, 240, 163, 411, 505, 350, 402, 481, 410, 18, 499, 223, 431, 417, 27, 100, 451, 360, 59, 241, 319, 239, 49, 349, 50, 429, 54, 68, 341, 173, 275, 295, 48, 451, 250, 509, 109, 205, 422, 453, 343, 382, 407, 199, 380, 23, 202, 64, 359, 337, 451, 250, 387, 101, 118, 293, 145, 397, 434, 208, 94, 194, 468, 197, 92, 116, 210, 207, 16, 334, 432, 189, 169, 461, 11, 476, 137, 246, 395, 80, 416, 160, 198, 29, 90, 206, 276, 235, 486, 77, 99, 254, 96, 503, 117, 366, 84, 226, 73, 406, 457, 374, 206, 334, 501, 447, 216, 448, 442, 136, 321, 266, 482, 502, 61, 342, 82, 394, 374, 206, 72, 279, 255, 234, 37, 190, 124, 277, 78, 355, 271, 222, 401, 34, 115, 177, 396, 312, 310, 221, 14, 200, 424, 381, 159, 327, 315, 358, 158, 83, 79, 225, 41, 426, 418, 364, 42, 51, 423, 443, 70, 318, 178, 404, 161, 298, 95, 391, 133, 41, 269, 286, 7, 28, 427, 219, 184, 143, 332, 507, 330, 370, 91, 121, 211, 311, 41, 396, 425, 474, 156, 306, 354, 187, 0, 103, 157, 110, 347, 243, 454, 5, 149, 41, 396, 229, 9, 171, 107, 264, 102, 399, 464, 86, 309, 495, 477, 472, 195, 53, 104, 43, 270, 441, 450, 478, 335, 273, 305, 251, 66, 89, 174, 182, 265, 35, 12, 257, 106, 288, 373, 138, 325, 105, 412, 430, 483, 385, 473, 132, 368, 165, 494, 19, 151, 147, 304, 180, 179, 308, 497, 45, 307, 209, 204, 326, 192, 4, 13, 1, 475, 245, 362, 304, 353, 485, 217, 108, 440, 122, 172, 369, 419, 282, 76, 131, 231, 67, 245, 147, 140, 470, 154, 303, 128, 253, 97, 496, 8, 228, 127, 489, 452, 400, 30, 300, 362, 393, 3, 378, 460, 346, 444, 408, 233, 280, 267, 168, 289, 405, 490, 375, 362, 362, 240, 469, 322, 403, 36, 247, 421, 262, 220, 129, 55, 420, 491, 299, 167] + 23: [417, 468, 136, 285, 144, 245, 187, 463, 180, 331, 459, 322, 485, 61, 510, 271, 129, 292, 188, 470, 198, 87, 434, 461, 77, 141, 412, 74, 448, 419, 241, 202, 115, 27, 292, 357, 233, 224, 327, 5, 127, 345, 194, 256, 354, 13, 123, 29, 232, 209, 134, 292, 357, 116, 410, 222, 217, 94, 9, 175, 370, 301, 158, 396, 304, 400, 238, 438, 292, 33, 426, 467, 415, 156, 272, 168, 40, 454, 482, 103, 90, 380, 26, 176, 443, 292, 33, 426, 379, 500, 106, 308, 372, 392, 475, 425, 442, 195, 159, 31, 181, 16, 292, 468, 287, 60, 295, 335, 35, 199, 376, 490, 235, 62, 371, 118, 19, 284, 389, 53, 334, 246, 314, 386, 385, 137, 223, 383, 466, 2, 17, 1, 262, 508, 12, 218, 53, 243, 388, 303, 473, 128, 460, 161, 341, 300, 189, 348, 240, 151, 416, 288, 469, 53, 478, 264, 67, 476, 101, 289, 234, 401, 296, 266, 424, 65, 253, 6, 265, 484, 53, 50, 4, 213, 489, 150, 24, 192, 310, 339, 462, 505, 298, 239, 397, 325, 369, 53, 113, 338, 405, 320, 244, 333, 135, 177, 93, 430, 315, 471, 458, 165, 433, 119, 53, 140, 450, 337, 80, 14, 355, 293, 236, 507, 79, 312, 493, 324, 497, 395, 318, 53, 140, 196, 367, 154, 41, 323, 351, 216, 428, 381, 46, 464, 100, 207, 48, 205, 250, 309, 409, 290, 279, 7, 76, 330, 465, 122, 3, 501, 267, 427, 340, 215, 496, 250, 49, 146, 108, 36, 306, 280, 432, 440, 498, 511, 276, 171, 254, 481, 143, 457, 250, 334, 169, 352, 226, 382, 259, 173, 142, 326, 89, 164, 57, 336, 160, 404, 44, 97, 220, 231, 191, 390, 368, 329, 249, 20, 82, 456, 85, 356, 332, 59, 212, 487, 281, 220, 107, 10, 120, 359, 8, 39, 402, 130, 378, 273, 228, 23, 491, 193, 391, 281, 220, 307, 319, 68, 203, 504, 88, 42, 366, 277, 22, 162, 472, 414, 0, 214, 163, 413, 47, 445, 394, 408, 81, 190, 166, 377, 328, 311, 183, 411, 407, 283, 294, 163, 413, 210, 133, 258, 25, 374, 32, 488, 251, 384, 75, 66, 278, 446, 155, 437, 163, 479, 492, 148, 237, 201, 230, 54, 182, 346, 270, 117, 313, 219, 204, 96, 132, 163, 247, 139, 221, 21, 406, 449, 200, 503, 208, 38, 153, 480, 206, 375, 43, 495, 398, 358, 361, 92, 439, 502, 349, 360, 56, 286, 499, 98, 178, 321, 435, 28, 420, 99, 316, 110, 91, 291, 494, 453, 172, 125, 441, 242, 83, 184, 429, 268, 421, 509, 423, 104, 84, 186, 418, 305, 111, 363, 105, 252, 393, 282, 422, 55, 257, 263, 45, 423, 179, 483, 299, 486, 452, 34, 64, 152, 185, 344, 317, 51, 70, 72, 30, 387, 423, 167, 343, 373, 362, 18, 126, 131, 302, 114, 431, 444, 477, 447, 297, 436, 157, 69, 104, 149, 350, 474, 15, 255, 364, 455, 506, 63, 347, 403, 248, 174, 73, 86, 69, 104, 353, 109, 399, 124, 225, 138, 275, 260, 52, 261, 102, 227, 229, 11, 269, 37, 104, 170, 71, 211, 112, 147, 365, 274, 145, 342, 78, 197, 58, 451, 121, 95] + 24: [310, 110, 451, 259, 402, 177, 466, 162, 189, 336, 431, 305, 102, 494, 500, 440, 166, 310, 127, 114, 73, 314, 194, 321, 288, 298, 297, 409, 274, 383, 230, 117, 479, 487, 310, 44, 331, 389, 92, 366, 174, 157, 326, 15, 256, 214, 209, 268, 292, 368, 344, 212, 240, 201, 221, 46, 388, 443, 257, 112, 294, 253, 28, 224, 424, 111, 502, 434, 212, 31, 367, 104, 196, 470, 280, 220, 185, 14, 68, 85, 452, 178, 282, 329, 472, 212, 31, 328, 144, 508, 333, 165, 107, 42, 401, 32, 215, 222, 418, 396, 283, 106, 3, 150, 341, 82, 271, 72, 97, 276, 439, 342, 279, 448, 355, 421, 170, 463, 510, 3, 471, 331, 474, 128, 52, 203, 187, 461, 34, 247, 258, 275, 116, 118, 464, 444, 3, 471, 163, 21, 67, 359, 211, 249, 241, 181, 238, 231, 475, 74, 23, 332, 20, 302, 139, 507, 232, 89, 248, 159, 125, 392, 307, 501, 164, 373, 124, 27, 483, 308, 302, 493, 506, 473, 480, 184, 456, 213, 486, 385, 191, 384, 192, 1, 400, 459, 91, 302, 123, 442, 80, 290, 301, 169, 83, 152, 270, 419, 78, 491, 93, 495, 317, 198, 302, 484, 442, 95, 340, 313, 413, 63, 131, 59, 281, 426, 22, 155, 186, 433, 410, 302, 150, 44, 296, 64, 499, 142, 53, 363, 126, 260, 134, 449, 343, 478, 351, 415, 48, 273, 262, 229, 2, 481, 55, 497, 349, 346, 379, 246, 425, 183, 422, 446, 13, 48, 339, 427, 330, 8, 58, 79, 105, 54, 94, 295, 285, 319, 219, 348, 30, 132, 48, 339, 408, 476, 7, 391, 176, 208, 353, 148, 161, 10, 172, 387, 33, 103, 316, 48, 16, 36, 151, 455, 195, 320, 145, 100, 217, 17, 488, 338, 350, 205, 414, 377, 87, 327, 239, 303, 441, 416, 35, 210, 133, 173, 345, 403, 406, 468, 136, 458, 378, 199, 25, 299, 291, 143, 197, 147, 435, 47, 140, 251, 130, 138, 29, 204, 323, 207, 199, 265, 304, 267, 84, 75, 272, 119, 278, 460, 236, 108, 90, 358, 457, 37, 429, 447, 160, 407, 149, 309, 365, 50, 180, 370, 511, 86, 277, 504, 364, 284, 437, 300, 99, 432, 423, 469, 146, 38, 101, 88, 188, 306, 465, 311, 324, 312, 405, 19, 66, 0, 41, 485, 376, 263, 60, 121, 45, 96, 4, 334, 399, 269, 206, 369, 250, 266, 0, 382, 357, 322, 70, 498, 244, 453, 216, 39, 509, 454, 200, 489, 335, 5, 122, 0, 382, 69, 490, 18, 77, 496, 337, 360, 218, 154, 386, 81, 254, 352, 380, 492, 0, 361, 56, 182, 57, 286, 245, 109, 62, 395, 190, 153, 237, 467, 156, 175, 26, 0, 432, 11, 141, 255, 98, 393, 135, 49, 193, 390, 411, 167, 381, 171, 65, 129, 227, 51, 115, 137, 445, 354, 293, 242, 318, 235, 24, 76, 202, 347, 113, 417, 252, 227, 51, 503, 9, 61, 374, 40, 12, 420, 325, 394, 375, 398, 362, 71, 428, 371, 227, 404, 120, 43, 226, 397, 6, 264, 372, 356, 450, 477, 462, 233, 243, 505, 287, 227, 41, 436, 158, 168, 223, 179, 261, 430, 315, 228, 225, 438, 482, 289, 412, 234] + 25: [79, 506, 369, 89, 222, 363, 122, 152, 322, 128, 68, 448, 130, 220, 105, 451, 15, 313, 0, 387, 409, 145, 143, 503, 426, 249, 456, 349, 16, 309, 81, 305, 267, 281, 164, 428, 106, 367, 37, 195, 279, 121, 18, 424, 283, 218, 308, 341, 147, 167, 357, 44, 107, 270, 116, 242, 298, 35, 472, 496, 300, 287, 83, 181, 366, 127, 288, 155, 44, 107, 56, 439, 478, 438, 39, 168, 177, 34, 115, 499, 80, 480, 476, 70, 505, 44, 45, 230, 183, 336, 421, 433, 338, 200, 36, 85, 8, 509, 263, 31, 404, 332, 44, 428, 132, 96, 157, 362, 510, 490, 286, 47, 214, 266, 244, 113, 158, 255, 398, 151, 94, 203, 77, 71, 393, 192, 210, 468, 137, 185, 98, 32, 408, 258, 179, 184, 151, 470, 194, 312, 477, 432, 208, 20, 422, 182, 141, 135, 74, 493, 12, 475, 91, 151, 470, 303, 508, 66, 371, 337, 7, 502, 86, 284, 402, 314, 159, 235, 243, 317, 151, 257, 410, 180, 350, 347, 78, 14, 385, 310, 391, 262, 109, 10, 112, 449, 401, 110, 327, 189, 351, 148, 55, 447, 319, 241, 64, 423, 360, 323, 361, 497, 149, 368, 110, 487, 120, 417, 411, 254, 175, 345, 196, 450, 26, 236, 61, 205, 23, 226, 372, 110, 328, 120, 165, 462, 22, 231, 58, 186, 193, 500, 73, 123, 114, 1, 342, 292, 140, 384, 207, 482, 320, 260, 191, 492, 216, 29, 495, 352, 434, 414, 24, 62, 65, 140, 396, 507, 246, 416, 163, 289, 69, 504, 494, 370, 199, 394, 343, 111, 162, 169, 140, 272, 237, 253, 171, 297, 97, 467, 318, 187, 101, 488, 383, 172, 441, 5, 170, 140, 272, 507, 154, 474, 117, 340, 206, 198, 457, 324, 291, 325, 498, 354, 247, 72, 140, 327, 237, 406, 277, 13, 174, 124, 129, 333, 375, 311, 3, 197, 104, 204, 274, 21, 293, 239, 264, 301, 268, 134, 294, 2, 144, 306, 52, 282, 379, 215, 133, 40, 21, 63, 511, 100, 224, 233, 377, 344, 221, 278, 213, 400, 443, 444, 296, 99, 30, 21, 384, 27, 161, 265, 353, 118, 388, 176, 201, 326, 485, 331, 435, 126, 489, 304, 419, 307, 442, 251, 223, 276, 427, 75, 295, 136, 479, 87, 299, 92, 227, 6, 420, 419, 307, 429, 142, 382, 28, 219, 335, 491, 229, 156, 440, 431, 376, 415, 53, 463, 419, 397, 108, 348, 454, 33, 437, 228, 389, 160, 150, 425, 188, 390, 153, 452, 321, 419, 397, 138, 212, 93, 76, 445, 225, 273, 256, 103, 403, 302, 48, 358, 11, 217, 419, 252, 481, 209, 484, 453, 330, 486, 334, 458, 455, 399, 271, 373, 59, 280, 339, 419, 461, 329, 446, 430, 259, 473, 125, 355, 315, 501, 211, 346, 359, 4, 395, 67, 50, 307, 139, 238, 381, 57, 459, 290, 166, 88, 102, 131, 365, 356, 269, 95, 483, 378, 261, 60, 49, 405, 316, 119, 9, 54, 19, 202, 465, 43, 245, 464, 386, 82, 232, 234, 418, 380, 173, 413, 41, 460, 392, 42, 469, 466, 285, 46, 471, 51, 436, 25, 234, 17, 412, 38, 146, 178, 248, 275, 90, 364, 84, 250, 190, 407, 374, 240] + 26: [388, 30, 279, 169, 408, 410, 90, 482, 465, 9, 378, 318, 107, 161, 395, 351, 105, 388, 135, 49, 503, 375, 65, 143, 277, 109, 151, 435, 106, 271, 438, 407, 209, 203, 489, 423, 104, 114, 225, 488, 276, 48, 154, 19, 358, 464, 264, 427, 459, 487, 126, 489, 211, 460, 413, 0, 397, 80, 494, 79, 189, 139, 240, 414, 250, 478, 77, 468, 489, 211, 35, 96, 218, 294, 113, 293, 56, 306, 212, 82, 507, 68, 86, 457, 420, 489, 60, 391, 8, 492, 377, 347, 43, 479, 37, 258, 484, 129, 473, 257, 387, 233, 489, 58, 142, 274, 439, 462, 474, 341, 119, 133, 385, 62, 124, 430, 483, 506, 288, 489, 17, 458, 208, 384, 162, 504, 98, 1, 472, 44, 254, 471, 477, 87, 61, 159, 502, 454, 16, 282, 333, 93, 339, 81, 367, 312, 428, 366, 32, 383, 325, 415, 33, 217, 309, 424, 117, 183, 486, 365, 187, 356, 440, 259, 230, 64, 436, 321, 14, 3, 217, 175, 335, 261, 401, 88, 4, 268, 27, 444, 327, 10, 236, 224, 181, 136, 332, 217, 272, 67, 95, 253, 499, 45, 7, 398, 290, 416, 328, 167, 2, 92, 320, 343, 217, 272, 393, 348, 389, 372, 180, 262, 59, 300, 223, 447, 246, 379, 70, 171, 445, 217, 286, 405, 219, 352, 141, 302, 197, 322, 165, 78, 201, 431, 123, 369, 495, 54, 217, 454, 323, 330, 442, 336, 53, 36, 6, 125, 186, 207, 174, 192, 317, 73, 191, 244, 426, 480, 380, 172, 287, 399, 75, 491, 41, 337, 319, 304, 485, 71, 362, 28, 301, 199, 456, 50, 455, 313, 453, 134, 145, 100, 157, 21, 116, 275, 298, 256, 417, 301, 426, 307, 490, 368, 97, 130, 297, 83, 285, 51, 267, 204, 200, 216, 359, 437, 46, 199, 354, 122, 215, 198, 469, 168, 227, 324, 449, 63, 66, 38, 501, 24, 128, 446, 26, 228, 481, 467, 448, 152, 34, 331, 132, 500, 296, 194, 412, 493, 346, 160, 446, 26, 94, 251, 425, 206, 496, 418, 112, 31, 315, 243, 108, 329, 370, 396, 263, 149, 164, 137, 101, 310, 265, 210, 173, 188, 178, 303, 441, 242, 381, 234, 115, 221, 149, 164, 55, 213, 386, 255, 158, 148, 374, 118, 248, 47, 74, 131, 311, 121, 497, 149, 164, 15, 476, 140, 247, 182, 202, 402, 222, 421, 185, 69, 338, 40, 443, 373, 149, 102, 299, 340, 195, 245, 239, 376, 281, 434, 238, 11, 509, 270, 89, 350, 361, 149, 102, 295, 237, 316, 508, 179, 23, 498, 231, 360, 334, 283, 176, 394, 166, 76, 146, 284, 273, 342, 470, 475, 249, 278, 353, 150, 308, 364, 345, 170, 120, 451, 419, 146, 284, 91, 292, 452, 111, 403, 289, 25, 280, 99, 72, 39, 349, 177, 252, 229, 363, 392, 155, 429, 355, 13, 103, 110, 163, 127, 461, 190, 138, 156, 226, 22, 382, 363, 392, 400, 466, 193, 153, 235, 404, 52, 450, 406, 184, 144, 5, 432, 196, 357, 433, 433, 291, 241, 205, 147, 314, 463, 12, 232, 18, 57, 510, 220, 409, 390, 305, 433, 42, 84, 505, 326, 214, 344, 85, 20, 266, 422, 371, 269, 511, 411, 29, 260] + 27: [233, 30, 288, 44, 351, 117, 430, 342, 38, 408, 425, 295, 179, 298, 261, 422, 189, 233, 246, 304, 365, 46, 51, 104, 482, 5, 420, 280, 21, 509, 14, 396, 384, 485, 480, 65, 187, 496, 81, 393, 272, 448, 498, 55, 354, 431, 267, 499, 474, 245, 49, 480, 22, 161, 450, 52, 402, 1, 149, 270, 447, 86, 440, 203, 92, 140, 400, 227, 480, 35, 442, 112, 125, 205, 66, 6, 102, 359, 376, 263, 213, 276, 216, 13, 31, 63, 226, 463, 135, 356, 306, 116, 410, 185, 435, 375, 163, 401, 108, 208, 262, 481, 63, 226, 41, 247, 426, 417, 222, 486, 320, 212, 225, 264, 110, 281, 109, 133, 45, 63, 65, 461, 337, 9, 173, 84, 230, 308, 252, 175, 332, 390, 310, 355, 244, 330, 394, 321, 367, 386, 294, 64, 333, 312, 379, 452, 97, 89, 311, 318, 107, 300, 476, 394, 40, 461, 407, 275, 392, 364, 36, 277, 282, 309, 240, 251, 195, 369, 159, 111, 201, 378, 444, 106, 15, 328, 152, 54, 119, 234, 462, 7, 381, 174, 494, 115, 411, 201, 387, 243, 377, 75, 403, 137, 471, 297, 48, 148, 12, 223, 479, 25, 242, 322, 201, 278, 453, 254, 123, 160, 220, 147, 439, 18, 253, 391, 334, 299, 197, 473, 79, 201, 290, 340, 466, 26, 3, 268, 206, 415, 69, 62, 329, 469, 291, 467, 368, 136, 487, 71, 326, 249, 279, 399, 16, 198, 343, 458, 56, 428, 374, 47, 218, 484, 497, 487, 71, 20, 350, 103, 177, 257, 67, 301, 74, 156, 429, 287, 184, 436, 445, 232, 487, 344, 219, 132, 357, 202, 416, 169, 178, 510, 167, 501, 353, 465, 93, 154, 464, 487, 259, 183, 346, 162, 39, 215, 171, 331, 200, 8, 76, 443, 0, 336, 88, 209, 487, 477, 388, 70, 207, 363, 451, 96, 248, 134, 293, 10, 398, 419, 423, 139, 28, 487, 98, 360, 114, 73, 302, 358, 470, 59, 170, 33, 145, 260, 158, 150, 138, 319, 487, 98, 250, 339, 412, 508, 61, 285, 314, 256, 373, 101, 349, 324, 454, 143, 72, 327, 289, 286, 24, 418, 77, 130, 348, 296, 157, 151, 292, 94, 255, 144, 231, 372, 327, 71, 468, 345, 370, 100, 362, 455, 142, 424, 91, 166, 126, 382, 305, 164, 121, 475, 236, 80, 405, 204, 182, 235, 211, 493, 4, 503, 438, 120, 414, 221, 43, 68, 475, 236, 153, 361, 87, 129, 122, 366, 186, 269, 214, 460, 181, 19, 191, 404, 118, 475, 459, 488, 434, 397, 505, 490, 32, 224, 57, 317, 338, 506, 196, 258, 341, 90, 475, 193, 131, 172, 383, 303, 176, 238, 23, 316, 421, 347, 53, 389, 155, 11, 492, 475, 2, 427, 491, 42, 283, 284, 37, 307, 274, 27, 446, 85, 507, 483, 180, 273, 475, 2, 504, 190, 17, 409, 335, 141, 500, 188, 352, 82, 441, 241, 229, 472, 228, 475, 58, 449, 95, 113, 199, 433, 50, 60, 325, 457, 168, 192, 495, 165, 313, 237, 475, 271, 34, 456, 385, 380, 323, 29, 315, 105, 437, 502, 266, 511, 128, 432, 124, 395, 236, 406, 371, 217, 127, 413, 99, 78, 194, 239, 210, 489, 146, 478, 265, 83] + 28: [93, 265, 309, 291, 479, 61, 118, 492, 114, 123, 483, 464, 430, 50, 322, 86, 480, 93, 432, 113, 501, 10, 166, 35, 175, 129, 133, 69, 217, 406, 333, 6, 95, 149, 60, 344, 412, 314, 257, 423, 30, 401, 75, 26, 191, 83, 229, 200, 422, 298, 371, 60, 364, 85, 148, 352, 339, 160, 293, 353, 156, 467, 43, 182, 427, 8, 173, 16, 60, 364, 487, 280, 171, 449, 57, 346, 319, 126, 438, 78, 56, 466, 328, 139, 82, 60, 115, 174, 249, 447, 362, 343, 285, 272, 231, 321, 219, 120, 216, 203, 246, 384, 448, 131, 197, 116, 435, 201, 181, 237, 297, 202, 108, 207, 204, 65, 112, 142, 381, 448, 279, 493, 327, 261, 18, 457, 474, 164, 443, 41, 281, 394, 415, 11, 101, 20, 448, 344, 276, 138, 104, 311, 292, 318, 378, 488, 211, 360, 434, 300, 188, 402, 153, 374, 419, 505, 45, 252, 134, 307, 37, 198, 258, 497, 238, 348, 215, 418, 455, 383, 374, 442, 433, 367, 210, 445, 161, 444, 397, 235, 185, 326, 355, 186, 506, 266, 141, 374, 442, 158, 15, 51, 254, 81, 437, 205, 63, 511, 196, 3, 23, 270, 259, 242, 374, 312, 184, 209, 124, 370, 478, 48, 310, 315, 431, 440, 357, 90, 214, 228, 88, 374, 29, 424, 507, 476, 251, 456, 302, 325, 417, 180, 172, 308, 7, 387, 323, 390, 374, 29, 388, 395, 79, 66, 92, 472, 248, 73, 240, 324, 380, 52, 369, 407, 1, 374, 439, 256, 481, 392, 80, 404, 31, 53, 218, 409, 253, 451, 193, 317, 286, 67, 374, 331, 244, 178, 135, 299, 305, 38, 189, 436, 425, 25, 287, 109, 295, 221, 127, 363, 330, 177, 98, 469, 152, 473, 263, 282, 17, 223, 463, 96, 358, 137, 341, 105, 363, 330, 458, 446, 132, 42, 234, 260, 68, 454, 462, 268, 316, 294, 372, 441, 502, 4, 426, 275, 267, 97, 100, 170, 199, 36, 354, 416, 226, 232, 2, 117, 499, 13, 4, 426, 420, 450, 459, 44, 24, 154, 273, 382, 396, 398, 194, 460, 110, 176, 155, 4, 410, 106, 393, 350, 107, 313, 470, 146, 168, 136, 49, 405, 192, 500, 361, 334, 4, 351, 55, 40, 278, 490, 494, 284, 359, 389, 27, 12, 241, 400, 28, 233, 269, 4, 413, 187, 379, 121, 54, 510, 303, 345, 47, 94, 301, 461, 399, 375, 385, 475, 4, 413, 128, 356, 84, 495, 147, 482, 225, 366, 335, 19, 304, 21, 373, 414, 428, 4, 320, 508, 206, 403, 143, 349, 236, 453, 250, 195, 130, 169, 91, 306, 337, 222, 4, 102, 386, 151, 87, 290, 14, 220, 509, 274, 70, 491, 227, 332, 144, 224, 0, 71, 426, 125, 99, 489, 179, 264, 465, 162, 46, 504, 183, 376, 429, 22, 212, 329, 71, 426, 368, 140, 9, 33, 34, 340, 288, 119, 59, 74, 122, 163, 452, 32, 468, 72, 477, 111, 338, 58, 377, 39, 471, 145, 485, 76, 408, 347, 283, 167, 230, 245, 72, 365, 391, 484, 213, 342, 255, 62, 165, 262, 486, 289, 503, 208, 243, 150, 5, 496, 64, 498, 277, 336, 157, 411, 421, 89, 239, 103, 77, 247, 159, 271, 190, 296] + 29: [113, 460, 38, 209, 367, 241, 306, 61, 502, 386, 156, 270, 456, 8, 284, 301, 68, 9, 66, 162, 408, 265, 246, 7, 96, 12, 191, 239, 479, 169, 332, 448, 497, 377, 36, 40, 38, 348, 145, 303, 508, 55, 28, 326, 110, 369, 337, 65, 104, 384, 163, 36, 499, 178, 248, 262, 154, 149, 266, 491, 305, 472, 72, 62, 52, 21, 477, 210, 36, 480, 16, 263, 407, 325, 370, 304, 126, 160, 236, 232, 219, 450, 233, 415, 430, 139, 416, 400, 20, 458, 489, 302, 484, 79, 443, 431, 0, 506, 213, 158, 374, 141, 139, 390, 330, 496, 60, 179, 183, 34, 74, 164, 106, 283, 200, 25, 504, 346, 505, 139, 429, 237, 92, 29, 319, 194, 373, 14, 24, 134, 257, 151, 58, 226, 105, 315, 139, 157, 269, 427, 50, 87, 402, 244, 503, 251, 507, 86, 135, 501, 27, 168, 372, 139, 378, 73, 321, 467, 173, 187, 69, 318, 439, 314, 118, 285, 425, 274, 466, 77, 139, 182, 411, 111, 445, 414, 418, 203, 476, 185, 93, 259, 426, 32, 276, 478, 383, 139, 182, 122, 354, 31, 409, 474, 181, 397, 99, 186, 243, 255, 193, 177, 442, 51, 139, 344, 411, 333, 256, 171, 214, 253, 64, 432, 487, 81, 198, 334, 311, 317, 475, 1, 137, 398, 22, 316, 221, 37, 208, 56, 206, 42, 184, 350, 218, 327, 275, 33, 1, 137, 465, 312, 320, 75, 260, 196, 296, 281, 5, 457, 440, 205, 258, 97, 288, 83, 361, 11, 298, 406, 180, 486, 228, 412, 176, 352, 190, 115, 109, 355, 63, 399, 290, 423, 424, 419, 413, 49, 357, 468, 437, 483, 438, 404, 103, 127, 339, 345, 347, 464, 340, 394, 471, 403, 444, 401, 90, 360, 336, 211, 231, 277, 225, 124, 313, 216, 464, 340, 300, 343, 341, 199, 498, 328, 192, 227, 174, 264, 509, 451, 342, 368, 410, 464, 39, 165, 129, 485, 392, 295, 76, 116, 363, 121, 380, 234, 493, 82, 455, 147, 464, 39, 133, 338, 112, 279, 80, 273, 335, 436, 67, 461, 308, 59, 120, 434, 492, 464, 280, 23, 356, 417, 94, 393, 481, 473, 229, 123, 146, 376, 511, 287, 247, 495, 464, 267, 215, 95, 454, 494, 382, 175, 47, 19, 282, 389, 10, 142, 188, 54, 488, 464, 267, 13, 433, 136, 114, 349, 222, 293, 422, 268, 286, 249, 159, 100, 385, 387, 464, 117, 201, 252, 428, 138, 153, 309, 223, 57, 322, 381, 98, 272, 254, 469, 297, 459, 161, 85, 48, 167, 150, 421, 212, 125, 197, 108, 224, 166, 3, 366, 189, 204, 459, 161, 35, 242, 128, 172, 107, 391, 453, 310, 119, 510, 88, 365, 245, 375, 235, 195, 230, 353, 250, 490, 447, 278, 388, 43, 446, 26, 6, 291, 217, 379, 18, 148, 78, 84, 358, 405, 30, 207, 271, 452, 294, 4, 396, 449, 101, 331, 89, 170, 238, 78, 230, 323, 371, 240, 441, 395, 140, 132, 324, 71, 53, 155, 17, 131, 462, 41, 78, 230, 144, 46, 463, 44, 202, 91, 292, 15, 364, 351, 362, 500, 261, 470, 359, 84, 84, 152, 307, 143, 102, 329, 130, 70, 45, 482, 420, 2, 435, 299, 220, 289] + 30: [510, 268, 456, 403, 121, 277, 217, 425, 226, 466, 102, 151, 65, 311, 370, 229, 271, 510, 362, 437, 338, 33, 43, 326, 118, 15, 18, 293, 443, 186, 296, 30, 486, 299, 510, 130, 346, 404, 106, 159, 273, 318, 83, 195, 203, 185, 153, 101, 98, 253, 458, 510, 212, 163, 91, 423, 87, 417, 20, 295, 348, 182, 265, 347, 183, 476, 37, 168, 7, 177, 429, 473, 270, 251, 89, 140, 320, 56, 482, 418, 380, 436, 374, 28, 224, 7, 395, 36, 414, 196, 334, 432, 260, 305, 125, 361, 349, 134, 44, 480, 280, 173, 7, 90, 163, 499, 428, 444, 358, 190, 247, 317, 32, 158, 120, 410, 70, 302, 511, 79, 502, 366, 241, 481, 505, 266, 200, 64, 1, 373, 19, 281, 328, 356, 155, 148, 79, 502, 485, 11, 365, 469, 509, 325, 309, 369, 435, 154, 198, 399, 162, 139, 355, 79, 221, 459, 172, 386, 160, 463, 254, 86, 490, 501, 493, 261, 54, 122, 291, 9, 79, 316, 321, 124, 8, 152, 234, 111, 29, 57, 438, 84, 228, 239, 80, 298, 314, 79, 169, 401, 388, 61, 63, 105, 406, 207, 323, 392, 289, 126, 240, 412, 204, 138, 79, 449, 119, 297, 467, 387, 62, 339, 2, 97, 416, 278, 450, 216, 407, 27, 427, 503, 150, 25, 457, 492, 422, 231, 26, 110, 363, 306, 319, 82, 322, 88, 167, 193, 503, 150, 462, 218, 242, 245, 96, 470, 495, 301, 39, 179, 187, 24, 331, 330, 184, 503, 150, 3, 329, 22, 94, 379, 214, 390, 341, 461, 161, 272, 411, 294, 67, 59, 0, 233, 430, 352, 333, 420, 45, 353, 50, 372, 209, 494, 340, 202, 92, 74, 389, 0, 6, 397, 288, 164, 275, 391, 188, 345, 147, 12, 211, 408, 35, 312, 176, 116, 0, 471, 378, 364, 474, 396, 262, 38, 95, 431, 75, 489, 360, 143, 440, 47, 141, 276, 131, 359, 72, 144, 40, 23, 357, 424, 506, 243, 115, 112, 507, 371, 42, 413, 174, 81, 283, 300, 137, 55, 315, 394, 344, 405, 180, 350, 192, 465, 354, 258, 336, 174, 421, 304, 426, 257, 468, 267, 46, 263, 442, 446, 235, 460, 225, 400, 496, 53, 174, 131, 85, 5, 488, 127, 41, 197, 135, 68, 415, 21, 376, 199, 222, 351, 384, 232, 475, 285, 99, 477, 109, 145, 504, 252, 170, 269, 48, 215, 256, 175, 255, 113, 491, 475, 210, 381, 108, 156, 227, 149, 310, 136, 132, 165, 250, 454, 4, 455, 166, 491, 475, 114, 146, 223, 308, 441, 368, 367, 313, 205, 284, 287, 78, 259, 445, 117, 60, 475, 13, 324, 236, 129, 208, 246, 73, 332, 49, 77, 264, 14, 31, 194, 375, 452, 487, 434, 10, 157, 248, 327, 51, 171, 237, 123, 178, 76, 17, 103, 479, 377, 452, 487, 303, 342, 419, 100, 219, 451, 16, 498, 93, 230, 382, 439, 409, 133, 249, 402, 487, 191, 142, 383, 238, 282, 52, 307, 433, 66, 71, 128, 393, 464, 497, 104, 402, 487, 447, 290, 189, 398, 213, 220, 335, 472, 483, 484, 69, 343, 337, 201, 500, 487, 487, 385, 58, 292, 34, 107, 453, 508, 286, 279, 478, 206, 181, 274, 244, 448] + 31: [145, 125, 414, 232, 135, 425, 359, 435, 177, 225, 30, 92, 449, 219, 367, 329, 151, 127, 368, 167, 486, 326, 379, 0, 98, 409, 78, 371, 9, 399, 210, 36, 191, 153, 127, 216, 227, 337, 101, 21, 20, 201, 250, 424, 453, 71, 278, 448, 281, 18, 290, 127, 2, 291, 440, 117, 411, 229, 193, 171, 490, 16, 189, 268, 488, 14, 73, 68, 127, 59, 422, 110, 459, 381, 80, 384, 508, 363, 315, 253, 99, 343, 66, 118, 270, 127, 263, 421, 491, 238, 433, 496, 57, 487, 454, 403, 211, 6, 220, 215, 64, 223, 127, 106, 461, 303, 181, 198, 302, 108, 420, 366, 34, 296, 405, 393, 375, 244, 479, 213, 116, 42, 221, 49, 349, 356, 39, 141, 342, 358, 402, 284, 204, 493, 251, 442, 213, 368, 470, 494, 129, 144, 156, 293, 121, 256, 394, 350, 10, 457, 269, 214, 195, 438, 38, 364, 180, 196, 273, 41, 271, 114, 365, 484, 283, 446, 386, 207, 431, 391, 438, 336, 441, 75, 334, 503, 262, 178, 400, 257, 467, 468, 33, 56, 340, 26, 432, 438, 336, 423, 314, 140, 50, 389, 353, 222, 103, 52, 186, 275, 197, 462, 46, 134, 438, 185, 312, 188, 499, 445, 54, 37, 346, 237, 475, 321, 62, 323, 322, 276, 286, 438, 247, 105, 230, 208, 17, 200, 152, 70, 485, 224, 345, 158, 96, 299, 390, 369, 438, 116, 161, 373, 297, 436, 427, 413, 137, 280, 495, 182, 378, 203, 313, 51, 426, 429, 260, 360, 126, 450, 279, 416, 58, 277, 466, 24, 240, 477, 444, 234, 35, 452, 429, 260, 458, 131, 172, 456, 183, 272, 289, 464, 146, 481, 428, 246, 77, 113, 27, 429, 48, 259, 339, 348, 511, 130, 175, 173, 509, 505, 44, 417, 122, 112, 265, 408, 429, 48, 320, 61, 362, 248, 155, 469, 335, 474, 123, 404, 507, 376, 86, 395, 306, 429, 382, 160, 380, 100, 95, 74, 28, 301, 298, 76, 15, 324, 205, 45, 288, 174, 429, 382, 12, 228, 412, 157, 328, 266, 330, 139, 430, 406, 476, 148, 169, 170, 385, 13, 437, 351, 506, 344, 102, 226, 327, 451, 119, 235, 480, 8, 443, 111, 109, 1, 241, 439, 233, 418, 218, 308, 154, 47, 176, 478, 194, 82, 352, 94, 67, 89, 55, 241, 88, 361, 294, 252, 7, 87, 22, 245, 261, 392, 318, 500, 401, 159, 138, 489, 241, 88, 304, 332, 307, 199, 231, 282, 465, 397, 93, 11, 295, 149, 472, 202, 388, 209, 217, 23, 377, 460, 132, 316, 40, 258, 383, 502, 501, 85, 63, 4, 309, 287, 292, 217, 190, 3, 29, 236, 372, 60, 333, 407, 168, 242, 81, 165, 341, 447, 206, 255, 184, 305, 107, 53, 136, 264, 310, 5, 90, 473, 267, 325, 504, 243, 419, 97, 255, 338, 355, 150, 415, 483, 239, 497, 319, 285, 32, 142, 31, 317, 69, 187, 133, 255, 338, 482, 398, 104, 357, 91, 164, 370, 492, 72, 463, 498, 115, 254, 434, 19, 25, 25, 387, 212, 300, 84, 79, 274, 374, 455, 354, 65, 83, 124, 128, 166, 331, 25, 184, 311, 347, 510, 192, 471, 147, 249, 396, 43, 179, 162, 163, 143, 410, 120] + 32: [242, 137, 362, 269, 115, 312, 479, 393, 45, 321, 470, 420, 59, 138, 123, 444, 275, 83, 110, 303, 156, 71, 423, 217, 118, 2, 481, 347, 408, 253, 421, 29, 48, 208, 83, 252, 49, 61, 51, 244, 168, 136, 256, 22, 364, 257, 104, 232, 203, 90, 191, 83, 36, 397, 387, 133, 486, 367, 282, 144, 224, 469, 194, 441, 285, 230, 428, 436, 83, 412, 301, 62, 122, 149, 315, 401, 443, 209, 95, 148, 472, 247, 415, 334, 199, 356, 394, 241, 46, 502, 489, 287, 369, 243, 139, 184, 55, 298, 482, 265, 111, 416, 356, 28, 231, 56, 178, 325, 9, 487, 496, 237, 368, 74, 112, 360, 113, 314, 13, 356, 28, 324, 425, 239, 390, 142, 40, 89, 198, 225, 330, 166, 435, 281, 68, 254, 356, 108, 446, 37, 151, 495, 66, 236, 291, 483, 465, 477, 499, 340, 476, 218, 358, 207, 405, 293, 460, 353, 88, 498, 478, 125, 173, 245, 317, 251, 250, 357, 47, 337, 97, 19, 431, 6, 116, 70, 322, 259, 39, 7, 376, 146, 294, 233, 290, 304, 106, 97, 128, 52, 395, 339, 332, 58, 349, 147, 377, 246, 170, 25, 306, 189, 504, 424, 464, 205, 373, 234, 343, 18, 429, 331, 260, 161, 273, 309, 442, 432, 434, 91, 450, 464, 205, 50, 407, 127, 135, 100, 379, 65, 220, 157, 60, 430, 328, 474, 228, 27, 464, 63, 392, 57, 206, 175, 53, 96, 240, 210, 268, 155, 500, 160, 14, 475, 229, 464, 119, 453, 456, 437, 87, 153, 336, 295, 292, 102, 17, 255, 509, 370, 398, 467, 464, 19, 35, 72, 455, 64, 216, 484, 98, 101, 419, 463, 492, 195, 120, 457, 42, 129, 141, 311, 24, 192, 1, 211, 134, 92, 145, 510, 288, 150, 459, 10, 307, 319, 129, 141, 238, 490, 389, 200, 274, 38, 215, 196, 418, 12, 458, 105, 313, 413, 363, 129, 141, 117, 508, 222, 471, 180, 480, 73, 333, 422, 451, 164, 352, 473, 506, 31, 129, 187, 261, 391, 78, 384, 497, 277, 385, 221, 143, 289, 190, 33, 342, 361, 4, 129, 462, 202, 351, 468, 248, 182, 43, 227, 501, 167, 400, 85, 270, 197, 26, 172, 129, 462, 381, 80, 183, 411, 79, 406, 126, 258, 130, 417, 193, 348, 341, 433, 174, 129, 77, 249, 409, 20, 3, 396, 310, 461, 485, 366, 84, 5, 354, 223, 374, 124, 129, 77, 372, 264, 299, 54, 188, 449, 386, 278, 452, 181, 81, 276, 346, 82, 426, 410, 121, 23, 186, 403, 380, 76, 491, 329, 296, 335, 266, 109, 0, 75, 140, 103, 454, 121, 86, 371, 201, 345, 212, 440, 445, 67, 494, 132, 300, 284, 388, 163, 21, 466, 121, 169, 338, 326, 214, 383, 171, 177, 93, 488, 505, 359, 154, 316, 34, 267, 439, 44, 30, 286, 427, 16, 179, 99, 11, 320, 15, 219, 263, 402, 305, 511, 448, 439, 121, 94, 355, 323, 438, 507, 69, 213, 204, 272, 159, 279, 302, 327, 165, 235, 447, 44, 493, 503, 158, 262, 399, 382, 152, 318, 176, 162, 378, 414, 308, 404, 365, 44, 44, 32, 41, 185, 114, 8, 344, 271, 375, 283, 226, 350, 280, 107, 131, 297] + 33: [35, 419, 419, 460, 184, 46, 509, 147, 299, 277, 157, 438, 284, 101, 246, 89, 501, 345, 341, 77, 266, 71, 223, 327, 159, 222, 134, 480, 87, 49, 404, 436, 78, 287, 308, 341, 241, 461, 203, 0, 304, 135, 215, 312, 387, 305, 111, 141, 47, 1, 16, 39, 457, 23, 427, 370, 163, 485, 242, 140, 56, 196, 351, 373, 133, 465, 240, 255, 39, 342, 444, 199, 334, 234, 459, 298, 371, 260, 499, 389, 468, 120, 225, 97, 291, 39, 342, 100, 34, 473, 463, 330, 239, 403, 346, 25, 224, 454, 189, 210, 121, 117, 39, 394, 396, 325, 410, 139, 67, 272, 358, 452, 155, 363, 276, 286, 48, 270, 64, 95, 457, 233, 279, 381, 201, 295, 310, 21, 57, 162, 6, 152, 306, 127, 186, 319, 289, 471, 66, 333, 158, 495, 107, 477, 469, 128, 309, 208, 217, 268, 19, 146, 474, 297, 383, 32, 365, 261, 236, 17, 332, 204, 377, 73, 93, 271, 213, 359, 188, 198, 297, 383, 36, 176, 500, 331, 382, 88, 106, 275, 153, 229, 282, 171, 320, 219, 231, 297, 383, 33, 467, 265, 489, 27, 45, 179, 380, 344, 395, 150, 248, 104, 232, 424, 297, 190, 4, 488, 362, 423, 258, 490, 375, 369, 238, 259, 243, 400, 366, 5, 374, 297, 190, 72, 230, 251, 453, 508, 79, 478, 434, 26, 302, 425, 360, 510, 296, 65, 297, 449, 160, 451, 116, 263, 446, 129, 378, 102, 433, 80, 216, 103, 343, 54, 311, 297, 209, 323, 181, 511, 31, 388, 55, 445, 439, 197, 124, 2, 166, 430, 81, 207, 483, 202, 185, 18, 456, 421, 37, 175, 504, 420, 397, 349, 392, 58, 30, 264, 218, 483, 202, 372, 41, 269, 253, 74, 136, 191, 379, 187, 448, 192, 68, 262, 53, 167, 483, 164, 43, 385, 458, 479, 61, 350, 491, 226, 283, 502, 322, 429, 348, 200, 221, 352, 108, 464, 75, 98, 113, 90, 142, 494, 426, 470, 357, 125, 280, 416, 143, 418, 352, 401, 281, 450, 118, 9, 354, 313, 447, 252, 24, 398, 339, 172, 151, 205, 105, 352, 435, 178, 409, 60, 156, 92, 20, 347, 353, 38, 137, 13, 195, 144, 455, 399, 352, 435, 390, 94, 472, 249, 99, 180, 109, 211, 245, 324, 267, 115, 122, 293, 498, 352, 316, 340, 91, 496, 227, 82, 250, 247, 486, 119, 315, 132, 228, 59, 431, 364, 352, 476, 220, 52, 288, 165, 177, 328, 440, 69, 422, 303, 442, 194, 11, 169, 257, 352, 202, 149, 355, 335, 29, 475, 481, 244, 10, 237, 329, 376, 301, 505, 292, 492, 161, 28, 138, 506, 441, 432, 154, 148, 417, 112, 336, 131, 405, 493, 168, 85, 321, 318, 8, 337, 317, 63, 7, 487, 274, 256, 40, 182, 70, 314, 278, 437, 462, 411, 318, 44, 415, 51, 307, 123, 497, 212, 326, 367, 114, 3, 173, 86, 443, 126, 145, 413, 8, 368, 294, 96, 183, 285, 83, 84, 361, 22, 503, 62, 50, 214, 235, 170, 12, 12, 174, 393, 484, 273, 110, 402, 356, 384, 428, 414, 407, 386, 300, 507, 193, 12, 8, 412, 391, 42, 482, 408, 130, 206, 466, 290, 76, 406, 14, 15, 254, 338] + 34: [439, 446, 473, 230, 456, 209, 412, 422, 373, 434, 198, 450, 454, 405, 281, 334, 507, 439, 370, 245, 295, 390, 40, 91, 114, 381, 472, 348, 234, 431, 440, 219, 225, 196, 439, 370, 479, 137, 2, 179, 502, 306, 173, 73, 316, 71, 157, 392, 475, 471, 286, 439, 100, 42, 485, 301, 476, 299, 302, 280, 117, 223, 124, 486, 186, 263, 356, 289, 439, 148, 274, 494, 448, 509, 438, 231, 115, 275, 3, 482, 283, 458, 294, 216, 19, 439, 351, 32, 34, 339, 200, 388, 385, 156, 111, 432, 85, 48, 112, 484, 383, 155, 271, 446, 276, 428, 493, 503, 180, 144, 506, 164, 469, 203, 499, 28, 266, 60, 95, 67, 359, 326, 437, 6, 251, 404, 376, 246, 460, 7, 122, 342, 487, 18, 278, 38, 67, 397, 182, 401, 235, 442, 310, 185, 254, 142, 168, 420, 199, 498, 4, 374, 172, 67, 346, 260, 141, 193, 483, 150, 57, 181, 15, 146, 284, 212, 47, 314, 80, 258, 67, 395, 367, 436, 347, 133, 328, 262, 96, 398, 421, 247, 417, 52, 313, 268, 79, 67, 463, 372, 191, 441, 205, 407, 136, 187, 349, 337, 36, 177, 77, 97, 134, 255, 67, 358, 75, 457, 139, 211, 50, 147, 240, 453, 285, 220, 65, 44, 304, 192, 455, 67, 429, 264, 400, 250, 267, 43, 350, 69, 291, 277, 131, 296, 288, 270, 222, 336, 415, 303, 81, 126, 510, 508, 360, 78, 362, 120, 27, 467, 140, 243, 399, 259, 123, 170, 188, 489, 226, 322, 14, 324, 93, 242, 341, 74, 10, 379, 23, 29, 102, 451, 170, 59, 505, 201, 378, 171, 8, 107, 175, 5, 354, 462, 108, 338, 214, 20, 361, 170, 62, 244, 430, 224, 221, 160, 409, 425, 64, 94, 9, 66, 282, 418, 55, 317, 170, 318, 461, 279, 145, 386, 206, 384, 363, 447, 315, 132, 154, 25, 159, 161, 261, 170, 178, 53, 143, 51, 189, 92, 433, 269, 138, 125, 344, 30, 511, 411, 129, 497, 170, 303, 53, 333, 256, 297, 465, 87, 492, 340, 17, 106, 218, 215, 232, 252, 387, 31, 76, 321, 227, 39, 353, 292, 229, 239, 382, 371, 208, 325, 158, 377, 56, 449, 31, 76, 345, 241, 402, 149, 272, 24, 72, 89, 213, 364, 61, 54, 445, 210, 113, 31, 76, 33, 248, 443, 162, 311, 468, 474, 88, 480, 410, 426, 293, 330, 335, 233, 31, 477, 481, 127, 391, 238, 166, 491, 369, 116, 45, 389, 1, 327, 70, 424, 195, 31, 357, 396, 435, 128, 90, 21, 16, 237, 459, 151, 37, 308, 331, 365, 46, 368, 236, 163, 109, 217, 202, 380, 194, 82, 11, 444, 501, 135, 197, 13, 323, 419, 257, 236, 101, 63, 167, 312, 169, 466, 152, 49, 470, 414, 408, 174, 305, 12, 83, 86, 236, 101, 184, 183, 504, 309, 68, 176, 26, 298, 343, 265, 98, 427, 403, 103, 478, 236, 416, 488, 105, 58, 0, 495, 406, 84, 118, 110, 22, 500, 332, 307, 319, 165, 320, 163, 464, 393, 35, 249, 253, 121, 99, 41, 190, 119, 352, 104, 329, 228, 490, 394, 394, 496, 290, 130, 413, 300, 207, 273, 287, 452, 204, 366, 153, 375, 355, 423] + 35: [32, 233, 102, 397, 219, 470, 122, 440, 256, 288, 16, 77, 355, 240, 239, 63, 429, 131, 114, 319, 298, 197, 427, 195, 3, 184, 150, 6, 313, 212, 361, 147, 210, 436, 507, 251, 194, 260, 392, 104, 315, 139, 474, 62, 508, 389, 61, 268, 495, 17, 326, 507, 119, 481, 366, 360, 446, 402, 205, 273, 224, 345, 94, 369, 200, 8, 158, 177, 507, 393, 289, 143, 185, 45, 279, 385, 5, 118, 123, 416, 350, 160, 117, 336, 211, 507, 393, 456, 172, 136, 363, 323, 162, 328, 271, 128, 308, 342, 31, 384, 334, 304, 507, 132, 48, 455, 161, 127, 488, 11, 284, 84, 41, 232, 243, 222, 198, 182, 356, 507, 132, 382, 343, 367, 230, 21, 272, 42, 312, 509, 278, 79, 196, 407, 329, 354, 246, 46, 263, 486, 19, 307, 226, 109, 164, 335, 302, 40, 206, 499, 107, 318, 403, 246, 46, 156, 500, 253, 378, 373, 471, 306, 225, 165, 441, 81, 149, 262, 410, 56, 130, 249, 252, 461, 365, 332, 231, 121, 305, 448, 64, 505, 207, 202, 261, 89, 399, 130, 249, 38, 23, 368, 347, 178, 168, 412, 325, 215, 241, 76, 420, 280, 213, 473, 20, 314, 277, 141, 176, 388, 2, 398, 145, 153, 82, 134, 80, 482, 465, 27, 142, 432, 314, 220, 137, 0, 53, 295, 106, 296, 340, 120, 496, 242, 146, 364, 449, 244, 404, 316, 221, 497, 98, 169, 50, 163, 450, 181, 55, 190, 453, 464, 349, 291, 387, 404, 301, 39, 95, 26, 493, 321, 303, 281, 43, 34, 466, 264, 451, 126, 426, 346, 404, 14, 24, 29, 502, 75, 386, 276, 10, 92, 430, 236, 112, 438, 468, 247, 425, 404, 14, 424, 454, 400, 85, 192, 189, 417, 414, 199, 100, 297, 483, 238, 175, 28, 404, 14, 421, 86, 444, 377, 245, 52, 201, 209, 294, 174, 358, 69, 372, 267, 234, 254, 316, 331, 283, 124, 235, 159, 93, 58, 187, 193, 12, 337, 442, 258, 266, 157, 217, 274, 501, 35, 287, 49, 419, 379, 25, 248, 285, 396, 445, 431, 433, 484, 415, 217, 274, 203, 333, 186, 71, 434, 475, 216, 275, 183, 103, 383, 129, 469, 485, 105, 217, 90, 376, 60, 66, 218, 371, 317, 37, 51, 115, 439, 65, 265, 116, 144, 257, 217, 91, 391, 478, 344, 490, 458, 503, 390, 498, 33, 83, 179, 259, 300, 459, 72, 217, 73, 30, 362, 510, 492, 460, 99, 443, 47, 309, 480, 327, 15, 418, 282, 322, 217, 374, 463, 428, 57, 338, 101, 166, 435, 155, 381, 180, 477, 504, 462, 111, 348, 217, 374, 87, 401, 173, 22, 457, 320, 152, 353, 223, 54, 208, 148, 78, 409, 170, 217, 374, 67, 411, 311, 125, 375, 204, 228, 108, 395, 171, 467, 88, 74, 494, 59, 310, 18, 491, 489, 511, 339, 292, 506, 1, 406, 299, 151, 452, 351, 250, 479, 13, 310, 357, 324, 405, 255, 70, 359, 36, 341, 138, 330, 167, 437, 188, 472, 113, 237, 310, 229, 370, 154, 110, 476, 7, 44, 227, 408, 140, 286, 394, 447, 293, 4, 96, 352, 352, 9, 133, 97, 423, 290, 214, 191, 422, 68, 135, 270, 413, 269, 487, 380] + 36: [35, 269, 227, 93, 293, 182, 378, 330, 365, 50, 502, 511, 433, 132, 103, 70, 496, 35, 269, 65, 375, 398, 345, 12, 370, 305, 277, 418, 172, 351, 248, 69, 292, 9, 35, 429, 124, 224, 437, 130, 43, 475, 389, 482, 156, 189, 360, 184, 444, 75, 442, 35, 429, 343, 241, 57, 395, 94, 299, 33, 202, 16, 223, 456, 59, 451, 204, 383, 235, 426, 506, 251, 271, 118, 194, 264, 273, 476, 259, 47, 385, 331, 100, 83, 457, 235, 209, 329, 401, 355, 307, 279, 99, 207, 92, 247, 414, 177, 11, 104, 275, 53, 235, 209, 113, 192, 242, 317, 372, 491, 36, 403, 183, 344, 229, 111, 258, 268, 494, 235, 217, 7, 503, 427, 309, 440, 136, 38, 246, 261, 288, 448, 483, 162, 346, 198, 235, 359, 376, 272, 108, 373, 84, 301, 181, 163, 387, 102, 328, 220, 450, 406, 179, 161, 215, 42, 369, 14, 151, 5, 393, 341, 294, 342, 432, 164, 225, 424, 472, 221, 161, 199, 142, 298, 238, 249, 256, 384, 133, 121, 114, 454, 131, 260, 97, 340, 120, 161, 354, 337, 462, 2, 245, 435, 350, 419, 434, 453, 169, 127, 80, 95, 266, 253, 489, 487, 196, 28, 302, 112, 353, 314, 174, 46, 32, 420, 336, 222, 479, 295, 339, 489, 487, 252, 30, 110, 51, 21, 98, 240, 458, 461, 158, 52, 468, 190, 471, 71, 19, 455, 195, 0, 505, 129, 276, 428, 15, 141, 148, 208, 296, 243, 357, 312, 109, 19, 455, 167, 278, 135, 63, 125, 82, 366, 219, 499, 74, 17, 501, 412, 137, 399, 19, 315, 185, 404, 101, 26, 140, 443, 473, 382, 364, 234, 327, 464, 348, 213, 431, 19, 315, 270, 267, 117, 24, 115, 405, 58, 362, 441, 218, 165, 40, 13, 492, 470, 281, 481, 73, 173, 413, 87, 18, 465, 41, 321, 297, 72, 85, 4, 106, 171, 323, 281, 493, 392, 326, 116, 203, 107, 200, 214, 20, 371, 197, 408, 96, 474, 347, 262, 304, 379, 446, 122, 388, 313, 416, 232, 201, 54, 56, 430, 477, 425, 1, 438, 66, 304, 481, 284, 159, 390, 193, 397, 510, 495, 490, 147, 411, 27, 175, 285, 381, 282, 139, 452, 324, 257, 332, 460, 78, 459, 44, 143, 449, 486, 6, 157, 88, 123, 407, 139, 452, 186, 422, 290, 89, 160, 480, 394, 368, 447, 300, 34, 291, 322, 62, 423, 469, 25, 180, 334, 497, 155, 149, 325, 176, 498, 356, 90, 409, 205, 400, 391, 91, 3, 484, 380, 283, 37, 467, 23, 352, 31, 333, 228, 119, 170, 508, 67, 485, 81, 320, 287, 386, 226, 303, 48, 466, 79, 244, 274, 211, 8, 231, 77, 377, 105, 239, 320, 287, 439, 463, 49, 265, 286, 128, 367, 254, 509, 144, 187, 134, 507, 210, 363, 320, 237, 358, 188, 306, 55, 166, 316, 138, 335, 154, 64, 349, 233, 478, 153, 417, 320, 311, 29, 152, 206, 410, 310, 126, 421, 374, 402, 178, 255, 319, 338, 436, 22, 320, 311, 216, 60, 191, 45, 236, 415, 504, 146, 61, 230, 318, 500, 308, 445, 76, 320, 484, 280, 289, 68, 168, 263, 361, 10, 250, 396, 488, 212, 150, 39, 86, 145] + 37: [48, 5, 250, 379, 181, 105, 64, 66, 6, 158, 288, 162, 360, 37, 341, 274, 171, 183, 5, 69, 80, 427, 397, 262, 200, 361, 489, 57, 339, 384, 498, 204, 198, 176, 357, 188, 238, 152, 146, 337, 334, 138, 393, 405, 87, 255, 147, 454, 185, 179, 284, 357, 150, 7, 278, 172, 314, 130, 215, 123, 479, 61, 358, 273, 390, 480, 53, 120, 357, 150, 98, 141, 377, 211, 434, 27, 338, 214, 359, 328, 344, 482, 60, 19, 510, 357, 43, 203, 33, 142, 413, 259, 174, 401, 481, 470, 36, 438, 219, 456, 21, 3, 38, 342, 395, 258, 463, 494, 333, 95, 233, 335, 88, 455, 9, 228, 306, 350, 222, 38, 97, 0, 99, 265, 136, 370, 366, 407, 363, 257, 49, 220, 230, 205, 270, 34, 38, 4, 309, 104, 29, 507, 178, 326, 240, 429, 239, 116, 225, 25, 85, 469, 330, 38, 188, 290, 226, 280, 301, 202, 193, 476, 15, 437, 465, 467, 39, 420, 317, 75, 76, 125, 319, 157, 94, 14, 201, 264, 151, 74, 254, 286, 327, 318, 396, 347, 148, 275, 35, 418, 1, 137, 182, 299, 412, 79, 391, 281, 243, 485, 508, 303, 431, 267, 275, 184, 155, 499, 369, 118, 117, 260, 261, 433, 68, 367, 149, 186, 109, 436, 191, 275, 184, 371, 441, 247, 126, 242, 62, 163, 189, 45, 349, 8, 229, 443, 451, 17, 275, 23, 503, 511, 446, 406, 30, 86, 447, 381, 364, 442, 103, 41, 272, 161, 46, 275, 256, 170, 348, 388, 392, 47, 298, 316, 496, 114, 216, 212, 160, 10, 295, 112, 414, 292, 285, 153, 398, 453, 26, 504, 132, 235, 387, 59, 93, 67, 101, 28, 324, 414, 459, 435, 106, 177, 452, 65, 293, 439, 311, 31, 218, 488, 18, 383, 428, 102, 444, 320, 197, 313, 139, 493, 276, 394, 168, 144, 440, 415, 509, 353, 351, 404, 422, 444, 292, 323, 227, 96, 12, 329, 373, 380, 111, 217, 83, 464, 305, 484, 399, 209, 444, 292, 180, 192, 374, 51, 340, 100, 483, 279, 304, 91, 54, 40, 478, 129, 362, 444, 292, 133, 408, 375, 346, 365, 246, 506, 248, 486, 423, 325, 321, 107, 410, 474, 385, 140, 145, 430, 78, 386, 63, 199, 251, 2, 402, 196, 343, 491, 416, 154, 307, 385, 140, 110, 302, 50, 122, 372, 169, 210, 354, 55, 378, 487, 13, 310, 195, 90, 385, 213, 266, 16, 128, 501, 84, 411, 121, 471, 113, 425, 234, 445, 468, 44, 42, 385, 320, 223, 156, 271, 424, 244, 382, 352, 368, 92, 253, 500, 376, 20, 224, 477, 385, 320, 315, 236, 252, 448, 389, 22, 135, 460, 419, 119, 232, 143, 282, 475, 297, 165, 426, 502, 331, 115, 345, 296, 457, 52, 73, 312, 89, 450, 166, 207, 268, 58, 173, 490, 492, 308, 322, 24, 409, 190, 294, 134, 11, 72, 417, 356, 77, 432, 472, 497, 490, 277, 458, 159, 71, 194, 403, 466, 231, 355, 449, 32, 336, 473, 124, 108, 461, 461, 289, 505, 237, 495, 131, 462, 287, 164, 127, 263, 245, 56, 332, 81, 400, 461, 490, 82, 269, 283, 241, 175, 249, 300, 70, 291, 421, 167, 221, 187, 208, 206] + 38: [259, 417, 277, 56, 160, 461, 49, 131, 108, 8, 7, 233, 99, 493, 342, 36, 383, 259, 217, 468, 238, 97, 492, 458, 306, 209, 473, 57, 162, 3, 192, 290, 42, 327, 259, 337, 400, 340, 204, 510, 408, 484, 149, 166, 358, 39, 264, 478, 59, 47, 296, 259, 214, 297, 109, 51, 368, 507, 407, 300, 410, 414, 163, 176, 156, 28, 341, 257, 237, 52, 20, 194, 385, 106, 304, 251, 391, 187, 179, 321, 413, 405, 25, 196, 230, 237, 236, 294, 445, 396, 345, 62, 472, 273, 141, 240, 23, 249, 270, 463, 15, 46, 359, 356, 53, 346, 168, 325, 370, 244, 103, 193, 211, 488, 480, 276, 469, 420, 213, 359, 344, 281, 411, 496, 143, 511, 92, 223, 334, 113, 235, 13, 402, 275, 307, 315, 359, 4, 199, 203, 10, 68, 24, 303, 377, 285, 88, 63, 262, 355, 224, 105, 509, 234, 343, 354, 128, 299, 95, 129, 75, 248, 443, 429, 210, 65, 122, 40, 157, 0, 234, 73, 380, 371, 152, 329, 120, 118, 197, 433, 453, 464, 369, 508, 376, 78, 263, 234, 132, 121, 164, 291, 397, 449, 326, 372, 279, 338, 502, 70, 332, 436, 60, 48, 234, 356, 94, 241, 86, 147, 393, 424, 165, 353, 439, 451, 226, 107, 139, 375, 186, 31, 322, 347, 133, 501, 278, 333, 499, 423, 335, 174, 360, 404, 384, 22, 61, 135, 31, 261, 91, 430, 364, 388, 477, 485, 382, 301, 227, 246, 142, 289, 137, 71, 127, 31, 261, 394, 395, 328, 455, 350, 14, 185, 200, 130, 258, 26, 489, 102, 302, 218, 31, 261, 487, 363, 170, 55, 428, 357, 27, 243, 415, 441, 466, 229, 117, 154, 80, 311, 432, 173, 167, 254, 195, 136, 409, 267, 87, 41, 269, 317, 146, 309, 283, 159, 239, 280, 172, 418, 452, 67, 250, 16, 381, 434, 184, 38, 54, 111, 5, 398, 116, 239, 465, 260, 293, 228, 481, 331, 220, 401, 134, 305, 422, 426, 416, 158, 450, 201, 239, 476, 292, 352, 330, 112, 232, 314, 145, 474, 498, 125, 33, 180, 462, 298, 284, 239, 225, 115, 9, 178, 151, 505, 19, 202, 72, 365, 471, 318, 362, 17, 312, 34, 239, 225, 50, 437, 316, 483, 412, 387, 286, 138, 207, 29, 403, 79, 274, 503, 150, 205, 18, 171, 425, 66, 45, 161, 175, 444, 500, 90, 479, 313, 448, 183, 21, 336, 205, 253, 153, 497, 435, 288, 379, 268, 189, 282, 440, 374, 98, 447, 222, 323, 32, 205, 181, 361, 339, 2, 144, 100, 470, 96, 110, 169, 84, 324, 82, 221, 81, 265, 205, 181, 459, 460, 35, 219, 101, 349, 11, 140, 252, 442, 1, 123, 58, 272, 247, 205, 280, 212, 308, 366, 454, 456, 190, 256, 348, 271, 85, 77, 367, 467, 124, 392, 205, 280, 37, 319, 30, 419, 177, 74, 12, 114, 255, 215, 475, 504, 351, 406, 373, 205, 280, 482, 93, 182, 491, 148, 242, 399, 188, 287, 126, 431, 69, 421, 506, 64, 446, 208, 457, 191, 378, 320, 494, 295, 245, 386, 266, 155, 104, 89, 198, 310, 6, 446, 208, 216, 44, 438, 206, 495, 486, 119, 83, 76, 390, 490, 427, 231, 43, 389] + 39: [311, 325, 396, 496, 190, 126, 343, 109, 86, 133, 510, 52, 509, 449, 207, 355, 245, 311, 256, 259, 309, 487, 433, 254, 211, 240, 51, 148, 77, 479, 346, 53, 97, 194, 311, 193, 450, 258, 206, 105, 348, 414, 475, 444, 49, 421, 405, 25, 402, 357, 174, 432, 255, 117, 218, 340, 328, 337, 313, 87, 230, 83, 41, 43, 143, 379, 8, 120, 432, 231, 185, 341, 90, 171, 285, 365, 461, 497, 424, 38, 318, 249, 273, 495, 155, 432, 187, 319, 436, 314, 358, 199, 127, 480, 372, 224, 303, 426, 468, 153, 378, 493, 432, 404, 287, 136, 395, 262, 15, 382, 217, 268, 17, 98, 265, 219, 23, 192, 351, 347, 244, 18, 441, 147, 368, 505, 467, 226, 250, 195, 363, 335, 361, 284, 177, 115, 347, 47, 234, 322, 381, 215, 188, 107, 431, 462, 417, 398, 408, 270, 503, 140, 229, 347, 296, 342, 266, 387, 48, 440, 338, 42, 65, 208, 301, 68, 56, 489, 28, 321, 347, 296, 456, 152, 212, 0, 19, 366, 435, 71, 418, 34, 84, 323, 360, 330, 150, 442, 158, 233, 75, 216, 359, 306, 508, 88, 165, 112, 156, 241, 412, 388, 162, 374, 442, 158, 11, 394, 279, 81, 55, 80, 94, 209, 316, 214, 186, 1, 26, 238, 164, 442, 205, 305, 384, 427, 242, 364, 349, 29, 286, 3, 500, 488, 283, 184, 486, 275, 442, 205, 189, 10, 197, 141, 202, 78, 375, 434, 236, 144, 423, 58, 74, 400, 173, 263, 182, 326, 121, 228, 139, 411, 9, 294, 200, 6, 472, 135, 7, 61, 172, 295, 263, 182, 300, 27, 292, 367, 247, 425, 457, 507, 280, 227, 336, 124, 203, 16, 371, 465, 288, 44, 181, 399, 501, 223, 272, 298, 102, 45, 383, 281, 377, 149, 93, 167, 159, 169, 455, 451, 392, 113, 210, 160, 183, 119, 85, 511, 14, 22, 261, 220, 498, 464, 221, 111, 437, 476, 13, 406, 389, 96, 327, 317, 168, 469, 137, 334, 106, 239, 464, 169, 331, 122, 151, 37, 222, 243, 232, 413, 92, 353, 329, 332, 54, 438, 483, 293, 471, 428, 407, 345, 459, 409, 66, 401, 446, 276, 163, 504, 59, 320, 380, 142, 293, 471, 33, 339, 410, 35, 390, 146, 397, 21, 403, 430, 72, 191, 63, 458, 453, 293, 471, 494, 253, 70, 67, 36, 4, 307, 118, 297, 176, 415, 82, 20, 131, 445, 293, 221, 277, 271, 62, 46, 506, 477, 502, 213, 99, 460, 95, 116, 499, 356, 179, 293, 221, 422, 60, 282, 5, 129, 352, 204, 267, 481, 419, 24, 201, 350, 178, 64, 293, 221, 416, 108, 73, 101, 161, 290, 289, 485, 248, 235, 69, 420, 490, 484, 324, 50, 310, 76, 386, 362, 252, 125, 274, 439, 154, 138, 370, 304, 473, 251, 443, 369, 447, 310, 145, 264, 492, 246, 333, 110, 104, 448, 315, 134, 302, 166, 89, 344, 91, 447, 310, 470, 393, 175, 237, 491, 30, 31, 170, 198, 454, 12, 478, 391, 429, 257, 354, 128, 474, 180, 79, 40, 39, 385, 225, 103, 114, 312, 278, 466, 130, 132, 196, 57, 57, 299, 291, 269, 308, 100, 32, 2, 260, 463, 123, 452, 157, 482, 373, 376] + 40: [116, 99, 488, 417, 27, 26, 472, 251, 306, 355, 19, 455, 228, 8, 110, 216, 1, 129, 321, 54, 501, 397, 410, 268, 130, 332, 0, 180, 66, 380, 11, 225, 314, 327, 129, 391, 258, 158, 252, 399, 465, 426, 385, 36, 396, 113, 375, 84, 404, 390, 132, 129, 391, 71, 487, 382, 363, 53, 79, 273, 12, 208, 393, 262, 166, 497, 55, 87, 129, 300, 73, 181, 345, 17, 207, 297, 357, 392, 214, 65, 142, 5, 471, 353, 234, 423, 242, 469, 429, 43, 454, 509, 120, 154, 285, 42, 72, 344, 94, 149, 271, 47, 423, 329, 212, 301, 108, 126, 376, 109, 328, 510, 387, 476, 298, 16, 287, 41, 313, 423, 57, 46, 236, 175, 115, 220, 291, 186, 433, 307, 37, 447, 284, 315, 351, 184, 423, 321, 198, 493, 105, 29, 323, 283, 136, 2, 253, 389, 495, 494, 21, 86, 237, 348, 318, 489, 14, 319, 507, 63, 428, 317, 402, 162, 374, 139, 77, 146, 340, 124, 348, 395, 337, 407, 173, 95, 492, 343, 478, 440, 235, 39, 24, 267, 356, 229, 477, 502, 309, 506, 503, 213, 341, 209, 358, 474, 473, 434, 336, 82, 238, 386, 226, 177, 280, 34, 333, 335, 219, 367, 316, 247, 299, 446, 141, 441, 187, 171, 438, 459, 153, 280, 34, 20, 505, 123, 322, 334, 330, 78, 437, 290, 265, 45, 365, 468, 191, 421, 280, 170, 185, 490, 168, 254, 450, 486, 156, 408, 511, 89, 444, 88, 277, 431, 49, 280, 464, 190, 111, 485, 122, 270, 414, 51, 193, 221, 150, 230, 96, 102, 248, 475, 280, 464, 324, 140, 90, 372, 201, 76, 456, 240, 304, 479, 269, 275, 9, 169, 56, 280, 464, 7, 286, 227, 50, 359, 133, 272, 15, 106, 342, 138, 279, 463, 160, 81, 280, 309, 362, 310, 422, 80, 282, 167, 112, 32, 61, 218, 369, 206, 411, 118, 70, 409, 311, 276, 68, 189, 419, 147, 131, 491, 484, 244, 127, 197, 350, 152, 210, 430, 409, 311, 370, 85, 163, 302, 249, 432, 288, 196, 326, 261, 202, 499, 427, 243, 60, 409, 305, 266, 289, 44, 308, 10, 4, 18, 347, 470, 256, 164, 174, 121, 31, 420, 409, 67, 368, 241, 176, 38, 178, 412, 182, 346, 103, 442, 293, 294, 92, 483, 295, 409, 6, 480, 292, 445, 296, 394, 107, 278, 415, 398, 3, 388, 400, 117, 360, 28, 409, 6, 190, 436, 183, 74, 366, 338, 134, 40, 384, 119, 98, 281, 453, 161, 91, 409, 144, 482, 211, 451, 379, 500, 461, 257, 239, 377, 325, 504, 467, 75, 135, 361, 409, 435, 331, 378, 22, 231, 217, 466, 100, 145, 245, 64, 458, 264, 48, 188, 303, 383, 311, 401, 215, 128, 416, 223, 93, 83, 114, 224, 155, 104, 496, 352, 425, 449, 349, 311, 263, 59, 192, 250, 354, 58, 204, 259, 194, 151, 172, 97, 373, 439, 424, 62, 33, 405, 143, 364, 13, 148, 452, 460, 418, 381, 413, 371, 205, 320, 481, 23, 159, 443, 199, 52, 232, 203, 35, 406, 508, 137, 195, 448, 25, 69, 101, 462, 312, 246, 443, 260, 255, 157, 30, 179, 274, 403, 200, 457, 233, 339, 222, 498, 125, 165] + 41: [500, 355, 32, 237, 27, 106, 52, 190, 143, 119, 61, 51, 131, 227, 155, 9, 8, 500, 263, 43, 109, 35, 497, 159, 205, 133, 231, 447, 100, 277, 439, 293, 326, 450, 267, 115, 63, 433, 58, 269, 127, 360, 317, 247, 334, 259, 309, 451, 139, 213, 369, 267, 478, 484, 270, 220, 491, 441, 64, 443, 144, 396, 423, 165, 320, 444, 148, 73, 240, 185, 177, 41, 353, 381, 429, 118, 425, 338, 297, 456, 363, 376, 475, 295, 175, 240, 504, 487, 380, 243, 95, 493, 26, 75, 256, 415, 378, 21, 258, 219, 477, 454, 240, 77, 495, 285, 364, 66, 379, 385, 294, 18, 430, 298, 367, 302, 150, 134, 280, 183, 419, 13, 296, 274, 368, 323, 174, 17, 288, 474, 462, 226, 86, 132, 1, 194, 183, 141, 198, 171, 321, 465, 351, 36, 31, 81, 510, 191, 19, 266, 463, 303, 260, 183, 141, 189, 341, 24, 68, 233, 122, 53, 2, 496, 412, 152, 151, 301, 281, 246, 183, 354, 212, 28, 130, 344, 157, 249, 99, 20, 342, 179, 196, 125, 507, 184, 116, 183, 354, 312, 161, 348, 489, 69, 273, 166, 346, 225, 505, 316, 373, 250, 284, 286, 183, 182, 340, 33, 188, 424, 113, 458, 215, 350, 305, 173, 404, 248, 464, 449, 476, 183, 291, 57, 324, 345, 501, 234, 328, 335, 254, 275, 371, 105, 420, 135, 314, 325, 459, 265, 426, 211, 145, 498, 123, 427, 142, 192, 339, 172, 481, 137, 401, 343, 403, 459, 332, 452, 486, 203, 402, 154, 29, 482, 313, 98, 5, 136, 129, 206, 170, 257, 459, 466, 436, 16, 181, 272, 407, 167, 186, 245, 468, 90, 65, 472, 431, 453, 224, 459, 252, 4, 164, 377, 103, 80, 485, 128, 395, 91, 287, 414, 208, 400, 333, 55, 459, 12, 178, 120, 195, 87, 387, 432, 506, 311, 71, 327, 322, 306, 393, 146, 59, 459, 10, 337, 370, 197, 508, 276, 241, 76, 416, 308, 398, 153, 434, 121, 372, 362, 40, 101, 22, 375, 107, 268, 469, 39, 330, 359, 193, 307, 238, 264, 79, 180, 94, 40, 271, 384, 112, 253, 216, 392, 470, 292, 499, 318, 455, 201, 230, 331, 255, 347, 40, 271, 217, 315, 0, 261, 187, 357, 440, 389, 138, 7, 494, 83, 428, 422, 408, 40, 102, 480, 300, 413, 147, 46, 473, 140, 89, 34, 435, 492, 349, 503, 14, 399, 40, 102, 176, 445, 356, 104, 84, 50, 358, 210, 37, 54, 283, 448, 47, 30, 199, 40, 366, 60, 460, 383, 111, 242, 88, 38, 502, 442, 223, 483, 45, 72, 417, 48, 251, 279, 82, 222, 390, 209, 70, 117, 409, 207, 391, 394, 124, 262, 405, 299, 44, 200, 200, 11, 214, 488, 509, 23, 410, 163, 471, 461, 169, 97, 6, 25, 244, 388, 200, 168, 336, 386, 67, 218, 239, 457, 78, 511, 397, 229, 158, 310, 92, 110, 56, 200, 168, 108, 156, 232, 438, 374, 85, 74, 126, 202, 467, 421, 352, 3, 437, 93, 200, 168, 411, 149, 329, 162, 490, 289, 204, 235, 228, 221, 479, 160, 42, 382, 114, 200, 168, 446, 290, 62, 282, 406, 304, 15, 361, 96, 236, 319, 365, 49, 278, 418] + 42: [311, 348, 487, 302, 114, 503, 229, 482, 317, 325, 155, 222, 146, 44, 152, 498, 58, 311, 220, 200, 433, 360, 196, 459, 34, 265, 137, 190, 5, 228, 6, 261, 268, 366, 311, 141, 289, 233, 471, 284, 38, 160, 76, 135, 303, 481, 80, 296, 42, 164, 109, 41, 291, 85, 398, 279, 139, 412, 217, 110, 316, 27, 323, 426, 307, 341, 407, 71, 244, 252, 14, 39, 181, 251, 129, 429, 387, 151, 394, 40, 77, 285, 161, 132, 501, 244, 18, 136, 430, 418, 53, 3, 483, 416, 322, 138, 255, 349, 140, 170, 49, 328, 244, 291, 141, 193, 298, 9, 145, 457, 400, 283, 156, 211, 450, 371, 67, 159, 249, 365, 82, 128, 314, 127, 117, 321, 331, 78, 126, 484, 157, 475, 69, 83, 185, 227, 365, 474, 242, 191, 319, 344, 496, 214, 183, 386, 60, 104, 395, 179, 342, 306, 465, 286, 263, 368, 148, 201, 187, 17, 124, 345, 272, 370, 363, 65, 339, 454, 404, 231, 286, 144, 200, 215, 479, 150, 84, 74, 113, 364, 0, 203, 491, 432, 205, 466, 326, 476, 361, 495, 329, 413, 448, 119, 226, 108, 22, 385, 204, 389, 235, 277, 290, 253, 476, 169, 375, 241, 243, 88, 424, 472, 436, 490, 51, 260, 112, 98, 107, 455, 115, 476, 31, 173, 425, 149, 273, 130, 508, 442, 318, 29, 397, 101, 36, 43, 142, 287, 476, 223, 97, 372, 294, 258, 295, 274, 359, 440, 405, 167, 467, 62, 444, 232, 453, 476, 223, 237, 133, 434, 320, 254, 176, 362, 143, 480, 464, 209, 399, 100, 494, 462, 447, 168, 470, 392, 275, 336, 422, 439, 406, 96, 324, 87, 270, 333, 354, 30, 411, 447, 168, 48, 23, 337, 438, 511, 461, 380, 431, 28, 46, 239, 47, 458, 163, 435, 447, 168, 21, 158, 194, 409, 225, 75, 216, 120, 52, 147, 419, 171, 460, 234, 24, 447, 20, 282, 379, 334, 213, 73, 154, 177, 355, 367, 347, 393, 266, 79, 99, 280, 310, 299, 489, 396, 13, 415, 297, 182, 8, 356, 374, 125, 378, 184, 1, 502, 428, 310, 330, 377, 178, 188, 304, 94, 497, 103, 54, 118, 259, 469, 10, 50, 357, 230, 310, 207, 301, 61, 262, 246, 248, 276, 16, 70, 202, 402, 134, 162, 293, 66, 19, 310, 445, 408, 11, 7, 384, 506, 376, 89, 91, 174, 358, 32, 111, 417, 383, 219, 310, 388, 95, 510, 338, 166, 382, 499, 102, 238, 210, 493, 473, 427, 199, 486, 189, 310, 313, 437, 456, 414, 172, 131, 343, 271, 509, 332, 56, 33, 292, 224, 452, 55, 353, 299, 308, 221, 105, 175, 463, 267, 26, 443, 423, 247, 300, 208, 500, 335, 410, 477, 309, 468, 352, 390, 381, 153, 346, 197, 446, 257, 123, 15, 478, 451, 121, 212, 477, 309, 35, 68, 340, 81, 269, 186, 485, 63, 72, 192, 288, 4, 45, 122, 25, 477, 299, 312, 206, 315, 401, 505, 64, 281, 305, 350, 420, 421, 59, 198, 391, 492, 373, 373, 57, 504, 236, 449, 441, 2, 195, 165, 240, 369, 180, 488, 278, 218, 245, 373, 309, 264, 92, 86, 116, 12, 403, 351, 93, 106, 256, 327, 250, 90, 37, 507] + 43: [267, 244, 292, 109, 511, 155, 23, 102, 172, 56, 471, 343, 173, 384, 239, 97, 368, 267, 302, 76, 317, 499, 199, 25, 360, 377, 204, 69, 310, 65, 237, 91, 408, 190, 214, 195, 436, 311, 280, 363, 32, 209, 162, 268, 421, 427, 341, 424, 502, 229, 281, 214, 464, 455, 108, 328, 503, 216, 261, 331, 500, 319, 224, 463, 391, 37, 458, 17, 214, 380, 475, 14, 26, 371, 386, 20, 461, 385, 149, 57, 227, 74, 291, 441, 137, 214, 380, 469, 4, 286, 175, 425, 501, 79, 131, 30, 24, 219, 413, 215, 314, 217, 13, 231, 285, 40, 112, 116, 376, 334, 246, 99, 46, 297, 468, 96, 308, 299, 394, 13, 301, 6, 351, 240, 159, 262, 257, 103, 135, 411, 34, 287, 174, 100, 372, 504, 13, 301, 324, 505, 348, 73, 94, 275, 315, 472, 15, 389, 282, 134, 232, 437, 1, 13, 401, 497, 284, 58, 388, 156, 187, 22, 198, 207, 167, 387, 248, 453, 313, 365, 13, 477, 83, 507, 406, 21, 130, 349, 294, 123, 201, 84, 206, 255, 490, 306, 60, 395, 296, 182, 484, 235, 316, 269, 329, 192, 184, 510, 322, 183, 438, 119, 151, 390, 496, 194, 333, 160, 111, 85, 70, 260, 373, 48, 295, 276, 18, 104, 300, 223, 220, 496, 296, 447, 493, 28, 233, 105, 78, 82, 423, 145, 153, 266, 476, 379, 393, 191, 253, 194, 188, 398, 213, 367, 81, 293, 359, 66, 107, 483, 170, 325, 485, 449, 208, 491, 72, 141, 470, 90, 430, 352, 392, 428, 298, 3, 7, 336, 47, 31, 457, 344, 491, 361, 312, 143, 307, 495, 249, 506, 147, 203, 466, 407, 494, 303, 35, 456, 353, 434, 446, 256, 0, 50, 340, 480, 481, 128, 369, 440, 113, 115, 5, 163, 2, 433, 434, 446, 19, 197, 358, 409, 38, 337, 125, 416, 221, 132, 357, 442, 158, 335, 422, 434, 72, 152, 420, 177, 117, 110, 378, 61, 222, 279, 410, 139, 321, 419, 417, 263, 434, 72, 52, 445, 309, 404, 366, 234, 414, 450, 64, 193, 180, 212, 45, 274, 403, 482, 355, 157, 202, 168, 8, 444, 402, 443, 498, 492, 75, 142, 467, 171, 397, 129, 43, 452, 488, 460, 33, 118, 375, 63, 338, 205, 288, 254, 176, 140, 89, 230, 29, 43, 452, 241, 54, 121, 136, 95, 144, 265, 179, 41, 80, 283, 127, 320, 62, 277, 43, 452, 374, 342, 304, 258, 122, 49, 509, 429, 146, 250, 478, 426, 439, 364, 77, 43, 185, 278, 68, 166, 489, 67, 435, 383, 400, 251, 448, 323, 454, 412, 12, 318, 43, 185, 418, 259, 126, 273, 396, 236, 42, 290, 27, 271, 289, 415, 252, 87, 161, 138, 242, 181, 474, 189, 243, 133, 479, 218, 98, 164, 362, 169, 226, 487, 305, 210, 138, 242, 39, 9, 327, 106, 399, 431, 196, 88, 51, 345, 473, 11, 356, 339, 370, 486, 242, 59, 465, 228, 186, 86, 92, 347, 451, 114, 332, 120, 432, 10, 405, 330, 459, 264, 71, 148, 211, 326, 354, 93, 508, 53, 154, 238, 165, 16, 346, 150, 200, 264, 264, 225, 382, 124, 101, 270, 44, 36, 245, 272, 462, 350, 55, 381, 247, 178] + 44: [107, 120, 138, 414, 73, 335, 305, 141, 86, 427, 215, 386, 365, 391, 343, 127, 111, 107, 280, 75, 460, 79, 57, 193, 440, 178, 424, 106, 45, 483, 194, 357, 119, 70, 435, 120, 490, 225, 378, 47, 438, 208, 93, 412, 185, 503, 7, 498, 204, 2, 19, 197, 196, 310, 81, 384, 82, 390, 387, 25, 43, 50, 69, 207, 92, 346, 372, 433, 237, 99, 130, 174, 450, 234, 360, 284, 318, 146, 169, 98, 44, 160, 291, 244, 330, 237, 231, 280, 479, 373, 126, 332, 377, 103, 87, 112, 145, 481, 494, 144, 356, 71, 237, 231, 485, 153, 368, 331, 271, 155, 314, 382, 198, 345, 449, 293, 312, 54, 9, 129, 401, 461, 316, 482, 426, 455, 507, 266, 28, 473, 348, 317, 469, 420, 275, 166, 129, 401, 509, 396, 55, 432, 72, 221, 376, 218, 173, 476, 268, 402, 350, 211, 95, 129, 495, 159, 400, 349, 487, 88, 374, 419, 233, 65, 364, 398, 13, 470, 281, 285, 129, 425, 31, 434, 416, 200, 468, 313, 413, 210, 17, 429, 176, 399, 167, 337, 109, 129, 135, 91, 444, 311, 171, 163, 161, 21, 219, 290, 37, 241, 227, 203, 220, 184, 129, 61, 10, 324, 32, 338, 407, 319, 60, 445, 415, 74, 410, 430, 11, 110, 250, 129, 456, 188, 308, 6, 254, 0, 508, 334, 256, 273, 297, 222, 510, 136, 411, 261, 467, 125, 154, 459, 303, 277, 452, 52, 279, 175, 321, 251, 342, 478, 340, 121, 397, 467, 191, 453, 477, 493, 240, 255, 242, 100, 369, 172, 243, 36, 422, 366, 48, 42, 467, 191, 299, 4, 344, 263, 246, 292, 458, 228, 192, 359, 486, 336, 236, 289, 351, 467, 191, 286, 5, 68, 137, 205, 463, 131, 67, 162, 23, 77, 383, 229, 96, 288, 467, 401, 363, 101, 341, 232, 3, 245, 76, 148, 276, 421, 260, 466, 270, 354, 436, 358, 462, 269, 253, 113, 496, 296, 56, 325, 302, 475, 201, 1, 239, 51, 39, 379, 358, 29, 327, 64, 465, 40, 388, 102, 451, 90, 471, 393, 262, 124, 394, 385, 497, 183, 133, 16, 189, 353, 59, 326, 492, 267, 328, 371, 283, 505, 84, 164, 147, 33, 183, 133, 287, 190, 352, 278, 182, 441, 35, 149, 298, 454, 257, 235, 474, 212, 140, 295, 62, 116, 504, 375, 83, 500, 323, 395, 165, 300, 14, 223, 405, 156, 381, 38, 295, 418, 105, 480, 66, 389, 322, 117, 24, 329, 431, 408, 511, 423, 214, 58, 264, 295, 132, 53, 355, 238, 259, 202, 151, 499, 320, 18, 442, 20, 347, 230, 63, 428, 295, 132, 26, 139, 309, 502, 27, 97, 370, 272, 403, 333, 108, 104, 489, 306, 339, 295, 472, 168, 282, 315, 488, 115, 80, 94, 30, 142, 484, 180, 265, 443, 437, 122, 295, 118, 216, 404, 15, 362, 114, 186, 274, 304, 181, 446, 195, 380, 439, 307, 501, 143, 62, 85, 8, 447, 247, 134, 392, 248, 177, 506, 49, 199, 179, 128, 187, 217, 301, 213, 448, 41, 78, 123, 491, 367, 22, 464, 226, 224, 34, 150, 206, 457, 89, 301, 213, 417, 249, 170, 209, 361, 12, 409, 157, 252, 158, 406, 152, 258, 294, 46] + 45: [252, 63, 365, 394, 78, 108, 301, 502, 60, 395, 105, 466, 118, 96, 490, 182, 89, 252, 278, 58, 423, 271, 282, 201, 469, 415, 465, 458, 506, 511, 358, 273, 323, 479, 252, 278, 491, 66, 19, 280, 30, 438, 313, 229, 167, 159, 341, 501, 456, 180, 347, 252, 217, 235, 437, 134, 493, 49, 64, 127, 392, 296, 26, 268, 257, 46, 226, 168, 252, 205, 325, 148, 443, 10, 141, 468, 223, 305, 82, 216, 489, 400, 509, 68, 242, 157, 202, 440, 45, 340, 246, 372, 475, 72, 261, 179, 403, 109, 287, 300, 183, 232, 34, 147, 452, 378, 145, 212, 379, 389, 267, 444, 228, 4, 314, 419, 161, 177, 504, 34, 316, 482, 397, 327, 402, 483, 393, 194, 256, 97, 373, 388, 151, 322, 35, 510, 34, 202, 336, 484, 100, 138, 76, 47, 454, 284, 119, 318, 497, 136, 163, 253, 381, 51, 99, 40, 355, 173, 346, 505, 239, 16, 430, 464, 85, 249, 289, 28, 150, 3, 51, 99, 131, 156, 432, 67, 371, 426, 262, 169, 188, 335, 399, 36, 69, 417, 285, 51, 431, 455, 65, 324, 414, 416, 329, 184, 181, 54, 191, 50, 176, 175, 165, 153, 51, 274, 220, 190, 383, 345, 222, 370, 328, 92, 236, 52, 94, 297, 332, 435, 162, 241, 421, 144, 83, 406, 422, 368, 362, 445, 110, 174, 304, 187, 104, 447, 77, 91, 241, 410, 279, 20, 276, 116, 200, 43, 93, 307, 420, 137, 186, 348, 269, 170, 503, 115, 140, 386, 264, 467, 302, 13, 472, 448, 254, 21, 427, 123, 398, 244, 164, 53, 115, 421, 25, 158, 331, 344, 258, 361, 492, 500, 84, 312, 221, 377, 103, 155, 23, 18, 140, 185, 451, 22, 413, 270, 101, 326, 309, 128, 44, 62, 260, 112, 204, 434, 230, 154, 25, 210, 133, 24, 412, 75, 9, 359, 12, 106, 243, 171, 298, 79, 251, 486, 154, 185, 446, 15, 376, 203, 224, 457, 353, 387, 375, 291, 360, 87, 146, 354, 27, 130, 303, 407, 111, 102, 196, 31, 485, 477, 233, 33, 418, 286, 330, 283, 129, 172, 80, 366, 6, 166, 227, 463, 310, 382, 333, 299, 321, 143, 29, 114, 234, 48, 172, 487, 197, 126, 449, 384, 152, 396, 86, 409, 494, 356, 364, 453, 308, 275, 142, 172, 487, 197, 121, 32, 343, 390, 259, 207, 474, 433, 405, 95, 219, 499, 401, 459, 88, 352, 374, 113, 442, 404, 311, 55, 17, 208, 338, 61, 288, 507, 488, 245, 380, 88, 352, 160, 281, 357, 248, 240, 124, 408, 206, 107, 337, 294, 292, 39, 349, 11, 88, 428, 73, 42, 263, 192, 473, 218, 211, 59, 57, 247, 429, 350, 495, 369, 480, 498, 272, 8, 470, 478, 238, 38, 189, 293, 70, 120, 290, 471, 2, 81, 411, 41, 498, 272, 439, 496, 135, 462, 215, 367, 237, 193, 436, 385, 71, 225, 0, 1, 178, 498, 272, 73, 37, 122, 363, 508, 320, 213, 277, 295, 90, 339, 265, 198, 425, 441, 450, 317, 56, 351, 199, 391, 132, 7, 476, 98, 149, 306, 319, 334, 250, 195, 214, 424, 317, 14, 481, 125, 315, 266, 461, 5, 139, 231, 342, 255, 117, 460, 209, 74] + 46: [212, 372, 416, 373, 121, 442, 466, 157, 13, 120, 218, 12, 313, 447, 289, 333, 305, 212, 372, 193, 336, 277, 137, 318, 71, 300, 463, 236, 365, 398, 500, 155, 419, 311, 167, 179, 91, 458, 440, 455, 170, 127, 335, 109, 44, 139, 217, 495, 133, 186, 371, 136, 324, 23, 473, 254, 343, 457, 216, 50, 163, 477, 422, 166, 360, 448, 72, 396, 259, 129, 207, 189, 106, 382, 31, 290, 196, 185, 169, 63, 287, 8, 266, 15, 29, 259, 474, 348, 357, 381, 228, 299, 509, 478, 410, 462, 329, 76, 288, 117, 445, 483, 259, 238, 215, 293, 247, 405, 57, 62, 42, 229, 387, 471, 384, 174, 108, 225, 222, 259, 302, 113, 363, 344, 310, 377, 506, 7, 188, 436, 414, 271, 65, 143, 224, 392, 259, 209, 113, 19, 508, 390, 101, 484, 434, 45, 507, 182, 96, 41, 47, 192, 18, 259, 90, 23, 95, 475, 159, 450, 491, 429, 83, 262, 119, 74, 53, 411, 402, 177, 259, 90, 438, 178, 11, 84, 430, 194, 323, 383, 370, 78, 319, 296, 248, 282, 461, 486, 111, 375, 431, 393, 30, 92, 25, 366, 444, 199, 124, 227, 337, 291, 226, 2, 486, 388, 251, 492, 172, 52, 240, 97, 3, 272, 468, 490, 269, 175, 395, 330, 286, 486, 499, 118, 435, 214, 191, 126, 243, 295, 32, 142, 61, 505, 249, 308, 441, 351, 274, 111, 77, 104, 6, 279, 75, 380, 332, 301, 320, 281, 153, 270, 9, 432, 338, 122, 55, 125, 204, 260, 80, 496, 394, 68, 211, 453, 99, 309, 378, 221, 404, 497, 400, 498, 231, 205, 208, 16, 439, 230, 34, 255, 43, 241, 28, 105, 1, 316, 197, 400, 406, 314, 403, 356, 268, 504, 401, 263, 379, 352, 294, 38, 257, 389, 149, 187, 400, 128, 409, 278, 82, 421, 138, 280, 86, 27, 391, 261, 58, 210, 85, 339, 131, 400, 128, 424, 183, 501, 220, 168, 331, 355, 304, 244, 464, 48, 232, 325, 481, 73, 459, 376, 297, 428, 246, 39, 33, 37, 67, 145, 364, 479, 49, 312, 446, 346, 423, 459, 376, 361, 386, 449, 413, 341, 114, 470, 326, 349, 24, 321, 152, 213, 407, 397, 459, 334, 237, 265, 223, 165, 275, 0, 469, 190, 385, 327, 88, 40, 103, 158, 315, 459, 498, 141, 252, 503, 342, 20, 306, 443, 115, 21, 22, 374, 292, 476, 94, 110, 359, 264, 237, 488, 5, 258, 147, 56, 102, 510, 160, 150, 123, 176, 460, 173, 201, 359, 264, 70, 465, 452, 54, 234, 256, 184, 427, 14, 369, 164, 307, 87, 46, 89, 359, 264, 297, 100, 66, 425, 317, 51, 200, 511, 328, 412, 322, 418, 493, 235, 10, 181, 494, 347, 161, 135, 276, 350, 354, 454, 502, 64, 284, 242, 358, 298, 144, 219, 181, 482, 26, 112, 154, 353, 81, 203, 273, 233, 171, 415, 146, 36, 340, 93, 140, 368, 134, 409, 17, 151, 69, 162, 198, 456, 480, 206, 107, 239, 130, 60, 202, 399, 283, 253, 433, 345, 35, 487, 132, 489, 148, 116, 437, 98, 245, 180, 156, 195, 267, 79, 253, 426, 4, 59, 451, 485, 367, 472, 250, 408, 362, 467, 285, 417, 303, 420] + 47: [208, 362, 134, 456, 142, 121, 14, 415, 329, 246, 157, 238, 59, 442, 245, 196, 109, 285, 362, 101, 413, 481, 505, 455, 235, 237, 269, 236, 291, 280, 18, 399, 92, 139, 460, 243, 436, 225, 228, 141, 75, 364, 479, 389, 26, 215, 118, 372, 339, 490, 424, 319, 181, 312, 152, 278, 446, 403, 306, 184, 104, 287, 32, 250, 170, 187, 432, 311, 319, 243, 97, 303, 265, 207, 136, 394, 218, 476, 210, 144, 248, 382, 379, 268, 39, 86, 462, 133, 234, 67, 230, 328, 414, 359, 448, 124, 240, 367, 244, 493, 189, 410, 317, 47, 213, 454, 195, 214, 503, 66, 259, 461, 113, 281, 29, 365, 350, 340, 232, 317, 405, 220, 417, 105, 386, 52, 439, 23, 122, 331, 360, 404, 70, 182, 316, 166, 317, 508, 242, 487, 128, 224, 203, 239, 24, 102, 335, 227, 284, 140, 440, 449, 251, 286, 325, 249, 288, 106, 368, 20, 409, 419, 270, 390, 408, 310, 430, 98, 375, 323, 286, 325, 282, 425, 353, 445, 241, 126, 477, 192, 497, 168, 53, 131, 63, 177, 55, 286, 483, 159, 96, 198, 510, 35, 450, 45, 51, 295, 321, 164, 451, 72, 193, 149, 298, 74, 191, 9, 162, 155, 233, 352, 38, 465, 231, 93, 296, 412, 117, 221, 116, 313, 74, 341, 112, 315, 509, 110, 90, 61, 223, 31, 130, 57, 266, 484, 338, 194, 206, 468, 488, 172, 222, 397, 17, 395, 40, 358, 132, 179, 276, 373, 400, 343, 205, 206, 74, 411, 257, 457, 160, 470, 374, 344, 33, 300, 25, 418, 87, 423, 416, 431, 322, 363, 378, 324, 71, 85, 263, 22, 302, 388, 305, 34, 27, 123, 444, 380, 11, 322, 363, 378, 308, 19, 76, 348, 256, 345, 333, 387, 502, 114, 355, 12, 10, 145, 322, 363, 307, 464, 299, 489, 500, 506, 491, 77, 58, 351, 459, 261, 262, 60, 495, 180, 467, 411, 346, 83, 82, 3, 94, 318, 421, 197, 54, 347, 393, 64, 151, 406, 73, 383, 202, 356, 209, 6, 498, 174, 185, 167, 354, 247, 349, 501, 178, 2, 0, 73, 200, 99, 371, 482, 494, 277, 283, 48, 376, 68, 437, 78, 301, 309, 169, 15, 73, 229, 42, 474, 91, 384, 161, 36, 173, 337, 217, 50, 183, 290, 30, 274, 297, 73, 229, 42, 314, 212, 186, 204, 330, 398, 219, 443, 80, 16, 473, 137, 466, 95, 73, 467, 254, 471, 402, 56, 188, 293, 492, 279, 469, 407, 147, 8, 304, 163, 190, 447, 125, 385, 127, 428, 275, 392, 475, 41, 453, 366, 253, 153, 336, 272, 107, 49, 447, 383, 21, 120, 273, 216, 480, 7, 381, 485, 369, 435, 138, 342, 441, 433, 252, 88, 258, 146, 46, 391, 264, 361, 472, 226, 504, 452, 271, 28, 211, 100, 156, 81, 88, 125, 427, 255, 326, 332, 135, 129, 176, 158, 79, 89, 65, 458, 478, 334, 292, 88, 125, 201, 43, 486, 199, 396, 13, 84, 69, 463, 496, 154, 289, 143, 115, 434, 429, 108, 511, 119, 401, 103, 499, 1, 150, 171, 44, 4, 165, 357, 420, 426, 260, 429, 108, 294, 370, 327, 320, 422, 62, 148, 37, 111, 438, 507, 377, 267, 175, 5] + 48: [396, 405, 312, 477, 95, 201, 235, 502, 424, 132, 59, 395, 271, 34, 381, 483, 351, 396, 405, 137, 412, 499, 3, 264, 334, 299, 310, 471, 504, 489, 67, 230, 94, 108, 439, 246, 437, 398, 151, 153, 464, 111, 400, 329, 140, 279, 243, 496, 99, 401, 11, 27, 390, 437, 226, 300, 245, 317, 480, 430, 188, 183, 109, 155, 461, 150, 347, 47, 463, 390, 341, 442, 386, 96, 416, 251, 407, 436, 48, 156, 114, 125, 104, 215, 287, 462, 192, 435, 286, 157, 388, 206, 403, 142, 322, 428, 187, 28, 305, 42, 260, 475, 462, 192, 435, 340, 331, 228, 292, 90, 338, 419, 352, 31, 224, 128, 199, 39, 383, 13, 349, 211, 342, 314, 71, 468, 97, 238, 409, 86, 85, 263, 169, 239, 277, 472, 350, 30, 112, 302, 160, 23, 324, 417, 0, 244, 35, 46, 66, 408, 295, 249, 116, 350, 370, 248, 240, 457, 301, 379, 82, 422, 427, 172, 429, 257, 241, 55, 415, 26, 350, 418, 267, 266, 222, 410, 210, 223, 214, 179, 37, 65, 8, 133, 32, 265, 391, 350, 93, 118, 339, 344, 129, 250, 315, 501, 136, 476, 355, 56, 332, 497, 284, 298, 367, 158, 500, 460, 167, 131, 194, 177, 60, 397, 53, 233, 73, 448, 303, 152, 234, 83, 158, 101, 2, 122, 478, 469, 402, 368, 252, 237, 254, 5, 378, 357, 68, 64, 83, 158, 500, 261, 115, 190, 394, 220, 45, 175, 288, 207, 273, 191, 506, 306, 456, 54, 40, 52, 421, 182, 173, 393, 164, 336, 103, 384, 411, 1, 198, 326, 426, 348, 126, 444, 107, 12, 282, 144, 161, 507, 197, 491, 149, 139, 362, 19, 36, 309, 221, 213, 444, 361, 358, 181, 487, 345, 44, 163, 7, 105, 135, 404, 91, 75, 293, 203, 51, 154, 16, 451, 454, 217, 319, 323, 253, 311, 6, 285, 343, 62, 321, 297, 382, 51, 371, 69, 50, 337, 63, 433, 447, 79, 25, 387, 359, 488, 278, 100, 84, 258, 51, 371, 380, 102, 316, 130, 10, 204, 275, 494, 365, 290, 449, 196, 61, 445, 473, 51, 371, 58, 289, 123, 508, 423, 389, 375, 452, 185, 255, 49, 80, 174, 202, 474, 232, 212, 113, 376, 22, 9, 413, 236, 495, 485, 72, 98, 346, 195, 276, 353, 511, 232, 154, 43, 270, 455, 189, 4, 209, 374, 89, 373, 318, 470, 490, 78, 399, 119, 231, 505, 16, 372, 145, 335, 446, 147, 138, 88, 431, 385, 364, 225, 146, 127, 106, 231, 505, 101, 124, 330, 24, 440, 420, 479, 259, 325, 274, 33, 193, 170, 503, 256, 141, 510, 509, 162, 77, 76, 466, 333, 280, 184, 438, 70, 143, 308, 425, 498, 262, 141, 134, 248, 493, 219, 320, 432, 186, 38, 74, 492, 92, 18, 450, 327, 269, 242, 486, 486, 200, 406, 443, 180, 14, 171, 168, 29, 165, 120, 218, 110, 81, 369, 291, 486, 87, 467, 15, 484, 458, 441, 465, 205, 434, 366, 453, 159, 482, 117, 360, 166, 486, 227, 296, 57, 356, 281, 247, 121, 41, 229, 178, 176, 21, 272, 354, 313, 208, 486, 377, 414, 481, 20, 363, 328, 268, 307, 459, 304, 392, 294, 17, 283, 148, 216] + 49: [73, 329, 92, 313, 307, 360, 359, 383, 138, 164, 463, 230, 100, 10, 210, 21, 328, 73, 511, 377, 233, 336, 169, 222, 308, 98, 142, 271, 299, 257, 491, 132, 426, 508, 73, 409, 5, 242, 179, 456, 422, 156, 111, 434, 470, 285, 109, 148, 88, 83, 228, 327, 188, 296, 400, 387, 372, 462, 23, 295, 95, 39, 229, 495, 268, 421, 112, 507, 446, 188, 440, 67, 270, 457, 200, 202, 96, 342, 246, 255, 141, 386, 366, 117, 393, 184, 168, 128, 448, 33, 150, 199, 414, 76, 418, 136, 183, 391, 461, 62, 267, 97, 401, 9, 297, 147, 181, 353, 483, 149, 480, 59, 324, 49, 382, 311, 415, 367, 48, 256, 505, 399, 172, 240, 173, 341, 54, 225, 278, 472, 234, 389, 218, 450, 323, 445, 256, 9, 99, 46, 340, 6, 177, 350, 404, 217, 407, 197, 68, 108, 290, 11, 280, 276, 505, 484, 114, 339, 464, 303, 408, 211, 249, 375, 338, 343, 189, 15, 187, 224, 411, 489, 162, 497, 444, 500, 347, 37, 344, 213, 126, 78, 423, 502, 453, 20, 241, 411, 489, 377, 482, 19, 385, 469, 460, 477, 394, 61, 352, 106, 193, 53, 441, 208, 411, 474, 13, 378, 94, 320, 135, 139, 176, 392, 25, 237, 504, 231, 384, 81, 314, 318, 455, 454, 143, 275, 110, 410, 291, 90, 79, 0, 317, 395, 180, 204, 32, 432, 318, 489, 13, 214, 65, 14, 478, 215, 203, 305, 130, 155, 118, 145, 277, 190, 52, 152, 455, 443, 101, 380, 42, 248, 47, 238, 417, 161, 306, 2, 158, 331, 266, 66, 494, 455, 195, 166, 510, 300, 72, 91, 207, 459, 116, 312, 107, 146, 424, 471, 356, 264, 236, 75, 235, 325, 370, 390, 82, 355, 345, 509, 191, 499, 261, 51, 93, 244, 264, 236, 75, 490, 263, 144, 127, 35, 170, 129, 34, 56, 24, 178, 361, 186, 451, 334, 487, 484, 1, 425, 402, 397, 368, 124, 476, 479, 163, 29, 69, 89, 388, 151, 292, 113, 195, 70, 349, 258, 436, 492, 43, 301, 364, 209, 55, 175, 171, 27, 265, 292, 487, 409, 304, 485, 496, 36, 371, 102, 488, 357, 293, 379, 506, 310, 243, 250, 282, 58, 358, 253, 281, 245, 251, 316, 221, 18, 174, 133, 31, 447, 182, 412, 219, 282, 58, 403, 269, 283, 260, 45, 452, 7, 232, 103, 332, 437, 205, 227, 501, 413, 282, 58, 60, 159, 333, 438, 119, 481, 63, 216, 44, 254, 346, 220, 153, 206, 302, 467, 85, 28, 309, 486, 38, 398, 321, 64, 363, 212, 503, 226, 416, 160, 123, 86, 467, 84, 430, 396, 4, 239, 319, 429, 115, 381, 287, 125, 40, 252, 373, 449, 167, 41, 85, 284, 26, 17, 50, 475, 431, 87, 74, 326, 137, 198, 247, 165, 468, 71, 473, 406, 223, 322, 354, 12, 348, 57, 420, 279, 433, 427, 362, 185, 330, 442, 439, 473, 121, 120, 16, 154, 458, 8, 274, 3, 374, 122, 134, 498, 22, 192, 337, 201, 286, 80, 157, 140, 298, 294, 466, 77, 405, 493, 194, 335, 428, 288, 435, 465, 419, 80, 80, 105, 262, 351, 376, 104, 131, 30, 259, 289, 365, 369, 315, 272, 196, 273] + 50: [62, 501, 319, 386, 49, 355, 288, 453, 280, 331, 302, 300, 136, 138, 177, 433, 293, 221, 501, 341, 67, 445, 325, 101, 429, 29, 382, 51, 205, 372, 443, 441, 505, 454, 185, 459, 446, 47, 229, 66, 360, 30, 431, 419, 336, 91, 416, 151, 411, 180, 242, 258, 380, 319, 6, 209, 215, 404, 298, 213, 340, 26, 37, 278, 269, 320, 465, 475, 106, 184, 50, 474, 232, 315, 332, 1, 115, 508, 444, 368, 425, 22, 390, 36, 186, 79, 184, 341, 394, 362, 286, 97, 143, 462, 337, 220, 271, 86, 107, 375, 489, 111, 45, 406, 417, 312, 216, 413, 490, 13, 353, 203, 236, 147, 200, 324, 31, 387, 317, 45, 369, 408, 178, 306, 110, 120, 311, 4, 192, 409, 70, 479, 451, 207, 397, 172, 45, 369, 243, 140, 146, 102, 11, 318, 9, 428, 139, 118, 469, 309, 189, 499, 87, 301, 54, 38, 402, 149, 217, 323, 370, 351, 141, 21, 439, 294, 338, 208, 18, 256, 282, 287, 231, 364, 7, 73, 279, 420, 152, 226, 8, 281, 234, 153, 400, 497, 410, 248, 476, 417, 193, 422, 68, 308, 60, 235, 0, 296, 488, 218, 169, 350, 78, 366, 248, 346, 358, 77, 352, 94, 233, 96, 423, 498, 57, 376, 15, 59, 19, 268, 502, 248, 287, 371, 84, 426, 391, 326, 206, 424, 463, 145, 329, 452, 478, 28, 95, 131, 273, 108, 415, 392, 457, 245, 339, 14, 244, 63, 130, 377, 144, 219, 173, 396, 211, 273, 464, 291, 472, 467, 262, 285, 196, 225, 251, 195, 334, 449, 500, 104, 167, 421, 134, 108, 291, 224, 41, 270, 166, 176, 398, 492, 99, 3, 393, 71, 5, 385, 495, 466, 276, 231, 330, 61, 261, 247, 322, 159, 238, 214, 491, 349, 135, 437, 275, 383, 40, 24, 415, 124, 277, 450, 307, 175, 381, 440, 32, 212, 133, 365, 114, 509, 157, 40, 64, 432, 98, 327, 456, 434, 249, 274, 12, 44, 65, 239, 401, 304, 20, 356, 484, 313, 222, 171, 283, 342, 448, 468, 487, 126, 357, 27, 158, 123, 504, 80, 183, 190, 259, 43, 165, 170, 250, 10, 297, 137, 253, 237, 150, 314, 252, 113, 163, 187, 246, 25, 83, 455, 483, 427, 435, 55, 142, 109, 510, 345, 260, 373, 164, 117, 182, 246, 507, 254, 477, 344, 148, 23, 480, 354, 447, 255, 442, 17, 105, 359, 272, 197, 246, 507, 254, 88, 82, 335, 210, 460, 154, 363, 295, 93, 191, 100, 299, 458, 53, 246, 507, 371, 384, 241, 496, 155, 160, 42, 264, 76, 201, 230, 436, 486, 399, 174, 188, 25, 83, 56, 263, 388, 403, 48, 33, 284, 129, 374, 303, 461, 46, 16, 69, 202, 430, 103, 127, 198, 266, 265, 503, 395, 227, 494, 389, 405, 321, 290, 168, 122, 202, 379, 103, 511, 39, 74, 481, 121, 414, 347, 92, 204, 316, 292, 438, 194, 161, 328, 430, 470, 343, 179, 119, 2, 506, 52, 75, 289, 267, 112, 125, 156, 228, 407, 471, 223, 89, 128, 310, 257, 493, 72, 361, 473, 485, 305, 132, 85, 199, 418, 34, 471, 430, 470, 58, 181, 333, 378, 412, 116, 90, 482, 162, 240, 81, 367, 35, 348] + 51: [73, 155, 151, 299, 474, 131, 450, 149, 500, 371, 50, 12, 358, 17, 220, 363, 300, 453, 70, 165, 366, 486, 64, 396, 196, 83, 313, 479, 502, 307, 153, 75, 45, 507, 453, 155, 343, 267, 116, 333, 301, 120, 504, 258, 278, 266, 71, 305, 93, 424, 133, 318, 70, 187, 367, 81, 217, 125, 159, 484, 229, 36, 394, 441, 369, 452, 488, 41, 157, 13, 187, 442, 122, 283, 211, 350, 189, 414, 275, 126, 415, 158, 1, 357, 475, 207, 337, 457, 411, 34, 498, 341, 364, 102, 331, 291, 420, 388, 179, 272, 446, 274, 213, 124, 47, 106, 227, 269, 463, 243, 121, 52, 260, 328, 496, 51, 113, 5, 428, 320, 434, 167, 156, 419, 261, 16, 346, 252, 440, 86, 118, 309, 109, 298, 287, 464, 33, 432, 96, 249, 168, 483, 297, 69, 202, 427, 174, 140, 194, 55, 237, 467, 209, 33, 410, 317, 389, 104, 340, 236, 456, 239, 397, 254, 244, 271, 14, 170, 26, 241, 33, 112, 477, 221, 200, 43, 74, 468, 206, 321, 326, 22, 461, 482, 32, 330, 205, 33, 177, 445, 178, 173, 27, 253, 262, 417, 462, 339, 255, 492, 306, 250, 430, 65, 33, 177, 431, 487, 216, 53, 30, 199, 257, 400, 60, 48, 393, 263, 268, 503, 181, 33, 434, 445, 284, 379, 435, 195, 422, 491, 76, 407, 404, 203, 329, 501, 248, 231, 325, 489, 166, 315, 192, 143, 316, 37, 377, 223, 296, 77, 282, 361, 208, 426, 368, 2, 506, 35, 451, 293, 319, 172, 24, 123, 405, 365, 387, 137, 160, 54, 310, 183, 2, 506, 47, 138, 232, 273, 395, 182, 279, 190, 175, 381, 378, 372, 139, 384, 466, 2, 219, 289, 308, 386, 472, 198, 56, 409, 114, 481, 91, 335, 455, 19, 375, 353, 9, 162, 294, 494, 49, 99, 497, 84, 141, 234, 439, 443, 382, 18, 230, 345, 25, 101, 162, 449, 473, 398, 458, 169, 11, 383, 127, 218, 373, 10, 302, 185, 135, 144, 103, 111, 324, 242, 336, 6, 161, 460, 176, 425, 132, 38, 92, 59, 225, 186, 270, 180, 111, 276, 57, 374, 184, 88, 23, 499, 465, 228, 360, 438, 286, 62, 264, 145, 105, 327, 147, 334, 204, 100, 89, 511, 85, 238, 480, 39, 359, 436, 323, 67, 42, 105, 402, 352, 108, 259, 193, 290, 421, 188, 245, 510, 3, 304, 338, 240, 332, 288, 105, 402, 399, 20, 476, 416, 94, 356, 469, 87, 68, 212, 224, 115, 82, 164, 150, 385, 129, 226, 29, 117, 493, 280, 247, 90, 471, 98, 95, 354, 7, 418, 277, 97, 385, 327, 399, 485, 128, 348, 171, 233, 401, 28, 444, 390, 391, 478, 508, 201, 347, 349, 129, 226, 437, 148, 152, 459, 370, 58, 448, 408, 163, 429, 130, 380, 31, 154, 21, 61, 44, 235, 376, 509, 362, 119, 355, 142, 495, 72, 136, 342, 265, 256, 15, 21, 129, 324, 251, 79, 312, 505, 146, 351, 107, 281, 134, 303, 392, 311, 63, 110, 210, 78, 276, 40, 295, 433, 314, 0, 412, 46, 4, 285, 406, 191, 470, 66, 8, 78, 78, 344, 197, 214, 215, 246, 222, 403, 447, 490, 292, 322, 413, 454, 423, 80] + 52: [440, 234, 344, 461, 178, 310, 290, 54, 451, 150, 36, 188, 193, 202, 207, 296, 486, 163, 482, 344, 503, 61, 329, 23, 422, 494, 248, 462, 291, 351, 40, 435, 295, 12, 113, 443, 217, 167, 346, 374, 355, 168, 152, 13, 402, 29, 243, 169, 484, 97, 294, 262, 133, 375, 405, 339, 477, 359, 438, 187, 245, 396, 383, 233, 210, 363, 119, 213, 20, 266, 375, 391, 110, 259, 32, 1, 182, 349, 77, 274, 227, 297, 433, 441, 361, 506, 369, 371, 424, 407, 287, 289, 270, 340, 345, 487, 153, 27, 442, 219, 211, 449, 226, 242, 371, 137, 413, 59, 416, 307, 379, 394, 426, 357, 238, 192, 360, 492, 454, 226, 369, 208, 232, 189, 420, 480, 121, 241, 257, 501, 318, 82, 315, 419, 459, 52, 186, 69, 73, 217, 348, 220, 254, 432, 103, 235, 273, 330, 504, 38, 197, 476, 184, 186, 87, 333, 21, 392, 337, 258, 372, 485, 347, 496, 284, 343, 118, 10, 265, 491, 175, 495, 73, 314, 308, 460, 335, 423, 250, 173, 115, 151, 99, 198, 42, 306, 90, 448, 75, 502, 17, 159, 71, 11, 24, 282, 92, 144, 439, 28, 129, 478, 218, 378, 448, 75, 430, 35, 9, 194, 508, 509, 181, 228, 135, 283, 185, 158, 50, 445, 134, 366, 256, 49, 30, 317, 161, 493, 80, 156, 56, 356, 51, 338, 209, 267, 127, 353, 366, 256, 49, 46, 365, 332, 320, 292, 179, 455, 364, 124, 293, 201, 190, 286, 44, 84, 63, 430, 328, 321, 125, 236, 223, 58, 429, 132, 370, 479, 280, 100, 385, 149, 323, 386, 195, 326, 331, 475, 334, 0, 418, 490, 457, 206, 465, 505, 251, 18, 78, 408, 196, 142, 252, 300, 85, 412, 471, 205, 398, 299, 247, 511, 352, 474, 452, 111, 408, 196, 502, 358, 215, 277, 148, 382, 145, 60, 261, 224, 225, 57, 136, 37, 249, 368, 414, 43, 109, 253, 301, 467, 327, 114, 316, 285, 281, 104, 488, 497, 278, 95, 368, 216, 244, 26, 507, 165, 53, 96, 458, 425, 350, 3, 403, 393, 83, 141, 123, 324, 143, 200, 108, 468, 174, 325, 472, 48, 41, 66, 231, 128, 390, 126, 240, 74, 324, 414, 276, 384, 279, 138, 446, 154, 204, 117, 180, 16, 172, 112, 406, 388, 91, 324, 414, 200, 456, 107, 387, 120, 312, 102, 93, 6, 55, 94, 199, 377, 34, 146, 222, 143, 342, 212, 409, 410, 221, 19, 427, 170, 319, 288, 76, 489, 166, 304, 305, 373, 160, 260, 155, 417, 421, 79, 15, 483, 45, 139, 39, 47, 70, 239, 498, 64, 373, 160, 313, 203, 272, 22, 450, 341, 473, 7, 177, 271, 229, 309, 246, 428, 311, 401, 160, 260, 86, 463, 269, 14, 4, 500, 380, 481, 162, 255, 237, 81, 362, 176, 230, 275, 164, 464, 322, 470, 62, 404, 89, 354, 105, 298, 397, 130, 303, 214, 510, 230, 122, 268, 140, 157, 88, 2, 33, 436, 263, 411, 31, 434, 171, 395, 116, 67, 230, 122, 131, 302, 466, 437, 106, 65, 469, 25, 447, 367, 191, 376, 444, 72, 147, 431, 275, 381, 399, 400, 415, 183, 68, 389, 453, 336, 98, 101, 8, 5, 499, 264] + 53: [350, 164, 242, 420, 260, 454, 113, 413, 79, 355, 445, 311, 468, 162, 82, 21, 394, 142, 215, 460, 371, 226, 336, 475, 262, 377, 267, 314, 437, 155, 319, 492, 277, 65, 142, 511, 460, 112, 257, 297, 484, 68, 129, 478, 381, 307, 351, 189, 407, 213, 248, 142, 164, 507, 472, 427, 59, 363, 273, 38, 470, 508, 335, 275, 270, 132, 254, 214, 434, 215, 128, 400, 187, 141, 447, 417, 94, 402, 106, 120, 456, 301, 276, 334, 348, 51, 215, 37, 233, 444, 33, 205, 280, 195, 431, 320, 234, 503, 384, 272, 429, 393, 171, 499, 151, 243, 198, 58, 139, 433, 126, 274, 203, 247, 505, 399, 252, 23, 333, 171, 499, 222, 242, 405, 229, 127, 125, 219, 211, 379, 115, 158, 14, 302, 193, 121, 171, 404, 109, 282, 490, 288, 310, 392, 337, 388, 208, 365, 269, 396, 330, 249, 451, 171, 135, 338, 235, 20, 496, 218, 167, 152, 415, 48, 46, 49, 398, 60, 250, 455, 171, 135, 425, 111, 483, 372, 227, 117, 422, 340, 224, 491, 473, 480, 373, 294, 179, 171, 317, 165, 375, 300, 116, 180, 110, 184, 55, 131, 239, 344, 0, 401, 232, 328, 171, 28, 465, 91, 435, 241, 304, 258, 279, 86, 15, 81, 287, 67, 286, 169, 41, 231, 499, 151, 448, 389, 356, 469, 423, 1, 246, 441, 495, 197, 440, 61, 259, 210, 183, 463, 438, 186, 188, 450, 436, 206, 305, 92, 347, 119, 500, 199, 237, 2, 352, 5, 458, 338, 459, 93, 175, 26, 104, 138, 410, 453, 369, 332, 217, 16, 256, 245, 366, 458, 159, 185, 477, 97, 63, 306, 509, 418, 339, 90, 323, 476, 452, 3, 147, 285, 62, 349, 148, 105, 387, 493, 216, 382, 449, 390, 32, 265, 54, 35, 172, 471, 157, 62, 293, 486, 160, 439, 406, 428, 228, 173, 331, 36, 50, 268, 482, 462, 204, 177, 467, 181, 17, 244, 170, 498, 176, 283, 30, 501, 18, 95, 485, 380, 464, 53, 281, 207, 443, 426, 290, 78, 200, 412, 166, 9, 238, 6, 44, 43, 66, 263, 89, 281, 207, 443, 346, 386, 88, 326, 359, 69, 71, 374, 13, 385, 146, 27, 395, 474, 8, 209, 502, 64, 321, 358, 391, 124, 357, 299, 367, 220, 296, 190, 353, 322, 308, 364, 10, 442, 315, 96, 309, 461, 19, 284, 136, 7, 122, 24, 251, 192, 85, 174, 446, 182, 424, 143, 354, 212, 45, 11, 144, 77, 52, 156, 12, 87, 488, 504, 487, 341, 221, 502, 360, 414, 47, 264, 409, 506, 327, 56, 137, 42, 278, 34, 345, 140, 341, 107, 481, 73, 421, 194, 292, 289, 313, 430, 457, 75, 202, 83, 99, 4, 291, 266, 221, 25, 145, 497, 316, 255, 318, 150, 168, 432, 479, 101, 419, 130, 40, 72, 510, 362, 103, 161, 368, 163, 74, 298, 271, 22, 303, 134, 489, 153, 149, 295, 57, 510, 342, 159, 70, 253, 154, 80, 466, 118, 31, 133, 403, 98, 370, 408, 76, 383, 510, 342, 325, 329, 225, 100, 84, 361, 376, 29, 102, 324, 196, 191, 494, 240, 223, 510, 342, 312, 378, 178, 39, 343, 416, 114, 261, 411, 230, 236, 123, 108, 201, 397] + 54: [90, 236, 187, 139, 429, 460, 50, 8, 343, 465, 152, 44, 382, 132, 468, 420, 248, 156, 236, 101, 7, 72, 412, 497, 128, 503, 309, 424, 203, 216, 391, 365, 79, 290, 154, 38, 240, 177, 137, 293, 510, 487, 87, 283, 252, 228, 66, 477, 231, 46, 183, 509, 38, 150, 7, 192, 221, 246, 162, 297, 444, 208, 383, 354, 60, 75, 214, 452, 41, 288, 364, 428, 450, 408, 28, 449, 145, 220, 39, 25, 202, 247, 166, 73, 475, 41, 38, 276, 462, 26, 15, 403, 292, 376, 357, 58, 261, 5, 230, 243, 337, 359, 147, 389, 393, 238, 436, 421, 93, 500, 398, 63, 92, 381, 302, 379, 179, 437, 484, 234, 155, 478, 180, 404, 434, 307, 77, 251, 480, 282, 190, 402, 95, 491, 48, 17, 59, 155, 106, 146, 3, 16, 278, 427, 47, 164, 244, 366, 271, 386, 413, 148, 226, 353, 324, 273, 455, 259, 496, 355, 200, 308, 330, 76, 69, 67, 495, 153, 181, 405, 71, 313, 364, 31, 43, 135, 490, 312, 178, 213, 358, 349, 385, 229, 439, 174, 160, 56, 313, 392, 426, 418, 42, 188, 134, 315, 281, 64, 68, 170, 340, 448, 285, 265, 374, 191, 257, 11, 407, 119, 363, 176, 205, 196, 326, 457, 473, 295, 275, 406, 143, 374, 191, 422, 344, 499, 447, 400, 215, 306, 305, 320, 13, 267, 394, 331, 1, 314, 300, 191, 89, 109, 280, 207, 108, 469, 18, 372, 347, 370, 254, 65, 472, 141, 182, 458, 463, 333, 415, 125, 186, 81, 435, 291, 112, 387, 416, 118, 32, 91, 395, 339, 470, 296, 250, 189, 54, 142, 507, 277, 105, 253, 325, 88, 502, 163, 83, 299, 53, 310, 6, 378, 441, 241, 140, 33, 224, 485, 471, 195, 78, 461, 115, 232, 158, 210, 310, 296, 240, 36, 201, 397, 345, 482, 209, 417, 84, 459, 30, 318, 380, 80, 242, 493, 474, 304, 274, 24, 327, 303, 505, 260, 388, 121, 443, 172, 272, 114, 489, 27, 493, 104, 74, 9, 269, 21, 227, 433, 351, 399, 425, 342, 255, 453, 294, 29, 237, 451, 151, 51, 410, 264, 22, 82, 332, 323, 52, 419, 225, 204, 222, 149, 375, 506, 451, 151, 51, 409, 245, 263, 37, 414, 23, 430, 2, 113, 479, 197, 167, 116, 12, 451, 151, 396, 122, 488, 377, 161, 124, 35, 175, 49, 57, 338, 98, 258, 61, 249, 451, 362, 360, 270, 136, 431, 440, 62, 45, 157, 55, 390, 321, 131, 34, 454, 356, 451, 467, 304, 279, 329, 138, 185, 130, 352, 289, 481, 328, 96, 494, 317, 369, 126, 451, 474, 378, 194, 85, 102, 206, 322, 483, 346, 511, 159, 341, 284, 107, 127, 123, 348, 334, 508, 286, 217, 99, 117, 350, 268, 14, 144, 486, 218, 211, 492, 401, 110, 348, 335, 171, 456, 266, 367, 423, 40, 184, 371, 361, 287, 464, 165, 10, 168, 19, 348, 111, 396, 235, 445, 373, 169, 262, 298, 319, 446, 103, 86, 233, 239, 199, 336, 348, 151, 432, 411, 219, 70, 120, 129, 504, 466, 384, 438, 0, 97, 301, 173, 20, 316, 316, 501, 368, 498, 100, 94, 198, 476, 223, 4, 311, 212, 193, 442, 133, 256] + 55: [274, 136, 127, 185, 355, 230, 200, 465, 297, 262, 135, 317, 415, 229, 240, 42, 300, 470, 186, 316, 479, 148, 242, 445, 144, 354, 79, 390, 195, 276, 429, 437, 330, 469, 97, 224, 49, 231, 403, 434, 113, 504, 166, 376, 311, 147, 414, 508, 484, 58, 241, 398, 87, 21, 368, 210, 82, 291, 488, 43, 156, 57, 111, 184, 294, 419, 447, 155, 365, 421, 388, 179, 363, 331, 407, 444, 105, 511, 196, 427, 378, 305, 493, 238, 176, 250, 67, 394, 279, 187, 372, 303, 123, 456, 374, 344, 328, 52, 247, 436, 249, 95, 250, 337, 192, 146, 272, 352, 379, 408, 112, 236, 9, 32, 340, 13, 510, 395, 438, 292, 163, 338, 191, 100, 309, 98, 14, 275, 506, 217, 499, 157, 161, 333, 497, 369, 292, 163, 461, 188, 360, 474, 225, 120, 412, 22, 383, 284, 29, 202, 491, 31, 509, 292, 163, 468, 401, 154, 17, 386, 88, 54, 153, 237, 304, 483, 277, 341, 209, 0, 292, 47, 290, 99, 299, 34, 503, 463, 347, 462, 251, 234, 480, 89, 371, 431, 336, 292, 67, 149, 216, 404, 255, 103, 245, 440, 64, 227, 442, 130, 271, 70, 375, 391, 413, 133, 388, 466, 80, 302, 211, 384, 457, 145, 319, 7, 326, 96, 416, 165, 451, 413, 133, 50, 373, 219, 482, 346, 226, 430, 273, 24, 28, 189, 490, 282, 66, 102, 413, 139, 468, 313, 489, 382, 108, 190, 36, 405, 260, 265, 477, 280, 425, 26, 72, 281, 133, 338, 353, 3, 138, 362, 38, 94, 410, 443, 244, 75, 252, 73, 115, 496, 35, 476, 149, 122, 432, 117, 124, 221, 342, 152, 501, 45, 159, 321, 121, 435, 119, 71, 198, 467, 142, 92, 246, 258, 78, 268, 8, 228, 392, 495, 364, 472, 44, 214, 357, 423, 106, 41, 137, 20, 15, 449, 126, 481, 422, 393, 318, 46, 51, 332, 487, 417, 334, 84, 464, 109, 473, 296, 23, 320, 428, 60, 298, 182, 178, 171, 253, 207, 417, 423, 68, 264, 367, 40, 315, 128, 56, 93, 2, 218, 458, 194, 397, 55, 205, 343, 334, 167, 406, 345, 10, 222, 74, 439, 349, 325, 59, 254, 204, 118, 455, 6, 343, 334, 167, 450, 505, 399, 409, 306, 377, 199, 288, 172, 257, 424, 396, 132, 174, 220, 107, 84, 4, 348, 63, 77, 223, 310, 85, 356, 203, 158, 90, 485, 448, 197, 233, 358, 502, 494, 418, 213, 104, 478, 201, 452, 141, 339, 232, 507, 312, 206, 86, 233, 170, 426, 286, 76, 131, 351, 285, 308, 387, 498, 266, 65, 1, 293, 183, 283, 110, 140, 53, 243, 402, 460, 180, 101, 411, 441, 18, 248, 433, 83, 164, 48, 420, 110, 140, 53, 361, 492, 307, 453, 486, 81, 39, 261, 278, 323, 235, 389, 263, 30, 208, 140, 91, 475, 327, 350, 314, 359, 400, 5, 459, 212, 471, 193, 151, 143, 134, 69, 37, 335, 168, 287, 385, 114, 500, 454, 162, 256, 181, 322, 11, 239, 129, 12, 69, 140, 335, 116, 366, 150, 259, 381, 301, 270, 215, 289, 173, 19, 380, 62, 446, 33, 33, 175, 177, 169, 329, 25, 370, 160, 295, 267, 324, 61, 269, 125, 27, 16] + 56: [2, 303, 144, 508, 320, 315, 182, 100, 10, 472, 59, 448, 91, 124, 405, 254, 352, 110, 177, 144, 121, 480, 101, 245, 208, 342, 134, 24, 489, 344, 217, 421, 219, 106, 87, 149, 314, 382, 147, 173, 272, 58, 190, 392, 343, 76, 23, 355, 183, 103, 458, 493, 51, 427, 25, 509, 181, 21, 305, 333, 62, 460, 368, 374, 311, 277, 428, 350, 48, 141, 158, 46, 235, 11, 432, 75, 32, 321, 293, 297, 348, 258, 198, 334, 207, 48, 265, 442, 159, 501, 294, 499, 261, 213, 307, 35, 494, 411, 406, 74, 171, 358, 48, 265, 442, 229, 27, 264, 98, 361, 192, 78, 285, 204, 45, 482, 422, 454, 505, 48, 51, 139, 391, 214, 18, 135, 354, 289, 372, 381, 429, 346, 38, 483, 300, 487, 302, 339, 416, 16, 447, 286, 384, 6, 225, 360, 375, 279, 324, 54, 326, 419, 132, 299, 339, 262, 77, 330, 366, 168, 151, 119, 218, 205, 410, 269, 256, 47, 379, 434, 435, 506, 139, 55, 295, 99, 496, 90, 145, 467, 5, 502, 93, 164, 179, 364, 316, 227, 63, 114, 376, 1, 247, 70, 152, 68, 180, 278, 363, 116, 42, 28, 81, 20, 212, 0, 357, 67, 420, 328, 325, 88, 329, 504, 371, 162, 386, 105, 478, 72, 266, 212, 80, 143, 242, 221, 341, 165, 401, 130, 140, 167, 29, 202, 118, 446, 457, 37, 212, 322, 199, 57, 407, 131, 498, 83, 246, 288, 96, 209, 464, 280, 117, 166, 415, 310, 273, 9, 95, 39, 196, 94, 142, 73, 156, 290, 400, 194, 500, 33, 335, 377, 310, 273, 9, 232, 327, 64, 466, 169, 189, 424, 438, 136, 125, 452, 65, 336, 412, 310, 0, 404, 82, 126, 340, 270, 291, 193, 511, 484, 312, 113, 210, 66, 30, 437, 310, 0, 128, 413, 53, 120, 257, 170, 453, 61, 34, 369, 281, 233, 332, 250, 111, 451, 263, 146, 470, 397, 157, 248, 259, 473, 338, 237, 488, 283, 491, 317, 323, 308, 451, 271, 8, 185, 50, 318, 230, 301, 14, 92, 347, 153, 49, 260, 287, 414, 206, 3, 150, 158, 160, 97, 127, 201, 104, 236, 445, 418, 19, 306, 430, 17, 268, 380, 3, 123, 44, 441, 275, 486, 468, 465, 276, 122, 390, 449, 463, 349, 477, 178, 433, 3, 123, 7, 359, 436, 456, 109, 133, 52, 174, 292, 238, 102, 365, 378, 175, 86, 36, 150, 220, 394, 197, 388, 383, 211, 425, 356, 395, 22, 129, 172, 426, 243, 234, 469, 150, 114, 471, 56, 389, 353, 385, 148, 12, 403, 195, 40, 89, 188, 85, 510, 31, 408, 43, 443, 203, 84, 337, 387, 475, 154, 222, 319, 492, 186, 440, 138, 351, 31, 408, 43, 223, 241, 474, 417, 255, 155, 161, 481, 444, 479, 4, 200, 252, 284, 31, 60, 226, 251, 461, 455, 309, 497, 184, 462, 187, 393, 191, 13, 224, 112, 26, 240, 41, 331, 507, 267, 176, 370, 345, 298, 402, 244, 15, 79, 495, 228, 108, 431, 485, 239, 331, 423, 137, 296, 69, 476, 249, 313, 362, 503, 450, 107, 373, 71, 396, 163, 239, 367, 490, 115, 304, 409, 216, 215, 231, 439, 274, 398, 253, 399, 282, 459] + 57: [428, 63, 160, 163, 13, 100, 381, 326, 266, 178, 74, 389, 422, 214, 149, 70, 204, 428, 63, 94, 157, 410, 83, 119, 280, 194, 190, 84, 2, 459, 476, 321, 11, 267, 384, 369, 301, 359, 133, 329, 44, 184, 29, 373, 480, 297, 102, 448, 124, 354, 217, 21, 219, 108, 20, 430, 117, 55, 175, 33, 252, 262, 356, 182, 61, 202, 274, 456, 21, 462, 37, 509, 54, 195, 504, 323, 197, 286, 319, 104, 330, 500, 240, 159, 51, 21, 131, 421, 85, 334, 223, 249, 14, 320, 352, 112, 310, 309, 495, 455, 179, 390, 21, 120, 391, 60, 22, 288, 30, 71, 282, 39, 88, 176, 344, 64, 152, 24, 463, 21, 120, 228, 351, 379, 453, 347, 166, 52, 337, 136, 3, 10, 332, 304, 62, 441, 487, 56, 139, 442, 273, 50, 363, 413, 343, 478, 129, 130, 143, 283, 199, 174, 227, 239, 79, 396, 362, 25, 501, 118, 207, 235, 458, 311, 324, 97, 296, 127, 206, 292, 239, 56, 238, 96, 439, 418, 230, 209, 325, 86, 333, 431, 141, 383, 322, 92, 220, 35, 27, 303, 165, 253, 269, 26, 154, 265, 225, 198, 302, 90, 499, 275, 111, 167, 307, 503, 396, 224, 233, 472, 1, 34, 0, 42, 114, 498, 4, 258, 101, 342, 488, 307, 27, 508, 416, 392, 66, 125, 242, 231, 358, 68, 433, 221, 457, 23, 169, 407, 293, 140, 303, 196, 93, 28, 423, 479, 109, 142, 306, 12, 427, 243, 449, 505, 357, 151, 397, 506, 69, 261, 312, 317, 188, 290, 305, 440, 349, 336, 256, 460, 443, 400, 151, 397, 272, 264, 189, 445, 279, 208, 295, 216, 492, 285, 150, 36, 38, 113, 162, 151, 49, 301, 426, 481, 276, 250, 134, 299, 318, 315, 510, 366, 393, 158, 19, 215, 89, 397, 506, 232, 348, 183, 87, 278, 496, 465, 364, 469, 385, 424, 99, 144, 464, 419, 73, 490, 429, 122, 138, 9, 156, 485, 404, 76, 466, 263, 172, 153, 40, 82, 419, 180, 511, 161, 387, 246, 335, 236, 444, 192, 340, 105, 405, 471, 186, 95, 408, 419, 378, 313, 382, 171, 432, 145, 17, 177, 346, 53, 187, 248, 338, 291, 452, 435, 419, 212, 260, 116, 277, 350, 222, 123, 411, 314, 201, 148, 414, 115, 43, 420, 436, 419, 438, 272, 353, 484, 251, 75, 226, 47, 394, 502, 489, 403, 59, 402, 32, 15, 110, 164, 409, 446, 146, 417, 229, 398, 406, 494, 218, 244, 16, 210, 241, 65, 372, 110, 371, 121, 507, 298, 173, 270, 376, 434, 375, 185, 80, 374, 255, 308, 395, 31, 110, 371, 482, 454, 474, 412, 425, 58, 361, 205, 331, 8, 170, 287, 247, 368, 450, 110, 470, 106, 57, 203, 193, 461, 200, 168, 211, 137, 473, 213, 128, 48, 147, 339, 234, 107, 327, 257, 370, 18, 268, 447, 191, 294, 289, 41, 365, 491, 67, 91, 483, 234, 237, 45, 77, 259, 486, 377, 103, 254, 468, 467, 341, 46, 126, 181, 6, 72, 234, 380, 328, 7, 132, 300, 316, 284, 78, 493, 135, 98, 497, 475, 415, 399, 271, 107, 107, 345, 367, 388, 477, 437, 451, 360, 386, 355, 401, 81, 5, 245, 281, 155] + 58: [489, 401, 211, 272, 92, 124, 62, 452, 190, 364, 240, 75, 223, 63, 478, 390, 320, 489, 365, 4, 83, 80, 50, 410, 15, 104, 325, 473, 368, 440, 9, 178, 2, 445, 489, 335, 17, 122, 151, 12, 289, 403, 329, 172, 79, 263, 464, 498, 346, 484, 270, 489, 286, 423, 480, 282, 158, 161, 274, 134, 435, 125, 285, 48, 153, 123, 128, 203, 489, 286, 354, 85, 439, 323, 13, 188, 277, 44, 195, 501, 327, 242, 220, 451, 288, 489, 309, 309, 45, 434, 352, 243, 421, 204, 324, 182, 271, 52, 166, 468, 129, 395, 400, 37, 211, 496, 494, 227, 399, 389, 437, 51, 321, 491, 174, 477, 112, 76, 191, 217, 433, 301, 65, 463, 475, 60, 127, 132, 254, 202, 315, 296, 194, 138, 64, 54, 217, 46, 281, 255, 16, 173, 444, 258, 59, 43, 36, 411, 430, 428, 328, 170, 196, 217, 363, 499, 426, 261, 41, 416, 469, 493, 119, 341, 163, 407, 6, 39, 209, 396, 217, 363, 120, 142, 495, 287, 198, 212, 432, 168, 11, 165, 436, 100, 40, 361, 256, 217, 384, 253, 27, 293, 169, 505, 20, 337, 108, 167, 267, 70, 394, 345, 311, 22, 217, 384, 25, 462, 111, 205, 148, 507, 313, 235, 257, 72, 226, 511, 99, 86, 121, 502, 433, 273, 155, 360, 398, 429, 314, 47, 133, 268, 266, 176, 21, 221, 233, 33, 26, 42, 213, 467, 228, 225, 143, 162, 230, 418, 312, 32, 348, 482, 441, 443, 260, 26, 164, 488, 492, 386, 366, 294, 53, 438, 210, 318, 69, 189, 82, 234, 350, 3, 26, 164, 307, 397, 278, 342, 95, 24, 283, 137, 18, 385, 10, 14, 347, 66, 471, 26, 433, 237, 214, 503, 466, 91, 470, 447, 356, 455, 374, 232, 118, 154, 181, 216, 244, 42, 481, 101, 180, 448, 308, 186, 115, 78, 265, 409, 201, 417, 331, 497, 160, 291, 295, 351, 81, 147, 68, 304, 103, 319, 71, 326, 449, 353, 141, 371, 459, 159, 291, 42, 84, 262, 316, 152, 113, 420, 229, 406, 402, 376, 156, 508, 486, 383, 248, 392, 446, 8, 490, 218, 249, 381, 367, 422, 1, 339, 184, 427, 107, 224, 457, 28, 392, 102, 117, 355, 250, 116, 183, 450, 404, 231, 425, 305, 245, 290, 57, 382, 89, 392, 284, 251, 149, 333, 150, 310, 297, 276, 19, 330, 379, 412, 322, 200, 5, 362, 392, 284, 241, 30, 58, 413, 391, 219, 334, 23, 275, 303, 358, 338, 185, 298, 56, 199, 292, 279, 34, 247, 504, 207, 344, 472, 510, 246, 408, 264, 171, 349, 461, 332, 199, 146, 135, 96, 208, 29, 300, 130, 197, 280, 222, 187, 465, 487, 73, 38, 357, 199, 146, 340, 0, 453, 94, 238, 55, 98, 109, 144, 106, 509, 136, 373, 500, 61, 67, 193, 90, 239, 460, 110, 372, 88, 179, 456, 139, 157, 145, 93, 415, 369, 87, 393, 454, 405, 458, 215, 140, 442, 49, 336, 259, 378, 77, 483, 74, 431, 31, 506, 424, 388, 299, 114, 380, 377, 479, 302, 192, 131, 485, 474, 269, 343, 419, 359, 317, 175, 388, 370, 35, 7, 476, 177, 375, 97, 306, 206, 236, 414, 126, 387, 252, 105] + 59: [153, 487, 271, 458, 190, 48, 160, 431, 293, 62, 460, 178, 300, 338, 120, 231, 485, 290, 487, 387, 289, 418, 408, 385, 17, 501, 92, 69, 494, 27, 326, 260, 384, 133, 475, 123, 508, 95, 253, 302, 433, 354, 105, 373, 194, 29, 421, 210, 316, 111, 497, 475, 442, 323, 437, 365, 16, 117, 32, 18, 295, 486, 101, 305, 164, 192, 262, 228, 475, 491, 254, 104, 9, 319, 288, 332, 14, 291, 428, 454, 158, 252, 232, 237, 476, 475, 491, 24, 378, 173, 171, 410, 78, 166, 215, 425, 146, 407, 265, 422, 127, 83, 475, 259, 193, 321, 430, 55, 478, 43, 221, 60, 107, 261, 159, 400, 341, 398, 144, 475, 46, 187, 328, 275, 162, 402, 149, 266, 325, 381, 223, 242, 189, 93, 446, 216, 480, 226, 344, 450, 30, 169, 301, 469, 126, 440, 264, 317, 349, 448, 273, 64, 310, 480, 383, 346, 22, 255, 335, 141, 505, 89, 358, 352, 116, 507, 502, 268, 28, 244, 480, 367, 278, 50, 284, 114, 199, 198, 51, 457, 380, 188, 21, 375, 185, 470, 33, 6, 226, 80, 286, 161, 382, 451, 102, 202, 122, 175, 96, 213, 23, 503, 227, 118, 183, 217, 59, 333, 87, 412, 504, 377, 441, 258, 435, 270, 281, 145, 347, 493, 464, 63, 58, 2, 81, 409, 36, 439, 420, 462, 7, 329, 359, 113, 370, 334, 299, 174, 63, 58, 193, 405, 351, 361, 256, 91, 500, 211, 343, 292, 465, 280, 167, 336, 45, 63, 219, 2, 477, 235, 103, 488, 130, 240, 99, 76, 206, 179, 401, 31, 484, 355, 63, 459, 356, 222, 54, 154, 243, 100, 238, 443, 234, 372, 184, 424, 322, 88, 313, 395, 125, 67, 304, 427, 8, 282, 297, 246, 276, 345, 350, 263, 374, 330, 200, 90, 395, 40, 203, 337, 294, 307, 82, 438, 342, 73, 157, 324, 138, 311, 229, 79, 13, 461, 65, 463, 41, 112, 490, 269, 176, 466, 312, 277, 285, 417, 94, 473, 208, 481, 461, 65, 456, 314, 172, 386, 397, 4, 152, 315, 151, 134, 404, 53, 155, 156, 218, 201, 65, 52, 42, 340, 434, 61, 391, 248, 37, 97, 241, 165, 429, 108, 267, 181, 71, 98, 482, 70, 257, 34, 366, 455, 12, 472, 308, 388, 196, 150, 287, 49, 11, 71, 327, 468, 416, 360, 357, 403, 26, 474, 74, 392, 274, 139, 10, 369, 19, 143, 71, 327, 220, 379, 364, 177, 147, 119, 318, 498, 376, 57, 110, 47, 230, 483, 0, 71, 327, 283, 444, 137, 362, 84, 413, 272, 163, 214, 406, 38, 195, 197, 436, 492, 233, 98, 131, 339, 249, 75, 414, 348, 393, 77, 309, 479, 212, 109, 331, 68, 298, 129, 35, 453, 132, 510, 247, 142, 251, 489, 296, 140, 353, 411, 239, 115, 467, 124, 129, 394, 135, 371, 363, 39, 205, 85, 56, 506, 368, 170, 320, 279, 168, 245, 432, 129, 394, 44, 106, 426, 3, 207, 86, 180, 415, 209, 128, 191, 389, 136, 396, 72, 236, 236, 15, 182, 449, 66, 250, 390, 224, 452, 204, 419, 499, 423, 399, 121, 495, 236, 35, 306, 303, 496, 186, 148, 225, 511, 5, 20, 447, 471, 1, 25, 509, 445] + 60: [330, 320, 505, 278, 267, 183, 136, 300, 41, 170, 319, 189, 14, 139, 122, 259, 407, 330, 320, 143, 257, 397, 45, 88, 176, 94, 308, 421, 409, 266, 7, 63, 414, 499, 439, 71, 493, 364, 121, 471, 171, 146, 57, 402, 437, 328, 137, 204, 390, 224, 483, 439, 71, 178, 54, 276, 202, 26, 490, 366, 359, 416, 46, 212, 360, 472, 371, 502, 4, 265, 275, 386, 84, 18, 291, 38, 225, 340, 182, 108, 283, 188, 52, 295, 40, 4, 265, 19, 379, 405, 229, 239, 474, 134, 464, 467, 380, 334, 422, 235, 411, 369, 4, 448, 48, 307, 368, 157, 154, 118, 396, 262, 311, 301, 475, 208, 132, 65, 149, 4, 448, 138, 424, 356, 463, 489, 97, 349, 492, 238, 68, 305, 468, 120, 231, 245, 4, 184, 477, 331, 187, 96, 31, 111, 394, 253, 298, 241, 110, 494, 22, 211, 173, 237, 279, 61, 314, 484, 507, 435, 251, 401, 62, 163, 107, 427, 69, 460, 455, 430, 237, 391, 115, 85, 458, 34, 123, 77, 476, 264, 76, 246, 86, 127, 203, 316, 91, 374, 309, 365, 29, 335, 33, 370, 378, 36, 268, 254, 449, 218, 243, 74, 230, 153, 374, 113, 280, 80, 92, 377, 510, 119, 248, 17, 78, 304, 169, 332, 3, 273, 341, 374, 113, 442, 252, 209, 423, 333, 297, 258, 162, 506, 53, 215, 165, 504, 191, 150, 374, 113, 388, 338, 473, 457, 47, 353, 497, 216, 6, 73, 23, 200, 406, 404, 70, 374, 342, 116, 30, 263, 79, 249, 345, 339, 207, 470, 56, 172, 247, 322, 21, 296, 374, 10, 15, 24, 217, 420, 447, 261, 325, 488, 89, 220, 294, 323, 376, 500, 82, 374, 244, 317, 299, 66, 462, 459, 498, 44, 59, 51, 129, 399, 159, 418, 375, 270, 374, 279, 419, 205, 39, 166, 346, 327, 190, 233, 400, 192, 277, 186, 227, 373, 13, 395, 456, 256, 106, 58, 210, 358, 485, 236, 434, 398, 271, 11, 90, 441, 32, 101, 312, 352, 432, 124, 250, 351, 145, 292, 180, 389, 383, 281, 109, 105, 222, 28, 0, 312, 496, 445, 181, 130, 160, 272, 511, 382, 310, 37, 440, 302, 354, 193, 112, 1, 234, 93, 479, 199, 5, 81, 274, 177, 453, 408, 451, 289, 324, 503, 67, 329, 50, 426, 93, 432, 284, 147, 104, 201, 133, 350, 293, 103, 286, 461, 326, 269, 337, 428, 426, 93, 508, 481, 285, 469, 465, 282, 142, 315, 313, 433, 167, 117, 75, 491, 381, 64, 410, 487, 454, 287, 213, 303, 232, 161, 361, 228, 343, 185, 98, 8, 452, 20, 125, 197, 151, 363, 219, 198, 501, 318, 260, 438, 443, 158, 87, 336, 25, 144, 242, 413, 60, 128, 362, 55, 417, 168, 509, 83, 95, 367, 100, 466, 42, 214, 372, 384, 413, 72, 174, 403, 392, 347, 49, 240, 27, 431, 164, 255, 387, 223, 415, 355, 16, 413, 72, 99, 131, 450, 348, 393, 156, 486, 126, 206, 195, 429, 43, 141, 306, 221, 344, 102, 290, 152, 446, 140, 412, 196, 321, 179, 12, 135, 194, 357, 480, 385, 155, 344, 60, 487, 9, 495, 436, 482, 444, 148, 175, 425, 114, 35, 288, 226, 478, 2] + 61: [464, 140, 402, 358, 270, 293, 79, 222, 71, 443, 115, 14, 119, 204, 216, 205, 283, 464, 84, 429, 111, 279, 393, 27, 155, 154, 453, 91, 143, 308, 345, 189, 56, 477, 464, 84, 138, 282, 196, 321, 508, 94, 473, 486, 207, 5, 461, 432, 188, 68, 41, 464, 323, 429, 465, 295, 187, 81, 0, 302, 134, 268, 441, 332, 151, 55, 97, 469, 464, 30, 113, 48, 428, 251, 126, 244, 26, 130, 177, 212, 146, 257, 104, 383, 500, 464, 11, 280, 206, 167, 350, 157, 281, 409, 203, 457, 43, 225, 2, 503, 509, 374, 269, 215, 13, 394, 258, 87, 362, 7, 329, 182, 435, 160, 200, 125, 72, 466, 163, 36, 83, 338, 123, 75, 445, 90, 386, 214, 184, 76, 142, 226, 364, 412, 18, 59, 36, 73, 424, 467, 300, 502, 494, 490, 24, 333, 122, 12, 454, 423, 52, 301, 264, 36, 1, 371, 417, 392, 324, 132, 286, 309, 28, 127, 273, 256, 384, 54, 495, 492, 36, 1, 152, 136, 334, 53, 129, 149, 101, 427, 85, 255, 318, 451, 198, 430, 399, 36, 40, 218, 172, 22, 413, 169, 100, 444, 347, 482, 442, 135, 311, 511, 88, 355, 36, 40, 378, 285, 419, 373, 415, 406, 487, 194, 458, 365, 19, 45, 89, 249, 193, 161, 340, 237, 452, 92, 335, 173, 278, 379, 439, 491, 497, 232, 470, 368, 159, 148, 161, 340, 191, 496, 29, 165, 144, 422, 224, 481, 219, 351, 474, 4, 277, 233, 32, 230, 20, 262, 316, 307, 208, 181, 266, 322, 381, 510, 37, 438, 213, 235, 120, 141, 230, 39, 16, 303, 401, 398, 294, 34, 190, 145, 15, 483, 197, 456, 342, 478, 220, 267, 66, 400, 390, 404, 186, 242, 35, 118, 234, 426, 331, 363, 276, 475, 462, 170, 290, 137, 162, 80, 405, 498, 507, 223, 382, 69, 420, 93, 63, 366, 8, 247, 272, 139, 195, 61, 114, 117, 175, 179, 174, 236, 320, 103, 449, 86, 291, 434, 375, 315, 139, 195, 348, 166, 298, 192, 23, 221, 116, 65, 168, 397, 376, 99, 156, 450, 261, 139, 265, 9, 447, 239, 64, 58, 96, 60, 259, 74, 171, 3, 317, 121, 147, 288, 139, 416, 248, 319, 202, 414, 418, 479, 131, 472, 57, 403, 468, 313, 410, 448, 297, 139, 343, 62, 367, 330, 209, 425, 180, 42, 228, 284, 354, 274, 369, 238, 289, 305, 139, 343, 353, 480, 408, 499, 108, 489, 231, 431, 336, 49, 109, 339, 98, 488, 77, 139, 137, 31, 433, 183, 292, 164, 271, 153, 211, 506, 455, 327, 306, 299, 372, 346, 139, 137, 263, 485, 46, 463, 253, 360, 352, 102, 245, 440, 370, 328, 33, 501, 217, 344, 178, 471, 421, 78, 44, 437, 106, 407, 391, 229, 110, 357, 176, 82, 158, 387, 38, 201, 95, 460, 349, 133, 112, 240, 356, 341, 380, 243, 493, 385, 287, 396, 51, 312, 201, 361, 50, 250, 310, 241, 227, 70, 388, 25, 185, 17, 254, 359, 67, 505, 459, 459, 361, 411, 150, 325, 337, 326, 260, 246, 314, 395, 476, 105, 10, 504, 377, 459, 252, 128, 436, 199, 107, 47, 296, 304, 484, 124, 446, 389, 21, 275, 6, 210] + 62: [475, 459, 453, 246, 300, 304, 160, 235, 203, 237, 387, 405, 254, 281, 74, 291, 511, 475, 403, 210, 189, 34, 329, 507, 12, 262, 241, 147, 15, 65, 289, 460, 479, 500, 475, 276, 499, 284, 283, 22, 285, 38, 69, 231, 49, 376, 76, 382, 407, 211, 455, 475, 276, 303, 341, 27, 504, 16, 29, 435, 358, 380, 321, 192, 122, 377, 374, 70, 475, 477, 6, 379, 393, 125, 157, 159, 423, 450, 225, 45, 44, 47, 261, 350, 113, 177, 244, 79, 273, 437, 20, 373, 451, 326, 495, 180, 365, 247, 458, 272, 176, 155, 456, 81, 426, 501, 220, 1, 212, 391, 310, 288, 443, 198, 165, 274, 128, 355, 255, 456, 395, 210, 196, 332, 334, 50, 390, 39, 279, 345, 410, 336, 205, 144, 173, 14, 456, 131, 6, 474, 327, 468, 428, 135, 433, 8, 215, 439, 250, 319, 354, 88, 126, 402, 452, 366, 7, 172, 267, 18, 179, 56, 167, 42, 482, 3, 181, 240, 59, 117, 402, 81, 55, 422, 419, 338, 103, 63, 100, 123, 72, 2, 216, 445, 214, 436, 139, 491, 342, 114, 36, 89, 494, 362, 361, 61, 245, 287, 127, 506, 183, 35, 9, 351, 491, 25, 230, 446, 269, 208, 290, 396, 317, 146, 466, 348, 301, 294, 330, 134, 249, 491, 452, 129, 487, 421, 454, 388, 286, 132, 490, 4, 169, 314, 311, 162, 258, 299, 491, 452, 414, 418, 164, 234, 46, 484, 275, 109, 82, 227, 480, 206, 415, 408, 280, 434, 116, 218, 62, 121, 105, 110, 77, 318, 64, 295, 228, 409, 53, 243, 293, 389, 232, 324, 346, 26, 99, 292, 242, 353, 372, 84, 430, 97, 104, 305, 486, 384, 448, 90, 324, 13, 282, 58, 223, 333, 509, 416, 425, 5, 375, 357, 154, 204, 141, 102, 90, 324, 145, 107, 441, 51, 156, 356, 363, 41, 278, 178, 331, 115, 202, 464, 153, 503, 401, 226, 149, 386, 111, 171, 140, 309, 251, 248, 313, 347, 239, 370, 78, 148, 174, 378, 40, 213, 221, 485, 493, 91, 367, 263, 323, 209, 75, 508, 442, 201, 98, 174, 60, 467, 297, 471, 219, 344, 43, 476, 312, 170, 67, 264, 24, 32, 222, 224, 174, 60, 226, 86, 257, 381, 182, 95, 260, 17, 340, 66, 188, 194, 411, 399, 184, 174, 233, 316, 364, 473, 137, 432, 463, 424, 383, 472, 190, 253, 427, 23, 371, 168, 174, 307, 444, 368, 498, 108, 483, 256, 461, 360, 306, 238, 325, 489, 259, 28, 478, 130, 163, 397, 492, 404, 200, 217, 277, 112, 193, 54, 136, 94, 52, 175, 71, 296, 502, 191, 106, 339, 270, 308, 481, 85, 151, 10, 207, 185, 199, 152, 96, 21, 143, 502, 268, 236, 510, 92, 457, 488, 124, 73, 394, 398, 161, 229, 465, 497, 496, 138, 502, 142, 477, 449, 359, 462, 505, 118, 406, 93, 431, 335, 315, 271, 186, 302, 337, 150, 429, 195, 11, 83, 119, 197, 417, 266, 470, 265, 80, 440, 349, 438, 37, 30, 150, 429, 87, 447, 412, 369, 166, 158, 48, 469, 252, 420, 413, 392, 101, 298, 133, 150, 191, 0, 385, 352, 33, 68, 320, 19, 57, 322, 343, 187, 120, 328, 31, 400] + 63: [241, 418, 102, 415, 492, 156, 171, 183, 226, 345, 435, 346, 115, 77, 444, 288, 174, 241, 263, 360, 481, 497, 257, 139, 485, 247, 167, 510, 93, 215, 211, 287, 290, 170, 241, 470, 110, 291, 212, 17, 471, 456, 431, 475, 181, 86, 199, 128, 220, 57, 51, 439, 145, 131, 105, 175, 373, 381, 508, 43, 179, 298, 118, 409, 194, 246, 410, 155, 439, 418, 42, 157, 225, 123, 380, 72, 238, 295, 376, 146, 325, 480, 392, 10, 151, 25, 160, 53, 216, 196, 54, 219, 198, 285, 22, 187, 189, 265, 84, 371, 451, 408, 25, 160, 161, 232, 469, 336, 319, 437, 333, 147, 324, 33, 367, 340, 489, 390, 426, 25, 145, 297, 351, 308, 88, 446, 491, 177, 274, 148, 341, 252, 234, 309, 169, 134, 127, 61, 2, 404, 190, 353, 205, 132, 407, 49, 303, 420, 96, 203, 490, 354, 222, 127, 59, 271, 436, 332, 114, 416, 92, 214, 486, 40, 64, 104, 425, 322, 244, 133, 127, 364, 366, 501, 239, 95, 144, 44, 119, 467, 5, 9, 26, 27, 243, 202, 113, 127, 382, 3, 117, 377, 20, 273, 478, 440, 253, 250, 34, 70, 280, 207, 138, 195, 127, 382, 387, 477, 152, 344, 141, 235, 301, 433, 41, 62, 343, 8, 186, 329, 63, 127, 334, 470, 294, 39, 58, 80, 484, 503, 81, 224, 393, 463, 275, 223, 302, 453, 127, 334, 358, 12, 305, 237, 264, 248, 330, 509, 269, 488, 449, 218, 82, 405, 120, 209, 13, 326, 28, 79, 262, 412, 284, 359, 24, 318, 304, 331, 495, 474, 462, 206, 48, 217, 411, 60, 283, 200, 74, 402, 337, 21, 476, 78, 52, 504, 69, 447, 46, 48, 217, 16, 323, 363, 421, 0, 350, 67, 511, 400, 87, 458, 85, 281, 286, 15, 48, 461, 38, 32, 125, 299, 427, 464, 11, 342, 99, 251, 429, 14, 279, 35, 270, 423, 368, 37, 188, 101, 197, 289, 136, 71, 121, 403, 163, 276, 158, 327, 18, 401, 255, 338, 311, 355, 398, 98, 314, 231, 90, 242, 73, 493, 317, 4, 258, 66, 55, 255, 338, 108, 414, 29, 130, 422, 173, 229, 505, 68, 266, 394, 432, 419, 191, 479, 255, 338, 172, 487, 361, 300, 126, 154, 91, 140, 142, 272, 65, 56, 268, 385, 434, 255, 441, 328, 227, 7, 162, 428, 256, 228, 365, 468, 442, 129, 352, 443, 417, 388, 255, 100, 292, 106, 208, 500, 465, 293, 282, 445, 180, 149, 374, 313, 153, 45, 494, 255, 260, 150, 372, 30, 210, 362, 50, 236, 396, 472, 261, 384, 457, 159, 1, 369, 255, 260, 307, 192, 75, 165, 496, 277, 399, 201, 321, 178, 466, 259, 502, 448, 76, 438, 233, 184, 424, 240, 379, 310, 356, 168, 454, 296, 506, 507, 94, 452, 6, 97, 438, 116, 406, 230, 459, 357, 348, 47, 349, 395, 137, 483, 455, 166, 498, 176, 306, 438, 116, 320, 245, 499, 413, 316, 107, 378, 122, 482, 473, 430, 397, 124, 111, 109, 213, 185, 23, 135, 339, 143, 182, 386, 249, 267, 370, 193, 83, 315, 375, 204, 19, 312, 164, 391, 347, 221, 460, 31, 389, 278, 450, 103, 89, 335, 254, 36, 383, 112] + 64: [439, 187, 395, 293, 116, 220, 71, 342, 78, 385, 285, 266, 509, 307, 228, 31, 140, 439, 44, 77, 495, 460, 338, 215, 51, 320, 196, 494, 33, 374, 437, 162, 10, 313, 439, 423, 97, 90, 489, 70, 239, 38, 379, 491, 82, 477, 113, 15, 195, 111, 413, 466, 418, 324, 151, 16, 399, 317, 69, 496, 486, 180, 459, 272, 306, 300, 233, 334, 108, 28, 207, 367, 389, 408, 53, 445, 400, 166, 257, 54, 463, 309, 40, 112, 131, 286, 115, 128, 440, 503, 299, 184, 204, 487, 181, 510, 11, 433, 478, 483, 214, 267, 286, 115, 77, 326, 65, 99, 148, 136, 354, 170, 336, 246, 410, 304, 288, 232, 223, 464, 35, 149, 438, 295, 153, 177, 130, 125, 502, 27, 480, 344, 161, 388, 501, 201, 464, 380, 133, 200, 451, 142, 58, 331, 218, 273, 442, 143, 276, 430, 120, 314, 297, 464, 205, 447, 455, 441, 371, 283, 188, 427, 270, 145, 492, 343, 473, 123, 75, 14, 464, 205, 312, 56, 57, 20, 449, 282, 198, 84, 73, 481, 81, 174, 163, 275, 254, 464, 431, 362, 369, 493, 217, 23, 72, 101, 213, 7, 12, 59, 48, 504, 229, 191, 464, 431, 86, 262, 396, 507, 129, 137, 61, 360, 225, 287, 476, 155, 475, 363, 434, 464, 431, 169, 490, 387, 419, 474, 310, 105, 349, 263, 91, 109, 404, 341, 424, 208, 83, 192, 182, 355, 425, 383, 6, 224, 22, 95, 102, 168, 462, 422, 357, 107, 281, 83, 52, 238, 127, 49, 41, 1, 212, 67, 393, 0, 294, 104, 479, 68, 89, 124, 83, 35, 405, 411, 391, 353, 401, 321, 100, 269, 403, 366, 159, 435, 505, 4, 370, 110, 249, 345, 32, 141, 37, 469, 13, 146, 165, 398, 292, 328, 348, 251, 417, 216, 110, 192, 301, 156, 210, 76, 158, 289, 66, 176, 92, 103, 39, 358, 255, 415, 426, 356, 446, 454, 3, 79, 171, 234, 60, 351, 412, 167, 499, 194, 457, 25, 448, 416, 356, 508, 122, 157, 311, 397, 443, 386, 96, 245, 506, 350, 219, 47, 378, 154, 319, 356, 392, 135, 240, 9, 268, 114, 50, 279, 80, 458, 414, 340, 134, 428, 284, 26, 356, 392, 456, 372, 209, 381, 173, 186, 152, 278, 339, 258, 253, 308, 290, 450, 34, 356, 183, 373, 24, 453, 8, 62, 248, 376, 472, 444, 55, 352, 298, 406, 265, 511, 356, 19, 468, 261, 485, 291, 252, 203, 18, 5, 45, 211, 409, 250, 36, 74, 436, 63, 242, 303, 332, 322, 382, 256, 484, 227, 237, 318, 179, 465, 147, 420, 247, 42, 63, 242, 185, 407, 29, 88, 296, 144, 199, 390, 193, 384, 172, 337, 305, 359, 316, 117, 394, 21, 375, 259, 236, 221, 197, 106, 421, 377, 461, 87, 335, 230, 280, 138, 121, 121, 271, 323, 202, 471, 43, 274, 2, 139, 235, 93, 160, 365, 325, 500, 467, 121, 231, 206, 429, 264, 150, 452, 347, 346, 243, 98, 330, 94, 364, 498, 327, 189, 121, 231, 175, 178, 244, 118, 30, 64, 190, 329, 333, 470, 132, 368, 402, 302, 226, 121, 46, 119, 241, 260, 277, 222, 17, 126, 315, 85, 164, 488, 482, 432, 361, 497] + 65: [94, 337, 108, 370, 113, 277, 315, 66, 192, 194, 362, 283, 80, 397, 51, 429, 195, 476, 337, 403, 385, 282, 32, 158, 388, 336, 5, 263, 186, 151, 332, 281, 470, 498, 412, 241, 461, 183, 274, 60, 495, 417, 376, 440, 157, 306, 62, 356, 294, 507, 399, 136, 110, 108, 138, 37, 221, 67, 349, 217, 119, 322, 188, 73, 111, 407, 213, 218, 68, 28, 12, 312, 382, 178, 384, 224, 42, 114, 425, 22, 503, 58, 214, 97, 18, 68, 28, 12, 409, 479, 154, 9, 477, 328, 252, 256, 61, 141, 400, 320, 205, 424, 44, 8, 457, 482, 31, 483, 116, 354, 223, 176, 510, 142, 309, 86, 296, 419, 291, 44, 41, 339, 408, 446, 163, 135, 326, 261, 359, 84, 478, 103, 404, 287, 505, 319, 35, 413, 318, 7, 414, 432, 317, 329, 155, 244, 379, 247, 112, 465, 238, 104, 418, 35, 413, 318, 334, 471, 76, 249, 327, 491, 441, 351, 232, 11, 270, 343, 146, 430, 35, 8, 457, 308, 199, 137, 502, 410, 453, 57, 229, 324, 303, 436, 268, 276, 411, 92, 342, 285, 132, 460, 227, 203, 179, 204, 237, 129, 509, 85, 348, 150, 193, 64, 297, 506, 160, 325, 273, 434, 53, 43, 0, 433, 101, 392, 20, 239, 145, 81, 117, 297, 506, 16, 233, 98, 88, 236, 484, 267, 445, 360, 344, 442, 102, 19, 443, 374, 297, 435, 373, 485, 174, 275, 316, 168, 162, 361, 258, 134, 314, 402, 286, 153, 170, 297, 34, 52, 368, 415, 473, 115, 196, 140, 210, 10, 248, 143, 353, 262, 105, 235, 297, 75, 341, 260, 468, 29, 307, 489, 323, 272, 494, 387, 207, 406, 398, 200, 269, 345, 95, 438, 79, 390, 128, 96, 451, 347, 24, 21, 171, 454, 14, 255, 30, 474, 345, 33, 461, 90, 313, 450, 381, 305, 448, 389, 82, 431, 447, 293, 386, 1, 250, 393, 23, 36, 444, 161, 504, 464, 481, 253, 469, 420, 391, 371, 125, 109, 127, 364, 383, 164, 449, 184, 475, 130, 265, 422, 71, 310, 191, 122, 346, 280, 264, 59, 228, 383, 4, 508, 372, 405, 77, 427, 331, 159, 421, 466, 245, 363, 302, 259, 243, 311, 383, 401, 149, 202, 251, 156, 358, 172, 147, 497, 490, 456, 93, 169, 216, 222, 189, 383, 401, 333, 459, 472, 74, 209, 177, 83, 257, 120, 50, 395, 3, 499, 462, 501, 190, 164, 500, 187, 46, 330, 350, 45, 118, 175, 70, 437, 230, 455, 416, 254, 47, 181, 164, 340, 355, 289, 185, 17, 492, 215, 49, 56, 480, 87, 166, 292, 366, 198, 180, 380, 123, 266, 304, 201, 375, 365, 182, 133, 377, 26, 107, 65, 321, 48, 167, 180, 380, 278, 369, 144, 63, 91, 220, 242, 426, 15, 69, 493, 40, 271, 231, 78, 180, 380, 467, 39, 99, 206, 352, 13, 487, 298, 208, 367, 211, 124, 301, 6, 126, 180, 100, 458, 511, 284, 496, 299, 486, 452, 55, 152, 25, 428, 357, 54, 300, 338, 131, 380, 279, 288, 212, 139, 439, 378, 335, 295, 38, 423, 197, 225, 240, 246, 89, 72, 72, 394, 396, 226, 27, 463, 165, 234, 290, 488, 121, 106, 173, 148, 219, 2] + 66: [357, 264, 63, 191, 326, 40, 200, 466, 189, 138, 506, 356, 37, 313, 13, 222, 148, 67, 395, 372, 425, 251, 413, 91, 105, 315, 265, 360, 10, 155, 140, 86, 418, 314, 67, 395, 339, 345, 502, 82, 410, 285, 57, 259, 494, 44, 223, 159, 419, 431, 204, 67, 244, 430, 463, 461, 234, 456, 453, 273, 120, 136, 2, 427, 328, 30, 338, 387, 67, 244, 346, 441, 253, 176, 49, 297, 289, 103, 55, 298, 469, 460, 364, 358, 46, 67, 416, 370, 432, 23, 486, 353, 378, 78, 146, 12, 112, 391, 134, 440, 449, 335, 67, 416, 306, 0, 459, 309, 407, 468, 275, 175, 382, 424, 128, 484, 214, 336, 25, 67, 292, 127, 89, 318, 247, 333, 385, 300, 406, 325, 151, 5, 240, 471, 399, 113, 271, 477, 241, 126, 133, 408, 235, 380, 472, 379, 157, 392, 340, 308, 20, 31, 490, 271, 446, 84, 202, 180, 269, 256, 220, 454, 114, 500, 384, 390, 19, 511, 445, 404, 374, 464, 224, 178, 166, 205, 433, 83, 301, 462, 73, 352, 368, 474, 342, 106, 195, 374, 276, 435, 509, 434, 11, 169, 362, 299, 396, 348, 9, 93, 249, 66, 478, 479, 374, 477, 510, 312, 193, 160, 50, 39, 183, 465, 173, 14, 444, 145, 481, 284, 80, 443, 152, 401, 229, 279, 381, 426, 187, 58, 501, 254, 198, 268, 296, 270, 232, 327, 170, 238, 179, 33, 448, 376, 111, 491, 24, 27, 457, 498, 98, 305, 233, 377, 95, 170, 143, 221, 121, 483, 415, 87, 393, 208, 287, 447, 349, 26, 71, 359, 261, 375, 170, 262, 489, 504, 450, 217, 488, 467, 92, 283, 310, 366, 22, 18, 344, 196, 252, 170, 262, 188, 394, 409, 452, 316, 68, 499, 272, 492, 475, 266, 219, 38, 263, 317, 170, 245, 505, 237, 508, 174, 267, 77, 135, 108, 129, 293, 17, 228, 186, 212, 278, 170, 245, 400, 162, 15, 16, 7, 373, 246, 6, 104, 119, 331, 117, 125, 97, 123, 53, 303, 81, 429, 164, 96, 100, 28, 115, 277, 171, 107, 153, 405, 215, 197, 319, 90, 59, 194, 184, 291, 211, 388, 230, 43, 421, 332, 294, 131, 458, 412, 47, 255, 90, 59, 21, 493, 62, 3, 311, 116, 250, 323, 414, 231, 355, 365, 330, 225, 411, 90, 206, 109, 227, 321, 110, 124, 476, 302, 239, 101, 64, 144, 389, 304, 60, 258, 274, 59, 437, 42, 281, 99, 130, 442, 290, 470, 280, 288, 177, 213, 54, 369, 79, 75, 139, 402, 473, 158, 137, 45, 350, 132, 398, 51, 122, 52, 168, 61, 286, 192, 141, 163, 190, 496, 201, 322, 8, 487, 149, 503, 69, 65, 337, 41, 48, 507, 172, 141, 163, 436, 295, 34, 156, 72, 282, 216, 347, 363, 209, 438, 423, 417, 210, 451, 141, 343, 242, 182, 35, 85, 29, 367, 94, 324, 56, 482, 142, 439, 403, 383, 329, 141, 343, 32, 397, 36, 76, 260, 420, 422, 226, 147, 1, 118, 161, 199, 307, 455, 236, 236, 167, 248, 386, 185, 480, 354, 495, 218, 243, 497, 154, 203, 150, 361, 70, 236, 236, 181, 320, 341, 428, 351, 485, 371, 334, 207, 102, 88, 257, 74, 4, 165] + 67: [233, 231, 333, 29, 82, 366, 390, 192, 197, 313, 404, 284, 238, 462, 239, 78, 380, 233, 143, 255, 125, 458, 260, 110, 309, 128, 190, 201, 62, 180, 308, 84, 202, 326, 233, 254, 44, 493, 456, 97, 106, 214, 450, 424, 508, 282, 317, 182, 167, 213, 170, 215, 316, 38, 141, 362, 136, 50, 345, 290, 273, 135, 346, 487, 506, 495, 165, 342, 215, 316, 343, 428, 339, 21, 91, 159, 510, 36, 441, 249, 358, 115, 63, 403, 13, 215, 46, 95, 478, 71, 26, 176, 397, 448, 87, 123, 379, 134, 200, 452, 4, 505, 215, 46, 51, 221, 7, 226, 368, 242, 480, 31, 439, 206, 270, 77, 447, 111, 80, 215, 156, 475, 263, 104, 75, 460, 471, 181, 81, 228, 451, 322, 467, 157, 429, 400, 314, 376, 220, 245, 298, 476, 277, 216, 341, 320, 241, 503, 258, 234, 364, 280, 425, 314, 376, 119, 194, 204, 279, 488, 248, 443, 347, 188, 350, 355, 83, 223, 329, 302, 217, 352, 311, 496, 178, 219, 501, 287, 434, 250, 296, 179, 129, 509, 257, 232, 271, 217, 137, 440, 395, 66, 76, 446, 328, 498, 455, 101, 198, 15, 300, 112, 149, 511, 217, 132, 392, 405, 373, 295, 466, 269, 205, 25, 58, 212, 431, 381, 445, 356, 310, 217, 32, 99, 391, 9, 185, 494, 8, 70, 486, 105, 420, 483, 465, 161, 267, 285, 217, 289, 48, 415, 24, 419, 435, 152, 42, 224, 261, 240, 107, 268, 359, 334, 389, 217, 114, 393, 491, 67, 150, 299, 108, 209, 497, 469, 394, 174, 199, 17, 113, 117, 411, 18, 457, 357, 370, 235, 162, 151, 305, 22, 89, 286, 291, 472, 43, 354, 56, 411, 18, 401, 367, 323, 102, 173, 118, 1, 398, 385, 120, 247, 153, 324, 304, 142, 20, 246, 489, 98, 127, 130, 427, 430, 315, 344, 490, 437, 484, 414, 449, 69, 433, 20, 246, 421, 454, 306, 360, 492, 303, 189, 253, 52, 436, 49, 227, 243, 336, 72, 481, 203, 23, 283, 122, 85, 164, 186, 406, 474, 196, 297, 384, 361, 74, 236, 265, 481, 274, 109, 470, 222, 148, 382, 330, 288, 351, 275, 168, 259, 12, 453, 479, 409, 481, 274, 251, 252, 45, 331, 184, 371, 230, 34, 47, 340, 145, 464, 407, 459, 504, 481, 301, 166, 375, 172, 93, 193, 321, 191, 369, 103, 6, 61, 410, 294, 348, 211, 481, 301, 169, 5, 416, 187, 482, 237, 138, 140, 281, 332, 183, 96, 383, 473, 418, 54, 203, 73, 500, 307, 133, 377, 422, 40, 386, 41, 55, 210, 92, 399, 349, 175, 54, 203, 292, 28, 363, 30, 402, 353, 33, 158, 19, 278, 65, 468, 126, 79, 244, 90, 461, 0, 53, 60, 327, 163, 171, 413, 57, 264, 116, 507, 144, 396, 372, 293, 90, 374, 388, 378, 64, 225, 417, 276, 11, 218, 426, 94, 442, 256, 477, 121, 387, 90, 374, 35, 86, 444, 195, 312, 338, 423, 155, 3, 262, 485, 208, 438, 177, 266, 14, 319, 131, 365, 207, 154, 10, 2, 124, 37, 147, 16, 335, 160, 146, 318, 100, 432, 319, 229, 39, 502, 272, 463, 325, 68, 337, 408, 412, 139, 88, 27, 499, 59] + 68: [287, 344, 455, 180, 311, 313, 307, 416, 487, 214, 100, 40, 62, 233, 322, 474, 501, 199, 446, 431, 117, 370, 321, 381, 378, 447, 61, 299, 229, 454, 327, 18, 323, 484, 199, 332, 506, 380, 325, 293, 212, 14, 43, 85, 179, 32, 76, 464, 268, 346, 120, 199, 139, 280, 182, 183, 511, 318, 205, 2, 398, 409, 153, 435, 95, 237, 266, 157, 199, 386, 122, 12, 29, 395, 211, 291, 374, 410, 429, 116, 96, 165, 377, 17, 496, 199, 224, 392, 373, 206, 166, 290, 254, 82, 174, 146, 178, 337, 175, 366, 30, 461, 185, 301, 296, 359, 251, 306, 202, 140, 235, 113, 13, 187, 46, 86, 288, 123, 19, 185, 250, 330, 241, 269, 252, 467, 352, 316, 351, 108, 400, 255, 126, 190, 438, 423, 185, 196, 481, 186, 138, 197, 333, 460, 468, 54, 16, 37, 443, 397, 137, 508, 457, 185, 281, 227, 60, 384, 101, 394, 7, 78, 231, 160, 408, 441, 275, 319, 363, 312, 185, 493, 510, 155, 238, 267, 89, 247, 368, 353, 119, 143, 219, 104, 328, 261, 262, 125, 161, 57, 343, 274, 303, 141, 495, 263, 418, 106, 258, 279, 310, 483, 22, 145, 329, 161, 49, 151, 99, 84, 367, 111, 38, 173, 459, 208, 425, 181, 430, 81, 66, 35, 376, 298, 336, 264, 65, 189, 118, 56, 51, 176, 406, 396, 465, 133, 59, 492, 35, 167, 163, 350, 36, 440, 390, 502, 144, 294, 158, 8, 28, 195, 105, 171, 253, 35, 452, 114, 152, 401, 427, 365, 188, 246, 164, 230, 498, 88, 191, 292, 485, 70, 35, 149, 209, 413, 388, 63, 449, 148, 361, 360, 305, 491, 507, 107, 132, 102, 210, 35, 149, 42, 26, 77, 79, 257, 393, 476, 411, 172, 69, 225, 135, 10, 53, 6, 469, 489, 217, 25, 324, 201, 244, 15, 168, 286, 473, 402, 308, 444, 39, 91, 295, 469, 489, 404, 226, 50, 317, 23, 21, 383, 282, 159, 412, 354, 121, 479, 405, 198, 469, 3, 112, 439, 297, 248, 98, 41, 277, 273, 342, 339, 357, 20, 83, 340, 136, 469, 3, 505, 478, 68, 375, 320, 52, 58, 193, 47, 245, 11, 221, 97, 436, 234, 426, 489, 463, 200, 283, 385, 240, 242, 415, 129, 75, 403, 372, 1, 127, 445, 494, 426, 489, 55, 142, 419, 5, 128, 147, 115, 475, 169, 154, 109, 414, 500, 442, 347, 216, 31, 0, 428, 387, 24, 421, 220, 488, 453, 33, 422, 150, 314, 470, 71, 407, 437, 304, 276, 192, 466, 110, 458, 223, 477, 456, 289, 170, 432, 9, 103, 259, 420, 437, 304, 379, 345, 497, 448, 48, 341, 236, 499, 302, 64, 228, 204, 338, 348, 471, 437, 215, 362, 284, 358, 203, 184, 207, 93, 72, 382, 4, 74, 331, 424, 371, 90, 437, 31, 315, 272, 309, 271, 278, 131, 194, 509, 45, 243, 490, 300, 391, 80, 472, 437, 31, 124, 326, 249, 462, 369, 134, 260, 177, 480, 486, 87, 67, 417, 349, 399, 73, 304, 270, 504, 162, 92, 156, 389, 44, 356, 450, 34, 451, 285, 94, 265, 213, 304, 304, 503, 482, 355, 130, 256, 334, 232, 239, 222, 335, 433, 27, 434, 364, 218] + 69: [184, 465, 155, 182, 133, 144, 457, 191, 169, 243, 215, 20, 83, 87, 41, 490, 116, 184, 465, 412, 211, 315, 218, 368, 262, 45, 244, 379, 239, 312, 38, 196, 384, 28, 184, 189, 256, 290, 232, 61, 26, 343, 446, 308, 37, 75, 496, 508, 10, 40, 270, 35, 43, 203, 266, 57, 466, 421, 338, 0, 483, 310, 507, 344, 11, 154, 229, 510, 23, 43, 462, 173, 370, 299, 454, 393, 386, 485, 400, 475, 451, 291, 330, 417, 209, 7, 142, 125, 29, 106, 136, 413, 199, 511, 86, 126, 110, 499, 363, 221, 437, 450, 7, 342, 97, 331, 121, 159, 210, 134, 129, 202, 360, 452, 295, 484, 284, 324, 351, 88, 374, 188, 453, 281, 397, 434, 231, 406, 328, 332, 280, 476, 350, 222, 420, 77, 88, 153, 505, 377, 84, 168, 337, 190, 481, 260, 348, 349, 282, 167, 287, 135, 477, 88, 128, 371, 502, 214, 489, 346, 394, 494, 13, 355, 341, 6, 418, 318, 235, 112, 88, 443, 373, 76, 139, 409, 60, 247, 245, 178, 79, 447, 325, 234, 205, 321, 208, 319, 140, 238, 223, 98, 177, 361, 298, 486, 62, 445, 89, 179, 264, 39, 204, 148, 319, 140, 250, 63, 69, 252, 141, 433, 271, 339, 487, 67, 488, 254, 219, 464, 124, 319, 374, 365, 96, 419, 160, 163, 66, 403, 334, 195, 206, 491, 353, 207, 410, 102, 157, 48, 104, 463, 278, 279, 372, 93, 217, 51, 439, 259, 176, 109, 307, 101, 482, 157, 48, 4, 165, 99, 227, 162, 389, 500, 411, 467, 50, 119, 143, 64, 367, 68, 275, 183, 358, 302, 73, 180, 145, 181, 504, 425, 187, 54, 390, 426, 14, 416, 503, 275, 320, 8, 137, 461, 94, 258, 220, 366, 59, 30, 311, 436, 114, 185, 147, 474, 275, 320, 276, 448, 226, 105, 186, 347, 95, 429, 212, 53, 166, 460, 90, 18, 58, 275, 492, 369, 408, 322, 398, 359, 352, 509, 391, 233, 470, 15, 225, 198, 44, 388, 275, 213, 237, 277, 16, 138, 493, 449, 376, 194, 405, 468, 301, 303, 383, 161, 21, 275, 22, 430, 12, 49, 115, 72, 288, 336, 329, 335, 151, 228, 471, 356, 34, 3, 441, 183, 156, 289, 122, 273, 246, 293, 52, 242, 81, 469, 272, 375, 432, 297, 396, 192, 150, 309, 402, 263, 269, 495, 200, 378, 146, 19, 249, 25, 438, 286, 431, 456, 192, 150, 201, 381, 392, 314, 130, 240, 36, 415, 111, 216, 257, 103, 197, 107, 120, 192, 150, 296, 435, 459, 440, 407, 251, 458, 401, 92, 255, 31, 9, 478, 428, 42, 5, 150, 340, 300, 333, 423, 117, 175, 55, 131, 305, 1, 65, 74, 224, 455, 422, 5, 150, 27, 427, 82, 230, 193, 172, 164, 479, 149, 274, 292, 480, 327, 171, 17, 395, 385, 152, 33, 174, 414, 283, 498, 108, 424, 2, 304, 78, 501, 497, 399, 317, 357, 80, 323, 380, 24, 345, 70, 118, 91, 158, 236, 253, 56, 444, 404, 267, 472, 357, 80, 248, 382, 100, 294, 261, 127, 265, 387, 326, 241, 85, 113, 268, 306, 46, 357, 80, 170, 313, 285, 71, 132, 123, 506, 316, 364, 354, 32, 442, 362, 473, 47] + 70: [333, 356, 343, 94, 470, 410, 423, 118, 414, 289, 271, 397, 111, 287, 231, 229, 135, 468, 344, 288, 216, 161, 136, 175, 488, 64, 416, 422, 89, 174, 192, 0, 375, 119, 468, 445, 354, 128, 510, 340, 474, 152, 241, 19, 251, 109, 455, 29, 362, 34, 218, 18, 132, 277, 363, 62, 12, 256, 178, 16, 196, 489, 430, 261, 38, 258, 296, 463, 18, 132, 56, 497, 477, 91, 177, 199, 245, 498, 201, 233, 282, 21, 36, 402, 154, 18, 312, 253, 197, 320, 314, 482, 454, 162, 71, 499, 23, 226, 453, 306, 383, 504, 121, 432, 260, 173, 87, 412, 11, 493, 341, 73, 374, 228, 285, 270, 215, 186, 106, 121, 202, 20, 9, 147, 347, 207, 57, 114, 59, 86, 403, 405, 283, 5, 263, 79, 121, 202, 166, 400, 428, 221, 66, 409, 100, 466, 385, 158, 65, 13, 384, 63, 25, 234, 460, 212, 484, 324, 84, 223, 486, 252, 462, 126, 8, 77, 413, 42, 81, 127, 234, 311, 220, 37, 101, 322, 269, 502, 447, 426, 442, 503, 377, 31, 188, 150, 46, 234, 311, 364, 345, 388, 279, 67, 168, 3, 357, 179, 443, 107, 301, 104, 61, 389, 234, 337, 304, 225, 438, 131, 321, 418, 267, 49, 189, 469, 203, 235, 116, 148, 32, 234, 337, 4, 194, 346, 457, 26, 372, 98, 427, 440, 213, 68, 490, 310, 22, 159, 234, 292, 171, 458, 295, 151, 40, 479, 140, 475, 97, 478, 451, 376, 1, 102, 224, 234, 352, 143, 435, 298, 291, 50, 319, 129, 473, 169, 332, 278, 336, 105, 276, 300, 205, 237, 487, 367, 209, 153, 299, 184, 243, 130, 449, 439, 85, 124, 43, 139, 48, 205, 237, 115, 437, 242, 441, 82, 386, 444, 27, 149, 507, 275, 90, 508, 160, 265, 205, 460, 370, 459, 492, 217, 164, 339, 165, 382, 44, 123, 429, 28, 142, 351, 315, 280, 446, 239, 133, 112, 461, 335, 407, 113, 230, 193, 180, 274, 96, 273, 369, 208, 280, 236, 10, 501, 415, 219, 93, 404, 353, 240, 286, 35, 390, 210, 41, 15, 373, 280, 236, 170, 368, 425, 325, 156, 163, 232, 305, 257, 331, 360, 500, 509, 350, 359, 366, 53, 316, 371, 395, 401, 254, 55, 452, 83, 358, 99, 293, 155, 317, 323, 183, 366, 72, 250, 329, 92, 195, 75, 120, 191, 472, 318, 408, 248, 281, 259, 327, 137, 366, 181, 380, 330, 399, 396, 108, 365, 52, 246, 334, 141, 125, 398, 78, 309, 284, 366, 181, 456, 303, 361, 2, 424, 308, 379, 349, 302, 494, 176, 485, 290, 157, 80, 366, 419, 172, 481, 244, 110, 249, 227, 378, 433, 103, 355, 464, 467, 328, 60, 247, 366, 417, 74, 297, 491, 448, 206, 483, 187, 58, 255, 69, 381, 266, 421, 450, 387, 465, 24, 476, 51, 30, 420, 391, 190, 70, 431, 434, 342, 307, 33, 506, 6, 392, 465, 24, 204, 496, 393, 14, 7, 411, 338, 348, 185, 200, 222, 182, 117, 406, 198, 465, 24, 214, 144, 134, 211, 505, 122, 471, 145, 138, 238, 54, 17, 436, 262, 272, 45, 294, 394, 268, 167, 511, 264, 495, 39, 76, 326, 480, 95, 88, 313, 146, 47] + 71: [311, 246, 368, 104, 272, 339, 276, 485, 385, 463, 461, 31, 450, 469, 462, 346, 61, 311, 442, 296, 428, 333, 393, 38, 13, 298, 201, 415, 74, 466, 470, 283, 483, 173, 311, 117, 331, 75, 332, 108, 433, 48, 248, 86, 429, 503, 323, 32, 417, 164, 59, 311, 475, 55, 279, 111, 474, 4, 338, 40, 510, 78, 213, 58, 220, 97, 497, 85, 311, 233, 136, 359, 285, 337, 66, 427, 101, 251, 391, 472, 307, 224, 166, 25, 174, 311, 50, 384, 424, 302, 81, 409, 507, 103, 146, 52, 19, 281, 198, 493, 80, 93, 221, 310, 33, 121, 187, 228, 421, 139, 418, 208, 154, 230, 376, 444, 151, 275, 377, 221, 326, 234, 358, 411, 43, 37, 274, 49, 27, 509, 325, 84, 371, 152, 203, 90, 221, 47, 297, 181, 262, 299, 431, 162, 264, 125, 116, 499, 397, 423, 89, 196, 64, 221, 304, 410, 171, 436, 190, 448, 99, 269, 443, 134, 204, 186, 110, 255, 350, 8, 422, 310, 293, 494, 231, 399, 426, 340, 402, 479, 200, 306, 434, 270, 53, 56, 511, 244, 282, 303, 76, 354, 250, 94, 217, 3, 353, 361, 127, 185, 83, 243, 321, 380, 244, 142, 319, 342, 451, 65, 496, 263, 191, 413, 330, 241, 169, 225, 177, 143, 106, 57, 465, 247, 122, 212, 390, 366, 343, 406, 226, 278, 79, 430, 202, 468, 478, 211, 57, 11, 158, 322, 291, 289, 237, 2, 449, 267, 176, 77, 91, 335, 126, 149, 504, 57, 11, 387, 159, 100, 254, 67, 286, 148, 459, 473, 124, 45, 22, 489, 369, 498, 471, 128, 382, 446, 394, 392, 405, 129, 102, 109, 72, 477, 118, 189, 26, 239, 179, 471, 465, 145, 314, 457, 253, 92, 15, 107, 123, 161, 401, 87, 490, 379, 491, 324, 432, 327, 476, 383, 60, 147, 348, 170, 236, 214, 484, 112, 140, 488, 356, 374, 445, 432, 128, 265, 505, 215, 218, 39, 292, 363, 42, 316, 156, 24, 119, 344, 287, 295, 114, 327, 252, 206, 345, 141, 98, 508, 467, 370, 437, 51, 188, 73, 144, 115, 453, 197, 327, 175, 416, 209, 395, 216, 375, 502, 69, 419, 414, 266, 227, 132, 301, 131, 182, 456, 329, 46, 481, 328, 290, 205, 96, 160, 95, 452, 235, 464, 238, 412, 120, 182, 456, 362, 441, 454, 35, 439, 389, 105, 16, 365, 21, 349, 460, 68, 458, 1, 182, 271, 44, 10, 492, 242, 0, 5, 455, 20, 163, 130, 373, 482, 7, 284, 245, 320, 199, 18, 300, 222, 36, 9, 168, 259, 294, 268, 280, 207, 240, 150, 229, 167, 320, 199, 404, 407, 88, 260, 313, 318, 506, 157, 12, 438, 249, 425, 495, 28, 334, 320, 199, 70, 210, 62, 341, 71, 367, 336, 440, 41, 403, 184, 34, 153, 420, 257, 320, 456, 396, 309, 386, 305, 408, 435, 500, 372, 360, 400, 137, 355, 261, 172, 378, 277, 277, 258, 113, 180, 480, 352, 193, 30, 29, 398, 17, 63, 82, 6, 223, 192, 277, 277, 288, 487, 364, 135, 195, 232, 183, 315, 256, 165, 23, 273, 312, 178, 194, 277, 447, 381, 308, 347, 501, 133, 138, 219, 388, 155, 317, 486, 54, 14, 357, 351] + 72: [163, 363, 67, 397, 68, 442, 58, 43, 508, 390, 369, 504, 29, 463, 356, 109, 1, 116, 364, 487, 469, 489, 488, 106, 278, 344, 125, 282, 360, 448, 471, 482, 169, 135, 33, 99, 422, 502, 18, 35, 382, 302, 0, 233, 347, 332, 96, 216, 492, 30, 226, 33, 331, 368, 325, 473, 242, 511, 457, 433, 486, 316, 172, 72, 494, 161, 23, 306, 33, 345, 258, 198, 236, 418, 153, 149, 415, 38, 83, 273, 127, 217, 218, 277, 77, 33, 34, 405, 310, 130, 186, 283, 328, 330, 89, 256, 55, 202, 339, 94, 31, 70, 33, 364, 158, 111, 95, 26, 10, 133, 257, 235, 404, 191, 289, 271, 307, 110, 453, 372, 99, 62, 179, 417, 366, 80, 79, 343, 193, 159, 113, 37, 16, 284, 252, 165, 436, 292, 176, 406, 128, 50, 45, 196, 274, 455, 414, 24, 174, 44, 194, 300, 56, 436, 292, 246, 175, 255, 152, 98, 265, 472, 102, 40, 458, 462, 132, 160, 475, 413, 436, 408, 148, 126, 227, 92, 493, 232, 484, 288, 245, 12, 46, 142, 320, 392, 449, 309, 435, 318, 506, 403, 88, 308, 241, 357, 143, 145, 78, 162, 350, 150, 97, 327, 20, 435, 148, 209, 215, 182, 90, 154, 427, 336, 496, 3, 304, 314, 243, 124, 477, 14, 57, 176, 250, 354, 470, 137, 214, 119, 268, 136, 51, 75, 351, 146, 93, 65, 501, 362, 329, 370, 178, 122, 378, 481, 2, 456, 377, 138, 447, 485, 225, 86, 177, 501, 324, 73, 335, 170, 323, 115, 167, 247, 205, 259, 240, 64, 439, 28, 9, 195, 6, 362, 367, 219, 261, 223, 183, 63, 156, 379, 296, 315, 374, 285, 139, 294, 87, 321, 249, 254, 144, 108, 416, 385, 437, 164, 224, 428, 444, 380, 104, 281, 287, 313, 321, 129, 480, 322, 22, 168, 407, 103, 396, 101, 342, 468, 495, 41, 120, 230, 361, 321, 129, 181, 204, 105, 192, 74, 17, 210, 107, 13, 267, 352, 187, 440, 42, 47, 321, 190, 221, 451, 270, 49, 301, 36, 52, 505, 239, 411, 465, 184, 499, 121, 290, 321, 54, 305, 207, 398, 500, 384, 84, 82, 4, 371, 151, 337, 155, 464, 303, 441, 321, 450, 490, 402, 432, 419, 393, 253, 509, 483, 479, 112, 298, 200, 340, 430, 166, 321, 450, 185, 510, 189, 452, 208, 291, 297, 280, 5, 423, 117, 497, 264, 434, 91, 333, 266, 454, 399, 429, 478, 231, 39, 355, 461, 438, 180, 234, 476, 312, 229, 81, 333, 266, 426, 85, 53, 299, 260, 394, 197, 388, 66, 48, 400, 498, 248, 263, 373, 238, 319, 71, 375, 203, 474, 76, 467, 118, 421, 212, 334, 19, 206, 460, 326, 295, 238, 7, 140, 27, 341, 279, 134, 381, 359, 11, 269, 228, 446, 220, 349, 491, 424, 412, 319, 401, 445, 286, 466, 21, 131, 389, 100, 365, 311, 141, 431, 459, 358, 346, 383, 383, 201, 213, 32, 272, 251, 147, 317, 211, 276, 114, 61, 244, 275, 237, 420, 383, 503, 363, 395, 199, 443, 173, 222, 59, 338, 293, 410, 8, 60, 25, 386, 409, 383, 503, 201, 123, 507, 348, 376, 69, 15, 157, 387, 262, 391, 188, 171, 425, 353] + 73: [200, 43, 34, 462, 336, 445, 243, 473, 511, 510, 233, 305, 365, 196, 376, 487, 428, 200, 185, 358, 337, 85, 452, 328, 482, 380, 174, 289, 306, 8, 150, 172, 146, 312, 200, 178, 176, 438, 113, 402, 39, 375, 140, 198, 254, 320, 450, 128, 422, 322, 257, 200, 345, 182, 433, 455, 53, 383, 111, 309, 4, 122, 348, 506, 352, 141, 229, 316, 500, 164, 214, 290, 493, 276, 75, 70, 395, 186, 302, 479, 155, 131, 464, 114, 55, 500, 270, 460, 103, 0, 323, 447, 252, 300, 223, 421, 507, 119, 97, 244, 42, 194, 411, 459, 57, 211, 490, 183, 387, 368, 413, 384, 326, 404, 100, 393, 158, 125, 30, 411, 459, 16, 82, 147, 127, 68, 466, 151, 250, 120, 444, 179, 19, 467, 369, 278, 240, 41, 118, 204, 22, 412, 23, 443, 65, 463, 432, 73, 334, 228, 210, 286, 403, 240, 478, 212, 167, 145, 15, 259, 315, 247, 371, 262, 394, 253, 430, 47, 267, 12, 240, 332, 324, 396, 108, 84, 475, 46, 71, 471, 7, 494, 92, 201, 137, 117, 44, 366, 77, 26, 218, 424, 263, 205, 245, 29, 277, 435, 18, 165, 397, 454, 54, 110, 366, 77, 217, 282, 486, 207, 184, 392, 287, 410, 61, 89, 180, 343, 124, 148, 126, 366, 189, 355, 341, 123, 484, 440, 187, 225, 153, 284, 307, 298, 206, 456, 1, 347, 366, 41, 32, 33, 69, 159, 485, 17, 248, 64, 489, 505, 363, 481, 448, 449, 260, 192, 157, 63, 344, 501, 95, 311, 38, 431, 246, 492, 238, 136, 296, 72, 314, 93, 192, 338, 345, 203, 67, 269, 359, 281, 330, 442, 169, 378, 81, 407, 437, 271, 94, 390, 58, 419, 222, 457, 406, 429, 498, 451, 163, 339, 98, 135, 465, 87, 301, 14, 390, 58, 321, 446, 241, 24, 227, 436, 266, 115, 66, 420, 9, 49, 264, 329, 325, 390, 13, 381, 426, 177, 488, 231, 249, 416, 351, 367, 129, 483, 191, 399, 83, 48, 390, 279, 251, 181, 239, 508, 499, 152, 154, 502, 40, 59, 349, 472, 105, 224, 360, 390, 279, 353, 101, 195, 327, 268, 288, 297, 409, 469, 37, 333, 236, 350, 491, 90, 390, 468, 418, 78, 379, 415, 317, 190, 283, 45, 2, 285, 230, 414, 299, 374, 216, 197, 386, 171, 107, 242, 495, 474, 232, 208, 342, 405, 219, 434, 106, 400, 331, 382, 197, 354, 35, 166, 62, 480, 470, 308, 142, 310, 280, 91, 417, 121, 346, 401, 388, 197, 354, 50, 60, 357, 261, 275, 319, 132, 294, 389, 458, 175, 221, 88, 173, 199, 197, 354, 96, 265, 234, 188, 273, 335, 215, 5, 427, 441, 398, 160, 86, 255, 295, 439, 256, 356, 370, 156, 385, 76, 235, 293, 20, 168, 496, 139, 258, 364, 372, 170, 439, 504, 10, 144, 74, 143, 361, 162, 477, 391, 497, 503, 193, 373, 318, 6, 362, 291, 256, 27, 112, 102, 104, 509, 209, 292, 272, 31, 134, 226, 213, 453, 25, 408, 291, 256, 99, 274, 423, 149, 28, 304, 461, 133, 377, 56, 11, 313, 116, 79, 130, 138, 138, 51, 52, 220, 36, 80, 109, 476, 237, 425, 161, 202, 21, 303, 3, 340] + 74: [148, 336, 57, 504, 340, 412, 467, 147, 190, 457, 433, 327, 290, 257, 429, 324, 25, 148, 489, 353, 314, 456, 74, 267, 346, 384, 253, 402, 93, 288, 185, 419, 140, 250, 148, 191, 377, 422, 408, 126, 20, 195, 491, 137, 228, 414, 486, 428, 232, 264, 339, 148, 298, 493, 472, 323, 12, 315, 89, 468, 374, 42, 212, 0, 284, 53, 337, 501, 148, 319, 493, 403, 138, 64, 369, 382, 204, 80, 243, 196, 159, 44, 352, 420, 462, 311, 29, 68, 215, 201, 192, 368, 213, 5, 355, 69, 478, 371, 270, 142, 465, 347, 487, 85, 437, 2, 358, 370, 509, 101, 120, 426, 174, 372, 98, 123, 107, 245, 208, 487, 312, 319, 302, 436, 333, 449, 61, 168, 15, 458, 235, 52, 47, 292, 163, 109, 461, 329, 273, 136, 23, 484, 400, 72, 325, 416, 181, 334, 395, 121, 167, 1, 132, 461, 291, 35, 237, 482, 508, 309, 45, 99, 495, 145, 317, 209, 4, 280, 62, 397, 461, 365, 254, 39, 362, 475, 269, 497, 151, 84, 49, 28, 378, 205, 492, 225, 328, 425, 293, 438, 481, 418, 180, 307, 160, 222, 81, 385, 224, 157, 27, 161, 278, 383, 425, 329, 193, 125, 86, 150, 63, 199, 110, 380, 58, 135, 183, 469, 38, 231, 227, 194, 41, 75, 387, 210, 258, 505, 7, 320, 322, 396, 226, 6, 83, 268, 261, 357, 244, 41, 474, 187, 251, 149, 236, 271, 200, 350, 483, 300, 363, 240, 221, 115, 122, 279, 361, 178, 479, 13, 401, 330, 390, 202, 443, 442, 480, 91, 234, 246, 230, 219, 279, 348, 9, 441, 166, 375, 321, 188, 394, 182, 466, 197, 424, 274, 373, 184, 447, 279, 105, 14, 214, 233, 238, 113, 130, 94, 139, 111, 409, 249, 30, 172, 170, 24, 279, 388, 11, 463, 119, 404, 241, 165, 265, 444, 407, 171, 500, 455, 143, 306, 189, 279, 141, 48, 116, 304, 364, 179, 70, 331, 506, 485, 502, 104, 473, 90, 55, 50, 279, 41, 169, 379, 108, 488, 351, 112, 376, 16, 229, 40, 239, 335, 218, 310, 133, 398, 313, 206, 510, 276, 175, 97, 36, 43, 296, 446, 411, 19, 129, 255, 451, 164, 398, 256, 186, 430, 26, 275, 405, 73, 281, 177, 144, 349, 354, 131, 198, 56, 259, 398, 256, 343, 464, 3, 359, 154, 17, 106, 34, 272, 51, 421, 18, 285, 277, 155, 398, 223, 220, 263, 289, 128, 217, 59, 124, 393, 10, 37, 247, 494, 67, 71, 79, 398, 223, 207, 286, 338, 297, 283, 76, 423, 216, 440, 415, 127, 303, 417, 82, 299, 398, 223, 360, 117, 22, 162, 511, 60, 282, 96, 173, 450, 356, 439, 100, 366, 391, 153, 313, 448, 301, 308, 399, 88, 66, 476, 452, 496, 427, 146, 211, 410, 152, 453, 153, 313, 470, 445, 459, 305, 344, 8, 260, 499, 287, 156, 367, 295, 266, 326, 498, 102, 313, 31, 32, 114, 381, 87, 158, 490, 389, 294, 118, 345, 134, 454, 342, 65, 477, 471, 242, 432, 95, 21, 78, 434, 431, 316, 435, 332, 460, 103, 341, 77, 262, 477, 471, 392, 252, 503, 413, 386, 176, 318, 54, 46, 406, 507, 203, 33, 248, 92] + 75: [189, 90, 445, 304, 44, 124, 65, 421, 221, 94, 88, 102, 275, 206, 153, 457, 332, 284, 90, 276, 141, 73, 15, 42, 70, 423, 426, 176, 74, 300, 441, 384, 232, 313, 301, 165, 181, 307, 54, 66, 21, 324, 468, 322, 104, 113, 172, 485, 413, 339, 462, 464, 249, 181, 192, 410, 155, 51, 402, 382, 466, 448, 272, 266, 0, 46, 453, 291, 464, 249, 475, 398, 144, 478, 63, 24, 106, 265, 159, 362, 334, 274, 219, 282, 405, 464, 507, 459, 425, 118, 309, 204, 69, 399, 171, 293, 346, 183, 100, 454, 226, 10, 464, 507, 459, 177, 14, 64, 188, 437, 357, 511, 359, 84, 35, 227, 173, 244, 161, 378, 497, 460, 186, 501, 184, 406, 509, 196, 329, 41, 299, 492, 320, 458, 387, 439, 378, 497, 68, 8, 331, 355, 280, 278, 158, 13, 198, 444, 403, 281, 502, 297, 200, 286, 19, 185, 182, 418, 354, 30, 407, 49, 416, 133, 510, 432, 433, 55, 1, 294, 350, 242, 470, 484, 493, 315, 508, 381, 271, 383, 424, 167, 131, 314, 110, 223, 277, 350, 317, 211, 415, 237, 352, 6, 430, 89, 116, 164, 417, 288, 287, 310, 312, 208, 350, 152, 351, 199, 123, 443, 260, 38, 389, 201, 125, 34, 138, 341, 229, 449, 330, 157, 333, 222, 101, 58, 261, 85, 81, 197, 306, 452, 436, 476, 193, 136, 263, 374, 477, 333, 259, 194, 420, 262, 270, 338, 180, 483, 60, 503, 372, 45, 139, 368, 29, 377, 498, 202, 489, 336, 53, 327, 146, 375, 428, 233, 31, 472, 169, 394, 87, 239, 377, 498, 268, 224, 481, 343, 396, 347, 166, 56, 80, 107, 471, 419, 212, 57, 2, 377, 143, 285, 486, 148, 142, 251, 429, 450, 404, 302, 388, 348, 370, 393, 103, 390, 209, 195, 499, 482, 112, 366, 283, 342, 135, 252, 391, 434, 179, 163, 467, 119, 82, 209, 195, 39, 495, 52, 174, 311, 147, 435, 279, 451, 3, 230, 97, 220, 408, 290, 43, 491, 376, 455, 126, 295, 111, 316, 215, 305, 431, 37, 20, 323, 254, 335, 217, 43, 132, 241, 447, 365, 61, 371, 246, 401, 33, 117, 392, 128, 480, 303, 151, 456, 43, 132, 175, 115, 360, 373, 414, 67, 114, 203, 345, 465, 273, 96, 150, 187, 129, 43, 132, 328, 234, 292, 78, 156, 257, 7, 364, 216, 243, 318, 506, 25, 62, 178, 83, 491, 105, 40, 236, 349, 160, 23, 162, 92, 488, 356, 190, 5, 76, 12, 210, 48, 9, 469, 168, 121, 298, 149, 214, 386, 379, 218, 250, 504, 122, 325, 369, 353, 137, 9, 59, 440, 505, 258, 98, 93, 490, 256, 248, 358, 47, 363, 170, 344, 91, 253, 264, 235, 108, 409, 225, 109, 267, 412, 18, 319, 494, 77, 380, 79, 367, 140, 253, 9, 228, 32, 130, 337, 269, 446, 238, 245, 385, 321, 473, 438, 134, 397, 427, 28, 264, 72, 361, 340, 27, 487, 496, 442, 99, 296, 463, 16, 22, 95, 75, 422, 28, 264, 72, 207, 474, 36, 4, 26, 400, 154, 145, 289, 213, 127, 120, 11, 17, 71, 240, 185, 479, 326, 500, 86, 395, 255, 461, 205, 411, 231, 247, 308, 191, 50] + 76: [43, 354, 403, 300, 247, 251, 113, 258, 508, 63, 391, 53, 407, 69, 461, 424, 486, 266, 354, 340, 499, 178, 480, 107, 380, 205, 73, 417, 91, 475, 430, 288, 369, 367, 235, 330, 455, 103, 138, 182, 12, 221, 209, 301, 488, 179, 3, 496, 273, 181, 381, 505, 507, 109, 85, 510, 337, 449, 399, 314, 500, 184, 121, 263, 502, 259, 490, 487, 505, 507, 345, 40, 277, 220, 51, 190, 374, 363, 450, 362, 145, 120, 2, 298, 207, 505, 439, 176, 92, 366, 172, 421, 471, 206, 96, 87, 183, 163, 329, 222, 119, 37, 505, 282, 22, 293, 164, 215, 39, 355, 32, 323, 319, 495, 225, 460, 466, 331, 72, 199, 6, 13, 287, 349, 35, 306, 431, 224, 115, 357, 389, 236, 432, 261, 41, 17, 199, 171, 133, 464, 136, 289, 170, 338, 368, 415, 202, 216, 400, 1, 264, 104, 100, 132, 81, 242, 18, 166, 149, 322, 189, 260, 38, 317, 89, 93, 491, 379, 425, 482, 474, 52, 10, 241, 129, 262, 154, 33, 492, 477, 270, 246, 185, 8, 245, 232, 244, 474, 52, 174, 420, 447, 0, 90, 309, 448, 29, 151, 27, 347, 327, 511, 139, 404, 231, 15, 11, 418, 192, 443, 284, 126, 106, 188, 352, 335, 34, 468, 276, 76, 458, 231, 419, 378, 326, 240, 303, 451, 30, 409, 123, 230, 229, 130, 237, 233, 97, 497, 67, 128, 485, 384, 98, 7, 86, 49, 377, 59, 453, 134, 371, 186, 321, 297, 219, 67, 218, 459, 147, 365, 442, 203, 478, 438, 281, 180, 481, 78, 318, 351, 158, 325, 67, 218, 84, 146, 156, 344, 358, 252, 361, 416, 274, 88, 307, 393, 75, 360, 398, 67, 15, 4, 445, 195, 44, 239, 376, 454, 283, 155, 498, 208, 165, 140, 257, 267, 42, 128, 265, 308, 503, 196, 310, 243, 286, 359, 159, 479, 422, 456, 410, 414, 386, 135, 128, 200, 66, 278, 311, 426, 70, 210, 227, 385, 467, 271, 372, 272, 111, 173, 135, 128, 387, 346, 61, 493, 65, 320, 150, 131, 328, 162, 348, 152, 316, 412, 226, 427, 332, 269, 429, 108, 254, 47, 411, 476, 313, 198, 16, 339, 256, 223, 9, 469, 427, 332, 57, 62, 213, 383, 463, 102, 373, 296, 395, 55, 437, 394, 336, 175, 413, 427, 153, 353, 234, 80, 396, 160, 137, 26, 105, 48, 334, 375, 408, 82, 211, 304, 427, 153, 45, 292, 101, 402, 462, 204, 125, 23, 280, 95, 401, 285, 193, 295, 504, 24, 332, 54, 148, 77, 405, 25, 382, 64, 238, 302, 168, 71, 191, 50, 291, 187, 46, 332, 14, 142, 110, 436, 435, 56, 228, 177, 169, 99, 194, 268, 483, 452, 79, 356, 356, 19, 212, 279, 509, 157, 324, 472, 470, 370, 141, 484, 343, 315, 305, 290, 356, 356, 312, 406, 489, 161, 457, 143, 341, 83, 253, 275, 392, 21, 122, 112, 397, 356, 506, 501, 127, 494, 446, 433, 60, 124, 440, 249, 444, 197, 255, 167, 294, 423, 356, 506, 31, 58, 441, 465, 333, 144, 214, 473, 428, 217, 388, 74, 350, 250, 36, 356, 118, 364, 114, 28, 68, 434, 5, 116, 20, 117, 94, 201, 342, 248, 390, 299] + 77: [365, 375, 468, 252, 10, 69, 449, 72, 387, 276, 140, 308, 297, 298, 437, 441, 495, 31, 426, 317, 490, 371, 181, 275, 443, 337, 108, 224, 270, 378, 284, 110, 5, 319, 31, 395, 491, 92, 216, 185, 95, 25, 264, 296, 408, 415, 154, 175, 419, 128, 496, 31, 93, 65, 54, 332, 413, 418, 228, 155, 309, 166, 265, 454, 510, 199, 188, 467, 31, 364, 433, 366, 358, 176, 241, 113, 448, 339, 271, 488, 346, 362, 363, 51, 400, 31, 375, 302, 35, 414, 245, 197, 215, 0, 438, 272, 186, 429, 208, 52, 497, 292, 32, 500, 62, 367, 227, 446, 67, 474, 49, 356, 22, 457, 90, 274, 207, 439, 85, 32, 134, 68, 376, 398, 248, 278, 304, 425, 291, 381, 206, 163, 115, 82, 255, 390, 32, 56, 268, 322, 451, 196, 310, 139, 282, 137, 116, 494, 348, 469, 405, 327, 357, 32, 161, 149, 130, 160, 180, 393, 463, 164, 57, 452, 204, 305, 177, 460, 313, 287, 32, 24, 138, 11, 283, 184, 509, 170, 159, 341, 36, 253, 379, 269, 162, 4, 71, 32, 426, 119, 293, 331, 169, 385, 464, 102, 338, 355, 124, 380, 173, 354, 434, 99, 190, 34, 122, 485, 214, 352, 374, 445, 182, 473, 114, 150, 148, 46, 37, 142, 12, 190, 34, 314, 246, 312, 76, 508, 458, 48, 14, 316, 74, 324, 101, 30, 479, 326, 47, 23, 299, 201, 91, 106, 179, 421, 242, 183, 70, 28, 249, 435, 442, 303, 484, 218, 315, 399, 290, 235, 41, 477, 111, 98, 59, 340, 347, 489, 244, 470, 288, 498, 218, 315, 203, 368, 383, 257, 396, 212, 152, 103, 240, 506, 165, 382, 361, 262, 492, 218, 146, 174, 260, 444, 360, 406, 359, 43, 261, 462, 105, 38, 294, 187, 226, 344, 392, 315, 377, 40, 325, 172, 79, 482, 456, 336, 77, 453, 2, 504, 178, 384, 109, 353, 58, 502, 27, 247, 9, 493, 230, 17, 306, 16, 33, 295, 191, 450, 345, 229, 353, 58, 311, 126, 243, 234, 407, 96, 213, 289, 42, 1, 219, 328, 7, 397, 401, 353, 231, 423, 44, 459, 320, 394, 193, 73, 318, 236, 466, 83, 350, 330, 431, 55, 353, 231, 205, 194, 20, 198, 60, 410, 156, 157, 447, 239, 80, 471, 26, 307, 370, 151, 432, 6, 86, 351, 476, 75, 412, 100, 300, 403, 18, 349, 125, 279, 335, 153, 151, 430, 147, 123, 285, 258, 84, 503, 136, 342, 259, 88, 107, 232, 440, 133, 507, 505, 432, 480, 97, 427, 254, 94, 132, 321, 29, 78, 225, 210, 211, 192, 129, 168, 424, 369, 8, 121, 436, 416, 238, 50, 420, 237, 478, 256, 486, 388, 333, 273, 280, 511, 220, 266, 409, 167, 461, 45, 118, 373, 66, 158, 104, 171, 39, 223, 63, 391, 511, 369, 483, 402, 372, 233, 222, 263, 19, 143, 267, 487, 472, 329, 286, 15, 386, 511, 369, 87, 465, 481, 81, 221, 217, 428, 389, 277, 117, 417, 145, 189, 281, 455, 511, 369, 120, 112, 135, 127, 53, 501, 61, 404, 251, 422, 3, 499, 21, 475, 202, 511, 369, 200, 64, 141, 195, 343, 89, 411, 250, 131, 209, 144, 323, 301, 334, 13] + 78: [339, 35, 141, 79, 350, 150, 1, 149, 274, 213, 298, 212, 138, 6, 250, 275, 128, 339, 378, 37, 130, 504, 114, 331, 454, 165, 159, 157, 447, 51, 289, 257, 234, 104, 339, 277, 348, 426, 253, 263, 5, 341, 464, 506, 287, 256, 248, 153, 42, 328, 129, 339, 187, 181, 371, 184, 146, 206, 463, 223, 268, 444, 292, 465, 383, 305, 461, 407, 339, 29, 29, 279, 396, 338, 137, 429, 227, 462, 492, 11, 392, 499, 85, 23, 500, 210, 244, 434, 473, 349, 16, 509, 60, 39, 241, 66, 416, 158, 490, 64, 423, 74, 435, 124, 321, 196, 205, 140, 152, 486, 89, 264, 356, 134, 293, 312, 202, 211, 73, 435, 142, 193, 90, 59, 19, 195, 61, 467, 294, 217, 68, 511, 118, 77, 122, 72, 435, 142, 57, 453, 411, 306, 276, 191, 92, 316, 230, 448, 207, 420, 133, 221, 95, 94, 108, 497, 9, 111, 232, 445, 485, 239, 18, 408, 178, 351, 209, 428, 136, 387, 94, 108, 336, 508, 419, 281, 421, 8, 332, 286, 48, 4, 201, 31, 84, 427, 402, 94, 258, 269, 176, 151, 284, 389, 358, 326, 272, 451, 247, 369, 365, 404, 288, 28, 94, 361, 503, 498, 233, 366, 14, 410, 299, 393, 285, 354, 384, 45, 355, 82, 100, 94, 52, 346, 345, 340, 172, 507, 307, 228, 101, 359, 199, 22, 335, 27, 304, 123, 94, 405, 375, 433, 65, 120, 162, 436, 311, 343, 483, 0, 243, 86, 116, 145, 309, 94, 124, 260, 455, 148, 401, 377, 143, 179, 76, 488, 81, 58, 204, 20, 224, 119, 251, 317, 43, 88, 87, 323, 222, 334, 216, 452, 318, 167, 197, 49, 443, 320, 295, 41, 194, 235, 46, 479, 107, 203, 2, 360, 489, 362, 12, 192, 322, 347, 246, 219, 41, 34, 163, 300, 131, 477, 337, 78, 190, 21, 400, 270, 501, 44, 475, 177, 62, 41, 317, 430, 154, 139, 236, 327, 379, 252, 13, 249, 364, 240, 502, 259, 265, 440, 186, 194, 15, 237, 425, 484, 218, 446, 412, 3, 314, 254, 415, 333, 505, 93, 491, 324, 50, 7, 38, 262, 127, 75, 214, 493, 417, 432, 30, 460, 25, 113, 441, 438, 324, 171, 169, 449, 173, 390, 208, 70, 160, 71, 117, 308, 494, 56, 480, 381, 67, 324, 424, 395, 442, 147, 33, 155, 439, 271, 374, 290, 99, 357, 344, 431, 310, 301, 324, 194, 325, 144, 329, 83, 266, 98, 313, 456, 372, 296, 399, 474, 36, 156, 283, 32, 50, 382, 183, 105, 394, 352, 397, 267, 273, 231, 481, 126, 458, 10, 457, 471, 391, 50, 466, 437, 319, 388, 102, 495, 482, 185, 180, 226, 40, 96, 26, 380, 161, 413, 24, 115, 315, 472, 422, 330, 242, 376, 182, 280, 53, 409, 91, 200, 109, 225, 413, 255, 278, 175, 110, 164, 470, 215, 112, 121, 303, 229, 468, 363, 189, 476, 450, 413, 255, 188, 370, 398, 17, 385, 125, 132, 47, 97, 135, 220, 166, 403, 170, 373, 342, 24, 261, 103, 406, 386, 80, 291, 496, 174, 282, 367, 54, 106, 297, 63, 168, 24, 24, 353, 487, 245, 469, 368, 55, 238, 302, 510, 198, 459, 418, 69, 414, 478] + 79: [301, 2, 476, 417, 211, 422, 425, 370, 357, 3, 263, 463, 409, 173, 431, 466, 16, 301, 148, 374, 65, 496, 37, 483, 453, 343, 420, 444, 428, 253, 116, 96, 312, 367, 301, 196, 313, 76, 306, 467, 321, 337, 229, 61, 257, 410, 69, 352, 163, 24, 267, 301, 256, 48, 171, 140, 284, 188, 342, 366, 432, 151, 138, 54, 474, 314, 299, 19, 87, 6, 58, 440, 260, 182, 172, 273, 79, 464, 243, 402, 204, 295, 261, 91, 66, 87, 32, 336, 49, 63, 308, 230, 119, 317, 59, 300, 115, 143, 236, 68, 25, 364, 259, 350, 281, 468, 0, 56, 12, 401, 210, 279, 495, 454, 246, 98, 101, 105, 254, 259, 45, 285, 484, 481, 477, 216, 412, 304, 381, 31, 393, 335, 411, 222, 190, 22, 212, 92, 109, 201, 50, 391, 415, 330, 112, 155, 462, 84, 247, 383, 97, 436, 179, 212, 277, 472, 108, 264, 447, 67, 70, 203, 489, 53, 388, 291, 478, 104, 93, 189, 5, 144, 423, 294, 446, 494, 455, 408, 220, 296, 376, 449, 251, 334, 433, 170, 83, 5, 144, 35, 77, 322, 249, 378, 125, 237, 160, 234, 394, 326, 413, 226, 480, 361, 5, 235, 135, 392, 283, 324, 195, 469, 338, 358, 442, 90, 180, 400, 375, 293, 382, 5, 309, 458, 329, 311, 121, 57, 178, 340, 399, 139, 491, 131, 437, 114, 258, 28, 5, 145, 274, 13, 110, 60, 305, 434, 41, 365, 207, 38, 136, 225, 407, 282, 75, 498, 269, 209, 200, 353, 368, 117, 147, 331, 29, 181, 429, 85, 55, 217, 142, 7, 498, 269, 416, 238, 202, 265, 27, 303, 430, 169, 137, 166, 26, 30, 197, 33, 327, 498, 269, 418, 161, 488, 271, 403, 486, 492, 126, 99, 102, 176, 64, 280, 146, 389, 498, 185, 310, 174, 344, 288, 369, 452, 47, 387, 503, 275, 39, 445, 122, 11, 17, 498, 510, 153, 465, 244, 34, 223, 15, 398, 395, 456, 290, 10, 228, 397, 278, 511, 485, 118, 227, 348, 1, 384, 443, 127, 242, 111, 73, 133, 499, 362, 120, 232, 239, 485, 509, 475, 287, 297, 129, 177, 198, 341, 82, 134, 158, 191, 471, 490, 193, 470, 159, 315, 441, 18, 103, 214, 508, 150, 107, 175, 360, 74, 292, 162, 36, 149, 113, 159, 315, 78, 71, 359, 44, 448, 245, 130, 351, 106, 132, 157, 213, 438, 473, 192, 159, 505, 168, 266, 482, 123, 100, 183, 349, 487, 156, 21, 318, 248, 62, 86, 356, 159, 505, 289, 451, 219, 167, 493, 205, 497, 339, 500, 154, 460, 406, 302, 252, 354, 159, 118, 9, 51, 286, 43, 386, 506, 439, 377, 233, 218, 215, 427, 385, 46, 298, 396, 270, 426, 52, 424, 255, 380, 507, 221, 332, 405, 502, 390, 347, 307, 328, 268, 319, 270, 346, 504, 419, 165, 250, 333, 124, 421, 81, 88, 435, 23, 262, 94, 457, 319, 270, 152, 459, 40, 128, 345, 323, 373, 194, 72, 501, 404, 4, 206, 164, 186, 319, 270, 379, 240, 42, 272, 20, 141, 89, 325, 414, 208, 14, 80, 276, 184, 372, 270, 270, 450, 316, 187, 363, 95, 241, 355, 320, 224, 199, 479, 231, 8, 371, 461] + 80: [101, 10, 399, 500, 111, 276, 477, 163, 262, 346, 118, 178, 23, 22, 426, 304, 412, 101, 10, 453, 484, 228, 339, 459, 147, 98, 222, 209, 94, 160, 493, 291, 122, 248, 101, 189, 386, 115, 63, 18, 425, 387, 405, 116, 336, 195, 357, 461, 499, 407, 29, 101, 385, 404, 281, 470, 31, 253, 266, 316, 267, 439, 35, 326, 190, 390, 86, 283, 101, 247, 172, 389, 323, 245, 58, 307, 100, 140, 91, 372, 311, 193, 353, 149, 128, 101, 177, 394, 124, 341, 53, 171, 8, 423, 103, 142, 418, 351, 411, 379, 270, 146, 101, 49, 380, 96, 331, 393, 350, 3, 158, 155, 391, 184, 424, 318, 508, 502, 89, 7, 478, 421, 452, 42, 416, 396, 85, 476, 6, 43, 165, 16, 295, 450, 27, 294, 7, 300, 28, 81, 510, 226, 279, 480, 400, 168, 11, 24, 363, 465, 494, 135, 162, 120, 83, 337, 282, 57, 303, 199, 250, 321, 489, 236, 174, 288, 12, 497, 145, 298, 120, 83, 15, 106, 214, 161, 436, 188, 415, 335, 254, 278, 150, 371, 138, 179, 289, 194, 30, 19, 284, 173, 292, 187, 364, 324, 265, 167, 460, 79, 441, 59, 269, 360, 220, 221, 474, 32, 251, 302, 273, 216, 449, 227, 169, 403, 467, 314, 17, 328, 482, 220, 30, 239, 462, 240, 509, 448, 44, 40, 486, 504, 134, 197, 348, 127, 123, 507, 0, 308, 230, 121, 361, 156, 1, 141, 182, 231, 382, 119, 413, 176, 264, 71, 132, 0, 255, 427, 299, 61, 21, 45, 38, 490, 183, 78, 301, 368, 93, 75, 130, 242, 0, 255, 74, 481, 466, 274, 451, 287, 217, 496, 332, 406, 263, 376, 495, 322, 309, 0, 338, 352, 438, 271, 422, 34, 208, 36, 65, 51, 414, 432, 443, 428, 207, 381, 238, 308, 102, 4, 95, 185, 458, 285, 354, 440, 90, 107, 175, 181, 358, 305, 223, 238, 308, 330, 166, 395, 374, 501, 334, 252, 92, 237, 232, 219, 218, 464, 257, 492, 143, 66, 401, 345, 327, 365, 293, 286, 359, 229, 244, 26, 468, 419, 343, 47, 249, 143, 82, 475, 260, 104, 325, 296, 201, 430, 109, 202, 191, 342, 136, 60, 388, 84, 143, 82, 485, 377, 498, 68, 431, 241, 110, 233, 375, 312, 80, 133, 349, 315, 153, 143, 82, 367, 131, 206, 50, 246, 420, 456, 408, 137, 356, 180, 435, 329, 204, 506, 41, 366, 33, 457, 447, 224, 152, 20, 355, 151, 268, 317, 200, 69, 97, 203, 505, 41, 66, 362, 410, 463, 157, 196, 442, 320, 333, 488, 117, 73, 306, 384, 170, 340, 310, 9, 429, 417, 434, 112, 234, 319, 409, 126, 259, 491, 37, 72, 14, 77, 455, 25, 205, 275, 503, 70, 164, 402, 243, 56, 46, 211, 347, 76, 139, 487, 99, 454, 25, 261, 394, 13, 290, 144, 370, 397, 383, 313, 64, 373, 258, 471, 212, 114, 433, 483, 483, 472, 378, 148, 198, 88, 446, 256, 469, 213, 277, 55, 154, 39, 67, 54, 483, 5, 392, 437, 297, 473, 369, 210, 186, 62, 87, 444, 129, 125, 2, 445, 48, 483, 5, 398, 159, 479, 108, 235, 52, 344, 192, 280, 215, 272, 113, 511, 225, 105] + 81: [206, 0, 315, 22, 228, 10, 185, 27, 57, 441, 46, 139, 84, 404, 476, 96, 182, 206, 350, 36, 39, 151, 83, 209, 463, 194, 437, 9, 451, 74, 448, 112, 301, 428, 206, 318, 263, 226, 116, 88, 414, 82, 296, 181, 13, 219, 483, 295, 61, 499, 482, 206, 103, 236, 462, 371, 135, 213, 174, 42, 449, 426, 395, 29, 306, 326, 490, 436, 206, 24, 157, 300, 484, 58, 370, 257, 276, 353, 264, 51, 111, 415, 14, 114, 505, 206, 389, 118, 80, 368, 397, 91, 78, 510, 113, 119, 359, 41, 170, 193, 143, 502, 44, 238, 367, 311, 125, 250, 481, 133, 348, 508, 195, 432, 146, 454, 175, 130, 43, 44, 421, 5, 360, 500, 280, 366, 382, 439, 63, 246, 50, 199, 343, 313, 189, 1, 44, 31, 261, 407, 275, 319, 251, 297, 460, 4, 237, 501, 255, 383, 25, 67, 244, 44, 380, 37, 498, 291, 90, 196, 433, 469, 317, 93, 401, 108, 15, 16, 412, 320, 89, 457, 356, 332, 227, 425, 216, 169, 243, 394, 38, 288, 435, 488, 445, 363, 410, 89, 221, 164, 124, 161, 165, 293, 144, 473, 149, 205, 424, 258, 273, 77, 200, 211, 89, 365, 278, 252, 465, 362, 329, 121, 385, 417, 208, 321, 396, 232, 19, 64, 17, 142, 223, 405, 358, 187, 461, 403, 485, 333, 190, 262, 497, 188, 122, 40, 8, 45, 142, 53, 423, 134, 427, 328, 503, 147, 458, 411, 33, 495, 234, 76, 23, 339, 272, 142, 53, 235, 335, 338, 66, 138, 470, 474, 224, 141, 324, 316, 450, 468, 336, 453, 142, 11, 431, 210, 62, 413, 253, 247, 137, 287, 21, 309, 179, 418, 65, 452, 390, 142, 11, 491, 109, 28, 408, 72, 456, 443, 381, 478, 265, 215, 374, 49, 98, 378, 142, 457, 167, 398, 308, 282, 218, 145, 69, 2, 314, 361, 166, 305, 260, 322, 352, 422, 128, 173, 391, 120, 248, 327, 434, 430, 12, 136, 267, 110, 400, 87, 494, 95, 229, 127, 222, 7, 186, 354, 212, 377, 123, 148, 373, 104, 304, 115, 204, 270, 30, 229, 127, 325, 176, 330, 245, 217, 386, 341, 279, 479, 399, 240, 99, 303, 466, 406, 229, 128, 214, 464, 26, 307, 52, 159, 140, 337, 323, 183, 496, 372, 59, 239, 154, 55, 107, 506, 32, 81, 444, 419, 156, 438, 477, 85, 259, 254, 225, 152, 342, 302, 55, 107, 201, 277, 442, 472, 197, 480, 86, 153, 48, 60, 171, 274, 384, 158, 294, 55, 106, 375, 409, 6, 269, 299, 168, 73, 180, 20, 266, 203, 3, 334, 376, 47, 55, 345, 75, 298, 92, 281, 346, 230, 177, 387, 504, 241, 402, 70, 289, 344, 492, 55, 345, 242, 101, 54, 71, 132, 416, 369, 455, 420, 172, 102, 493, 100, 388, 283, 447, 507, 105, 292, 256, 56, 349, 347, 68, 271, 35, 285, 312, 231, 198, 429, 34, 290, 163, 489, 94, 184, 129, 220, 178, 471, 202, 331, 155, 509, 162, 379, 511, 446, 290, 163, 117, 284, 459, 392, 487, 233, 355, 97, 192, 440, 467, 486, 310, 18, 160, 163, 163, 286, 340, 79, 150, 351, 207, 249, 131, 357, 268, 364, 475, 191, 393, 126] + 82: [78, 431, 24, 97, 383, 509, 105, 39, 121, 259, 12, 269, 93, 418, 110, 169, 421, 251, 250, 53, 162, 98, 485, 146, 147, 400, 61, 387, 200, 191, 366, 158, 33, 425, 251, 250, 452, 192, 480, 152, 46, 331, 178, 401, 354, 144, 91, 406, 87, 409, 382, 209, 225, 228, 337, 58, 221, 287, 267, 397, 16, 386, 427, 367, 159, 300, 341, 396, 209, 239, 53, 504, 301, 429, 506, 357, 41, 288, 365, 455, 478, 226, 280, 453, 26, 49, 5, 299, 405, 281, 179, 330, 168, 51, 130, 128, 444, 38, 138, 450, 255, 113, 49, 5, 247, 142, 486, 293, 143, 100, 482, 66, 438, 112, 311, 304, 398, 195, 283, 49, 422, 59, 81, 118, 329, 261, 435, 379, 355, 60, 102, 82, 347, 291, 79, 150, 49, 422, 59, 268, 45, 277, 402, 182, 242, 186, 122, 18, 37, 44, 208, 258, 210, 462, 160, 63, 467, 116, 393, 305, 312, 412, 489, 481, 334, 50, 238, 343, 463, 260, 295, 160, 472, 10, 68, 154, 369, 80, 111, 30, 407, 380, 196, 227, 457, 64, 181, 35, 356, 13, 511, 184, 171, 198, 106, 134, 484, 65, 317, 236, 270, 381, 1, 73, 35, 356, 175, 32, 76, 441, 264, 275, 167, 229, 428, 475, 416, 384, 298, 212, 432, 35, 372, 342, 263, 307, 490, 224, 29, 156, 500, 451, 332, 390, 96, 84, 235, 492, 35, 213, 249, 497, 52, 55, 461, 302, 364, 193, 345, 433, 177, 95, 107, 145, 361, 35, 423, 83, 14, 254, 2, 262, 124, 222, 285, 176, 240, 40, 207, 437, 388, 8, 35, 423, 15, 292, 244, 217, 446, 363, 125, 319, 103, 417, 170, 253, 483, 328, 385, 35, 284, 404, 17, 336, 265, 42, 241, 394, 99, 420, 148, 464, 163, 473, 468, 436, 35, 160, 472, 62, 0, 19, 335, 442, 75, 389, 6, 377, 459, 203, 353, 496, 499, 220, 356, 70, 286, 351, 22, 123, 233, 414, 426, 502, 320, 20, 137, 498, 271, 327, 362, 339, 408, 303, 373, 246, 399, 447, 189, 413, 216, 201, 507, 276, 256, 443, 344, 362, 469, 476, 127, 199, 340, 54, 164, 141, 202, 90, 359, 257, 410, 333, 458, 323, 161, 314, 479, 67, 72, 231, 488, 3, 172, 245, 21, 139, 371, 133, 115, 508, 28, 161, 495, 9, 395, 140, 126, 248, 325, 69, 131, 411, 445, 215, 149, 185, 415, 296, 161, 324, 155, 310, 313, 465, 477, 57, 392, 306, 294, 494, 109, 101, 129, 34, 266, 151, 370, 326, 391, 88, 460, 85, 237, 493, 174, 424, 316, 360, 290, 350, 491, 308, 77, 470, 510, 243, 157, 375, 108, 205, 135, 272, 297, 487, 56, 368, 279, 282, 153, 77, 419, 214, 252, 136, 448, 358, 183, 315, 4, 165, 309, 466, 117, 278, 440, 166, 77, 219, 456, 120, 289, 94, 454, 48, 503, 23, 43, 74, 273, 449, 232, 318, 31, 77, 370, 439, 346, 188, 434, 374, 187, 501, 119, 132, 204, 321, 349, 376, 230, 11, 274, 86, 505, 190, 474, 206, 27, 322, 114, 223, 234, 194, 25, 348, 36, 180, 471, 274, 86, 218, 47, 104, 173, 197, 7, 211, 352, 403, 378, 92, 89, 430, 338, 71] + 83: [59, 274, 85, 100, 91, 319, 27, 29, 82, 103, 293, 145, 93, 105, 89, 209, 462, 449, 274, 231, 347, 165, 341, 458, 384, 479, 2, 5, 156, 352, 261, 309, 323, 326, 447, 90, 266, 245, 52, 308, 1, 55, 88, 483, 44, 276, 244, 213, 179, 248, 120, 447, 459, 127, 310, 425, 187, 430, 71, 136, 17, 116, 387, 368, 80, 439, 294, 221, 447, 428, 450, 272, 125, 214, 492, 304, 392, 385, 321, 275, 191, 236, 334, 331, 452, 447, 378, 151, 223, 376, 126, 372, 350, 124, 302, 152, 119, 299, 409, 14, 383, 95, 447, 378, 58, 482, 463, 237, 117, 239, 224, 247, 263, 336, 349, 484, 497, 474, 446, 499, 90, 490, 205, 367, 297, 398, 411, 390, 301, 475, 20, 211, 286, 104, 429, 238, 122, 472, 374, 401, 96, 175, 268, 267, 465, 12, 431, 256, 314, 46, 348, 162, 481, 122, 285, 322, 233, 109, 77, 230, 31, 406, 65, 451, 184, 16, 163, 393, 56, 22, 122, 142, 176, 415, 443, 444, 75, 53, 208, 335, 364, 38, 442, 157, 250, 81, 246, 122, 142, 183, 284, 131, 371, 113, 229, 307, 339, 243, 354, 94, 432, 25, 222, 436, 122, 423, 132, 292, 381, 373, 92, 206, 186, 355, 73, 115, 254, 435, 139, 377, 424, 148, 365, 507, 51, 340, 30, 60, 23, 70, 107, 418, 360, 212, 318, 149, 141, 496, 148, 159, 161, 185, 3, 15, 4, 404, 269, 380, 510, 201, 48, 330, 253, 405, 338, 123, 359, 386, 344, 495, 110, 466, 34, 172, 67, 130, 271, 300, 49, 84, 150, 240, 123, 508, 455, 258, 62, 303, 353, 204, 11, 7, 101, 146, 28, 227, 480, 363, 26, 123, 395, 273, 226, 351, 288, 35, 471, 13, 43, 260, 391, 6, 493, 501, 467, 427, 123, 365, 402, 509, 98, 69, 434, 433, 24, 155, 486, 500, 216, 320, 505, 154, 8, 19, 394, 488, 251, 97, 278, 468, 134, 135, 153, 408, 283, 18, 241, 403, 441, 305, 19, 394, 108, 270, 389, 138, 290, 264, 178, 219, 279, 188, 358, 494, 438, 478, 311, 19, 359, 57, 262, 504, 413, 329, 86, 182, 498, 64, 21, 503, 203, 410, 421, 317, 19, 359, 215, 210, 315, 61, 228, 281, 180, 416, 282, 171, 412, 457, 99, 333, 280, 167, 491, 388, 133, 177, 193, 337, 259, 357, 399, 10, 473, 345, 460, 407, 68, 287, 167, 370, 362, 396, 194, 74, 160, 111, 207, 242, 174, 366, 32, 324, 445, 78, 129, 167, 397, 328, 375, 36, 440, 235, 170, 54, 37, 234, 66, 327, 63, 456, 461, 249, 167, 397, 0, 83, 312, 511, 39, 489, 147, 118, 502, 342, 325, 356, 361, 400, 128, 296, 491, 346, 102, 469, 277, 232, 289, 196, 265, 420, 121, 454, 485, 164, 217, 76, 42, 158, 218, 437, 257, 298, 252, 506, 306, 40, 9, 168, 169, 144, 470, 343, 199, 42, 491, 140, 143, 190, 313, 137, 33, 166, 426, 202, 476, 379, 197, 332, 50, 195, 79, 255, 225, 114, 464, 181, 422, 112, 198, 45, 448, 87, 72, 200, 106, 316, 477, 79, 255, 220, 41, 417, 291, 189, 192, 173, 382, 453, 414, 487, 295, 369, 47, 419] + 84: [402, 400, 338, 50, 498, 53, 135, 112, 140, 97, 96, 500, 278, 212, 62, 258, 374, 402, 370, 195, 245, 89, 260, 38, 103, 413, 269, 504, 61, 330, 415, 367, 361, 471, 402, 323, 445, 189, 117, 396, 313, 208, 45, 165, 178, 385, 460, 92, 429, 254, 329, 402, 323, 301, 40, 24, 43, 470, 490, 248, 210, 474, 221, 404, 437, 447, 492, 18, 70, 193, 202, 46, 136, 99, 468, 22, 424, 511, 88, 218, 328, 64, 49, 478, 151, 70, 200, 322, 131, 497, 190, 143, 369, 430, 181, 263, 66, 138, 13, 233, 407, 141, 316, 249, 299, 231, 162, 6, 446, 381, 318, 220, 377, 489, 130, 113, 378, 232, 287, 316, 448, 296, 176, 3, 186, 333, 59, 423, 359, 288, 398, 39, 16, 412, 93, 464, 344, 357, 419, 242, 68, 237, 262, 312, 216, 85, 94, 360, 389, 410, 501, 485, 279, 344, 394, 491, 298, 309, 56, 508, 403, 155, 399, 8, 177, 121, 308, 147, 305, 101, 344, 394, 282, 373, 365, 17, 205, 503, 74, 55, 477, 225, 171, 127, 139, 391, 25, 344, 183, 187, 109, 188, 320, 123, 146, 219, 137, 80, 33, 426, 475, 42, 105, 387, 179, 227, 304, 48, 384, 108, 481, 372, 252, 100, 317, 438, 336, 54, 95, 444, 362, 179, 75, 297, 149, 428, 71, 335, 57, 15, 368, 214, 311, 84, 153, 314, 465, 488, 10, 157, 148, 243, 268, 250, 51, 41, 170, 255, 44, 293, 493, 306, 230, 192, 454, 79, 182, 455, 285, 300, 340, 119, 174, 507, 163, 346, 169, 122, 467, 72, 382, 395, 79, 182, 116, 371, 152, 29, 435, 266, 228, 375, 355, 272, 77, 363, 348, 409, 204, 79, 358, 417, 456, 341, 164, 142, 78, 81, 175, 422, 36, 145, 201, 90, 267, 461, 132, 315, 98, 386, 319, 414, 173, 180, 291, 134, 342, 449, 463, 111, 47, 350, 166, 132, 292, 104, 76, 191, 418, 334, 354, 261, 479, 499, 294, 433, 67, 436, 277, 126, 132, 211, 107, 321, 376, 427, 466, 480, 125, 487, 337, 240, 432, 35, 63, 114, 453, 132, 211, 246, 270, 172, 150, 310, 124, 420, 459, 450, 206, 392, 364, 167, 510, 12, 132, 69, 198, 425, 37, 271, 411, 234, 401, 388, 128, 23, 115, 34, 443, 343, 194, 132, 69, 251, 290, 281, 30, 416, 203, 1, 302, 451, 289, 332, 229, 484, 160, 58, 132, 182, 457, 28, 207, 393, 9, 102, 473, 283, 349, 352, 199, 236, 106, 483, 351, 339, 5, 197, 506, 494, 326, 509, 87, 83, 331, 168, 223, 82, 86, 264, 325, 120, 339, 356, 273, 52, 0, 441, 486, 439, 495, 405, 431, 20, 11, 380, 31, 286, 421, 339, 476, 295, 7, 406, 390, 482, 196, 303, 458, 502, 161, 434, 275, 215, 213, 156, 257, 5, 2, 73, 244, 347, 324, 440, 217, 469, 239, 91, 383, 4, 265, 21, 129, 257, 5, 185, 159, 442, 154, 241, 226, 184, 353, 133, 224, 158, 27, 118, 32, 505, 257, 5, 345, 238, 247, 276, 222, 256, 259, 496, 60, 26, 397, 366, 280, 253, 307, 257, 5, 110, 408, 327, 452, 472, 235, 379, 274, 209, 65, 284, 19, 144, 14, 462] + 85: [462, 501, 227, 329, 34, 484, 140, 81, 206, 145, 253, 170, 289, 78, 17, 42, 190, 21, 148, 74, 55, 146, 407, 382, 308, 327, 126, 361, 171, 505, 358, 447, 414, 479, 21, 148, 74, 471, 493, 150, 340, 33, 167, 276, 244, 19, 306, 85, 291, 295, 323, 255, 378, 346, 372, 214, 261, 430, 20, 58, 41, 50, 245, 162, 469, 92, 262, 91, 255, 136, 297, 193, 236, 44, 269, 189, 336, 316, 93, 77, 155, 307, 5, 510, 424, 255, 136, 449, 318, 40, 186, 164, 304, 248, 324, 432, 322, 283, 106, 82, 274, 480, 255, 14, 501, 161, 26, 98, 300, 503, 220, 376, 394, 474, 49, 483, 265, 364, 279, 87, 384, 341, 268, 397, 218, 491, 104, 116, 433, 448, 195, 259, 157, 115, 127, 422, 87, 233, 27, 412, 319, 59, 119, 263, 337, 288, 124, 36, 66, 152, 428, 455, 464, 87, 439, 369, 442, 113, 494, 135, 496, 350, 217, 73, 250, 53, 445, 129, 486, 3, 87, 439, 379, 177, 415, 509, 454, 216, 251, 134, 79, 260, 29, 287, 100, 249, 112, 87, 117, 10, 172, 438, 25, 360, 229, 130, 254, 383, 202, 121, 356, 310, 257, 230, 87, 365, 80, 234, 373, 191, 315, 83, 347, 408, 231, 497, 284, 223, 31, 459, 237, 87, 138, 22, 16, 476, 72, 192, 472, 334, 30, 406, 330, 142, 405, 401, 144, 473, 87, 378, 105, 118, 47, 477, 492, 154, 125, 487, 153, 339, 57, 502, 88, 266, 4, 181, 354, 294, 6, 224, 420, 380, 357, 444, 211, 101, 293, 399, 335, 241, 489, 111, 456, 353, 209, 328, 168, 35, 332, 468, 158, 103, 411, 2, 452, 178, 232, 0, 312, 456, 52, 174, 197, 398, 355, 381, 221, 466, 286, 460, 389, 443, 352, 15, 302, 299, 456, 354, 348, 419, 185, 63, 431, 89, 467, 200, 511, 43, 110, 226, 400, 247, 222, 349, 94, 163, 423, 238, 441, 457, 235, 51, 333, 141, 208, 390, 90, 207, 374, 114, 349, 203, 271, 133, 386, 344, 24, 277, 440, 377, 159, 225, 46, 84, 351, 485, 278, 349, 239, 298, 320, 290, 18, 131, 175, 242, 305, 97, 367, 395, 418, 23, 139, 210, 349, 239, 128, 345, 13, 451, 458, 388, 149, 309, 215, 280, 375, 196, 313, 120, 363, 349, 285, 246, 48, 137, 325, 184, 201, 45, 343, 143, 475, 426, 435, 179, 495, 446, 349, 285, 410, 243, 252, 228, 362, 199, 481, 396, 425, 122, 62, 32, 37, 482, 436, 349, 353, 465, 499, 156, 385, 8, 132, 205, 240, 282, 267, 65, 38, 11, 296, 427, 326, 75, 102, 292, 417, 183, 508, 409, 331, 461, 413, 169, 54, 270, 76, 437, 488, 68, 393, 198, 421, 213, 470, 64, 416, 453, 387, 7, 160, 368, 28, 314, 366, 67, 68, 107, 258, 187, 56, 204, 275, 301, 402, 403, 264, 404, 463, 273, 194, 96, 12, 68, 391, 176, 1, 123, 370, 99, 504, 219, 429, 173, 165, 70, 272, 317, 321, 108, 281, 180, 71, 507, 392, 500, 9, 506, 95, 188, 478, 359, 69, 109, 342, 498, 311, 86, 180, 147, 61, 256, 212, 151, 303, 338, 39, 434, 182, 60, 490, 371, 450, 166] + 86: [36, 431, 130, 183, 131, 476, 48, 298, 253, 362, 233, 193, 68, 322, 34, 459, 199, 36, 431, 323, 332, 389, 449, 218, 397, 168, 301, 61, 35, 196, 143, 142, 245, 195, 372, 364, 236, 186, 267, 283, 30, 137, 458, 151, 259, 6, 134, 121, 479, 316, 391, 372, 364, 114, 464, 65, 455, 52, 187, 268, 94, 209, 493, 203, 71, 194, 167, 81, 372, 107, 290, 333, 277, 382, 202, 308, 225, 84, 89, 346, 39, 439, 285, 373, 37, 372, 474, 370, 436, 363, 281, 60, 185, 128, 407, 338, 230, 62, 313, 242, 40, 484, 372, 396, 244, 227, 490, 302, 375, 257, 181, 321, 339, 326, 21, 70, 374, 178, 368, 330, 456, 500, 497, 170, 162, 216, 417, 139, 234, 87, 275, 499, 361, 461, 106, 133, 217, 212, 2, 15, 358, 140, 83, 376, 469, 421, 284, 393, 509, 153, 472, 150, 271, 217, 456, 103, 222, 260, 159, 176, 446, 73, 410, 390, 465, 189, 329, 250, 460, 457, 4, 122, 157, 211, 97, 320, 57, 488, 511, 175, 25, 355, 118, 319, 498, 297, 144, 4, 212, 171, 95, 491, 59, 213, 270, 108, 291, 246, 129, 430, 76, 12, 252, 265, 462, 0, 251, 77, 174, 310, 201, 486, 158, 425, 120, 342, 384, 416, 279, 3, 294, 462, 0, 7, 309, 188, 101, 341, 504, 495, 192, 116, 468, 343, 219, 50, 353, 112, 462, 122, 171, 127, 78, 357, 160, 502, 336, 190, 14, 8, 180, 147, 200, 264, 198, 11, 223, 303, 266, 295, 239, 146, 420, 164, 154, 463, 51, 433, 74, 489, 340, 152, 427, 507, 432, 46, 197, 448, 443, 31, 44, 90, 29, 208, 138, 481, 415, 429, 240, 427, 379, 466, 405, 286, 428, 231, 26, 172, 317, 483, 311, 337, 278, 119, 473, 477, 334, 123, 156, 63, 256, 471, 177, 454, 38, 5, 409, 258, 110, 450, 413, 452, 288, 334, 237, 398, 207, 419, 383, 377, 163, 115, 402, 395, 85, 442, 113, 510, 111, 356, 334, 318, 299, 238, 408, 161, 423, 482, 16, 325, 220, 441, 352, 351, 145, 23, 42, 334, 45, 54, 350, 20, 422, 135, 444, 204, 494, 206, 380, 306, 365, 400, 72, 403, 334, 210, 56, 371, 305, 10, 426, 179, 438, 274, 487, 262, 347, 312, 345, 485, 98, 334, 210, 132, 263, 136, 205, 348, 215, 261, 58, 141, 79, 451, 9, 314, 328, 226, 105, 282, 184, 53, 18, 496, 66, 388, 13, 22, 117, 392, 406, 411, 166, 155, 27, 105, 272, 424, 169, 224, 182, 359, 125, 214, 235, 418, 247, 93, 96, 480, 412, 505, 75, 282, 126, 369, 280, 324, 501, 100, 293, 33, 41, 99, 470, 386, 315, 273, 28, 47, 394, 109, 228, 269, 64, 17, 232, 475, 492, 506, 92, 445, 360, 508, 437, 254, 47, 394, 104, 88, 249, 276, 435, 453, 367, 149, 287, 1, 335, 300, 304, 82, 307, 47, 394, 401, 124, 221, 289, 349, 248, 67, 385, 399, 148, 344, 24, 378, 229, 447, 47, 55, 165, 91, 354, 366, 434, 241, 49, 102, 191, 69, 86, 440, 414, 478, 387, 47, 282, 32, 467, 292, 327, 381, 404, 503, 173, 19, 331, 80, 243, 296, 43, 255] + 87: [188, 234, 344, 491, 283, 419, 167, 308, 170, 233, 238, 220, 91, 411, 421, 325, 80, 188, 234, 39, 156, 97, 184, 5, 88, 469, 457, 213, 507, 219, 350, 142, 275, 173, 188, 182, 50, 31, 253, 32, 295, 255, 476, 45, 154, 72, 211, 440, 113, 401, 108, 188, 463, 229, 85, 200, 252, 58, 73, 162, 57, 286, 485, 246, 281, 399, 329, 290, 188, 174, 111, 394, 216, 199, 98, 141, 276, 160, 437, 260, 138, 368, 69, 347, 261, 188, 92, 134, 509, 257, 452, 2, 56, 207, 17, 354, 82, 100, 462, 497, 16, 273, 466, 454, 395, 409, 126, 502, 323, 342, 41, 264, 10, 372, 341, 183, 410, 37, 479, 466, 454, 7, 76, 159, 240, 148, 327, 33, 61, 424, 93, 391, 125, 433, 314, 292, 131, 490, 117, 3, 470, 434, 280, 8, 15, 313, 65, 459, 465, 315, 44, 309, 237, 254, 441, 403, 356, 408, 392, 311, 352, 140, 250, 508, 164, 120, 47, 106, 62, 322, 247, 198, 122, 381, 393, 180, 12, 302, 304, 19, 206, 429, 443, 118, 331, 201, 94, 247, 89, 503, 55, 163, 137, 287, 481, 363, 471, 242, 102, 351, 499, 178, 510, 367, 310, 236, 124, 472, 226, 277, 445, 232, 208, 383, 262, 90, 303, 380, 258, 307, 166, 493, 415, 25, 387, 420, 190, 293, 319, 60, 248, 432, 274, 297, 243, 451, 121, 40, 493, 415, 224, 500, 332, 285, 294, 139, 114, 9, 251, 271, 218, 413, 128, 404, 353, 221, 112, 42, 501, 30, 107, 63, 145, 358, 66, 320, 153, 194, 431, 291, 21, 177, 221, 112, 330, 279, 136, 388, 196, 496, 81, 369, 132, 71, 191, 51, 109, 101, 373, 333, 374, 460, 214, 306, 84, 402, 478, 172, 189, 484, 149, 477, 345, 130, 417, 147, 333, 377, 133, 427, 346, 269, 28, 278, 185, 366, 26, 384, 397, 230, 54, 316, 52, 333, 447, 453, 197, 435, 146, 489, 129, 179, 245, 312, 365, 449, 123, 450, 480, 265, 333, 343, 324, 38, 103, 390, 426, 328, 249, 202, 425, 77, 336, 187, 326, 370, 29, 333, 59, 157, 78, 115, 24, 436, 428, 340, 364, 361, 75, 348, 360, 165, 498, 144, 333, 59, 105, 355, 143, 376, 430, 475, 349, 14, 337, 438, 359, 34, 22, 357, 227, 168, 36, 256, 11, 195, 362, 259, 385, 298, 83, 181, 375, 266, 212, 506, 86, 171, 168, 95, 305, 150, 423, 225, 215, 228, 300, 96, 74, 231, 289, 127, 20, 418, 398, 168, 95, 134, 43, 382, 241, 284, 464, 448, 396, 209, 1, 444, 4, 371, 467, 487, 296, 511, 25, 379, 455, 217, 67, 474, 223, 468, 495, 158, 176, 272, 151, 338, 186, 296, 48, 87, 110, 175, 155, 318, 152, 414, 192, 53, 456, 299, 494, 442, 400, 282, 296, 36, 92, 486, 317, 210, 116, 169, 193, 35, 335, 119, 488, 13, 422, 339, 321, 204, 161, 224, 473, 504, 268, 0, 288, 104, 244, 270, 49, 205, 46, 203, 492, 263, 222, 222, 99, 483, 439, 386, 405, 505, 458, 301, 135, 389, 267, 446, 239, 235, 70, 222, 222, 412, 334, 6, 79, 407, 416, 18, 461, 23, 27, 406, 64, 68, 482, 378] + 88: [469, 217, 163, 433, 141, 90, 318, 195, 246, 232, 12, 134, 110, 475, 453, 461, 329, 469, 4, 482, 429, 312, 247, 452, 154, 328, 1, 471, 396, 166, 395, 384, 149, 111, 469, 4, 163, 69, 454, 477, 31, 117, 130, 173, 459, 289, 379, 327, 319, 144, 410, 340, 234, 167, 38, 201, 79, 159, 419, 468, 20, 491, 97, 311, 101, 11, 230, 505, 340, 52, 167, 484, 16, 487, 29, 481, 265, 137, 374, 10, 415, 470, 233, 92, 509, 485, 132, 360, 400, 136, 501, 181, 458, 411, 96, 304, 282, 88, 366, 368, 250, 142, 273, 231, 489, 125, 179, 207, 380, 494, 372, 437, 460, 284, 65, 229, 324, 252, 497, 273, 344, 17, 18, 316, 227, 473, 99, 36, 106, 73, 446, 62, 431, 60, 334, 22, 416, 25, 126, 342, 53, 81, 186, 133, 369, 398, 320, 511, 219, 210, 268, 407, 506, 416, 264, 404, 483, 300, 401, 326, 104, 2, 115, 228, 262, 198, 169, 240, 343, 135, 294, 25, 465, 439, 205, 102, 486, 46, 152, 193, 417, 170, 308, 112, 14, 203, 118, 290, 43, 301, 108, 64, 189, 388, 402, 280, 271, 23, 131, 225, 255, 423, 463, 356, 338, 43, 98, 105, 361, 256, 214, 479, 322, 261, 424, 467, 80, 464, 215, 160, 462, 353, 85, 314, 480, 499, 503, 48, 476, 430, 9, 408, 387, 498, 333, 420, 263, 139, 353, 200, 191, 455, 236, 371, 156, 358, 444, 292, 357, 422, 55, 123, 370, 244, 218, 353, 200, 191, 383, 199, 212, 8, 83, 275, 33, 488, 376, 220, 42, 124, 414, 456, 120, 172, 489, 504, 114, 339, 493, 449, 226, 129, 103, 122, 405, 224, 147, 27, 178, 75, 457, 363, 32, 37, 153, 211, 82, 174, 30, 378, 359, 386, 495, 351, 59, 309, 75, 77, 436, 116, 213, 95, 138, 128, 63, 403, 450, 377, 448, 277, 61, 336, 305, 75, 77, 436, 394, 330, 94, 508, 267, 445, 349, 295, 165, 490, 270, 298, 157, 78, 345, 399, 161, 432, 148, 3, 57, 286, 303, 127, 381, 283, 13, 441, 428, 204, 307, 345, 7, 35, 447, 54, 249, 176, 373, 254, 66, 89, 24, 323, 500, 93, 71, 260, 345, 21, 418, 315, 421, 47, 392, 390, 440, 239, 281, 278, 310, 87, 237, 288, 221, 313, 70, 302, 182, 502, 241, 438, 347, 155, 472, 385, 76, 362, 435, 266, 413, 34, 313, 70, 184, 45, 44, 348, 297, 293, 15, 143, 478, 406, 107, 325, 190, 238, 507, 313, 70, 216, 86, 26, 74, 0, 397, 259, 257, 188, 269, 91, 306, 434, 442, 426, 313, 399, 192, 185, 352, 109, 56, 409, 253, 393, 222, 332, 208, 365, 321, 272, 243, 140, 70, 51, 350, 206, 121, 202, 425, 337, 28, 427, 177, 287, 50, 389, 68, 364, 285, 251, 355, 40, 258, 162, 168, 235, 84, 151, 335, 5, 6, 223, 164, 119, 146, 285, 251, 492, 113, 150, 354, 171, 242, 39, 187, 276, 382, 291, 158, 474, 346, 248, 285, 175, 19, 145, 183, 49, 245, 41, 296, 299, 391, 375, 274, 367, 443, 331, 279, 285, 341, 194, 451, 100, 180, 72, 197, 67, 496, 209, 412, 58, 510, 466, 196, 317] + 89: [344, 222, 398, 326, 329, 111, 189, 352, 291, 449, 417, 439, 38, 356, 338, 203, 318, 345, 222, 456, 431, 378, 467, 140, 469, 215, 154, 246, 216, 202, 94, 259, 49, 479, 460, 144, 437, 412, 416, 14, 71, 274, 221, 80, 45, 443, 252, 228, 365, 394, 257, 51, 144, 437, 60, 105, 476, 100, 366, 106, 275, 455, 327, 413, 346, 488, 168, 261, 158, 369, 264, 236, 473, 442, 78, 138, 340, 381, 401, 181, 314, 250, 306, 16, 267, 158, 311, 116, 357, 109, 15, 234, 363, 135, 278, 213, 421, 485, 303, 434, 315, 452, 158, 90, 42, 20, 91, 280, 382, 69, 268, 68, 108, 93, 156, 499, 11, 299, 218, 158, 90, 42, 121, 141, 147, 293, 271, 308, 360, 198, 76, 377, 170, 429, 47, 247, 468, 369, 265, 450, 34, 281, 243, 436, 178, 200, 361, 160, 391, 411, 461, 402, 155, 270, 510, 52, 384, 130, 153, 386, 81, 419, 336, 414, 477, 480, 26, 285, 163, 296, 184, 359, 82, 422, 440, 323, 284, 217, 272, 289, 428, 282, 324, 364, 172, 504, 337, 184, 359, 17, 24, 484, 21, 465, 353, 48, 511, 305, 269, 325, 132, 373, 73, 79, 300, 63, 32, 424, 466, 35, 212, 40, 430, 162, 320, 501, 210, 95, 459, 509, 474, 27, 0, 389, 9, 500, 4, 388, 505, 219, 374, 368, 28, 3, 214, 56, 290, 177, 27, 397, 112, 74, 317, 486, 348, 122, 279, 396, 235, 225, 390, 206, 493, 148, 107, 164, 464, 489, 209, 232, 43, 426, 37, 145, 126, 12, 182, 258, 84, 88, 230, 98, 164, 103, 283, 249, 497, 118, 114, 65, 333, 120, 195, 321, 133, 367, 385, 435, 174, 164, 103, 502, 454, 237, 251, 151, 44, 22, 115, 458, 392, 294, 77, 224, 137, 362, 61, 312, 478, 196, 288, 494, 297, 242, 150, 169, 508, 322, 55, 75, 186, 238, 136, 61, 464, 87, 262, 86, 193, 167, 472, 507, 339, 67, 29, 128, 438, 395, 463, 92, 72, 420, 159, 102, 355, 244, 370, 399, 117, 266, 441, 149, 427, 5, 256, 226, 498, 72, 310, 332, 482, 183, 113, 302, 207, 393, 409, 165, 495, 342, 192, 371, 307, 379, 72, 310, 343, 8, 457, 33, 229, 142, 123, 62, 166, 263, 50, 89, 13, 492, 66, 72, 239, 124, 127, 406, 254, 2, 453, 185, 53, 30, 176, 179, 408, 403, 39, 83, 72, 239, 304, 97, 188, 161, 173, 423, 334, 10, 131, 19, 23, 58, 273, 175, 64, 255, 25, 448, 503, 405, 481, 475, 372, 292, 204, 152, 180, 487, 319, 470, 350, 248, 255, 420, 104, 191, 330, 36, 197, 7, 410, 404, 31, 201, 245, 57, 99, 211, 59, 199, 25, 119, 231, 462, 129, 85, 341, 354, 400, 415, 349, 331, 444, 208, 347, 54, 425, 25, 328, 1, 18, 125, 171, 190, 46, 139, 301, 6, 223, 491, 451, 313, 110, 376, 233, 407, 41, 240, 483, 358, 496, 286, 143, 295, 227, 445, 375, 380, 490, 432, 241, 241, 52, 316, 471, 276, 309, 101, 383, 298, 351, 260, 187, 253, 134, 418, 506, 241, 233, 17, 287, 70, 277, 146, 446, 433, 387, 205, 157, 220, 335, 96, 194, 447] + 90: [451, 18, 74, 311, 235, 295, 47, 377, 118, 309, 500, 46, 237, 373, 86, 486, 10, 451, 180, 176, 16, 246, 287, 116, 206, 156, 21, 299, 75, 281, 323, 129, 167, 480, 451, 392, 165, 56, 298, 418, 173, 426, 498, 380, 138, 374, 502, 503, 148, 248, 209, 451, 346, 63, 457, 286, 381, 19, 417, 28, 220, 42, 166, 0, 509, 187, 145, 34, 430, 354, 44, 294, 210, 45, 305, 95, 413, 20, 419, 190, 469, 355, 399, 449, 483, 430, 18, 176, 352, 99, 313, 341, 89, 371, 400, 107, 321, 147, 506, 241, 388, 201, 245, 354, 175, 436, 504, 193, 137, 158, 466, 335, 383, 401, 272, 5, 439, 183, 278, 443, 410, 63, 172, 179, 202, 191, 49, 327, 149, 284, 283, 115, 87, 460, 431, 127, 32, 151, 11, 331, 17, 310, 219, 228, 319, 123, 265, 491, 168, 171, 121, 276, 8, 32, 328, 406, 250, 349, 412, 48, 240, 501, 414, 232, 105, 416, 259, 224, 462, 216, 32, 328, 98, 96, 143, 387, 345, 465, 213, 64, 422, 258, 455, 427, 27, 112, 393, 476, 38, 403, 271, 475, 267, 102, 402, 128, 304, 360, 242, 150, 301, 390, 297, 244, 476, 151, 11, 163, 239, 6, 397, 251, 363, 505, 396, 131, 104, 389, 198, 359, 456, 4, 122, 125, 92, 29, 22, 72, 66, 160, 266, 53, 479, 395, 446, 494, 152, 507, 4, 122, 125, 225, 361, 159, 490, 405, 222, 356, 57, 37, 372, 215, 227, 459, 78, 90, 253, 454, 79, 452, 279, 378, 247, 106, 40, 496, 205, 340, 296, 194, 243, 217, 90, 316, 82, 164, 231, 433, 221, 62, 425, 394, 252, 140, 170, 15, 409, 322, 132, 470, 55, 120, 139, 269, 2, 169, 437, 196, 93, 257, 110, 435, 366, 130, 429, 467, 73, 103, 33, 441, 332, 238, 330, 25, 101, 188, 376, 478, 161, 351, 174, 80, 83, 73, 103, 428, 492, 50, 338, 144, 275, 108, 423, 154, 85, 497, 471, 223, 197, 382, 73, 291, 303, 314, 357, 290, 447, 60, 270, 334, 464, 342, 178, 415, 315, 76, 70, 73, 52, 434, 511, 263, 484, 185, 68, 488, 261, 386, 69, 317, 445, 282, 111, 155, 212, 370, 450, 292, 510, 134, 207, 324, 336, 43, 181, 77, 26, 424, 13, 337, 325, 293, 370, 300, 407, 113, 7, 474, 1, 302, 268, 461, 391, 408, 347, 508, 444, 218, 375, 370, 119, 141, 448, 200, 65, 277, 362, 136, 124, 369, 318, 256, 91, 384, 186, 499, 58, 162, 473, 177, 432, 364, 109, 204, 326, 133, 236, 289, 229, 308, 285, 368, 51, 58, 398, 482, 421, 135, 71, 249, 195, 339, 442, 255, 350, 333, 485, 358, 36, 51, 58, 199, 30, 31, 493, 365, 182, 348, 59, 203, 142, 23, 88, 189, 84, 192, 117, 100, 81, 262, 438, 208, 3, 54, 344, 214, 260, 495, 487, 472, 126, 41, 67, 117, 100, 411, 329, 379, 9, 367, 353, 489, 385, 440, 468, 458, 234, 184, 97, 280, 117, 100, 343, 39, 153, 274, 12, 35, 157, 146, 312, 94, 477, 320, 226, 481, 230, 14, 14, 264, 463, 254, 211, 24, 288, 233, 114, 61, 453, 273, 306, 404, 420, 307] + 91: [471, 367, 398, 407, 462, 73, 274, 363, 323, 335, 453, 126, 444, 280, 476, 152, 391, 65, 119, 307, 78, 339, 301, 430, 172, 231, 137, 261, 70, 169, 162, 296, 411, 368, 466, 61, 381, 303, 400, 80, 93, 440, 389, 87, 309, 188, 314, 245, 275, 92, 38, 112, 194, 361, 3, 209, 6, 289, 35, 185, 392, 31, 467, 68, 370, 208, 198, 213, 112, 51, 481, 197, 165, 238, 425, 276, 385, 40, 33, 388, 154, 111, 329, 340, 432, 112, 61, 8, 433, 268, 67, 378, 30, 251, 414, 102, 58, 195, 311, 510, 205, 199, 153, 28, 157, 179, 394, 234, 355, 439, 190, 110, 382, 158, 286, 427, 105, 365, 495, 153, 266, 64, 178, 265, 25, 345, 123, 348, 459, 260, 155, 79, 399, 336, 97, 34, 369, 28, 367, 95, 504, 21, 189, 24, 271, 84, 4, 468, 17, 282, 460, 419, 421, 50, 451, 144, 148, 218, 54, 284, 486, 299, 130, 285, 10, 424, 318, 257, 106, 203, 212, 142, 383, 193, 470, 75, 132, 404, 18, 250, 352, 237, 202, 357, 37, 287, 230, 164, 127, 503, 211, 305, 216, 445, 56, 362, 458, 494, 243, 485, 326, 351, 99, 312, 164, 127, 90, 96, 417, 347, 118, 283, 204, 354, 181, 429, 505, 297, 47, 2, 395, 164, 142, 144, 16, 436, 9, 262, 396, 255, 364, 342, 52, 304, 300, 379, 128, 384, 500, 225, 487, 151, 81, 461, 39, 406, 405, 488, 360, 321, 134, 71, 114, 86, 502, 221, 163, 306, 281, 20, 509, 104, 101, 77, 393, 322, 139, 53, 295, 168, 377, 29, 221, 225, 383, 174, 235, 333, 125, 288, 60, 341, 474, 36, 356, 313, 380, 207, 435, 264, 85, 511, 480, 248, 416, 74, 26, 497, 242, 23, 438, 7, 493, 182, 376, 226, 264, 85, 27, 490, 107, 89, 136, 196, 442, 415, 349, 233, 83, 192, 450, 478, 5, 264, 85, 434, 149, 113, 13, 366, 247, 120, 320, 331, 49, 372, 46, 334, 219, 484, 330, 76, 338, 508, 200, 426, 431, 146, 103, 140, 409, 66, 109, 124, 201, 19, 171, 330, 499, 161, 387, 491, 310, 14, 358, 244, 63, 324, 319, 115, 272, 371, 448, 220, 330, 186, 449, 397, 302, 55, 332, 258, 117, 501, 232, 422, 223, 277, 131, 269, 479, 330, 186, 1, 62, 59, 180, 463, 69, 278, 239, 133, 294, 410, 316, 343, 492, 48, 330, 337, 403, 315, 437, 443, 184, 473, 298, 160, 147, 129, 166, 222, 350, 256, 465, 330, 337, 328, 373, 45, 428, 464, 183, 446, 506, 498, 91, 0, 167, 206, 325, 482, 401, 374, 42, 82, 138, 44, 454, 191, 236, 229, 290, 327, 254, 472, 121, 293, 291, 227, 210, 32, 145, 150, 175, 156, 402, 12, 135, 420, 263, 375, 22, 240, 386, 15, 227, 210, 489, 100, 11, 214, 456, 141, 270, 418, 228, 475, 413, 447, 170, 477, 249, 227, 374, 423, 452, 267, 344, 292, 215, 273, 108, 390, 469, 441, 187, 455, 72, 346, 457, 457, 279, 408, 98, 253, 116, 217, 94, 173, 308, 177, 88, 122, 241, 252, 507, 457, 457, 176, 246, 43, 41, 317, 483, 359, 259, 353, 496, 143, 224, 159, 57, 412] + 92: [200, 73, 181, 41, 133, 81, 324, 403, 198, 182, 269, 4, 505, 438, 316, 363, 19, 30, 495, 92, 390, 511, 501, 274, 24, 52, 294, 137, 361, 148, 245, 349, 128, 58, 30, 51, 482, 145, 493, 423, 266, 509, 504, 14, 155, 201, 118, 328, 164, 33, 235, 32, 475, 212, 343, 467, 102, 260, 378, 306, 276, 168, 312, 492, 371, 5, 121, 333, 32, 285, 398, 62, 203, 185, 214, 29, 196, 43, 95, 271, 434, 152, 99, 485, 334, 263, 141, 247, 151, 463, 470, 193, 392, 109, 70, 360, 254, 413, 18, 167, 139, 183, 263, 141, 236, 244, 63, 291, 79, 35, 76, 365, 337, 425, 323, 179, 310, 184, 161, 267, 8, 202, 508, 335, 87, 369, 449, 405, 309, 13, 424, 302, 502, 352, 258, 278, 267, 8, 498, 436, 293, 345, 57, 178, 455, 399, 348, 169, 85, 248, 11, 54, 84, 267, 484, 409, 295, 321, 103, 44, 347, 439, 261, 282, 249, 341, 206, 180, 131, 86, 218, 47, 112, 451, 289, 231, 268, 283, 205, 500, 325, 199, 230, 46, 157, 211, 406, 218, 499, 120, 171, 415, 55, 412, 217, 304, 6, 494, 379, 37, 288, 385, 300, 486, 218, 227, 262, 173, 374, 340, 338, 250, 447, 440, 61, 228, 190, 382, 15, 315, 77, 218, 227, 292, 195, 140, 241, 98, 364, 176, 105, 158, 135, 472, 452, 170, 107, 305, 218, 242, 389, 90, 381, 395, 80, 397, 138, 370, 330, 93, 127, 126, 437, 7, 191, 218, 242, 384, 40, 68, 426, 88, 224, 53, 496, 443, 229, 297, 123, 117, 448, 257, 218, 428, 432, 469, 286, 1, 506, 465, 298, 149, 213, 446, 111, 362, 256, 108, 422, 218, 428, 265, 91, 113, 414, 418, 420, 275, 471, 110, 344, 421, 478, 66, 373, 453, 488, 65, 459, 197, 177, 143, 75, 450, 2, 487, 174, 317, 97, 124, 237, 83, 393, 59, 65, 280, 433, 410, 301, 78, 259, 187, 358, 376, 404, 479, 156, 402, 94, 277, 59, 65, 122, 419, 69, 255, 154, 26, 166, 10, 460, 16, 461, 417, 351, 71, 3, 147, 159, 25, 441, 319, 307, 125, 497, 273, 219, 400, 431, 375, 356, 215, 60, 322, 320, 159, 48, 483, 377, 114, 17, 20, 391, 489, 39, 490, 162, 160, 192, 42, 146, 326, 194, 129, 272, 342, 444, 350, 165, 221, 281, 442, 383, 64, 457, 380, 9, 31, 326, 27, 368, 464, 12, 22, 458, 287, 473, 296, 357, 252, 186, 481, 207, 359, 134, 407, 116, 480, 225, 234, 503, 456, 353, 251, 45, 290, 396, 89, 210, 240, 355, 318, 407, 116, 279, 243, 367, 101, 313, 153, 208, 462, 144, 223, 82, 246, 445, 238, 106, 407, 194, 74, 34, 0, 336, 339, 474, 372, 28, 411, 332, 311, 220, 175, 387, 209, 407, 194, 239, 401, 386, 67, 142, 264, 331, 172, 38, 394, 96, 416, 454, 427, 226, 466, 466, 299, 388, 50, 327, 284, 132, 308, 188, 115, 21, 429, 354, 119, 100, 270, 466, 233, 216, 136, 130, 314, 476, 150, 491, 163, 346, 232, 366, 477, 72, 468, 56, 466, 233, 204, 222, 253, 104, 408, 303, 430, 329, 510, 36, 435, 189, 507, 49, 23] +layer_updates_per_iter: 0 +num_slots: 544 diff --git a/examples/configs/curated/eplb/qwen3.8-ep32-static544.yaml b/examples/configs/curated/eplb/qwen3.8-ep32-static544.yaml new file mode 100644 index 000000000000..b1b47e1b060e --- /dev/null +++ b/examples/configs/curated/eplb/qwen3.8-ep32-static544.yaml @@ -0,0 +1,98 @@ +# Copyright (c) 2026, NVIDIA CORPORATION. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +initial_global_assignments: + 0: [158, 499, 82, 212, 350, 300, 447, 326, 228, 489, 297, 42, 283, 214, 0, 302, 459, 205, 237, 189, 218, 245, 1, 490, 440, 97, 207, 360, 122, 471, 215, 61, 20, 454, 250, 22, 165, 420, 217, 339, 201, 110, 458, 244, 256, 80, 144, 306, 268, 69, 41, 184, 305, 434, 342, 340, 71, 407, 206, 196, 379, 405, 117, 472, 498, 304, 118, 16, 184, 305, 249, 399, 266, 348, 427, 2, 154, 252, 9, 292, 336, 461, 383, 287, 507, 416, 374, 162, 12, 86, 372, 261, 83, 8, 388, 258, 152, 257, 167, 64, 51, 199, 416, 374, 137, 414, 497, 437, 225, 222, 270, 358, 131, 134, 101, 186, 177, 510, 96, 416, 503, 35, 275, 393, 398, 62, 431, 238, 28, 369, 112, 18, 413, 203, 382, 291, 282, 394, 211, 138, 263, 274, 335, 27, 280, 187, 484, 494, 105, 486, 85, 428, 378, 419, 337, 456, 108, 298, 443, 124, 241, 363, 327, 232, 202, 5, 156, 308, 309, 332, 301, 476, 24, 195, 418, 311, 299, 430, 98, 185, 468, 284, 502, 68, 247, 496, 161, 290, 32, 242, 463, 406, 487, 4, 151, 479, 323, 183, 392, 492, 145, 314, 469, 452, 290, 32, 389, 390, 341, 181, 412, 343, 478, 445, 76, 277, 53, 130, 421, 169, 481, 290, 466, 438, 415, 248, 190, 107, 175, 34, 43, 276, 281, 377, 424, 236, 504, 49, 123, 148, 493, 362, 355, 141, 328, 344, 157, 99, 439, 113, 334, 325, 60, 460, 425, 229, 87, 73, 470, 442, 93, 143, 444, 264, 495, 47, 506, 352, 354, 312, 58, 72, 229, 148, 46, 404, 475, 448, 88, 30, 40, 330, 324, 255, 149, 198, 401, 347, 126, 36, 140, 380, 146, 320, 65, 17, 37, 289, 464, 81, 191, 391, 279, 103, 251, 449, 36, 140, 380, 253, 94, 216, 322, 315, 193, 436, 321, 163, 384, 411, 386, 66, 409, 36, 87, 422, 230, 319, 63, 317, 15, 153, 491, 508, 457, 52, 368, 385, 31, 345, 55, 371, 426, 361, 128, 84, 170, 349, 57, 235, 455, 265, 303, 95, 329, 477, 307, 55, 140, 500, 294, 220, 114, 90, 473, 346, 226, 288, 272, 102, 172, 269, 441, 45, 231, 371, 422, 375, 14, 293, 243, 233, 465, 75, 423, 509, 367, 432, 296, 246, 116, 192, 371, 227, 210, 402, 79, 179, 174, 410, 417, 197, 286, 67, 159, 366, 204, 254, 267, 271, 211, 462, 318, 19, 6, 240, 387, 168, 120, 396, 121, 56, 224, 482, 176, 267, 219, 499, 23, 313, 74, 50, 381, 194, 356, 467, 59, 129, 115, 3, 260, 433, 147, 173, 111, 221, 273, 474, 136, 376, 501, 488, 446, 208, 435, 119, 295, 364, 370, 147, 54, 142, 33, 7, 453, 91, 180, 44, 135, 92, 132, 139, 29, 511, 11, 171, 147, 54, 164, 178, 77, 483, 150, 239, 13, 259, 365, 104, 333, 353, 21, 278, 182, 147, 54, 164, 397, 310, 155, 160, 127, 70, 209, 451, 408, 351, 166, 485, 373, 338, 450, 429, 188, 125, 39, 316, 403, 106, 25, 38, 331, 285, 89, 133, 234, 395, 10, 429, 429, 456, 200, 100, 26, 359, 505, 48, 480, 213, 400, 109, 78, 262, 223, 357] + 1: [23, 65, 313, 88, 143, 122, 299, 309, 250, 212, 20, 477, 297, 332, 374, 223, 439, 18, 65, 365, 248, 132, 157, 320, 352, 367, 69, 317, 42, 346, 105, 220, 452, 183, 228, 152, 353, 238, 328, 50, 55, 237, 405, 364, 488, 347, 343, 336, 399, 145, 147, 228, 152, 41, 451, 215, 67, 177, 193, 130, 492, 70, 48, 287, 37, 75, 247, 90, 228, 504, 279, 113, 35, 34, 99, 461, 45, 311, 387, 361, 407, 217, 243, 276, 278, 228, 504, 312, 156, 325, 391, 403, 265, 107, 456, 94, 282, 0, 213, 293, 345, 133, 292, 321, 356, 417, 168, 184, 170, 235, 95, 53, 196, 307, 59, 68, 255, 474, 449, 194, 324, 341, 64, 159, 56, 100, 316, 401, 376, 486, 410, 413, 260, 438, 253, 171, 194, 324, 341, 214, 359, 25, 475, 327, 58, 207, 110, 96, 496, 119, 86, 464, 419, 295, 245, 305, 360, 485, 222, 334, 29, 179, 150, 351, 144, 450, 79, 290, 435, 263, 295, 245, 348, 4, 12, 211, 425, 326, 44, 487, 335, 498, 257, 206, 236, 291, 479, 31, 409, 342, 481, 138, 232, 43, 11, 87, 303, 49, 350, 368, 390, 369, 422, 192, 31, 409, 128, 272, 444, 241, 294, 225, 83, 362, 24, 281, 434, 398, 315, 414, 355, 31, 406, 443, 400, 121, 503, 84, 81, 470, 39, 205, 385, 164, 440, 323, 363, 6, 31, 406, 252, 16, 227, 219, 338, 3, 472, 416, 310, 74, 476, 189, 275, 26, 186, 181, 36, 431, 267, 501, 161, 191, 54, 137, 166, 117, 478, 226, 10, 467, 51, 264, 181, 386, 442, 432, 490, 306, 495, 418, 125, 7, 500, 72, 231, 33, 302, 424, 394, 383, 412, 175, 268, 446, 423, 123, 357, 154, 437, 149, 240, 165, 202, 271, 379, 142, 383, 116, 21, 61, 280, 319, 101, 262, 448, 185, 141, 71, 388, 426, 502, 427, 188, 383, 36, 60, 163, 300, 415, 14, 148, 216, 497, 471, 402, 466, 270, 229, 108, 378, 383, 36, 459, 261, 28, 274, 457, 499, 304, 298, 273, 98, 393, 239, 182, 111, 5, 430, 32, 288, 129, 465, 210, 76, 370, 47, 93, 89, 349, 22, 27, 109, 187, 404, 63, 32, 342, 384, 173, 493, 318, 234, 52, 381, 103, 284, 377, 167, 40, 203, 126, 172, 218, 507, 178, 244, 174, 114, 169, 106, 146, 366, 127, 429, 112, 199, 286, 115, 172, 218, 251, 511, 8, 78, 436, 480, 453, 508, 322, 421, 455, 463, 301, 358, 483, 506, 66, 128, 19, 447, 337, 204, 242, 494, 433, 266, 230, 482, 208, 73, 340, 85, 445, 285, 305, 380, 139, 460, 30, 195, 221, 330, 389, 38, 97, 509, 375, 136, 510, 445, 153, 356, 458, 131, 473, 289, 329, 441, 382, 420, 9, 158, 140, 454, 57, 408, 124, 104, 190, 333, 224, 254, 469, 91, 462, 396, 17, 505, 46, 373, 102, 339, 269, 160, 256, 151, 80, 259, 155, 484, 77, 180, 283, 392, 82, 428, 397, 201, 118, 468, 160, 15, 62, 411, 296, 233, 209, 489, 371, 176, 246, 372, 331, 395, 198, 162, 135, 344, 308, 151, 1, 2, 258, 491, 92, 354, 277, 134, 13, 120, 200, 197, 249, 314] + 2: [235, 390, 445, 286, 233, 197, 249, 195, 57, 131, 442, 416, 158, 248, 396, 110, 213, 235, 267, 166, 406, 1, 345, 149, 222, 275, 468, 180, 294, 108, 237, 117, 471, 280, 235, 28, 510, 45, 478, 343, 229, 241, 278, 119, 336, 420, 329, 35, 314, 102, 425, 220, 484, 252, 495, 367, 379, 414, 153, 157, 16, 371, 426, 392, 84, 183, 351, 334, 220, 484, 400, 89, 97, 380, 66, 276, 46, 399, 154, 432, 306, 60, 72, 130, 210, 220, 115, 401, 176, 431, 88, 497, 270, 285, 427, 297, 500, 457, 323, 273, 407, 295, 220, 245, 69, 132, 476, 315, 116, 200, 356, 421, 330, 377, 439, 242, 325, 87, 424, 258, 298, 395, 480, 17, 58, 328, 54, 205, 140, 281, 192, 189, 465, 492, 341, 80, 258, 321, 138, 34, 202, 65, 23, 477, 101, 24, 263, 111, 506, 96, 475, 449, 372, 258, 321, 403, 113, 201, 284, 243, 283, 360, 167, 214, 488, 123, 152, 181, 436, 362, 258, 251, 135, 490, 112, 198, 419, 136, 271, 348, 61, 126, 40, 68, 184, 41, 327, 258, 251, 8, 159, 26, 120, 385, 326, 27, 474, 178, 15, 21, 82, 412, 194, 370, 346, 42, 355, 98, 397, 221, 160, 59, 466, 255, 121, 428, 33, 282, 144, 254, 454, 199, 435, 266, 388, 358, 339, 174, 44, 417, 67, 470, 250, 387, 422, 236, 469, 317, 199, 464, 207, 509, 94, 482, 246, 391, 364, 459, 319, 173, 304, 63, 413, 398, 279, 262, 311, 37, 90, 211, 155, 6, 357, 499, 260, 128, 441, 261, 369, 354, 374, 479, 262, 435, 363, 217, 381, 458, 451, 409, 378, 223, 225, 493, 232, 127, 7, 20, 423, 203, 322, 290, 309, 134, 456, 141, 212, 216, 103, 332, 299, 175, 247, 503, 106, 481, 203, 36, 224, 320, 257, 460, 365, 308, 32, 402, 418, 338, 30, 429, 234, 302, 53, 203, 36, 164, 161, 405, 305, 143, 265, 340, 83, 114, 9, 10, 386, 438, 389, 71, 203, 272, 218, 151, 256, 208, 487, 393, 22, 383, 384, 496, 433, 462, 292, 375, 47, 203, 272, 472, 55, 316, 333, 165, 231, 353, 244, 303, 485, 307, 342, 73, 293, 185, 324, 322, 11, 133, 171, 410, 501, 264, 25, 291, 188, 350, 170, 48, 448, 230, 70, 12, 193, 43, 498, 331, 446, 508, 145, 172, 228, 0, 253, 3, 511, 104, 359, 5, 12, 31, 491, 179, 415, 494, 467, 430, 453, 122, 137, 76, 182, 269, 344, 49, 95, 12, 31, 92, 124, 240, 361, 312, 129, 150, 187, 450, 504, 408, 4, 29, 146, 259, 12, 382, 239, 100, 139, 196, 368, 238, 147, 352, 39, 489, 19, 163, 75, 486, 318, 404, 215, 440, 148, 337, 38, 99, 444, 169, 296, 349, 190, 206, 142, 219, 79, 447, 404, 81, 505, 91, 62, 347, 288, 434, 443, 310, 226, 74, 452, 77, 191, 14, 51, 404, 274, 78, 335, 93, 268, 118, 507, 64, 463, 186, 227, 18, 156, 483, 56, 86, 404, 193, 366, 461, 13, 162, 85, 177, 300, 107, 376, 52, 301, 373, 109, 287, 394, 215, 215, 168, 2, 204, 411, 105, 289, 502, 209, 125, 50, 473, 437, 455, 313, 277] + 3: [382, 267, 326, 458, 279, 111, 463, 254, 192, 175, 237, 62, 258, 145, 255, 115, 509, 218, 102, 201, 317, 420, 92, 311, 336, 138, 487, 85, 273, 165, 413, 129, 486, 447, 218, 267, 201, 251, 252, 140, 329, 422, 38, 236, 489, 290, 0, 211, 70, 436, 1, 299, 345, 34, 164, 397, 83, 497, 233, 153, 426, 322, 107, 46, 30, 91, 238, 303, 299, 345, 173, 335, 200, 196, 5, 67, 32, 283, 405, 222, 198, 193, 495, 464, 40, 89, 316, 48, 110, 180, 99, 202, 474, 384, 305, 191, 104, 412, 293, 443, 462, 21, 89, 316, 352, 177, 118, 370, 31, 276, 389, 453, 377, 162, 289, 55, 355, 59, 197, 89, 228, 27, 348, 473, 114, 339, 375, 49, 444, 249, 365, 431, 174, 398, 393, 508, 89, 228, 347, 241, 403, 308, 386, 351, 481, 112, 9, 402, 304, 350, 121, 383, 282, 291, 446, 188, 313, 41, 344, 144, 105, 302, 268, 362, 179, 319, 190, 95, 10, 170, 291, 446, 274, 103, 342, 209, 142, 78, 262, 490, 12, 45, 410, 154, 338, 503, 269, 482, 361, 280, 37, 84, 501, 221, 54, 418, 53, 203, 44, 101, 479, 364, 80, 148, 250, 214, 300, 494, 429, 219, 63, 16, 472, 323, 310, 468, 288, 75, 25, 266, 117, 440, 120, 231, 416, 466, 82, 330, 272, 408, 263, 333, 437, 152, 360, 441, 151, 328, 366, 120, 475, 8, 485, 183, 294, 109, 127, 424, 314, 166, 394, 149, 306, 156, 369, 349, 3, 324, 119, 428, 396, 451, 505, 327, 6, 421, 215, 242, 275, 116, 493, 425, 247, 469, 391, 223, 11, 244, 17, 94, 373, 205, 390, 143, 73, 433, 206, 134, 158, 247, 469, 298, 435, 2, 414, 76, 510, 496, 353, 470, 374, 77, 132, 401, 381, 465, 240, 167, 419, 235, 261, 292, 42, 511, 406, 18, 19, 86, 331, 400, 71, 491, 39, 240, 167, 234, 217, 358, 204, 387, 4, 312, 448, 297, 315, 137, 500, 194, 20, 460, 240, 230, 226, 232, 379, 57, 189, 341, 286, 484, 159, 23, 438, 133, 284, 141, 450, 240, 230, 7, 87, 169, 186, 74, 161, 498, 90, 506, 409, 124, 125, 318, 287, 88, 240, 230, 243, 168, 33, 260, 224, 378, 456, 430, 52, 100, 26, 130, 220, 139, 371, 457, 467, 340, 392, 113, 155, 131, 265, 264, 79, 29, 270, 301, 58, 239, 356, 502, 457, 467, 210, 281, 337, 108, 504, 477, 157, 480, 380, 66, 207, 176, 432, 332, 363, 457, 467, 271, 122, 427, 407, 454, 307, 257, 106, 507, 449, 471, 187, 253, 296, 93, 457, 56, 136, 212, 135, 245, 28, 213, 81, 455, 171, 295, 434, 404, 163, 123, 399, 457, 227, 97, 368, 367, 195, 334, 459, 150, 461, 22, 65, 43, 185, 452, 172, 15, 388, 199, 320, 96, 126, 309, 325, 61, 483, 372, 24, 499, 278, 376, 178, 439, 13, 246, 445, 68, 321, 60, 277, 343, 72, 160, 225, 256, 181, 229, 182, 69, 411, 488, 445, 445, 128, 36, 354, 415, 184, 442, 359, 64, 248, 357, 417, 492, 478, 50, 51, 445, 445, 346, 285, 385, 35, 147, 146, 208, 98, 14, 259, 423, 47, 216, 476, 395] + 4: [3, 334, 267, 234, 352, 20, 77, 122, 112, 438, 475, 235, 163, 29, 488, 30, 389, 3, 481, 490, 403, 410, 328, 150, 309, 10, 300, 205, 114, 202, 274, 497, 444, 105, 3, 184, 99, 398, 45, 86, 160, 240, 258, 137, 67, 473, 204, 95, 230, 206, 15, 3, 468, 474, 73, 134, 101, 90, 278, 246, 335, 271, 413, 182, 62, 458, 123, 167, 228, 198, 100, 81, 411, 63, 49, 208, 34, 157, 419, 439, 185, 311, 56, 216, 504, 228, 292, 162, 192, 197, 119, 262, 409, 295, 121, 338, 164, 456, 470, 110, 51, 103, 228, 2, 342, 79, 378, 429, 91, 289, 50, 187, 257, 132, 356, 44, 427, 337, 296, 228, 395, 170, 39, 148, 169, 266, 397, 54, 118, 6, 203, 467, 479, 341, 27, 264, 228, 415, 196, 500, 227, 374, 424, 412, 326, 9, 211, 343, 443, 42, 144, 71, 360, 106, 430, 1, 218, 313, 13, 276, 297, 41, 255, 493, 428, 482, 108, 494, 156, 318, 463, 380, 299, 74, 348, 237, 304, 283, 72, 260, 279, 381, 460, 416, 387, 32, 422, 463, 430, 38, 256, 384, 455, 511, 193, 143, 265, 466, 330, 485, 305, 293, 177, 241, 480, 421, 370, 441, 153, 423, 361, 501, 339, 457, 52, 46, 383, 70, 502, 16, 238, 480, 402, 127, 503, 306, 183, 200, 161, 291, 285, 407, 425, 491, 263, 242, 350, 336, 480, 199, 405, 487, 401, 442, 288, 418, 325, 195, 190, 450, 104, 478, 180, 24, 269, 480, 380, 138, 362, 93, 47, 471, 492, 247, 168, 159, 249, 223, 174, 8, 385, 462, 43, 129, 139, 75, 365, 145, 37, 364, 57, 201, 367, 76, 316, 363, 89, 244, 84, 43, 94, 376, 172, 472, 435, 454, 66, 221, 98, 495, 113, 368, 55, 151, 166, 302, 43, 94, 358, 322, 496, 465, 396, 340, 404, 26, 298, 120, 186, 324, 294, 173, 243, 43, 217, 489, 142, 92, 355, 40, 116, 97, 154, 248, 379, 414, 327, 307, 320, 85, 270, 53, 18, 282, 102, 117, 392, 171, 188, 301, 329, 399, 359, 152, 131, 126, 220, 270, 53, 35, 165, 312, 88, 11, 346, 64, 61, 447, 437, 510, 23, 222, 7, 508, 270, 53, 445, 133, 281, 149, 207, 191, 314, 189, 31, 486, 303, 0, 155, 250, 19, 286, 284, 212, 21, 280, 158, 109, 507, 366, 4, 65, 484, 477, 214, 272, 213, 333, 286, 499, 231, 147, 371, 386, 25, 509, 349, 5, 128, 219, 82, 28, 277, 290, 369, 286, 210, 459, 432, 331, 345, 310, 78, 83, 406, 58, 233, 224, 141, 261, 417, 321, 286, 210, 351, 209, 251, 449, 323, 245, 372, 347, 226, 505, 259, 393, 175, 357, 229, 60, 284, 273, 373, 48, 124, 225, 17, 434, 375, 179, 33, 469, 344, 87, 453, 140, 60, 284, 239, 315, 115, 268, 181, 461, 317, 476, 308, 436, 252, 178, 452, 275, 431, 60, 284, 125, 391, 394, 319, 176, 420, 440, 446, 232, 408, 68, 388, 498, 136, 36, 59, 69, 80, 353, 464, 12, 96, 433, 22, 354, 382, 254, 448, 215, 287, 390, 194, 59, 69, 236, 253, 111, 426, 483, 377, 135, 400, 332, 451, 146, 107, 14, 130, 506] + 5: [489, 259, 470, 497, 36, 59, 60, 433, 261, 343, 215, 7, 450, 328, 488, 333, 15, 489, 253, 457, 362, 221, 462, 211, 188, 87, 14, 264, 187, 286, 102, 471, 223, 127, 489, 253, 275, 308, 131, 198, 22, 52, 235, 271, 491, 496, 325, 287, 205, 475, 25, 489, 431, 289, 234, 107, 288, 83, 157, 33, 249, 238, 359, 299, 279, 472, 319, 224, 386, 336, 283, 419, 494, 18, 507, 292, 495, 144, 181, 370, 132, 392, 97, 456, 225, 386, 269, 44, 208, 193, 276, 247, 93, 79, 38, 467, 409, 296, 309, 89, 265, 217, 386, 0, 56, 73, 185, 226, 430, 378, 274, 242, 194, 446, 341, 95, 213, 168, 473, 13, 8, 64, 28, 506, 167, 468, 232, 315, 477, 461, 298, 228, 394, 258, 114, 420, 243, 218, 380, 383, 326, 262, 229, 487, 346, 41, 85, 500, 483, 174, 485, 390, 369, 243, 8, 493, 291, 201, 117, 411, 427, 68, 161, 395, 82, 212, 98, 316, 337, 164, 412, 216, 173, 6, 176, 385, 432, 342, 47, 509, 133, 172, 282, 424, 410, 305, 297, 412, 42, 175, 444, 108, 46, 313, 129, 304, 334, 413, 339, 399, 317, 440, 5, 437, 412, 42, 240, 62, 19, 118, 382, 300, 169, 30, 398, 511, 222, 197, 158, 252, 154, 412, 58, 263, 396, 476, 387, 140, 375, 239, 426, 340, 295, 2, 71, 251, 101, 329, 183, 49, 255, 272, 388, 418, 66, 151, 61, 350, 278, 23, 148, 416, 364, 260, 27, 183, 49, 84, 146, 204, 65, 86, 31, 110, 122, 338, 367, 306, 156, 335, 447, 192, 183, 11, 99, 1, 88, 165, 303, 180, 360, 170, 441, 182, 109, 195, 50, 32, 78, 183, 216, 116, 484, 48, 24, 206, 365, 505, 137, 141, 318, 498, 414, 452, 153, 237, 417, 196, 191, 327, 35, 120, 293, 290, 391, 469, 266, 166, 54, 438, 463, 374, 435, 417, 196, 321, 402, 45, 75, 121, 459, 358, 428, 320, 236, 125, 480, 331, 403, 124, 417, 149, 159, 400, 81, 376, 310, 373, 434, 138, 55, 163, 76, 241, 43, 139, 248, 351, 344, 119, 356, 230, 458, 96, 302, 270, 130, 90, 233, 508, 486, 143, 377, 273, 351, 344, 408, 465, 354, 74, 20, 323, 355, 177, 69, 366, 250, 147, 357, 332, 105, 351, 344, 10, 112, 401, 186, 209, 423, 178, 207, 353, 214, 246, 490, 126, 103, 460, 351, 145, 21, 152, 474, 503, 312, 352, 92, 77, 479, 113, 330, 256, 453, 51, 254, 351, 145, 189, 384, 499, 478, 135, 220, 510, 17, 34, 482, 100, 202, 134, 464, 136, 351, 397, 26, 415, 171, 314, 67, 179, 94, 284, 190, 4, 466, 439, 372, 451, 443, 311, 324, 128, 123, 142, 347, 379, 70, 115, 322, 3, 277, 160, 389, 442, 361, 285, 227, 324, 368, 57, 281, 363, 267, 184, 481, 407, 155, 203, 29, 53, 9, 245, 162, 227, 324, 454, 425, 405, 294, 349, 268, 39, 449, 445, 429, 404, 307, 150, 393, 231, 200, 324, 436, 63, 219, 72, 492, 257, 348, 406, 106, 381, 421, 244, 345, 280, 37, 80, 422, 504, 199, 16, 371, 40, 210, 91, 501, 301, 12, 455, 111, 502, 104, 448] + 6: [112, 193, 7, 462, 475, 54, 90, 471, 214, 355, 180, 466, 404, 14, 349, 30, 195, 112, 196, 57, 282, 47, 36, 117, 509, 430, 319, 233, 223, 121, 43, 130, 153, 198, 112, 196, 56, 185, 107, 446, 145, 114, 194, 368, 10, 450, 361, 458, 276, 356, 6, 112, 494, 324, 344, 414, 274, 470, 298, 171, 477, 504, 183, 118, 341, 503, 149, 417, 112, 375, 8, 116, 421, 260, 273, 461, 132, 31, 111, 226, 24, 280, 189, 365, 229, 112, 142, 45, 225, 179, 505, 472, 330, 77, 484, 262, 422, 155, 242, 241, 139, 411, 112, 4, 263, 322, 460, 227, 303, 402, 187, 323, 284, 313, 510, 442, 3, 93, 370, 112, 44, 393, 100, 254, 468, 438, 147, 18, 237, 163, 82, 499, 109, 300, 389, 357, 201, 144, 253, 267, 302, 182, 287, 244, 37, 431, 119, 143, 208, 20, 314, 259, 126, 99, 270, 340, 228, 463, 385, 350, 481, 271, 456, 388, 131, 291, 210, 293, 204, 69, 511, 160, 444, 493, 258, 255, 308, 479, 448, 436, 230, 71, 199, 268, 294, 317, 455, 511, 270, 398, 232, 249, 473, 186, 316, 75, 156, 408, 83, 429, 219, 387, 26, 354, 159, 220, 191, 96, 1, 252, 70, 500, 58, 218, 272, 394, 428, 103, 172, 333, 79, 159, 160, 162, 236, 325, 343, 362, 307, 78, 123, 161, 141, 15, 508, 423, 42, 98, 400, 453, 306, 295, 373, 406, 52, 410, 297, 2, 137, 459, 321, 12, 469, 16, 409, 400, 220, 53, 203, 427, 27, 124, 420, 437, 434, 415, 80, 212, 348, 46, 152, 168, 412, 261, 62, 359, 25, 158, 50, 371, 331, 327, 392, 231, 66, 72, 247, 22, 190, 412, 256, 474, 299, 243, 125, 286, 454, 150, 441, 216, 234, 452, 134, 449, 91, 213, 412, 312, 205, 502, 19, 157, 487, 257, 29, 135, 486, 275, 41, 407, 206, 342, 334, 412, 312, 491, 11, 165, 379, 285, 173, 97, 501, 445, 104, 396, 95, 347, 424, 178, 87, 296, 74, 345, 278, 457, 177, 0, 288, 167, 105, 395, 239, 59, 335, 506, 352, 76, 28, 129, 382, 106, 35, 211, 113, 251, 386, 32, 222, 305, 215, 485, 443, 464, 390, 28, 184, 380, 110, 465, 315, 507, 40, 217, 48, 23, 102, 246, 337, 88, 202, 170, 496, 320, 383, 5, 351, 181, 21, 84, 51, 490, 435, 200, 329, 338, 478, 127, 170, 289, 140, 292, 138, 290, 33, 94, 301, 311, 451, 381, 339, 240, 326, 136, 277, 170, 289, 176, 89, 81, 85, 363, 372, 60, 154, 419, 86, 128, 265, 250, 38, 416, 170, 289, 413, 358, 248, 13, 108, 55, 447, 346, 221, 399, 467, 495, 61, 17, 369, 439, 73, 151, 245, 192, 115, 332, 476, 426, 336, 488, 166, 120, 92, 391, 309, 175, 439, 73, 405, 364, 497, 34, 440, 483, 67, 425, 238, 188, 433, 49, 432, 197, 264, 439, 496, 207, 101, 39, 209, 418, 133, 498, 64, 366, 353, 377, 378, 169, 148, 376, 439, 496, 403, 360, 328, 122, 266, 65, 492, 283, 318, 374, 397, 9, 480, 304, 63, 73, 73, 482, 146, 68, 401, 367, 174, 279, 269, 310, 164, 224, 489, 235, 281, 384] + 7: [504, 419, 424, 395, 15, 57, 182, 396, 322, 307, 168, 265, 75, 263, 139, 484, 496, 504, 453, 210, 223, 235, 159, 89, 365, 457, 468, 119, 456, 338, 437, 190, 229, 126, 504, 497, 9, 245, 284, 204, 11, 412, 480, 485, 46, 200, 186, 156, 115, 22, 470, 504, 56, 502, 300, 248, 21, 374, 337, 130, 304, 103, 491, 318, 441, 269, 426, 411, 504, 509, 185, 183, 51, 397, 244, 320, 499, 430, 70, 359, 85, 155, 61, 371, 339, 504, 207, 135, 476, 105, 7, 294, 153, 495, 192, 251, 445, 222, 95, 184, 500, 324, 504, 444, 234, 44, 275, 447, 422, 209, 164, 477, 295, 428, 32, 180, 102, 170, 39, 504, 68, 108, 49, 220, 154, 65, 416, 259, 112, 241, 178, 256, 203, 440, 132, 217, 157, 125, 343, 34, 239, 348, 206, 28, 283, 131, 474, 340, 109, 423, 272, 69, 449, 157, 260, 98, 30, 254, 327, 345, 199, 181, 19, 290, 398, 188, 410, 4, 492, 271, 157, 260, 151, 127, 490, 73, 362, 325, 240, 278, 372, 5, 379, 319, 487, 375, 417, 211, 101, 145, 380, 107, 315, 463, 350, 420, 193, 481, 305, 357, 187, 421, 150, 228, 211, 125, 293, 425, 191, 64, 47, 50, 90, 297, 233, 176, 403, 389, 25, 31, 431, 111, 225, 148, 488, 273, 302, 292, 511, 232, 35, 466, 314, 414, 77, 242, 173, 279, 111, 225, 316, 88, 55, 454, 48, 149, 298, 138, 94, 464, 388, 247, 215, 448, 404, 111, 434, 399, 355, 376, 427, 172, 469, 104, 407, 10, 384, 506, 261, 87, 143, 194, 111, 434, 37, 120, 462, 74, 443, 20, 27, 177, 84, 360, 114, 405, 117, 86, 361, 111, 328, 433, 287, 450, 161, 291, 91, 12, 208, 367, 387, 282, 205, 373, 216, 505, 111, 459, 346, 276, 436, 458, 317, 482, 92, 0, 344, 141, 507, 2, 60, 332, 59, 111, 63, 465, 442, 160, 189, 335, 312, 8, 116, 29, 166, 333, 310, 363, 460, 198, 111, 349, 309, 341, 227, 146, 321, 493, 236, 369, 301, 266, 226, 246, 467, 219, 483, 406, 99, 285, 323, 382, 106, 306, 252, 79, 455, 377, 118, 238, 152, 391, 358, 128, 406, 99, 479, 452, 197, 438, 415, 17, 67, 96, 40, 66, 82, 400, 158, 508, 243, 406, 72, 311, 408, 201, 347, 163, 93, 503, 353, 270, 53, 224, 475, 392, 296, 237, 406, 225, 351, 41, 289, 171, 368, 385, 196, 174, 390, 249, 26, 473, 38, 62, 498, 366, 331, 144, 326, 258, 461, 23, 134, 413, 1, 83, 162, 288, 142, 52, 133, 250, 366, 13, 267, 16, 378, 97, 43, 501, 123, 80, 81, 299, 169, 147, 42, 330, 418, 472, 255, 364, 336, 110, 262, 383, 14, 121, 354, 129, 100, 510, 356, 179, 280, 381, 472, 331, 167, 478, 165, 45, 122, 257, 136, 303, 253, 281, 286, 78, 71, 439, 24, 471, 401, 274, 3, 308, 264, 313, 231, 329, 202, 33, 489, 451, 494, 213, 230, 370, 471, 401, 429, 352, 113, 54, 36, 268, 432, 140, 394, 393, 58, 76, 137, 195, 386, 402, 401, 277, 212, 486, 446, 214, 435, 124, 221, 342, 409, 6, 175, 334, 218, 18] + 8: [436, 21, 225, 223, 135, 391, 180, 418, 310, 231, 161, 71, 106, 221, 439, 495, 33, 436, 340, 205, 19, 99, 324, 196, 207, 463, 500, 10, 20, 166, 387, 424, 354, 0, 436, 124, 386, 132, 396, 455, 111, 170, 230, 95, 118, 322, 138, 410, 308, 379, 145, 436, 420, 459, 332, 77, 352, 311, 374, 382, 46, 197, 240, 157, 203, 152, 116, 370, 436, 348, 270, 366, 242, 261, 333, 23, 251, 128, 204, 66, 217, 506, 224, 341, 98, 257, 294, 445, 409, 51, 41, 295, 91, 255, 273, 67, 414, 158, 413, 164, 307, 509, 257, 377, 47, 390, 511, 249, 256, 484, 108, 361, 313, 238, 466, 6, 325, 318, 136, 257, 29, 342, 84, 62, 232, 491, 143, 291, 218, 259, 508, 14, 258, 383, 48, 462, 510, 142, 365, 24, 209, 87, 150, 181, 481, 228, 165, 454, 201, 172, 474, 468, 85, 510, 317, 212, 104, 194, 52, 247, 39, 336, 480, 59, 186, 248, 137, 279, 89, 117, 381, 121, 267, 442, 4, 364, 60, 183, 296, 253, 427, 285, 246, 79, 125, 360, 402, 381, 179, 195, 243, 269, 188, 280, 2, 18, 503, 141, 70, 148, 362, 338, 486, 8, 381, 437, 438, 355, 114, 456, 83, 277, 426, 167, 406, 320, 417, 284, 416, 234, 265, 381, 488, 200, 144, 35, 120, 191, 289, 451, 264, 40, 271, 408, 49, 74, 470, 411, 381, 26, 239, 403, 283, 56, 425, 421, 272, 202, 173, 182, 34, 398, 176, 335, 400, 105, 171, 399, 11, 358, 419, 357, 252, 282, 198, 134, 163, 504, 260, 453, 233, 214, 376, 97, 3, 275, 237, 174, 109, 395, 13, 384, 219, 433, 314, 96, 107, 211, 37, 376, 17, 103, 485, 373, 496, 288, 254, 293, 448, 55, 369, 15, 343, 461, 7, 101, 376, 110, 80, 385, 169, 151, 42, 127, 492, 69, 467, 113, 501, 208, 189, 372, 193, 376, 110, 489, 206, 412, 64, 505, 469, 457, 75, 53, 290, 440, 281, 389, 435, 250, 376, 110, 415, 303, 431, 115, 73, 100, 90, 22, 215, 63, 305, 241, 334, 363, 31, 376, 171, 222, 306, 213, 450, 347, 28, 168, 371, 81, 477, 298, 123, 483, 405, 339, 92, 349, 82, 244, 235, 131, 139, 57, 353, 329, 441, 351, 422, 487, 392, 494, 226, 92, 349, 216, 490, 268, 175, 192, 54, 380, 368, 393, 262, 162, 9, 88, 146, 78, 92, 349, 16, 276, 493, 44, 178, 199, 68, 326, 315, 452, 122, 458, 287, 12, 229, 92, 94, 479, 32, 25, 154, 356, 1, 155, 236, 65, 300, 312, 476, 187, 185, 61, 92, 156, 102, 429, 45, 499, 472, 407, 133, 378, 130, 434, 423, 447, 159, 190, 129, 92, 156, 86, 147, 337, 227, 497, 327, 464, 397, 302, 460, 330, 36, 449, 388, 184, 346, 304, 345, 43, 473, 323, 309, 210, 50, 428, 263, 220, 149, 160, 432, 278, 126, 346, 304, 375, 319, 401, 475, 266, 344, 443, 30, 350, 93, 119, 404, 331, 471, 430, 140, 140, 297, 446, 76, 444, 478, 321, 498, 292, 359, 177, 328, 153, 367, 5, 112, 140, 304, 245, 316, 301, 38, 507, 58, 286, 274, 394, 482, 27, 299, 465, 72, 502] + 9: [83, 63, 139, 376, 124, 334, 384, 484, 215, 191, 361, 249, 416, 432, 452, 168, 50, 83, 163, 26, 156, 446, 467, 199, 92, 192, 225, 355, 304, 377, 497, 479, 5, 511, 368, 367, 337, 424, 301, 343, 104, 429, 251, 476, 6, 263, 252, 176, 101, 207, 456, 368, 329, 138, 4, 366, 259, 119, 102, 122, 454, 414, 29, 64, 217, 381, 159, 268, 320, 173, 118, 28, 243, 341, 204, 233, 227, 56, 294, 209, 360, 336, 326, 189, 297, 320, 212, 90, 41, 36, 426, 146, 482, 224, 172, 69, 181, 246, 333, 238, 502, 210, 320, 403, 182, 463, 290, 15, 130, 449, 451, 447, 143, 494, 80, 169, 339, 468, 435, 312, 173, 228, 385, 162, 348, 402, 293, 457, 375, 79, 342, 393, 198, 373, 302, 473, 110, 324, 216, 277, 52, 292, 483, 321, 332, 14, 256, 62, 266, 283, 211, 0, 31, 47, 55, 120, 60, 149, 378, 161, 23, 501, 16, 486, 285, 399, 183, 158, 229, 492, 47, 291, 503, 466, 421, 417, 33, 145, 480, 383, 391, 57, 278, 89, 82, 9, 396, 47, 234, 86, 379, 444, 188, 327, 133, 328, 7, 340, 358, 202, 369, 11, 22, 459, 47, 234, 443, 78, 398, 12, 128, 38, 235, 208, 460, 273, 505, 374, 262, 419, 382, 370, 453, 496, 247, 197, 412, 495, 406, 132, 470, 353, 310, 478, 288, 284, 186, 129, 370, 18, 226, 223, 408, 264, 147, 103, 289, 359, 53, 155, 422, 46, 240, 431, 481, 370, 18, 157, 221, 201, 413, 48, 354, 418, 315, 458, 231, 193, 232, 464, 195, 300, 370, 450, 438, 260, 254, 347, 13, 313, 123, 364, 194, 504, 37, 74, 73, 49, 178, 370, 314, 409, 362, 338, 271, 116, 77, 84, 107, 45, 174, 153, 213, 30, 380, 317, 370, 287, 177, 322, 323, 455, 19, 493, 427, 87, 499, 152, 135, 21, 430, 113, 280, 370, 115, 127, 94, 325, 356, 404, 363, 20, 134, 35, 164, 70, 196, 171, 255, 42, 370, 115, 272, 241, 394, 66, 220, 93, 345, 230, 274, 401, 506, 346, 474, 448, 61, 236, 185, 117, 389, 276, 179, 190, 65, 269, 410, 27, 58, 275, 436, 298, 151, 352, 236, 185, 500, 98, 282, 245, 85, 248, 184, 469, 242, 405, 108, 154, 392, 88, 237, 236, 330, 397, 386, 261, 105, 1, 2, 351, 95, 148, 244, 303, 166, 250, 349, 68, 236, 453, 97, 491, 165, 390, 106, 187, 10, 71, 267, 59, 461, 32, 372, 203, 150, 236, 453, 136, 44, 258, 311, 140, 54, 471, 388, 400, 99, 167, 131, 175, 112, 295, 489, 239, 222, 357, 319, 142, 305, 160, 439, 488, 109, 316, 296, 437, 415, 51, 387, 489, 239, 206, 34, 141, 24, 218, 76, 307, 100, 335, 253, 309, 445, 25, 219, 144, 489, 440, 279, 507, 485, 111, 126, 434, 423, 170, 472, 308, 3, 125, 81, 257, 8, 489, 462, 509, 40, 281, 214, 200, 299, 411, 331, 180, 344, 72, 371, 487, 43, 490, 477, 477, 75, 67, 498, 508, 114, 420, 270, 365, 137, 425, 39, 465, 433, 121, 96, 477, 477, 441, 265, 17, 286, 407, 428, 205, 442, 306, 91, 395, 318, 510, 475, 350] + 10: [76, 258, 138, 333, 143, 510, 407, 246, 508, 385, 360, 111, 99, 256, 298, 177, 377, 76, 460, 55, 101, 461, 75, 470, 54, 357, 88, 96, 58, 125, 112, 215, 287, 220, 76, 272, 238, 454, 28, 248, 11, 92, 120, 108, 2, 186, 386, 237, 304, 212, 332, 71, 234, 405, 81, 110, 218, 440, 46, 455, 293, 367, 67, 52, 494, 179, 477, 10, 71, 364, 148, 196, 41, 63, 428, 122, 281, 60, 436, 328, 226, 472, 383, 69, 151, 71, 163, 362, 475, 413, 240, 142, 126, 453, 97, 224, 411, 505, 170, 147, 49, 391, 71, 341, 397, 380, 107, 312, 346, 255, 59, 288, 378, 83, 352, 342, 269, 8, 53, 66, 21, 40, 447, 134, 363, 268, 314, 160, 172, 20, 127, 159, 249, 14, 209, 162, 194, 171, 345, 48, 203, 82, 6, 444, 351, 484, 158, 409, 410, 489, 0, 429, 303, 194, 301, 442, 320, 230, 87, 241, 273, 247, 456, 217, 316, 417, 499, 286, 361, 39, 194, 62, 89, 222, 418, 12, 4, 84, 262, 441, 283, 261, 432, 29, 467, 24, 198, 194, 62, 371, 106, 267, 317, 1, 188, 481, 93, 394, 337, 344, 423, 257, 471, 169, 271, 451, 102, 449, 201, 331, 369, 114, 227, 156, 131, 448, 285, 396, 450, 100, 469, 271, 401, 113, 502, 103, 259, 307, 445, 321, 310, 496, 426, 181, 51, 323, 13, 65, 271, 401, 473, 79, 118, 264, 402, 205, 168, 233, 137, 189, 16, 173, 9, 324, 175, 271, 187, 431, 427, 146, 370, 495, 355, 266, 174, 116, 306, 206, 185, 493, 45, 415, 271, 34, 399, 210, 392, 395, 492, 278, 155, 490, 322, 154, 95, 90, 309, 74, 319, 271, 171, 236, 485, 366, 501, 239, 420, 231, 77, 296, 211, 393, 157, 180, 509, 482, 183, 348, 47, 119, 164, 225, 457, 274, 491, 25, 375, 265, 284, 104, 85, 462, 140, 183, 348, 129, 292, 145, 219, 282, 275, 15, 98, 476, 42, 422, 50, 353, 368, 279, 183, 416, 195, 124, 263, 80, 425, 381, 468, 37, 235, 277, 350, 479, 208, 463, 130, 183, 478, 105, 149, 199, 500, 128, 57, 443, 311, 117, 315, 387, 289, 327, 459, 19, 183, 166, 72, 434, 260, 17, 376, 438, 474, 356, 178, 243, 150, 400, 343, 228, 511, 506, 338, 214, 192, 486, 207, 430, 44, 437, 232, 121, 252, 200, 250, 165, 191, 446, 506, 338, 123, 335, 182, 5, 305, 7, 439, 280, 329, 229, 382, 465, 464, 379, 254, 68, 223, 136, 245, 135, 498, 354, 483, 291, 466, 141, 86, 253, 115, 144, 167, 412, 68, 32, 221, 384, 3, 193, 31, 290, 184, 251, 504, 202, 497, 299, 139, 242, 161, 68, 152, 216, 64, 334, 204, 56, 339, 347, 330, 73, 452, 390, 507, 358, 340, 176, 68, 338, 38, 424, 297, 23, 336, 22, 403, 388, 458, 488, 33, 398, 373, 349, 61, 94, 94, 408, 294, 419, 308, 36, 325, 404, 389, 406, 480, 26, 295, 326, 244, 133, 94, 94, 35, 435, 27, 374, 91, 197, 132, 43, 18, 359, 70, 433, 270, 503, 365, 94, 223, 190, 318, 487, 213, 313, 30, 421, 300, 109, 153, 276, 78, 372, 414, 302] + 11: [106, 188, 235, 94, 380, 302, 68, 331, 391, 349, 225, 23, 505, 222, 27, 237, 364, 106, 362, 337, 446, 276, 31, 343, 169, 7, 179, 90, 309, 430, 143, 247, 20, 315, 106, 91, 184, 395, 211, 267, 469, 475, 440, 253, 405, 336, 394, 282, 80, 451, 98, 106, 91, 323, 338, 176, 236, 168, 409, 254, 471, 279, 213, 243, 159, 133, 118, 154, 106, 87, 221, 342, 283, 478, 281, 0, 102, 47, 327, 223, 224, 46, 511, 501, 208, 24, 375, 250, 136, 56, 182, 229, 144, 365, 194, 318, 504, 261, 361, 152, 85, 277, 24, 480, 125, 346, 290, 294, 86, 137, 197, 40, 479, 423, 459, 500, 12, 4, 473, 24, 187, 413, 131, 88, 319, 509, 259, 67, 101, 30, 372, 252, 129, 36, 135, 151, 24, 108, 330, 350, 326, 437, 116, 57, 145, 390, 105, 242, 393, 398, 457, 314, 288, 24, 108, 51, 109, 209, 442, 341, 17, 434, 49, 510, 61, 419, 158, 174, 69, 426, 24, 468, 215, 322, 373, 251, 257, 142, 25, 8, 320, 15, 28, 345, 239, 462, 38, 24, 112, 429, 157, 427, 352, 190, 353, 113, 483, 92, 18, 167, 408, 307, 164, 439, 24, 10, 189, 5, 351, 445, 444, 185, 431, 489, 172, 379, 382, 433, 203, 432, 358, 96, 255, 103, 449, 206, 329, 270, 160, 455, 317, 304, 447, 84, 339, 420, 165, 378, 96, 33, 218, 377, 502, 52, 241, 178, 207, 72, 216, 217, 166, 50, 482, 81, 496, 11, 121, 232, 120, 366, 195, 370, 397, 410, 401, 335, 463, 246, 499, 407, 220, 357, 11, 193, 415, 130, 374, 506, 295, 74, 240, 75, 396, 93, 285, 53, 334, 128, 487, 11, 196, 384, 200, 264, 453, 183, 95, 138, 153, 436, 402, 296, 83, 421, 191, 41, 11, 196, 355, 312, 35, 461, 13, 238, 65, 199, 260, 474, 448, 271, 34, 367, 363, 11, 255, 214, 265, 333, 45, 119, 37, 414, 456, 262, 454, 181, 287, 389, 347, 438, 180, 291, 443, 387, 481, 486, 280, 201, 231, 416, 60, 485, 55, 175, 171, 22, 63, 180, 121, 328, 161, 406, 477, 325, 411, 107, 452, 388, 111, 272, 141, 205, 32, 82, 43, 54, 256, 508, 70, 16, 284, 21, 44, 99, 458, 308, 301, 97, 305, 76, 273, 43, 291, 26, 39, 79, 488, 170, 219, 162, 2, 344, 292, 139, 249, 78, 269, 313, 43, 291, 163, 258, 385, 132, 465, 122, 497, 310, 127, 360, 418, 210, 381, 470, 73, 226, 340, 495, 134, 104, 354, 198, 244, 114, 48, 417, 324, 368, 148, 298, 404, 422, 503, 369, 77, 110, 117, 386, 123, 348, 146, 62, 412, 484, 266, 233, 177, 150, 359, 115, 140, 156, 476, 66, 316, 376, 173, 435, 492, 399, 332, 450, 268, 507, 274, 466, 115, 140, 297, 306, 42, 124, 100, 263, 204, 212, 356, 293, 192, 248, 289, 311, 491, 115, 140, 3, 278, 1, 71, 464, 467, 460, 300, 299, 202, 155, 19, 245, 186, 149, 115, 140, 14, 126, 472, 228, 371, 89, 493, 490, 403, 286, 59, 227, 441, 275, 9, 494, 147, 383, 498, 58, 6, 234, 428, 29, 424, 400, 303, 425, 64, 321, 230, 392] + 12: [467, 93, 482, 240, 263, 88, 117, 151, 449, 35, 391, 77, 437, 406, 419, 63, 198, 467, 61, 85, 200, 161, 335, 349, 292, 305, 7, 0, 153, 33, 377, 21, 412, 29, 467, 425, 209, 303, 207, 27, 413, 355, 73, 241, 193, 320, 24, 403, 224, 433, 497, 467, 334, 120, 287, 341, 102, 400, 468, 248, 405, 261, 434, 366, 486, 150, 356, 199, 467, 499, 269, 462, 313, 390, 173, 86, 371, 242, 484, 190, 94, 176, 51, 158, 127, 237, 469, 487, 435, 451, 448, 233, 195, 53, 409, 222, 165, 489, 397, 92, 339, 331, 237, 114, 446, 455, 116, 407, 317, 81, 458, 365, 345, 220, 110, 227, 374, 170, 343, 237, 138, 423, 350, 125, 230, 353, 123, 49, 396, 440, 146, 506, 214, 279, 136, 2, 237, 72, 191, 428, 256, 20, 59, 477, 67, 16, 142, 186, 336, 260, 511, 505, 204, 10, 39, 401, 26, 414, 492, 12, 470, 4, 329, 80, 28, 372, 361, 402, 388, 184, 10, 39, 99, 360, 247, 307, 427, 389, 424, 418, 101, 464, 44, 367, 69, 351, 474, 62, 504, 456, 245, 319, 450, 188, 32, 502, 510, 250, 112, 147, 421, 239, 38, 436, 62, 8, 205, 438, 274, 1, 408, 137, 185, 376, 496, 218, 19, 422, 312, 381, 275, 62, 8, 130, 189, 159, 352, 304, 249, 122, 203, 36, 370, 132, 106, 262, 483, 288, 107, 504, 301, 79, 254, 431, 378, 244, 384, 14, 465, 164, 175, 258, 380, 46, 68, 129, 208, 31, 225, 318, 259, 43, 272, 393, 18, 55, 58, 364, 420, 22, 290, 89, 129, 495, 78, 83, 454, 325, 87, 347, 471, 251, 169, 30, 109, 167, 357, 54, 452, 129, 358, 5, 155, 115, 507, 387, 386, 480, 98, 368, 294, 210, 270, 111, 52, 187, 129, 197, 453, 66, 415, 15, 118, 392, 104, 369, 333, 293, 271, 145, 70, 267, 475, 129, 197, 41, 327, 219, 306, 100, 508, 157, 296, 126, 246, 266, 395, 108, 48, 166, 129, 65, 133, 278, 95, 154, 201, 342, 183, 277, 442, 324, 314, 168, 476, 140, 394, 129, 216, 310, 485, 143, 315, 226, 299, 498, 179, 9, 243, 84, 276, 206, 337, 264, 97, 459, 280, 447, 321, 257, 488, 286, 45, 323, 316, 490, 42, 441, 281, 340, 399, 231, 308, 91, 494, 253, 289, 234, 466, 302, 284, 359, 178, 328, 383, 128, 291, 181, 231, 308, 47, 309, 40, 171, 75, 375, 332, 326, 348, 273, 443, 180, 160, 298, 382, 231, 308, 322, 479, 25, 17, 344, 37, 410, 34, 398, 354, 13, 113, 212, 50, 503, 231, 417, 461, 139, 228, 163, 362, 213, 215, 493, 134, 162, 473, 411, 501, 235, 217, 509, 295, 82, 76, 135, 182, 6, 416, 221, 202, 121, 463, 23, 56, 252, 439, 379, 509, 295, 90, 60, 297, 255, 404, 131, 105, 223, 430, 11, 265, 346, 156, 194, 124, 509, 295, 238, 177, 3, 311, 74, 152, 232, 172, 57, 338, 192, 229, 478, 71, 330, 509, 295, 445, 196, 268, 373, 432, 426, 460, 64, 300, 283, 457, 481, 211, 119, 96, 472, 472, 282, 491, 141, 174, 500, 103, 149, 144, 429, 363, 148, 236, 285, 444, 385] + 13: [230, 424, 418, 41, 371, 285, 458, 167, 484, 32, 146, 450, 337, 509, 74, 380, 504, 316, 99, 336, 199, 60, 262, 385, 333, 444, 247, 33, 489, 61, 474, 253, 1, 68, 316, 73, 174, 58, 472, 496, 120, 263, 186, 428, 82, 494, 117, 359, 298, 164, 0, 316, 439, 154, 224, 238, 317, 368, 44, 318, 90, 242, 85, 126, 286, 54, 417, 91, 252, 383, 411, 357, 280, 346, 476, 42, 312, 179, 360, 355, 372, 287, 490, 275, 194, 252, 383, 15, 376, 67, 500, 84, 249, 191, 502, 17, 128, 339, 180, 137, 129, 232, 252, 56, 270, 134, 215, 414, 328, 387, 462, 112, 177, 361, 310, 294, 381, 399, 441, 252, 124, 440, 423, 508, 406, 299, 203, 420, 453, 449, 485, 435, 53, 466, 301, 75, 252, 152, 470, 455, 475, 205, 89, 57, 311, 173, 332, 175, 77, 160, 419, 159, 210, 252, 185, 10, 321, 341, 293, 254, 55, 147, 226, 473, 246, 243, 103, 71, 95, 23, 252, 148, 196, 482, 37, 138, 206, 331, 200, 468, 367, 110, 451, 9, 21, 369, 477, 34, 235, 338, 130, 404, 364, 156, 306, 136, 265, 507, 125, 492, 304, 350, 149, 388, 34, 235, 481, 351, 452, 63, 442, 431, 297, 113, 292, 139, 98, 27, 212, 161, 35, 34, 190, 220, 412, 19, 86, 303, 240, 329, 101, 302, 511, 343, 358, 208, 150, 195, 34, 190, 217, 40, 239, 430, 363, 345, 52, 307, 438, 143, 268, 389, 465, 323, 354, 34, 65, 131, 421, 102, 229, 92, 5, 291, 118, 248, 426, 410, 163, 39, 168, 283, 51, 498, 145, 7, 80, 66, 313, 374, 50, 30, 429, 94, 308, 255, 349, 223, 3, 51, 498, 378, 362, 43, 457, 192, 105, 483, 296, 464, 236, 377, 392, 169, 155, 290, 51, 25, 272, 505, 111, 277, 166, 340, 335, 433, 188, 29, 189, 36, 182, 497, 79, 51, 197, 157, 279, 393, 443, 373, 256, 413, 276, 81, 415, 257, 184, 187, 447, 178, 51, 18, 106, 237, 397, 469, 370, 386, 289, 216, 245, 261, 24, 193, 170, 300, 28, 51, 352, 172, 284, 334, 454, 97, 402, 269, 379, 448, 425, 83, 114, 391, 31, 382, 202, 115, 394, 20, 407, 104, 344, 22, 396, 471, 93, 4, 213, 162, 100, 460, 153, 202, 366, 486, 305, 493, 408, 116, 176, 501, 395, 314, 87, 64, 209, 401, 214, 459, 202, 8, 121, 461, 264, 353, 59, 324, 127, 342, 222, 227, 295, 479, 165, 171, 251, 202, 8, 282, 6, 12, 69, 422, 201, 218, 151, 400, 204, 488, 183, 356, 499, 480, 140, 115, 271, 478, 327, 231, 141, 437, 135, 260, 446, 322, 13, 266, 46, 76, 119, 487, 241, 72, 45, 207, 403, 506, 416, 384, 326, 365, 375, 405, 96, 16, 510, 234, 487, 241, 38, 144, 409, 47, 432, 181, 132, 319, 330, 48, 445, 109, 198, 123, 244, 487, 78, 122, 49, 107, 390, 88, 274, 26, 233, 62, 273, 11, 456, 228, 398, 347, 278, 278, 325, 463, 158, 281, 503, 467, 309, 267, 427, 108, 436, 225, 221, 142, 288, 278, 241, 259, 315, 320, 70, 2, 14, 211, 219, 258, 495, 348, 434, 133, 491, 250] + 14: [498, 130, 492, 5, 148, 196, 353, 119, 358, 408, 319, 62, 271, 410, 478, 43, 18, 297, 433, 193, 210, 272, 179, 450, 279, 221, 500, 214, 142, 481, 226, 224, 76, 84, 400, 250, 265, 95, 332, 277, 230, 228, 58, 401, 473, 149, 339, 441, 40, 15, 123, 400, 36, 503, 26, 335, 302, 100, 393, 453, 217, 476, 367, 133, 244, 511, 146, 278, 400, 55, 122, 114, 260, 97, 54, 53, 425, 140, 166, 411, 307, 8, 337, 305, 417, 400, 253, 111, 121, 44, 282, 104, 466, 126, 67, 251, 328, 249, 155, 70, 330, 41, 400, 359, 455, 35, 491, 357, 252, 175, 387, 177, 241, 52, 39, 346, 356, 192, 153, 400, 113, 372, 344, 436, 472, 465, 255, 239, 504, 238, 92, 139, 287, 38, 419, 432, 400, 172, 231, 428, 468, 341, 422, 162, 444, 488, 109, 71, 45, 371, 415, 206, 301, 376, 250, 283, 463, 138, 7, 385, 439, 350, 506, 262, 2, 312, 394, 497, 94, 483, 90, 451, 82, 184, 438, 19, 159, 474, 490, 413, 85, 303, 325, 352, 389, 161, 404, 285, 486, 117, 263, 69, 105, 59, 261, 347, 361, 309, 318, 10, 378, 326, 398, 258, 285, 451, 17, 424, 475, 127, 366, 16, 200, 480, 507, 124, 96, 464, 186, 452, 28, 285, 451, 205, 47, 435, 169, 165, 6, 430, 317, 484, 471, 434, 421, 360, 420, 310, 375, 181, 68, 510, 81, 171, 240, 284, 482, 269, 61, 493, 107, 108, 49, 50, 311, 459, 181, 237, 323, 314, 365, 457, 354, 246, 362, 384, 276, 98, 189, 327, 78, 89, 459, 181, 499, 42, 502, 203, 321, 364, 374, 395, 336, 182, 448, 315, 13, 48, 234, 406, 212, 236, 345, 363, 115, 118, 405, 106, 449, 204, 12, 3, 414, 505, 340, 379, 259, 334, 134, 25, 396, 88, 382, 342, 87, 185, 173, 429, 29, 201, 298, 440, 197, 259, 368, 31, 51, 247, 178, 135, 458, 233, 296, 257, 183, 288, 1, 461, 187, 286, 259, 129, 416, 494, 215, 383, 132, 380, 22, 216, 227, 316, 281, 373, 156, 270, 268, 259, 129, 508, 167, 83, 145, 160, 188, 101, 143, 176, 152, 427, 431, 391, 232, 248, 259, 129, 333, 274, 220, 295, 0, 306, 324, 170, 489, 21, 423, 65, 320, 397, 355, 259, 129, 32, 154, 191, 501, 11, 141, 147, 207, 37, 9, 219, 27, 407, 60, 110, 259, 23, 280, 256, 348, 293, 80, 377, 275, 462, 437, 131, 211, 222, 46, 370, 447, 259, 409, 426, 136, 349, 218, 33, 477, 168, 93, 229, 469, 322, 74, 86, 243, 102, 388, 77, 209, 63, 20, 245, 208, 242, 412, 223, 112, 443, 470, 479, 174, 190, 338, 388, 334, 64, 125, 157, 194, 14, 496, 56, 369, 300, 291, 329, 267, 235, 254, 308, 388, 334, 485, 403, 381, 34, 30, 99, 116, 266, 289, 195, 73, 137, 158, 445, 72, 264, 264, 75, 198, 386, 273, 91, 290, 144, 292, 402, 442, 454, 164, 163, 446, 24, 264, 264, 456, 343, 66, 199, 418, 103, 150, 294, 351, 509, 120, 313, 467, 399, 331, 264, 128, 4, 487, 180, 390, 79, 304, 57, 202, 495, 299, 213, 225, 151, 460, 392] + 15: [401, 243, 436, 322, 305, 199, 454, 477, 112, 236, 41, 131, 166, 177, 372, 149, 23, 286, 21, 370, 45, 47, 174, 470, 320, 135, 473, 387, 79, 172, 448, 75, 232, 163, 286, 21, 106, 201, 278, 241, 497, 296, 99, 129, 13, 52, 253, 7, 340, 251, 496, 286, 393, 159, 488, 3, 344, 227, 19, 301, 16, 51, 338, 252, 154, 272, 491, 116, 286, 390, 159, 328, 360, 173, 202, 510, 114, 481, 214, 147, 10, 25, 337, 205, 11, 286, 243, 325, 35, 136, 388, 432, 269, 295, 430, 333, 32, 289, 309, 300, 193, 297, 324, 378, 216, 119, 242, 185, 376, 511, 284, 263, 476, 102, 132, 5, 115, 151, 196, 324, 37, 414, 363, 455, 392, 288, 480, 302, 386, 169, 162, 484, 402, 82, 239, 321, 362, 378, 385, 471, 384, 398, 509, 171, 238, 111, 170, 478, 351, 502, 6, 0, 39, 298, 425, 482, 160, 20, 275, 33, 314, 459, 17, 506, 231, 54, 399, 353, 410, 30, 73, 180, 142, 218, 421, 233, 155, 326, 224, 22, 423, 150, 469, 427, 349, 126, 215, 73, 88, 101, 381, 485, 148, 486, 267, 437, 394, 24, 449, 176, 237, 156, 165, 103, 73, 294, 487, 346, 235, 413, 1, 144, 58, 316, 230, 153, 240, 355, 310, 18, 2, 317, 42, 429, 415, 128, 46, 66, 158, 121, 94, 137, 266, 26, 157, 336, 379, 412, 317, 42, 191, 108, 209, 276, 264, 130, 489, 38, 364, 244, 29, 134, 68, 424, 187, 317, 229, 285, 460, 120, 89, 44, 222, 475, 226, 98, 408, 508, 441, 83, 245, 260, 317, 383, 312, 282, 113, 179, 357, 152, 407, 123, 331, 466, 122, 435, 270, 451, 396, 317, 383, 307, 354, 197, 330, 405, 259, 212, 368, 452, 140, 211, 292, 440, 105, 257, 467, 97, 246, 374, 225, 303, 188, 409, 334, 428, 343, 118, 261, 100, 72, 433, 190, 467, 277, 446, 498, 348, 382, 299, 192, 293, 352, 250, 345, 500, 438, 65, 311, 380, 467, 208, 319, 90, 468, 248, 27, 463, 184, 64, 281, 178, 439, 210, 416, 318, 107, 467, 208, 445, 203, 141, 404, 59, 256, 161, 411, 84, 494, 223, 397, 56, 306, 8, 467, 208, 93, 67, 219, 507, 273, 373, 472, 450, 280, 342, 164, 499, 194, 221, 434, 467, 125, 341, 133, 110, 258, 175, 279, 96, 85, 61, 48, 145, 117, 15, 57, 375, 467, 42, 146, 86, 313, 138, 182, 458, 291, 217, 87, 479, 304, 367, 268, 143, 442, 74, 371, 76, 474, 453, 195, 91, 504, 34, 493, 80, 389, 186, 53, 198, 426, 290, 74, 371, 127, 77, 329, 369, 247, 443, 366, 204, 124, 28, 50, 420, 327, 109, 490, 74, 462, 255, 181, 308, 315, 168, 249, 4, 339, 350, 183, 63, 271, 14, 81, 262, 492, 371, 254, 503, 358, 69, 332, 456, 9, 359, 78, 365, 265, 377, 323, 49, 95, 447, 189, 356, 213, 220, 283, 418, 505, 419, 62, 36, 501, 92, 495, 274, 403, 55, 206, 206, 43, 361, 391, 457, 228, 167, 444, 12, 60, 104, 464, 335, 347, 287, 139, 206, 200, 417, 400, 207, 483, 71, 422, 234, 395, 40, 461, 70, 465, 31, 431, 406] + 16: [486, 27, 58, 437, 480, 314, 280, 457, 171, 179, 310, 172, 117, 150, 307, 401, 94, 486, 154, 312, 493, 93, 418, 10, 149, 347, 88, 496, 111, 318, 78, 147, 268, 488, 486, 296, 405, 424, 323, 142, 13, 316, 356, 416, 254, 257, 408, 23, 21, 230, 360, 486, 505, 462, 184, 24, 12, 203, 136, 243, 98, 255, 127, 275, 327, 160, 313, 383, 486, 227, 231, 109, 54, 193, 346, 426, 182, 264, 308, 156, 303, 66, 64, 86, 215, 486, 361, 377, 439, 177, 370, 251, 341, 246, 344, 35, 38, 311, 336, 220, 250, 329, 486, 293, 469, 376, 198, 478, 485, 229, 1, 491, 61, 425, 174, 163, 19, 357, 498, 101, 232, 442, 340, 509, 444, 85, 100, 81, 191, 213, 8, 387, 59, 278, 475, 47, 101, 87, 320, 102, 4, 71, 422, 53, 315, 178, 240, 446, 371, 506, 211, 271, 221, 101, 500, 130, 467, 364, 317, 279, 420, 0, 253, 206, 294, 241, 80, 274, 391, 26, 101, 115, 77, 301, 299, 36, 79, 395, 96, 92, 49, 355, 388, 472, 152, 104, 159, 101, 126, 345, 205, 502, 15, 380, 124, 190, 56, 31, 135, 260, 338, 353, 196, 389, 101, 451, 435, 266, 20, 181, 304, 50, 46, 419, 399, 362, 48, 272, 186, 68, 382, 158, 412, 407, 82, 507, 233, 427, 210, 330, 223, 76, 228, 22, 133, 331, 474, 277, 158, 372, 30, 14, 222, 454, 458, 443, 67, 44, 374, 471, 119, 155, 343, 252, 218, 158, 396, 57, 145, 173, 209, 70, 75, 483, 321, 453, 43, 508, 32, 284, 359, 348, 158, 16, 167, 248, 187, 402, 333, 495, 339, 25, 91, 431, 436, 306, 490, 11, 108, 141, 460, 134, 244, 45, 273, 288, 433, 406, 385, 197, 73, 28, 487, 415, 297, 183, 141, 350, 267, 151, 455, 501, 409, 125, 334, 122, 261, 489, 337, 411, 309, 326, 305, 141, 350, 69, 118, 237, 180, 354, 185, 165, 368, 169, 103, 17, 351, 225, 430, 404, 141, 412, 3, 421, 386, 373, 153, 120, 283, 33, 497, 365, 452, 143, 37, 5, 60, 302, 51, 113, 342, 219, 207, 188, 479, 34, 132, 461, 114, 238, 7, 511, 285, 262, 302, 51, 281, 494, 65, 74, 423, 175, 140, 438, 263, 482, 470, 62, 290, 256, 259, 83, 51, 476, 282, 397, 363, 289, 322, 335, 270, 90, 214, 468, 110, 116, 195, 298, 83, 51, 107, 349, 139, 144, 292, 328, 379, 18, 157, 170, 121, 105, 39, 166, 258, 212, 358, 217, 168, 325, 434, 161, 450, 99, 247, 6, 146, 239, 295, 106, 234, 287, 212, 162, 400, 394, 29, 97, 392, 40, 428, 194, 129, 481, 366, 128, 42, 441, 403, 212, 162, 414, 112, 245, 352, 324, 276, 459, 464, 63, 249, 202, 332, 378, 242, 55, 367, 477, 417, 384, 432, 466, 369, 164, 440, 41, 265, 137, 148, 463, 499, 84, 208, 367, 358, 410, 224, 95, 199, 484, 200, 393, 236, 131, 300, 492, 449, 503, 398, 269, 192, 192, 201, 226, 123, 510, 72, 390, 235, 176, 319, 89, 447, 448, 375, 445, 216, 192, 477, 52, 9, 138, 286, 2, 504, 189, 465, 429, 204, 381, 413, 456, 473, 291] + 17: [58, 262, 482, 458, 414, 42, 385, 469, 353, 501, 320, 125, 227, 226, 397, 182, 97, 58, 300, 319, 253, 154, 380, 371, 48, 129, 399, 144, 410, 332, 90, 19, 175, 306, 58, 473, 484, 383, 163, 406, 199, 362, 313, 114, 303, 117, 39, 171, 245, 158, 293, 58, 473, 85, 381, 321, 444, 46, 149, 316, 388, 247, 234, 457, 159, 443, 424, 366, 58, 200, 377, 198, 176, 24, 82, 387, 174, 93, 506, 357, 250, 427, 196, 53, 204, 58, 200, 128, 16, 259, 294, 6, 288, 468, 237, 466, 62, 115, 358, 63, 451, 112, 58, 101, 446, 166, 251, 221, 403, 460, 296, 202, 263, 27, 459, 61, 279, 499, 30, 58, 65, 438, 140, 51, 106, 75, 375, 350, 109, 141, 137, 428, 50, 142, 415, 201, 489, 134, 347, 207, 54, 401, 329, 55, 225, 278, 386, 402, 416, 476, 472, 243, 302, 489, 309, 491, 304, 360, 340, 131, 312, 4, 217, 285, 365, 338, 151, 183, 328, 311, 489, 309, 13, 488, 173, 498, 194, 110, 378, 98, 43, 450, 132, 503, 261, 216, 185, 489, 232, 181, 121, 374, 452, 337, 180, 36, 44, 229, 88, 2, 167, 373, 206, 364, 334, 134, 327, 99, 474, 291, 417, 486, 102, 480, 211, 257, 11, 68, 31, 419, 164, 372, 188, 18, 213, 40, 490, 179, 390, 470, 35, 0, 344, 130, 272, 52, 441, 5, 282, 188, 161, 222, 240, 497, 69, 355, 150, 105, 301, 29, 314, 169, 20, 290, 507, 236, 67, 172, 135, 289, 295, 157, 191, 100, 214, 348, 156, 305, 393, 160, 165, 413, 152, 80, 478, 351, 45, 318, 500, 418, 41, 177, 218, 246, 511, 277, 273, 83, 405, 152, 80, 376, 271, 47, 485, 72, 349, 464, 147, 59, 504, 456, 124, 308, 190, 471, 152, 67, 449, 454, 170, 103, 215, 15, 509, 411, 195, 81, 442, 363, 315, 268, 136, 168, 256, 284, 425, 281, 28, 57, 235, 3, 323, 220, 56, 389, 205, 310, 367, 356, 168, 256, 292, 260, 322, 370, 255, 326, 392, 453, 335, 465, 339, 208, 346, 445, 432, 168, 455, 84, 505, 270, 276, 333, 396, 126, 330, 495, 10, 189, 298, 21, 22, 118, 168, 487, 286, 420, 448, 398, 433, 408, 483, 209, 104, 400, 435, 369, 361, 461, 228, 168, 80, 233, 336, 139, 120, 352, 382, 341, 394, 431, 267, 266, 423, 37, 148, 368, 113, 256, 307, 223, 193, 79, 14, 8, 430, 127, 73, 343, 510, 89, 265, 274, 244, 297, 494, 492, 92, 269, 409, 407, 34, 119, 439, 324, 95, 391, 153, 1, 479, 384, 297, 275, 133, 187, 7, 258, 25, 123, 74, 70, 178, 447, 254, 186, 146, 23, 219, 9, 143, 283, 436, 440, 462, 429, 404, 502, 78, 60, 249, 379, 252, 210, 475, 224, 264, 359, 242, 299, 325, 122, 422, 91, 345, 239, 197, 96, 212, 412, 32, 49, 426, 264, 143, 94, 12, 496, 342, 395, 87, 317, 138, 38, 437, 192, 76, 116, 287, 145, 264, 143, 354, 162, 248, 33, 64, 434, 280, 108, 238, 481, 421, 155, 331, 71, 86, 26, 26, 467, 184, 477, 107, 17, 111, 77, 493, 66, 203, 241, 230, 463, 508, 231] + 18: [371, 25, 254, 75, 370, 330, 157, 378, 352, 26, 143, 209, 460, 161, 127, 197, 186, 376, 43, 315, 380, 445, 171, 268, 93, 3, 91, 314, 196, 447, 144, 363, 292, 465, 430, 45, 189, 247, 434, 48, 14, 235, 137, 364, 294, 223, 360, 492, 130, 338, 218, 430, 45, 471, 326, 84, 402, 97, 461, 490, 307, 216, 81, 21, 183, 399, 80, 411, 430, 487, 128, 23, 83, 467, 229, 13, 428, 206, 439, 504, 139, 180, 416, 187, 256, 430, 487, 56, 221, 126, 55, 58, 312, 357, 68, 413, 87, 11, 191, 283, 46, 274, 430, 241, 124, 185, 120, 488, 166, 238, 508, 409, 318, 118, 105, 194, 199, 419, 387, 287, 484, 379, 342, 220, 310, 263, 462, 282, 288, 425, 339, 237, 437, 478, 65, 463, 287, 140, 134, 446, 486, 480, 468, 253, 2, 88, 60, 300, 114, 242, 153, 278, 95, 287, 464, 64, 403, 333, 325, 483, 279, 230, 59, 500, 260, 304, 453, 42, 400, 208, 287, 464, 190, 415, 54, 285, 38, 5, 176, 192, 18, 159, 262, 368, 96, 317, 350, 502, 484, 184, 146, 362, 296, 163, 393, 424, 448, 92, 28, 255, 454, 475, 348, 117, 106, 476, 214, 466, 394, 496, 243, 142, 267, 306, 0, 442, 30, 359, 433, 7, 321, 106, 476, 108, 328, 412, 250, 455, 427, 358, 160, 443, 322, 269, 302, 383, 226, 107, 106, 62, 214, 102, 298, 4, 404, 9, 377, 284, 308, 219, 299, 27, 51, 1, 495, 106, 291, 273, 82, 473, 345, 429, 44, 236, 420, 297, 200, 367, 401, 261, 293, 173, 106, 291, 273, 259, 109, 76, 6, 482, 354, 212, 112, 19, 234, 15, 135, 36, 35, 388, 384, 231, 498, 195, 217, 266, 337, 201, 452, 132, 138, 31, 375, 113, 125, 331, 388, 384, 248, 66, 344, 50, 276, 414, 198, 89, 355, 232, 365, 100, 385, 349, 396, 222, 341, 202, 193, 49, 320, 101, 213, 450, 12, 72, 158, 506, 505, 451, 123, 174, 222, 244, 40, 110, 149, 386, 8, 162, 343, 303, 335, 336, 53, 449, 151, 444, 286, 222, 423, 395, 472, 170, 67, 351, 271, 136, 39, 145, 509, 129, 63, 205, 410, 309, 222, 507, 204, 398, 47, 225, 510, 353, 116, 381, 32, 390, 372, 133, 324, 111, 469, 246, 148, 408, 258, 52, 61, 33, 389, 477, 257, 210, 172, 489, 289, 177, 167, 239, 188, 470, 165, 323, 150, 456, 240, 440, 249, 104, 295, 34, 316, 441, 305, 182, 71, 188, 501, 491, 485, 474, 369, 406, 98, 69, 10, 503, 382, 405, 119, 438, 334, 20, 188, 215, 346, 457, 154, 227, 169, 141, 121, 431, 152, 436, 86, 16, 147, 78, 311, 188, 366, 432, 224, 280, 313, 374, 511, 99, 347, 494, 479, 29, 37, 131, 407, 168, 90, 70, 179, 245, 103, 493, 265, 329, 361, 207, 481, 391, 272, 499, 57, 175, 421, 90, 70, 178, 270, 426, 435, 422, 264, 181, 275, 115, 356, 17, 156, 418, 397, 228, 90, 319, 203, 417, 327, 392, 277, 373, 459, 281, 251, 73, 290, 458, 252, 211, 122, 90, 319, 24, 77, 74, 79, 41, 94, 233, 301, 22, 340, 155, 164, 332, 85, 497] + 19: [21, 320, 64, 323, 374, 136, 162, 121, 421, 442, 265, 97, 233, 55, 287, 371, 368, 21, 61, 167, 498, 178, 469, 270, 79, 289, 351, 12, 81, 115, 24, 110, 208, 45, 21, 235, 327, 151, 397, 284, 308, 433, 242, 447, 467, 407, 206, 118, 492, 499, 326, 21, 267, 352, 294, 23, 217, 458, 438, 260, 362, 125, 87, 302, 244, 234, 292, 361, 344, 255, 359, 9, 405, 329, 381, 200, 171, 117, 429, 462, 175, 482, 25, 5, 253, 344, 219, 487, 319, 29, 446, 312, 382, 126, 48, 383, 422, 224, 342, 26, 145, 372, 344, 221, 349, 316, 437, 40, 455, 218, 346, 277, 465, 336, 281, 230, 163, 354, 31, 324, 489, 73, 155, 449, 165, 261, 227, 401, 189, 250, 39, 504, 384, 241, 220, 256, 324, 489, 337, 485, 107, 228, 112, 420, 285, 321, 27, 280, 309, 288, 90, 423, 154, 324, 318, 506, 307, 246, 184, 497, 248, 454, 127, 247, 389, 339, 93, 67, 268, 231, 324, 432, 494, 408, 299, 338, 251, 104, 262, 202, 348, 43, 272, 109, 7, 238, 133, 324, 432, 399, 273, 128, 411, 470, 476, 225, 252, 113, 426, 52, 63, 353, 62, 418, 324, 431, 116, 315, 419, 425, 140, 484, 279, 481, 222, 413, 191, 357, 406, 452, 160, 324, 157, 138, 317, 60, 456, 340, 510, 172, 301, 58, 369, 59, 185, 286, 488, 205, 207, 385, 168, 199, 386, 472, 341, 473, 416, 174, 356, 89, 360, 223, 91, 86, 430, 453, 295, 96, 99, 297, 36, 331, 395, 403, 239, 358, 376, 443, 388, 102, 209, 181, 2, 78, 367, 398, 68, 291, 120, 11, 370, 195, 194, 49, 38, 461, 150, 332, 464, 2, 187, 334, 457, 290, 119, 439, 500, 179, 188, 149, 130, 380, 480, 503, 144, 15, 2, 187, 47, 197, 76, 509, 16, 468, 410, 56, 322, 345, 355, 158, 275, 69, 41, 2, 105, 460, 249, 114, 173, 266, 141, 343, 237, 50, 88, 143, 466, 298, 507, 32, 2, 295, 445, 435, 216, 436, 379, 257, 101, 310, 66, 211, 478, 417, 363, 139, 164, 33, 177, 10, 131, 156, 451, 471, 210, 134, 51, 508, 83, 229, 159, 501, 377, 42, 33, 129, 44, 146, 232, 212, 396, 450, 53, 108, 161, 3, 196, 17, 303, 18, 183, 33, 364, 20, 448, 193, 6, 409, 293, 28, 278, 166, 236, 243, 375, 74, 463, 415, 33, 364, 427, 106, 98, 434, 30, 214, 496, 502, 373, 394, 4, 274, 75, 123, 475, 33, 122, 402, 13, 57, 85, 8, 325, 259, 192, 77, 404, 170, 176, 390, 19, 347, 33, 122, 111, 391, 440, 94, 366, 92, 147, 72, 269, 306, 215, 335, 135, 1, 203, 33, 122, 226, 254, 314, 491, 124, 245, 511, 328, 182, 393, 204, 365, 80, 132, 378, 169, 180, 84, 493, 37, 495, 392, 153, 283, 148, 0, 282, 479, 190, 264, 304, 271, 103, 103, 276, 313, 474, 505, 444, 311, 350, 35, 330, 22, 263, 137, 46, 412, 300, 103, 70, 100, 490, 152, 486, 333, 441, 198, 142, 424, 305, 400, 240, 71, 258, 65, 103, 70, 34, 213, 201, 483, 186, 82, 477, 459, 95, 387, 414, 428, 14, 296, 54] + 20: [472, 468, 273, 448, 460, 244, 389, 26, 337, 450, 302, 291, 382, 360, 403, 162, 361, 472, 164, 314, 266, 371, 400, 17, 352, 15, 454, 357, 299, 390, 210, 111, 285, 149, 472, 164, 143, 189, 205, 453, 252, 177, 367, 31, 98, 10, 228, 156, 428, 5, 433, 472, 222, 404, 60, 276, 173, 432, 269, 258, 153, 126, 101, 508, 88, 294, 510, 395, 374, 190, 431, 9, 308, 417, 241, 340, 333, 500, 504, 509, 455, 136, 94, 67, 123, 374, 190, 41, 366, 470, 391, 120, 115, 212, 237, 439, 377, 378, 435, 271, 348, 95, 374, 506, 334, 424, 23, 259, 196, 342, 346, 325, 51, 6, 169, 144, 286, 267, 78, 430, 413, 113, 365, 154, 358, 478, 364, 121, 104, 411, 248, 423, 183, 197, 192, 34, 275, 324, 368, 48, 59, 204, 332, 13, 462, 245, 148, 296, 130, 239, 336, 318, 442, 275, 413, 313, 443, 316, 422, 19, 339, 87, 182, 480, 117, 322, 380, 463, 249, 12, 63, 50, 260, 290, 160, 175, 298, 420, 217, 56, 79, 225, 475, 58, 261, 305, 484, 63, 344, 195, 409, 456, 30, 323, 92, 36, 216, 457, 42, 7, 394, 459, 499, 72, 63, 76, 221, 328, 477, 133, 507, 279, 501, 105, 429, 147, 180, 303, 283, 257, 134, 109, 50, 452, 53, 106, 416, 354, 80, 108, 251, 397, 1, 129, 55, 151, 353, 240, 186, 54, 247, 310, 320, 66, 392, 215, 490, 90, 379, 29, 436, 451, 498, 227, 235, 186, 256, 33, 43, 369, 65, 330, 223, 343, 171, 356, 191, 224, 211, 99, 207, 491, 186, 254, 511, 174, 137, 410, 185, 170, 326, 77, 263, 112, 359, 497, 100, 419, 388, 399, 54, 163, 200, 467, 20, 347, 89, 71, 446, 83, 91, 206, 304, 329, 127, 141, 414, 375, 464, 405, 142, 96, 2, 187, 132, 158, 295, 82, 57, 307, 188, 426, 441, 414, 54, 386, 387, 21, 157, 287, 327, 24, 292, 492, 496, 124, 362, 489, 486, 44, 167, 482, 317, 208, 281, 372, 355, 219, 125, 309, 338, 128, 406, 198, 81, 465, 474, 167, 226, 230, 32, 84, 282, 425, 150, 479, 22, 418, 434, 319, 61, 181, 119, 264, 167, 461, 268, 75, 46, 14, 145, 473, 270, 401, 274, 236, 47, 218, 278, 376, 255, 167, 461, 230, 194, 350, 97, 487, 231, 25, 485, 396, 351, 300, 209, 289, 166, 146, 167, 375, 262, 502, 110, 62, 39, 301, 165, 172, 3, 16, 152, 238, 284, 40, 118, 168, 220, 73, 140, 0, 407, 306, 280, 383, 469, 8, 4, 363, 93, 393, 494, 52, 131, 220, 421, 495, 242, 293, 161, 28, 341, 437, 107, 213, 370, 38, 488, 74, 311, 384, 312, 466, 349, 232, 277, 103, 415, 193, 37, 179, 288, 70, 438, 385, 265, 449, 384, 440, 49, 35, 68, 331, 114, 102, 345, 229, 458, 18, 27, 315, 447, 178, 176, 122, 373, 159, 408, 155, 335, 481, 85, 184, 493, 138, 445, 444, 250, 199, 427, 64, 122, 312, 33, 253, 272, 321, 381, 412, 203, 233, 402, 11, 297, 116, 139, 214, 398, 373, 373, 421, 503, 69, 234, 471, 483, 201, 86, 135, 243, 202, 476, 45, 246, 505] + 21: [142, 481, 350, 362, 340, 96, 382, 301, 255, 356, 66, 473, 432, 232, 63, 99, 44, 142, 481, 226, 88, 326, 180, 150, 374, 38, 496, 400, 19, 252, 455, 456, 302, 251, 142, 5, 349, 166, 260, 61, 154, 297, 178, 228, 452, 278, 379, 351, 169, 259, 36, 142, 231, 325, 343, 244, 327, 149, 279, 79, 318, 339, 219, 253, 188, 319, 436, 240, 142, 467, 145, 447, 128, 387, 403, 247, 56, 338, 396, 449, 35, 498, 330, 298, 239, 342, 8, 282, 309, 182, 444, 78, 469, 485, 208, 109, 484, 300, 75, 272, 322, 72, 171, 177, 20, 427, 490, 495, 22, 173, 347, 331, 71, 98, 2, 144, 193, 489, 333, 171, 161, 92, 194, 509, 127, 280, 153, 129, 52, 478, 202, 122, 335, 101, 394, 172, 171, 161, 463, 141, 389, 314, 375, 216, 196, 11, 429, 357, 401, 390, 391, 148, 352, 171, 107, 460, 119, 406, 59, 425, 423, 13, 60, 203, 264, 241, 192, 451, 140, 471, 171, 243, 315, 186, 497, 198, 197, 290, 472, 491, 86, 268, 482, 276, 41, 134, 179, 171, 227, 159, 262, 167, 97, 165, 271, 441, 267, 416, 12, 49, 291, 163, 214, 398, 171, 227, 229, 346, 151, 442, 388, 235, 9, 413, 269, 132, 4, 94, 200, 67, 83, 171, 28, 360, 121, 505, 15, 321, 103, 363, 238, 51, 385, 308, 337, 306, 130, 106, 171, 28, 25, 64, 111, 288, 412, 270, 100, 77, 437, 195, 418, 213, 479, 296, 248, 207, 502, 91, 354, 162, 402, 420, 329, 224, 136, 250, 168, 125, 133, 152, 201, 353, 439, 499, 465, 426, 361, 126, 417, 503, 376, 433, 501, 292, 332, 249, 234, 108, 380, 439, 499, 160, 181, 45, 233, 185, 507, 399, 508, 7, 18, 123, 206, 466, 33, 348, 157, 164, 392, 493, 320, 105, 135, 81, 155, 395, 494, 263, 245, 204, 453, 30, 147, 266, 364, 47, 209, 355, 73, 283, 158, 104, 176, 365, 211, 446, 57, 476, 34, 487, 266, 164, 443, 312, 70, 367, 372, 277, 87, 450, 311, 274, 377, 90, 328, 373, 295, 293, 215, 89, 37, 222, 257, 393, 32, 378, 431, 287, 27, 419, 407, 54, 334, 383, 293, 215, 317, 115, 310, 205, 124, 289, 371, 265, 284, 82, 114, 110, 480, 3, 23, 293, 364, 404, 428, 462, 384, 93, 305, 117, 69, 324, 316, 21, 414, 210, 504, 397, 510, 221, 281, 459, 386, 421, 336, 448, 323, 483, 156, 445, 464, 113, 307, 48, 65, 510, 215, 212, 368, 486, 461, 430, 183, 50, 225, 146, 381, 217, 218, 440, 138, 174, 341, 10, 143, 80, 26, 454, 116, 303, 46, 477, 76, 411, 184, 369, 345, 237, 14, 341, 221, 62, 29, 468, 457, 42, 358, 405, 0, 294, 68, 191, 1, 344, 137, 223, 112, 10, 304, 139, 470, 438, 55, 118, 120, 299, 246, 415, 275, 254, 74, 273, 199, 458, 242, 304, 506, 39, 31, 189, 175, 256, 190, 95, 409, 410, 370, 40, 53, 24, 424, 242, 475, 366, 511, 220, 359, 230, 187, 492, 236, 6, 488, 286, 85, 102, 131, 17, 242, 435, 258, 434, 313, 422, 84, 285, 58, 500, 170, 43, 16, 474, 408, 261] + 22: [316, 286, 180, 279, 303, 259, 102, 122, 306, 11, 488, 232, 168, 265, 401, 134, 183, 304, 333, 455, 142, 460, 189, 423, 0, 251, 50, 89, 341, 223, 275, 2, 356, 311, 362, 387, 90, 85, 154, 450, 445, 135, 399, 351, 261, 170, 84, 95, 285, 494, 210, 362, 38, 276, 60, 478, 290, 376, 283, 410, 66, 186, 161, 263, 271, 195, 92, 211, 362, 38, 74, 31, 169, 505, 471, 227, 33, 434, 326, 141, 202, 347, 40, 13, 67, 374, 377, 364, 313, 474, 200, 253, 442, 291, 103, 194, 281, 91, 144, 248, 181, 457, 374, 111, 236, 163, 221, 346, 185, 81, 421, 464, 267, 358, 153, 46, 98, 339, 48, 151, 104, 432, 441, 51, 500, 414, 444, 196, 349, 25, 266, 370, 256, 386, 53, 375, 177, 348, 93, 498, 312, 403, 138, 305, 277, 343, 473, 174, 80, 491, 477, 480, 36, 207, 348, 24, 470, 215, 77, 357, 99, 10, 320, 86, 110, 222, 213, 5, 82, 391, 458, 348, 467, 501, 162, 352, 388, 120, 70, 117, 220, 212, 54, 327, 27, 34, 344, 106, 71, 16, 235, 447, 108, 435, 371, 496, 369, 228, 380, 226, 420, 490, 482, 439, 456, 71, 90, 119, 113, 14, 402, 21, 324, 246, 44, 302, 413, 158, 400, 79, 289, 392, 71, 288, 3, 201, 504, 254, 45, 208, 96, 395, 23, 20, 173, 164, 484, 29, 240, 296, 56, 146, 255, 384, 449, 244, 307, 125, 216, 137, 132, 160, 55, 314, 506, 451, 245, 87, 463, 274, 427, 145, 175, 280, 483, 390, 440, 466, 165, 359, 35, 166, 451, 245, 353, 241, 325, 462, 448, 382, 363, 297, 459, 129, 437, 398, 61, 323, 214, 451, 6, 487, 415, 234, 264, 37, 124, 412, 159, 268, 404, 489, 446, 116, 65, 225, 451, 229, 487, 373, 28, 239, 350, 424, 184, 511, 508, 315, 148, 416, 417, 192, 338, 451, 360, 426, 156, 15, 39, 354, 69, 372, 233, 157, 499, 197, 468, 121, 30, 123, 451, 360, 72, 367, 62, 107, 443, 345, 88, 172, 242, 294, 479, 365, 317, 405, 475, 451, 296, 509, 260, 205, 150, 52, 408, 433, 130, 318, 309, 298, 258, 83, 336, 301, 41, 147, 393, 59, 378, 219, 224, 143, 332, 385, 32, 193, 152, 131, 237, 100, 337, 41, 155, 334, 411, 9, 379, 397, 465, 112, 18, 178, 502, 243, 292, 218, 438, 394, 41, 155, 334, 191, 486, 105, 49, 97, 322, 503, 355, 127, 495, 203, 452, 12, 167, 41, 43, 139, 319, 171, 287, 252, 381, 481, 199, 407, 492, 361, 472, 126, 295, 75, 300, 147, 493, 310, 428, 58, 389, 136, 217, 507, 78, 8, 63, 331, 409, 42, 149, 250, 396, 140, 101, 179, 128, 328, 293, 188, 22, 308, 273, 182, 109, 17, 231, 342, 250, 436, 140, 7, 485, 335, 190, 430, 453, 94, 418, 282, 57, 76, 454, 198, 114, 206, 257, 269, 118, 238, 47, 461, 476, 429, 230, 366, 419, 431, 383, 299, 406, 19, 206, 396, 493, 469, 510, 329, 247, 187, 209, 321, 330, 284, 4, 176, 249, 115, 133, 206, 396, 425, 26, 278, 422, 497, 270, 262, 340, 68, 204, 368, 64, 73, 272, 1] + 23: [292, 33, 353, 107, 87, 4, 329, 274, 392, 312, 354, 273, 55, 165, 121, 487, 301, 292, 50, 483, 198, 474, 230, 408, 166, 82, 430, 189, 424, 400, 451, 215, 497, 193, 292, 233, 149, 226, 489, 35, 40, 360, 490, 38, 117, 442, 239, 257, 11, 238, 283, 292, 334, 492, 476, 106, 295, 364, 56, 112, 328, 153, 162, 278, 17, 115, 187, 277, 292, 334, 139, 191, 25, 410, 272, 42, 366, 266, 3, 403, 61, 491, 433, 45, 0, 292, 417, 246, 258, 244, 368, 199, 280, 114, 2, 7, 228, 447, 321, 284, 404, 229, 99, 33, 116, 291, 502, 124, 234, 440, 275, 499, 79, 184, 51, 510, 340, 457, 401, 281, 247, 479, 10, 279, 203, 88, 141, 383, 507, 322, 471, 123, 26, 505, 70, 484, 281, 450, 417, 343, 452, 34, 223, 453, 93, 173, 46, 195, 100, 268, 263, 155, 495, 53, 243, 478, 290, 41, 305, 323, 190, 346, 251, 462, 422, 427, 267, 212, 421, 16, 53, 357, 210, 67, 439, 449, 363, 236, 256, 384, 378, 66, 58, 59, 336, 315, 288, 53, 357, 47, 467, 362, 359, 365, 503, 454, 344, 486, 1, 355, 435, 72, 129, 377, 53, 140, 264, 386, 307, 24, 172, 20, 434, 63, 13, 240, 380, 174, 265, 12, 119, 53, 140, 170, 68, 500, 147, 349, 330, 506, 381, 348, 477, 304, 118, 395, 293, 387, 53, 398, 136, 60, 14, 385, 94, 168, 310, 185, 425, 158, 29, 159, 209, 469, 27, 53, 113, 388, 367, 245, 8, 460, 216, 331, 180, 282, 396, 248, 407, 416, 463, 271, 53, 470, 196, 405, 15, 120, 345, 175, 488, 326, 501, 178, 227, 414, 6, 143, 134, 423, 358, 409, 379, 327, 504, 161, 142, 432, 260, 83, 419, 151, 481, 325, 86, 509, 423, 309, 84, 314, 144, 127, 54, 376, 182, 270, 89, 75, 459, 241, 65, 96, 389, 423, 316, 109, 231, 222, 335, 333, 152, 498, 296, 311, 480, 194, 31, 73, 207, 269, 167, 220, 221, 337, 473, 81, 249, 77, 286, 74, 145, 197, 472, 18, 375, 294, 455, 468, 220, 299, 91, 415, 49, 225, 32, 382, 431, 98, 393, 371, 204, 30, 176, 48, 104, 250, 186, 21, 224, 39, 64, 300, 208, 372, 276, 171, 298, 458, 160, 62, 420, 104, 69, 133, 394, 36, 255, 138, 406, 130, 252, 164, 485, 429, 319, 508, 132, 446, 104, 179, 445, 237, 399, 308, 126, 177, 108, 370, 347, 390, 219, 313, 28, 438, 214, 104, 220, 361, 213, 320, 111, 461, 105, 125, 441, 103, 511, 324, 351, 397, 157, 496, 426, 250, 110, 169, 217, 5, 192, 135, 466, 412, 317, 78, 411, 356, 242, 391, 218, 97, 250, 287, 338, 128, 150, 92, 137, 339, 342, 428, 102, 254, 23, 232, 369, 95, 413, 37, 146, 352, 101, 494, 131, 200, 122, 482, 261, 448, 253, 202, 436, 19, 183, 413, 250, 373, 303, 80, 259, 289, 465, 156, 52, 85, 464, 90, 262, 341, 297, 437, 163, 163, 350, 148, 306, 201, 374, 211, 302, 475, 235, 493, 22, 206, 43, 205, 44, 163, 163, 188, 71, 154, 285, 76, 9, 402, 456, 444, 57, 418, 332, 181, 443, 318] + 24: [302, 331, 361, 226, 60, 496, 354, 241, 217, 279, 379, 355, 102, 508, 65, 1, 106, 302, 331, 163, 149, 313, 321, 45, 216, 461, 38, 94, 324, 381, 362, 428, 164, 444, 302, 507, 328, 402, 184, 481, 104, 12, 34, 86, 157, 167, 74, 275, 186, 458, 103, 302, 506, 240, 455, 397, 466, 293, 49, 14, 244, 386, 406, 230, 478, 243, 198, 211, 302, 44, 44, 290, 89, 57, 109, 100, 210, 353, 452, 172, 400, 284, 170, 417, 250, 48, 471, 436, 451, 2, 245, 272, 453, 372, 260, 501, 438, 342, 456, 440, 437, 487, 48, 150, 322, 473, 92, 197, 6, 180, 336, 238, 403, 373, 448, 407, 289, 309, 492, 48, 150, 485, 82, 168, 176, 107, 83, 306, 256, 307, 95, 285, 33, 348, 37, 510, 48, 123, 56, 21, 445, 195, 264, 337, 15, 394, 134, 237, 11, 418, 479, 414, 129, 310, 41, 25, 196, 374, 101, 135, 188, 96, 39, 383, 384, 29, 228, 412, 122, 344, 310, 41, 239, 84, 194, 97, 220, 365, 173, 218, 85, 22, 233, 387, 19, 317, 371, 310, 471, 299, 232, 301, 169, 261, 152, 395, 409, 274, 138, 219, 343, 504, 202, 378, 87, 127, 427, 441, 18, 142, 393, 326, 133, 126, 419, 154, 90, 178, 483, 111, 66, 199, 31, 36, 46, 255, 366, 53, 391, 181, 161, 28, 247, 482, 156, 117, 472, 429, 199, 31, 408, 296, 55, 79, 105, 363, 297, 346, 398, 269, 108, 206, 463, 23, 166, 99, 327, 110, 474, 80, 40, 179, 125, 390, 431, 477, 430, 192, 369, 171, 329, 207, 447, 273, 376, 144, 70, 75, 213, 165, 4, 130, 305, 315, 17, 258, 368, 5, 434, 0, 212, 221, 291, 67, 58, 52, 318, 112, 246, 488, 319, 174, 222, 433, 505, 26, 0, 139, 141, 259, 498, 248, 280, 278, 499, 281, 231, 449, 183, 155, 205, 420, 292, 0, 382, 304, 120, 201, 177, 276, 63, 401, 236, 277, 475, 494, 457, 422, 294, 359, 0, 382, 69, 9, 61, 413, 88, 62, 460, 148, 454, 215, 268, 421, 351, 300, 91, 0, 493, 114, 314, 137, 35, 249, 54, 24, 78, 253, 76, 425, 396, 364, 283, 132, 442, 212, 503, 151, 64, 286, 145, 370, 356, 334, 225, 392, 467, 335, 282, 323, 234, 404, 212, 357, 267, 7, 98, 121, 288, 68, 191, 42, 200, 124, 235, 204, 459, 410, 51, 265, 423, 263, 271, 470, 147, 349, 385, 465, 214, 338, 242, 27, 502, 332, 316, 51, 160, 367, 146, 77, 203, 119, 208, 59, 190, 153, 491, 358, 254, 30, 380, 13, 227, 3, 303, 143, 340, 416, 73, 497, 257, 193, 10, 330, 350, 375, 405, 312, 377, 227, 3, 182, 469, 262, 72, 320, 360, 325, 486, 426, 439, 116, 495, 136, 252, 415, 227, 339, 43, 341, 480, 159, 443, 162, 140, 345, 32, 311, 489, 424, 446, 71, 308, 227, 339, 158, 16, 8, 333, 435, 131, 270, 295, 411, 50, 347, 468, 352, 175, 266, 432, 3, 476, 115, 128, 223, 187, 298, 47, 450, 462, 251, 209, 118, 113, 464, 500, 432, 3, 229, 490, 389, 484, 388, 189, 185, 509, 399, 81, 511, 224, 93, 20, 287] + 25: [419, 313, 303, 477, 93, 484, 459, 275, 2, 423, 364, 311, 113, 190, 32, 91, 332, 419, 45, 189, 478, 371, 134, 467, 385, 9, 297, 87, 346, 343, 1, 358, 449, 267, 419, 328, 506, 382, 277, 447, 191, 196, 198, 187, 287, 244, 444, 356, 127, 67, 395, 419, 79, 237, 224, 347, 337, 290, 492, 315, 213, 199, 365, 126, 430, 5, 15, 170, 419, 79, 237, 462, 265, 28, 206, 241, 494, 102, 291, 366, 104, 247, 489, 135, 82, 110, 428, 194, 412, 393, 260, 377, 54, 504, 286, 306, 166, 488, 10, 150, 99, 217, 110, 428, 511, 508, 432, 35, 289, 129, 256, 156, 400, 43, 480, 305, 112, 235, 292, 110, 313, 418, 350, 336, 106, 180, 34, 355, 101, 236, 425, 81, 59, 404, 280, 155, 470, 164, 230, 96, 145, 146, 175, 209, 490, 391, 73, 271, 498, 359, 464, 342, 463, 151, 107, 461, 406, 195, 57, 97, 249, 300, 283, 485, 83, 174, 402, 379, 201, 436, 151, 487, 369, 351, 33, 353, 232, 20, 424, 115, 52, 325, 282, 74, 51, 226, 274, 151, 0, 329, 238, 259, 39, 503, 248, 88, 103, 214, 123, 491, 269, 493, 372, 500, 151, 164, 207, 223, 242, 219, 13, 334, 64, 392, 448, 394, 4, 24, 184, 497, 483, 120, 107, 212, 367, 416, 116, 178, 422, 160, 202, 466, 132, 197, 258, 167, 475, 53, 378, 396, 27, 301, 233, 510, 124, 502, 86, 185, 262, 299, 144, 441, 302, 149, 357, 44, 384, 481, 446, 413, 268, 225, 176, 136, 458, 312, 109, 48, 16, 255, 452, 281, 44, 384, 138, 410, 163, 433, 335, 468, 310, 279, 326, 434, 172, 373, 133, 6, 30, 44, 272, 56, 37, 148, 362, 122, 221, 182, 18, 403, 3, 376, 114, 162, 111, 398, 44, 272, 60, 348, 76, 445, 345, 496, 90, 375, 495, 323, 360, 415, 158, 386, 374, 44, 94, 257, 66, 55, 208, 41, 388, 177, 68, 352, 98, 349, 435, 220, 141, 420, 25, 63, 270, 417, 71, 276, 168, 319, 450, 128, 318, 8, 390, 147, 451, 204, 80, 140, 21, 429, 161, 171, 78, 344, 69, 17, 284, 85, 309, 181, 408, 407, 383, 505, 140, 397, 142, 183, 157, 438, 228, 173, 75, 231, 389, 465, 205, 245, 31, 296, 169, 140, 397, 442, 380, 411, 246, 340, 338, 460, 29, 370, 443, 431, 105, 354, 12, 240, 140, 507, 251, 49, 117, 427, 14, 216, 333, 36, 84, 308, 46, 341, 70, 455, 321, 140, 293, 387, 100, 453, 22, 125, 152, 186, 469, 211, 266, 165, 61, 95, 11, 40, 140, 252, 203, 482, 222, 143, 118, 121, 295, 154, 26, 285, 188, 23, 322, 62, 339, 261, 21, 77, 253, 421, 192, 472, 58, 278, 42, 273, 218, 414, 38, 471, 215, 401, 50, 21, 439, 139, 381, 330, 7, 486, 229, 193, 501, 250, 263, 476, 227, 368, 65, 327, 307, 239, 409, 298, 363, 294, 210, 316, 47, 131, 130, 509, 159, 437, 361, 317, 234, 307, 108, 405, 320, 254, 473, 200, 137, 457, 479, 314, 92, 153, 440, 288, 304, 234, 307, 264, 89, 454, 474, 119, 426, 19, 456, 324, 499, 331, 399, 243, 179, 72] + 26: [433, 49, 291, 389, 355, 113, 245, 27, 112, 308, 150, 447, 275, 62, 379, 119, 468, 433, 458, 84, 183, 215, 294, 287, 197, 222, 178, 441, 471, 329, 100, 346, 171, 419, 149, 135, 104, 442, 397, 377, 289, 277, 450, 300, 323, 231, 485, 176, 511, 457, 115, 149, 400, 155, 208, 253, 214, 187, 56, 232, 139, 63, 510, 200, 369, 427, 228, 343, 149, 244, 279, 439, 140, 486, 34, 59, 479, 117, 243, 174, 69, 71, 77, 92, 221, 149, 244, 273, 114, 455, 162, 470, 154, 127, 290, 207, 204, 345, 250, 381, 128, 105, 149, 17, 30, 492, 265, 313, 110, 341, 440, 205, 366, 179, 375, 68, 120, 229, 382, 446, 211, 391, 408, 172, 147, 404, 36, 189, 78, 327, 151, 271, 483, 395, 362, 233, 446, 58, 35, 218, 466, 103, 210, 52, 163, 378, 72, 319, 64, 86, 478, 501, 252, 301, 423, 15, 413, 247, 276, 43, 376, 280, 118, 464, 21, 425, 177, 317, 61, 3, 301, 211, 67, 352, 467, 95, 403, 356, 83, 331, 10, 509, 161, 74, 89, 407, 445, 217, 102, 96, 142, 410, 474, 134, 6, 367, 51, 190, 116, 338, 409, 325, 437, 126, 217, 42, 307, 354, 88, 310, 148, 202, 98, 500, 508, 484, 39, 192, 24, 487, 33, 217, 363, 16, 241, 336, 344, 365, 79, 266, 165, 267, 431, 66, 298, 40, 361, 359, 217, 363, 480, 348, 316, 456, 239, 353, 472, 428, 47, 129, 270, 494, 70, 234, 260, 217, 199, 299, 452, 384, 80, 463, 374, 145, 421, 296, 507, 224, 38, 506, 396, 305, 217, 199, 460, 490, 195, 255, 469, 23, 91, 223, 364, 107, 246, 459, 209, 14, 160, 46, 102, 295, 169, 462, 13, 180, 465, 173, 238, 360, 57, 144, 19, 22, 302, 451, 502, 272, 55, 368, 333, 339, 45, 109, 31, 248, 240, 283, 93, 75, 311, 390, 322, 388, 175, 424, 505, 372, 153, 268, 168, 132, 337, 315, 124, 2, 436, 181, 28, 191, 388, 272, 393, 225, 274, 496, 85, 227, 498, 157, 328, 254, 170, 123, 125, 256, 159, 489, 26, 213, 8, 401, 504, 81, 262, 453, 1, 371, 242, 60, 44, 495, 320, 497, 489, 164, 481, 342, 0, 314, 297, 249, 444, 435, 334, 383, 194, 216, 411, 420, 357, 489, 164, 122, 335, 111, 143, 90, 48, 20, 406, 422, 201, 430, 349, 136, 443, 288, 489, 164, 261, 292, 198, 347, 482, 25, 434, 449, 11, 82, 5, 493, 73, 220, 332, 489, 454, 237, 340, 488, 97, 475, 188, 491, 385, 318, 416, 156, 321, 351, 373, 412, 489, 392, 476, 282, 448, 293, 499, 418, 324, 133, 18, 108, 131, 212, 432, 76, 203, 489, 392, 50, 251, 206, 158, 235, 503, 285, 259, 185, 32, 414, 87, 477, 387, 417, 146, 426, 286, 94, 326, 65, 53, 37, 306, 99, 186, 269, 473, 438, 257, 263, 350, 146, 26, 101, 429, 386, 380, 7, 152, 9, 461, 106, 138, 184, 226, 230, 166, 196, 284, 309, 137, 219, 4, 399, 182, 402, 398, 358, 258, 303, 193, 394, 29, 370, 121, 284, 426, 405, 330, 141, 130, 278, 281, 312, 41, 12, 264, 167, 236, 304, 415, 54] + 27: [63, 40, 161, 385, 417, 333, 176, 130, 55, 56, 263, 489, 495, 203, 445, 154, 232, 63, 65, 387, 75, 113, 335, 206, 178, 424, 214, 428, 53, 258, 107, 244, 49, 90, 63, 65, 304, 383, 328, 84, 235, 38, 27, 97, 446, 441, 255, 291, 93, 260, 31, 327, 246, 442, 103, 39, 104, 67, 99, 157, 4, 168, 334, 19, 166, 368, 20, 45, 327, 290, 41, 418, 219, 433, 182, 142, 147, 234, 316, 287, 391, 474, 494, 136, 121, 459, 30, 340, 405, 87, 393, 482, 149, 252, 280, 8, 192, 511, 455, 32, 330, 481, 395, 226, 288, 44, 173, 358, 122, 296, 54, 437, 425, 429, 507, 14, 164, 133, 191, 480, 278, 488, 190, 380, 284, 342, 379, 408, 91, 48, 457, 374, 266, 165, 28, 68, 480, 35, 367, 207, 505, 100, 222, 6, 470, 194, 82, 251, 264, 218, 311, 372, 473, 480, 226, 187, 279, 303, 77, 215, 493, 359, 239, 375, 12, 268, 25, 245, 88, 476, 193, 321, 444, 361, 51, 364, 116, 314, 96, 127, 501, 332, 419, 197, 451, 140, 189, 289, 259, 183, 81, 412, 129, 471, 60, 466, 282, 167, 373, 181, 92, 180, 13, 411, 475, 344, 131, 26, 42, 399, 152, 248, 5, 447, 256, 509, 0, 274, 404, 341, 492, 475, 233, 504, 24, 356, 392, 285, 331, 301, 225, 101, 94, 390, 318, 336, 209, 305, 475, 233, 153, 365, 357, 199, 230, 102, 458, 205, 21, 292, 108, 155, 229, 454, 381, 475, 461, 286, 371, 306, 250, 348, 224, 270, 415, 76, 350, 389, 467, 436, 156, 384, 475, 378, 406, 95, 202, 362, 169, 315, 420, 78, 295, 503, 184, 160, 432, 400, 313, 475, 71, 22, 294, 275, 1, 171, 448, 325, 376, 502, 347, 281, 355, 483, 261, 438, 475, 71, 468, 172, 450, 409, 137, 269, 435, 29, 89, 85, 241, 479, 231, 43, 497, 475, 71, 453, 132, 34, 377, 413, 312, 200, 151, 240, 211, 299, 498, 499, 242, 227, 487, 201, 247, 426, 397, 243, 238, 307, 452, 308, 86, 145, 298, 216, 208, 403, 150, 487, 201, 463, 496, 46, 490, 198, 320, 57, 18, 431, 506, 223, 221, 144, 262, 83, 487, 201, 135, 434, 15, 61, 16, 212, 186, 500, 7, 110, 469, 369, 115, 427, 228, 487, 201, 386, 80, 177, 283, 430, 105, 277, 175, 210, 10, 196, 478, 163, 79, 423, 487, 477, 114, 162, 217, 402, 50, 439, 510, 62, 363, 148, 158, 349, 300, 111, 319, 487, 58, 106, 326, 204, 323, 416, 297, 508, 293, 352, 213, 174, 128, 484, 72, 382, 487, 98, 360, 52, 73, 64, 37, 343, 59, 354, 317, 443, 462, 109, 47, 322, 118, 487, 98, 339, 491, 9, 272, 220, 119, 134, 188, 460, 126, 276, 146, 265, 464, 237, 236, 394, 254, 449, 17, 257, 410, 249, 123, 33, 253, 401, 353, 465, 179, 422, 159, 236, 2, 70, 112, 125, 3, 141, 36, 170, 421, 338, 120, 324, 195, 138, 11, 124, 236, 2, 346, 337, 351, 345, 388, 69, 185, 23, 66, 267, 440, 396, 472, 139, 485, 271, 394, 456, 407, 117, 302, 366, 486, 74, 309, 329, 398, 310, 414, 370, 143, 273] + 28: [363, 331, 184, 367, 98, 157, 445, 248, 389, 108, 324, 340, 204, 406, 500, 298, 384, 363, 265, 487, 40, 140, 290, 37, 482, 218, 240, 509, 226, 321, 96, 303, 441, 39, 72, 244, 197, 507, 201, 481, 199, 58, 202, 417, 172, 43, 287, 375, 119, 82, 245, 72, 113, 419, 45, 124, 18, 57, 236, 250, 123, 77, 308, 25, 333, 430, 117, 88, 93, 276, 386, 209, 311, 34, 234, 474, 454, 483, 94, 443, 294, 6, 86, 348, 32, 93, 412, 174, 87, 257, 161, 346, 446, 145, 211, 486, 289, 394, 19, 110, 101, 127, 344, 279, 508, 379, 33, 54, 175, 62, 126, 26, 76, 232, 380, 49, 188, 233, 266, 71, 364, 85, 99, 484, 349, 30, 114, 17, 69, 134, 194, 193, 427, 300, 351, 269, 71, 364, 158, 338, 210, 147, 31, 36, 189, 397, 425, 3, 241, 372, 51, 414, 105, 60, 496, 388, 477, 171, 476, 401, 297, 168, 223, 326, 81, 505, 328, 7, 144, 296, 60, 115, 187, 151, 435, 457, 492, 165, 470, 467, 83, 461, 347, 317, 167, 22, 390, 60, 439, 424, 280, 213, 456, 472, 378, 359, 41, 103, 169, 400, 429, 399, 120, 383, 60, 432, 309, 121, 479, 494, 444, 453, 63, 162, 74, 217, 65, 28, 306, 468, 502, 448, 410, 493, 15, 336, 352, 24, 75, 118, 180, 437, 398, 283, 332, 402, 221, 5, 448, 330, 125, 450, 135, 264, 260, 225, 47, 431, 191, 304, 405, 203, 112, 95, 475, 448, 330, 131, 356, 9, 495, 292, 53, 235, 511, 78, 316, 216, 506, 212, 440, 480, 374, 320, 291, 84, 44, 152, 465, 129, 485, 497, 438, 227, 90, 449, 337, 385, 242, 374, 442, 368, 403, 10, 35, 263, 273, 239, 258, 301, 310, 460, 229, 243, 322, 67, 374, 442, 314, 116, 350, 510, 284, 68, 46, 27, 12, 376, 357, 11, 373, 407, 16, 374, 102, 128, 278, 261, 255, 181, 146, 73, 262, 238, 182, 50, 369, 418, 286, 1, 374, 29, 420, 252, 339, 370, 170, 148, 488, 382, 463, 355, 215, 387, 186, 190, 371, 374, 29, 256, 393, 392, 377, 237, 293, 354, 133, 207, 478, 305, 163, 176, 499, 52, 374, 413, 391, 447, 179, 362, 302, 421, 315, 342, 166, 409, 404, 2, 246, 159, 434, 374, 413, 498, 97, 423, 79, 92, 288, 272, 185, 42, 464, 200, 325, 173, 139, 455, 374, 312, 458, 111, 254, 313, 343, 143, 277, 345, 281, 462, 466, 23, 224, 228, 249, 4, 4, 178, 489, 61, 411, 220, 164, 156, 136, 130, 192, 452, 504, 361, 428, 0, 4, 4, 433, 106, 490, 160, 285, 89, 274, 253, 268, 247, 271, 142, 341, 381, 20, 4, 426, 327, 459, 55, 473, 48, 436, 231, 408, 360, 122, 295, 8, 323, 155, 259, 4, 426, 138, 104, 80, 471, 353, 177, 70, 335, 396, 109, 21, 214, 230, 222, 153, 4, 426, 395, 469, 66, 307, 38, 282, 195, 59, 219, 415, 270, 422, 149, 141, 208, 4, 64, 206, 267, 100, 107, 318, 319, 205, 275, 491, 56, 358, 91, 503, 13, 329, 4, 365, 501, 132, 299, 14, 154, 198, 366, 416, 251, 196, 451, 183, 150, 137, 334] + 29: [411, 9, 113, 136, 265, 153, 357, 401, 196, 93, 121, 42, 511, 65, 434, 54, 51, 195, 9, 16, 463, 240, 214, 309, 208, 326, 491, 457, 255, 423, 272, 158, 220, 475, 36, 237, 113, 417, 60, 370, 90, 132, 74, 268, 146, 234, 219, 287, 299, 477, 148, 36, 267, 269, 262, 112, 498, 181, 406, 57, 206, 259, 507, 500, 448, 247, 345, 377, 36, 267, 480, 316, 467, 474, 402, 179, 43, 369, 380, 101, 58, 169, 317, 415, 67, 464, 378, 398, 312, 428, 183, 96, 293, 194, 227, 190, 88, 331, 4, 442, 389, 163, 464, 416, 165, 250, 114, 418, 55, 192, 363, 487, 381, 115, 8, 166, 334, 189, 372, 464, 460, 201, 348, 143, 489, 395, 203, 336, 396, 126, 217, 142, 89, 379, 235, 359, 464, 178, 144, 433, 172, 154, 76, 125, 360, 364, 264, 171, 450, 156, 276, 297, 193, 464, 40, 73, 354, 390, 409, 454, 187, 295, 352, 420, 362, 3, 205, 106, 466, 77, 464, 182, 152, 248, 145, 278, 91, 56, 35, 26, 243, 198, 332, 274, 188, 375, 288, 464, 182, 330, 263, 490, 486, 304, 502, 335, 483, 118, 103, 17, 233, 455, 341, 505, 464, 344, 323, 496, 31, 180, 271, 14, 99, 185, 481, 277, 159, 239, 170, 131, 315, 230, 361, 162, 338, 403, 306, 7, 34, 305, 119, 449, 32, 451, 270, 226, 394, 387, 230, 66, 23, 353, 407, 49, 421, 69, 324, 24, 461, 314, 25, 123, 436, 41, 482, 38, 429, 465, 371, 367, 80, 484, 223, 508, 229, 85, 439, 122, 327, 177, 384, 289, 139, 84, 419, 445, 320, 87, 468, 318, 391, 186, 19, 98, 59, 21, 63, 62, 347, 139, 84, 95, 298, 303, 246, 244, 228, 64, 71, 53, 322, 365, 311, 432, 313, 210, 139, 340, 356, 167, 413, 94, 37, 397, 45, 443, 0, 456, 251, 86, 301, 495, 470, 139, 340, 242, 424, 138, 325, 130, 61, 197, 453, 184, 506, 52, 504, 81, 254, 141, 139, 290, 215, 111, 279, 173, 22, 292, 281, 110, 310, 350, 135, 291, 342, 462, 33, 139, 117, 358, 405, 447, 221, 328, 294, 503, 134, 282, 393, 308, 104, 245, 492, 430, 139, 137, 13, 333, 102, 441, 452, 79, 164, 174, 72, 224, 100, 501, 275, 97, 68, 139, 137, 133, 252, 44, 494, 253, 260, 191, 431, 446, 440, 213, 285, 368, 385, 383, 139, 157, 400, 307, 392, 150, 175, 437, 473, 12, 286, 249, 493, 257, 425, 82, 410, 280, 84, 129, 20, 50, 202, 149, 476, 412, 438, 351, 2, 337, 124, 479, 105, 258, 78, 39, 48, 321, 319, 444, 373, 273, 47, 5, 499, 10, 435, 127, 478, 469, 497, 78, 459, 300, 256, 29, 382, 414, 28, 302, 236, 232, 376, 109, 27, 168, 18, 147, 78, 459, 343, 209, 199, 329, 212, 222, 386, 422, 510, 231, 155, 218, 284, 116, 238, 83, 39, 471, 128, 485, 107, 408, 349, 176, 108, 472, 200, 509, 261, 346, 216, 399, 1, 161, 11, 427, 30, 75, 266, 70, 160, 15, 283, 426, 151, 366, 120, 204, 339, 1, 161, 46, 92, 241, 207, 140, 388, 296, 211, 6, 404, 225, 355, 458, 374, 488] + 30: [510, 163, 421, 172, 257, 463, 453, 509, 335, 66, 230, 39, 216, 411, 280, 4, 148, 510, 163, 25, 297, 129, 248, 339, 16, 1, 205, 489, 261, 319, 501, 123, 53, 166, 510, 212, 90, 481, 419, 234, 29, 344, 170, 226, 19, 265, 202, 183, 258, 375, 59, 510, 456, 485, 292, 404, 396, 273, 433, 466, 505, 323, 126, 360, 80, 272, 454, 336, 150, 268, 119, 457, 55, 327, 318, 95, 301, 415, 438, 77, 147, 393, 382, 139, 377, 150, 36, 401, 386, 422, 87, 432, 474, 231, 2, 211, 347, 322, 175, 264, 27, 98, 491, 346, 366, 324, 121, 379, 357, 390, 110, 363, 62, 65, 17, 88, 204, 455, 155, 491, 437, 177, 189, 469, 152, 325, 295, 73, 182, 64, 287, 192, 374, 133, 331, 113, 475, 362, 385, 241, 196, 282, 20, 15, 372, 483, 71, 228, 399, 215, 243, 28, 249, 475, 452, 3, 58, 238, 213, 43, 125, 237, 203, 151, 48, 250, 370, 497, 37, 500, 475, 452, 378, 218, 275, 45, 105, 83, 56, 49, 392, 493, 460, 101, 194, 298, 511, 475, 6, 429, 91, 236, 96, 417, 290, 245, 289, 12, 321, 506, 407, 222, 271, 74, 487, 503, 359, 288, 477, 398, 94, 442, 171, 180, 461, 408, 206, 311, 486, 78, 458, 487, 503, 304, 99, 137, 267, 214, 246, 313, 279, 391, 112, 181, 440, 178, 413, 384, 487, 395, 459, 124, 468, 334, 504, 320, 307, 361, 102, 198, 44, 70, 343, 173, 117, 487, 449, 191, 11, 223, 262, 111, 220, 472, 306, 284, 165, 281, 480, 103, 291, 145, 487, 221, 13, 303, 108, 285, 149, 495, 431, 293, 154, 387, 76, 256, 479, 418, 224, 487, 130, 60, 473, 100, 219, 38, 135, 420, 51, 115, 186, 340, 127, 330, 132, 296, 7, 502, 85, 447, 63, 208, 217, 52, 41, 10, 332, 120, 328, 54, 478, 167, 184, 7, 502, 114, 364, 22, 89, 197, 310, 18, 97, 435, 462, 376, 356, 31, 104, 122, 7, 503, 434, 388, 492, 34, 26, 326, 68, 416, 349, 187, 134, 46, 42, 9, 448, 402, 471, 210, 352, 365, 308, 200, 207, 247, 161, 484, 185, 465, 24, 176, 314, 312, 402, 316, 397, 72, 488, 441, 368, 252, 50, 190, 118, 128, 35, 436, 337, 496, 141, 79, 81, 381, 499, 251, 159, 424, 309, 498, 482, 93, 69, 14, 464, 400, 476, 116, 79, 131, 5, 142, 169, 227, 40, 317, 348, 269, 158, 494, 162, 294, 274, 67, 47, 79, 131, 232, 467, 428, 106, 188, 86, 157, 57, 443, 235, 61, 259, 201, 253, 229, 79, 233, 146, 270, 383, 23, 406, 263, 405, 8, 490, 82, 239, 225, 409, 255, 299, 79, 0, 283, 242, 33, 266, 140, 367, 195, 305, 21, 286, 439, 30, 351, 278, 389, 79, 0, 426, 338, 144, 358, 254, 425, 333, 209, 423, 179, 143, 92, 410, 193, 244, 79, 0, 430, 329, 164, 160, 353, 470, 341, 373, 32, 153, 199, 412, 371, 168, 508, 276, 174, 342, 414, 277, 444, 315, 451, 369, 446, 84, 260, 380, 507, 354, 355, 138, 174, 174, 300, 403, 156, 109, 107, 345, 394, 136, 75, 450, 240, 350, 302, 427, 445] + 31: [438, 106, 441, 332, 433, 435, 136, 330, 285, 480, 31, 9, 458, 204, 165, 390, 151, 438, 125, 185, 425, 157, 28, 152, 301, 392, 424, 65, 477, 376, 16, 419, 410, 479, 438, 2, 351, 499, 308, 155, 272, 183, 231, 345, 179, 139, 374, 254, 64, 67, 153, 438, 247, 263, 373, 21, 54, 39, 508, 358, 237, 404, 476, 140, 341, 329, 281, 489, 438, 105, 423, 150, 362, 300, 239, 357, 465, 258, 325, 240, 96, 114, 367, 26, 174, 438, 422, 461, 227, 379, 156, 264, 400, 103, 168, 189, 428, 193, 488, 309, 46, 19, 429, 368, 305, 238, 381, 496, 47, 277, 225, 398, 402, 146, 446, 269, 89, 35, 385, 429, 336, 311, 460, 50, 471, 60, 466, 177, 11, 92, 74, 455, 317, 431, 18, 143, 429, 336, 161, 100, 212, 262, 58, 141, 42, 110, 500, 33, 323, 350, 251, 120, 388, 429, 216, 364, 117, 273, 199, 22, 271, 365, 224, 267, 122, 162, 472, 73, 86, 432, 429, 59, 160, 348, 415, 266, 497, 314, 280, 43, 501, 498, 352, 304, 375, 287, 134, 429, 439, 312, 252, 279, 416, 389, 478, 315, 505, 62, 94, 343, 112, 115, 207, 55, 213, 382, 360, 326, 511, 57, 469, 421, 261, 249, 296, 454, 148, 386, 302, 181, 426, 213, 368, 387, 104, 503, 178, 245, 397, 256, 15, 211, 295, 158, 111, 443, 109, 1, 209, 382, 12, 49, 172, 0, 293, 420, 175, 494, 242, 83, 449, 243, 265, 170, 133, 116, 38, 259, 53, 192, 372, 40, 289, 7, 24, 186, 451, 482, 322, 230, 306, 270, 241, 260, 355, 167, 303, 102, 79, 335, 464, 298, 71, 81, 163, 493, 395, 434, 214, 241, 217, 233, 510, 129, 232, 98, 319, 485, 257, 430, 481, 399, 475, 69, 76, 27, 241, 217, 361, 450, 132, 328, 316, 396, 90, 44, 283, 405, 205, 215, 77, 452, 32, 127, 25, 61, 506, 198, 483, 282, 137, 509, 93, 486, 278, 448, 85, 462, 66, 442, 127, 25, 347, 23, 411, 87, 274, 346, 342, 78, 474, 253, 149, 284, 8, 206, 369, 127, 25, 294, 491, 349, 229, 41, 37, 173, 363, 142, 275, 246, 457, 51, 463, 447, 127, 292, 377, 75, 445, 80, 413, 291, 412, 467, 108, 5, 203, 220, 202, 187, 223, 127, 48, 131, 339, 307, 226, 188, 409, 473, 34, 182, 200, 268, 219, 288, 138, 290, 127, 48, 107, 228, 436, 334, 353, 119, 490, 370, 147, 502, 91, 313, 218, 45, 166, 127, 260, 320, 101, 414, 130, 310, 333, 492, 403, 407, 194, 468, 401, 4, 391, 169, 338, 145, 470, 440, 297, 20, 250, 487, 383, 82, 123, 30, 417, 234, 299, 244, 286, 338, 437, 418, 337, 196, 359, 327, 171, 484, 235, 318, 378, 210, 504, 276, 393, 97, 184, 255, 180, 221, 380, 356, 456, 164, 453, 354, 99, 321, 56, 340, 113, 10, 408, 184, 13, 3, 135, 17, 236, 344, 70, 176, 394, 495, 324, 406, 14, 124, 159, 68, 88, 255, 126, 208, 95, 248, 201, 121, 52, 371, 366, 6, 63, 36, 118, 331, 128, 88, 255, 190, 459, 29, 427, 384, 222, 144, 72, 154, 507, 444, 84, 197, 191, 195] + 32: [356, 301, 392, 447, 151, 16, 118, 23, 481, 272, 257, 500, 298, 348, 474, 22, 436, 356, 446, 493, 323, 471, 399, 259, 237, 45, 419, 451, 193, 7, 281, 327, 398, 467, 356, 35, 324, 71, 390, 326, 69, 256, 321, 347, 166, 81, 157, 341, 59, 229, 361, 356, 231, 241, 409, 244, 383, 369, 220, 147, 376, 422, 412, 378, 276, 14, 225, 337, 121, 252, 372, 49, 384, 212, 429, 295, 98, 400, 167, 25, 294, 263, 123, 413, 416, 121, 207, 52, 51, 343, 182, 43, 65, 9, 196, 194, 253, 339, 107, 308, 42, 124, 121, 207, 30, 455, 495, 216, 322, 291, 318, 130, 477, 184, 270, 325, 504, 334, 424, 83, 28, 32, 503, 423, 175, 484, 40, 278, 139, 350, 5, 421, 138, 140, 91, 509, 83, 28, 381, 502, 116, 100, 396, 11, 209, 320, 494, 403, 340, 329, 223, 404, 342, 83, 36, 94, 169, 312, 200, 96, 386, 137, 246, 60, 359, 269, 402, 82, 47, 458, 83, 110, 362, 183, 262, 153, 99, 215, 375, 204, 368, 159, 33, 473, 10, 164, 254, 129, 19, 261, 387, 62, 142, 188, 227, 67, 283, 17, 170, 285, 316, 131, 475, 363, 129, 19, 394, 437, 20, 168, 379, 73, 296, 41, 162, 279, 181, 120, 48, 191, 448, 129, 405, 373, 46, 127, 498, 310, 2, 292, 88, 417, 226, 146, 203, 68, 428, 426, 129, 77, 50, 351, 489, 248, 401, 126, 152, 389, 155, 420, 414, 370, 284, 163, 4, 129, 77, 249, 391, 3, 1, 349, 92, 485, 397, 364, 499, 306, 29, 357, 199, 208, 129, 466, 311, 456, 115, 53, 274, 440, 221, 488, 55, 442, 87, 303, 313, 13, 307, 129, 108, 431, 468, 149, 135, 445, 58, 377, 469, 12, 148, 105, 459, 280, 457, 26, 129, 119, 453, 192, 64, 345, 282, 243, 93, 145, 245, 336, 104, 214, 506, 228, 275, 464, 63, 293, 395, 54, 332, 271, 134, 483, 95, 289, 109, 190, 435, 265, 358, 290, 464, 187, 286, 56, 122, 180, 393, 125, 39, 510, 74, 255, 344, 388, 179, 34, 267, 464, 128, 508, 407, 438, 8, 236, 382, 198, 102, 266, 492, 472, 302, 346, 374, 113, 464, 205, 238, 460, 158, 380, 406, 136, 224, 268, 408, 309, 482, 75, 415, 360, 235, 464, 205, 117, 206, 201, 211, 38, 385, 333, 273, 505, 112, 328, 154, 355, 172, 174, 410, 97, 24, 57, 239, 497, 66, 144, 101, 366, 84, 300, 0, 287, 444, 304, 31, 242, 97, 490, 156, 6, 79, 171, 461, 260, 452, 210, 247, 430, 354, 476, 18, 21, 454, 462, 202, 353, 133, 114, 443, 72, 161, 449, 463, 330, 251, 233, 511, 218, 297, 44, 141, 425, 61, 78, 76, 480, 277, 89, 465, 143, 80, 250, 189, 433, 197, 314, 44, 439, 338, 185, 222, 486, 491, 487, 173, 15, 150, 288, 234, 230, 111, 90, 106, 44, 439, 264, 37, 427, 479, 217, 177, 501, 335, 496, 219, 232, 434, 85, 165, 103, 44, 462, 371, 178, 70, 411, 331, 240, 418, 470, 132, 315, 432, 305, 352, 27, 319, 141, 141, 186, 86, 299, 507, 367, 213, 478, 176, 317, 441, 258, 160, 195, 365, 450] + 33: [308, 241, 100, 251, 463, 17, 485, 201, 434, 380, 503, 13, 278, 400, 205, 258, 89, 39, 435, 160, 307, 458, 154, 477, 440, 403, 211, 155, 217, 407, 47, 188, 137, 189, 39, 190, 4, 370, 227, 334, 94, 365, 375, 499, 302, 314, 429, 262, 186, 329, 215, 39, 190, 72, 43, 31, 90, 481, 191, 69, 10, 283, 150, 133, 248, 143, 85, 221, 39, 341, 95, 269, 236, 79, 177, 358, 356, 162, 259, 496, 280, 489, 431, 78, 501, 483, 342, 396, 261, 263, 382, 388, 21, 384, 40, 428, 425, 50, 101, 48, 53, 338, 483, 342, 23, 63, 156, 113, 328, 250, 353, 134, 324, 216, 493, 505, 296, 240, 284, 483, 435, 401, 500, 450, 123, 175, 222, 112, 238, 119, 70, 106, 276, 225, 414, 374, 297, 419, 393, 230, 432, 107, 55, 313, 361, 26, 464, 2, 239, 68, 122, 16, 492, 297, 476, 368, 325, 116, 82, 332, 478, 426, 387, 3, 466, 448, 268, 359, 311, 418, 297, 471, 33, 415, 253, 402, 92, 347, 336, 73, 271, 125, 86, 61, 348, 462, 264, 297, 209, 149, 441, 381, 285, 83, 179, 367, 197, 290, 386, 103, 300, 373, 246, 270, 297, 164, 32, 288, 473, 327, 142, 256, 204, 38, 349, 309, 172, 127, 80, 193, 498, 297, 35, 323, 98, 421, 139, 74, 244, 459, 196, 229, 363, 213, 11, 214, 416, 65, 297, 35, 233, 461, 203, 0, 490, 247, 275, 470, 395, 129, 468, 351, 19, 210, 257, 413, 419, 340, 333, 472, 27, 487, 136, 128, 486, 6, 87, 58, 436, 366, 254, 364, 345, 457, 174, 451, 71, 508, 212, 20, 379, 312, 131, 442, 272, 469, 169, 510, 198, 352, 202, 176, 181, 96, 408, 37, 140, 310, 452, 303, 152, 228, 104, 455, 207, 105, 352, 202, 467, 199, 511, 99, 234, 91, 226, 153, 398, 282, 141, 30, 97, 200, 291, 352, 8, 409, 266, 265, 110, 242, 88, 299, 344, 224, 406, 484, 120, 151, 219, 255, 352, 8, 185, 355, 479, 497, 304, 135, 252, 480, 187, 456, 182, 443, 235, 411, 218, 352, 8, 337, 66, 482, 330, 274, 447, 147, 25, 76, 111, 335, 59, 15, 293, 424, 352, 394, 412, 41, 165, 331, 130, 84, 346, 114, 357, 454, 166, 438, 146, 54, 399, 352, 457, 220, 460, 60, 509, 34, 504, 369, 377, 93, 192, 249, 320, 405, 232, 170, 161, 202, 281, 42, 158, 354, 67, 444, 439, 260, 124, 49, 171, 343, 57, 231, 292, 318, 383, 506, 391, 184, 9, 350, 494, 206, 245, 237, 322, 195, 168, 502, 507, 145, 318, 449, 294, 488, 273, 223, 178, 180, 491, 422, 420, 267, 194, 465, 1, 126, 117, 28, 383, 390, 279, 118, 453, 446, 445, 46, 433, 132, 305, 14, 51, 437, 321, 144, 108, 383, 36, 372, 410, 295, 77, 159, 102, 397, 157, 392, 339, 301, 286, 121, 64, 289, 44, 75, 317, 163, 495, 109, 371, 56, 277, 389, 326, 243, 5, 81, 18, 474, 316, 12, 52, 385, 7, 475, 298, 378, 362, 24, 208, 376, 404, 423, 360, 115, 319, 12, 12, 138, 427, 183, 29, 45, 417, 148, 22, 315, 173, 306, 430, 62, 287, 167] + 34: [370, 372, 245, 322, 386, 50, 302, 425, 15, 306, 36, 154, 168, 281, 80, 449, 368, 415, 274, 479, 456, 238, 150, 147, 175, 398, 229, 364, 293, 237, 66, 46, 233, 165, 170, 303, 488, 226, 391, 14, 121, 231, 88, 371, 191, 108, 65, 323, 392, 134, 336, 170, 188, 81, 295, 209, 393, 78, 438, 82, 348, 45, 482, 308, 332, 222, 219, 102, 170, 53, 396, 217, 353, 205, 185, 350, 349, 277, 122, 130, 499, 52, 12, 352, 361, 170, 53, 346, 279, 167, 404, 465, 173, 187, 213, 17, 408, 30, 338, 153, 115, 257, 170, 395, 351, 126, 0, 180, 176, 474, 142, 27, 203, 212, 418, 304, 286, 225, 497, 170, 264, 318, 235, 481, 160, 384, 470, 472, 132, 247, 298, 307, 330, 356, 22, 95, 446, 303, 321, 32, 241, 328, 221, 280, 466, 501, 198, 98, 13, 47, 23, 86, 210, 67, 358, 109, 290, 428, 312, 152, 273, 460, 285, 380, 174, 1, 18, 313, 215, 379, 67, 397, 489, 141, 493, 413, 169, 207, 272, 337, 9, 462, 77, 454, 103, 374, 228, 67, 100, 505, 137, 339, 51, 24, 483, 72, 107, 84, 234, 427, 218, 403, 283, 195, 67, 148, 244, 6, 193, 463, 326, 246, 211, 94, 124, 417, 487, 44, 452, 411, 4, 67, 271, 429, 402, 400, 300, 262, 240, 269, 469, 135, 106, 140, 445, 511, 424, 507, 67, 271, 461, 504, 139, 8, 292, 99, 287, 128, 111, 157, 183, 159, 97, 268, 334, 67, 59, 473, 145, 90, 68, 171, 58, 39, 190, 204, 131, 104, 314, 335, 192, 123, 31, 163, 401, 443, 309, 206, 409, 363, 242, 343, 138, 382, 158, 498, 419, 60, 155, 31, 62, 496, 260, 250, 508, 57, 16, 444, 459, 71, 199, 342, 399, 266, 41, 289, 31, 359, 430, 333, 367, 200, 299, 373, 117, 315, 146, 366, 186, 301, 278, 19, 275, 31, 477, 464, 485, 256, 230, 43, 96, 506, 64, 10, 119, 426, 69, 184, 369, 455, 31, 178, 345, 435, 442, 297, 407, 11, 73, 110, 414, 344, 480, 270, 475, 355, 294, 439, 320, 227, 224, 202, 40, 385, 447, 89, 7, 284, 54, 327, 20, 56, 258, 451, 439, 76, 42, 143, 162, 495, 376, 381, 116, 316, 208, 325, 331, 26, 83, 288, 490, 439, 76, 436, 390, 179, 253, 21, 254, 5, 223, 389, 500, 440, 305, 471, 255, 261, 439, 76, 127, 35, 149, 310, 491, 181, 453, 494, 492, 92, 458, 282, 383, 129, 478, 439, 416, 182, 347, 503, 91, 468, 362, 291, 267, 354, 61, 197, 420, 214, 125, 252, 439, 357, 276, 63, 251, 509, 144, 49, 118, 421, 450, 48, 25, 177, 365, 319, 55, 439, 163, 75, 105, 249, 166, 114, 87, 434, 3, 37, 296, 431, 93, 216, 161, 172, 236, 101, 34, 448, 201, 311, 422, 120, 324, 467, 2, 243, 28, 377, 317, 113, 38, 236, 101, 510, 441, 189, 406, 239, 502, 340, 151, 220, 85, 405, 375, 263, 29, 196, 236, 394, 437, 133, 194, 378, 433, 164, 432, 265, 410, 486, 112, 329, 412, 423, 79, 236, 394, 248, 33, 476, 388, 136, 156, 74, 341, 457, 360, 70, 259, 484, 232, 387] + 35: [130, 114, 233, 298, 255, 359, 471, 37, 133, 47, 441, 206, 327, 446, 175, 116, 364, 130, 289, 251, 333, 75, 362, 106, 450, 181, 92, 506, 288, 243, 214, 407, 467, 31, 20, 456, 39, 141, 53, 493, 162, 145, 84, 509, 54, 466, 200, 160, 305, 282, 380, 246, 432, 421, 283, 70, 366, 368, 5, 153, 140, 77, 179, 69, 198, 372, 425, 415, 246, 357, 424, 463, 0, 321, 320, 201, 225, 192, 389, 80, 150, 447, 111, 89, 257, 32, 432, 24, 86, 49, 460, 401, 248, 312, 302, 135, 278, 188, 451, 494, 334, 426, 404, 46, 156, 95, 173, 419, 168, 412, 42, 330, 152, 394, 445, 437, 259, 403, 28, 404, 46, 48, 478, 347, 231, 440, 227, 353, 285, 40, 342, 355, 129, 247, 258, 148, 404, 393, 252, 220, 376, 253, 11, 10, 58, 16, 228, 167, 504, 384, 291, 300, 250, 404, 393, 277, 461, 125, 476, 109, 99, 124, 123, 273, 171, 490, 78, 433, 484, 59, 404, 102, 319, 143, 35, 488, 303, 284, 62, 193, 308, 79, 264, 271, 418, 27, 473, 14, 132, 331, 29, 194, 377, 159, 397, 52, 128, 215, 190, 358, 280, 464, 177, 387, 14, 132, 263, 137, 363, 195, 163, 25, 138, 41, 165, 511, 61, 420, 491, 459, 210, 131, 119, 38, 9, 388, 457, 402, 218, 279, 430, 416, 33, 483, 351, 126, 485, 304, 18, 314, 221, 197, 492, 423, 216, 306, 108, 187, 3, 134, 475, 76, 17, 337, 266, 310, 374, 154, 260, 161, 85, 276, 443, 51, 275, 486, 453, 265, 107, 239, 72, 56, 310, 301, 501, 444, 307, 371, 178, 328, 406, 199, 241, 313, 413, 452, 322, 158, 244, 310, 314, 67, 510, 22, 339, 205, 390, 229, 344, 256, 286, 350, 240, 262, 144, 326, 274, 374, 343, 454, 26, 50, 189, 422, 408, 87, 272, 382, 431, 361, 409, 356, 96, 217, 316, 489, 365, 110, 338, 427, 166, 340, 508, 34, 68, 88, 349, 336, 462, 499, 217, 316, 455, 502, 127, 98, 295, 66, 325, 82, 435, 174, 65, 465, 232, 436, 142, 217, 249, 411, 185, 169, 2, 44, 290, 417, 309, 183, 151, 505, 147, 268, 399, 318, 217, 249, 405, 219, 230, 292, 122, 317, 345, 101, 396, 208, 242, 202, 213, 267, 348, 217, 352, 30, 392, 311, 226, 385, 281, 139, 115, 439, 81, 299, 468, 438, 182, 346, 217, 352, 324, 400, 104, 373, 7, 503, 448, 64, 496, 94, 112, 238, 269, 449, 13, 217, 90, 203, 360, 71, 458, 379, 341, 335, 296, 83, 212, 155, 117, 442, 4, 237, 217, 374, 481, 23, 19, 323, 434, 184, 43, 223, 180, 118, 236, 207, 196, 354, 234, 507, 507, 500, 287, 470, 93, 21, 414, 315, 103, 12, 270, 15, 63, 211, 157, 410, 507, 507, 370, 172, 136, 121, 1, 209, 391, 395, 383, 146, 472, 479, 74, 487, 429, 507, 73, 428, 186, 332, 386, 204, 474, 367, 120, 6, 36, 100, 482, 222, 113, 329, 507, 91, 60, 57, 235, 375, 164, 191, 224, 381, 97, 477, 297, 293, 261, 469, 495, 507, 254, 497, 176, 378, 45, 245, 398, 498, 294, 480, 55, 369, 8, 149, 105, 170] + 36: [304, 376, 380, 390, 87, 26, 176, 92, 141, 230, 409, 229, 75, 294, 331, 67, 407, 19, 429, 124, 57, 130, 236, 413, 249, 46, 121, 59, 233, 88, 479, 239, 221, 282, 19, 185, 379, 116, 271, 353, 98, 181, 476, 64, 432, 500, 338, 103, 457, 243, 295, 19, 481, 196, 404, 462, 232, 140, 58, 342, 154, 178, 286, 170, 468, 171, 81, 213, 19, 209, 195, 2, 373, 128, 480, 44, 16, 393, 336, 162, 106, 157, 76, 323, 179, 3, 429, 73, 398, 203, 18, 384, 490, 50, 414, 27, 74, 69, 210, 406, 83, 423, 489, 452, 186, 110, 94, 99, 278, 341, 356, 509, 360, 408, 328, 412, 177, 145, 266, 489, 452, 280, 135, 166, 276, 316, 415, 211, 257, 163, 24, 292, 430, 268, 253, 71, 469, 315, 329, 0, 48, 293, 43, 244, 12, 387, 362, 151, 165, 222, 383, 91, 175, 320, 217, 506, 28, 332, 89, 112, 273, 31, 259, 188, 111, 319, 13, 433, 464, 123, 320, 426, 65, 283, 117, 272, 428, 510, 256, 370, 297, 351, 11, 96, 444, 70, 431, 320, 269, 180, 497, 245, 252, 365, 240, 361, 411, 114, 255, 134, 472, 492, 204, 105, 320, 269, 227, 439, 45, 397, 242, 138, 149, 156, 382, 119, 189, 391, 424, 485, 277, 320, 215, 392, 355, 193, 125, 305, 214, 147, 441, 85, 248, 308, 438, 318, 62, 97, 320, 315, 167, 68, 310, 465, 201, 335, 219, 144, 164, 205, 491, 22, 260, 486, 483, 235, 199, 270, 375, 206, 55, 435, 118, 10, 250, 183, 136, 344, 34, 72, 436, 53, 235, 487, 386, 30, 505, 378, 359, 350, 246, 207, 396, 454, 80, 158, 296, 137, 470, 235, 487, 251, 422, 224, 14, 101, 389, 254, 458, 47, 461, 385, 381, 334, 357, 377, 235, 455, 29, 226, 388, 168, 330, 200, 51, 343, 302, 32, 327, 127, 291, 494, 258, 235, 455, 42, 142, 37, 416, 115, 82, 394, 333, 418, 477, 169, 223, 450, 348, 109, 235, 25, 113, 289, 265, 21, 78, 129, 54, 247, 228, 499, 52, 6, 285, 508, 347, 35, 287, 152, 159, 303, 63, 466, 301, 38, 368, 511, 349, 451, 39, 325, 322, 86, 35, 493, 216, 298, 108, 467, 126, 405, 459, 61, 261, 402, 100, 478, 190, 1, 95, 35, 139, 7, 267, 309, 358, 299, 504, 279, 502, 434, 107, 187, 225, 132, 66, 363, 35, 139, 284, 326, 155, 160, 475, 41, 274, 56, 288, 420, 364, 153, 104, 90, 471, 35, 354, 337, 290, 5, 79, 352, 403, 174, 172, 440, 150, 501, 220, 202, 399, 442, 281, 484, 324, 503, 191, 395, 23, 421, 366, 482, 456, 208, 447, 212, 312, 340, 120, 281, 287, 122, 173, 427, 410, 194, 36, 495, 20, 371, 449, 133, 17, 197, 346, 417, 237, 484, 446, 60, 238, 460, 372, 314, 419, 321, 8, 218, 131, 264, 198, 275, 496, 311, 161, 369, 463, 437, 313, 317, 307, 374, 143, 148, 102, 234, 40, 400, 445, 9, 311, 161, 401, 241, 306, 345, 263, 33, 443, 146, 453, 231, 425, 4, 184, 474, 262, 161, 161, 93, 192, 49, 182, 84, 367, 15, 498, 473, 448, 300, 488, 77, 507, 339] + 37: [38, 183, 492, 156, 51, 259, 462, 251, 277, 31, 255, 344, 351, 404, 327, 456, 17, 38, 183, 435, 258, 309, 403, 199, 326, 151, 194, 509, 36, 37, 18, 396, 124, 510, 38, 203, 371, 146, 397, 181, 202, 123, 248, 387, 239, 349, 325, 484, 353, 129, 102, 38, 503, 290, 63, 373, 334, 287, 235, 55, 243, 437, 447, 467, 204, 90, 474, 432, 385, 5, 395, 331, 26, 298, 279, 177, 440, 378, 384, 147, 305, 394, 65, 112, 400, 385, 5, 69, 29, 223, 169, 242, 354, 158, 419, 218, 485, 232, 92, 436, 295, 57, 385, 125, 7, 495, 333, 200, 398, 288, 363, 407, 54, 103, 491, 179, 101, 3, 42, 385, 319, 0, 16, 457, 352, 405, 190, 2, 236, 388, 480, 175, 85, 120, 284, 330, 444, 23, 502, 278, 98, 392, 366, 145, 240, 126, 423, 415, 61, 487, 108, 154, 46, 444, 43, 170, 141, 276, 314, 412, 466, 375, 134, 6, 93, 40, 224, 230, 267, 161, 444, 188, 342, 283, 406, 27, 511, 294, 265, 113, 360, 116, 100, 187, 222, 206, 477, 444, 188, 250, 269, 501, 117, 168, 393, 368, 73, 455, 78, 470, 238, 321, 472, 303, 275, 256, 289, 110, 122, 262, 132, 178, 311, 127, 196, 450, 390, 174, 358, 362, 422, 275, 97, 155, 226, 142, 315, 22, 370, 439, 361, 91, 149, 343, 212, 475, 25, 171, 275, 165, 426, 80, 241, 293, 138, 135, 460, 312, 449, 167, 229, 264, 58, 410, 443, 275, 150, 418, 137, 247, 302, 62, 252, 337, 499, 421, 402, 60, 41, 273, 420, 347, 275, 150, 82, 322, 452, 329, 296, 172, 111, 87, 24, 49, 445, 20, 482, 451, 53, 357, 35, 308, 104, 182, 372, 504, 30, 401, 486, 8, 257, 228, 318, 28, 324, 301, 357, 459, 408, 463, 71, 389, 260, 261, 88, 338, 367, 115, 376, 234, 208, 209, 21, 357, 184, 133, 139, 493, 118, 95, 479, 231, 11, 72, 464, 216, 83, 186, 399, 44, 357, 184, 197, 128, 369, 365, 47, 489, 70, 335, 254, 328, 166, 77, 339, 428, 431, 76, 48, 505, 96, 271, 246, 249, 121, 316, 281, 253, 220, 56, 306, 10, 307, 198, 173, 140, 323, 427, 424, 409, 448, 506, 214, 381, 162, 465, 221, 473, 383, 317, 498, 497, 140, 152, 106, 211, 386, 285, 233, 481, 429, 263, 417, 336, 109, 195, 67, 34, 461, 292, 379, 348, 4, 413, 1, 131, 189, 355, 411, 32, 219, 207, 478, 225, 416, 461, 414, 192, 374, 494, 84, 163, 476, 346, 291, 382, 143, 9, 81, 160, 350, 274, 461, 414, 153, 237, 136, 340, 86, 201, 433, 74, 359, 245, 508, 304, 469, 15, 148, 320, 292, 266, 159, 105, 434, 453, 52, 164, 496, 280, 500, 14, 332, 19, 205, 75, 320, 292, 430, 377, 94, 507, 446, 210, 471, 144, 425, 33, 39, 454, 268, 89, 356, 320, 292, 441, 99, 157, 130, 215, 193, 79, 68, 119, 488, 438, 185, 282, 272, 270, 213, 490, 313, 227, 12, 299, 66, 483, 64, 45, 364, 286, 13, 341, 107, 191, 297, 490, 490, 180, 50, 345, 244, 300, 391, 380, 114, 458, 442, 217, 468, 59, 176, 310] + 38: [359, 337, 94, 411, 170, 454, 412, 300, 152, 163, 306, 70, 156, 467, 307, 309, 230, 359, 294, 400, 164, 330, 461, 220, 357, 414, 349, 264, 369, 431, 462, 187, 421, 310, 359, 468, 199, 172, 501, 195, 295, 92, 391, 188, 305, 262, 271, 278, 489, 398, 201, 234, 132, 487, 340, 491, 333, 449, 144, 245, 193, 39, 377, 504, 82, 469, 142, 257, 234, 214, 53, 241, 345, 319, 62, 118, 141, 364, 235, 162, 111, 365, 447, 146, 231, 234, 4, 277, 371, 291, 288, 325, 244, 248, 87, 246, 215, 276, 13, 302, 71, 327, 234, 52, 432, 497, 368, 161, 407, 267, 282, 130, 206, 182, 427, 376, 312, 196, 34, 31, 417, 347, 445, 93, 250, 175, 444, 393, 474, 502, 490, 184, 493, 436, 221, 284, 31, 356, 121, 191, 143, 483, 190, 486, 511, 114, 479, 103, 77, 416, 44, 448, 123, 31, 356, 173, 51, 55, 505, 370, 100, 410, 83, 85, 269, 129, 224, 47, 22, 116, 31, 217, 380, 460, 363, 379, 75, 385, 386, 331, 125, 210, 480, 342, 313, 326, 323, 239, 73, 260, 425, 178, 49, 202, 286, 372, 240, 422, 328, 405, 274, 358, 265, 21, 239, 322, 37, 194, 320, 147, 74, 165, 106, 76, 38, 475, 332, 207, 272, 150, 36, 239, 344, 20, 437, 408, 148, 485, 8, 223, 451, 415, 211, 321, 198, 290, 392, 48, 239, 343, 115, 160, 419, 153, 268, 145, 134, 499, 90, 441, 1, 351, 362, 336, 283, 239, 236, 394, 133, 316, 232, 19, 27, 507, 433, 258, 360, 455, 59, 5, 81, 315, 225, 261, 171, 167, 397, 428, 12, 381, 138, 442, 488, 79, 222, 25, 6, 249, 464, 18, 261, 476, 339, 329, 477, 203, 66, 453, 155, 29, 226, 494, 158, 506, 46, 61, 205, 259, 9, 395, 136, 304, 418, 401, 41, 439, 7, 324, 69, 180, 139, 54, 509, 205, 237, 354, 452, 168, 24, 470, 443, 279, 498, 374, 104, 35, 89, 105, 122, 159, 205, 237, 482, 435, 109, 101, 314, 96, 293, 23, 348, 233, 102, 350, 341, 218, 263, 205, 465, 91, 308, 128, 484, 209, 189, 57, 72, 429, 98, 17, 40, 157, 0, 450, 205, 181, 50, 366, 346, 67, 387, 197, 335, 243, 471, 68, 413, 318, 298, 117, 186, 205, 181, 297, 204, 457, 97, 149, 399, 200, 110, 84, 255, 402, 183, 15, 78, 406, 205, 261, 292, 254, 458, 14, 131, 434, 174, 176, 285, 478, 367, 137, 420, 135, 32, 280, 259, 361, 496, 151, 495, 303, 353, 169, 440, 390, 508, 3, 296, 107, 42, 64, 280, 259, 56, 510, 388, 456, 242, 166, 227, 266, 317, 185, 466, 289, 426, 213, 60, 280, 259, 238, 2, 299, 177, 382, 273, 88, 113, 281, 119, 229, 463, 275, 63, 375, 280, 259, 212, 86, 492, 219, 472, 334, 179, 252, 430, 33, 26, 154, 65, 58, 127, 208, 446, 459, 30, 378, 481, 95, 11, 228, 126, 287, 403, 384, 124, 389, 247, 80, 208, 253, 352, 10, 396, 120, 424, 140, 338, 409, 251, 99, 270, 404, 192, 373, 383, 311, 446, 216, 438, 45, 112, 108, 256, 473, 500, 16, 301, 423, 28, 355, 43, 503] + 39: [310, 450, 456, 145, 175, 5, 101, 122, 435, 370, 41, 511, 509, 377, 56, 220, 126, 310, 288, 396, 416, 433, 13, 367, 212, 94, 294, 214, 195, 318, 143, 162, 54, 356, 442, 354, 117, 407, 386, 100, 382, 211, 103, 216, 463, 411, 34, 24, 361, 482, 130, 442, 404, 189, 428, 79, 171, 222, 401, 230, 256, 185, 45, 125, 415, 191, 453, 150, 442, 319, 342, 451, 206, 306, 32, 0, 502, 183, 29, 265, 329, 462, 355, 64, 132, 442, 287, 18, 394, 233, 67, 66, 313, 286, 352, 77, 31, 186, 178, 503, 115, 97, 347, 255, 331, 384, 393, 501, 19, 78, 307, 461, 235, 408, 490, 184, 172, 380, 400, 347, 231, 159, 494, 476, 35, 505, 240, 226, 42, 403, 151, 14, 119, 68, 16, 153, 347, 325, 455, 60, 410, 358, 314, 30, 372, 112, 481, 38, 219, 23, 91, 59, 179, 347, 187, 305, 264, 147, 75, 491, 274, 413, 17, 138, 383, 58, 283, 192, 257, 371, 465, 182, 470, 474, 399, 340, 364, 210, 327, 148, 280, 477, 479, 402, 238, 227, 466, 263, 47, 277, 271, 10, 139, 290, 109, 217, 434, 168, 176, 420, 360, 63, 414, 484, 263, 182, 11, 437, 246, 202, 349, 80, 291, 250, 21, 110, 338, 95, 392, 61, 167, 296, 205, 309, 368, 496, 15, 46, 71, 114, 303, 200, 320, 157, 473, 20, 378, 483, 464, 244, 76, 269, 308, 141, 259, 298, 88, 248, 430, 116, 417, 223, 438, 142, 249, 464, 205, 111, 362, 37, 333, 439, 2, 170, 208, 90, 508, 43, 388, 120, 429, 74, 447, 158, 326, 299, 242, 366, 285, 267, 102, 6, 278, 225, 135, 507, 174, 229, 295, 447, 158, 258, 341, 348, 55, 365, 204, 485, 398, 144, 449, 251, 486, 83, 149, 376, 128, 50, 33, 279, 215, 199, 272, 397, 118, 276, 51, 302, 207, 89, 344, 351, 445, 293, 311, 181, 345, 395, 406, 146, 260, 457, 156, 84, 488, 468, 201, 350, 480, 28, 293, 311, 339, 190, 237, 36, 161, 107, 446, 3, 98, 1, 304, 497, 194, 196, 131, 293, 169, 436, 492, 180, 113, 387, 431, 444, 312, 12, 419, 163, 85, 379, 357, 374, 293, 169, 218, 228, 252, 188, 292, 289, 99, 317, 421, 336, 424, 166, 281, 7, 273, 293, 57, 121, 487, 459, 48, 425, 193, 49, 134, 452, 478, 137, 423, 140, 177, 245, 293, 57, 266, 441, 343, 254, 160, 232, 224, 500, 297, 412, 332, 127, 495, 155, 164, 471, 432, 108, 70, 262, 440, 389, 4, 209, 213, 405, 346, 499, 330, 443, 504, 275, 471, 311, 136, 328, 40, 337, 129, 375, 133, 353, 270, 323, 334, 82, 321, 324, 458, 471, 311, 152, 62, 81, 506, 27, 86, 154, 65, 472, 72, 243, 124, 261, 284, 498, 221, 432, 422, 197, 39, 253, 475, 448, 315, 363, 73, 301, 426, 53, 493, 241, 93, 221, 432, 322, 381, 282, 390, 9, 96, 316, 418, 123, 104, 52, 106, 391, 173, 369, 221, 432, 300, 427, 409, 385, 467, 165, 460, 236, 335, 69, 8, 92, 203, 22, 489, 221, 432, 44, 234, 359, 105, 247, 268, 510, 87, 454, 469, 198, 25, 26, 239, 373] + 40: [502, 331, 329, 213, 50, 366, 301, 83, 200, 290, 233, 142, 84, 373, 161, 184, 81, 190, 405, 116, 27, 250, 249, 109, 357, 180, 510, 442, 98, 206, 88, 5, 371, 60, 423, 199, 73, 503, 254, 147, 167, 278, 196, 415, 151, 467, 11, 174, 77, 124, 1, 423, 383, 185, 429, 122, 217, 274, 338, 114, 307, 208, 298, 48, 277, 243, 361, 303, 423, 263, 482, 319, 231, 207, 432, 508, 182, 434, 145, 82, 504, 55, 149, 70, 121, 423, 144, 116, 173, 17, 394, 452, 112, 36, 317, 253, 495, 352, 92, 21, 353, 421, 348, 34, 337, 105, 363, 179, 414, 251, 134, 398, 220, 164, 166, 97, 101, 28, 424, 348, 34, 368, 43, 203, 359, 76, 93, 137, 245, 37, 197, 485, 45, 230, 86, 87, 280, 246, 62, 266, 219, 126, 461, 465, 291, 377, 492, 339, 58, 172, 226, 225, 425, 280, 309, 401, 487, 372, 323, 500, 204, 239, 106, 393, 104, 496, 155, 498, 69, 313, 280, 309, 506, 143, 445, 316, 168, 403, 418, 61, 64, 455, 365, 463, 483, 177, 295, 280, 260, 46, 111, 399, 308, 100, 257, 433, 381, 127, 66, 120, 110, 267, 65, 132, 280, 391, 212, 397, 26, 52, 330, 299, 259, 148, 374, 44, 238, 296, 481, 234, 165, 280, 391, 480, 382, 232, 59, 247, 412, 19, 446, 336, 139, 294, 228, 47, 188, 229, 280, 33, 362, 310, 123, 209, 358, 426, 478, 141, 113, 138, 42, 315, 117, 431, 356, 409, 300, 493, 292, 157, 95, 130, 456, 379, 410, 12, 369, 453, 29, 497, 413, 237, 409, 57, 407, 505, 128, 10, 270, 332, 235, 244, 51, 447, 24, 375, 439, 411, 475, 409, 67, 236, 215, 227, 178, 79, 306, 272, 276, 387, 119, 325, 264, 160, 326, 462, 409, 321, 258, 158, 451, 170, 223, 18, 408, 428, 441, 458, 94, 404, 135, 9, 430, 409, 321, 7, 335, 108, 115, 472, 273, 32, 38, 256, 25, 279, 471, 125, 240, 91, 409, 99, 85, 211, 422, 80, 283, 154, 193, 224, 150, 133, 39, 400, 389, 153, 49, 409, 242, 370, 14, 490, 175, 450, 385, 40, 218, 460, 388, 444, 494, 118, 31, 390, 409, 318, 488, 140, 22, 367, 268, 288, 2, 195, 89, 159, 380, 386, 440, 191, 360, 129, 464, 54, 68, 364, 35, 509, 0, 392, 470, 342, 344, 222, 16, 41, 248, 477, 129, 464, 501, 241, 454, 282, 201, 186, 15, 396, 476, 448, 103, 320, 327, 351, 340, 129, 6, 71, 436, 469, 419, 343, 78, 355, 194, 53, 221, 96, 427, 75, 312, 210, 129, 6, 417, 286, 345, 74, 354, 507, 437, 289, 384, 202, 491, 284, 269, 23, 420, 349, 464, 20, 255, 341, 183, 192, 406, 346, 484, 3, 511, 293, 275, 271, 468, 169, 435, 395, 198, 176, 416, 376, 297, 328, 402, 304, 72, 156, 30, 287, 252, 205, 56, 443, 311, 305, 181, 378, 63, 4, 466, 347, 131, 457, 187, 162, 171, 281, 449, 152, 443, 311, 333, 163, 322, 334, 90, 136, 486, 214, 261, 285, 499, 146, 102, 216, 479, 311, 311, 324, 189, 302, 489, 107, 474, 473, 13, 265, 262, 350, 438, 459, 314, 8] + 41: [240, 263, 340, 411, 203, 501, 76, 85, 17, 89, 202, 266, 451, 376, 150, 125, 148, 240, 484, 32, 11, 353, 406, 24, 304, 109, 91, 442, 414, 420, 19, 165, 494, 114, 240, 487, 504, 426, 217, 69, 249, 133, 254, 292, 313, 131, 425, 329, 86, 382, 213, 40, 77, 189, 28, 220, 104, 506, 99, 457, 465, 423, 153, 404, 158, 284, 476, 280, 40, 115, 13, 341, 58, 387, 205, 84, 38, 305, 502, 467, 54, 230, 421, 444, 431, 40, 10, 212, 41, 60, 149, 357, 427, 119, 474, 34, 456, 201, 349, 121, 449, 110, 40, 43, 198, 296, 112, 498, 46, 335, 482, 163, 106, 318, 227, 184, 210, 278, 30, 40, 355, 419, 171, 315, 36, 272, 75, 144, 207, 391, 277, 352, 364, 9, 286, 417, 40, 478, 312, 433, 390, 429, 485, 256, 288, 346, 339, 226, 479, 160, 302, 454, 244, 459, 141, 337, 27, 95, 216, 289, 509, 15, 192, 237, 193, 492, 298, 97, 439, 408, 459, 141, 384, 214, 276, 147, 392, 490, 499, 71, 480, 37, 283, 45, 365, 369, 388, 459, 185, 452, 33, 67, 181, 111, 143, 432, 61, 179, 126, 462, 497, 333, 343, 228, 459, 291, 252, 243, 351, 441, 161, 39, 20, 225, 397, 371, 18, 196, 135, 219, 437, 459, 182, 178, 164, 413, 127, 410, 424, 31, 87, 378, 169, 7, 3, 348, 362, 430, 459, 101, 177, 345, 269, 0, 118, 166, 395, 396, 173, 373, 440, 146, 79, 310, 262, 168, 267, 446, 386, 233, 167, 186, 122, 120, 308, 96, 435, 92, 393, 8, 367, 199, 168, 466, 176, 375, 234, 273, 123, 416, 334, 323, 259, 124, 507, 281, 73, 206, 55, 168, 265, 63, 321, 381, 344, 64, 473, 409, 377, 191, 138, 306, 405, 175, 105, 56, 168, 12, 495, 82, 195, 282, 385, 489, 496, 510, 235, 223, 455, 314, 401, 180, 72, 354, 267, 270, 274, 261, 52, 162, 142, 361, 338, 172, 208, 6, 132, 47, 42, 255, 500, 332, 285, 445, 379, 328, 443, 211, 297, 461, 363, 236, 1, 258, 194, 49, 170, 500, 267, 336, 108, 438, 154, 317, 311, 232, 505, 319, 129, 238, 400, 59, 399, 93, 279, 102, 370, 383, 493, 242, 469, 241, 359, 360, 268, 248, 136, 428, 503, 372, 137, 183, 200, 197, 103, 488, 29, 209, 300, 468, 471, 65, 412, 464, 2, 246, 347, 403, 183, 200, 130, 68, 62, 157, 74, 350, 374, 100, 394, 398, 434, 316, 422, 83, 301, 183, 200, 222, 356, 80, 70, 190, 358, 342, 415, 221, 486, 253, 463, 331, 224, 453, 183, 200, 35, 290, 113, 174, 470, 204, 389, 447, 88, 483, 472, 134, 25, 14, 116, 183, 200, 57, 188, 159, 23, 436, 78, 275, 128, 322, 152, 90, 303, 5, 295, 418, 183, 251, 460, 368, 407, 458, 245, 330, 231, 287, 117, 151, 139, 477, 450, 481, 325, 183, 102, 324, 156, 66, 187, 239, 215, 511, 98, 4, 491, 264, 250, 21, 293, 257, 271, 366, 16, 107, 218, 26, 53, 294, 380, 309, 229, 475, 155, 448, 94, 326, 299, 271, 200, 22, 402, 145, 508, 247, 140, 50, 51, 307, 327, 81, 320, 260, 44, 48] + 42: [476, 141, 252, 23, 340, 17, 376, 265, 289, 325, 167, 424, 295, 45, 142, 354, 328, 476, 200, 85, 479, 418, 262, 129, 26, 22, 370, 157, 349, 395, 467, 444, 219, 507, 476, 200, 487, 504, 13, 254, 73, 446, 443, 192, 402, 222, 40, 432, 10, 180, 383, 476, 242, 31, 298, 258, 422, 508, 7, 403, 322, 256, 125, 209, 248, 163, 466, 224, 476, 128, 263, 379, 233, 412, 131, 485, 431, 216, 28, 127, 134, 140, 98, 50, 44, 365, 291, 14, 206, 149, 97, 331, 359, 126, 51, 327, 480, 488, 417, 170, 277, 287, 365, 141, 173, 178, 381, 84, 236, 337, 272, 240, 103, 260, 378, 407, 451, 231, 280, 286, 82, 470, 433, 68, 382, 2, 317, 400, 54, 363, 5, 239, 83, 37, 296, 115, 286, 291, 237, 95, 304, 172, 497, 176, 499, 351, 367, 419, 107, 171, 49, 59, 335, 41, 207, 348, 221, 294, 139, 64, 483, 63, 225, 332, 426, 162, 406, 235, 428, 205, 373, 144, 375, 105, 302, 308, 124, 201, 238, 274, 405, 211, 146, 270, 121, 410, 486, 373, 474, 312, 398, 273, 336, 108, 482, 96, 374, 87, 104, 506, 164, 90, 212, 494, 373, 18, 282, 329, 275, 344, 74, 89, 449, 91, 101, 228, 6, 66, 1, 24, 501, 447, 20, 57, 188, 414, 297, 34, 246, 0, 324, 509, 393, 33, 268, 52, 326, 100, 447, 445, 264, 194, 390, 472, 217, 355, 229, 156, 143, 421, 111, 179, 366, 122, 404, 447, 223, 437, 243, 360, 3, 461, 197, 60, 416, 46, 208, 255, 79, 42, 36, 71, 447, 223, 377, 413, 187, 503, 345, 8, 386, 29, 397, 389, 62, 300, 230, 38, 30, 310, 477, 495, 158, 279, 269, 276, 356, 93, 151, 53, 384, 307, 285, 198, 357, 234, 310, 169, 136, 315, 116, 86, 110, 195, 12, 257, 394, 450, 184, 278, 460, 498, 19, 310, 361, 48, 425, 150, 284, 154, 271, 305, 505, 147, 493, 155, 250, 454, 492, 185, 310, 168, 489, 319, 117, 166, 9, 177, 318, 114, 106, 69, 478, 341, 189, 253, 249, 310, 168, 133, 215, 175, 463, 267, 186, 440, 350, 369, 80, 65, 427, 411, 161, 347, 310, 168, 220, 193, 409, 119, 76, 113, 210, 174, 484, 77, 47, 232, 458, 500, 245, 244, 353, 468, 191, 415, 213, 281, 160, 316, 102, 61, 469, 464, 67, 435, 218, 462, 244, 477, 301, 456, 471, 153, 496, 165, 283, 401, 72, 112, 371, 199, 293, 226, 58, 244, 477, 430, 334, 438, 511, 441, 436, 145, 385, 323, 288, 339, 429, 455, 290, 132, 330, 299, 39, 372, 181, 457, 75, 387, 70, 182, 204, 138, 4, 202, 391, 266, 465, 311, 313, 92, 21, 88, 81, 368, 16, 137, 303, 420, 15, 118, 251, 292, 453, 25, 311, 299, 148, 510, 35, 321, 183, 94, 362, 343, 203, 491, 196, 43, 452, 99, 109, 311, 299, 352, 392, 434, 338, 439, 380, 364, 442, 358, 473, 32, 190, 306, 159, 55, 309, 309, 396, 314, 448, 130, 320, 214, 135, 423, 56, 27, 399, 78, 152, 333, 261, 309, 388, 11, 241, 408, 459, 346, 120, 490, 247, 123, 481, 475, 342, 259, 502, 227] + 43: [214, 76, 241, 58, 155, 101, 386, 431, 218, 228, 75, 362, 357, 379, 208, 237, 151, 214, 355, 52, 489, 256, 234, 428, 245, 66, 51, 266, 323, 79, 412, 96, 29, 10, 214, 475, 225, 304, 249, 49, 205, 295, 15, 278, 165, 339, 111, 356, 335, 230, 210, 214, 195, 59, 118, 414, 347, 416, 271, 142, 320, 227, 47, 190, 330, 344, 370, 381, 491, 301, 181, 499, 94, 92, 400, 193, 146, 16, 260, 232, 274, 485, 17, 277, 305, 491, 301, 469, 244, 236, 316, 443, 131, 122, 406, 424, 74, 98, 104, 456, 403, 449, 242, 185, 455, 348, 312, 156, 378, 99, 22, 46, 238, 169, 419, 89, 178, 397, 457, 242, 185, 374, 497, 409, 186, 293, 275, 375, 450, 407, 310, 289, 91, 502, 60, 314, 395, 464, 83, 240, 136, 444, 209, 359, 294, 288, 332, 276, 158, 97, 219, 417, 45, 13, 72, 160, 202, 309, 327, 506, 179, 461, 204, 145, 82, 201, 239, 429, 170, 308, 13, 231, 484, 259, 488, 371, 349, 360, 189, 466, 30, 463, 81, 134, 467, 346, 62, 13, 401, 447, 284, 73, 262, 78, 162, 369, 221, 358, 350, 261, 114, 176, 115, 439, 13, 380, 54, 28, 258, 404, 334, 265, 366, 187, 279, 207, 103, 199, 408, 405, 372, 13, 380, 507, 0, 166, 21, 40, 172, 472, 198, 498, 180, 153, 229, 306, 200, 55, 253, 72, 493, 68, 328, 95, 402, 383, 184, 222, 133, 213, 18, 341, 88, 487, 150, 434, 296, 109, 148, 50, 269, 270, 315, 246, 64, 389, 391, 120, 300, 37, 364, 263, 434, 477, 152, 311, 511, 106, 257, 36, 479, 471, 451, 174, 384, 438, 31, 254, 365, 434, 361, 141, 445, 126, 340, 302, 20, 480, 290, 492, 107, 34, 297, 5, 437, 220, 434, 72, 6, 211, 317, 23, 465, 61, 423, 159, 421, 410, 287, 432, 415, 282, 212, 43, 267, 108, 420, 280, 38, 14, 175, 42, 510, 338, 336, 343, 226, 442, 173, 100, 43, 267, 143, 9, 351, 117, 363, 44, 286, 116, 164, 468, 167, 163, 161, 191, 313, 43, 267, 460, 398, 112, 177, 32, 501, 48, 85, 440, 345, 183, 377, 325, 129, 291, 43, 482, 333, 324, 273, 342, 63, 326, 216, 251, 110, 57, 321, 490, 504, 422, 223, 43, 296, 292, 474, 121, 354, 105, 373, 500, 272, 3, 149, 283, 473, 87, 11, 393, 496, 194, 418, 124, 352, 86, 331, 196, 154, 483, 494, 454, 41, 247, 137, 368, 1, 496, 194, 71, 33, 26, 25, 481, 123, 385, 425, 392, 462, 119, 387, 458, 12, 394, 138, 446, 157, 235, 495, 243, 102, 192, 125, 233, 7, 69, 303, 248, 56, 215, 217, 138, 486, 436, 4, 430, 470, 93, 509, 147, 268, 80, 206, 132, 140, 139, 322, 426, 264, 452, 188, 168, 182, 130, 329, 508, 53, 411, 307, 224, 255, 35, 433, 281, 77, 264, 452, 285, 505, 8, 367, 399, 337, 128, 135, 84, 70, 113, 413, 476, 299, 171, 264, 446, 39, 90, 503, 67, 144, 435, 376, 319, 448, 24, 478, 252, 441, 127, 2, 459, 452, 19, 388, 396, 197, 298, 203, 27, 427, 382, 65, 250, 353, 318, 453, 390] + 44: [435, 91, 135, 6, 309, 202, 0, 370, 387, 429, 108, 219, 483, 229, 422, 397, 95, 197, 120, 490, 479, 488, 151, 102, 177, 320, 243, 145, 194, 510, 164, 30, 399, 501, 358, 196, 327, 341, 78, 390, 117, 334, 369, 169, 207, 222, 84, 230, 51, 474, 264, 358, 120, 10, 32, 130, 88, 374, 178, 321, 112, 463, 72, 92, 258, 121, 381, 288, 237, 456, 31, 477, 502, 134, 292, 395, 218, 442, 364, 153, 239, 144, 14, 122, 497, 237, 485, 363, 79, 238, 468, 100, 165, 18, 359, 348, 400, 423, 199, 307, 441, 330, 237, 495, 188, 66, 368, 332, 27, 73, 300, 421, 393, 64, 439, 481, 2, 437, 436, 467, 401, 299, 55, 373, 271, 274, 279, 272, 445, 215, 406, 511, 340, 244, 71, 184, 467, 231, 509, 352, 450, 500, 335, 266, 125, 155, 224, 7, 380, 394, 372, 356, 96, 467, 231, 75, 15, 83, 242, 161, 24, 162, 371, 464, 317, 388, 291, 58, 42, 333, 467, 99, 425, 269, 353, 360, 377, 507, 103, 376, 195, 398, 241, 190, 128, 136, 382, 467, 61, 159, 384, 278, 170, 487, 328, 142, 175, 305, 150, 179, 113, 187, 48, 314, 129, 301, 85, 4, 277, 322, 458, 148, 87, 408, 49, 466, 273, 152, 457, 212, 217, 129, 280, 138, 396, 482, 163, 21, 86, 506, 228, 158, 361, 223, 465, 294, 198, 124, 129, 107, 453, 303, 447, 491, 47, 67, 146, 283, 403, 34, 115, 203, 214, 260, 19, 129, 107, 461, 416, 59, 114, 35, 76, 471, 338, 20, 505, 235, 343, 54, 281, 379, 129, 107, 154, 174, 123, 452, 508, 186, 149, 386, 37, 410, 246, 478, 220, 63, 109, 129, 401, 310, 493, 315, 57, 448, 60, 185, 210, 434, 160, 430, 366, 306, 290, 33, 129, 401, 168, 26, 259, 492, 326, 3, 101, 252, 454, 486, 318, 270, 289, 428, 111, 143, 301, 16, 344, 254, 126, 182, 296, 131, 476, 257, 365, 409, 221, 147, 140, 475, 295, 472, 414, 316, 496, 255, 22, 286, 17, 297, 276, 460, 383, 206, 489, 261, 433, 295, 418, 404, 480, 263, 247, 367, 302, 426, 201, 45, 12, 432, 470, 39, 248, 181, 295, 191, 116, 444, 232, 56, 392, 413, 80, 440, 180, 342, 262, 443, 211, 385, 127, 295, 191, 139, 81, 82, 324, 284, 424, 233, 446, 325, 44, 498, 204, 354, 411, 473, 295, 191, 53, 504, 171, 193, 451, 427, 50, 449, 98, 69, 104, 345, 52, 110, 70, 295, 29, 417, 225, 209, 459, 25, 329, 28, 106, 36, 484, 156, 336, 346, 192, 166, 62, 133, 287, 253, 311, 407, 200, 419, 173, 172, 268, 469, 13, 167, 350, 250, 351, 62, 133, 189, 282, 240, 40, 141, 256, 90, 415, 68, 494, 293, 176, 349, 339, 89, 183, 132, 5, 308, 234, 331, 319, 93, 499, 298, 503, 362, 265, 420, 312, 285, 38, 183, 132, 249, 105, 389, 205, 245, 323, 304, 251, 74, 1, 391, 402, 357, 337, 412, 213, 118, 355, 216, 378, 137, 97, 267, 313, 94, 77, 43, 11, 227, 275, 375, 9, 213, 462, 8, 41, 455, 438, 208, 157, 65, 431, 226, 23, 405, 236, 119, 347, 46] + 45: [172, 140, 160, 20, 263, 49, 239, 461, 409, 228, 247, 85, 255, 330, 401, 347, 91, 172, 63, 37, 491, 402, 116, 101, 329, 110, 52, 337, 465, 136, 495, 283, 94, 3, 25, 140, 281, 144, 156, 76, 259, 213, 328, 191, 511, 276, 418, 69, 322, 95, 354, 51, 8, 481, 83, 414, 311, 393, 457, 464, 188, 119, 71, 309, 332, 250, 503, 251, 51, 278, 126, 131, 391, 141, 100, 5, 70, 284, 506, 489, 304, 260, 182, 435, 350, 51, 278, 6, 42, 413, 442, 502, 16, 45, 444, 44, 261, 221, 269, 175, 411, 35, 51, 439, 220, 407, 493, 24, 93, 422, 277, 21, 341, 26, 453, 497, 127, 128, 89, 34, 410, 58, 336, 145, 222, 416, 207, 149, 236, 385, 109, 364, 104, 198, 146, 41, 34, 202, 496, 446, 238, 462, 31, 473, 472, 169, 106, 143, 54, 348, 165, 480, 447, 34, 202, 121, 451, 125, 201, 64, 477, 340, 82, 356, 32, 314, 460, 186, 434, 74, 230, 205, 482, 351, 443, 463, 445, 454, 224, 12, 231, 373, 2, 297, 77, 195, 459, 486, 99, 40, 394, 282, 280, 86, 448, 120, 305, 396, 471, 174, 509, 301, 510, 129, 27, 99, 317, 135, 346, 270, 310, 181, 492, 403, 233, 187, 62, 308, 257, 323, 28, 252, 421, 235, 467, 302, 390, 313, 9, 395, 474, 429, 249, 501, 438, 355, 170, 381, 252, 421, 452, 484, 248, 240, 379, 362, 184, 494, 61, 392, 218, 117, 81, 208, 194, 252, 352, 185, 331, 432, 138, 426, 38, 420, 430, 375, 286, 294, 292, 275, 161, 234, 252, 352, 455, 271, 384, 102, 371, 485, 353, 167, 427, 256, 50, 287, 46, 204, 232, 252, 154, 279, 133, 10, 483, 7, 368, 359, 215, 243, 405, 225, 456, 177, 53, 479, 252, 154, 185, 166, 67, 192, 65, 408, 266, 436, 90, 176, 265, 103, 150, 209, 1, 241, 217, 197, 470, 158, 19, 389, 43, 59, 229, 312, 98, 289, 96, 114, 142, 349, 241, 147, 317, 406, 327, 508, 469, 60, 84, 296, 216, 388, 415, 29, 490, 200, 285, 18, 316, 157, 122, 357, 203, 505, 92, 372, 458, 306, 334, 123, 151, 79, 180, 162, 88, 431, 14, 210, 378, 370, 404, 66, 387, 433, 335, 211, 171, 219, 298, 23, 425, 88, 130, 56, 148, 108, 199, 412, 72, 338, 107, 75, 399, 400, 507, 300, 48, 11, 88, 274, 366, 15, 134, 376, 468, 476, 139, 97, 342, 57, 488, 112, 288, 417, 441, 115, 424, 157, 111, 190, 132, 320, 237, 193, 179, 326, 212, 377, 360, 245, 155, 153, 115, 80, 303, 423, 363, 152, 47, 262, 173, 299, 382, 118, 449, 273, 253, 242, 168, 498, 450, 374, 440, 397, 345, 367, 17, 383, 105, 466, 159, 419, 87, 30, 380, 178, 498, 487, 325, 22, 227, 478, 475, 267, 254, 223, 13, 137, 39, 244, 499, 164, 0, 498, 487, 197, 78, 196, 344, 361, 293, 307, 437, 4, 319, 339, 291, 163, 183, 214, 428, 272, 73, 365, 386, 258, 55, 333, 206, 33, 113, 268, 290, 295, 226, 369, 68, 272, 272, 73, 264, 324, 315, 189, 124, 246, 318, 500, 321, 398, 358, 36, 343, 504] + 46: [372, 141, 297, 265, 373, 16, 487, 109, 477, 21, 168, 146, 476, 176, 225, 192, 177, 400, 122, 215, 386, 69, 137, 62, 198, 300, 262, 153, 355, 86, 292, 333, 407, 2, 400, 91, 111, 238, 268, 421, 280, 68, 184, 243, 490, 57, 9, 505, 316, 40, 483, 400, 129, 111, 183, 159, 413, 478, 234, 64, 160, 278, 242, 307, 270, 417, 452, 201, 400, 438, 348, 178, 11, 165, 170, 3, 301, 414, 464, 284, 174, 190, 143, 186, 420, 486, 416, 113, 363, 357, 59, 425, 229, 456, 244, 44, 38, 263, 269, 224, 303, 18, 486, 324, 113, 488, 393, 440, 20, 335, 364, 102, 74, 227, 310, 156, 308, 461, 219, 486, 179, 297, 95, 151, 30, 75, 290, 188, 99, 126, 175, 107, 448, 144, 351, 371, 136, 409, 314, 77, 154, 341, 331, 32, 391, 255, 78, 318, 329, 152, 248, 392, 404, 79, 90, 193, 254, 172, 455, 203, 71, 489, 233, 139, 206, 446, 460, 325, 94, 187, 212, 302, 70, 5, 381, 439, 157, 97, 304, 169, 63, 500, 312, 180, 454, 46, 339, 212, 90, 361, 252, 501, 457, 230, 410, 506, 51, 281, 437, 374, 398, 340, 378, 432, 181, 376, 347, 66, 424, 92, 394, 323, 56, 276, 27, 495, 342, 249, 155, 222, 379, 181, 55, 274, 82, 246, 147, 380, 196, 320, 14, 356, 164, 322, 285, 298, 402, 447, 259, 498, 205, 336, 353, 390, 194, 45, 272, 218, 150, 49, 422, 337, 47, 195, 72, 259, 264, 375, 465, 19, 132, 67, 332, 127, 328, 412, 257, 266, 1, 93, 226, 110, 259, 264, 231, 17, 466, 39, 504, 443, 370, 383, 471, 239, 313, 319, 419, 315, 286, 259, 264, 125, 435, 214, 503, 509, 510, 171, 349, 467, 58, 185, 41, 158, 133, 305, 259, 499, 426, 100, 279, 138, 496, 326, 116, 462, 96, 480, 360, 166, 291, 346, 399, 259, 23, 274, 293, 247, 33, 469, 50, 502, 468, 124, 287, 210, 405, 202, 10, 123, 259, 474, 167, 344, 277, 101, 0, 83, 450, 236, 12, 384, 241, 395, 36, 24, 29, 259, 376, 167, 26, 191, 31, 317, 256, 354, 295, 76, 114, 48, 87, 149, 441, 311, 253, 459, 492, 209, 35, 449, 401, 148, 451, 442, 362, 296, 418, 117, 479, 327, 73, 253, 498, 458, 428, 84, 228, 240, 112, 352, 142, 387, 258, 53, 271, 108, 396, 89, 368, 459, 345, 161, 220, 343, 25, 377, 444, 369, 216, 309, 105, 130, 85, 173, 197, 359, 482, 4, 189, 299, 52, 484, 13, 366, 436, 119, 217, 65, 103, 411, 445, 423, 359, 459, 207, 403, 260, 81, 275, 34, 434, 385, 182, 106, 8, 232, 221, 470, 15, 359, 459, 433, 431, 382, 350, 37, 162, 463, 367, 415, 358, 22, 389, 289, 497, 511, 134, 388, 251, 473, 208, 54, 429, 472, 7, 453, 507, 294, 120, 213, 282, 235, 140, 334, 128, 118, 223, 135, 80, 306, 200, 211, 250, 115, 245, 365, 493, 98, 267, 397, 406, 128, 237, 475, 6, 485, 104, 273, 408, 43, 61, 88, 288, 163, 60, 131, 338, 283, 494, 237, 508, 121, 491, 430, 42, 145, 199, 261, 321, 204, 427, 330, 481, 28] + 47: [317, 243, 356, 43, 384, 13, 91, 283, 389, 331, 253, 296, 347, 17, 196, 143, 434, 317, 206, 127, 371, 216, 446, 364, 421, 381, 506, 130, 437, 211, 63, 100, 432, 55, 317, 206, 202, 46, 155, 374, 414, 249, 337, 215, 435, 57, 248, 87, 59, 31, 165, 313, 243, 159, 255, 186, 241, 450, 492, 79, 485, 394, 54, 53, 500, 343, 350, 316, 74, 42, 425, 119, 224, 397, 445, 37, 366, 210, 93, 354, 123, 137, 380, 2, 187, 74, 181, 385, 324, 6, 209, 71, 66, 463, 102, 183, 387, 455, 280, 375, 116, 81, 286, 325, 213, 112, 82, 368, 235, 61, 231, 333, 26, 310, 162, 7, 274, 166, 0, 286, 254, 146, 234, 142, 199, 52, 173, 293, 34, 407, 70, 266, 270, 490, 268, 205, 286, 42, 242, 456, 474, 470, 188, 150, 172, 111, 502, 247, 244, 423, 10, 449, 11, 460, 325, 427, 471, 83, 472, 479, 129, 126, 69, 138, 160, 4, 8, 169, 5, 115, 180, 462, 201, 346, 327, 328, 481, 419, 226, 32, 287, 469, 170, 342, 416, 149, 107, 208, 97, 191, 120, 370, 22, 306, 494, 344, 291, 281, 132, 321, 309, 33, 272, 260, 285, 362, 341, 417, 299, 35, 386, 3, 465, 185, 240, 167, 459, 267, 50, 15, 406, 322, 47, 307, 486, 212, 352, 491, 184, 453, 161, 25, 276, 250, 451, 339, 251, 311, 322, 436, 411, 152, 282, 489, 409, 176, 318, 390, 476, 284, 458, 367, 340, 323, 412, 322, 362, 411, 257, 353, 76, 264, 330, 158, 40, 418, 118, 24, 478, 178, 175, 396, 319, 229, 312, 278, 105, 203, 256, 48, 236, 227, 217, 28, 357, 65, 92, 221, 163, 319, 508, 200, 482, 510, 391, 90, 358, 332, 305, 238, 134, 473, 262, 153, 338, 109, 108, 468, 101, 487, 19, 239, 395, 345, 218, 113, 271, 393, 140, 98, 441, 30, 75, 108, 229, 133, 288, 121, 204, 415, 461, 369, 38, 124, 122, 301, 14, 12, 433, 292, 73, 383, 86, 457, 401, 20, 361, 499, 41, 438, 85, 103, 497, 304, 426, 64, 145, 73, 378, 298, 9, 402, 503, 259, 498, 104, 89, 147, 349, 246, 440, 182, 194, 410, 73, 363, 488, 315, 106, 136, 110, 237, 320, 351, 360, 18, 263, 154, 151, 431, 139, 73, 363, 99, 265, 198, 480, 67, 192, 335, 77, 27, 496, 372, 404, 334, 60, 252, 73, 363, 298, 303, 222, 273, 23, 359, 279, 443, 179, 131, 382, 484, 295, 495, 39, 88, 467, 21, 225, 228, 422, 314, 398, 171, 269, 157, 78, 336, 245, 420, 439, 424, 88, 467, 405, 511, 195, 207, 36, 51, 223, 45, 16, 164, 261, 373, 430, 177, 95, 88, 383, 86, 413, 464, 277, 1, 174, 300, 44, 135, 507, 68, 501, 444, 379, 232, 429, 447, 483, 326, 275, 230, 477, 62, 148, 58, 29, 114, 399, 377, 289, 466, 297, 429, 447, 220, 128, 505, 214, 233, 302, 504, 392, 94, 452, 475, 355, 117, 193, 190, 125, 125, 294, 308, 428, 56, 509, 219, 376, 329, 80, 144, 493, 72, 400, 365, 442, 125, 258, 96, 454, 141, 348, 403, 84, 388, 197, 448, 408, 290, 168, 156, 189, 49] + 48: [462, 192, 113, 418, 386, 466, 186, 111, 316, 237, 436, 1, 285, 470, 60, 148, 262, 462, 192, 296, 270, 115, 319, 458, 280, 136, 336, 176, 368, 453, 332, 354, 260, 11, 158, 390, 467, 286, 320, 413, 38, 275, 178, 53, 318, 48, 195, 33, 215, 360, 287, 158, 58, 509, 50, 173, 180, 171, 423, 74, 79, 279, 46, 121, 385, 94, 295, 116, 367, 390, 414, 112, 77, 71, 393, 228, 252, 197, 35, 62, 17, 150, 276, 511, 475, 54, 246, 380, 457, 22, 454, 220, 372, 88, 434, 31, 10, 404, 378, 210, 313, 64, 16, 341, 437, 340, 102, 206, 507, 163, 4, 307, 488, 254, 253, 305, 239, 503, 256, 51, 349, 435, 358, 123, 478, 402, 407, 7, 274, 359, 224, 196, 146, 202, 166, 258, 51, 27, 500, 312, 247, 177, 465, 223, 188, 365, 364, 419, 496, 99, 369, 490, 203, 51, 30, 43, 342, 153, 446, 164, 430, 476, 105, 398, 343, 191, 199, 283, 284, 348, 51, 463, 437, 151, 167, 433, 82, 205, 184, 37, 428, 135, 218, 190, 401, 56, 106, 83, 405, 248, 282, 122, 499, 268, 103, 374, 207, 392, 294, 67, 91, 127, 303, 383, 83, 211, 500, 157, 219, 337, 236, 161, 175, 429, 331, 185, 257, 36, 399, 259, 474, 213, 405, 435, 421, 222, 394, 363, 41, 427, 366, 21, 449, 362, 66, 278, 489, 351, 126, 40, 107, 145, 442, 24, 334, 422, 310, 459, 411, 243, 438, 425, 272, 277, 269, 141, 370, 52, 300, 443, 9, 420, 281, 431, 304, 355, 6, 448, 125, 357, 497, 221, 141, 93, 248, 118, 95, 388, 23, 375, 322, 384, 289, 70, 5, 326, 347, 152, 298, 486, 444, 361, 451, 63, 323, 97, 480, 149, 492, 65, 73, 3, 78, 321, 234, 183, 486, 444, 57, 302, 20, 131, 400, 89, 140, 90, 261, 28, 387, 76, 426, 498, 119, 486, 371, 137, 455, 129, 324, 389, 0, 25, 299, 92, 288, 160, 133, 484, 297, 472, 486, 371, 267, 226, 356, 201, 403, 238, 424, 311, 59, 501, 450, 32, 506, 96, 391, 486, 371, 101, 339, 508, 250, 345, 12, 447, 72, 464, 139, 225, 80, 309, 75, 291, 212, 87, 13, 406, 335, 194, 338, 409, 491, 172, 325, 494, 308, 110, 415, 293, 208, 232, 505, 200, 15, 292, 217, 440, 416, 147, 395, 229, 143, 346, 42, 117, 445, 68, 232, 227, 439, 266, 487, 468, 333, 251, 165, 179, 49, 204, 408, 100, 61, 353, 473, 134, 505, 493, 481, 328, 315, 168, 479, 373, 504, 114, 290, 104, 170, 155, 306, 108, 154, 350, 13, 460, 330, 264, 44, 344, 485, 329, 109, 169, 273, 128, 39, 265, 84, 154, 350, 477, 124, 144, 469, 189, 452, 132, 45, 85, 255, 482, 198, 34, 456, 55, 396, 350, 69, 376, 301, 432, 441, 417, 181, 471, 187, 18, 193, 174, 381, 19, 47, 396, 350, 439, 2, 410, 235, 209, 142, 29, 98, 352, 271, 241, 495, 81, 382, 26, 377, 231, 412, 240, 314, 14, 138, 214, 397, 86, 233, 8, 263, 244, 327, 483, 216, 510, 231, 101, 162, 245, 130, 502, 379, 317, 182, 120, 156, 159, 461, 230, 249, 242] + 49: [73, 188, 26, 378, 294, 478, 485, 383, 30, 493, 183, 391, 306, 421, 93, 266, 244, 73, 264, 448, 396, 297, 353, 166, 1, 392, 0, 433, 324, 352, 277, 53, 243, 413, 73, 264, 284, 214, 144, 385, 57, 269, 225, 103, 278, 231, 193, 31, 160, 373, 302, 377, 188, 262, 235, 456, 425, 481, 7, 203, 480, 125, 343, 342, 205, 361, 190, 66, 195, 282, 309, 157, 438, 222, 452, 238, 394, 460, 428, 118, 198, 88, 165, 280, 20, 41, 282, 92, 172, 496, 390, 35, 173, 213, 216, 137, 209, 506, 69, 453, 442, 328, 152, 282, 399, 482, 240, 457, 251, 344, 420, 122, 255, 395, 178, 386, 186, 279, 432, 276, 80, 401, 339, 19, 347, 77, 436, 176, 326, 116, 3, 416, 257, 367, 32, 201, 411, 256, 322, 497, 169, 303, 47, 63, 59, 305, 212, 87, 145, 252, 366, 208, 508, 411, 80, 400, 147, 336, 72, 429, 170, 36, 397, 2, 350, 189, 502, 435, 439, 250, 411, 80, 401, 304, 340, 16, 368, 4, 301, 325, 313, 29, 185, 405, 220, 267, 224, 467, 256, 128, 159, 263, 398, 37, 90, 149, 161, 56, 226, 218, 180, 311, 412, 86, 467, 256, 13, 46, 94, 12, 414, 23, 291, 177, 317, 498, 68, 89, 192, 468, 384, 494, 9, 454, 114, 376, 105, 82, 8, 221, 472, 509, 338, 146, 450, 261, 254, 471, 473, 236, 120, 67, 370, 42, 91, 239, 363, 61, 229, 423, 237, 227, 415, 11, 424, 473, 9, 329, 140, 500, 440, 156, 95, 418, 115, 129, 499, 109, 290, 247, 167, 219, 292, 358, 143, 101, 464, 348, 202, 64, 381, 476, 287, 10, 495, 104, 117, 337, 445, 292, 236, 443, 70, 281, 372, 359, 43, 217, 136, 78, 230, 504, 285, 83, 196, 426, 455, 487, 296, 223, 351, 458, 371, 79, 259, 289, 299, 44, 191, 211, 331, 40, 97, 455, 184, 13, 233, 275, 119, 431, 102, 488, 316, 155, 369, 389, 130, 465, 461, 273, 334, 487, 484, 349, 307, 466, 308, 33, 364, 374, 74, 365, 175, 491, 310, 81, 315, 286, 318, 484, 490, 260, 135, 199, 98, 249, 486, 312, 126, 106, 164, 51, 52, 71, 446, 318, 75, 380, 6, 28, 200, 321, 387, 271, 470, 379, 22, 158, 323, 21, 507, 121, 318, 75, 179, 283, 45, 492, 111, 207, 417, 234, 24, 332, 15, 187, 357, 265, 113, 474, 409, 5, 253, 14, 483, 355, 139, 49, 404, 25, 382, 153, 62, 112, 419, 85, 489, 162, 65, 333, 360, 248, 434, 298, 194, 133, 148, 197, 288, 388, 441, 48, 85, 489, 430, 242, 300, 462, 319, 142, 459, 375, 335, 163, 437, 245, 123, 182, 356, 84, 489, 409, 154, 38, 110, 131, 76, 18, 408, 293, 447, 422, 272, 132, 501, 228, 58, 168, 403, 181, 402, 410, 258, 295, 138, 174, 134, 55, 268, 108, 27, 449, 393, 58, 406, 60, 510, 150, 127, 475, 124, 215, 39, 407, 107, 362, 204, 330, 346, 151, 58, 327, 511, 354, 17, 469, 320, 477, 54, 34, 463, 503, 274, 100, 171, 206, 241, 505, 505, 99, 444, 270, 341, 50, 345, 246, 232, 479, 427, 141, 96, 210, 314, 451] + 50: [62, 415, 43, 181, 327, 120, 196, 4, 115, 444, 51, 428, 447, 208, 309, 463, 183, 319, 273, 380, 165, 277, 413, 412, 264, 109, 12, 376, 295, 138, 393, 441, 400, 366, 258, 273, 193, 84, 229, 233, 96, 9, 337, 8, 281, 240, 252, 104, 465, 458, 35, 185, 103, 386, 170, 171, 66, 378, 487, 244, 351, 488, 32, 260, 239, 167, 350, 410, 484, 103, 79, 82, 41, 245, 298, 480, 192, 296, 318, 314, 17, 234, 65, 399, 117, 221, 223, 470, 426, 352, 362, 297, 217, 247, 473, 204, 345, 324, 46, 168, 180, 197, 466, 371, 79, 330, 344, 261, 206, 52, 423, 510, 88, 303, 278, 19, 478, 290, 194, 282, 371, 106, 178, 391, 307, 370, 225, 142, 236, 0, 99, 144, 321, 438, 407, 157, 248, 134, 470, 446, 250, 490, 1, 137, 289, 227, 302, 152, 173, 189, 16, 491, 95, 248, 346, 402, 128, 445, 73, 286, 55, 226, 44, 485, 22, 405, 504, 71, 80, 36, 248, 254, 394, 301, 355, 97, 326, 235, 506, 255, 212, 316, 59, 30, 268, 509, 329, 476, 406, 417, 224, 496, 215, 72, 48, 75, 210, 389, 29, 147, 359, 78, 293, 348, 40, 184, 106, 472, 342, 262, 23, 141, 424, 198, 93, 452, 411, 500, 469, 499, 125, 40, 184, 417, 392, 467, 11, 13, 175, 456, 129, 60, 300, 269, 164, 373, 505, 34, 202, 108, 341, 6, 241, 450, 249, 121, 285, 251, 267, 374, 136, 153, 205, 416, 256, 202, 108, 408, 477, 74, 332, 179, 503, 354, 21, 265, 133, 169, 390, 114, 107, 242, 246, 507, 358, 312, 257, 94, 10, 42, 14, 92, 118, 158, 76, 5, 163, 187, 18, 246, 459, 83, 98, 306, 315, 159, 382, 284, 145, 368, 425, 200, 367, 228, 492, 122, 246, 471, 291, 127, 232, 404, 39, 353, 340, 214, 37, 494, 85, 479, 375, 437, 53, 246, 471, 83, 455, 263, 68, 420, 498, 331, 336, 334, 449, 123, 299, 489, 396, 317, 259, 507, 222, 56, 427, 110, 511, 414, 347, 482, 27, 230, 218, 81, 7, 385, 475, 313, 507, 341, 67, 146, 323, 453, 468, 126, 431, 253, 209, 135, 349, 113, 356, 211, 24, 190, 231, 364, 216, 325, 143, 176, 335, 139, 220, 439, 112, 451, 272, 161, 87, 328, 369, 231, 379, 149, 266, 429, 33, 508, 357, 26, 15, 461, 365, 497, 397, 174, 64, 369, 432, 124, 119, 101, 481, 116, 166, 238, 70, 372, 401, 436, 130, 433, 111, 188, 287, 38, 50, 310, 102, 434, 398, 311, 90, 237, 294, 360, 91, 320, 454, 421, 45, 25, 501, 47, 61, 339, 148, 279, 63, 440, 442, 3, 100, 151, 418, 182, 69, 45, 25, 89, 384, 388, 343, 448, 361, 419, 203, 305, 201, 155, 304, 199, 131, 274, 45, 287, 501, 140, 333, 288, 403, 322, 363, 57, 377, 132, 191, 486, 156, 383, 186, 464, 276, 415, 474, 457, 270, 493, 154, 213, 280, 162, 271, 443, 105, 207, 275, 495, 430, 430, 291, 58, 483, 49, 460, 381, 160, 409, 395, 308, 219, 177, 292, 502, 387, 430, 54, 243, 77, 422, 2, 435, 283, 462, 195, 150, 86, 338, 31, 28, 172, 20] + 51: [33, 276, 473, 284, 261, 152, 356, 348, 400, 381, 346, 415, 461, 19, 430, 503, 452, 33, 44, 294, 411, 79, 198, 412, 497, 161, 326, 87, 238, 413, 137, 225, 67, 110, 33, 155, 40, 122, 192, 131, 149, 257, 141, 321, 373, 3, 388, 454, 467, 371, 464, 33, 155, 20, 138, 148, 184, 169, 469, 405, 114, 387, 196, 303, 258, 265, 15, 186, 33, 13, 108, 216, 117, 312, 176, 102, 439, 440, 394, 204, 322, 304, 339, 423, 353, 33, 457, 151, 167, 343, 433, 89, 362, 379, 479, 360, 98, 179, 482, 201, 332, 154, 320, 276, 437, 315, 458, 301, 146, 421, 500, 427, 420, 496, 130, 372, 271, 0, 80, 157, 210, 207, 235, 493, 297, 395, 222, 52, 24, 441, 354, 17, 508, 264, 135, 209, 129, 147, 35, 308, 333, 125, 159, 121, 107, 228, 244, 4, 306, 418, 369, 288, 231, 129, 337, 324, 349, 53, 450, 74, 234, 447, 365, 190, 136, 59, 478, 5, 345, 270, 213, 70, 124, 156, 49, 314, 316, 403, 425, 504, 38, 60, 480, 230, 66, 368, 65, 2, 385, 289, 334, 215, 88, 246, 188, 409, 218, 22, 382, 51, 1, 164, 298, 45, 2, 352, 445, 173, 143, 99, 262, 233, 275, 462, 71, 502, 109, 281, 363, 357, 133, 2, 70, 242, 494, 100, 6, 166, 58, 90, 408, 72, 239, 243, 328, 384, 488, 256, 325, 385, 445, 344, 419, 211, 11, 456, 414, 68, 510, 455, 436, 7, 132, 277, 123, 47, 449, 431, 442, 295, 195, 120, 206, 471, 278, 285, 465, 160, 335, 170, 248, 428, 9, 410, 73, 106, 486, 236, 30, 491, 46, 77, 28, 492, 10, 208, 240, 274, 144, 453, 162, 165, 485, 214, 459, 350, 472, 119, 444, 438, 48, 153, 54, 426, 424, 300, 453, 162, 57, 367, 498, 273, 422, 56, 64, 76, 85, 224, 286, 62, 55, 507, 347, 21, 434, 73, 267, 474, 509, 182, 377, 468, 142, 390, 115, 429, 309, 323, 63, 8, 21, 434, 177, 251, 451, 171, 364, 279, 383, 39, 91, 282, 331, 139, 330, 18, 42, 103, 112, 219, 197, 386, 27, 376, 269, 407, 174, 163, 263, 358, 12, 237, 97, 378, 318, 111, 96, 221, 483, 280, 499, 247, 481, 254, 255, 406, 393, 501, 292, 83, 475, 61, 111, 324, 249, 319, 290, 84, 417, 397, 313, 495, 118, 193, 250, 185, 361, 150, 180, 101, 207, 29, 374, 43, 69, 505, 223, 126, 212, 203, 191, 342, 287, 158, 446, 78, 506, 226, 178, 340, 416, 104, 355, 448, 175, 443, 404, 338, 470, 392, 181, 113, 78, 327, 187, 487, 232, 317, 435, 299, 202, 260, 391, 359, 50, 329, 305, 241, 183, 78, 327, 187, 293, 336, 94, 199, 37, 245, 490, 227, 194, 291, 14, 380, 75, 41, 402, 105, 226, 477, 116, 476, 172, 189, 229, 283, 140, 86, 302, 311, 82, 375, 205, 402, 506, 399, 366, 34, 217, 23, 81, 127, 296, 134, 95, 93, 32, 351, 310, 25, 432, 105, 177, 389, 398, 168, 341, 460, 253, 401, 36, 266, 92, 268, 220, 31, 466, 489, 105, 399, 200, 259, 128, 511, 484, 370, 396, 252, 307, 463, 272, 16, 26, 145] + 52: [113, 276, 430, 466, 329, 53, 460, 205, 170, 336, 457, 153, 61, 10, 97, 240, 74, 344, 495, 208, 272, 503, 334, 244, 450, 234, 350, 224, 98, 465, 188, 489, 498, 305, 186, 368, 21, 339, 302, 174, 412, 48, 89, 115, 39, 172, 352, 171, 435, 377, 213, 186, 368, 430, 400, 308, 301, 223, 485, 389, 248, 150, 193, 505, 129, 452, 385, 95, 323, 43, 35, 140, 392, 290, 384, 121, 418, 298, 281, 47, 183, 439, 278, 348, 146, 217, 75, 424, 317, 399, 335, 325, 379, 245, 340, 271, 299, 419, 397, 445, 307, 294, 175, 75, 262, 86, 374, 355, 404, 168, 359, 177, 180, 16, 442, 444, 116, 486, 91, 506, 133, 262, 108, 410, 259, 292, 65, 228, 380, 206, 243, 376, 38, 50, 90, 127, 222, 260, 232, 17, 468, 62, 1, 154, 92, 319, 261, 343, 403, 136, 395, 141, 147, 84, 260, 314, 358, 321, 194, 470, 152, 25, 66, 501, 225, 191, 360, 267, 44, 378, 401, 266, 200, 216, 59, 331, 458, 9, 93, 496, 173, 475, 227, 166, 406, 428, 134, 366, 369, 163, 30, 407, 165, 509, 282, 56, 231, 3, 94, 338, 390, 363, 353, 264, 366, 369, 163, 212, 421, 287, 68, 250, 145, 124, 349, 229, 233, 198, 119, 178, 12, 143, 443, 200, 203, 415, 409, 312, 15, 117, 139, 151, 357, 293, 202, 303, 284, 510, 143, 131, 73, 26, 269, 277, 382, 416, 327, 396, 135, 185, 82, 100, 393, 296, 123, 431, 20, 49, 69, 420, 446, 472, 114, 316, 300, 367, 179, 128, 488, 181, 207, 64, 386, 87, 73, 109, 437, 480, 96, 436, 453, 289, 383, 36, 162, 423, 81, 218, 72, 371, 230, 440, 242, 125, 138, 80, 14, 7, 88, 144, 429, 201, 315, 504, 459, 454, 196, 230, 373, 253, 85, 467, 422, 469, 45, 356, 31, 345, 8, 251, 295, 362, 249, 196, 230, 164, 456, 413, 320, 387, 103, 490, 6, 13, 55, 210, 280, 476, 190, 67, 122, 324, 49, 252, 71, 110, 19, 432, 451, 247, 318, 99, 101, 309, 18, 37, 449, 122, 482, 440, 46, 189, 493, 236, 427, 354, 364, 370, 479, 263, 288, 441, 492, 78, 414, 63, 373, 461, 332, 23, 22, 204, 102, 77, 487, 156, 130, 5, 297, 304, 158, 414, 324, 375, 328, 405, 254, 4, 58, 107, 500, 283, 41, 237, 169, 197, 306, 491, 414, 324, 333, 137, 477, 106, 33, 483, 60, 402, 330, 285, 434, 57, 239, 246, 361, 268, 448, 502, 464, 342, 161, 0, 494, 159, 471, 105, 238, 118, 474, 478, 286, 311, 256, 160, 375, 391, 310, 221, 372, 270, 425, 481, 274, 257, 70, 29, 499, 508, 111, 256, 448, 313, 507, 346, 148, 220, 24, 187, 447, 182, 511, 351, 42, 199, 219, 176, 275, 160, 142, 417, 326, 11, 337, 241, 455, 411, 51, 28, 76, 83, 214, 484, 184, 275, 160, 381, 157, 365, 2, 341, 463, 235, 273, 291, 322, 209, 497, 433, 27, 388, 408, 226, 195, 167, 215, 32, 258, 347, 473, 462, 394, 255, 426, 192, 211, 149, 52, 408, 226, 502, 279, 155, 79, 120, 54, 398, 438, 132, 104, 40, 112, 265, 126, 34] + 53: [499, 159, 151, 481, 229, 447, 258, 392, 211, 195, 115, 24, 396, 273, 137, 345, 72, 499, 159, 460, 161, 160, 343, 484, 478, 22, 324, 77, 113, 237, 476, 462, 21, 179, 366, 443, 151, 472, 497, 241, 200, 415, 299, 376, 335, 81, 384, 132, 399, 291, 188, 434, 443, 186, 378, 354, 391, 358, 138, 150, 410, 503, 296, 60, 149, 23, 41, 57, 157, 404, 222, 185, 435, 127, 283, 509, 267, 56, 390, 491, 251, 146, 85, 256, 394, 281, 502, 442, 64, 421, 300, 312, 262, 422, 306, 234, 230, 301, 106, 319, 254, 393, 281, 502, 165, 360, 414, 493, 117, 336, 416, 63, 156, 202, 339, 357, 76, 397, 163, 350, 317, 338, 426, 386, 154, 125, 118, 501, 331, 134, 495, 104, 252, 380, 214, 348, 266, 293, 103, 17, 116, 59, 413, 19, 15, 374, 220, 199, 500, 27, 101, 492, 248, 171, 181, 425, 400, 389, 128, 496, 271, 55, 367, 11, 155, 373, 35, 286, 239, 487, 171, 458, 10, 444, 325, 255, 264, 280, 379, 126, 402, 208, 278, 87, 429, 89, 333, 171, 458, 107, 486, 47, 326, 167, 284, 144, 122, 46, 102, 332, 269, 232, 99, 451, 171, 164, 207, 233, 469, 461, 26, 166, 431, 490, 292, 42, 82, 189, 250, 249, 240, 171, 164, 207, 368, 244, 288, 68, 382, 29, 307, 75, 67, 90, 488, 16, 152, 245, 171, 62, 424, 145, 198, 205, 289, 305, 136, 238, 32, 479, 0, 453, 276, 4, 65, 171, 62, 438, 483, 427, 194, 74, 45, 38, 411, 505, 197, 385, 268, 275, 263, 352, 171, 364, 242, 96, 73, 78, 218, 129, 173, 381, 247, 18, 158, 408, 191, 308, 223, 51, 142, 109, 329, 321, 363, 412, 340, 261, 347, 86, 265, 33, 49, 344, 168, 471, 341, 142, 338, 20, 315, 39, 466, 409, 184, 7, 403, 323, 494, 130, 3, 259, 294, 341, 142, 507, 346, 88, 105, 318, 298, 313, 441, 94, 48, 398, 34, 297, 436, 169, 231, 142, 221, 260, 316, 180, 176, 92, 470, 457, 369, 489, 456, 66, 272, 213, 210, 510, 8, 371, 459, 454, 175, 475, 97, 430, 216, 50, 473, 162, 302, 322, 277, 474, 510, 467, 25, 282, 290, 439, 206, 406, 327, 114, 120, 98, 452, 485, 123, 121, 328, 510, 463, 243, 375, 178, 139, 110, 506, 9, 131, 13, 432, 153, 192, 351, 2, 353, 510, 511, 465, 225, 387, 141, 417, 377, 320, 228, 274, 14, 196, 330, 334, 383, 83, 285, 177, 183, 420, 448, 91, 170, 359, 418, 119, 6, 217, 1, 54, 464, 140, 53, 5, 342, 183, 460, 450, 309, 423, 124, 31, 133, 52, 236, 287, 370, 504, 100, 147, 209, 342, 349, 111, 372, 405, 84, 227, 71, 224, 477, 12, 480, 407, 61, 295, 201, 362, 342, 28, 143, 226, 498, 356, 279, 355, 508, 36, 95, 43, 190, 108, 148, 172, 446, 135, 37, 70, 58, 304, 361, 449, 388, 303, 311, 270, 419, 44, 482, 193, 455, 215, 182, 112, 235, 257, 80, 69, 79, 337, 187, 253, 365, 433, 219, 401, 204, 40, 215, 135, 221, 93, 212, 310, 428, 246, 30, 203, 445, 468, 440, 437, 395, 314, 174] + 54: [234, 74, 59, 43, 187, 246, 505, 45, 297, 446, 457, 172, 272, 438, 395, 80, 290, 71, 236, 364, 85, 498, 120, 414, 63, 224, 157, 252, 382, 60, 149, 46, 65, 506, 374, 89, 478, 280, 407, 37, 423, 209, 54, 481, 25, 479, 86, 217, 211, 356, 248, 374, 236, 364, 26, 201, 3, 15, 23, 485, 511, 58, 321, 152, 166, 83, 344, 12, 304, 422, 250, 245, 241, 377, 449, 503, 305, 325, 30, 499, 193, 95, 317, 232, 359, 335, 362, 240, 450, 140, 397, 496, 18, 184, 39, 385, 255, 233, 439, 73, 133, 210, 493, 313, 458, 264, 431, 490, 162, 483, 471, 320, 218, 216, 453, 380, 107, 454, 482, 493, 111, 392, 31, 488, 161, 307, 205, 388, 121, 253, 267, 247, 229, 472, 265, 285, 451, 38, 393, 136, 207, 82, 363, 200, 430, 208, 228, 309, 8, 239, 48, 181, 256, 451, 38, 51, 146, 102, 135, 40, 93, 466, 326, 176, 67, 69, 179, 114, 391, 100, 451, 38, 51, 445, 269, 21, 332, 376, 84, 500, 112, 118, 131, 295, 442, 92, 20, 451, 389, 171, 11, 429, 117, 350, 251, 213, 387, 44, 113, 464, 491, 214, 452, 401, 451, 288, 240, 219, 404, 412, 262, 298, 14, 4, 366, 289, 32, 97, 158, 226, 480, 451, 313, 276, 410, 270, 99, 206, 87, 417, 57, 13, 203, 230, 258, 294, 61, 263, 41, 463, 432, 441, 447, 507, 434, 398, 465, 425, 190, 254, 495, 275, 365, 311, 338, 41, 106, 257, 462, 119, 81, 487, 345, 220, 328, 47, 341, 271, 34, 386, 1, 27, 470, 474, 156, 139, 137, 142, 50, 108, 164, 64, 370, 354, 379, 98, 29, 375, 249, 509, 324, 90, 360, 22, 403, 427, 343, 260, 49, 292, 204, 145, 10, 299, 148, 183, 396, 191, 101, 286, 138, 435, 259, 351, 196, 486, 88, 322, 284, 468, 369, 143, 406, 151, 155, 353, 456, 329, 510, 124, 192, 283, 76, 159, 0, 165, 492, 75, 168, 336, 151, 104, 90, 415, 367, 278, 293, 504, 371, 327, 399, 390, 357, 413, 134, 339, 475, 151, 191, 378, 274, 421, 409, 469, 198, 315, 144, 225, 302, 66, 222, 489, 314, 17, 151, 191, 378, 122, 408, 400, 129, 352, 105, 78, 103, 170, 212, 109, 437, 173, 123, 334, 155, 353, 194, 70, 185, 33, 268, 372, 444, 443, 306, 132, 167, 418, 484, 237, 310, 467, 156, 238, 186, 28, 62, 308, 223, 282, 2, 502, 16, 197, 127, 199, 182, 310, 6, 508, 411, 273, 94, 35, 128, 361, 419, 347, 5, 373, 153, 337, 342, 405, 300, 7, 56, 235, 24, 303, 433, 312, 346, 383, 381, 52, 461, 243, 448, 110, 53, 147, 316, 56, 189, 177, 355, 9, 130, 291, 55, 287, 202, 301, 163, 358, 242, 36, 154, 316, 333, 368, 436, 188, 215, 476, 244, 169, 416, 473, 494, 340, 79, 19, 96, 348, 348, 501, 279, 426, 221, 77, 266, 195, 319, 261, 349, 115, 91, 174, 116, 42, 348, 296, 150, 455, 72, 460, 277, 178, 281, 384, 68, 402, 394, 477, 420, 323, 126, 348, 296, 180, 428, 125, 227, 440, 497, 330, 175, 424, 459, 318, 331, 231, 141, 160] + 55: [292, 167, 353, 286, 352, 258, 78, 478, 310, 298, 328, 495, 182, 457, 380, 330, 176, 292, 186, 494, 179, 246, 386, 190, 320, 452, 217, 195, 480, 364, 26, 333, 62, 451, 292, 68, 426, 177, 63, 382, 453, 105, 408, 278, 442, 184, 89, 418, 125, 102, 455, 292, 37, 274, 109, 148, 77, 303, 347, 162, 441, 390, 156, 46, 31, 436, 377, 12, 292, 53, 373, 492, 219, 104, 128, 94, 93, 24, 173, 443, 404, 121, 395, 505, 70, 413, 224, 316, 216, 210, 25, 43, 464, 311, 511, 218, 414, 161, 371, 66, 174, 463, 413, 208, 368, 122, 150, 399, 123, 381, 372, 237, 147, 108, 252, 126, 238, 300, 44, 413, 167, 99, 168, 307, 362, 14, 314, 428, 251, 60, 322, 340, 58, 143, 438, 301, 338, 175, 274, 272, 3, 287, 120, 275, 98, 228, 244, 257, 247, 115, 269, 197, 214, 398, 250, 127, 188, 40, 359, 245, 117, 199, 422, 157, 52, 507, 424, 288, 16, 155, 357, 250, 47, 279, 403, 384, 101, 355, 153, 410, 393, 317, 13, 389, 431, 6, 469, 35, 250, 107, 479, 100, 113, 15, 400, 8, 295, 339, 130, 280, 18, 194, 65, 11, 417, 69, 470, 41, 302, 445, 379, 201, 456, 248, 111, 61, 90, 73, 435, 351, 95, 417, 69, 470, 191, 169, 299, 449, 166, 185, 267, 427, 490, 305, 151, 321, 132, 119, 468, 87, 21, 327, 460, 290, 225, 152, 112, 430, 172, 159, 254, 425, 263, 341, 193, 97, 67, 502, 264, 49, 503, 223, 439, 145, 501, 265, 433, 401, 491, 96, 420, 181, 71, 67, 365, 50, 331, 409, 221, 454, 64, 344, 326, 415, 212, 164, 448, 55, 241, 220, 133, 365, 461, 242, 482, 465, 56, 270, 236, 196, 75, 312, 437, 332, 183, 509, 84, 133, 388, 142, 350, 474, 38, 36, 85, 374, 499, 477, 472, 189, 378, 235, 86, 281, 133, 467, 243, 80, 114, 103, 342, 81, 325, 266, 276, 485, 51, 187, 293, 397, 233, 33, 335, 348, 360, 82, 500, 308, 5, 141, 304, 29, 498, 484, 447, 277, 48, 233, 33, 149, 366, 309, 230, 444, 54, 367, 256, 273, 323, 462, 19, 375, 487, 336, 343, 198, 192, 466, 20, 291, 74, 354, 406, 215, 28, 459, 32, 493, 209, 356, 283, 343, 139, 335, 116, 154, 434, 144, 285, 405, 227, 349, 458, 211, 158, 23, 207, 391, 163, 334, 358, 231, 34, 407, 10, 486, 376, 260, 471, 45, 508, 17, 42, 497, 369, 163, 334, 394, 361, 385, 200, 226, 370, 2, 234, 284, 488, 83, 249, 1, 239, 315, 170, 334, 53, 146, 363, 346, 88, 313, 481, 22, 383, 297, 178, 240, 271, 294, 0, 110, 423, 149, 450, 131, 473, 306, 411, 79, 135, 392, 232, 429, 396, 416, 206, 446, 110, 421, 337, 475, 76, 259, 124, 432, 262, 9, 92, 7, 118, 171, 229, 419, 205, 140, 140, 388, 91, 255, 213, 180, 39, 137, 506, 261, 318, 202, 319, 27, 30, 387, 140, 476, 136, 345, 329, 296, 504, 489, 440, 203, 57, 483, 268, 510, 129, 134, 496, 140, 423, 106, 402, 4, 138, 222, 412, 160, 59, 289, 324, 282, 204, 253, 165, 72] + 56: [114, 51, 314, 146, 57, 257, 476, 361, 92, 395, 274, 464, 495, 95, 332, 175, 106, 442, 51, 493, 27, 262, 340, 94, 130, 62, 205, 237, 344, 40, 422, 426, 379, 207, 3, 226, 144, 56, 461, 270, 230, 486, 14, 403, 375, 19, 242, 200, 164, 407, 458, 3, 265, 139, 197, 147, 135, 165, 11, 134, 24, 222, 492, 105, 256, 33, 358, 487, 3, 265, 2, 232, 176, 468, 301, 249, 338, 187, 167, 116, 118, 440, 85, 81, 254, 299, 177, 8, 470, 328, 320, 120, 104, 10, 484, 400, 324, 253, 421, 71, 359, 316, 227, 303, 469, 376, 196, 182, 88, 453, 401, 35, 289, 479, 233, 179, 500, 457, 308, 150, 357, 44, 223, 99, 466, 83, 78, 161, 343, 381, 411, 54, 66, 335, 351, 431, 150, 506, 493, 126, 229, 296, 499, 329, 180, 438, 418, 450, 217, 198, 300, 252, 350, 48, 199, 87, 185, 318, 496, 341, 119, 313, 472, 244, 312, 4, 287, 419, 437, 30, 48, 143, 87, 25, 286, 325, 151, 236, 156, 34, 374, 488, 281, 355, 323, 112, 377, 48, 404, 144, 413, 389, 21, 216, 190, 333, 371, 449, 129, 89, 183, 336, 178, 234, 48, 367, 9, 471, 455, 383, 50, 208, 218, 247, 503, 502, 194, 349, 405, 37, 505, 0, 123, 507, 441, 241, 98, 261, 497, 288, 511, 369, 489, 406, 258, 224, 138, 410, 0, 271, 121, 423, 245, 248, 145, 213, 356, 193, 285, 113, 107, 482, 428, 467, 434, 435, 123, 302, 46, 84, 384, 291, 425, 462, 5, 76, 353, 448, 317, 136, 444, 510, 485, 141, 7, 295, 267, 18, 169, 100, 155, 390, 460, 125, 38, 456, 74, 186, 415, 36, 80, 427, 394, 173, 69, 385, 246, 292, 504, 363, 174, 280, 477, 47, 171, 111, 31, 212, 9, 214, 64, 498, 157, 225, 372, 290, 279, 162, 294, 117, 1, 219, 250, 31, 339, 2, 53, 397, 115, 152, 387, 445, 347, 15, 153, 13, 32, 17, 108, 266, 31, 339, 149, 82, 327, 235, 465, 255, 272, 275, 238, 386, 463, 277, 28, 334, 352, 110, 212, 128, 67, 501, 388, 345, 370, 402, 276, 195, 29, 23, 311, 65, 206, 454, 451, 63, 331, 39, 264, 304, 168, 508, 473, 278, 45, 297, 42, 260, 228, 420, 459, 451, 212, 331, 16, 509, 101, 391, 298, 192, 362, 49, 348, 102, 491, 243, 392, 412, 60, 240, 139, 97, 203, 432, 201, 305, 140, 293, 481, 283, 210, 209, 326, 166, 282, 41, 322, 220, 490, 480, 181, 259, 148, 122, 307, 393, 204, 429, 478, 446, 309, 132, 408, 273, 43, 77, 436, 409, 337, 184, 354, 59, 22, 269, 96, 315, 365, 433, 396, 408, 273, 416, 160, 447, 70, 170, 68, 61, 231, 342, 202, 398, 378, 399, 414, 284, 310, 263, 302, 55, 131, 443, 90, 75, 360, 321, 251, 79, 452, 373, 72, 268, 211, 310, 239, 158, 382, 127, 133, 142, 189, 417, 52, 319, 346, 124, 93, 188, 20, 86, 310, 239, 158, 159, 474, 109, 6, 58, 12, 424, 494, 91, 172, 73, 483, 103, 26, 310, 163, 43, 221, 137, 366, 475, 215, 330, 154, 439, 306, 191, 430, 368, 364, 380] + 57: [307, 438, 94, 60, 106, 18, 134, 78, 47, 474, 433, 248, 36, 455, 296, 32, 15, 307, 503, 35, 351, 348, 250, 58, 254, 337, 191, 297, 305, 318, 199, 99, 62, 436, 272, 303, 313, 439, 193, 100, 123, 325, 358, 236, 389, 114, 214, 321, 395, 374, 430, 301, 303, 35, 353, 96, 34, 326, 406, 386, 306, 150, 309, 59, 210, 245, 147, 82, 293, 56, 79, 410, 66, 501, 299, 103, 39, 68, 3, 81, 243, 497, 53, 80, 155, 21, 470, 421, 22, 477, 30, 175, 363, 404, 44, 132, 366, 475, 415, 111, 304, 292, 21, 238, 120, 253, 418, 270, 119, 109, 216, 311, 198, 330, 332, 291, 91, 40, 215, 21, 219, 120, 139, 195, 146, 278, 265, 413, 244, 176, 403, 172, 43, 505, 435, 464, 21, 508, 396, 233, 453, 28, 444, 83, 295, 355, 341, 182, 437, 392, 206, 12, 488, 21, 56, 228, 261, 350, 55, 479, 1, 192, 478, 349, 97, 427, 5, 308, 441, 167, 110, 27, 384, 224, 251, 486, 485, 231, 346, 331, 17, 263, 500, 23, 280, 450, 267, 110, 27, 384, 25, 269, 417, 343, 496, 375, 492, 98, 324, 170, 312, 19, 281, 217, 110, 131, 506, 454, 37, 125, 490, 445, 373, 502, 469, 336, 90, 124, 465, 204, 408, 110, 462, 396, 367, 87, 335, 156, 282, 71, 42, 340, 302, 126, 152, 67, 452, 227, 239, 428, 409, 426, 388, 329, 14, 279, 494, 315, 510, 258, 4, 101, 342, 339, 398, 239, 180, 506, 416, 277, 229, 183, 320, 165, 480, 285, 221, 467, 247, 368, 451, 357, 89, 428, 511, 507, 387, 347, 226, 168, 93, 289, 104, 405, 383, 64, 6, 38, 51, 487, 428, 108, 196, 203, 118, 207, 434, 266, 130, 401, 385, 393, 338, 213, 153, 372, 107, 397, 327, 328, 122, 268, 376, 284, 205, 154, 466, 46, 128, 48, 158, 11, 135, 107, 73, 85, 163, 334, 26, 166, 273, 13, 88, 102, 365, 448, 287, 359, 407, 456, 107, 49, 157, 509, 481, 381, 9, 232, 29, 425, 489, 187, 459, 460, 443, 274, 400, 63, 397, 382, 20, 189, 249, 316, 211, 142, 76, 356, 235, 61, 127, 24, 184, 162, 164, 397, 391, 429, 171, 200, 173, 0, 86, 246, 310, 2, 491, 495, 179, 449, 483, 237, 380, 121, 69, 446, 50, 377, 432, 262, 136, 10, 190, 424, 498, 399, 174, 390, 212, 140, 260, 133, 54, 145, 194, 52, 493, 185, 431, 422, 115, 255, 169, 288, 402, 371, 234, 160, 116, 138, 300, 447, 286, 178, 129, 473, 364, 16, 149, 201, 92, 72, 371, 234, 7, 57, 259, 75, 230, 225, 360, 319, 370, 379, 74, 241, 181, 113, 65, 419, 151, 257, 345, 117, 222, 242, 290, 361, 252, 148, 352, 283, 471, 144, 322, 159, 419, 151, 77, 442, 223, 276, 423, 294, 394, 314, 333, 197, 499, 112, 202, 240, 271, 419, 151, 45, 161, 298, 461, 209, 33, 458, 440, 105, 143, 218, 414, 354, 420, 31, 419, 378, 369, 264, 472, 317, 411, 177, 468, 137, 8, 344, 457, 275, 95, 186, 463, 419, 234, 482, 362, 484, 504, 412, 188, 208, 84, 41, 141, 256, 323, 70, 220, 476] + 58: [244, 488, 301, 262, 255, 352, 127, 276, 356, 165, 483, 176, 280, 394, 371, 288, 119, 26, 363, 307, 434, 117, 238, 421, 130, 108, 318, 474, 353, 417, 73, 185, 5, 395, 26, 363, 423, 458, 7, 110, 496, 472, 168, 36, 75, 296, 44, 331, 39, 89, 76, 26, 454, 17, 492, 460, 113, 161, 432, 406, 257, 269, 236, 93, 141, 64, 156, 87, 26, 237, 25, 214, 16, 169, 297, 192, 250, 246, 325, 358, 97, 343, 319, 61, 3, 400, 102, 135, 155, 282, 505, 403, 95, 131, 268, 430, 174, 125, 123, 486, 390, 357, 67, 354, 499, 480, 29, 41, 134, 190, 55, 473, 267, 201, 107, 290, 441, 33, 305, 217, 384, 424, 142, 503, 444, 274, 53, 510, 144, 72, 464, 100, 136, 500, 420, 121, 217, 384, 424, 439, 463, 300, 314, 422, 370, 195, 157, 179, 407, 346, 170, 228, 105, 217, 4, 46, 83, 180, 150, 372, 47, 151, 411, 465, 470, 338, 415, 154, 159, 28, 217, 309, 351, 122, 316, 479, 249, 235, 313, 266, 48, 326, 63, 194, 138, 431, 484, 217, 309, 273, 462, 58, 475, 103, 389, 98, 402, 409, 145, 508, 375, 383, 468, 270, 217, 365, 253, 30, 247, 366, 186, 336, 435, 222, 254, 11, 427, 99, 209, 382, 203, 502, 164, 81, 213, 205, 289, 13, 329, 324, 455, 368, 509, 79, 498, 40, 443, 22, 291, 146, 84, 80, 333, 308, 507, 342, 137, 182, 376, 412, 166, 419, 461, 234, 445, 291, 164, 299, 27, 140, 381, 15, 197, 321, 418, 491, 69, 385, 387, 328, 31, 54, 489, 388, 340, 239, 50, 294, 219, 337, 306, 133, 184, 303, 482, 112, 2, 120, 115, 489, 388, 96, 490, 413, 225, 24, 367, 391, 271, 20, 77, 428, 379, 477, 56, 362, 489, 433, 8, 495, 261, 310, 416, 132, 378, 139, 263, 223, 323, 91, 459, 181, 332, 489, 433, 279, 111, 114, 207, 162, 466, 71, 275, 425, 449, 189, 221, 347, 86, 233, 489, 433, 467, 45, 173, 377, 230, 469, 51, 374, 106, 440, 6, 177, 312, 38, 350, 489, 37, 481, 386, 215, 243, 212, 258, 43, 206, 193, 438, 82, 373, 124, 128, 216, 489, 146, 251, 278, 218, 148, 293, 404, 210, 330, 23, 52, 9, 348, 478, 298, 396, 199, 42, 149, 426, 398, 227, 450, 334, 364, 231, 32, 304, 65, 487, 457, 66, 369, 199, 42, 175, 272, 476, 287, 493, 204, 485, 202, 163, 322, 10, 21, 178, 317, 471, 199, 295, 405, 85, 92, 158, 49, 344, 1, 60, 62, 245, 118, 171, 224, 451, 320, 393, 42, 335, 0, 380, 448, 88, 59, 172, 408, 70, 226, 74, 511, 129, 359, 191, 211, 286, 401, 355, 68, 183, 94, 283, 265, 240, 341, 437, 14, 494, 200, 260, 160, 292, 392, 34, 35, 152, 399, 143, 452, 78, 167, 285, 456, 126, 242, 361, 497, 252, 284, 392, 101, 397, 116, 504, 188, 104, 12, 18, 19, 264, 436, 57, 349, 248, 501, 284, 392, 90, 241, 147, 429, 198, 447, 259, 339, 187, 232, 229, 220, 345, 506, 256, 446, 392, 281, 208, 360, 442, 410, 277, 109, 315, 414, 327, 453, 153, 311, 302, 196] + 59: [475, 226, 15, 453, 247, 354, 176, 474, 501, 295, 285, 400, 280, 422, 185, 432, 438, 475, 459, 123, 182, 169, 117, 431, 462, 74, 376, 170, 196, 94, 1, 79, 121, 88, 475, 356, 67, 416, 162, 496, 342, 126, 60, 277, 214, 20, 424, 211, 374, 349, 115, 475, 59, 220, 339, 335, 207, 505, 415, 318, 194, 188, 317, 429, 451, 92, 396, 90, 475, 233, 367, 405, 173, 141, 205, 441, 504, 264, 203, 447, 177, 334, 68, 273, 150, 475, 259, 283, 430, 222, 36, 348, 85, 256, 343, 116, 110, 31, 25, 136, 245, 427, 65, 6, 456, 337, 103, 366, 251, 9, 246, 380, 69, 206, 502, 347, 470, 167, 218, 65, 226, 482, 106, 16, 288, 91, 248, 199, 99, 57, 454, 53, 192, 467, 45, 33, 201, 491, 387, 437, 255, 84, 391, 362, 312, 353, 419, 239, 10, 341, 160, 28, 261, 2, 491, 323, 190, 294, 249, 4, 105, 472, 73, 138, 457, 300, 305, 179, 216, 492, 63, 442, 468, 328, 364, 426, 413, 55, 373, 381, 27, 471, 47, 448, 231, 49, 476, 63, 187, 254, 321, 286, 408, 119, 506, 358, 157, 292, 465, 164, 120, 322, 174, 481, 63, 46, 153, 409, 357, 360, 17, 511, 152, 392, 352, 184, 338, 399, 262, 143, 72, 63, 271, 346, 351, 257, 488, 149, 48, 443, 175, 359, 320, 401, 479, 19, 66, 0, 193, 383, 24, 104, 275, 433, 297, 12, 62, 325, 372, 213, 14, 308, 473, 445, 228, 35, 487, 219, 161, 30, 307, 148, 56, 296, 486, 134, 469, 266, 316, 43, 267, 232, 35, 487, 278, 418, 449, 490, 289, 377, 500, 101, 204, 38, 375, 93, 483, 423, 310, 480, 395, 80, 477, 365, 154, 102, 224, 315, 460, 241, 417, 319, 268, 208, 336, 485, 480, 58, 183, 463, 137, 402, 478, 393, 37, 209, 494, 139, 23, 155, 369, 384, 497, 480, 58, 183, 333, 87, 186, 61, 18, 234, 435, 140, 407, 210, 197, 436, 83, 144, 290, 395, 135, 81, 253, 8, 332, 238, 166, 5, 270, 146, 260, 32, 237, 118, 159, 71, 217, 131, 371, 361, 302, 26, 202, 215, 428, 345, 223, 279, 212, 200, 403, 242, 71, 394, 52, 304, 171, 412, 390, 78, 452, 97, 250, 21, 281, 230, 64, 299, 313, 71, 394, 40, 444, 439, 410, 414, 466, 440, 425, 282, 263, 109, 503, 111, 495, 142, 71, 395, 153, 450, 363, 34, 420, 180, 122, 291, 324, 411, 96, 455, 227, 484, 11, 98, 327, 42, 378, 284, 112, 147, 508, 77, 368, 128, 507, 221, 168, 311, 298, 355, 98, 327, 70, 22, 235, 75, 293, 100, 7, 379, 406, 113, 108, 382, 446, 499, 464, 129, 461, 303, 344, 434, 39, 243, 489, 258, 151, 29, 421, 326, 331, 191, 498, 156, 129, 461, 314, 132, 3, 114, 130, 272, 54, 301, 269, 389, 195, 158, 370, 509, 181, 129, 327, 44, 458, 510, 397, 86, 276, 163, 76, 240, 265, 252, 330, 287, 274, 13, 236, 236, 41, 50, 172, 386, 225, 198, 385, 309, 178, 165, 145, 388, 127, 244, 133, 236, 125, 306, 95, 340, 82, 51, 89, 329, 107, 350, 404, 189, 229, 398, 493, 124] + 60: [487, 410, 493, 256, 495, 210, 49, 382, 95, 68, 301, 275, 8, 22, 112, 407, 221, 439, 71, 388, 352, 450, 198, 511, 260, 268, 416, 343, 431, 324, 139, 132, 329, 91, 439, 508, 479, 209, 157, 274, 77, 190, 486, 56, 506, 360, 127, 203, 144, 224, 502, 237, 432, 365, 54, 219, 370, 327, 180, 179, 282, 334, 302, 243, 376, 372, 483, 150, 237, 71, 307, 24, 267, 79, 27, 292, 359, 311, 100, 109, 212, 63, 120, 211, 499, 395, 432, 445, 121, 347, 145, 38, 44, 233, 443, 195, 429, 98, 110, 303, 266, 2, 4, 265, 99, 181, 462, 26, 106, 453, 310, 182, 281, 14, 288, 214, 222, 430, 369, 4, 265, 456, 92, 202, 489, 272, 104, 225, 425, 304, 129, 90, 440, 192, 295, 325, 4, 184, 342, 363, 457, 171, 482, 118, 76, 451, 241, 107, 409, 393, 74, 452, 245, 4, 496, 448, 454, 33, 501, 485, 57, 434, 313, 380, 446, 468, 355, 385, 188, 13, 4, 60, 151, 331, 96, 498, 239, 41, 253, 389, 189, 165, 294, 28, 191, 308, 259, 4, 60, 448, 263, 34, 168, 156, 497, 264, 228, 169, 69, 466, 504, 269, 418, 153, 374, 426, 386, 257, 471, 459, 111, 248, 465, 319, 286, 323, 505, 415, 373, 305, 149, 374, 113, 80, 143, 420, 45, 490, 349, 438, 53, 162, 399, 208, 42, 480, 455, 50, 374, 113, 48, 252, 187, 123, 291, 166, 488, 163, 255, 167, 332, 406, 491, 357, 1, 374, 10, 29, 278, 356, 435, 473, 397, 464, 206, 108, 172, 223, 7, 449, 173, 428, 374, 93, 424, 131, 217, 47, 240, 258, 402, 103, 170, 23, 229, 218, 262, 134, 351, 374, 93, 116, 19, 276, 154, 146, 177, 59, 89, 289, 287, 354, 358, 230, 39, 296, 374, 93, 379, 299, 147, 18, 97, 509, 175, 340, 51, 194, 422, 193, 322, 101, 384, 374, 320, 317, 84, 392, 412, 318, 126, 62, 400, 164, 387, 326, 460, 231, 204, 0, 374, 320, 419, 481, 250, 31, 474, 142, 321, 467, 73, 475, 215, 226, 216, 40, 381, 72, 391, 128, 403, 463, 507, 232, 492, 476, 437, 421, 396, 122, 141, 5, 404, 16, 72, 426, 174, 284, 130, 88, 196, 401, 148, 298, 158, 333, 336, 119, 65, 32, 478, 234, 102, 15, 85, 377, 136, 201, 394, 353, 238, 350, 87, 235, 227, 316, 117, 242, 330, 344, 61, 205, 458, 469, 133, 236, 315, 37, 254, 185, 200, 285, 273, 500, 270, 330, 344, 280, 362, 405, 417, 261, 251, 207, 470, 58, 461, 55, 390, 159, 25, 337, 312, 279, 290, 152, 335, 447, 297, 345, 183, 78, 11, 427, 105, 375, 3, 21, 249, 312, 309, 477, 124, 484, 160, 140, 83, 361, 398, 271, 135, 494, 383, 414, 155, 70, 125, 279, 442, 199, 368, 423, 444, 339, 36, 6, 114, 433, 137, 247, 277, 82, 86, 64, 197, 115, 364, 138, 436, 176, 300, 17, 12, 367, 283, 186, 503, 67, 75, 20, 413, 413, 314, 338, 30, 346, 510, 81, 161, 328, 46, 35, 293, 441, 371, 341, 52, 413, 244, 178, 9, 66, 213, 378, 94, 408, 366, 220, 348, 43, 472, 306, 411, 246] + 61: [161, 402, 263, 367, 295, 415, 401, 130, 347, 491, 331, 474, 235, 462, 430, 288, 77, 161, 128, 84, 307, 192, 90, 236, 70, 122, 184, 314, 86, 287, 82, 68, 469, 148, 361, 215, 113, 421, 196, 157, 174, 486, 102, 446, 63, 274, 503, 299, 44, 393, 163, 139, 20, 378, 191, 199, 350, 240, 382, 259, 506, 25, 200, 366, 276, 511, 88, 59, 139, 40, 237, 31, 183, 293, 7, 26, 484, 219, 143, 318, 167, 104, 384, 233, 495, 139, 40, 152, 319, 398, 239, 0, 231, 304, 168, 403, 226, 35, 89, 8, 283, 4, 139, 83, 11, 202, 292, 133, 242, 101, 211, 380, 160, 109, 456, 103, 179, 249, 147, 139, 1, 30, 46, 208, 414, 96, 322, 234, 229, 225, 345, 339, 341, 32, 355, 315, 139, 1, 13, 50, 250, 164, 180, 388, 268, 185, 370, 364, 121, 434, 120, 41, 377, 139, 38, 140, 298, 373, 87, 258, 490, 336, 110, 146, 332, 2, 368, 436, 478, 51, 139, 323, 84, 405, 321, 129, 309, 182, 155, 14, 454, 442, 10, 475, 198, 272, 210, 290, 280, 73, 300, 209, 173, 326, 228, 69, 483, 43, 328, 385, 159, 275, 500, 374, 230, 340, 248, 452, 428, 310, 422, 329, 246, 15, 212, 256, 213, 306, 188, 375, 141, 230, 340, 95, 465, 404, 112, 489, 34, 439, 507, 85, 308, 260, 55, 153, 205, 492, 429, 343, 400, 136, 419, 418, 266, 71, 65, 124, 497, 3, 21, 394, 317, 432, 372, 464, 195, 114, 285, 433, 169, 223, 60, 28, 362, 142, 476, 357, 123, 466, 423, 501, 464, 195, 138, 303, 502, 294, 218, 75, 463, 91, 363, 376, 176, 277, 238, 301, 458, 464, 137, 9, 485, 78, 58, 94, 221, 106, 203, 93, 468, 135, 479, 508, 56, 346, 464, 137, 166, 48, 358, 437, 126, 154, 145, 115, 365, 441, 470, 189, 54, 359, 387, 464, 137, 338, 417, 186, 324, 281, 487, 431, 194, 255, 49, 62, 33, 313, 504, 399, 464, 416, 353, 29, 270, 187, 253, 190, 473, 214, 284, 17, 45, 125, 151, 425, 261, 464, 343, 371, 92, 335, 27, 22, 24, 144, 435, 354, 171, 232, 286, 257, 98, 379, 267, 39, 447, 496, 392, 494, 349, 222, 481, 453, 408, 64, 311, 216, 254, 450, 170, 36, 459, 66, 206, 53, 181, 100, 356, 391, 74, 440, 493, 251, 177, 6, 158, 217, 36, 459, 162, 411, 107, 413, 241, 406, 427, 510, 482, 327, 116, 52, 448, 396, 305, 36, 201, 16, 282, 117, 23, 47, 352, 333, 407, 273, 119, 499, 99, 438, 67, 477, 36, 201, 471, 334, 480, 108, 271, 131, 320, 426, 227, 19, 369, 455, 488, 18, 105, 36, 312, 61, 172, 175, 165, 386, 409, 224, 420, 150, 197, 389, 156, 410, 264, 297, 36, 344, 348, 390, 330, 337, 296, 278, 443, 245, 37, 449, 204, 291, 97, 289, 505, 36, 265, 80, 467, 279, 132, 360, 444, 381, 457, 12, 42, 395, 5, 72, 509, 412, 178, 459, 316, 111, 498, 325, 149, 262, 134, 57, 397, 76, 351, 342, 461, 247, 193, 269, 252, 460, 424, 445, 79, 81, 244, 118, 207, 243, 127, 302, 472, 451, 383, 220] + 62: [6, 276, 487, 273, 404, 156, 91, 103, 358, 340, 169, 44, 271, 312, 374, 448, 500, 150, 316, 453, 297, 386, 390, 85, 69, 326, 82, 185, 418, 323, 343, 202, 71, 148, 150, 276, 303, 106, 1, 166, 159, 450, 490, 252, 405, 10, 120, 128, 291, 37, 184, 452, 60, 210, 441, 269, 488, 372, 461, 469, 380, 75, 435, 83, 433, 141, 186, 296, 452, 60, 210, 359, 471, 329, 484, 62, 265, 394, 97, 440, 294, 460, 305, 215, 496, 130, 131, 79, 447, 468, 285, 12, 262, 360, 207, 190, 506, 301, 211, 2, 46, 298, 177, 346, 459, 339, 381, 242, 125, 505, 109, 322, 80, 266, 24, 23, 201, 249, 153, 434, 13, 426, 341, 504, 108, 417, 363, 84, 167, 66, 454, 239, 96, 272, 462, 350, 475, 402, 397, 446, 137, 421, 124, 509, 100, 225, 136, 489, 205, 497, 479, 28, 168, 475, 402, 501, 195, 221, 362, 63, 260, 8, 72, 410, 41, 152, 336, 415, 101, 98, 475, 25, 87, 189, 334, 200, 11, 424, 495, 198, 228, 286, 392, 508, 258, 384, 139, 475, 233, 422, 385, 111, 164, 95, 251, 17, 430, 321, 187, 175, 311, 302, 240, 138, 475, 142, 218, 437, 219, 68, 256, 151, 182, 235, 56, 253, 183, 409, 88, 118, 293, 475, 163, 444, 107, 208, 308, 463, 92, 237, 193, 483, 104, 319, 331, 173, 176, 299, 491, 81, 55, 364, 172, 89, 140, 263, 39, 245, 376, 264, 458, 204, 35, 423, 255, 491, 81, 366, 86, 419, 217, 135, 367, 416, 306, 199, 413, 192, 330, 370, 42, 455, 491, 395, 114, 196, 99, 333, 310, 368, 466, 248, 227, 115, 94, 442, 371, 377, 74, 491, 402, 236, 34, 473, 344, 396, 160, 383, 275, 482, 325, 465, 328, 214, 145, 126, 174, 244, 36, 213, 369, 267, 277, 110, 379, 112, 439, 357, 154, 354, 438, 78, 337, 174, 90, 129, 498, 300, 212, 356, 20, 170, 4, 247, 231, 194, 382, 21, 278, 478, 174, 90, 0, 246, 352, 197, 457, 61, 73, 180, 45, 229, 53, 250, 375, 351, 59, 174, 116, 7, 284, 283, 18, 320, 48, 327, 238, 443, 274, 52, 144, 289, 102, 14, 174, 232, 40, 414, 121, 373, 388, 476, 64, 398, 15, 188, 411, 510, 436, 355, 445, 378, 191, 230, 149, 332, 428, 38, 318, 290, 425, 348, 76, 427, 32, 243, 47, 280, 502, 324, 499, 393, 485, 481, 29, 309, 57, 54, 157, 314, 335, 407, 464, 307, 30, 502, 324, 477, 26, 494, 220, 432, 361, 470, 5, 127, 347, 349, 179, 408, 9, 155, 502, 191, 467, 27, 474, 338, 493, 241, 146, 472, 209, 480, 261, 162, 181, 399, 133, 456, 429, 226, 270, 51, 119, 50, 317, 93, 49, 161, 507, 315, 412, 31, 224, 70, 456, 429, 226, 449, 33, 22, 451, 353, 279, 295, 313, 65, 216, 486, 3, 389, 122, 456, 401, 477, 282, 105, 292, 43, 19, 431, 345, 365, 387, 281, 259, 132, 143, 287, 456, 324, 403, 492, 234, 223, 16, 203, 123, 178, 420, 165, 147, 77, 134, 117, 511, 503, 268, 342, 58, 304, 257, 171, 406, 158, 288, 391, 206, 254, 67, 222, 400, 113] + 63: [48, 209, 3, 175, 413, 273, 421, 225, 228, 482, 291, 304, 259, 327, 5, 204, 134, 48, 209, 131, 240, 332, 300, 293, 282, 137, 269, 370, 215, 397, 8, 214, 45, 68, 48, 358, 53, 492, 357, 126, 478, 71, 450, 303, 493, 96, 384, 390, 220, 113, 15, 334, 13, 161, 305, 54, 465, 92, 508, 81, 22, 193, 16, 275, 322, 246, 405, 69, 255, 418, 297, 106, 373, 31, 337, 226, 21, 147, 510, 501, 4, 24, 111, 222, 27, 255, 461, 366, 188, 88, 58, 386, 372, 365, 486, 187, 230, 394, 203, 18, 191, 417, 255, 217, 263, 79, 17, 427, 456, 177, 72, 318, 342, 343, 352, 218, 281, 290, 63, 255, 217, 42, 135, 347, 471, 356, 28, 242, 445, 393, 52, 163, 375, 410, 97, 67, 255, 423, 102, 363, 130, 380, 256, 396, 344, 472, 442, 271, 430, 500, 444, 10, 174, 255, 423, 326, 308, 7, 182, 336, 267, 345, 250, 178, 412, 129, 234, 199, 170, 195, 438, 160, 38, 245, 212, 200, 278, 43, 253, 122, 189, 252, 211, 158, 329, 202, 371, 438, 160, 328, 12, 114, 239, 231, 91, 505, 400, 261, 455, 432, 488, 474, 408, 151, 438, 418, 150, 481, 39, 80, 198, 431, 435, 376, 346, 473, 280, 490, 498, 32, 128, 127, 368, 184, 361, 497, 485, 437, 47, 173, 314, 34, 115, 457, 287, 489, 112, 426, 127, 59, 37, 208, 379, 219, 277, 183, 378, 142, 463, 325, 78, 186, 462, 494, 434, 127, 61, 411, 75, 353, 496, 264, 285, 398, 74, 429, 83, 94, 124, 139, 244, 270, 127, 470, 360, 29, 98, 316, 238, 440, 301, 140, 149, 483, 317, 223, 451, 36, 51, 127, 364, 110, 190, 210, 422, 171, 330, 121, 41, 506, 331, 409, 258, 268, 46, 369, 127, 145, 312, 339, 460, 362, 248, 349, 467, 103, 87, 168, 194, 367, 385, 166, 374, 127, 145, 387, 30, 156, 289, 348, 333, 476, 40, 118, 65, 502, 392, 383, 487, 448, 25, 439, 320, 192, 283, 416, 284, 359, 511, 403, 89, 420, 56, 14, 354, 66, 35, 25, 439, 311, 227, 221, 132, 237, 395, 179, 162, 62, 335, 181, 480, 288, 138, 453, 25, 439, 23, 101, 469, 44, 50, 247, 475, 99, 136, 466, 504, 495, 153, 76, 401, 164, 260, 436, 323, 20, 459, 310, 119, 167, 196, 341, 295, 77, 419, 57, 6, 479, 382, 260, 307, 499, 232, 381, 491, 144, 391, 73, 9, 276, 425, 146, 302, 133, 388, 213, 185, 292, 404, 2, 377, 107, 249, 49, 180, 266, 104, 313, 159, 279, 120, 19, 233, 100, 477, 351, 299, 95, 11, 350, 454, 321, 86, 172, 340, 84, 286, 306, 447, 338, 441, 105, 424, 152, 319, 154, 236, 274, 296, 272, 265, 148, 399, 117, 446, 109, 338, 116, 415, 60, 123, 0, 464, 407, 201, 324, 64, 458, 315, 82, 1, 176, 169, 338, 116, 157, 216, 262, 428, 235, 484, 433, 298, 251, 507, 254, 443, 143, 165, 155, 241, 241, 108, 355, 414, 141, 389, 229, 509, 224, 33, 70, 197, 452, 309, 26, 55, 241, 241, 406, 125, 294, 257, 90, 402, 503, 468, 93, 449, 205, 243, 85, 207, 206] + 64: [439, 77, 312, 79, 353, 173, 1, 2, 45, 95, 94, 340, 147, 459, 501, 404, 223, 439, 128, 207, 65, 503, 13, 400, 198, 354, 257, 374, 499, 384, 337, 255, 4, 254, 439, 108, 108, 293, 299, 6, 347, 66, 360, 72, 463, 211, 7, 402, 302, 189, 313, 121, 205, 187, 210, 8, 153, 495, 67, 268, 234, 385, 219, 165, 288, 107, 47, 314, 121, 205, 362, 489, 383, 419, 186, 279, 333, 17, 480, 365, 155, 81, 477, 216, 281, 121, 394, 169, 460, 485, 184, 148, 427, 213, 285, 132, 336, 159, 180, 265, 233, 297, 121, 77, 324, 202, 507, 30, 171, 351, 196, 414, 139, 329, 478, 120, 361, 214, 426, 286, 28, 468, 264, 471, 222, 137, 379, 317, 411, 168, 48, 364, 475, 506, 22, 42, 286, 44, 86, 259, 240, 296, 331, 256, 166, 145, 109, 220, 308, 300, 163, 140, 334, 117, 418, 238, 389, 399, 401, 105, 408, 469, 103, 143, 442, 498, 36, 451, 21, 191, 231, 52, 375, 32, 76, 217, 445, 441, 243, 366, 55, 344, 90, 357, 179, 327, 138, 231, 249, 182, 49, 29, 71, 23, 387, 270, 0, 410, 87, 306, 432, 272, 450, 235, 356, 392, 122, 367, 322, 62, 282, 487, 393, 289, 492, 397, 430, 504, 454, 378, 316, 356, 431, 206, 156, 141, 271, 236, 303, 315, 93, 486, 157, 348, 465, 284, 134, 208, 356, 431, 456, 493, 118, 215, 69, 472, 390, 70, 278, 433, 162, 335, 359, 280, 363, 356, 431, 133, 429, 382, 291, 144, 78, 82, 510, 61, 482, 304, 307, 40, 424, 413, 356, 115, 345, 425, 150, 338, 248, 100, 102, 245, 409, 343, 230, 68, 500, 417, 434, 356, 115, 373, 396, 371, 53, 224, 101, 273, 12, 287, 352, 225, 420, 11, 437, 267, 63, 19, 149, 151, 277, 99, 38, 320, 5, 350, 54, 194, 39, 123, 247, 34, 164, 63, 392, 301, 116, 447, 64, 310, 152, 176, 73, 33, 174, 25, 251, 505, 201, 131, 508, 183, 185, 3, 381, 57, 203, 126, 188, 339, 330, 488, 305, 461, 341, 319, 232, 466, 35, 97, 200, 88, 443, 158, 376, 170, 496, 481, 294, 388, 457, 154, 113, 467, 110, 380, 395, 369, 20, 37, 60, 199, 181, 377, 246, 342, 368, 161, 428, 14, 448, 110, 35, 175, 423, 16, 142, 274, 51, 349, 204, 253, 172, 228, 290, 229, 275, 124, 464, 83, 241, 295, 311, 114, 212, 50, 484, 318, 146, 104, 435, 328, 75, 10, 26, 464, 83, 332, 56, 453, 239, 129, 96, 421, 269, 470, 476, 473, 444, 111, 85, 106, 464, 46, 407, 438, 9, 449, 490, 125, 412, 263, 292, 27, 15, 415, 74, 112, 497, 464, 242, 372, 326, 391, 405, 41, 177, 346, 494, 98, 479, 298, 195, 458, 91, 511, 464, 242, 119, 455, 260, 452, 321, 130, 80, 167, 403, 358, 59, 218, 483, 370, 436, 464, 192, 24, 127, 135, 58, 386, 136, 193, 84, 276, 262, 509, 258, 197, 416, 31, 464, 192, 323, 261, 244, 252, 474, 237, 491, 92, 266, 160, 309, 355, 89, 18, 226, 446, 83, 178, 440, 209, 221, 283, 502, 43, 190, 462, 227, 250, 422, 325, 406, 398] + 65: [35, 8, 393, 37, 161, 220, 347, 204, 155, 140, 69, 151, 420, 309, 387, 148, 411, 35, 8, 94, 471, 163, 316, 417, 453, 361, 82, 188, 173, 436, 129, 419, 200, 319, 35, 318, 393, 415, 98, 17, 388, 376, 175, 38, 392, 363, 262, 249, 16, 284, 502, 457, 403, 278, 396, 273, 375, 323, 192, 389, 344, 272, 491, 258, 230, 360, 232, 254, 461, 108, 337, 282, 432, 113, 116, 194, 365, 367, 431, 397, 182, 296, 470, 235, 364, 44, 41, 337, 226, 156, 384, 315, 421, 377, 248, 306, 106, 80, 40, 127, 250, 351, 44, 108, 318, 460, 32, 139, 172, 43, 298, 256, 76, 11, 332, 214, 219, 18, 195, 297, 34, 340, 459, 408, 9, 422, 159, 336, 21, 395, 428, 15, 444, 238, 374, 117, 297, 241, 435, 500, 330, 317, 185, 115, 327, 10, 234, 120, 187, 299, 348, 145, 189, 297, 110, 285, 138, 434, 350, 66, 451, 133, 70, 503, 280, 102, 438, 462, 474, 501, 297, 12, 94, 382, 212, 236, 83, 71, 379, 290, 391, 346, 13, 287, 210, 231, 424, 297, 12, 342, 174, 199, 486, 489, 452, 114, 208, 25, 107, 302, 271, 213, 215, 228, 131, 28, 33, 334, 251, 495, 217, 328, 49, 478, 134, 20, 86, 51, 65, 205, 198, 68, 401, 52, 339, 313, 88, 305, 261, 426, 46, 87, 144, 85, 386, 243, 47, 78, 68, 28, 279, 370, 479, 410, 135, 42, 425, 244, 480, 207, 166, 124, 225, 97, 64, 92, 401, 394, 390, 130, 67, 203, 326, 55, 487, 22, 447, 58, 221, 255, 2, 104, 412, 181, 341, 308, 446, 427, 91, 57, 176, 229, 53, 270, 111, 300, 406, 269, 399, 72, 413, 123, 485, 405, 227, 473, 295, 77, 245, 61, 493, 3, 281, 505, 126, 109, 72, 23, 333, 7, 289, 307, 349, 223, 445, 509, 466, 356, 169, 407, 59, 105, 48, 136, 413, 449, 183, 154, 475, 224, 497, 440, 118, 283, 143, 398, 320, 54, 329, 291, 383, 506, 511, 233, 201, 96, 179, 331, 310, 464, 137, 211, 455, 510, 240, 246, 338, 383, 164, 458, 409, 99, 381, 45, 242, 488, 101, 171, 442, 14, 259, 1, 239, 416, 383, 164, 508, 260, 274, 27, 165, 168, 158, 84, 247, 402, 303, 197, 81, 418, 430, 383, 164, 369, 90, 304, 352, 354, 0, 56, 5, 122, 314, 353, 357, 216, 286, 125, 345, 190, 160, 385, 472, 277, 177, 253, 263, 157, 50, 141, 448, 19, 146, 121, 89, 345, 506, 36, 372, 482, 209, 378, 335, 191, 322, 196, 186, 404, 150, 400, 193, 6, 4, 75, 39, 312, 483, 206, 481, 162, 494, 31, 423, 73, 437, 268, 62, 167, 343, 180, 380, 266, 202, 178, 74, 79, 496, 484, 362, 142, 257, 492, 294, 359, 218, 311, 180, 380, 355, 149, 128, 463, 60, 267, 24, 373, 456, 371, 454, 499, 276, 170, 429, 180, 380, 288, 368, 275, 450, 358, 147, 441, 252, 26, 112, 465, 504, 30, 153, 443, 180, 476, 325, 467, 63, 265, 29, 237, 119, 324, 490, 414, 103, 293, 366, 321, 498, 100, 380, 184, 95, 132, 439, 477, 433, 469, 152, 468, 93, 301, 292, 507, 222, 264] + 66: [67, 264, 446, 312, 341, 169, 174, 43, 323, 209, 498, 452, 308, 115, 275, 225, 263, 67, 443, 401, 15, 82, 316, 237, 485, 73, 462, 114, 177, 313, 7, 394, 204, 420, 67, 443, 370, 461, 251, 105, 333, 27, 103, 332, 293, 218, 71, 304, 97, 377, 258, 67, 238, 372, 193, 176, 463, 45, 371, 396, 207, 384, 14, 223, 288, 445, 399, 317, 67, 339, 346, 279, 137, 285, 50, 398, 175, 183, 28, 282, 260, 419, 361, 411, 387, 67, 505, 435, 508, 234, 267, 273, 124, 408, 146, 392, 340, 324, 30, 481, 118, 228, 67, 224, 292, 432, 415, 205, 466, 58, 136, 173, 331, 356, 12, 106, 294, 192, 327, 416, 244, 241, 167, 201, 256, 491, 189, 120, 85, 349, 203, 460, 52, 358, 48, 47, 59, 464, 496, 179, 483, 407, 246, 367, 470, 122, 119, 439, 18, 344, 261, 330, 172, 59, 244, 190, 229, 291, 376, 39, 208, 6, 33, 298, 131, 13, 379, 199, 278, 38, 395, 477, 510, 242, 434, 87, 354, 501, 310, 191, 93, 482, 186, 378, 55, 507, 41, 170, 206, 320, 295, 448, 388, 322, 425, 239, 363, 385, 100, 51, 440, 431, 479, 389, 170, 143, 436, 162, 502, 410, 468, 433, 72, 135, 154, 423, 305, 54, 255, 478, 165, 170, 139, 221, 227, 76, 8, 393, 287, 104, 348, 144, 240, 249, 359, 369, 314, 4, 170, 152, 489, 321, 413, 185, 110, 311, 101, 486, 1, 98, 145, 214, 375, 86, 79, 170, 75, 402, 345, 62, 428, 480, 453, 226, 280, 289, 390, 130, 506, 307, 195, 319, 170, 477, 63, 178, 11, 158, 269, 503, 147, 447, 64, 355, 117, 153, 102, 210, 329, 357, 245, 430, 182, 160, 386, 467, 94, 277, 382, 17, 365, 337, 61, 418, 403, 123, 274, 245, 181, 0, 318, 488, 476, 40, 57, 157, 151, 161, 266, 83, 216, 213, 56, 90, 271, 400, 166, 96, 217, 301, 472, 290, 10, 44, 168, 352, 364, 281, 125, 26, 90, 271, 84, 89, 309, 426, 187, 149, 230, 487, 231, 140, 257, 484, 77, 494, 25, 90, 271, 194, 450, 156, 91, 164, 347, 283, 36, 469, 5, 438, 383, 427, 80, 335, 236, 163, 429, 21, 326, 381, 299, 306, 272, 421, 424, 155, 134, 159, 19, 66, 490, 236, 303, 276, 509, 441, 247, 250, 422, 300, 325, 9, 88, 107, 417, 268, 451, 455, 236, 262, 109, 409, 3, 211, 16, 373, 500, 254, 37, 22, 74, 31, 368, 46, 449, 236, 262, 437, 493, 35, 111, 442, 465, 353, 24, 2, 142, 328, 334, 511, 404, 232, 141, 374, 42, 126, 133, 200, 220, 297, 380, 116, 360, 171, 471, 342, 212, 70, 95, 141, 374, 248, 473, 23, 99, 362, 49, 108, 492, 444, 243, 458, 233, 20, 60, 113, 141, 374, 397, 188, 459, 456, 302, 495, 499, 198, 366, 391, 112, 412, 474, 284, 29, 141, 163, 81, 202, 34, 68, 350, 454, 259, 457, 69, 128, 219, 405, 336, 222, 148, 53, 374, 32, 121, 253, 235, 92, 315, 406, 65, 475, 265, 270, 150, 286, 197, 252, 343, 343, 127, 504, 180, 351, 78, 132, 138, 414, 497, 296, 184, 129, 215, 338, 196] + 67: [376, 254, 166, 141, 298, 7, 402, 443, 196, 181, 482, 123, 92, 160, 437, 485, 244, 46, 169, 255, 23, 363, 172, 341, 448, 30, 297, 398, 335, 144, 243, 211, 479, 161, 316, 143, 292, 220, 277, 368, 325, 25, 41, 264, 436, 503, 200, 299, 452, 351, 495, 411, 156, 114, 454, 82, 50, 303, 57, 474, 212, 486, 88, 282, 506, 400, 293, 236, 411, 44, 489, 104, 444, 173, 466, 68, 497, 37, 291, 258, 105, 288, 79, 409, 433, 233, 137, 131, 365, 195, 178, 312, 413, 275, 395, 76, 115, 449, 199, 372, 300, 348, 233, 352, 289, 29, 184, 162, 216, 128, 52, 106, 120, 286, 139, 116, 418, 407, 84, 233, 231, 421, 204, 127, 435, 42, 34, 218, 420, 261, 145, 317, 206, 305, 182, 56, 215, 374, 440, 71, 362, 10, 191, 276, 494, 103, 198, 510, 210, 349, 27, 268, 232, 215, 374, 343, 60, 327, 360, 248, 480, 135, 249, 451, 227, 294, 336, 337, 304, 342, 215, 246, 51, 323, 45, 502, 186, 347, 22, 490, 47, 49, 477, 126, 111, 426, 167, 215, 246, 48, 375, 75, 108, 159, 498, 133, 58, 168, 234, 180, 177, 505, 361, 387, 215, 132, 73, 252, 176, 226, 152, 463, 140, 367, 247, 64, 399, 442, 475, 460, 403, 215, 32, 109, 245, 331, 377, 171, 81, 386, 179, 290, 201, 359, 74, 113, 438, 165, 20, 18, 251, 53, 307, 225, 391, 321, 404, 439, 214, 381, 308, 410, 96, 117, 310, 20, 18, 428, 373, 235, 219, 110, 205, 40, 260, 62, 259, 262, 322, 149, 265, 271, 217, 301, 378, 263, 24, 163, 70, 309, 295, 508, 6, 468, 118, 412, 334, 17, 504, 217, 314, 221, 405, 136, 8, 328, 209, 224, 228, 315, 509, 396, 150, 55, 202, 318, 217, 314, 311, 5, 102, 2, 422, 357, 147, 320, 129, 472, 324, 43, 240, 31, 329, 217, 314, 194, 39, 370, 353, 423, 434, 455, 394, 483, 284, 239, 223, 326, 511, 13, 217, 90, 38, 28, 306, 397, 242, 148, 36, 278, 507, 384, 15, 447, 151, 462, 170, 217, 90, 35, 95, 93, 91, 9, 345, 3, 188, 332, 89, 270, 12, 146, 213, 266, 217, 90, 457, 478, 446, 390, 406, 197, 476, 441, 346, 469, 464, 465, 69, 364, 499, 481, 319, 86, 496, 130, 382, 501, 222, 190, 369, 237, 340, 63, 112, 383, 4, 356, 481, 319, 500, 470, 26, 272, 488, 283, 385, 101, 279, 134, 414, 33, 121, 473, 142, 481, 274, 0, 207, 66, 371, 1, 154, 155, 424, 61, 431, 453, 83, 175, 415, 80, 481, 274, 401, 98, 85, 492, 287, 273, 87, 350, 238, 153, 256, 445, 280, 257, 100, 481, 301, 119, 416, 21, 193, 430, 189, 281, 241, 192, 358, 269, 354, 267, 157, 425, 461, 54, 392, 125, 185, 458, 366, 450, 330, 187, 487, 344, 208, 65, 174, 302, 285, 14, 54, 333, 456, 419, 97, 138, 313, 253, 124, 94, 77, 107, 158, 183, 484, 72, 432, 203, 388, 493, 339, 164, 427, 338, 471, 230, 19, 491, 379, 250, 389, 467, 59, 203, 203, 393, 122, 67, 417, 11, 99, 408, 16, 229, 296, 355, 429, 78, 459, 380] + 68: [304, 281, 506, 206, 166, 317, 290, 38, 85, 462, 4, 170, 246, 288, 136, 255, 366, 304, 224, 124, 112, 50, 395, 12, 291, 409, 108, 69, 247, 195, 39, 265, 417, 494, 304, 510, 280, 380, 25, 416, 89, 235, 273, 193, 154, 443, 184, 444, 102, 30, 237, 304, 431, 455, 503, 324, 77, 320, 410, 351, 16, 491, 150, 286, 450, 400, 66, 471, 35, 332, 315, 428, 65, 421, 374, 353, 459, 230, 318, 487, 464, 243, 123, 340, 6, 35, 446, 139, 192, 197, 48, 384, 56, 100, 116, 359, 325, 76, 59, 363, 479, 399, 35, 196, 296, 343, 309, 481, 7, 174, 468, 33, 498, 441, 219, 335, 275, 188, 158, 35, 301, 227, 311, 355, 138, 148, 84, 358, 382, 279, 5, 440, 432, 505, 486, 234, 35, 386, 392, 152, 413, 394, 147, 460, 144, 447, 456, 24, 202, 282, 10, 461, 171, 489, 250, 42, 99, 101, 341, 168, 220, 172, 502, 181, 1, 391, 436, 9, 97, 495, 489, 215, 463, 251, 390, 352, 58, 411, 143, 342, 231, 277, 151, 285, 198, 408, 507, 489, 493, 0, 49, 203, 98, 389, 367, 173, 37, 260, 95, 137, 438, 218, 259, 210, 125, 149, 122, 427, 130, 387, 248, 252, 40, 245, 88, 300, 133, 371, 457, 17, 213, 329, 149, 57, 267, 448, 182, 369, 458, 403, 177, 488, 142, 370, 261, 258, 364, 80, 469, 376, 226, 497, 201, 189, 467, 156, 13, 47, 454, 302, 425, 434, 96, 424, 253, 469, 452, 55, 401, 92, 256, 232, 223, 106, 32, 46, 165, 433, 327, 347, 262, 405, 469, 161, 217, 36, 249, 205, 398, 504, 418, 435, 28, 414, 229, 22, 157, 407, 492, 469, 161, 404, 269, 183, 293, 140, 511, 93, 381, 26, 225, 179, 501, 79, 211, 423, 437, 31, 478, 439, 303, 14, 44, 356, 429, 339, 490, 119, 104, 72, 310, 120, 420, 437, 31, 117, 326, 321, 134, 383, 453, 160, 337, 62, 194, 75, 51, 372, 190, 334, 437, 167, 336, 466, 110, 344, 244, 240, 159, 222, 451, 396, 212, 135, 508, 67, 83, 437, 426, 379, 297, 63, 278, 361, 43, 169, 402, 129, 207, 292, 18, 338, 53, 483, 437, 426, 186, 345, 419, 333, 242, 378, 21, 164, 422, 27, 430, 81, 472, 445, 105, 216, 31, 180, 350, 163, 330, 82, 2, 480, 415, 228, 264, 191, 496, 312, 90, 377, 199, 185, 209, 29, 313, 271, 15, 61, 153, 178, 509, 393, 314, 499, 349, 34, 308, 199, 185, 482, 272, 274, 23, 111, 476, 45, 113, 20, 362, 126, 500, 331, 484, 70, 199, 185, 114, 162, 128, 306, 257, 78, 305, 176, 11, 121, 52, 348, 470, 346, 145, 199, 185, 200, 270, 385, 118, 283, 368, 316, 406, 354, 397, 322, 103, 91, 204, 266, 199, 3, 155, 284, 307, 131, 115, 146, 473, 299, 64, 294, 74, 71, 86, 323, 132, 199, 3, 60, 241, 375, 41, 236, 477, 54, 373, 187, 107, 175, 239, 268, 221, 442, 73, 185, 276, 68, 141, 365, 263, 360, 254, 8, 233, 465, 319, 127, 109, 485, 19, 287, 185, 298, 238, 388, 449, 214, 475, 289, 412, 357, 208, 87, 94, 474, 328, 295] + 69: [43, 97, 373, 281, 263, 434, 346, 411, 414, 202, 30, 328, 390, 32, 89, 399, 510, 48, 142, 203, 170, 392, 368, 494, 403, 91, 111, 20, 325, 195, 291, 444, 25, 356, 88, 153, 250, 266, 121, 210, 361, 336, 265, 378, 45, 151, 90, 222, 330, 428, 432, 88, 465, 505, 435, 218, 162, 262, 190, 369, 332, 4, 501, 287, 207, 410, 171, 477, 88, 465, 8, 137, 398, 246, 247, 230, 233, 364, 447, 274, 74, 135, 272, 286, 209, 88, 462, 256, 459, 144, 98, 61, 485, 425, 479, 295, 339, 60, 67, 83, 101, 254, 441, 35, 189, 76, 138, 359, 337, 483, 240, 277, 308, 486, 109, 264, 47, 103, 116, 7, 374, 125, 300, 423, 421, 118, 506, 108, 445, 311, 491, 436, 318, 225, 321, 420, 7, 35, 188, 290, 381, 105, 504, 181, 212, 241, 341, 114, 65, 417, 508, 18, 102, 275, 22, 371, 313, 136, 345, 449, 72, 126, 255, 1, 511, 113, 176, 124, 426, 455, 275, 128, 340, 27, 177, 433, 123, 243, 429, 54, 476, 469, 185, 460, 270, 396, 120, 275, 140, 155, 12, 106, 117, 314, 146, 131, 348, 166, 280, 497, 490, 234, 394, 154, 275, 140, 430, 323, 279, 94, 498, 172, 93, 238, 344, 87, 458, 219, 351, 400, 148, 275, 443, 412, 382, 63, 132, 200, 366, 51, 50, 179, 375, 304, 424, 306, 473, 129, 275, 374, 342, 16, 223, 454, 55, 283, 387, 500, 13, 175, 19, 464, 472, 431, 297, 5, 213, 377, 201, 122, 370, 36, 315, 467, 100, 33, 220, 6, 307, 161, 221, 64, 5, 385, 96, 427, 82, 261, 389, 329, 360, 259, 59, 143, 350, 418, 349, 450, 21, 395, 357, 156, 448, 466, 489, 288, 260, 236, 405, 194, 451, 353, 468, 362, 58, 474, 192, 492, 152, 278, 227, 493, 127, 453, 86, 419, 282, 480, 224, 402, 167, 174, 34, 192, 357, 104, 73, 159, 193, 509, 285, 415, 215, 487, 31, 367, 15, 198, 53, 384, 192, 357, 276, 358, 180, 372, 298, 52, 355, 164, 249, 335, 75, 235, 68, 196, 186, 184, 319, 408, 49, 333, 163, 66, 271, 326, 79, 452, 496, 115, 2, 204, 437, 205, 184, 319, 211, 165, 299, 26, 343, 245, 81, 354, 292, 347, 484, 11, 495, 28, 46, 184, 319, 331, 182, 440, 141, 457, 391, 334, 413, 380, 197, 231, 77, 257, 388, 112, 157, 320, 296, 214, 71, 269, 169, 352, 242, 439, 273, 56, 39, 312, 324, 327, 470, 157, 319, 502, 84, 173, 258, 134, 0, 217, 401, 239, 228, 438, 41, 42, 267, 482, 80, 183, 309, 139, 160, 70, 24, 446, 406, 475, 488, 78, 85, 119, 422, 208, 38, 80, 183, 463, 289, 409, 232, 293, 251, 158, 187, 301, 499, 268, 107, 305, 44, 40, 80, 320, 237, 69, 252, 130, 338, 393, 316, 253, 178, 379, 363, 383, 14, 416, 456, 150, 150, 29, 133, 322, 294, 95, 376, 481, 110, 310, 216, 442, 404, 229, 303, 503, 150, 150, 248, 302, 226, 145, 191, 168, 149, 37, 199, 471, 206, 284, 3, 17, 10, 150, 23, 365, 99, 397, 461, 386, 244, 62, 407, 507, 92, 9, 57, 478, 147, 317] + 70: [337, 170, 432, 367, 511, 161, 178, 347, 472, 478, 89, 211, 306, 210, 283, 300, 208, 237, 343, 253, 363, 94, 495, 486, 241, 221, 291, 162, 107, 36, 469, 247, 323, 218, 132, 288, 445, 459, 87, 491, 353, 378, 169, 193, 97, 467, 235, 499, 265, 272, 32, 234, 460, 56, 395, 50, 448, 474, 27, 498, 39, 248, 8, 158, 148, 188, 509, 475, 234, 460, 115, 298, 151, 223, 279, 83, 149, 58, 360, 240, 129, 362, 150, 192, 369, 234, 312, 171, 361, 14, 217, 314, 338, 145, 179, 109, 466, 180, 160, 41, 25, 284, 234, 333, 354, 320, 131, 67, 93, 299, 449, 86, 222, 270, 430, 377, 409, 327, 79, 234, 333, 166, 209, 492, 457, 418, 191, 252, 427, 342, 399, 281, 296, 485, 43, 6, 234, 292, 356, 30, 101, 325, 341, 488, 462, 165, 278, 90, 376, 139, 385, 421, 262, 234, 10, 344, 368, 147, 40, 267, 196, 19, 422, 65, 54, 213, 401, 373, 15, 355, 205, 446, 277, 112, 322, 396, 118, 407, 286, 255, 390, 21, 33, 28, 38, 387, 154, 205, 311, 370, 510, 156, 496, 108, 26, 349, 16, 461, 408, 259, 273, 117, 60, 135, 205, 311, 260, 371, 428, 82, 339, 246, 493, 439, 100, 451, 501, 102, 318, 22, 106, 121, 72, 220, 128, 110, 441, 365, 411, 230, 35, 285, 282, 69, 302, 406, 47, 63, 121, 202, 214, 197, 476, 372, 308, 114, 189, 164, 174, 84, 328, 307, 81, 125, 224, 121, 202, 4, 194, 410, 412, 140, 113, 289, 185, 77, 420, 434, 274, 463, 137, 105, 366, 468, 435, 394, 388, 346, 502, 52, 257, 99, 431, 477, 500, 64, 159, 375, 392, 366, 468, 297, 345, 136, 321, 66, 71, 473, 201, 275, 271, 88, 233, 326, 61, 78, 366, 468, 37, 487, 167, 505, 55, 357, 479, 138, 76, 31, 17, 116, 183, 142, 359, 366, 236, 204, 216, 470, 75, 175, 433, 3, 98, 228, 503, 13, 266, 450, 231, 34, 366, 236, 20, 144, 425, 482, 57, 379, 2, 471, 226, 243, 103, 336, 351, 276, 46, 366, 352, 304, 393, 195, 340, 225, 232, 305, 494, 261, 423, 182, 436, 146, 309, 358, 294, 417, 400, 364, 12, 335, 70, 386, 334, 122, 203, 506, 508, 130, 176, 157, 186, 45, 465, 74, 456, 92, 242, 452, 152, 415, 403, 447, 331, 490, 229, 215, 42, 315, 280, 419, 380, 316, 62, 391, 190, 245, 126, 153, 381, 155, 5, 0, 374, 111, 426, 280, 465, 173, 133, 219, 91, 227, 168, 319, 206, 507, 398, 301, 184, 383, 504, 80, 280, 465, 484, 51, 239, 244, 11, 73, 382, 264, 397, 59, 29, 44, 127, 389, 48, 181, 18, 481, 497, 458, 424, 268, 444, 251, 489, 95, 293, 413, 1, 313, 290, 350, 181, 53, 212, 330, 438, 254, 163, 416, 442, 23, 68, 96, 104, 384, 402, 287, 317, 24, 18, 9, 303, 134, 324, 177, 207, 7, 200, 332, 455, 454, 258, 429, 198, 480, 24, 18, 250, 329, 295, 199, 256, 269, 49, 238, 141, 404, 453, 310, 85, 263, 119, 24, 18, 143, 437, 172, 120, 483, 414, 348, 440, 443, 123, 187, 405, 124, 249, 464] + 71: [221, 50, 368, 121, 333, 190, 433, 421, 163, 459, 77, 41, 507, 503, 346, 420, 8, 221, 55, 233, 322, 272, 237, 215, 99, 193, 360, 398, 470, 256, 287, 344, 115, 321, 221, 136, 331, 18, 262, 409, 38, 449, 96, 230, 98, 27, 299, 462, 489, 490, 257, 221, 304, 384, 44, 339, 474, 389, 506, 370, 78, 317, 183, 486, 161, 283, 225, 73, 114, 246, 410, 288, 332, 411, 485, 343, 160, 3, 294, 450, 195, 482, 167, 238, 178, 422, 117, 293, 382, 492, 348, 431, 427, 418, 17, 49, 273, 216, 240, 24, 223, 54, 244, 47, 33, 159, 505, 218, 253, 48, 107, 157, 42, 400, 363, 152, 22, 249, 201, 244, 475, 158, 175, 394, 446, 439, 318, 330, 79, 207, 23, 425, 200, 192, 495, 203, 432, 11, 319, 308, 328, 139, 2, 133, 125, 112, 259, 429, 147, 130, 26, 106, 155, 432, 326, 303, 342, 171, 366, 13, 72, 124, 349, 269, 488, 491, 245, 7, 132, 64, 471, 282, 442, 35, 305, 302, 314, 146, 316, 323, 353, 140, 198, 460, 483, 179, 284, 471, 11, 381, 247, 390, 39, 0, 4, 156, 209, 361, 176, 424, 87, 227, 473, 498, 310, 142, 387, 36, 254, 100, 375, 437, 251, 452, 213, 16, 397, 90, 119, 82, 275, 182, 271, 358, 300, 71, 347, 298, 208, 102, 338, 92, 325, 211, 14, 83, 324, 511, 182, 128, 476, 10, 66, 205, 250, 278, 268, 403, 186, 202, 417, 53, 306, 379, 150, 182, 128, 181, 111, 448, 290, 168, 191, 274, 467, 214, 392, 477, 480, 126, 89, 377, 197, 465, 234, 487, 187, 141, 435, 385, 19, 219, 335, 463, 466, 243, 166, 28, 229, 57, 327, 252, 210, 481, 352, 5, 440, 180, 235, 129, 91, 499, 56, 118, 104, 61, 57, 447, 329, 285, 345, 170, 226, 372, 457, 291, 169, 58, 493, 356, 241, 194, 174, 57, 465, 258, 228, 364, 37, 510, 500, 86, 267, 188, 340, 412, 423, 172, 149, 469, 320, 456, 296, 260, 393, 399, 292, 315, 29, 123, 307, 371, 95, 32, 334, 369, 196, 320, 456, 404, 359, 337, 313, 148, 20, 365, 479, 31, 464, 444, 438, 120, 131, 164, 320, 327, 145, 386, 135, 354, 43, 388, 232, 509, 116, 110, 84, 301, 341, 255, 261, 320, 327, 396, 451, 81, 286, 367, 30, 248, 414, 127, 74, 45, 80, 374, 357, 445, 311, 277, 494, 206, 242, 9, 413, 109, 212, 162, 69, 484, 6, 63, 85, 59, 453, 311, 277, 407, 416, 436, 383, 236, 336, 502, 105, 402, 51, 497, 312, 239, 380, 458, 311, 277, 113, 441, 405, 65, 426, 508, 264, 408, 204, 434, 151, 504, 281, 350, 1, 311, 199, 76, 60, 108, 88, 103, 134, 75, 263, 165, 189, 430, 25, 220, 478, 184, 311, 199, 265, 122, 62, 94, 454, 40, 15, 280, 391, 373, 419, 455, 177, 173, 351, 311, 199, 70, 46, 67, 289, 222, 443, 154, 101, 406, 270, 52, 355, 185, 144, 97, 311, 456, 297, 309, 395, 217, 276, 496, 401, 472, 21, 231, 376, 93, 68, 153, 143, 277, 277, 362, 428, 501, 279, 138, 12, 415, 461, 137, 224, 468, 34, 266, 295, 378] + 72: [6, 116, 368, 502, 105, 299, 357, 157, 222, 197, 66, 314, 293, 112, 346, 271, 295, 436, 176, 62, 370, 22, 429, 232, 509, 107, 443, 404, 377, 142, 139, 300, 327, 81, 436, 148, 221, 179, 178, 90, 196, 317, 355, 38, 136, 114, 155, 494, 230, 220, 177, 436, 148, 181, 144, 108, 354, 407, 343, 257, 151, 298, 269, 251, 499, 434, 431, 312, 33, 331, 399, 207, 227, 474, 283, 98, 118, 455, 267, 244, 339, 169, 195, 413, 70, 33, 99, 204, 71, 35, 308, 43, 483, 282, 138, 465, 19, 315, 350, 78, 226, 121, 33, 99, 329, 375, 473, 384, 137, 247, 83, 89, 448, 479, 225, 360, 492, 391, 284, 33, 34, 140, 322, 32, 26, 330, 484, 235, 133, 452, 393, 191, 74, 281, 23, 277, 33, 176, 345, 209, 189, 68, 442, 288, 214, 156, 103, 162, 349, 471, 373, 188, 303, 201, 57, 490, 27, 255, 134, 394, 164, 369, 256, 458, 371, 285, 146, 93, 361, 91, 238, 362, 85, 219, 403, 208, 167, 119, 36, 0, 334, 141, 389, 411, 104, 313, 109, 238, 7, 305, 335, 417, 301, 106, 359, 489, 233, 342, 217, 459, 485, 409, 13, 248, 321, 292, 254, 454, 198, 323, 265, 52, 145, 180, 192, 29, 463, 276, 42, 453, 47, 321, 435, 73, 395, 261, 58, 154, 481, 496, 493, 410, 172, 44, 498, 306, 287, 449, 321, 435, 67, 445, 236, 80, 63, 223, 173, 428, 262, 444, 218, 338, 316, 229, 97, 321, 364, 185, 126, 130, 76, 69, 170, 387, 347, 96, 351, 117, 200, 9, 8, 430, 321, 364, 401, 213, 398, 366, 242, 433, 193, 49, 72, 234, 400, 491, 307, 460, 477, 321, 54, 158, 506, 348, 231, 437, 274, 461, 143, 495, 5, 102, 294, 358, 263, 65, 321, 362, 258, 123, 95, 182, 297, 291, 211, 48, 224, 390, 228, 110, 94, 194, 165, 333, 129, 487, 203, 199, 325, 241, 39, 212, 21, 337, 446, 352, 184, 86, 41, 353, 333, 292, 372, 397, 470, 419, 457, 396, 280, 205, 46, 206, 332, 440, 356, 476, 424, 309, 129, 318, 270, 488, 152, 15, 427, 259, 388, 127, 174, 60, 30, 439, 275, 441, 163, 450, 367, 510, 18, 168, 17, 59, 40, 153, 421, 344, 132, 125, 237, 1, 87, 383, 503, 422, 402, 406, 279, 328, 415, 378, 82, 11, 504, 101, 75, 166, 290, 464, 383, 503, 405, 451, 128, 260, 115, 511, 505, 414, 374, 497, 380, 264, 16, 12, 135, 383, 450, 372, 341, 432, 10, 147, 508, 336, 92, 486, 245, 438, 55, 31, 124, 425, 20, 319, 480, 426, 50, 416, 278, 376, 467, 3, 365, 4, 24, 447, 386, 320, 56, 501, 249, 246, 111, 53, 215, 88, 149, 381, 51, 273, 210, 61, 171, 25, 28, 77, 501, 319, 408, 310, 507, 382, 286, 2, 253, 423, 239, 466, 159, 37, 296, 120, 475, 14, 324, 363, 175, 272, 385, 45, 84, 100, 183, 240, 462, 304, 243, 161, 340, 252, 412, 266, 363, 469, 478, 122, 472, 268, 418, 468, 202, 113, 289, 160, 326, 482, 311, 190, 266, 116, 250, 186, 500, 302, 456, 79, 131, 379, 187, 64, 216, 150, 392, 420] + 73: [240, 418, 222, 103, 177, 273, 361, 162, 309, 289, 139, 423, 424, 312, 400, 305, 431, 240, 178, 10, 493, 0, 36, 368, 327, 152, 471, 489, 480, 193, 87, 372, 92, 403, 240, 164, 381, 433, 127, 328, 84, 413, 410, 89, 277, 238, 454, 45, 158, 437, 116, 500, 468, 34, 52, 282, 508, 259, 323, 330, 20, 479, 298, 448, 168, 444, 42, 401, 500, 478, 355, 457, 379, 474, 455, 140, 71, 442, 496, 56, 398, 350, 54, 137, 362, 200, 43, 32, 490, 149, 109, 183, 499, 405, 306, 221, 367, 393, 114, 451, 213, 83, 200, 345, 182, 85, 69, 205, 163, 371, 64, 466, 465, 399, 264, 175, 340, 458, 329, 200, 345, 270, 336, 412, 375, 227, 476, 153, 248, 252, 373, 196, 258, 360, 48, 94, 200, 332, 189, 495, 498, 23, 409, 280, 120, 441, 377, 313, 268, 494, 408, 271, 487, 459, 185, 176, 242, 261, 24, 461, 190, 66, 505, 294, 226, 417, 469, 228, 173, 130, 366, 279, 353, 438, 62, 207, 187, 209, 247, 161, 129, 394, 19, 146, 267, 199, 299, 366, 279, 26, 60, 156, 195, 70, 223, 233, 432, 434, 124, 467, 421, 428, 148, 25, 366, 157, 118, 357, 123, 217, 108, 317, 250, 98, 122, 506, 427, 334, 472, 229, 170, 366, 504, 324, 396, 76, 335, 46, 17, 246, 115, 307, 397, 191, 263, 453, 117, 296, 439, 41, 63, 101, 188, 39, 96, 142, 302, 283, 180, 262, 420, 210, 369, 388, 86, 439, 41, 212, 234, 402, 113, 475, 297, 380, 435, 349, 232, 2, 404, 47, 128, 278, 390, 411, 251, 290, 67, 429, 239, 292, 208, 132, 348, 155, 293, 49, 374, 231, 79, 390, 411, 107, 82, 484, 243, 235, 440, 198, 61, 497, 37, 105, 346, 382, 21, 194, 390, 58, 35, 33, 22, 78, 15, 220, 300, 389, 342, 219, 4, 59, 463, 255, 126, 390, 58, 356, 181, 445, 28, 473, 443, 509, 7, 507, 253, 352, 318, 414, 301, 325, 390, 77, 99, 274, 385, 488, 511, 416, 65, 254, 160, 81, 464, 88, 351, 295, 430, 390, 77, 51, 265, 74, 470, 281, 266, 225, 486, 333, 31, 8, 3, 503, 322, 456, 192, 354, 171, 112, 167, 447, 485, 154, 215, 310, 169, 73, 365, 343, 201, 72, 384, 192, 411, 358, 426, 145, 75, 104, 29, 184, 143, 53, 450, 363, 491, 320, 347, 12, 197, 338, 214, 337, 501, 269, 38, 287, 319, 391, 100, 230, 165, 150, 1, 6, 314, 197, 13, 50, 166, 102, 95, 304, 174, 315, 284, 134, 121, 303, 272, 216, 422, 44, 197, 354, 460, 204, 344, 68, 311, 245, 275, 40, 135, 131, 172, 407, 364, 286, 257, 197, 354, 27, 144, 406, 80, 111, 395, 477, 502, 202, 119, 136, 106, 5, 481, 93, 138, 291, 321, 370, 57, 218, 462, 383, 186, 436, 483, 236, 492, 331, 125, 14, 90, 138, 291, 446, 211, 276, 387, 249, 288, 510, 326, 378, 425, 206, 244, 449, 141, 55, 256, 256, 419, 241, 203, 159, 359, 133, 392, 91, 482, 179, 18, 97, 30, 237, 260, 256, 386, 16, 147, 341, 452, 308, 151, 415, 339, 11, 285, 376, 9, 316, 110, 224] + 74: [194, 312, 353, 482, 338, 149, 331, 457, 323, 502, 469, 255, 359, 306, 234, 168, 447, 148, 319, 75, 510, 86, 12, 358, 468, 120, 500, 308, 37, 33, 182, 133, 391, 395, 148, 319, 31, 479, 340, 113, 17, 94, 84, 10, 4, 103, 300, 157, 326, 420, 476, 148, 336, 448, 464, 119, 511, 484, 5, 76, 378, 424, 213, 28, 486, 132, 225, 53, 148, 256, 57, 314, 508, 20, 199, 440, 15, 402, 270, 62, 190, 189, 25, 324, 264, 148, 256, 48, 286, 258, 364, 151, 433, 16, 257, 210, 466, 303, 143, 82, 245, 109, 425, 298, 470, 117, 26, 386, 467, 195, 495, 363, 499, 91, 235, 251, 410, 56, 129, 425, 29, 11, 432, 175, 283, 158, 177, 480, 356, 287, 27, 327, 290, 498, 339, 460, 487, 329, 206, 441, 379, 88, 309, 101, 431, 139, 421, 409, 7, 429, 19, 100, 335, 487, 329, 35, 252, 23, 504, 126, 382, 442, 260, 435, 274, 281, 473, 371, 185, 167, 153, 477, 191, 136, 297, 138, 43, 294, 174, 351, 380, 384, 472, 65, 92, 208, 396, 153, 477, 437, 304, 238, 368, 89, 137, 228, 406, 411, 224, 322, 278, 115, 128, 219, 398, 102, 186, 263, 108, 236, 362, 307, 318, 444, 374, 123, 292, 226, 373, 205, 38, 398, 311, 438, 2, 233, 154, 130, 222, 216, 416, 135, 295, 399, 230, 1, 337, 357, 398, 388, 193, 39, 21, 302, 325, 389, 51, 506, 426, 69, 184, 198, 196, 44, 383, 398, 141, 392, 422, 456, 162, 112, 269, 118, 241, 202, 404, 505, 366, 397, 140, 55, 398, 105, 474, 114, 64, 8, 147, 490, 156, 203, 42, 61, 60, 342, 79, 122, 462, 398, 85, 489, 276, 412, 72, 59, 475, 450, 415, 209, 211, 152, 232, 261, 265, 299, 279, 41, 237, 32, 13, 217, 87, 124, 483, 376, 78, 288, 77, 163, 458, 465, 121, 279, 41, 220, 430, 459, 401, 497, 34, 491, 478, 253, 249, 47, 282, 188, 227, 328, 279, 348, 273, 301, 3, 321, 408, 106, 96, 173, 446, 134, 407, 40, 289, 419, 453, 279, 361, 178, 445, 418, 74, 370, 390, 49, 46, 18, 492, 131, 98, 170, 246, 501, 279, 293, 14, 116, 305, 166, 110, 423, 349, 58, 320, 332, 104, 248, 428, 266, 414, 279, 291, 254, 463, 403, 95, 36, 204, 496, 367, 171, 111, 165, 507, 268, 142, 310, 313, 223, 207, 360, 381, 481, 176, 315, 179, 317, 385, 93, 221, 250, 164, 161, 334, 313, 223, 9, 387, 214, 63, 73, 452, 316, 243, 449, 197, 54, 443, 81, 330, 277, 313, 223, 343, 215, 503, 275, 369, 355, 70, 488, 6, 99, 285, 83, 454, 97, 155, 313, 41, 242, 187, 150, 267, 45, 144, 372, 345, 229, 212, 439, 262, 280, 24, 71, 493, 461, 68, 125, 192, 66, 375, 350, 181, 80, 172, 509, 240, 451, 90, 352, 50, 244, 461, 377, 436, 400, 180, 160, 393, 485, 239, 354, 30, 107, 272, 127, 347, 200, 471, 461, 169, 413, 201, 434, 394, 145, 427, 0, 52, 67, 231, 218, 259, 494, 455, 471, 461, 365, 22, 333, 271, 346, 405, 247, 146, 344, 284, 159, 341, 417, 296, 183] + 75: [497, 90, 181, 236, 15, 51, 509, 400, 321, 107, 346, 287, 25, 471, 136, 430, 277, 378, 333, 224, 486, 121, 109, 188, 135, 385, 34, 250, 299, 100, 139, 412, 172, 110, 378, 242, 459, 409, 415, 237, 30, 238, 386, 80, 314, 131, 364, 458, 76, 247, 273, 284, 333, 165, 32, 118, 309, 251, 18, 182, 338, 302, 289, 22, 320, 84, 274, 452, 137, 152, 475, 360, 61, 354, 421, 345, 431, 437, 323, 322, 171, 113, 427, 399, 390, 477, 317, 222, 175, 14, 414, 93, 94, 218, 41, 225, 392, 300, 367, 405, 341, 140, 72, 507, 59, 482, 39, 337, 490, 283, 435, 111, 504, 384, 454, 408, 480, 161, 214, 83, 507, 459, 126, 124, 508, 23, 373, 461, 128, 35, 363, 95, 213, 106, 129, 267, 377, 195, 470, 58, 53, 371, 67, 466, 159, 388, 404, 372, 5, 37, 308, 114, 449, 377, 195, 211, 425, 505, 155, 196, 64, 451, 198, 47, 379, 230, 77, 210, 330, 200, 377, 19, 185, 410, 365, 65, 402, 319, 324, 356, 446, 179, 104, 422, 187, 456, 2, 48, 249, 68, 192, 500, 6, 207, 450, 164, 417, 488, 433, 150, 97, 281, 138, 223, 28, 498, 185, 177, 298, 156, 36, 99, 293, 167, 133, 375, 120, 394, 75, 96, 313, 28, 249, 181, 336, 184, 280, 26, 92, 347, 255, 307, 318, 416, 3, 370, 220, 243, 43, 264, 202, 268, 148, 86, 147, 329, 395, 510, 443, 20, 325, 127, 348, 87, 170, 43, 264, 168, 304, 292, 4, 423, 401, 440, 334, 432, 116, 266, 191, 79, 55, 291, 43, 157, 499, 234, 144, 262, 197, 221, 252, 463, 163, 391, 46, 382, 332, 434, 103, 43, 498, 90, 44, 295, 269, 406, 204, 424, 444, 403, 501, 381, 502, 254, 119, 353, 209, 240, 489, 495, 474, 52, 70, 33, 233, 272, 231, 492, 296, 297, 485, 11, 173, 209, 264, 101, 8, 493, 270, 361, 487, 366, 357, 380, 216, 473, 232, 91, 12, 82, 71, 132, 259, 455, 54, 478, 24, 265, 154, 494, 511, 169, 134, 263, 226, 335, 439, 253, 132, 105, 285, 130, 160, 342, 429, 21, 428, 201, 215, 315, 256, 467, 387, 453, 253, 132, 376, 484, 331, 66, 261, 383, 340, 199, 125, 411, 310, 303, 45, 29, 290, 189, 491, 328, 447, 418, 396, 389, 13, 176, 74, 0, 278, 426, 374, 153, 151, 17, 286, 491, 351, 398, 326, 40, 63, 203, 359, 16, 31, 193, 506, 282, 496, 239, 368, 464, 143, 469, 108, 481, 311, 355, 257, 442, 465, 81, 279, 88, 1, 217, 369, 436, 464, 350, 460, 420, 258, 42, 316, 158, 205, 448, 306, 98, 358, 183, 312, 62, 178, 464, 350, 228, 112, 73, 327, 38, 7, 89, 305, 419, 260, 229, 145, 397, 294, 10, 464, 350, 276, 479, 78, 27, 174, 483, 69, 472, 476, 438, 60, 339, 219, 122, 208, 464, 350, 235, 141, 123, 343, 146, 162, 248, 352, 271, 206, 246, 413, 117, 244, 227, 9, 9, 445, 194, 115, 85, 49, 407, 468, 288, 149, 102, 441, 503, 393, 212, 457, 9, 301, 241, 186, 142, 349, 166, 180, 245, 362, 190, 56, 275, 57, 50, 462, 344] + 76: [356, 419, 109, 92, 108, 446, 322, 102, 265, 145, 253, 295, 273, 502, 173, 331, 452, 356, 403, 330, 14, 447, 284, 436, 30, 488, 334, 483, 55, 294, 169, 511, 486, 422, 356, 439, 282, 234, 494, 44, 157, 106, 417, 162, 481, 227, 17, 299, 256, 191, 261, 356, 43, 133, 156, 464, 435, 143, 338, 283, 113, 183, 237, 327, 343, 291, 121, 188, 356, 43, 22, 129, 402, 443, 60, 411, 150, 275, 71, 276, 259, 104, 482, 36, 504, 356, 455, 340, 80, 262, 77, 49, 310, 359, 246, 289, 476, 214, 8, 456, 122, 257, 231, 15, 13, 147, 101, 47, 204, 260, 314, 401, 457, 140, 139, 285, 323, 404, 50, 231, 15, 11, 28, 247, 434, 355, 286, 48, 87, 274, 400, 213, 437, 484, 186, 207, 332, 6, 269, 212, 287, 35, 239, 281, 206, 117, 88, 217, 70, 264, 245, 329, 27, 332, 507, 364, 61, 510, 421, 33, 473, 409, 16, 339, 225, 229, 412, 350, 222, 424, 332, 507, 4, 241, 441, 65, 380, 32, 428, 467, 316, 471, 232, 250, 408, 469, 497, 354, 52, 242, 85, 149, 383, 309, 399, 328, 270, 56, 98, 167, 460, 466, 219, 193, 235, 52, 501, 292, 384, 154, 160, 64, 395, 91, 99, 342, 375, 2, 321, 303, 491, 427, 199, 174, 346, 161, 405, 324, 110, 382, 29, 34, 389, 201, 381, 116, 450, 458, 427, 199, 45, 293, 344, 442, 333, 477, 492, 449, 388, 288, 120, 228, 151, 305, 298, 427, 199, 142, 84, 366, 172, 243, 224, 416, 499, 78, 3, 432, 37, 211, 187, 158, 427, 81, 200, 40, 138, 433, 320, 462, 238, 115, 185, 296, 368, 63, 302, 272, 258, 67, 46, 445, 54, 164, 51, 396, 361, 184, 317, 93, 179, 425, 74, 367, 97, 255, 67, 218, 19, 418, 279, 107, 277, 125, 278, 498, 152, 5, 119, 210, 9, 369, 226, 67, 218, 406, 18, 182, 0, 39, 96, 23, 426, 370, 440, 341, 209, 414, 379, 390, 67, 171, 58, 127, 68, 493, 252, 221, 83, 357, 438, 430, 347, 223, 248, 159, 197, 474, 135, 429, 114, 178, 170, 124, 374, 73, 134, 163, 69, 165, 75, 76, 410, 100, 474, 135, 459, 326, 195, 306, 478, 220, 352, 141, 307, 95, 53, 315, 79, 111, 196, 505, 132, 353, 300, 365, 86, 189, 500, 448, 391, 25, 495, 336, 175, 394, 290, 351, 505, 42, 485, 192, 166, 451, 376, 126, 508, 249, 94, 208, 496, 21, 386, 230, 423, 505, 266, 387, 503, 489, 62, 26, 12, 337, 205, 362, 190, 479, 490, 393, 168, 72, 505, 506, 345, 240, 311, 251, 463, 313, 363, 155, 236, 392, 301, 202, 82, 297, 475, 505, 506, 10, 103, 136, 358, 373, 454, 280, 377, 216, 194, 348, 244, 105, 267, 413, 153, 128, 148, 146, 349, 254, 7, 123, 38, 385, 89, 20, 137, 1, 112, 372, 397, 153, 118, 31, 57, 420, 465, 144, 472, 319, 453, 335, 468, 461, 304, 487, 398, 198, 24, 128, 378, 66, 215, 509, 203, 415, 470, 177, 444, 263, 130, 360, 41, 233, 318, 128, 128, 312, 308, 176, 480, 90, 131, 59, 180, 371, 271, 268, 431, 181, 325, 407] + 77: [31, 375, 62, 368, 69, 406, 113, 251, 240, 486, 225, 262, 101, 308, 267, 336, 357, 31, 302, 122, 402, 194, 197, 50, 17, 136, 389, 82, 52, 327, 324, 229, 169, 288, 31, 364, 314, 366, 383, 241, 72, 43, 265, 438, 111, 7, 323, 12, 30, 301, 452, 31, 56, 138, 40, 414, 508, 359, 182, 157, 73, 488, 465, 270, 328, 363, 498, 202, 31, 491, 317, 235, 176, 393, 96, 19, 81, 471, 116, 41, 303, 326, 370, 168, 152, 392, 375, 68, 93, 444, 476, 89, 421, 478, 186, 487, 277, 239, 226, 382, 255, 244, 365, 505, 119, 376, 10, 238, 118, 309, 381, 210, 510, 273, 165, 333, 503, 211, 237, 218, 24, 174, 86, 180, 407, 263, 213, 261, 501, 305, 215, 453, 447, 279, 199, 1, 218, 161, 468, 92, 181, 179, 227, 245, 347, 36, 350, 104, 103, 208, 284, 507, 150, 218, 134, 65, 490, 160, 477, 193, 57, 337, 378, 448, 14, 335, 107, 467, 55, 429, 220, 23, 395, 200, 283, 233, 234, 338, 206, 87, 433, 504, 132, 3, 306, 343, 21, 511, 34, 480, 266, 257, 222, 48, 411, 33, 418, 163, 307, 348, 109, 129, 495, 166, 511, 58, 205, 409, 196, 221, 458, 289, 224, 88, 415, 450, 454, 178, 85, 344, 28, 511, 58, 423, 64, 285, 509, 212, 296, 124, 349, 155, 90, 313, 29, 346, 388, 386, 511, 430, 149, 485, 216, 79, 304, 242, 18, 140, 171, 472, 499, 286, 204, 133, 37, 511, 500, 268, 54, 214, 278, 230, 473, 143, 417, 59, 248, 108, 4, 83, 442, 42, 190, 151, 123, 27, 312, 374, 254, 100, 340, 9, 46, 63, 387, 469, 173, 391, 484, 190, 34, 483, 130, 185, 371, 20, 420, 114, 482, 422, 253, 464, 412, 298, 78, 115, 353, 315, 377, 252, 331, 75, 463, 164, 236, 11, 282, 493, 475, 53, 384, 496, 403, 353, 315, 203, 126, 416, 310, 428, 427, 105, 144, 209, 489, 466, 470, 361, 354, 434, 353, 146, 502, 367, 360, 459, 456, 443, 131, 425, 167, 125, 192, 110, 400, 51, 153, 353, 151, 311, 325, 258, 396, 67, 61, 22, 271, 329, 172, 38, 49, 15, 280, 99, 32, 432, 290, 201, 398, 60, 474, 300, 102, 297, 269, 419, 223, 435, 13, 401, 66, 32, 432, 6, 121, 446, 413, 98, 276, 275, 462, 408, 494, 249, 287, 492, 188, 457, 32, 231, 8, 247, 91, 94, 321, 264, 70, 295, 2, 479, 437, 405, 5, 142, 497, 32, 231, 147, 436, 372, 95, 76, 243, 342, 80, 256, 318, 441, 334, 175, 455, 250, 32, 426, 120, 135, 198, 106, 410, 373, 259, 379, 158, 228, 139, 319, 177, 272, 128, 32, 424, 399, 141, 351, 461, 184, 159, 404, 25, 352, 26, 291, 191, 217, 440, 246, 32, 315, 299, 358, 44, 332, 156, 137, 394, 77, 460, 74, 439, 281, 71, 292, 162, 47, 369, 322, 260, 127, 195, 0, 339, 45, 154, 148, 294, 39, 316, 506, 189, 345, 369, 369, 112, 35, 481, 385, 445, 183, 16, 219, 117, 330, 341, 274, 207, 431, 390, 369, 369, 97, 293, 451, 84, 170, 356, 449, 355, 145, 362, 320, 397, 187, 380, 232] + 78: [339, 52, 434, 90, 263, 152, 70, 18, 287, 207, 348, 428, 494, 158, 412, 420, 427, 339, 34, 375, 59, 422, 1, 132, 160, 270, 314, 347, 93, 288, 480, 265, 301, 451, 339, 378, 181, 406, 38, 164, 464, 274, 338, 112, 78, 344, 84, 309, 293, 335, 384, 339, 277, 37, 65, 232, 195, 60, 302, 362, 351, 490, 291, 133, 414, 23, 28, 177, 339, 258, 141, 131, 80, 127, 429, 101, 241, 392, 86, 492, 63, 380, 259, 283, 285, 94, 361, 497, 43, 300, 509, 239, 272, 254, 229, 474, 138, 389, 478, 198, 201, 120, 94, 142, 15, 349, 396, 284, 89, 57, 218, 126, 416, 2, 166, 82, 468, 491, 505, 94, 142, 325, 139, 245, 425, 5, 374, 230, 157, 454, 308, 39, 143, 320, 206, 372, 94, 244, 336, 279, 146, 16, 214, 92, 463, 192, 228, 53, 234, 27, 122, 109, 417, 94, 187, 346, 147, 281, 470, 436, 452, 217, 379, 510, 69, 275, 240, 458, 165, 431, 94, 29, 35, 350, 306, 352, 190, 298, 13, 243, 256, 316, 303, 236, 443, 444, 460, 94, 29, 193, 253, 173, 327, 299, 179, 356, 483, 418, 200, 116, 257, 395, 297, 407, 435, 108, 466, 176, 266, 507, 449, 456, 268, 296, 357, 252, 399, 450, 225, 11, 271, 435, 124, 269, 87, 184, 377, 473, 213, 359, 489, 96, 106, 6, 475, 204, 170, 95, 435, 124, 7, 453, 150, 426, 223, 174, 446, 135, 313, 511, 481, 136, 383, 104, 329, 41, 424, 235, 442, 504, 102, 149, 343, 199, 247, 22, 77, 394, 305, 457, 493, 55, 41, 405, 163, 88, 262, 366, 496, 216, 400, 180, 411, 354, 145, 222, 168, 205, 100, 41, 108, 260, 345, 233, 469, 410, 76, 227, 17, 148, 409, 97, 387, 140, 72, 500, 324, 317, 261, 487, 19, 484, 482, 393, 292, 191, 197, 432, 42, 499, 295, 117, 332, 324, 171, 370, 430, 340, 323, 495, 121, 48, 267, 502, 318, 66, 220, 441, 221, 415, 324, 251, 503, 183, 172, 203, 498, 47, 14, 364, 49, 333, 488, 202, 189, 123, 368, 324, 186, 169, 46, 398, 137, 8, 182, 238, 341, 45, 26, 156, 286, 246, 20, 440, 342, 317, 188, 433, 371, 107, 215, 467, 401, 81, 506, 280, 119, 99, 219, 328, 25, 24, 210, 278, 455, 237, 75, 61, 360, 0, 178, 51, 211, 54, 312, 402, 30, 471, 24, 194, 321, 319, 110, 330, 397, 155, 98, 459, 363, 367, 85, 476, 381, 304, 161, 24, 194, 353, 79, 479, 331, 358, 71, 249, 58, 44, 310, 153, 128, 373, 68, 67, 24, 194, 382, 154, 105, 385, 337, 242, 326, 447, 376, 64, 56, 423, 294, 73, 36, 391, 32, 115, 130, 111, 208, 388, 3, 159, 282, 307, 31, 33, 4, 461, 12, 129, 413, 50, 175, 508, 114, 445, 334, 151, 226, 501, 212, 369, 289, 403, 62, 438, 118, 413, 255, 9, 437, 472, 83, 125, 273, 264, 167, 465, 386, 113, 404, 134, 231, 250, 413, 255, 144, 315, 477, 421, 486, 311, 185, 448, 248, 10, 355, 224, 322, 276, 439, 50, 50, 103, 196, 390, 419, 485, 21, 408, 290, 209, 91, 462, 74, 162, 365, 40] + 79: [301, 256, 423, 468, 311, 223, 366, 492, 421, 194, 295, 88, 104, 206, 19, 37, 66, 301, 313, 476, 63, 392, 214, 250, 432, 455, 384, 474, 132, 438, 62, 226, 497, 275, 301, 472, 196, 152, 322, 324, 342, 229, 72, 138, 435, 225, 248, 46, 367, 335, 382, 301, 109, 48, 76, 200, 305, 119, 331, 178, 343, 355, 213, 157, 93, 254, 386, 146, 212, 32, 274, 310, 284, 121, 481, 172, 444, 216, 98, 96, 306, 488, 179, 506, 356, 212, 92, 336, 140, 294, 249, 434, 420, 165, 151, 486, 280, 253, 228, 490, 303, 369, 259, 350, 458, 77, 78, 477, 20, 127, 53, 56, 136, 21, 376, 184, 278, 7, 33, 259, 6, 135, 441, 161, 415, 368, 108, 300, 156, 160, 427, 131, 55, 177, 105, 339, 5, 144, 475, 459, 42, 44, 234, 360, 409, 154, 61, 454, 429, 389, 276, 186, 325, 5, 235, 35, 260, 494, 370, 130, 330, 29, 442, 507, 299, 258, 16, 83, 205, 39, 5, 277, 58, 465, 219, 12, 401, 183, 395, 417, 74, 261, 8, 378, 114, 358, 314, 5, 309, 153, 211, 40, 265, 195, 128, 402, 90, 365, 26, 163, 332, 167, 204, 64, 5, 45, 374, 201, 1, 60, 443, 41, 117, 257, 181, 487, 120, 218, 210, 400, 192, 87, 509, 65, 283, 272, 412, 242, 338, 428, 116, 162, 385, 282, 54, 31, 321, 340, 87, 144, 2, 18, 419, 345, 50, 349, 290, 251, 133, 436, 480, 176, 220, 457, 24, 396, 145, 209, 238, 422, 337, 126, 425, 110, 460, 478, 302, 473, 198, 190, 326, 352, 485, 118, 227, 148, 271, 403, 67, 57, 111, 390, 85, 413, 217, 36, 143, 75, 372, 485, 510, 285, 348, 103, 508, 129, 504, 439, 351, 499, 334, 215, 99, 232, 361, 405, 498, 185, 49, 52, 70, 453, 59, 410, 393, 4, 80, 236, 379, 180, 113, 461, 298, 498, 269, 168, 286, 288, 255, 89, 82, 139, 73, 471, 404, 408, 94, 357, 107, 267, 498, 269, 416, 240, 297, 317, 341, 169, 106, 263, 115, 155, 456, 25, 268, 293, 164, 498, 269, 281, 244, 484, 95, 381, 464, 221, 437, 445, 482, 433, 296, 122, 47, 243, 498, 118, 9, 467, 174, 273, 489, 245, 502, 388, 69, 407, 406, 327, 493, 170, 202, 270, 315, 440, 359, 447, 150, 398, 137, 491, 30, 14, 10, 142, 11, 312, 354, 102, 270, 505, 418, 0, 363, 100, 329, 81, 84, 449, 292, 347, 462, 86, 28, 17, 333, 270, 505, 450, 71, 188, 27, 112, 141, 291, 15, 323, 431, 375, 371, 208, 511, 304, 270, 319, 289, 266, 264, 469, 147, 399, 446, 318, 495, 394, 362, 466, 193, 197, 222, 270, 319, 346, 316, 13, 3, 123, 377, 191, 320, 231, 307, 383, 239, 411, 166, 230, 270, 319, 426, 451, 483, 79, 125, 452, 199, 479, 38, 207, 91, 101, 364, 430, 470, 159, 159, 51, 344, 187, 380, 241, 134, 424, 175, 503, 500, 262, 246, 149, 328, 279, 159, 159, 287, 308, 391, 448, 124, 463, 501, 173, 23, 397, 68, 22, 189, 182, 203, 159, 315, 496, 171, 43, 34, 387, 233, 237, 247, 414, 353, 373, 158, 97, 224, 252] + 80: [483, 221, 453, 81, 331, 234, 448, 36, 408, 55, 16, 118, 384, 48, 306, 34, 432, 483, 172, 472, 404, 31, 369, 196, 8, 158, 438, 37, 349, 138, 269, 84, 89, 288, 483, 366, 485, 214, 61, 501, 420, 430, 168, 173, 24, 176, 407, 86, 134, 353, 363, 7, 194, 330, 452, 365, 1, 245, 44, 246, 165, 133, 311, 508, 492, 114, 328, 298, 7, 380, 102, 32, 463, 292, 370, 217, 56, 280, 150, 314, 390, 23, 405, 507, 80, 308, 478, 427, 434, 226, 293, 38, 307, 254, 278, 79, 451, 71, 113, 257, 270, 309, 308, 194, 247, 95, 290, 171, 163, 43, 265, 465, 419, 227, 162, 495, 376, 191, 346, 10, 352, 362, 96, 164, 185, 354, 229, 213, 488, 413, 218, 184, 348, 223, 242, 368, 143, 394, 367, 124, 503, 459, 256, 3, 347, 336, 263, 72, 193, 93, 371, 203, 145, 143, 255, 475, 510, 303, 396, 397, 151, 211, 479, 139, 411, 412, 319, 360, 381, 450, 143, 255, 74, 63, 224, 45, 400, 126, 78, 418, 386, 499, 357, 94, 160, 294, 103, 143, 300, 189, 166, 392, 210, 252, 90, 167, 22, 190, 129, 225, 285, 117, 496, 142, 238, 338, 49, 42, 88, 477, 355, 195, 333, 65, 197, 123, 361, 502, 244, 272, 414, 238, 394, 177, 228, 57, 431, 321, 87, 110, 326, 497, 322, 445, 105, 439, 154, 130, 220, 30, 239, 297, 235, 393, 387, 375, 215, 69, 295, 325, 182, 494, 455, 59, 91, 220, 30, 385, 447, 473, 417, 46, 116, 271, 373, 76, 60, 248, 350, 39, 446, 29, 101, 5, 121, 345, 470, 341, 287, 262, 313, 406, 281, 301, 14, 506, 318, 315, 304, 101, 82, 15, 437, 104, 131, 52, 241, 286, 155, 435, 343, 237, 251, 467, 332, 259, 101, 82, 421, 457, 108, 156, 416, 316, 440, 317, 200, 291, 264, 461, 50, 334, 433, 101, 82, 106, 500, 112, 425, 253, 449, 489, 277, 73, 458, 179, 511, 388, 486, 424, 101, 83, 230, 378, 198, 21, 364, 409, 92, 140, 344, 464, 372, 423, 359, 441, 99, 101, 83, 399, 284, 302, 296, 480, 159, 40, 460, 356, 273, 444, 75, 340, 219, 395, 101, 66, 429, 389, 13, 68, 442, 98, 11, 169, 51, 175, 493, 258, 64, 415, 212, 101, 66, 401, 299, 498, 148, 250, 476, 222, 137, 312, 443, 339, 77, 482, 402, 383, 0, 120, 282, 115, 206, 422, 266, 320, 268, 174, 136, 181, 47, 67, 351, 128, 207, 0, 41, 19, 410, 327, 187, 147, 267, 62, 178, 202, 125, 426, 289, 231, 153, 403, 0, 41, 28, 4, 240, 274, 141, 208, 100, 119, 209, 456, 127, 379, 487, 283, 149, 0, 5, 275, 377, 111, 509, 58, 20, 183, 186, 188, 12, 2, 276, 54, 161, 491, 205, 120, 337, 481, 323, 53, 152, 324, 192, 382, 469, 466, 204, 329, 135, 180, 146, 25, 310, 33, 260, 70, 279, 157, 199, 85, 468, 233, 107, 27, 122, 6, 505, 236, 25, 120, 398, 484, 374, 144, 243, 109, 490, 35, 232, 97, 428, 454, 132, 305, 249, 9, 261, 474, 462, 18, 436, 201, 216, 335, 391, 504, 26, 471, 342, 17, 358, 170] + 81: [44, 118, 5, 277, 10, 293, 156, 355, 449, 403, 213, 112, 65, 274, 458, 12, 192, 44, 103, 37, 22, 124, 397, 121, 296, 237, 329, 111, 175, 184, 71, 216, 218, 501, 44, 157, 236, 340, 442, 116, 470, 503, 119, 131, 481, 204, 440, 488, 77, 282, 406, 44, 318, 24, 32, 92, 319, 57, 439, 104, 437, 220, 59, 454, 202, 505, 136, 352, 142, 365, 167, 109, 338, 354, 480, 381, 314, 144, 225, 61, 254, 222, 3, 388, 67, 142, 421, 325, 80, 88, 132, 377, 420, 366, 196, 455, 450, 170, 244, 154, 494, 126, 142, 380, 315, 391, 368, 165, 370, 430, 361, 504, 448, 415, 303, 379, 266, 90, 285, 142, 31, 214, 39, 256, 253, 347, 180, 317, 259, 155, 15, 510, 240, 490, 416, 41, 142, 350, 261, 176, 362, 408, 140, 341, 500, 94, 201, 384, 395, 323, 8, 43, 283, 142, 389, 36, 489, 308, 327, 82, 97, 262, 108, 359, 23, 396, 369, 130, 30, 508, 457, 238, 375, 7, 484, 419, 78, 178, 477, 443, 357, 334, 239, 482, 506, 486, 363, 89, 221, 173, 462, 129, 217, 474, 246, 495, 74, 438, 475, 466, 459, 432, 446, 179, 89, 11, 0, 292, 405, 245, 197, 394, 93, 265, 496, 33, 289, 511, 270, 34, 133, 89, 11, 286, 284, 26, 91, 382, 417, 13, 402, 509, 219, 342, 75, 400, 344, 272, 229, 127, 491, 228, 360, 251, 4, 148, 171, 435, 16, 255, 189, 324, 309, 51, 100, 229, 223, 431, 332, 83, 212, 463, 373, 38, 162, 231, 468, 227, 322, 182, 208, 302, 229, 106, 278, 275, 427, 414, 27, 473, 479, 304, 68, 87, 29, 64, 333, 152, 378, 206, 345, 235, 79, 250, 257, 407, 441, 63, 401, 483, 260, 280, 418, 183, 351, 453, 206, 345, 226, 54, 209, 233, 434, 123, 60, 305, 326, 49, 232, 371, 19, 392, 172, 206, 128, 367, 358, 242, 230, 276, 48, 348, 451, 383, 1, 452, 247, 207, 181, 85, 206, 128, 164, 125, 444, 138, 147, 264, 35, 234, 310, 410, 353, 210, 478, 122, 2, 206, 53, 356, 28, 425, 249, 243, 267, 81, 84, 493, 288, 343, 193, 271, 386, 336, 206, 53, 105, 291, 150, 194, 485, 241, 149, 166, 215, 337, 73, 86, 114, 188, 195, 206, 127, 117, 311, 151, 346, 387, 21, 281, 316, 313, 40, 294, 428, 335, 6, 17, 422, 107, 498, 161, 328, 469, 9, 169, 137, 306, 374, 198, 50, 476, 47, 467, 487, 55, 163, 101, 187, 307, 300, 460, 141, 399, 153, 497, 200, 433, 120, 168, 158, 18, 55, 163, 398, 62, 135, 185, 69, 279, 268, 258, 372, 429, 211, 445, 159, 424, 404, 55, 163, 252, 330, 269, 297, 299, 426, 203, 70, 412, 301, 143, 502, 273, 320, 139, 55, 507, 263, 186, 413, 174, 42, 177, 102, 312, 76, 58, 45, 492, 160, 287, 393, 55, 107, 423, 134, 472, 145, 385, 205, 321, 110, 115, 146, 295, 20, 376, 461, 190, 290, 447, 298, 464, 248, 456, 46, 56, 471, 224, 14, 191, 339, 499, 98, 436, 199, 290, 163, 409, 465, 52, 349, 113, 411, 66, 364, 25, 99, 331, 96, 390, 72, 95] + 82: [160, 250, 472, 405, 179, 262, 193, 6, 176, 427, 279, 87, 79, 318, 327, 273, 227, 160, 250, 472, 62, 157, 275, 288, 19, 445, 200, 107, 58, 325, 458, 369, 206, 266, 362, 299, 431, 337, 460, 57, 61, 121, 21, 253, 74, 257, 113, 425, 401, 132, 11, 362, 239, 83, 120, 351, 171, 167, 4, 22, 360, 390, 145, 196, 146, 154, 403, 341, 220, 225, 228, 67, 231, 287, 211, 354, 194, 487, 158, 180, 350, 38, 26, 389, 433, 5, 324, 452, 81, 485, 461, 125, 315, 455, 459, 384, 169, 463, 96, 150, 177, 283, 151, 423, 53, 307, 277, 182, 29, 285, 448, 355, 366, 101, 141, 499, 260, 502, 73, 35, 470, 47, 303, 199, 488, 357, 383, 317, 464, 226, 36, 137, 396, 240, 304, 443, 35, 284, 9, 497, 94, 143, 237, 413, 144, 371, 291, 84, 343, 477, 224, 268, 201, 35, 372, 476, 17, 434, 261, 397, 69, 130, 37, 129, 430, 415, 358, 44, 34, 385, 35, 251, 15, 140, 221, 42, 156, 386, 378, 234, 103, 95, 353, 507, 509, 338, 501, 35, 251, 63, 76, 429, 446, 41, 306, 407, 466, 302, 232, 296, 436, 410, 329, 321, 35, 251, 247, 467, 301, 123, 223, 426, 451, 91, 215, 498, 450, 195, 468, 8, 43, 35, 213, 24, 98, 173, 267, 442, 411, 92, 60, 298, 159, 208, 217, 361, 135, 421, 35, 423, 53, 188, 289, 7, 511, 428, 465, 478, 438, 437, 368, 65, 323, 55, 40, 59, 209, 243, 505, 313, 54, 241, 503, 272, 494, 348, 388, 316, 31, 340, 204, 280, 78, 209, 175, 97, 0, 265, 375, 392, 102, 203, 349, 508, 406, 33, 471, 400, 48, 419, 209, 439, 286, 486, 152, 331, 131, 380, 111, 191, 496, 126, 187, 178, 347, 235, 219, 469, 404, 162, 248, 363, 414, 119, 100, 138, 333, 367, 233, 20, 256, 166, 294, 370, 295, 456, 127, 72, 292, 305, 99, 475, 128, 483, 311, 116, 409, 124, 139, 147, 370, 495, 408, 346, 244, 27, 164, 189, 269, 174, 334, 328, 506, 114, 424, 379, 416, 314, 86, 326, 218, 118, 45, 312, 16, 18, 373, 133, 491, 481, 364, 258, 293, 242, 462, 86, 510, 395, 281, 198, 394, 202, 245, 23, 473, 207, 381, 110, 271, 210, 444, 161, 356, 214, 190, 474, 197, 435, 500, 148, 320, 420, 230, 453, 71, 216, 51, 398, 161, 356, 13, 310, 88, 2, 205, 186, 50, 56, 106, 447, 278, 105, 492, 246, 417, 161, 356, 479, 32, 480, 108, 454, 493, 93, 365, 490, 300, 212, 255, 68, 270, 387, 339, 77, 155, 252, 336, 46, 80, 30, 377, 359, 330, 52, 64, 297, 28, 308, 402, 274, 77, 422, 504, 254, 3, 75, 489, 352, 170, 290, 309, 82, 263, 484, 168, 112, 274, 77, 422, 184, 393, 183, 222, 345, 12, 449, 238, 276, 181, 149, 282, 382, 332, 49, 49, 70, 142, 441, 335, 134, 412, 122, 172, 236, 440, 10, 322, 66, 109, 163, 49, 49, 342, 192, 391, 264, 85, 14, 229, 25, 185, 1, 153, 432, 376, 165, 457, 49, 77, 249, 104, 136, 39, 482, 259, 90, 319, 418, 115, 399, 89, 374, 344, 117] + 83: [148, 58, 140, 114, 315, 1, 117, 207, 243, 509, 88, 325, 222, 25, 120, 355, 327, 148, 423, 374, 415, 177, 398, 411, 301, 281, 216, 494, 84, 497, 294, 468, 406, 155, 447, 365, 102, 344, 96, 337, 232, 43, 143, 354, 121, 236, 28, 235, 254, 311, 357, 447, 59, 346, 205, 340, 278, 289, 390, 303, 197, 300, 456, 209, 461, 81, 419, 93, 447, 59, 488, 210, 413, 214, 206, 11, 486, 442, 66, 383, 80, 68, 372, 13, 50, 447, 285, 231, 245, 389, 75, 353, 12, 168, 115, 379, 393, 500, 6, 318, 165, 326, 447, 273, 388, 226, 504, 15, 259, 307, 336, 476, 460, 212, 150, 478, 174, 5, 418, 378, 365, 85, 91, 220, 458, 471, 31, 360, 170, 241, 445, 477, 129, 506, 431, 130, 19, 274, 57, 125, 97, 77, 350, 118, 67, 448, 227, 110, 78, 438, 484, 287, 221, 19, 274, 127, 464, 272, 193, 24, 479, 21, 339, 352, 332, 377, 280, 162, 317, 474, 19, 142, 132, 131, 181, 175, 111, 37, 502, 265, 330, 324, 14, 334, 146, 249, 457, 19, 142, 490, 257, 376, 237, 53, 172, 173, 510, 361, 49, 291, 153, 164, 496, 263, 122, 472, 507, 401, 297, 492, 375, 385, 202, 171, 203, 501, 333, 404, 238, 391, 480, 122, 159, 108, 51, 126, 187, 147, 322, 451, 188, 38, 485, 363, 368, 29, 95, 505, 122, 395, 459, 425, 288, 466, 82, 86, 65, 32, 342, 89, 465, 229, 186, 47, 320, 122, 90, 402, 83, 30, 160, 198, 70, 260, 306, 295, 348, 48, 403, 356, 195, 286, 122, 90, 151, 443, 373, 113, 192, 416, 364, 293, 157, 149, 343, 246, 179, 178, 282, 167, 79, 225, 262, 313, 434, 34, 135, 156, 94, 409, 242, 112, 9, 341, 208, 335, 167, 79, 386, 270, 511, 138, 204, 302, 380, 279, 18, 99, 467, 400, 239, 305, 271, 167, 397, 362, 284, 312, 189, 69, 7, 420, 299, 493, 261, 139, 144, 481, 424, 107, 167, 397, 218, 185, 381, 92, 224, 489, 269, 244, 275, 358, 52, 369, 446, 199, 8, 449, 508, 215, 482, 417, 60, 251, 39, 463, 473, 382, 200, 331, 310, 453, 441, 134, 123, 394, 396, 258, 190, 444, 61, 426, 44, 201, 211, 154, 429, 137, 387, 124, 454, 123, 491, 0, 100, 194, 371, 4, 10, 116, 87, 435, 323, 469, 436, 408, 252, 483, 123, 491, 133, 233, 74, 36, 264, 45, 234, 414, 213, 16, 217, 141, 503, 319, 405, 123, 491, 328, 450, 440, 35, 329, 54, 2, 430, 46, 253, 56, 55, 248, 240, 276, 255, 359, 161, 437, 351, 277, 71, 103, 196, 256, 487, 412, 316, 432, 433, 219, 247, 255, 394, 266, 347, 367, 298, 180, 17, 20, 119, 163, 250, 228, 63, 106, 267, 72, 499, 359, 176, 41, 292, 422, 33, 40, 73, 145, 169, 191, 462, 166, 427, 152, 475, 158, 359, 428, 62, 98, 290, 392, 136, 304, 349, 308, 345, 309, 27, 452, 22, 104, 296, 370, 183, 223, 495, 384, 23, 399, 366, 321, 314, 410, 421, 338, 76, 101, 182, 42, 42, 455, 3, 109, 268, 230, 498, 283, 184, 64, 407, 439, 128, 26, 105, 470] + 84: [402, 394, 455, 456, 136, 481, 234, 134, 133, 23, 47, 444, 409, 453, 310, 317, 242, 402, 370, 200, 428, 53, 108, 291, 403, 248, 294, 306, 377, 18, 501, 274, 293, 366, 402, 301, 322, 189, 43, 173, 228, 45, 11, 82, 113, 364, 95, 25, 93, 9, 49, 402, 187, 445, 425, 172, 324, 119, 175, 196, 8, 275, 363, 158, 424, 288, 349, 121, 323, 394, 282, 386, 327, 241, 490, 125, 473, 493, 210, 94, 206, 194, 180, 421, 124, 10, 249, 491, 304, 427, 29, 155, 495, 477, 504, 486, 314, 330, 147, 360, 92, 55, 70, 183, 417, 371, 345, 393, 146, 140, 177, 392, 355, 254, 62, 367, 160, 151, 259, 70, 400, 299, 188, 281, 509, 365, 60, 337, 39, 449, 35, 31, 431, 329, 114, 404, 344, 448, 295, 149, 3, 466, 203, 37, 379, 332, 283, 100, 236, 436, 169, 415, 78, 344, 227, 296, 73, 244, 162, 298, 479, 240, 438, 209, 167, 129, 74, 84, 192, 454, 344, 193, 202, 290, 68, 482, 22, 359, 168, 263, 4, 343, 232, 336, 459, 279, 401, 344, 357, 338, 231, 452, 326, 59, 318, 96, 75, 54, 470, 391, 346, 484, 340, 12, 132, 316, 246, 28, 152, 260, 235, 97, 26, 150, 280, 118, 471, 351, 19, 14, 21, 132, 316, 107, 270, 268, 250, 24, 450, 225, 80, 380, 264, 27, 510, 375, 437, 462, 132, 211, 419, 109, 497, 320, 468, 368, 56, 36, 447, 90, 372, 226, 406, 174, 383, 132, 211, 457, 7, 89, 441, 439, 1, 388, 432, 443, 32, 461, 278, 137, 266, 464, 132, 69, 297, 52, 384, 262, 369, 507, 33, 77, 201, 198, 42, 287, 488, 51, 474, 132, 69, 98, 506, 117, 205, 381, 181, 221, 237, 397, 64, 485, 191, 300, 405, 433, 132, 157, 251, 48, 271, 71, 219, 255, 239, 500, 265, 72, 277, 478, 475, 489, 430, 339, 79, 148, 408, 442, 313, 41, 508, 217, 115, 230, 106, 361, 112, 286, 252, 308, 339, 79, 104, 238, 247, 333, 261, 170, 165, 91, 410, 163, 426, 446, 204, 229, 13, 339, 316, 245, 319, 17, 335, 87, 416, 398, 289, 352, 86, 407, 483, 127, 144, 184, 5, 182, 185, 176, 376, 142, 208, 423, 61, 435, 153, 429, 465, 302, 213, 328, 378, 5, 182, 195, 373, 30, 396, 354, 331, 223, 128, 385, 511, 492, 220, 418, 353, 256, 5, 182, 197, 40, 414, 186, 216, 399, 65, 171, 215, 199, 63, 276, 138, 102, 58, 5, 358, 273, 341, 6, 123, 411, 81, 285, 145, 460, 105, 463, 214, 451, 389, 85, 5, 79, 116, 76, 494, 135, 103, 83, 502, 312, 348, 139, 143, 66, 253, 434, 496, 356, 292, 46, 159, 2, 154, 57, 487, 20, 284, 412, 67, 122, 141, 111, 224, 233, 179, 257, 131, 321, 207, 222, 480, 269, 44, 130, 503, 325, 350, 305, 212, 218, 15, 179, 315, 243, 309, 190, 99, 472, 342, 458, 161, 16, 420, 382, 120, 505, 258, 156, 476, 257, 50, 0, 390, 334, 38, 422, 469, 88, 34, 267, 307, 395, 126, 374, 166, 257, 257, 110, 498, 347, 164, 413, 303, 272, 311, 178, 499, 467, 387, 362, 440, 101] + 85: [255, 14, 501, 493, 113, 491, 192, 303, 149, 283, 306, 293, 157, 425, 97, 333, 280, 255, 74, 138, 34, 385, 212, 189, 51, 219, 41, 182, 317, 401, 321, 112, 114, 432, 255, 74, 379, 26, 13, 164, 119, 191, 460, 395, 307, 125, 11, 3, 274, 436, 455, 255, 136, 136, 47, 451, 218, 229, 130, 413, 169, 178, 66, 29, 91, 327, 421, 463, 456, 22, 465, 118, 228, 325, 370, 376, 343, 360, 273, 510, 69, 209, 32, 424, 452, 456, 365, 501, 236, 271, 300, 83, 276, 167, 208, 435, 428, 270, 100, 364, 495, 498, 456, 105, 449, 137, 156, 301, 362, 126, 253, 36, 287, 359, 43, 124, 361, 62, 165, 87, 439, 442, 412, 398, 184, 33, 347, 134, 474, 53, 85, 257, 172, 302, 89, 0, 87, 439, 6, 423, 397, 431, 388, 350, 173, 394, 445, 400, 297, 419, 96, 473, 489, 87, 233, 246, 471, 407, 441, 201, 338, 448, 475, 443, 7, 464, 226, 17, 480, 291, 87, 393, 10, 193, 150, 509, 99, 116, 416, 434, 223, 106, 447, 215, 20, 247, 248, 87, 378, 227, 40, 386, 131, 132, 444, 457, 500, 254, 154, 230, 264, 337, 49, 235, 87, 378, 294, 318, 35, 470, 277, 383, 93, 30, 352, 330, 12, 426, 374, 312, 351, 87, 148, 346, 256, 290, 458, 355, 467, 433, 171, 202, 469, 166, 57, 266, 406, 92, 87, 148, 369, 61, 214, 59, 506, 95, 73, 122, 505, 418, 335, 144, 160, 205, 170, 354, 52, 147, 234, 373, 135, 504, 211, 217, 289, 117, 196, 282, 262, 483, 479, 108, 391, 21, 410, 243, 438, 332, 81, 334, 319, 162, 411, 414, 5, 161, 450, 42, 77, 462, 21, 258, 1, 476, 508, 9, 25, 309, 389, 259, 23, 356, 129, 286, 399, 110, 349, 180, 176, 499, 252, 454, 492, 377, 440, 267, 331, 405, 249, 194, 50, 143, 179, 349, 180, 174, 507, 168, 151, 430, 188, 240, 153, 241, 481, 485, 115, 511, 314, 127, 349, 353, 348, 328, 392, 315, 199, 305, 478, 216, 109, 70, 140, 88, 279, 502, 79, 349, 353, 268, 102, 123, 269, 24, 466, 103, 250, 90, 37, 296, 486, 272, 487, 482, 349, 384, 198, 372, 417, 64, 183, 206, 387, 304, 244, 459, 67, 78, 261, 415, 427, 349, 75, 128, 133, 224, 275, 308, 58, 231, 54, 490, 375, 371, 4, 322, 210, 323, 349, 21, 71, 329, 146, 63, 8, 175, 402, 46, 213, 429, 15, 120, 422, 2, 357, 86, 68, 298, 345, 238, 98, 380, 158, 145, 497, 344, 366, 237, 76, 225, 310, 313, 107, 68, 197, 320, 56, 340, 382, 403, 396, 496, 390, 299, 65, 190, 155, 39, 311, 281, 68, 80, 16, 72, 18, 453, 503, 159, 284, 152, 232, 242, 265, 84, 104, 222, 203, 285, 27, 48, 484, 44, 221, 45, 477, 141, 38, 408, 31, 488, 200, 82, 121, 94, 285, 341, 55, 494, 186, 468, 263, 101, 339, 368, 367, 207, 278, 446, 363, 437, 326, 181, 187, 163, 204, 420, 472, 336, 316, 404, 142, 195, 19, 139, 220, 245, 111, 239, 239, 292, 177, 185, 381, 409, 461, 324, 288, 60, 342, 358, 295, 28, 251, 260] + 86: [431, 330, 132, 277, 283, 501, 163, 13, 324, 438, 50, 230, 99, 452, 412, 232, 440, 462, 107, 474, 267, 455, 388, 57, 383, 22, 80, 145, 242, 76, 360, 460, 5, 137, 462, 244, 251, 280, 64, 83, 504, 492, 89, 233, 508, 472, 339, 308, 259, 314, 92, 462, 330, 157, 419, 140, 376, 420, 141, 355, 181, 278, 416, 378, 262, 306, 38, 73, 212, 379, 456, 249, 101, 423, 502, 235, 326, 352, 313, 8, 121, 197, 200, 39, 203, 11, 7, 456, 332, 471, 17, 270, 257, 135, 21, 468, 374, 234, 216, 302, 285, 312, 75, 210, 396, 222, 161, 359, 261, 268, 129, 395, 93, 461, 356, 110, 320, 291, 81, 217, 223, 466, 224, 78, 231, 176, 425, 87, 35, 479, 106, 480, 253, 152, 220, 459, 217, 210, 2, 65, 59, 218, 298, 453, 321, 209, 439, 399, 194, 148, 133, 192, 353, 47, 122, 370, 183, 174, 382, 168, 149, 346, 384, 34, 43, 265, 483, 275, 301, 410, 47, 272, 432, 15, 97, 381, 475, 84, 191, 337, 451, 143, 180, 14, 307, 86, 300, 47, 364, 303, 269, 449, 239, 225, 128, 193, 430, 329, 498, 27, 37, 331, 340, 343, 47, 364, 56, 227, 170, 146, 160, 446, 284, 342, 279, 189, 495, 385, 422, 52, 178, 47, 507, 500, 363, 490, 434, 454, 202, 380, 441, 247, 44, 245, 288, 297, 294, 144, 372, 4, 109, 371, 389, 201, 131, 421, 94, 361, 450, 164, 111, 447, 481, 243, 42, 372, 123, 114, 103, 18, 377, 336, 494, 29, 51, 413, 40, 9, 167, 503, 41, 258, 372, 0, 54, 436, 169, 435, 115, 325, 138, 85, 415, 426, 368, 289, 1, 49, 246, 372, 0, 126, 266, 20, 77, 276, 214, 190, 79, 6, 229, 409, 136, 442, 322, 24, 372, 122, 323, 405, 496, 10, 482, 151, 463, 509, 489, 338, 390, 248, 33, 67, 433, 334, 55, 130, 398, 491, 60, 139, 31, 465, 68, 142, 510, 3, 28, 387, 365, 478, 334, 394, 424, 333, 408, 48, 26, 116, 120, 147, 70, 30, 477, 273, 61, 311, 264, 334, 394, 156, 263, 127, 375, 349, 206, 117, 125, 113, 119, 429, 12, 219, 199, 366, 334, 394, 401, 88, 281, 327, 511, 486, 344, 62, 95, 386, 255, 392, 188, 254, 505, 334, 4, 32, 91, 292, 162, 241, 274, 293, 347, 19, 150, 485, 437, 134, 240, 304, 334, 4, 236, 46, 221, 448, 16, 417, 393, 196, 296, 470, 373, 195, 458, 90, 23, 427, 45, 165, 124, 369, 256, 444, 185, 173, 493, 411, 154, 309, 172, 445, 391, 69, 427, 237, 299, 63, 305, 348, 66, 407, 25, 335, 499, 215, 414, 488, 316, 98, 198, 171, 318, 104, 228, 295, 310, 108, 58, 487, 102, 400, 96, 271, 406, 155, 187, 404, 282, 36, 350, 186, 286, 177, 213, 469, 287, 476, 153, 345, 357, 175, 506, 351, 328, 282, 36, 238, 464, 211, 497, 341, 100, 418, 182, 74, 473, 457, 397, 484, 250, 252, 282, 36, 184, 467, 358, 428, 367, 205, 362, 443, 118, 71, 158, 112, 354, 226, 208, 105, 105, 53, 207, 260, 159, 179, 317, 290, 166, 319, 72, 315, 204, 403, 402, 82] + 87: [224, 236, 394, 76, 241, 269, 169, 478, 77, 218, 303, 499, 429, 290, 456, 51, 342, 296, 415, 122, 279, 226, 475, 152, 140, 61, 465, 128, 357, 274, 383, 71, 90, 106, 296, 441, 3, 427, 126, 317, 60, 83, 414, 211, 20, 430, 246, 320, 322, 353, 360, 188, 454, 324, 483, 107, 452, 318, 250, 242, 49, 372, 54, 510, 240, 100, 19, 258, 188, 92, 134, 408, 11, 382, 284, 277, 84, 271, 281, 404, 94, 97, 461, 210, 86, 188, 92, 25, 38, 500, 311, 308, 363, 53, 93, 46, 235, 113, 101, 72, 266, 293, 188, 87, 453, 200, 376, 268, 167, 9, 58, 286, 142, 288, 312, 257, 52, 27, 329, 188, 48, 234, 486, 252, 403, 280, 469, 233, 205, 191, 21, 108, 467, 63, 315, 68, 188, 463, 234, 393, 388, 79, 496, 45, 276, 440, 123, 433, 418, 442, 446, 450, 457, 188, 415, 89, 306, 455, 390, 139, 14, 424, 359, 212, 275, 476, 144, 398, 35, 497, 333, 161, 39, 491, 217, 419, 464, 81, 248, 391, 426, 331, 179, 194, 196, 213, 227, 333, 182, 344, 31, 216, 110, 474, 349, 354, 219, 10, 462, 482, 187, 120, 397, 232, 333, 198, 99, 356, 439, 407, 294, 33, 220, 425, 0, 239, 470, 402, 183, 389, 57, 333, 36, 174, 78, 423, 12, 300, 208, 260, 438, 488, 325, 237, 166, 244, 375, 125, 333, 36, 111, 379, 115, 98, 302, 278, 158, 1, 255, 498, 416, 30, 186, 321, 373, 333, 454, 256, 509, 434, 143, 215, 264, 154, 74, 4, 361, 368, 480, 267, 203, 413, 204, 466, 395, 334, 253, 405, 8, 245, 23, 348, 299, 127, 135, 6, 155, 428, 37, 310, 466, 134, 387, 184, 392, 129, 323, 206, 132, 109, 444, 130, 147, 149, 176, 178, 247, 95, 105, 42, 386, 146, 385, 148, 209, 351, 34, 326, 400, 201, 364, 479, 406, 247, 466, 157, 163, 225, 489, 328, 304, 26, 138, 477, 165, 401, 29, 171, 451, 380, 221, 511, 503, 501, 32, 5, 481, 301, 66, 153, 506, 297, 243, 399, 369, 350, 22, 221, 95, 25, 43, 195, 116, 88, 207, 181, 24, 170, 338, 18, 307, 358, 384, 410, 222, 168, 117, 55, 332, 67, 172, 114, 337, 102, 13, 62, 177, 484, 494, 70, 41, 222, 168, 409, 85, 504, 28, 352, 366, 251, 289, 231, 192, 291, 261, 282, 69, 75, 222, 168, 7, 330, 285, 190, 327, 185, 96, 472, 121, 421, 422, 160, 141, 118, 80, 222, 490, 460, 355, 346, 159, 162, 189, 335, 82, 56, 16, 230, 313, 283, 345, 468, 493, 112, 229, 214, 435, 436, 249, 458, 437, 119, 336, 151, 367, 485, 64, 432, 263, 493, 112, 412, 381, 175, 259, 448, 223, 495, 91, 272, 309, 507, 487, 365, 270, 145, 343, 59, 156, 150, 136, 287, 298, 199, 65, 164, 341, 371, 44, 492, 505, 173, 370, 131, 59, 124, 50, 103, 445, 73, 104, 362, 449, 411, 443, 265, 378, 314, 347, 273, 447, 377, 133, 197, 420, 2, 228, 396, 17, 262, 340, 339, 238, 292, 502, 40, 47, 374, 254, 305, 473, 180, 137, 295, 202, 459, 508, 431, 417, 471, 319, 193, 316, 15] + 88: [290, 217, 344, 37, 183, 185, 390, 473, 24, 287, 160, 443, 336, 152, 63, 263, 279, 353, 163, 485, 433, 206, 326, 373, 143, 460, 424, 55, 164, 506, 139, 236, 210, 237, 353, 191, 194, 502, 180, 211, 328, 445, 357, 208, 266, 387, 56, 78, 395, 91, 170, 353, 191, 17, 315, 32, 168, 83, 115, 232, 375, 50, 62, 71, 119, 84, 407, 165, 75, 132, 294, 53, 504, 503, 148, 30, 193, 310, 311, 93, 343, 422, 22, 466, 475, 75, 231, 4, 258, 16, 72, 189, 430, 488, 220, 14, 321, 474, 99, 151, 412, 362, 75, 163, 4, 492, 371, 241, 117, 36, 249, 23, 262, 101, 308, 74, 136, 479, 450, 338, 77, 98, 383, 94, 339, 156, 57, 133, 283, 374, 478, 144, 317, 250, 476, 11, 313, 25, 301, 69, 316, 81, 354, 468, 282, 365, 147, 196, 471, 9, 458, 413, 453, 313, 264, 482, 400, 455, 29, 46, 39, 467, 110, 229, 58, 218, 202, 505, 187, 97, 313, 175, 485, 429, 454, 438, 154, 444, 491, 377, 190, 470, 224, 146, 252, 329, 364, 313, 77, 294, 105, 247, 153, 227, 303, 320, 76, 325, 204, 106, 495, 34, 319, 396, 167, 25, 234, 421, 100, 49, 419, 127, 403, 304, 490, 298, 296, 410, 0, 129, 207, 345, 273, 161, 86, 79, 256, 286, 20, 391, 222, 291, 384, 324, 112, 461, 393, 253, 345, 399, 355, 484, 312, 348, 2, 15, 295, 169, 88, 270, 203, 428, 219, 188, 28, 345, 399, 360, 350, 141, 186, 128, 437, 239, 292, 300, 368, 434, 118, 226, 134, 335, 489, 273, 483, 439, 201, 159, 318, 401, 299, 378, 103, 459, 257, 149, 73, 130, 135, 140, 43, 85, 182, 352, 493, 104, 174, 382, 477, 367, 380, 288, 248, 5, 80, 327, 436, 43, 363, 125, 114, 31, 392, 1, 212, 6, 446, 306, 448, 61, 179, 372, 334, 416, 251, 192, 451, 487, 162, 138, 33, 369, 10, 435, 442, 240, 462, 242, 268, 155, 416, 251, 51, 44, 64, 245, 235, 246, 214, 274, 122, 59, 309, 243, 370, 277, 351, 285, 340, 126, 480, 54, 176, 411, 267, 228, 405, 346, 173, 331, 223, 426, 244, 366, 285, 340, 465, 38, 213, 452, 402, 388, 427, 158, 177, 87, 123, 386, 255, 376, 408, 285, 340, 404, 145, 499, 8, 293, 280, 496, 109, 216, 272, 307, 60, 332, 510, 13, 285, 7, 52, 116, 330, 297, 397, 67, 425, 276, 289, 423, 456, 215, 157, 278, 68, 70, 120, 342, 108, 121, 48, 337, 66, 261, 323, 107, 131, 333, 494, 265, 385, 381, 70, 172, 432, 45, 47, 102, 41, 349, 449, 284, 500, 414, 124, 497, 65, 509, 275, 70, 21, 314, 40, 150, 394, 82, 137, 359, 259, 464, 389, 507, 481, 305, 440, 12, 341, 457, 35, 447, 501, 90, 358, 472, 271, 417, 3, 415, 92, 221, 230, 166, 96, 469, 469, 19, 113, 205, 486, 409, 254, 398, 379, 463, 238, 431, 347, 178, 225, 356, 469, 200, 184, 18, 199, 508, 95, 322, 406, 511, 42, 89, 260, 111, 420, 198, 209, 469, 200, 418, 302, 26, 181, 197, 361, 281, 269, 498, 27, 195, 142, 171, 441, 233] + 89: [61, 42, 104, 482, 240, 191, 292, 235, 216, 421, 402, 163, 160, 26, 154, 213, 5, 61, 52, 398, 127, 237, 293, 242, 171, 383, 282, 410, 477, 394, 316, 291, 272, 128, 345, 42, 209, 74, 481, 478, 449, 246, 166, 314, 37, 347, 185, 188, 279, 278, 337, 158, 144, 326, 87, 500, 426, 505, 44, 205, 349, 212, 459, 3, 378, 276, 413, 208, 158, 144, 304, 9, 497, 348, 234, 340, 80, 97, 223, 120, 211, 192, 200, 156, 363, 158, 369, 502, 389, 4, 35, 333, 472, 508, 391, 486, 367, 19, 385, 501, 370, 214, 158, 369, 456, 60, 109, 125, 496, 135, 409, 295, 47, 132, 39, 441, 331, 414, 247, 25, 17, 119, 450, 34, 43, 297, 215, 21, 287, 418, 313, 490, 393, 88, 371, 427, 25, 116, 159, 236, 111, 254, 507, 339, 28, 68, 321, 84, 148, 59, 281, 274, 305, 241, 199, 102, 384, 141, 197, 388, 354, 442, 386, 23, 38, 57, 404, 126, 170, 474, 241, 17, 448, 20, 473, 229, 352, 140, 433, 260, 499, 201, 108, 428, 106, 225, 94, 27, 310, 503, 332, 416, 15, 399, 419, 139, 77, 392, 451, 506, 492, 475, 380, 504, 27, 310, 249, 262, 471, 113, 323, 69, 327, 494, 250, 417, 194, 382, 101, 447, 187, 184, 90, 343, 454, 130, 244, 372, 396, 377, 259, 325, 107, 261, 49, 91, 134, 267, 184, 90, 264, 196, 466, 118, 100, 189, 374, 294, 390, 509, 79, 165, 181, 16, 455, 72, 103, 328, 1, 18, 167, 36, 308, 85, 439, 50, 440, 256, 176, 136, 71, 479, 72, 359, 283, 124, 70, 193, 145, 67, 152, 445, 269, 315, 92, 99, 133, 29, 301, 72, 359, 489, 231, 330, 467, 423, 8, 266, 263, 228, 299, 93, 45, 226, 30, 56, 72, 420, 32, 317, 65, 469, 412, 415, 268, 342, 319, 11, 324, 162, 149, 307, 137, 72, 420, 407, 329, 280, 446, 341, 381, 351, 210, 245, 203, 31, 227, 461, 157, 172, 376, 103, 460, 355, 147, 129, 366, 169, 202, 335, 96, 408, 334, 177, 53, 435, 438, 0, 464, 460, 41, 153, 150, 207, 400, 220, 364, 168, 174, 306, 110, 403, 248, 271, 312, 464, 222, 424, 476, 146, 115, 10, 491, 373, 206, 495, 64, 322, 411, 253, 318, 468, 510, 82, 121, 483, 436, 123, 298, 401, 251, 175, 273, 452, 285, 83, 338, 350, 397, 425, 222, 405, 277, 78, 178, 511, 387, 470, 360, 219, 218, 243, 368, 180, 186, 164, 239, 437, 422, 86, 309, 221, 361, 480, 484, 2, 224, 498, 204, 432, 443, 463, 164, 239, 437, 457, 302, 122, 117, 286, 179, 395, 14, 434, 353, 296, 22, 195, 198, 164, 311, 52, 288, 453, 142, 217, 6, 190, 105, 238, 230, 138, 444, 303, 55, 429, 233, 270, 112, 24, 33, 161, 81, 275, 356, 182, 290, 488, 73, 143, 379, 485, 493, 233, 300, 51, 406, 151, 7, 48, 458, 95, 252, 336, 155, 66, 89, 362, 76, 487, 63, 344, 265, 431, 462, 173, 465, 46, 114, 12, 258, 346, 357, 54, 320, 13, 365, 255, 255, 51, 232, 183, 358, 289, 131, 284, 375, 430, 40, 257, 75, 58, 62, 98] + 90: [176, 406, 354, 332, 208, 463, 72, 268, 355, 320, 285, 148, 49, 192, 317, 203, 472, 73, 392, 82, 163, 381, 510, 364, 182, 455, 494, 158, 83, 186, 279, 319, 132, 232, 73, 122, 403, 177, 31, 474, 25, 173, 374, 408, 449, 34, 24, 88, 20, 439, 468, 73, 122, 328, 56, 246, 447, 417, 37, 171, 94, 23, 112, 509, 36, 114, 260, 272, 73, 98, 180, 254, 22, 101, 222, 154, 479, 461, 255, 508, 215, 467, 238, 322, 278, 245, 346, 303, 511, 211, 249, 128, 304, 169, 416, 247, 445, 41, 307, 10, 341, 405, 51, 55, 74, 81, 200, 338, 440, 340, 86, 315, 145, 201, 419, 336, 299, 306, 388, 51, 253, 44, 438, 2, 490, 156, 361, 348, 241, 337, 217, 344, 422, 368, 61, 170, 430, 316, 328, 172, 263, 185, 66, 107, 47, 133, 226, 459, 7, 206, 397, 183, 390, 430, 52, 175, 286, 134, 493, 106, 28, 318, 301, 121, 507, 308, 297, 409, 184, 478, 14, 18, 434, 96, 310, 465, 157, 110, 360, 147, 224, 68, 67, 323, 27, 488, 481, 14, 18, 300, 162, 239, 30, 339, 442, 89, 84, 143, 458, 95, 382, 214, 485, 487, 451, 151, 410, 225, 290, 418, 257, 142, 356, 174, 359, 97, 218, 166, 376, 64, 486, 451, 90, 354, 153, 29, 1, 357, 196, 205, 150, 256, 187, 277, 433, 160, 77, 498, 451, 90, 125, 421, 179, 108, 45, 327, 350, 131, 432, 194, 420, 70, 251, 500, 391, 451, 90, 125, 250, 475, 330, 136, 258, 124, 189, 471, 313, 155, 444, 149, 191, 369, 58, 476, 450, 329, 141, 3, 489, 386, 412, 373, 140, 460, 244, 423, 282, 402, 505, 58, 476, 120, 271, 99, 137, 334, 380, 87, 6, 266, 321, 234, 78, 76, 363, 91, 58, 151, 293, 352, 135, 35, 228, 349, 213, 506, 26, 167, 12, 248, 209, 197, 464, 11, 476, 165, 16, 484, 287, 40, 207, 220, 387, 138, 347, 59, 309, 372, 401, 415, 470, 212, 293, 294, 274, 116, 60, 168, 62, 389, 202, 283, 230, 5, 280, 204, 393, 443, 291, 454, 139, 452, 144, 378, 495, 426, 342, 181, 223, 152, 80, 85, 404, 109, 117, 370, 292, 262, 50, 367, 93, 265, 289, 190, 366, 216, 333, 365, 13, 270, 424, 117, 370, 79, 343, 448, 377, 411, 491, 242, 502, 243, 9, 43, 198, 221, 326, 385, 117, 499, 492, 39, 231, 102, 501, 21, 0, 237, 503, 446, 57, 345, 384, 69, 358, 100, 103, 428, 164, 298, 65, 302, 466, 496, 497, 276, 469, 240, 71, 396, 161, 435, 100, 103, 199, 441, 504, 159, 425, 284, 324, 281, 104, 288, 111, 437, 8, 429, 431, 100, 370, 473, 311, 269, 19, 353, 118, 46, 229, 188, 129, 17, 456, 267, 54, 362, 63, 38, 264, 314, 457, 48, 413, 335, 400, 235, 115, 75, 436, 480, 399, 427, 127, 375, 32, 398, 482, 331, 113, 371, 53, 105, 312, 453, 462, 259, 305, 483, 126, 383, 4, 32, 119, 407, 379, 193, 146, 414, 395, 178, 296, 15, 351, 394, 275, 195, 130, 4, 32, 33, 92, 210, 219, 233, 42, 295, 227, 273, 252, 477, 123, 325, 236, 261] + 91: [457, 471, 381, 246, 95, 470, 278, 415, 228, 324, 329, 444, 325, 198, 400, 63, 292, 457, 266, 8, 397, 407, 14, 276, 483, 158, 488, 258, 354, 353, 424, 430, 447, 19, 457, 306, 307, 302, 253, 151, 216, 467, 441, 169, 36, 477, 72, 501, 17, 137, 442, 50, 471, 489, 480, 267, 183, 409, 66, 248, 305, 287, 189, 122, 141, 323, 317, 154, 112, 65, 32, 148, 332, 288, 283, 7, 146, 322, 410, 143, 314, 377, 463, 498, 416, 112, 144, 279, 140, 87, 190, 485, 272, 149, 0, 181, 57, 476, 274, 40, 49, 171, 112, 144, 423, 345, 244, 232, 12, 46, 59, 139, 118, 20, 357, 5, 439, 390, 30, 367, 65, 398, 249, 346, 376, 379, 380, 384, 391, 404, 411, 413, 465, 468, 495, 507, 85, 61, 27, 491, 454, 344, 405, 271, 263, 472, 105, 275, 213, 252, 269, 15, 492, 85, 61, 511, 100, 44, 104, 414, 234, 177, 431, 486, 291, 191, 356, 340, 128, 133, 500, 28, 176, 178, 3, 9, 145, 120, 496, 206, 162, 453, 460, 311, 54, 365, 235, 330, 225, 1, 408, 81, 298, 247, 239, 259, 297, 132, 394, 205, 462, 2, 300, 70, 330, 225, 487, 481, 426, 449, 173, 80, 23, 375, 393, 479, 13, 282, 88, 219, 230, 330, 466, 119, 16, 464, 236, 11, 60, 250, 110, 320, 318, 490, 241, 429, 508, 327, 330, 466, 64, 281, 41, 43, 204, 420, 469, 438, 75, 456, 150, 48, 406, 482, 192, 330, 28, 369, 493, 494, 497, 502, 33, 34, 97, 103, 121, 199, 201, 203, 207, 208, 264, 51, 161, 62, 338, 67, 73, 309, 102, 211, 242, 450, 510, 182, 386, 484, 436, 264, 142, 403, 138, 180, 473, 31, 331, 155, 111, 474, 135, 39, 168, 136, 378, 117, 264, 142, 328, 452, 6, 74, 270, 69, 262, 134, 113, 47, 505, 310, 350, 256, 226, 401, 186, 42, 165, 107, 301, 101, 196, 255, 286, 280, 92, 437, 370, 342, 37, 129, 210, 337, 90, 98, 184, 289, 273, 109, 166, 21, 200, 257, 4, 368, 296, 131, 217, 210, 186, 157, 417, 448, 308, 366, 418, 458, 25, 223, 326, 360, 372, 445, 455, 29, 76, 337, 383, 79, 130, 260, 343, 364, 388, 402, 435, 10, 114, 123, 124, 152, 159, 374, 227, 163, 96, 358, 362, 24, 355, 53, 222, 218, 336, 475, 106, 389, 461, 91, 374, 227, 434, 238, 35, 160, 319, 126, 22, 56, 77, 422, 395, 167, 71, 261, 399, 499, 227, 369, 187, 237, 240, 245, 277, 293, 294, 312, 335, 351, 371, 382, 419, 427, 221, 127, 303, 315, 78, 55, 26, 290, 94, 83, 175, 313, 193, 299, 233, 224, 421, 221, 194, 433, 197, 268, 425, 156, 185, 18, 321, 188, 89, 432, 58, 341, 295, 443, 153, 451, 82, 387, 209, 504, 251, 359, 172, 84, 195, 509, 202, 316, 115, 116, 52, 153, 127, 361, 373, 339, 174, 284, 45, 352, 108, 229, 349, 214, 38, 220, 459, 86, 212, 164, 503, 93, 125, 333, 179, 231, 254, 99, 396, 68, 334, 446, 347, 440, 412, 164, 164, 383, 348, 506, 147, 363, 478, 265, 385, 428, 170, 215, 243, 285, 304, 392] +layer_updates_per_iter: 0 +num_slots: 544 diff --git a/examples/configs/curated/lookup.yaml b/examples/configs/curated/lookup.yaml index e813d6f8f0fe..5f2a7cd9536c 100644 --- a/examples/configs/curated/lookup.yaml +++ b/examples/configs/curated/lookup.yaml @@ -14,6 +14,26 @@ config_path: examples/configs/curated/qwen3-next.yaml scenario: Max Throughput gpu_compatibility: "Any" +- model: Qwen/Qwen3.8-2.4T-A95B-FP8 + arch: Qwen3_5MoeForCausalLM + config_path: examples/configs/curated/qwen3.8-low-latency.yaml + scenario: Min Latency (No MTP) + gpu_compatibility: "B200, B300, GB200, GB300" +- model: Qwen/Qwen3.8-2.4T-A95B-FP8 + arch: Qwen3_5MoeForCausalLM + config_path: examples/configs/curated/qwen3.8-low-latency-mtp3.yaml + scenario: Min Latency (MTP3) + gpu_compatibility: "B200, B300, GB200, GB300" +- model: Qwen/Qwen3.8-2.4T-A95B-FP8 + arch: Qwen3_5MoeForCausalLM + config_path: examples/configs/curated/qwen3.8-high-throughput.yaml + scenario: Max Throughput (Static EPLB, No MTP) + gpu_compatibility: "B200, B300, GB200, GB300" +- model: Qwen/Qwen3.8-2.4T-A95B-FP8 + arch: Qwen3_5MoeForCausalLM + config_path: examples/configs/curated/qwen3.8-high-throughput-mtp3.yaml + scenario: Max Throughput (Static EPLB, MTP3) + gpu_compatibility: "B200, B300, GB200, GB300" - model: nvidia/Qwen3.5-397B-A17B-NVFP4 arch: Qwen3_5MoeForCausalLM config_path: examples/configs/curated/qwen3.5.yaml diff --git a/examples/configs/curated/qwen3.8-high-throughput-mtp3.yaml b/examples/configs/curated/qwen3.8-high-throughput-mtp3.yaml new file mode 100644 index 000000000000..869abe84abb6 --- /dev/null +++ b/examples/configs/curated/qwen3.8-high-throughput-mtp3.yaml @@ -0,0 +1,34 @@ +# Copyright (c) 2026, NVIDIA CORPORATION. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +tensor_parallel_size: 32 +moe_expert_parallel_size: 32 +pipeline_parallel_size: 1 +enable_attention_dp: true +enable_lm_head_tp_in_adp: true +disable_mm_encoder: true +max_batch_size: 36 +max_num_tokens: 1024 +max_seq_len: 9472 +enable_chunked_prefill: true +cuda_graph_config: + enable_padding: true + max_batch_size: 36 +kv_cache_config: + enable_block_reuse: false + use_kv_cache_manager_v2: false + free_gpu_memory_fraction: 0.78 + dtype: fp8 + mamba_ssm_cache_dtype: bfloat16 +moe_config: + backend: DEEPGEMM + max_num_tokens: 32768 + use_low_precision_moe_combine: true + load_balancer: examples/configs/curated/eplb/qwen3.8-ep32-static544-mtp3.yaml +speculative_config: + decoding_type: MTP + max_draft_len: 3 +stream_interval: 10 +print_iter_log: false +trust_remote_code: true +num_postprocess_workers: 4 diff --git a/examples/configs/curated/qwen3.8-high-throughput.yaml b/examples/configs/curated/qwen3.8-high-throughput.yaml new file mode 100644 index 000000000000..5b873a352eb0 --- /dev/null +++ b/examples/configs/curated/qwen3.8-high-throughput.yaml @@ -0,0 +1,32 @@ +# Copyright (c) 2026, NVIDIA CORPORATION. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +tensor_parallel_size: 32 +moe_expert_parallel_size: 32 +pipeline_parallel_size: 1 +enable_attention_dp: true +enable_lm_head_tp_in_adp: true +disable_mm_encoder: true +max_batch_size: 104 +max_num_tokens: 8448 +max_seq_len: 9472 +enable_chunked_prefill: false +cuda_graph_config: + enable_padding: true + max_batch_size: 104 +kv_cache_config: + enable_block_reuse: false + use_kv_cache_manager_v2: true + free_gpu_memory_fraction: 0.92 + avg_seq_len: 9216 + dtype: fp8 + mamba_ssm_cache_dtype: bfloat16 +moe_config: + backend: DEEPGEMM + max_num_tokens: 65536 + use_low_precision_moe_combine: true + load_balancer: examples/configs/curated/eplb/qwen3.8-ep32-static544.yaml +stream_interval: 10 +print_iter_log: false +trust_remote_code: true +num_postprocess_workers: 4 diff --git a/examples/configs/curated/qwen3.8-low-latency-mtp3.yaml b/examples/configs/curated/qwen3.8-low-latency-mtp3.yaml new file mode 100644 index 000000000000..d5da0b955db7 --- /dev/null +++ b/examples/configs/curated/qwen3.8-low-latency-mtp3.yaml @@ -0,0 +1,33 @@ +# Copyright (c) 2026, NVIDIA CORPORATION. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +tensor_parallel_size: 16 +moe_expert_parallel_size: 1 +pipeline_parallel_size: 1 +enable_attention_dp: false +enable_lm_head_tp_in_adp: false +disable_mm_encoder: true +max_batch_size: 256 +max_num_tokens: 8704 +max_seq_len: 9472 +enable_chunked_prefill: false +allreduce_strategy: AUTO +cuda_graph_config: + enable_padding: true + max_batch_size: 256 +kv_cache_config: + enable_block_reuse: false + use_kv_cache_manager_v2: false + free_gpu_memory_fraction: 0.78 + dtype: fp8 + mamba_ssm_cache_dtype: bfloat16 +moe_config: + backend: TRTLLM + max_num_tokens: 8704 +speculative_config: + decoding_type: MTP + max_draft_len: 3 +stream_interval: 10 +print_iter_log: false +trust_remote_code: true +num_postprocess_workers: 4 diff --git a/examples/configs/curated/qwen3.8-low-latency.yaml b/examples/configs/curated/qwen3.8-low-latency.yaml new file mode 100644 index 000000000000..04200313f177 --- /dev/null +++ b/examples/configs/curated/qwen3.8-low-latency.yaml @@ -0,0 +1,28 @@ +# Copyright (c) 2026, NVIDIA CORPORATION. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +tensor_parallel_size: 16 +moe_expert_parallel_size: 1 +pipeline_parallel_size: 1 +enable_attention_dp: false +enable_lm_head_tp_in_adp: false +disable_mm_encoder: true +max_batch_size: 256 +max_num_tokens: 8960 +max_seq_len: 9472 +enable_chunked_prefill: false +allreduce_strategy: AUTO +cuda_graph_config: + enable_padding: true + max_batch_size: 256 +kv_cache_config: + enable_block_reuse: false + free_gpu_memory_fraction: 0.8 + dtype: auto + mamba_ssm_cache_dtype: bfloat16 +moe_config: + backend: TRTLLM +stream_interval: 10 +print_iter_log: false +trust_remote_code: true +num_postprocess_workers: 4 diff --git a/scripts/generate_config_table.py b/scripts/generate_config_table.py index fc73c29d8d90..7539d4b5be81 100644 --- a/scripts/generate_config_table.py +++ b/scripts/generate_config_table.py @@ -23,6 +23,8 @@ from dataclasses import asdict, dataclass from pathlib import Path +import yaml + SCRIPT_DIR = Path(__file__).parent.resolve() REPO_ROOT = SCRIPT_DIR.parent @@ -72,6 +74,10 @@ "display_name": "Qwen3-Next-80B", "url": "https://huggingface.co/Qwen/Qwen3-Next-80B-A3B-Thinking", }, + "Qwen/Qwen3.8-2.4T-A95B-FP8": { + "display_name": "Qwen3.8-2.4T-A95B (FP8)", + "url": "https://huggingface.co/Qwen/Qwen3.8-2.4T-A95B-FP8", + }, "nvidia/Qwen3.5-397B-A17B-NVFP4": { "display_name": "Qwen3.5-397B-A17B (NVFP4)", "url": "https://huggingface.co/nvidia/Qwen3.5-397B-A17B-NVFP4", @@ -142,6 +148,36 @@ def _model_display_and_url(model: str) -> tuple[str, str]: return model, "" +def _references_repo_relative_path(config_path: str) -> bool: + """Return True if the config points at another repo file through a relative path. + + Such a path (for example ``moe_config.load_balancer``) is opened relative to the + working directory, so the serve command has to run from the TensorRT LLM directory. + """ + try: + config = yaml.safe_load((REPO_ROOT / config_path).read_text()) + except (OSError, yaml.YAMLError): + return False + + def walk(node) -> bool: + if isinstance(node, dict): + return any(walk(value) for value in node.values()) + if isinstance(node, list): + return any(walk(item) for item in node) + if isinstance(node, str) and not os.path.isabs(node): + return (REPO_ROOT / node).is_file() + return False + + return walk(config) + + +def _serve_command(model: str, config_path: str) -> str: + command = f"trtllm-serve {model} --config ${{TRTLLM_DIR}}/{config_path}" + if _references_repo_relative_path(config_path): + command = f'cd "${{TRTLLM_DIR}}" && {command}' + return command + + def build_curated_rows(yaml_path: Path) -> list[CuratedRow]: """Parse curated recipe YAML and return CuratedRow entries for JSON serialization.""" curated_list = CuratedRecipeList.from_yaml(Path(yaml_path)) @@ -154,7 +190,7 @@ def build_curated_rows(yaml_path: Path) -> list[CuratedRow]: config_filename = os.path.basename(config_path) config_github_url = f"https://github.com/NVIDIA/TensorRT-LLM/blob/main/{config_path}" config_raw_url = f"https://raw.githubusercontent.com/NVIDIA/TensorRT-LLM/main/{config_path}" - command = f"trtllm-serve {entry.model} --config ${{TRTLLM_DIR}}/{config_path}" + command = _serve_command(entry.model, config_path) rows.append( CuratedRow( model=entry.model, @@ -211,7 +247,7 @@ def build_rows(yaml_path: Path) -> list[RecipeRow]: else assign_profile(len(entries), idx, conc) ) - command = f"trtllm-serve {model} --config ${{TRTLLM_DIR}}/{config_path}" + command = _serve_command(model, config_path) config_filename = os.path.basename(config_path) config_github_url = (