diff --git a/.gitignore b/.gitignore index 988066e..ecbe160 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,16 @@ -build* +build-* pass/build/* +miniconda3-* +proteus-venv __pycache__ - +*.bc +*.o +*.ll +*.x +*.trace +*.csv +*.sw? +.fuse* +.DS_Store +.vscode +*.asc diff --git a/benchmarks/README.md b/benchmarks/README.md new file mode 100644 index 0000000..39d7c36 --- /dev/null +++ b/benchmarks/README.md @@ -0,0 +1,22 @@ +The driver script builds, runs benchmark programs, and collects measurements. +Execute it with `--help` for detailed options. +``` +python driver.py --help" +``` + +The `runscripts` directory contains a script per machine (nvidia, amd) that +invokes the driver to collect all measurements for reproducing the plots/tables +in the manuscript. + +The `vis-scripts` directory contains visualization scripts to create plots and +tables after measurements are collected. +Scripts are named after the figure/table they generate in the manuscript. +The `plot-all.sh` script creates all plots/tables invoking individual scripts. + +The directory `cuda` contains original (AOT-only) and Proteus implementations of +HeCBench programs, and the directory `cuda-jitify` contains Jitify +implementations of those programs for NVIDIA. +The directory `hip` contains original (AOT-only) and Proteus implementations of +HeCBench programs for AMD. + +The directory `external/jitify` contains NVIDIA's Jitify implementation. \ No newline at end of file diff --git a/benchmarks/cuda-jitify/adam/LICENSE b/benchmarks/cuda-jitify/adam/LICENSE new file mode 100644 index 0000000..5ab6112 --- /dev/null +++ b/benchmarks/cuda-jitify/adam/LICENSE @@ -0,0 +1,224 @@ +Copyright 2021- The Colossal-ai Authors. All rights reserved. + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +## Some of colossal-ai's code is derived from DeepSpeed, which is subject to the following copyright notice: + +Copyright (c) Microsoft Corporation. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE \ No newline at end of file diff --git a/benchmarks/cuda-jitify/adam/Makefile b/benchmarks/cuda-jitify/adam/Makefile new file mode 100644 index 0000000..29d0107 --- /dev/null +++ b/benchmarks/cuda-jitify/adam/Makefile @@ -0,0 +1,72 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC ?= nvcc +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = +JIT_PATH ?=/p/vast1/koparasy/JIT/jit/build-lassen/ +JIT ?= no + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + +program = adam$(SUFFIX).x + +source = main.cu + +obj = $(source:.cu=$(SUFFIX).o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := $(EXTRA_CFLAGS) -std=c++14 --cuda-gpu-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia + +# Linker Flags +LDFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lnvrtc -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g -DDEBUG + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3# -ffast-math +endif + +ifeq ($(JIT),yes) + LIBLLVM_PATH=$(dir $(realpath $(CC)))../lib + CFLAGS += -DENABLE_JIT + LDFLAGS += -lnvptxcompiler_static +endif + +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) Makefile + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +%$(SUFFIX).o: %.cu Makefile + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf *.x *.o + +run: $(program) + $(LAUNCHER) ./$(program) 10000 200 100 diff --git a/benchmarks/cuda-jitify/adam/Makefile.nvcc b/benchmarks/cuda-jitify/adam/Makefile.nvcc new file mode 100644 index 0000000..1ac1065 --- /dev/null +++ b/benchmarks/cuda-jitify/adam/Makefile.nvcc @@ -0,0 +1,56 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC = nvcc -ccbin=clang++ +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +program = main + +source = main.cu + +obj = $(source:.cu=.o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := $(EXTRA_CFLAGS) -std=c++14 -Xcompiler -Wall -arch=$(ARCH) + +# Linker Flags +LDFLAGS = -lcuda -lcudart -lnvrtc + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g -DDEBUG + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3 --use_fast_math +endif +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) Makefile + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +%.o: %.cu Makefile + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf $(program) $(obj) + +run: $(program) + $(LAUNCHER) ./$(program) 10000 200 100 diff --git a/benchmarks/cuda-jitify/adam/experiments.json b/benchmarks/cuda-jitify/adam/experiments.json new file mode 100644 index 0000000..0c925d5 --- /dev/null +++ b/benchmarks/cuda-jitify/adam/experiments.json @@ -0,0 +1,9 @@ +{ + "name": "adam", + "executables": { + "jitify": "adam-jit.x" + }, + "inputs": { + "default": "160000 1600 1000" + } +} diff --git a/benchmarks/cuda-jitify/adam/main.cu b/benchmarks/cuda-jitify/adam/main.cu new file mode 100644 index 0000000..0f57ab2 --- /dev/null +++ b/benchmarks/cuda-jitify/adam/main.cu @@ -0,0 +1,163 @@ +#include "../../external/jitify/jitify.hpp" +#include "reference.h" +#include +#include +#include +#include +#include + +const char *kernel_source = + "the_kernel\n" + "#include \"reference.h\"\n" + "template\n" + "__global__\n" + "void adam (\n" + " T* __restrict__ p,\n" + " T* __restrict__ m,\n" + " T* __restrict__ v,\n" + " const G* __restrict__ g,\n" + " const float b2,\n" + " const float eps,\n" + " const float grad_scale,\n" + " const float step_size,\n" + " adamMode_t mode,\n" + " const float decay)\n" + "{\n" + " const size_t i = blockIdx.x * blockDim.x + threadIdx.x;\n" + " const size_t totThreads = gridDim.x*blockDim.x;\n" + "\n" + " for (size_t j = i; j < vector_size; j += totThreads) {\n" + " for (int t = 0; t < time_step; t++) {\n" + " T scaled_grad = g[j]/grad_scale;\n" + " m[j] = b1*m[j] + (1.f-b1)*scaled_grad;\n" + " v[j] = b2*v[j] + (1.f-b2)*scaled_grad*scaled_grad;\n" + " float m_corrected = m[j] / (1.f-powf(b1, t));\n" + " float v_corrected = v[j] / (1.f-powf(b2, t));\n" + " float denom;\n" + " if (mode == ADAM_MODE_0)\n" + " denom = sqrtf(v_corrected + eps);\n" + " else // Mode 1\n" + " denom = sqrtf(v_corrected) + eps;\n" + " float update = (m_corrected/denom) + (decay*p[j]);\n" + " p[j] -= (step_size*update);\n" + " }\n" + " }\n" + "}\n"; + +int main(int argc, char *argv[]) { + if (argc != 4) { + printf("Usage: %s \n", + argv[0]); + return 1; + } + + static jitify::JitCache kernel_cache; + jitify::Program program = kernel_cache.program( + kernel_source, {}, {"-std=c++20", "-arch=sm_70", "--time=jitify.trace"}); + + const int vector_size = atoi(argv[1]); + const int time_step = atoi(argv[2]); + const int repeat = atoi(argv[3]); + + size_t size_bytes = vector_size * sizeof(float); + + float *m = (float *)malloc(size_bytes); + float *v = (float *)malloc(size_bytes); + float *g = (float *)malloc(size_bytes); + float *p = (float *)malloc(size_bytes); + float *r = (float *)malloc(size_bytes); + + srand(123); + for (int i = 0; i < vector_size; i++) { + m[i] = rand() / (float)RAND_MAX; + v[i] = rand() / (float)RAND_MAX; + g[i] = rand() / (float)RAND_MAX; + r[i] = p[i] = rand() / (float)RAND_MAX; + } + + float *d_m, *d_v, *d_g, *d_p; + + cudaMalloc((void **)&d_m, size_bytes); + cudaMemcpy(d_m, m, size_bytes, cudaMemcpyHostToDevice); + + cudaMalloc((void **)&d_v, size_bytes); + cudaMemcpy(d_v, v, size_bytes, cudaMemcpyHostToDevice); + + cudaMalloc((void **)&d_g, size_bytes); + cudaMemcpy(d_g, g, size_bytes, cudaMemcpyHostToDevice); + + cudaMalloc((void **)&d_p, size_bytes); + cudaMemcpy(d_p, p, size_bytes, cudaMemcpyHostToDevice); + + // Arbitrary constants + const float step_size = 1e-3f; + const float decay = 0.5f; + const float beta1 = 0.9f; + const float beta2 = 0.999f; + const float eps = 1e-8f; + const float grad_scale = 256.f; + + const int threadsPerBlock = 256; + const dim3 grids((vector_size + threadsPerBlock - 1) / threadsPerBlock); + const dim3 blocks(threadsPerBlock); + + adamMode_t mode = ADAM_MODE_0; + + cudaDeviceSynchronize(); + using jitify::reflection::Type; + using jitify::reflection::type_of; + + auto start = std::chrono::steady_clock::now(); + auto configed = program.kernel("adam") + .instantiate(Type{}, Type{}, time_step, + vector_size, beta1) + .configure(grids, blocks); + + for (int i = 0; i < repeat; i++) { + configed.launch(d_p, d_m, d_v, d_g, beta2, eps, grad_scale, step_size, mode, + decay); + } + + cudaDeviceSynchronize(); + auto end = std::chrono::steady_clock::now(); + auto time = + std::chrono::duration_cast(end - start).count(); + printf("Average kernel execution time %f (ms)\n", time * 1e-6f / repeat); + + cudaMemcpy(p, d_p, size_bytes, cudaMemcpyDeviceToHost); + + cudaFree(d_p); + cudaFree(d_m); + cudaFree(d_v); + cudaFree(d_g); + + // verify + // reference( + // repeat, + // r, m, v, g, + // beta1, beta2, + // eps, + // grad_scale, + // step_size, + // time_step, + // vector_size, + // mode, + // decay); + // + // bool ok = true; + // for (int i = 0; i < vector_size; i++) { + // if (r[i] - p[i] > 1e-3f) { + // ok = false; + // break; + // } + // } + // printf("%s\n", ok ? "PASS" : "FAIL"); + + free(p); + free(m); + free(v); + free(g); + free(r); + return 0; +} diff --git a/benchmarks/cuda-jitify/adam/reference.h b/benchmarks/cuda-jitify/adam/reference.h new file mode 100644 index 0000000..99c8aad --- /dev/null +++ b/benchmarks/cuda-jitify/adam/reference.h @@ -0,0 +1,42 @@ +typedef enum { + ADAM_MODE_0 = 0, // eps under square root + ADAM_MODE_1 = 1 // eps outside square root +} adamMode_t; + +template +void reference ( + int repeat, + T* p, + T* m, + T* v, + const G* g, + const float b1, + const float b2, + const float eps, + const float grad_scale, + const float step_size, + const int time_step, + const size_t vector_size, + adamMode_t mode, + const float decay) +{ + for (int i = 0; i < repeat; i++) { + for (size_t j = 0; j < vector_size; j++) { + for (int t = 0; t < time_step; t++) { + T scaled_grad = g[j]/grad_scale; + m[j] = b1*m[j] + (1.f-b1)*scaled_grad; + v[j] = b2*v[j] + (1.f-b2)*scaled_grad*scaled_grad; + float m_corrected = m[j] / (1.f-powf(b1, t)); + float v_corrected = v[j] / (1.f-powf(b2, t)); + float denom; + if (mode == ADAM_MODE_0) + denom = sqrtf(v_corrected + eps); + else // Mode 1 + denom = sqrtf(v_corrected) + eps; + float update = (m_corrected/denom) + (decay*p[j]); + p[j] -= (step_size*update); + } + } + } +} + diff --git a/benchmarks/cuda-jitify/feynman-kac/Makefile b/benchmarks/cuda-jitify/feynman-kac/Makefile new file mode 100644 index 0000000..4505e63 --- /dev/null +++ b/benchmarks/cuda-jitify/feynman-kac/Makefile @@ -0,0 +1,73 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC ?= nvcc +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = +JIT_PATH ?=/p/vast1/koparasy/JIT/jit/build-lassen/ +JIT ?= no + + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + +program = fk$(SUFFIX).x + +source = main.cu + +obj = $(source:.cu=$(SUFFIX).o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := $(EXTRA_CFLAGS) -std=c++20 -Wall --offload-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia + +# Linker Flags +LDFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lnvrtc -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl + + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g -DDEBUG + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3 +endif + +ifeq ($(JIT),yes) + LDFLAGS += -lnvptxcompiler_static +endif + +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) Makefile + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +%$(SUFFIX).o: %.cu util.h kernel.h Makefile + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf $(program) $(obj) + +run: $(program) + $(LAUNCHER) ./$(program) 10 + diff --git a/benchmarks/cuda-jitify/feynman-kac/experiments.json b/benchmarks/cuda-jitify/feynman-kac/experiments.json new file mode 100644 index 0000000..43dc722 --- /dev/null +++ b/benchmarks/cuda-jitify/feynman-kac/experiments.json @@ -0,0 +1,9 @@ +{ + "name": "feynman-kac", + "executables": { + "jitify": "fk-jit.x" + }, + "inputs" : { + "default":"1" + } +} diff --git a/benchmarks/cuda-jitify/feynman-kac/kernel.cuh b/benchmarks/cuda-jitify/feynman-kac/kernel.cuh new file mode 100644 index 0000000..78599d8 --- /dev/null +++ b/benchmarks/cuda-jitify/feynman-kac/kernel.cuh @@ -0,0 +1,84 @@ +const char* const kernel_h = "kernel.h\n" +"#include \"util.h\"\n" +"template\n" +"__global__\n" +" void\n" +" fk(int seed, const double a,\n" +" const double b, const double h, const double rth,\n" +" int *__restrict__ n_inside, double *__restrict__ err) {\n" +" int i = blockIdx.x * blockDim.x + threadIdx.x + 1;\n" +" int j = blockIdx.y * blockDim.y + threadIdx.y + 1;\n" +" if (i <= ni && j <= nj) {\n" +" double x =\n" +" ((double)(nj - j) * (-a) + (double)(j - 1) * a) / (double)(nj - 1);\n" +"\n" +" double y =\n" +" ((double)(ni - i) * (-b) + (double)(i - 1) * b) / (double)(ni - 1);\n" +"\n" +" double dx;\n" +" double dy;\n" +" double us;\n" +" double ut;\n" +" double vh;\n" +" double vs;\n" +" double x1;\n" +" double x2;\n" +" double w;\n" +" double w_exact;\n" +" double we;\n" +" double wt;\n" +" double chk = pow(x / a, 2.0) + pow(y / b, 2.0);\n" +"\n" +" if (1.0 < chk) {\n" +" w_exact = 1.0;\n" +" wt = 1.0;\n" +" } else {\n" +" atomicAdd(n_inside, 1);\n" +" w_exact = exp(pow(x / a, 2.0) + pow(y / b, 2.0) - 1.0);\n" +" wt = 0.0;\n" +" for (int k = 0; k < N; k++) {\n" +" x1 = x;\n" +" x2 = y;\n" +" w = 1.0;\n" +" chk = 0.0;\n" +" while (chk < 1.0) {\n" +" ut = r8_uniform_01(&seed);\n" +" if (ut < 1.0 / 2.0) {\n" +" us = r8_uniform_01(&seed) - 0.5;\n" +" if (us < 0.0)\n" +" dx = -rth;\n" +" else\n" +" dx = rth;\n" +" } else {\n" +" dx = 0.0;\n" +" }\n" +"\n" +" ut = r8_uniform_01(&seed);\n" +" if (ut < 1.0 / 2.0) {\n" +" us = r8_uniform_01(&seed) - 0.5;\n" +" if (us < 0.0)\n" +" dy = -rth;\n" +" else\n" +" dy = rth;\n" +" } else {\n" +" dy = 0.0;\n" +" }\n" +" vs = potential(a, b, x1, x2);\n" +" x1 = x1 + dx;\n" +" x2 = x2 + dy;\n" +"\n" +" vh = potential(a, b, x1, x2);\n" +"\n" +" we = (1.0 - h * vs) * w;\n" +" w = w - 0.5 * h * (vh * we + vs * w);\n" +"\n" +" chk = pow(x1 / a, 2.0) + pow(x2 / b, 2.0);\n" +" }\n" +" wt += w;\n" +" }\n" +" wt /= (double)(N);\n" +" atomicAdd(err, pow(w_exact - wt, 2.0));\n" +" }\n" +" }\n" +"}\n" +; diff --git a/benchmarks/cuda-jitify/feynman-kac/kernel.h b/benchmarks/cuda-jitify/feynman-kac/kernel.h new file mode 100644 index 0000000..f3a89b5 --- /dev/null +++ b/benchmarks/cuda-jitify/feynman-kac/kernel.h @@ -0,0 +1,83 @@ +__global__ +#ifdef ENABLE_JIT + __attribute__((annotate("jit", 5, 6, 7, 8))) +#endif + void + fk(const int ni, const int nj, int seed, const int N, const double a, + const double b, const double h, const double rth, + int *__restrict__ n_inside, double *__restrict__ err) { + int i = blockIdx.x * blockDim.x + threadIdx.x + 1; + int j = blockIdx.y * blockDim.y + threadIdx.y + 1; + if (i <= ni && j <= nj) { + double x = + ((double)(nj - j) * (-a) + (double)(j - 1) * a) / (double)(nj - 1); + + double y = + ((double)(ni - i) * (-b) + (double)(i - 1) * b) / (double)(ni - 1); + + double dx; + double dy; + double us; + double ut; + double vh; + double vs; + double x1; + double x2; + double w; + double w_exact; + double we; + double wt; + double chk = pow(x / a, 2.0) + pow(y / b, 2.0); + + if (1.0 < chk) { + w_exact = 1.0; + wt = 1.0; + } else { + atomicAdd(n_inside, 1); + w_exact = exp(pow(x / a, 2.0) + pow(y / b, 2.0) - 1.0); + wt = 0.0; + for (int k = 0; k < N; k++) { + x1 = x; + x2 = y; + w = 1.0; + chk = 0.0; + while (chk < 1.0) { + ut = r8_uniform_01(&seed); + if (ut < 1.0 / 2.0) { + us = r8_uniform_01(&seed) - 0.5; + if (us < 0.0) + dx = -rth; + else + dx = rth; + } else { + dx = 0.0; + } + + ut = r8_uniform_01(&seed); + if (ut < 1.0 / 2.0) { + us = r8_uniform_01(&seed) - 0.5; + if (us < 0.0) + dy = -rth; + else + dy = rth; + } else { + dy = 0.0; + } + vs = potential(a, b, x1, x2); + x1 = x1 + dx; + x2 = x2 + dy; + + vh = potential(a, b, x1, x2); + + we = (1.0 - h * vs) * w; + w = w - 0.5 * h * (vh * we + vs * w); + + chk = pow(x1 / a, 2.0) + pow(x2 / b, 2.0); + } + wt += w; + } + wt /= (double)(N); + atomicAdd(err, pow(w_exact - wt, 2.0)); + } + } +} diff --git a/benchmarks/cuda-jitify/feynman-kac/main.cu b/benchmarks/cuda-jitify/feynman-kac/main.cu new file mode 100644 index 0000000..93e2600 --- /dev/null +++ b/benchmarks/cuda-jitify/feynman-kac/main.cu @@ -0,0 +1,207 @@ +/* + Purpose: + + MAIN is the main program for FEYNMAN_KAC_2D. + + Discussion: + + This program is derived from section 2.5, exercise 2.2 of Petersen and + Arbenz. + + The problem is to determine the solution U(X,Y) of the following + partial differential equation: + + (1/2) Laplacian U - V(X,Y) * U = 0, + + inside the elliptic domain D: + + D = { (X,Y) | (X/A)^2+(Y/B)^2 <= 1 } + + with the boundary condition U(boundary(D)) = 1. + + The V(X,Y) is the potential function: + + V = 2 * ( (X/A^2)^2 + (Y/B^2)^2 ) + 1/A^2 + 1/B^2. + + The analytic solution of this problem is already known: + + U(X,Y) = exp ( (X/A)^2 + (Y/B)^2 - 1 ). + + Our method is via the Feynman-Kac Formula. + + The idea is to start from any (x,y) in D, and + compute (x+Wx(t),y+Wy(t)) where 2D Brownian motion + (Wx,Wy) is updated each step by sqrt(h)*(z1,z2), + each z1,z2 are independent approximately Gaussian + random variables with zero mean and variance 1. + + Each (x1(t),x2(t)) is advanced until (x1,x2) exits + the domain D. + + Upon its first exit from D, the sample path (x1,x2) is stopped and a + new sample path at (x,y) is started until N such paths are completed. + + The Feynman-Kac formula gives the solution here as + + U(X,Y) = (1/N) sum(1 <= I <= N) Y(tau_i), + + where + + Y(tau) = exp( -int(s=0..tau) v(x1(s),x2(s)) ds), + + and tau = first exit time for path (x1,x2). + + The integration procedure is a second order weak accurate method: + + X(t+h) = [ x1(t) + sqrt ( h ) * z1 ] + [ x2(t) + sqrt ( h ) * z2 ] + + Here Z1, Z2 are approximately normal univariate Gaussians. + + An Euler predictor approximates Y at the end of the step + + Y_e = (1 - h*v(X(t)) * Y(t), + + A trapezoidal rule completes the step: + + Y(t+h) = Y(t) - (h/2)*[v(X(t+h))*Y_e + v(X(t))*Y(t)]. + + Licensing: + + This code is distributed under the GNU LGPL license. + + Modified: + + 31 May 2012 + + Author: + + Original C 3D version by Wesley Petersen. + C 2D version by John Burkardt. + + Reference: + + Peter Arbenz, Wesley Petersen, + Introduction to Parallel Computing: + A Practical Guide with Examples in C, + Oxford, 2004, + ISBN: 0-19-851577-4, + LC: QA76.59.P47. +*/ + +#include "../../external/jitify/jitify.hpp" +#include "kernel.cuh" +#include "util.h" +#include +#include +#include +#include +#include + +int main(int argc, char **argv) { + if (argc != 2) { + printf("Usage: %s \n", argv[0]); + return 1; + } + + const int repeat = atoi(argv[1]); + double a = 2.0; + double b = 1.0; + int dim = 2; + double err; + double h = 0.001; + int N = 1000; + int n_inside; + int ni; + int nj; + double rth; + int seed = 123456789; + + printf("\n"); + + printf("\n"); + printf("FEYNMAN_KAC_2D:\n"); + printf("\n"); + printf(" Program parameters:\n"); + printf("\n"); + printf(" The calculation takes place inside a 2D ellipse.\n"); + printf(" A rectangular grid of points will be defined.\n"); + printf(" The solution will be estimated for those grid points\n"); + printf(" that lie inside the ellipse.\n"); + printf("\n"); + printf(" Each solution will be estimated by computing %d trajectories\n", N); + printf(" from the point to the boundary.\n"); + printf("\n"); + printf(" (X/A)^2 + (Y/B)^2 = 1\n"); + printf("\n"); + printf(" The ellipse parameters A, B are set to:\n"); + printf("\n"); + printf(" A = %f\n", a); + printf(" B = %f\n", b); + printf(" Stepsize H = %6.4f\n", h); + + // scaled stepsize. + rth = sqrt((double)dim * h); + + // a > b + nj = 128; + ni = 1 + i4_ceiling(a / b) * (nj - 1); + + printf("\n"); + printf(" X coordinate marked by %d points\n", ni); + printf(" Y coordinate marked by %d points\n", nj); + + err = 0.0; + n_inside = 0; + + dim3 grids((ni + 15) / 16, (nj + 15) / 16); + dim3 blocks(16, 16); + + double *d_err; + int *d_n_inside; + + static jitify::JitCache kernel_cache; + jitify::Program program = + kernel_cache.program(kernel_h, {}, {"-std=c++20", "--time=jitify.trace"}); + + cudaMalloc((void **)&d_err, sizeof(double)); + cudaMalloc((void **)&d_n_inside, sizeof(int)); + + long time = 0; + for (int i = 0; i < repeat; i++) { + cudaMemcpy(d_err, &err, sizeof(double), cudaMemcpyHostToDevice); + cudaMemcpy(d_n_inside, &n_inside, sizeof(int), cudaMemcpyHostToDevice); + + cudaDeviceSynchronize(); + auto start = std::chrono::steady_clock::now(); + + // fk <<< grids, blocks >>> (ni, nj, seed, n, a, b, h, rth, d_n_inside, + // d_err); + program.kernel("fk") + .instantiate(ni, nj, N) + .configure(grids, blocks) + .launch(seed, a, b, h, rth, d_n_inside, d_err); + + cudaDeviceSynchronize(); + auto end = std::chrono::steady_clock::now(); + time += std::chrono::duration_cast(end - start) + .count(); + } + printf("Average kernel time: %lf (s)\n", time * 1e-9 / repeat); + + cudaMemcpy(&err, d_err, sizeof(double), cudaMemcpyDeviceToHost); + cudaMemcpy(&n_inside, d_n_inside, sizeof(int), cudaMemcpyDeviceToHost); + + cudaFree(d_err); + cudaFree(d_n_inside); + + err = sqrt(err / (double)(n_inside)); + printf("\n"); + printf(" RMS absolute error in solution = %e\n", err); + printf("\n"); + printf("FEYNMAN_KAC_2D:\n"); + printf(" Normal end of execution.\n"); + printf("\n"); + + return 0; +} diff --git a/benchmarks/cuda-jitify/feynman-kac/util.h b/benchmarks/cuda-jitify/feynman-kac/util.h new file mode 100644 index 0000000..746d125 --- /dev/null +++ b/benchmarks/cuda-jitify/feynman-kac/util.h @@ -0,0 +1,183 @@ +int i4_ceiling(double x) + +/* + Purpose: + + I4_CEILING rounds an R8 up to the nearest I4. + + Discussion: + + The "ceiling" of X is the value of X rounded towards plus infinity. + + Example: + + X I4_CEILING(X) + + -1.1 -1 + -1.0 -1 + -0.9 0 + -0.1 0 + 0.0 0 + 0.1 1 + 0.9 1 + 1.0 1 + 1.1 2 + 2.9 3 + 3.0 3 + 3.14159 4 + + Licensing: + + This code is distributed under the GNU LGPL license. + + Modified: + + 10 November 2011 + + Author: + + John Burkardt + + Parameters: + + Input, double X, the number whose ceiling is desired. + + Output, int I4_CEILING, the ceiling of X. +*/ +{ + int value; + + value = (int)x; + + if (value < x) { + value = value + 1; + } + + return value; +} + +__device__ double potential(double a, double b, double x, double y) + +/* + Purpose: + + POTENTIAL evaluates the potential function V(X,Y,Z). + + Licensing: + + This code is distributed under the GNU LGPL license. + + Modified: + + 19 February 2008 + + Author: + + John Burkardt + + Parameters: + + Input, double A, B, the parameters that define the ellipse. + + Input, double X, Y, the coordinates of the point. + + Output, double POTENTIAL, the value of the potential function at (X,Y). +*/ +{ + double value; + + value = 2.0 * (pow(x / a / a, 2.0) + pow(y / b / b, 2.0)) + 1.0 / a / a + + 1.0 / b / b; + + return value; +} + +__device__ double r8_uniform_01(int *seed) + +/* + Purpose: + + R8_UNIFORM_01 returns a unit pseudorandom R8. + + Discussion: + + This routine implements the recursion + + seed = 16807 * seed mod ( 2^31 - 1 ) + r8_uniform_01 = seed / ( 2^31 - 1 ) + + The integer arithmetic never requires more than 32 bits, + including a sign bit. + + If the initial seed is 12345, then the first three computations are + + Input Output R8_UNIFORM_01 + SEED SEED + + 12345 207482415 0.096616 + 207482415 1790989824 0.833995 + 1790989824 2035175616 0.947702 + + Licensing: + + This code is distributed under the GNU LGPL license. + + Modified: + + 11 August 2004 + + Author: + + John Burkardt + + Reference: + + Paul Bratley, Bennett Fox, Linus Schrage, + A Guide to Simulation, + Springer Verlag, pages 201-202, 1983. + + Pierre L'Ecuyer, + Random Number Generation, + in Handbook of Simulation + edited by Jerry Banks, + Wiley Interscience, page 95, 1998. + + Bennett Fox, + Algorithm 647: + Implementation and Relative Efficiency of Quasirandom + Sequence Generators, + ACM Transactions on Mathematical Software, + Volume 12, Number 4, pages 362-376, 1986. + + Peter Lewis, Allen Goodman, James Miller, + A Pseudo-Random Number Generator for the System/360, + IBM Systems Journal, + Volume 8, pages 136-143, 1969. + + Parameters: + + Input/output, int *SEED, the "seed" value. Normally, this + value should not be 0. On output, SEED has been updated. + + Output, double R8_UNIFORM_01, a new pseudorandom variate, strictly between + 0 and 1. +*/ +{ + int k; + double r; + + k = *seed / 127773; + + *seed = 16807 * (*seed - k * 127773) - k * 2836; + + if (*seed < 0) { + *seed = *seed + 2147483647; + } + /* + Although SEED can be represented exactly as a 32 bit integer, + it generally cannot be represented exactly as a 32 bit real number! + */ + r = (double)(*seed) * 4.656612875E-10; + + return r; +} diff --git a/benchmarks/cuda-jitify/rsbench/Makefile b/benchmarks/cuda-jitify/rsbench/Makefile new file mode 100644 index 0000000..e121246 --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/Makefile @@ -0,0 +1,79 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC ?= nvcc +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = +JIT_PATH ?=/p/vast1/koparasy/JIT/jit/build-lassen/ +JIT ?= no + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + +program = rsbench$(SUFFIX).x + +source = \ +main.cu \ +simulation.cu\ +io.cu \ +init.cu \ +material.cu \ +utils.cu + +obj = $(source:.cu=$(SUFFIX).o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := $(EXTRA_CFLAGS) -std=c++14 --cuda-gpu-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia + +# Linker Flags +LDFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lnvrtc -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3 +endif + +ifeq ($(JIT),yes) + CFLAGS += -DENABLE_JIT + LDFLAGS += -lnvptxcompiler_static +endif + +LDFLAGS +=-lnvptxcompiler_static + +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) rsbench.h Makefile + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +%$(SUFFIX).o: %.cu rsbench.h Makefile + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf *.x *.o + +run: $(program) + $(LAUNCHER) ./$(program) -s large -m event diff --git a/benchmarks/cuda-jitify/rsbench/experiments.json b/benchmarks/cuda-jitify/rsbench/experiments.json new file mode 100644 index 0000000..b6a5fd2 --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/experiments.json @@ -0,0 +1,9 @@ +{ + "name": "rsbench", + "executables": { + "jitify": "rsbench-jit.x" + }, + "inputs" : { + "default":"-s large -m event" + } +} diff --git a/benchmarks/cuda-jitify/rsbench/init.cu b/benchmarks/cuda-jitify/rsbench/init.cu new file mode 100644 index 0000000..2445acf --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/init.cu @@ -0,0 +1,185 @@ +#include "rsbench.h" + +SimulationData initialize_simulation( Input input ) +{ + uint64_t seed = INITIALIZATION_SEED; + + // Get material data + printf("Loading Hoogenboom-Martin material data...\n"); + SimulationData SD = get_materials( input, &seed ); + + // Allocate & fill energy grids + printf("Generating resonance distributions...\n"); + SD.n_poles = generate_n_poles( input, &seed ); + SD.length_n_poles = input.n_nuclides; + + // Allocate & fill Window grids + printf("Generating window distributions...\n"); + SD.n_windows = generate_n_windows( input, &seed ); + SD.length_n_windows = input.n_nuclides; + + // Prepare full resonance grid + printf("Generating resonance parameter grid...\n"); + SD.poles = generate_poles( input, SD.n_poles, &seed, &SD.max_num_poles ); + SD.length_poles = input.n_nuclides * SD.max_num_poles; + + // Prepare full Window grid + printf("Generating window parameter grid...\n"); + SD.windows = generate_window_params( input, SD.n_windows, SD.n_poles, &seed, &SD.max_num_windows); + SD.length_windows = input.n_nuclides * SD.max_num_windows; + + // Prepare 0K Resonances + printf("Generating 0K l_value data...\n"); + SD.pseudo_K0RS = generate_pseudo_K0RS( input, &seed ); + SD.length_pseudo_K0RS = input.n_nuclides * input.numL; + + return SD; +} + +int * generate_n_poles( Input input, uint64_t * seed ) +{ + int total_resonances = input.avg_n_poles * input.n_nuclides; + + int * R = (int *) malloc( input.n_nuclides * sizeof(int)); + + // Ensure all nuclides have at least 1 resonance + for( int i = 0; i < input.n_nuclides; i++ ) + R[i] = 1; + + // Sample the rest + for( int i = 0; i < total_resonances - input.n_nuclides; i++ ) + R[LCG_random_int(seed) % input.n_nuclides]++; + + /* Debug + for( int i = 0; i < input.n_nuclides; i++ ) + printf("R[%d] = %d\n", i, R[i]); + */ + + return R; +} + +int * generate_n_windows( Input input, uint64_t * seed ) +{ + int total_resonances = input.avg_n_windows * input.n_nuclides; + + int * R = (int *) malloc( input.n_nuclides * sizeof(int)); + + // Ensure all nuclides have at least 1 resonance + for( int i = 0; i < input.n_nuclides; i++ ) + R[i] = 1; + + // Sample the rest + for( int i = 0; i < total_resonances - input.n_nuclides; i++ ) + R[LCG_random_int(seed) % input.n_nuclides]++; + + /* Debug + for( int i = 0; i < input.n_nuclides; i++ ) + printf("R[%d] = %d\n", i, R[i]); + */ + + return R; +} + +Pole * generate_poles( Input input, int * n_poles, uint64_t * seed, int * max_num_poles ) +{ + // Pole Scaling Factor -- Used to bias hitting of the fast Faddeeva + // region to approximately 99.5% (i.e., only 0.5% of lookups should + // require the full eval). + double f = 152.5; + RSComplex f_c = {f, 0}; + + int max_poles = -1; + + for( int i = 0; i < input.n_nuclides; i++ ) + { + if( n_poles[i] > max_poles) + max_poles = n_poles[i]; + } + *max_num_poles = max_poles; + + // Allocating 2D matrix as a 1D contiguous vector + Pole * R = (Pole *) malloc( input.n_nuclides * max_poles * sizeof(Pole)); + + // fill with data + for( int i = 0; i < input.n_nuclides; i++ ) + for( int j = 0; j < n_poles[i]; j++ ) + { + double r = LCG_random_double(seed); + double im = LCG_random_double(seed); + RSComplex t1 = {r, im}; + R[i * max_poles + j].MP_EA = c_mul(f_c,t1); + r = LCG_random_double(seed); + im = LCG_random_double(seed); + RSComplex t2 = {f*r, im}; + R[i * max_poles + j].MP_RT = t2; + r = LCG_random_double(seed); + im = LCG_random_double(seed); + RSComplex t3 = {f*r, im}; + R[i * max_poles + j].MP_RA = t3; + r = LCG_random_double(seed); + im = LCG_random_double(seed); + RSComplex t4 = {f*r, im}; + R[i * max_poles + j].MP_RF = t4; + R[i * max_poles + j].l_value = LCG_random_int(seed) % input.numL; + } + + /* Debug + for( int i = 0; i < input.n_nuclides; i++ ) + for( int j = 0; j < n_poles[i]; j++ ) + printf("R[%d][%d]: Eo = %lf lambda_o = %lf Tn = %lf Tg = %lf Tf = %lf\n", i, j, R[i * max_poles + j].Eo, R[i * max_poles + j].lambda_o, R[i * max_poles + j].Tn, R[i * max_poles + j].Tg, R[i * max_poles + j].Tf); + */ + + return R; +} + +Window * generate_window_params( Input input, int * n_windows, int * n_poles, uint64_t * seed, int * max_num_windows ) +{ + int max_windows = -1; + + for( int i = 0; i < input.n_nuclides; i++ ) + { + if( n_windows[i] > max_windows) + max_windows = n_windows[i]; + } + *max_num_windows = max_windows; + + // Allocating 2D contiguous matrix + Window * R = (Window *) malloc( input.n_nuclides * max_windows * sizeof(Window)); + + // fill with data + for( int i = 0; i < input.n_nuclides; i++ ) + { + int space = n_poles[i] / n_windows[i]; + int remainder = n_poles[i] - space * n_windows[i]; + int ctr = 0; + for( int j = 0; j < n_windows[i]; j++ ) + { + R[i * max_windows + j].T = LCG_random_double(seed); + R[i * max_windows + j].A = LCG_random_double(seed); + R[i * max_windows + j].F = LCG_random_double(seed); + R[i * max_windows + j].start = ctr; + R[i * max_windows + j].end = ctr + space - 1; + + ctr += space; + + if ( j < remainder ) + { + ctr++; + R[i * max_windows + j].end++; + } + } + } + + return R; +} + +double * generate_pseudo_K0RS( Input input, uint64_t * seed ) +{ + double * R = (double *) malloc( input.n_nuclides * input.numL * sizeof(double)); + + for( int i = 0; i < input.n_nuclides; i++) + for( int j = 0; j < input.numL; j++ ) + R[i * input.numL + j] = LCG_random_double(seed); + + return R; +} diff --git a/benchmarks/cuda-jitify/rsbench/io.cu b/benchmarks/cuda-jitify/rsbench/io.cu new file mode 100644 index 0000000..8c413a9 --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/io.cu @@ -0,0 +1,338 @@ +#include "rsbench.h" + +// Prints program logo +void logo(int version) +{ + border_print(); + printf( +" _____ _____ ____ _ \n" +" | __ \\ / ____| _ \\ | | \n" +" | |__) | (___ | |_) | ___ _ __ ___| |__ \n" +" | _ / \\___ \\| _ < / _ \\ '_ \\ / __| '_ \\ \n" +" | | \\ \\ ____) | |_) | __/ | | | (__| | | |\n" +" |_| \\_\\_____/|____/ \\___|_| |_|\\___|_| |_|\n\n" + ); + border_print(); + center_print("Developed at Argonne National Laboratory", 79); + char v[100]; + sprintf(v, "Version: %d", version); + center_print(v, 79); + border_print(); +} + +// Prints Section titles in center of 80 char terminal +void center_print(const char *s, int width) +{ + int length = strlen(s); + int i; + for (i=0; i<=(width-length)/2; i++) { + fputs(" ", stdout); + } + fputs(s, stdout); + fputs("\n", stdout); +} + +void border_print(void) +{ + printf( + "===================================================================" + "=============\n"); +} + +// Prints comma separated integers - for ease of reading +void fancy_int( int a ) +{ + if( a < 1000 ) + printf("%d\n",a); + + else if( a >= 1000 && a < 1000000 ) + printf("%d,%03d\n", a / 1000, a % 1000); + + else if( a >= 1000000 && a < 1000000000 ) + printf("%d,%03d,%03d\n", a / 1000000, (a % 1000000) / 1000, a % 1000 ); + + else if( a >= 1000000000 ) + printf("%d,%03d,%03d,%03d\n", + a / 1000000000, + (a % 1000000000) / 1000000, + (a % 1000000) / 1000, + a % 1000 ); + else + printf("%d\n",a); +} + +Input read_CLI( int argc, char * argv[] ) +{ + Input input; + + // defaults to the history based simulation method + input.simulation_method = HISTORY_BASED; + // defaults to max threads on the system + input.nthreads = 1; + // defaults to 355 (corresponding to H-M Large benchmark) + input.n_nuclides = 355; + // defaults to 300,000 + input.particles = 300000; + // defaults to 34 + input.lookups = 34; + // defaults to H-M Large benchmark + input.HM = LARGE; + // defaults to 3000 resonancs (avg) per nuclide + input.avg_n_poles = 1000; + // defaults to 100 + input.avg_n_windows = 100; + // defaults to 4; + input.numL = 4; + // defaults to no temperature dependence (Doppler broadening) + input.doppler = 1; + // defaults to baseline simulation kernel + input.kernel_id = 0; + + int default_lookups = 1; + int default_particles = 1; + + // Collect Raw Input + for( int i = 1; i < argc; i++ ) + { + char * arg = argv[i]; + + // Simulation Method (-m) + if( strcmp(arg, "-m") == 0 ) + { + char * sim_type = NULL; + if( ++i < argc ) + sim_type = argv[i]; + else + print_CLI_error(); + + if( strcmp(sim_type, "history") == 0 ) + input.simulation_method = HISTORY_BASED; + else if( strcmp(sim_type, "event") == 0 ) + { + input.simulation_method = EVENT_BASED; + // Also resets default # of lookups + if( default_lookups && default_particles ) + { + input.lookups = input.lookups * input.particles; + input.particles = 0; + } + } + else + print_CLI_error(); + } + // lookups (-l) + else if( strcmp(arg, "-l") == 0 ) + { + if( ++i < argc ) + { + input.lookups = atoi(argv[i]); + default_lookups = 0; + } + else + print_CLI_error(); + } + // particles (-p) + else if( strcmp(arg, "-p") == 0 ) + { + if( ++i < argc ) + { + input.particles = atoi(argv[i]); + default_particles = 0; + } + else + print_CLI_error(); + } + // nuclides (-n) + else if( strcmp(arg, "-n") == 0 ) + { + if( ++i < argc ) + input.n_nuclides = atoi(argv[i]); + else + print_CLI_error(); + } + // HM (-s) + else if( strcmp(arg, "-s") == 0 ) + { + if( ++i < argc ) + { + if( strcmp(argv[i], "small") == 0 ) + input.HM = SMALL; + else if ( strcmp(argv[i], "large") == 0 ) + input.HM = LARGE; + else + print_CLI_error(); + } + else + print_CLI_error(); + } + // Doppler Broadening (Temperature Dependence) + else if( strcmp(arg, "-d") == 0 ) + { + input.doppler = 0; + } + // Avg number of windows per nuclide (-w) + else if( strcmp(arg, "-W") == 0 ) + { + if( ++i < argc ) + input.avg_n_windows = atoi(argv[i]); + else + print_CLI_error(); + } + // Avg number of poles per nuclide (-p) + else if( strcmp(arg, "-P") == 0 ) + { + if( ++i < argc ) + input.avg_n_poles = atoi(argv[i]); + else + print_CLI_error(); + } + // Kernel ID (-k) + else if( strcmp(arg, "-k") == 0 ) + { + if( ++i < argc ) + input.kernel_id = atoi(argv[i]); + else + print_CLI_error(); + } + else + print_CLI_error(); + } + + // Validate Input + + // Validate nthreads + if( input.nthreads < 1 ) + print_CLI_error(); + + // Validate n_isotopes + if( input.n_nuclides < 1 ) + print_CLI_error(); + + // Validate lookups + if( input.lookups < 1 ) + print_CLI_error(); + + // Validate lookups + if( input.avg_n_poles < 1 ) + print_CLI_error(); + + // Validate lookups + if( input.avg_n_windows < 1 ) + print_CLI_error(); + + // Set HM size specific parameters + // (defaults to large) + if( input.HM == SMALL ) + input.n_nuclides = 68; + + // Return input struct + return input; +} + +void print_CLI_error(void) +{ + printf("Usage: ./multibench \n"); + printf("Options include:\n"); + printf(" -s Size of H-M Benchmark to run (small, large)\n"); + printf(" -l Number of Cross-section (XS) lookups per particle history\n"); + printf(" -p Number of particle histories\n"); + printf(" -P Average Number of Poles per Nuclide\n"); + printf(" -W Average Number of Windows per Nuclide\n"); + printf(" -d Disables Temperature Dependence (Doppler Broadening)\n"); + printf("Default is equivalent to: -s large -l 34 -p 300000 -P 1000 -W 100\n"); + printf("See readme for full description of default run values\n"); + exit(4); +} + +void print_input_summary(Input input) +{ + // Calculate Estimate of Memory Usage + size_t mem = get_mem_estimate(input); + + printf("Programming Model: CUDA\n"); + if( input.simulation_method == EVENT_BASED ) + printf("Simulation Method: Event Based\n"); + else + printf("Simulation Method: History Based\n"); + printf("Materials: 12\n"); + printf("H-M Benchmark Size: "); + if( input.HM == 0 ) + printf("Small\n"); + else + printf("Large\n"); + if( input.doppler == 1 ) + printf("Temperature Dependence: ON\n"); + else + printf("Temperature Dependence: OFF\n"); + printf("Total Nuclides: %d\n", input.n_nuclides); + printf("Avg Poles per Nuclide: "); fancy_int(input.avg_n_poles); + printf("Avg Windows per Nuclide: "); fancy_int(input.avg_n_windows); + + int lookups = input.lookups; + if( input.simulation_method == HISTORY_BASED ) + { + printf("Particles: "); fancy_int(input.particles); + printf("XS Lookups per Particle: "); fancy_int(input.lookups); + lookups *= input.particles; + } + printf("Total XS Lookups: "); fancy_int(lookups); + printf("Est. Memory Usage (MB): %.1lf\n", mem / 1024.0 / 1024.0); +} + +int validate_and_print_results(Input input, double runtime, unsigned long vhash, double kernel_time) +{ + int lookups = 0; + if( input.simulation_method == HISTORY_BASED ) + lookups = input.lookups*input.particles; + else + lookups = input.lookups; + + int lookups_per_sec = (int) ((double) lookups / runtime); + int sim_only_lookups_per_sec = (int) ((double) lookups/ kernel_time); + + printf("Total Time Statistics (CUDA Init / JIT Compilation + Simulation Kernel)\n"); + printf("Runtime: %.3lf seconds\n", runtime); + printf("Lookups: "); fancy_int(lookups); + printf("Lookups/s: "); fancy_int(lookups_per_sec); + printf("Simulation Kernel Only Statistics\n"); + printf("Lookups/s: "); + fancy_int(sim_only_lookups_per_sec); + + int is_invalid = 1; + + unsigned long long large = 0; + unsigned long long small = 0; + if(input.simulation_method == HISTORY_BASED ) + { + large = 351485; + small = 879693; + } + else if( input.simulation_method == EVENT_BASED ) + { + large = 358389; + small = 880018; + } + + if( input.HM == LARGE ) + { + if( vhash == large ) + { + printf("Verification checksum: %lu (Valid)\n", vhash); + is_invalid = 0; + } + else + printf("Verification checksum: %lu (WARNING - INAVALID CHECKSUM!)\n", vhash); + } + else if( input.HM == SMALL ) + { + if( vhash == small ) + { + printf("Verification checksum: %lu (Valid)\n", vhash); + is_invalid = 0; + } + else + printf("Verification checksum: %lu (WARNING - INAVALID CHECKSUM!)\n", vhash); + } + + return is_invalid; +} diff --git a/benchmarks/cuda-jitify/rsbench/main.cu b/benchmarks/cuda-jitify/rsbench/main.cu new file mode 100644 index 0000000..e2f2233 --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/main.cu @@ -0,0 +1,88 @@ +#include "rsbench.h" + +int main(int argc, char * argv[]) +{ + // ===================================================================== + // Initialization & Command Line Read-In + // ===================================================================== + + int version = 12; + double start, stop; + + // Process CLI Fields + Input input = read_CLI( argc, argv ); + + // ===================================================================== + // Print-out of Input Summary + // ===================================================================== + logo(version); + center_print("INPUT SUMMARY", 79); + border_print(); + print_input_summary(input); + + // ===================================================================== + // Intialize Simulation Data Structures + // ===================================================================== + border_print(); + center_print("INITIALIZATION", 79); + border_print(); + + start = get_time(); + + SimulationData SD = initialize_simulation( input ); + + stop = get_time(); + + printf("Initialization Complete. (%.2lf seconds)\n", stop-start); + + // ===================================================================== + // Cross Section (XS) Parallel Lookup Simulation Begins + // ===================================================================== + border_print(); + center_print("SIMULATION", 79); + border_print(); + + unsigned long vhash = 0; + + double kernel_time; + + // Run Simulation + start = get_time(); + + // Run simulation + if( input.simulation_method == EVENT_BASED ) + { + if( input.kernel_id == 0 ) + run_event_based_simulation(input, SD, &vhash, &kernel_time ); + else + { + printf("Error: No kernel ID %d found!\n", input.kernel_id); + exit(1); + } + } + else if( input.simulation_method == HISTORY_BASED ) + { + printf("History-based simulation not implemented in the code. Instead,\nuse the event-based method with \"-m event\" argument.\n"); + exit(1); + } + + stop = get_time(); + + // Final hash step + vhash = vhash % 999983; + + printf("Simulation Complete.\n"); + + // ===================================================================== + // Print / Save Results and Exit + // ===================================================================== + border_print(); + center_print("RESULTS", 79); + border_print(); + + int is_invalid = validate_and_print_results(input, stop-start, vhash, kernel_time); + + border_print(); + + return is_invalid; +} diff --git a/benchmarks/cuda-jitify/rsbench/material.cu b/benchmarks/cuda-jitify/rsbench/material.cu new file mode 100644 index 0000000..791565b --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/material.cu @@ -0,0 +1,123 @@ +#include "rsbench.h" + +// Handles all material creation tasks - returns Material struct +SimulationData get_materials(Input input, uint64_t * seed) +{ + SimulationData SD; + + SD.num_nucs = load_num_nucs(input); + SD.length_num_nucs = 12; + + SD.mats = load_mats(input, SD.num_nucs, &SD.max_num_nucs, &SD.length_mats); + + SD.concs = load_concs(SD.num_nucs, seed, SD.max_num_nucs); + SD.length_concs = 12 * SD.max_num_nucs; + + return SD; +} + +// num_nucs represents the number of nuclides that each material contains +int * load_num_nucs(Input input) +{ + int * num_nucs = (int*)malloc(12*sizeof(int)); + + // Material 0 is a special case (fuel). The H-M small reactor uses + // 34 nuclides, while H-M larges uses 300. + if( input.n_nuclides == 68 ) + num_nucs[0] = 34; // HM Small is 34, H-M Large is 321 + else + num_nucs[0] = 321; // HM Small is 34, H-M Large is 321 + + num_nucs[1] = 5; + num_nucs[2] = 4; + num_nucs[3] = 4; + num_nucs[4] = 27; + num_nucs[5] = 21; + num_nucs[6] = 21; + num_nucs[7] = 21; + num_nucs[8] = 21; + num_nucs[9] = 21; + num_nucs[10] = 9; + num_nucs[11] = 9; + + return num_nucs; +} + +// Assigns an array of nuclide ID's to each material +int * load_mats( Input input, int * num_nucs, int * max_num_nucs, unsigned long * length_mats ) +{ + *max_num_nucs = 0; + int num_mats = 12; + for( int m = 0; m < num_mats; m++ ) + { + if( num_nucs[m] > *max_num_nucs ) + *max_num_nucs = num_nucs[m]; + } + int * mats = (int *) malloc( num_mats * (*max_num_nucs) * sizeof(int) ); + *length_mats = num_mats * (*max_num_nucs); + + // Small H-M has 34 fuel nuclides + int mats0_Sml[] = { 58, 59, 60, 61, 40, 42, 43, 44, 45, 46, 1, 2, 3, 7, + 8, 9, 10, 29, 57, 47, 48, 0, 62, 15, 33, 34, 52, 53, + 54, 55, 56, 18, 23, 41 }; //fuel + // Large H-M has 300 fuel nuclides + int mats0_Lrg[321] = { 58, 59, 60, 61, 40, 42, 43, 44, 45, 46, 1, 2, 3, 7, + 8, 9, 10, 29, 57, 47, 48, 0, 62, 15, 33, 34, 52, 53, + 54, 55, 56, 18, 23, 41 }; //fuel + for( int i = 0; i < 321-34; i++ ) + mats0_Lrg[34+i] = 68 + i; // H-M large adds nuclides to fuel only + + // These are the non-fuel materials + int mats1[] = { 63, 64, 65, 66, 67 }; // cladding + int mats2[] = { 24, 41, 4, 5 }; // cold borated water + int mats3[] = { 24, 41, 4, 5 }; // hot borated water + int mats4[] = { 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, 27, 28, 29, + 30, 31, 32, 26, 49, 50, 51, 11, 12, 13, 14, 6, 16, + 17 }; // RPV + int mats5[] = { 24, 41, 4, 5, 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, + 49, 50, 51, 11, 12, 13, 14 }; // lower radial reflector + int mats6[] = { 24, 41, 4, 5, 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, + 49, 50, 51, 11, 12, 13, 14 }; // top reflector / plate + int mats7[] = { 24, 41, 4, 5, 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, + 49, 50, 51, 11, 12, 13, 14 }; // bottom plate + int mats8[] = { 24, 41, 4, 5, 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, + 49, 50, 51, 11, 12, 13, 14 }; // bottom nozzle + int mats9[] = { 24, 41, 4, 5, 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, + 49, 50, 51, 11, 12, 13, 14 }; // top nozzle + int mats10[] = { 24, 41, 4, 5, 63, 64, 65, 66, 67 }; // top of FA's + int mats11[] = { 24, 41, 4, 5, 63, 64, 65, 66, 67 }; // bottom FA's + + // H-M large v small dependency + if( input.n_nuclides == 68 ) + memcpy( mats, mats0_Sml, num_nucs[0] * sizeof(int) ); + else + memcpy( mats, mats0_Lrg, num_nucs[0] * sizeof(int) ); + + // Copy other materials + memcpy( mats + *max_num_nucs * 1, mats1, num_nucs[1] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 2, mats2, num_nucs[2] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 3, mats3, num_nucs[3] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 4, mats4, num_nucs[4] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 5, mats5, num_nucs[5] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 6, mats6, num_nucs[6] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 7, mats7, num_nucs[7] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 8, mats8, num_nucs[8] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 9, mats9, num_nucs[9] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 10, mats10, num_nucs[10] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 11, mats11, num_nucs[11] * sizeof(int) ); + + return mats; +} + +// Creates a randomized array of 'concentrations' of nuclides in each mat +double * load_concs( int * num_nucs, uint64_t * seed, int max_num_nucs ) +{ + double * concs = (double *) malloc( 12 * max_num_nucs * sizeof( double ) ); + + for( int i = 0; i < 12; i++ ) + for( int j = 0; j < num_nucs[i]; j++ ) + concs[i * max_num_nucs + j] = LCG_random_double(seed); + + return concs; +} + diff --git a/benchmarks/cuda-jitify/rsbench/out.time-trace b/benchmarks/cuda-jitify/rsbench/out.time-trace new file mode 100644 index 0000000..fa1b93f --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/out.time-trace @@ -0,0 +1 @@ +{"traceEvents":[{"pid":35449,"tid":35449,"ph":"X","ts":458649,"dur":515,"name":"object lookup"},{"pid":35449,"tid":35449,"ph":"X","ts":466393,"dur":432488,"name":"parseBitcode"},{"pid":35449,"tid":35449,"ph":"X","ts":910912,"dur":157410,"name":"Run opt passes"},{"pid":35449,"tid":35449,"ph":"X","ts":1081624,"dur":1503,"name":"RunPass","args":{"detail":"Straight line strength reduction"}},{"pid":35449,"tid":35449,"ph":"X","ts":1083165,"dur":2523,"name":"RunPass","args":{"detail":"Global Value Numbering"}},{"pid":35449,"tid":35449,"ph":"X","ts":1085700,"dur":1833,"name":"RunPass","args":{"detail":"Nary reassociation"}},{"pid":35449,"tid":35449,"ph":"X","ts":1087536,"dur":1011,"name":"RunPass","args":{"detail":"Early CSE"}},{"pid":35449,"tid":35449,"ph":"X","ts":1081235,"dur":7331,"name":"OptFunction","args":{"detail":"_Z6lookupPKiPKdS0_PiS0_S2_PK6WindowPK4Poleiiiiii$jit$5005293931276729718$"}},{"pid":35449,"tid":35449,"ph":"X","ts":1088719,"dur":500,"name":"RunPass","args":{"detail":"Straight line strength reduction"}},{"pid":35449,"tid":35449,"ph":"X","ts":1089725,"dur":556,"name":"RunPass","args":{"detail":"Nary reassociation"}},{"pid":35449,"tid":35449,"ph":"X","ts":1088568,"dur":1887,"name":"OptFunction","args":{"detail":"__internal_trig_reduction_slowpathd"}},{"pid":35449,"tid":35449,"ph":"X","ts":1090461,"dur":570,"name":"RunPass","args":{"detail":"Module Verifier"}},{"pid":35449,"tid":35449,"ph":"X","ts":1091339,"dur":780,"name":"RunLoopPass","args":{"detail":"Loop Strength Reduction"}},{"pid":35449,"tid":35449,"ph":"X","ts":1091157,"dur":2398,"name":"RunPass","args":{"detail":"Loop Pass Manager"}},{"pid":35449,"tid":35449,"ph":"X","ts":1094158,"dur":2635,"name":"RunPass","args":{"detail":"Global Value Numbering"}},{"pid":35449,"tid":35449,"ph":"X","ts":1097128,"dur":690,"name":"RunPass","args":{"detail":"CodeGen Prepare"}},{"pid":35449,"tid":35449,"ph":"X","ts":1097860,"dur":561,"name":"RunPass","args":{"detail":"Module Verifier"}},{"pid":35449,"tid":35449,"ph":"X","ts":1098680,"dur":10338,"name":"RunPass","args":{"detail":"NVPTX DAG->DAG Pattern Instruction Selection"}},{"pid":35449,"tid":35449,"ph":"X","ts":1109545,"dur":543,"name":"RunPass","args":{"detail":"Early Machine Loop Invariant Code Motion"}},{"pid":35449,"tid":35449,"ph":"X","ts":1110182,"dur":930,"name":"RunPass","args":{"detail":"Machine Common Subexpression Elimination"}},{"pid":35449,"tid":35449,"ph":"X","ts":1112827,"dur":582,"name":"RunPass","args":{"detail":"Live Interval Analysis"}},{"pid":35449,"tid":35449,"ph":"X","ts":1114604,"dur":1654,"name":"RunPass","args":{"detail":"NVPTX Assembly Printer"}},{"pid":35449,"tid":35449,"ph":"X","ts":1090459,"dur":25829,"name":"OptFunction","args":{"detail":"_Z6lookupPKiPKdS0_PiS0_S2_PK6WindowPK4Poleiiiiii$jit$5005293931276729718$"}},{"pid":35449,"tid":35449,"ph":"X","ts":1116788,"dur":2530,"name":"RunLoopPass","args":{"detail":"Loop Strength Reduction"}},{"pid":35449,"tid":35449,"ph":"X","ts":1116444,"dur":2900,"name":"RunPass","args":{"detail":"Loop Pass Manager"}},{"pid":35449,"tid":35449,"ph":"X","ts":1120348,"dur":2079,"name":"RunPass","args":{"detail":"NVPTX DAG->DAG Pattern Instruction Selection"}},{"pid":35449,"tid":35449,"ph":"X","ts":1116290,"dur":7579,"name":"OptFunction","args":{"detail":"__internal_trig_reduction_slowpathd"}},{"pid":35449,"tid":35449,"ph":"X","ts":1080939,"dur":43033,"name":"OptModule","args":{"detail":"Mod-_Z6lookupPKiPKdS0_PiS0_S2_PK6WindowPK4Poleiiiiii$jit$5005293931276729718$"}},{"pid":35449,"tid":35449,"ph":"X","ts":1079506,"dur":44629,"name":"Codegen PTX"},{"pid":35449,"tid":35449,"ph":"X","ts":1301605,"dur":5279,"name":"Store object"},{"pid":35449,"tid":35449,"ph":"X","ts":1132233,"dur":174654,"name":"Create object"},{"pid":35449,"tid":35449,"ph":"X","ts":458631,"dur":848768,"name":"compileAndRun"},{"pid":35449,"tid":35449,"ph":"X","ts":458157,"dur":849247,"name":"__jit_launch_kernel"},{"pid":35449,"tid":35450,"ph":"X","ts":0,"dur":849247,"name":"Total __jit_launch_kernel","args":{"count":1,"avg ms":849}},{"pid":35449,"tid":35451,"ph":"X","ts":0,"dur":848768,"name":"Total compileAndRun","args":{"count":1,"avg ms":848}},{"pid":35449,"tid":35452,"ph":"X","ts":0,"dur":432487,"name":"Total parseBitcode","args":{"count":1,"avg ms":432}},{"pid":35449,"tid":35453,"ph":"X","ts":0,"dur":174654,"name":"Total Create object","args":{"count":1,"avg ms":174}},{"pid":35449,"tid":35454,"ph":"X","ts":0,"dur":157410,"name":"Total Run opt passes","args":{"count":1,"avg ms":157}},{"pid":35449,"tid":35455,"ph":"X","ts":0,"dur":44628,"name":"Total Codegen PTX","args":{"count":1,"avg ms":44}},{"pid":35449,"tid":35456,"ph":"X","ts":0,"dur":43032,"name":"Total OptModule","args":{"count":1,"avg ms":43}},{"pid":35449,"tid":35457,"ph":"X","ts":0,"dur":42695,"name":"Total OptFunction","args":{"count":6,"avg ms":7}},{"pid":35449,"tid":35458,"ph":"X","ts":0,"dur":42095,"name":"Total RunPass","args":{"count":300,"avg ms":0}},{"pid":35449,"tid":35459,"ph":"X","ts":0,"dur":5278,"name":"Total Store object","args":{"count":1,"avg ms":5}},{"pid":35449,"tid":35460,"ph":"X","ts":0,"dur":5190,"name":"Total RunLoopPass","args":{"count":18,"avg ms":0}},{"pid":35449,"tid":35461,"ph":"X","ts":0,"dur":514,"name":"Total object lookup","args":{"count":1,"avg ms":0}},{"pid":35449,"tid":35462,"ph":"X","ts":0,"dur":3,"name":"Total lookup","args":{"count":1,"avg ms":0}},{"cat":"","pid":35449,"tid":35449,"ts":0,"ph":"M","name":"process_name","args":{"name":"jit"}},{"cat":"","pid":35449,"tid":35449,"ts":0,"ph":"M","name":"thread_name","args":{"name":"rsbench-jit.x"}}],"beginningOfTime":1704975944086819} \ No newline at end of file diff --git a/benchmarks/cuda-jitify/rsbench/rsbench.h b/benchmarks/cuda-jitify/rsbench/rsbench.h new file mode 100644 index 0000000..0782dfc --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/rsbench.h @@ -0,0 +1,148 @@ +#include +#include +#include +#include +#include +#include +#include +#include + +#define PI 3.14159265359 + +// typedefs +typedef enum __hm{SMALL, LARGE, XL, XXL} HM_size; + +#define HISTORY_BASED 1 +#define EVENT_BASED 2 + +#define STARTING_SEED 1070 +#define INITIALIZATION_SEED 42 + +typedef struct{ + double r; + double i; +} RSComplex; + +typedef struct{ + int nthreads; + int n_nuclides; + int lookups; + HM_size HM; + int avg_n_poles; + int avg_n_windows; + int numL; + int doppler; + int particles; + int simulation_method; + int kernel_id; +} Input; + +typedef struct{ + RSComplex MP_EA; + RSComplex MP_RT; + RSComplex MP_RA; + RSComplex MP_RF; + short int l_value; +} Pole; + +typedef struct{ + double T; + double A; + double F; + int start; + int end; +} Window; + +typedef struct{ + int * n_poles; + unsigned long length_n_poles; + int * n_windows; + unsigned long length_n_windows; + Pole * poles; + unsigned long length_poles; + Window * windows; + unsigned long length_windows; + double * pseudo_K0RS; + unsigned long length_pseudo_K0RS; + int * num_nucs; + unsigned long length_num_nucs; + int * mats; + unsigned long length_mats; + double * concs; + unsigned long length_concs; + int max_num_nucs; + int max_num_poles; + int max_num_windows; + double * p_energy_samples; + unsigned long length_p_energy_samples; + int * mat_samples; + unsigned long length_mat_samples; +} SimulationData; + +// io.c +void logo(int version); +void center_print(const char *s, int width); +void border_print(void); +void fancy_int( int a ); +Input read_CLI( int argc, char * argv[] ); +void print_CLI_error(void); +void print_input_summary(Input input); +int validate_and_print_results(Input input, double runtime, unsigned long vhash, double kernel_init_time); + +// init.c +SimulationData initialize_simulation( Input input ); +int * generate_n_poles( Input input, uint64_t * seed ); +int * generate_n_windows( Input input , uint64_t * seed); +Pole * generate_poles( Input input, int * n_poles, uint64_t * seed, int * max_num_poles ); +Window * generate_window_params( Input input, int * n_windows, int * n_poles, uint64_t * seed, int * max_num_windows ); +double * generate_pseudo_K0RS( Input input, uint64_t * seed ); + +// material.c +int * load_num_nucs(Input input); +int * load_mats( Input input, int * num_nucs, int * max_num_nucs, unsigned long * length_mats ); +double * load_concs( int * num_nucs, uint64_t * seed, int max_num_nucs ); +SimulationData get_materials(Input input, uint64_t * seed); + +// utils.c +size_t get_mem_estimate( Input input ); +double get_time(void); + +// simulation.c +__device__ +RSComplex fast_cexp( RSComplex z ); +__device__ +RSComplex fast_nuclear_W( RSComplex Z ); +template +__device__ +void calculate_macro_xs( double * macro_xs, int mat, double E, int input_doppler, int input_numL, INT_T num_nucs, INT_T mats, int max_num_nucs, DOUBLE_T concs, INT_T n_windows, DOUBLE_T pseudo_K0Rs, WINDOW_T windows, POLE_T poles, int max_num_windows, int max_num_poles ) ; +template +__device__ +void calculate_micro_xs( double * micro_xs, int nuc, double E, Input input, INT_T n_windows, DOUBLE_T pseudo_K0RS, WINDOW_T windows, POLE_T poles, int max_num_windows, int max_num_poles); +template +__device__ +void calculate_micro_xs_doppler( double * micro_xs, int nuc, double E, Input input, INT_T n_windows, DOUBLE_T pseudo_K0RS, WINDOW_T windows, POLE_T poles, int max_num_windows, int max_num_poles ); +template +__device__ +void calculate_sig_T( int nuc, double E, Input input, DOUBLE_T pseudo_K0RS, RSComplex * sigTfactors ); +void run_event_based_simulation(Input in, SimulationData SD, unsigned long * vhash_result, double * kernel_init_time ); +double LCG_random_double(uint64_t * seed); +uint64_t LCG_random_int(uint64_t * seed); +__device__ +uint64_t fast_forward_LCG(uint64_t seed, uint64_t n); +__device__ +int pick_mat( uint64_t * seed ); + +// rscomplex.c +__device__ +RSComplex c_add( RSComplex A, RSComplex B); +__device__ +RSComplex c_sub( RSComplex A, RSComplex B); +RSComplex c_mul( RSComplex A, RSComplex B); +__device__ +RSComplex c_div( RSComplex A, RSComplex B); +__device__ +double c_abs( RSComplex A); + +// papi.c +void counter_init( int *eventset, int *num_papi_events ); +void counter_stop( int * eventset, int num_papi_events ); diff --git a/benchmarks/cuda-jitify/rsbench/simulation.cu b/benchmarks/cuda-jitify/rsbench/simulation.cu new file mode 100644 index 0000000..94ded01 --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/simulation.cu @@ -0,0 +1,160 @@ +#include "../../external/jitify/jitify.hpp" +#include "rsbench.h" +#include "simulation.cuh" + +//////////////////////////////////////////////////////////////////////////////////// +// BASELINE FUNCTIONS +//////////////////////////////////////////////////////////////////////////////////// +// All "baseline" code is at the top of this file. The baseline code is a simple +// implementation of the algorithm, with only minor CPU optimizations in place. +// Following these functions are a number of optimized variants, +// which each deploy a different combination of optimizations strategies. By +// default, RSBench will only run the baseline implementation. Optimized +// variants must be specifically selected using the "-k " +// command line argument. +//////////////////////////////////////////////////////////////////////////////////// + +void run_event_based_simulation(Input in, SimulationData SD, + unsigned long *vhash_result, + double *kernel_time) { + printf("Beginning event based simulation...\n"); + + // Let's create an extra verification array to reduce manually later on + printf("Allocating an additional %.1lf MB of memory for verification " + "arrays...\n", + in.lookups * sizeof(int) / 1024.0 / 1024.0); + int *verification_host = (int *)malloc(in.lookups * sizeof(int)); + + // Scope here is important, as when we exit this blocl we will automatically + // sync with device to ensure all work is done and that we can read from + // verification_host array. + + // create a queue using the default device for the platform (cpu, gpu) + + cudaDeviceProp devProp; + cudaGetDeviceProperties(&devProp, 0); + printf("Running on: %s\n", devProp.name); + printf("Initializing device buffers and JIT compiling kernel...\n"); + + //////////////////////////////////////////////////////////////////////////////// + // Create Device Buffers + //////////////////////////////////////////////////////////////////////////////// + int *verification_d = nullptr; + int *mats_d = nullptr; + int *num_nucs_d = nullptr; + int *n_windows_d = nullptr; + double *concs_d = nullptr; + double *pseudo_K0RS_d = nullptr; + Window *windows_d = nullptr; + Pole *poles_d = nullptr; + + // assign SYCL buffer to existing memory + // buffer num_nucs_d(SD.num_nucs,SD.length_num_nucs); + cudaMalloc((void **)&num_nucs_d, sizeof(int) * SD.length_num_nucs); + cudaMemcpy(num_nucs_d, SD.num_nucs, sizeof(int) * SD.length_num_nucs, + cudaMemcpyHostToDevice); + + // buffer concs_d(SD.concs, SD.length_concs); + cudaMalloc((void **)&concs_d, sizeof(double) * SD.length_concs); + cudaMemcpy(concs_d, SD.concs, sizeof(double) * SD.length_concs, + cudaMemcpyHostToDevice); + + // buffer mats_d(SD.mats, SD.length_mats); + cudaMalloc((void **)&mats_d, sizeof(int) * SD.length_mats); + cudaMemcpy(mats_d, SD.mats, sizeof(int) * SD.length_mats, + cudaMemcpyHostToDevice); + + // buffer n_windows_d(SD.n_windows, SD.length_n_windows); + cudaMalloc((void **)&n_windows_d, sizeof(int) * SD.length_n_windows); + cudaMemcpy(n_windows_d, SD.n_windows, sizeof(int) * SD.length_n_windows, + cudaMemcpyHostToDevice); + + // buffer poles_d(SD.poles, SD.length_poles); + cudaMalloc((void **)&poles_d, sizeof(Pole) * SD.length_poles); + cudaMemcpy(poles_d, SD.poles, sizeof(Pole) * SD.length_poles, + cudaMemcpyHostToDevice); + + // buffer windows_d(SD.windows, SD.length_windows); + cudaMalloc((void **)&windows_d, sizeof(Window) * SD.length_windows); + cudaMemcpy(windows_d, SD.windows, sizeof(Window) * SD.length_windows, + cudaMemcpyHostToDevice); + // buffer pseudo_K0RS_d(SD.pseudo_K0RS, SD.length_pseudo_K0RS); + cudaMalloc((void **)&pseudo_K0RS_d, sizeof(double) * SD.length_pseudo_K0RS); + cudaMemcpy(pseudo_K0RS_d, SD.pseudo_K0RS, + sizeof(double) * SD.length_pseudo_K0RS, cudaMemcpyHostToDevice); + + // buffer verification_d(verification_host, in.lookups); + cudaMalloc((void **)&verification_d, sizeof(int) * in.lookups); + cudaMemcpy(verification_d, verification_host, sizeof(int) * in.lookups, + cudaMemcpyHostToDevice); + + static jitify::JitCache kernel_cache; + jitify::Program program = kernel_cache.program( + simulation_cu, {"rsbench.h"}, {"-std=c++20", "--time=jitify.trace"}); + + double start = get_time(); + + //////////////////////////////////////////////////////////////////////////////// + // XS Lookup Simulation Loop + //////////////////////////////////////////////////////////////////////////////// + // lookup<<< dim3((in.lookups + 255) / 256), dim3(256) >>> ( + program.kernel("lookup") + .instantiate(in.lookups, in.doppler, in.numL, SD.max_num_windows, + SD.max_num_poles, SD.max_num_nucs) + .configure(((in.lookups + 255) / 256), 256) + .launch(num_nucs_d, concs_d, mats_d, verification_d, n_windows_d, + pseudo_K0RS_d, windows_d, poles_d); + + cudaDeviceSynchronize(); + double stop = get_time(); + printf( + "Kernel initialization, compilation, and execution took %.2lf seconds.\n", + stop - start); + + cudaMemcpy(verification_host, verification_d, sizeof(int) * in.lookups, + cudaMemcpyDeviceToHost); + + cudaFree(verification_d); + cudaFree(mats_d); + cudaFree(num_nucs_d); + cudaFree(concs_d); + cudaFree(n_windows_d); + cudaFree(windows_d); + cudaFree(poles_d); + cudaFree(pseudo_K0RS_d); + + // Host reduces the verification array + unsigned long long verification_scalar = 0; + for (int i = 0; i < in.lookups; i++) + verification_scalar += verification_host[i]; + + *vhash_result = verification_scalar; + *kernel_time = stop - start; +} + +double LCG_random_double(uint64_t *seed) { + const uint64_t m = 9223372036854775808ULL; // 2^63 + const uint64_t a = 2806196910506780709ULL; + const uint64_t c = 1ULL; + *seed = (a * (*seed) + c) % m; + return (double)(*seed) / (double)m; +} + +uint64_t LCG_random_int(uint64_t *seed) { + const uint64_t m = 9223372036854775808ULL; // 2^63 + const uint64_t a = 2806196910506780709ULL; + const uint64_t c = 1ULL; + *seed = (a * (*seed) + c) % m; + return *seed; +} + +RSComplex c_mul(RSComplex A, RSComplex B) { + double a = A.r; + double b = A.i; + double c = B.r; + double d = B.i; + RSComplex C; + C.r = (a * c) - (b * d); + C.i = (a * d) + (b * c); + return C; +} diff --git a/benchmarks/cuda-jitify/rsbench/simulation.cuh b/benchmarks/cuda-jitify/rsbench/simulation.cuh new file mode 100644 index 0000000..4b68cff --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/simulation.cuh @@ -0,0 +1,530 @@ +const char* const simulation_cu = "simulation.cu\n" +"#include \"rsbench.h\"\n" +"\n" +"////////////////////////////////////////////////////////////////////////////////////\n" +"// BASELINE FUNCTIONS\n" +"////////////////////////////////////////////////////////////////////////////////////\n" +"// All \"baseline\" code is at the top of this file. The baseline code is a simple\n" +"// implementation of the algorithm, with only minor CPU optimizations in place.\n" +"// Following these functions are a number of optimized variants,\n" +"// which each deploy a different combination of optimizations strategies. By\n" +"// default, RSBench will only run the baseline implementation. Optimized variants\n" +"// must be specifically selected using the \"-k \" command\n" +"// line argument.\n" +"////////////////////////////////////////////////////////////////////////////////////\n" +"\n" +"template<\n" +" int n_lookups,\n" +" int input_doppler,\n" +" int input_numL,\n" +" int max_num_windows,\n" +" int max_num_poles,\n" +" int max_num_nucs\n" +">\n" +"__global__ \n" +"void lookup ( \n" +" const int*__restrict__ num_nucs,\n" +" const double*__restrict__ concs,\n" +" const int*__restrict__ mats,\n" +" int*__restrict__ verification,\n" +" const int*__restrict__ n_windows,\n" +" const double*__restrict__ pseudo_K0RS,\n" +" const Window*__restrict__ windows,\n" +" const Pole*__restrict__ poles) {\n" +"\n" +" // get the index to operate on, first dimemsion\n" +" size_t i = threadIdx.x + blockIdx.x * blockDim.x;\n" +"\n" +" if (i < n_lookups) {\n" +"\n" +" // Set the initial seed value\n" +" uint64_t seed = STARTING_SEED; \n" +"\n" +" // Forward seed to lookup index (we need 2 samples per lookup)\n" +" seed = fast_forward_LCG(seed, 2*i);\n" +"\n" +" // Randomly pick an energy and material for the particle\n" +" double p_energy = LCG_random_double(&seed);\n" +" int mat = pick_mat(&seed); \n" +"\n" +" // debugging\n" +" //printf(\"E = %lf mat = %d\\n\", p_energy, mat);\n" +"\n" +" double macro_xs_vector[4] = {0};\n" +"\n" +" // Perform macroscopic Cross Section Lookup\n" +" calculate_macro_xs(\n" +" macro_xs_vector, mat, p_energy, \n" +" input_doppler, //in, \n" +" input_numL,\n" +" num_nucs, mats, \n" +" max_num_nucs, concs, n_windows, pseudo_K0RS, windows, poles, \n" +" max_num_windows, max_num_poles );\n" +"\n" +" // For verification, and to prevent the compiler from optimizing\n" +" // all work out, we interrogate the returned macro_xs_vector array\n" +" // to find its maximum value index, then increment the verification\n" +" // value by that index. In this implementation, we store to a global\n" +" // array that will get tranferred back and reduced on the host.\n" +" double max = -DBL_MAX;\n" +" int max_idx = 0;\n" +" for(int j = 0; j < 4; j++ )\n" +" {\n" +" if( macro_xs_vector[j] > max )\n" +" {\n" +" max = macro_xs_vector[j];\n" +" max_idx = j;\n" +" }\n" +" }\n" +" verification[i] = max_idx+1;\n" +" }\n" +"}\n" +"\n" +"template \n" +"__device__\n" +"void calculate_macro_xs(double * macro_xs, int mat, double E,\n" +" int input_doppler, int input_numL,\n" +" INT_T num_nucs, INT_T mats,\n" +" int max_num_nucs,\n" +" DOUBLE_T concs,\n" +" INT_T n_windows,\n" +" DOUBLE_T pseudo_K0Rs,\n" +" WINDOW_T windows,\n" +" POLE_T poles,\n" +" int max_num_windows,\n" +" int max_num_poles ) \n" +"{\n" +" // zero out macro vector\n" +" for( int i = 0; i < 4; i++ )\n" +" macro_xs[i] = 0;\n" +"\n" +" // for nuclide in mat\n" +" for( int i = 0; i < num_nucs[mat]; i++ )\n" +" {\n" +" double micro_xs[4];\n" +" int nuc = mats[mat * max_num_nucs + i];\n" +"\n" +" if( input_doppler == 1 )\n" +" calculate_micro_xs_doppler( micro_xs, nuc, E, input_numL, n_windows, pseudo_K0Rs, windows, poles, max_num_windows, max_num_poles);\n" +" else\n" +" calculate_micro_xs( micro_xs, nuc, E, input_numL, n_windows, pseudo_K0Rs, windows, poles, max_num_windows, max_num_poles);\n" +"\n" +" for( int j = 0; j < 4; j++ )\n" +" {\n" +" macro_xs[j] += micro_xs[j] * concs[mat * max_num_nucs + i];\n" +" }\n" +" // Debug\n" +" /*\n" +" printf(\"E = %.2lf, mat = %d, macro_xs[0] = %.2lf, macro_xs[1] = %.2lf, macro_xs[2] = %.2lf, macro_xs[3] = %.2lf\\n\",\n" +" E, mat, macro_xs[0], macro_xs[1], macro_xs[2], macro_xs[3] );\n" +" */\n" +" }\n" +"\n" +" // Debug\n" +" /*\n" +" printf(\"E = %.2lf, mat = %d, macro_xs[0] = %.2lf, macro_xs[1] = %.2lf, macro_xs[2] = %.2lf, macro_xs[3] = %.2lf\\n\",\n" +" E, mat, macro_xs[0], macro_xs[1], macro_xs[2], macro_xs[3] );\n" +" */\n" +"}\n" +"\n" +"// No Temperature dependence (i.e., 0K evaluation)\n" +"template \n" +"__device__\n" +"void calculate_micro_xs(double * micro_xs, int nuc, double E, int input_numL,\n" +" INT_T n_windows, DOUBLE_T pseudo_K0RS, WINDOW_T windows,\n" +" POLE_T poles, int max_num_windows, int max_num_poles)\n" +"{\n" +" // MicroScopic XS's to Calculate\n" +" double sigT;\n" +" double sigA;\n" +" double sigF;\n" +" double sigE;\n" +"\n" +" // Calculate Window Index\n" +" double spacing = 1.0 / n_windows[nuc];\n" +" int window = (int) ( E / spacing );\n" +" if( window == n_windows[nuc] )\n" +" window--;\n" +"\n" +" // Calculate sigTfactors\n" +" RSComplex sigTfactors[4]; // Of length input.numL, which is always 4\n" +" calculate_sig_T(nuc, E, input_numL, pseudo_K0RS, sigTfactors );\n" +"\n" +" // Calculate contributions from window \"background\" (i.e., poles outside window (pre-calculated)\n" +" Window w = windows[nuc * max_num_windows + window];\n" +" sigT = E * w.T;\n" +" sigA = E * w.A;\n" +" sigF = E * w.F;\n" +"\n" +" // Loop over Poles within window, add contributions\n" +" for( int i = w.start; i < w.end; i++ )\n" +" {\n" +" RSComplex PSIIKI;\n" +" RSComplex CDUM;\n" +" Pole pole = poles[nuc * max_num_poles + i];\n" +" RSComplex t1 = {0, 1};\n" +" RSComplex t2 = {sqrt(E), 0 };\n" +" PSIIKI = c_div( t1 , c_sub(pole.MP_EA,t2) );\n" +" RSComplex E_c = {E, 0};\n" +" CDUM = c_div(PSIIKI, E_c);\n" +" sigT += (c_mul(pole.MP_RT, c_mul(CDUM, sigTfactors[pole.l_value])) ).r;\n" +" sigA += (c_mul( pole.MP_RA, CDUM)).r;\n" +" sigF += (c_mul(pole.MP_RF, CDUM)).r;\n" +" }\n" +"\n" +" sigE = sigT - sigA;\n" +"\n" +" micro_xs[0] = sigT;\n" +" micro_xs[1] = sigA;\n" +" micro_xs[2] = sigF;\n" +" micro_xs[3] = sigE;\n" +"}\n" +"\n" +"// Temperature Dependent Variation of Kernel\n" +"// (This involves using the Complex Faddeeva function to\n" +"// Doppler broaden the poles within the window)\n" +"template \n" +"__device__\n" +"void calculate_micro_xs_doppler(double * micro_xs, int nuc, double E,\n" +" int input_numL, INT_T n_windows,\n" +" DOUBLE_T pseudo_K0RS, WINDOW_T windows,\n" +" POLE_T poles, int max_num_windows, int max_num_poles )\n" +"{\n" +" // MicroScopic XS's to Calculate\n" +" double sigT;\n" +" double sigA;\n" +" double sigF;\n" +" double sigE;\n" +"\n" +" // Calculate Window Index\n" +" double spacing = 1.0 / n_windows[nuc];\n" +" int window = (int) ( E / spacing );\n" +" if( window == n_windows[nuc] )\n" +" window--;\n" +"\n" +" // Calculate sigTfactors\n" +" RSComplex sigTfactors[4]; // Of length input.numL, which is always 4\n" +" calculate_sig_T(nuc, E, input_numL, pseudo_K0RS, sigTfactors );\n" +"\n" +" // Calculate contributions from window \"background\" (i.e., poles outside window (pre-calculated)\n" +" Window w = windows[nuc * max_num_windows + window];\n" +" sigT = E * w.T;\n" +" sigA = E * w.A;\n" +" sigF = E * w.F;\n" +"\n" +" double dopp = 0.5;\n" +"\n" +" // Loop over Poles within window, add contributions\n" +" for( int i = w.start; i < w.end; i++ )\n" +" {\n" +" Pole pole = poles[nuc * max_num_poles + i];\n" +"\n" +" // Prep Z\n" +" RSComplex E_c = {E, 0};\n" +" RSComplex dopp_c = {dopp, 0};\n" +" RSComplex Z = c_mul(c_sub(E_c, pole.MP_EA), dopp_c);\n" +"\n" +" // Evaluate Fadeeva Function\n" +" RSComplex faddeeva = fast_nuclear_W( Z );\n" +"\n" +" // Update W\n" +" sigT += (c_mul( pole.MP_RT, c_mul(faddeeva, sigTfactors[pole.l_value]) )).r;\n" +" sigA += (c_mul( pole.MP_RA , faddeeva)).r;\n" +" sigF += (c_mul( pole.MP_RF , faddeeva)).r;\n" +" }\n" +"\n" +" sigE = sigT - sigA;\n" +"\n" +" micro_xs[0] = sigT;\n" +" micro_xs[1] = sigA;\n" +" micro_xs[2] = sigF;\n" +" micro_xs[3] = sigE;\n" +"}\n" +"\n" +"// picks a material based on a probabilistic distribution\n" +"__device__\n" +"int pick_mat( uint64_t * seed )\n" +"{\n" +" // I have a nice spreadsheet supporting these numbers. They are\n" +" // the fractions (by volume) of material in the core. Not a \n" +" // *perfect* approximation of where XS lookups are going to occur,\n" +" // but this will do a good job of biasing the system nonetheless.\n" +"\n" +" double dist[12];\n" +" dist[0] = 0.140; // fuel\n" +" dist[1] = 0.052; // cladding\n" +" dist[2] = 0.275; // cold, borated water\n" +" dist[3] = 0.134; // hot, borated water\n" +" dist[4] = 0.154; // RPV\n" +" dist[5] = 0.064; // Lower, radial reflector\n" +" dist[6] = 0.066; // Upper reflector / top plate\n" +" dist[7] = 0.055; // bottom plate\n" +" dist[8] = 0.008; // bottom nozzle\n" +" dist[9] = 0.015; // top nozzle\n" +" dist[10] = 0.025; // top of fuel assemblies\n" +" dist[11] = 0.013; // bottom of fuel assemblies\n" +"\n" +" double roll = LCG_random_double(seed);\n" +"\n" +" // makes a pick based on the distro\n" +" for( int i = 0; i < 12; i++ )\n" +" {\n" +" double running = 0;\n" +" for( int j = i; j > 0; j-- )\n" +" running += dist[j];\n" +" if( roll < running )\n" +" return i;\n" +" }\n" +"\n" +" return 0;\n" +"}\n" +"\n" +"template \n" +"__device__\n" +"void calculate_sig_T( int nuc, double E, int input_numL, DOUBLE_T pseudo_K0RS, RSComplex * sigTfactors )\n" +"{\n" +" double phi;\n" +"\n" +" for( int i = 0; i < 4; i++ )\n" +" {\n" +" phi = pseudo_K0RS[nuc * input_numL + i] * sqrt(E);\n" +"\n" +" if( i == 1 )\n" +" phi -= - atan( phi );\n" +" else if( i == 2 )\n" +" phi -= atan( 3.0 * phi / (3.0 - phi*phi));\n" +" else if( i == 3 )\n" +" phi -= atan(phi*(15.0-phi*phi)/(15.0-6.0*phi*phi));\n" +"\n" +" phi *= 2.0;\n" +"\n" +" sigTfactors[i].r = cos(phi);\n" +" sigTfactors[i].i = -sin(phi);\n" +" }\n" +"}\n" +"\n" +"// This function uses a combination of the Abrarov Approximation\n" +"// and the QUICK_W three term asymptotic expansion.\n" +"// Only expected to use Abrarov ~0.5% of the time.\n" +"__device__\n" +"RSComplex fast_nuclear_W( RSComplex Z )\n" +"{\n" +" // Abrarov \n" +" if( c_abs(Z) < 6.0 )\n" +" {\n" +" // Precomputed parts for speeding things up\n" +" // (N = 10, Tm = 12.0)\n" +" RSComplex prefactor = {0, 8.124330e+01};\n" +" double an[10] = {\n" +" 2.758402e-01,\n" +" 2.245740e-01,\n" +" 1.594149e-01,\n" +" 9.866577e-02,\n" +" 5.324414e-02,\n" +" 2.505215e-02,\n" +" 1.027747e-02,\n" +" 3.676164e-03,\n" +" 1.146494e-03,\n" +" 3.117570e-04\n" +" };\n" +" double neg_1n[10] = {\n" +" -1.0,\n" +" 1.0,\n" +" -1.0,\n" +" 1.0,\n" +" -1.0,\n" +" 1.0,\n" +" -1.0,\n" +" 1.0,\n" +" -1.0,\n" +" 1.0\n" +" };\n" +"\n" +" double denominator_left[10] = {\n" +" 9.869604e+00,\n" +" 3.947842e+01,\n" +" 8.882644e+01,\n" +" 1.579137e+02,\n" +" 2.467401e+02,\n" +" 3.553058e+02,\n" +" 4.836106e+02,\n" +" 6.316547e+02,\n" +" 7.994380e+02,\n" +" 9.869604e+02\n" +" };\n" +"\n" +" RSComplex t1 = {0, 12};\n" +" RSComplex t2 = {12, 0};\n" +" RSComplex i = {0,1};\n" +" RSComplex one = {1, 0};\n" +" RSComplex W = c_div(c_mul(i, ( c_sub(one, fast_cexp(c_mul(t1, Z))) )) , c_mul(t2, Z));\n" +" RSComplex sum = {0,0};\n" +" for( int n = 0; n < 10; n++ )\n" +" {\n" +" RSComplex t3 = {neg_1n[n], 0};\n" +" RSComplex top = c_sub(c_mul(t3, fast_cexp(c_mul(t1, Z))), one);\n" +" RSComplex t4 = {denominator_left[n], 0};\n" +" RSComplex t5 = {144, 0};\n" +" RSComplex bot = c_sub(t4, c_mul(t5,c_mul(Z,Z)));\n" +" RSComplex t6 = {an[n], 0};\n" +" sum = c_add(sum, c_mul(t6, c_div(top,bot)));\n" +" }\n" +" W = c_add(W, c_mul(prefactor, c_mul(Z, sum)));\n" +" return W;\n" +" }\n" +" else\n" +" {\n" +" // QUICK_2 3 Term Asymptotic Expansion (Accurate to O(1e-6)).\n" +" // Pre-computed parameters\n" +" RSComplex a = {0.512424224754768462984202823134979415014943561548661637413182,0};\n" +" RSComplex b = {0.275255128608410950901357962647054304017026259671664935783653, 0};\n" +" RSComplex c = {0.051765358792987823963876628425793170829107067780337219430904, 0};\n" +" RSComplex d = {2.724744871391589049098642037352945695982973740328335064216346, 0};\n" +"\n" +" RSComplex i = {0,1};\n" +" RSComplex Z2 = c_mul(Z, Z);\n" +" // Three Term Asymptotic Expansion\n" +" RSComplex W = c_mul(c_mul(Z,i), (c_add(c_div(a,(c_sub(Z2, b))) , c_div(c,(c_sub(Z2, d))))));\n" +"\n" +" return W;\n" +" }\n" +"}\n" +"\n" +"__host__ __device__\n" +"double LCG_random_double(uint64_t * seed)\n" +"{\n" +" const uint64_t m = 9223372036854775808ULL; // 2^63\n" +" const uint64_t a = 2806196910506780709ULL;\n" +" const uint64_t c = 1ULL;\n" +" *seed = (a * (*seed) + c) % m;\n" +" return (double) (*seed) / (double) m;\n" +"} \n" +"\n" +"uint64_t LCG_random_int(uint64_t * seed)\n" +"{\n" +" const uint64_t m = 9223372036854775808ULL; // 2^63\n" +" const uint64_t a = 2806196910506780709ULL;\n" +" const uint64_t c = 1ULL;\n" +" *seed = (a * (*seed) + c) % m;\n" +" return *seed;\n" +"} \n" +"\n" +"__device__\n" +"uint64_t fast_forward_LCG(uint64_t seed, uint64_t n)\n" +"{\n" +" const uint64_t m = 9223372036854775808ULL; // 2^63\n" +" uint64_t a = 2806196910506780709ULL;\n" +" uint64_t c = 1ULL;\n" +"\n" +" n = n % m;\n" +"\n" +" uint64_t a_new = 1;\n" +" uint64_t c_new = 0;\n" +"\n" +" while(n > 0) \n" +" {\n" +" if(n & 1)\n" +" {\n" +" a_new *= a;\n" +" c_new = c_new * a + c;\n" +" }\n" +" c *= (a + 1);\n" +" a *= a;\n" +"\n" +" n >>= 1;\n" +" }\n" +"\n" +" return (a_new * seed + c_new) % m;\n" +"}\n" +"\n" +"// Complex arithmetic functions\n" +"\n" +"__device__\n" +"RSComplex c_add( RSComplex A, RSComplex B)\n" +"{\n" +" RSComplex C;\n" +" C.r = A.r + B.r;\n" +" C.i = A.i + B.i;\n" +" return C;\n" +"}\n" +"\n" +"__device__\n" +"RSComplex c_sub( RSComplex A, RSComplex B)\n" +"{\n" +" RSComplex C;\n" +" C.r = A.r - B.r;\n" +" C.i = A.i - B.i;\n" +" return C;\n" +"}\n" +"\n" +"__host__ __device__\n" +"RSComplex c_mul( RSComplex A, RSComplex B)\n" +"{\n" +" double a = A.r;\n" +" double b = A.i;\n" +" double c = B.r;\n" +" double d = B.i;\n" +" RSComplex C;\n" +" C.r = (a*c) - (b*d);\n" +" C.i = (a*d) + (b*c);\n" +" return C;\n" +"}\n" +"\n" +"__device__\n" +"RSComplex c_div( RSComplex A, RSComplex B)\n" +"{\n" +" double a = A.r;\n" +" double b = A.i;\n" +" double c = B.r;\n" +" double d = B.i;\n" +" RSComplex C;\n" +" double denom = c*c + d*d;\n" +" C.r = ( (a*c) + (b*d) ) / denom;\n" +" C.i = ( (b*c) - (a*d) ) / denom;\n" +" return C;\n" +"}\n" +"\n" +"__device__\n" +"double c_abs( RSComplex A)\n" +"{\n" +" return sqrt(A.r*A.r + A.i * A.i);\n" +"}\n" +"\n" +"\n" +"// Fast (but inaccurate) exponential function\n" +"// Written By \"ACMer\":\n" +"// https://codingforspeed.com/using-faster-exponential-approximation/\n" +"// We use our own to avoid small differences in compiler specific\n" +"// exp() intrinsic implementations that make it difficult to verify\n" +"// if the code is working correctly or not.\n" +"__device__\n" +"double fast_exp(double x)\n" +"{\n" +" x = 1.0 + x * 0.000244140625;\n" +" x *= x; x *= x; x *= x; x *= x;\n" +" x *= x; x *= x; x *= x; x *= x;\n" +" x *= x; x *= x; x *= x; x *= x;\n" +" return x;\n" +"}\n" +"\n" +"// Implementation based on:\n" +"// z = x + iy\n" +"// cexp(z) = e^x * (cos(y) + i * sin(y))\n" +"__device__\n" +"RSComplex fast_cexp( RSComplex z )\n" +"{\n" +" double x = z.r;\n" +" double y = z.i;\n" +"\n" +" // For consistency across architectures, we\n" +" // will use our own exponetial implementation\n" +" //double t1 = exp(x);\n" +" double t1 = fast_exp(x);\n" +" double t2 = cos(y);\n" +" double t3 = sin(y);\n" +" RSComplex t4 = {t2, t3};\n" +" RSComplex t5 = {t1, 0};\n" +" RSComplex result = c_mul(t5, (t4));\n" +" return result;\n" +"} \n" +; diff --git a/benchmarks/cuda-jitify/rsbench/utils.cu b/benchmarks/cuda-jitify/rsbench/utils.cu new file mode 100644 index 0000000..e06b352 --- /dev/null +++ b/benchmarks/cuda-jitify/rsbench/utils.cu @@ -0,0 +1,29 @@ +#include "rsbench.h" + +size_t get_mem_estimate( Input input ) +{ + size_t poles = input.n_nuclides * input.avg_n_poles * sizeof(Pole) + input.n_nuclides * sizeof(Pole *); + size_t windows = input.n_nuclides * input.avg_n_windows * sizeof(Window) + input.n_nuclides * sizeof(Window *); + size_t pseudo_K0RS = input.n_nuclides * input.numL * sizeof( double ) + input.n_nuclides * sizeof(double); + size_t other = input.n_nuclides * 2 * sizeof(int); + + size_t total = poles + windows + pseudo_K0RS + other; + + return total; +} + +double get_time(void) +{ + #ifdef OPENMP + return omp_get_wtime(); + #endif + + struct timeval timecheck; + + gettimeofday(&timecheck, NULL); + long ms = (long)timecheck.tv_sec * 1000 + (long)timecheck.tv_usec / 1000; + + double time = (double) ms / 1000.0; + + return time; +} diff --git a/benchmarks/cuda-jitify/sw4ck/LICENSE b/benchmarks/cuda-jitify/sw4ck/LICENSE new file mode 100644 index 0000000..9bd56be --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/LICENSE @@ -0,0 +1,339 @@ +GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + +Copyright (C) 1989, 1991 Free Software Foundation, Inc., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + + Preamble + +The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + +To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + +For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + +We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + +Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + +Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + +The precise terms and conditions for copying, distribution and +modification follow. + +GNU GENERAL PUBLIC LICENSE +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + +1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + +a) You must cause the modified files to carry prominent notices +stating that you changed the files and the date of any change. + +b) You must cause any work that you distribute or publish, that in +whole or in part contains or is derived from the Program or any +part thereof, to be licensed as a whole at no charge to all third +parties under the terms of this License. + +c) If the modified program normally reads commands interactively +when run, you must cause it, when started running for such +interactive use in the most ordinary way, to print or display an +announcement including an appropriate copyright notice and a +notice that there is no warranty (or else, saying that you provide +a warranty) and that users may redistribute the program under +these conditions, and telling the user how to view a copy of this +License. (Exception: if the Program itself is interactive but +does not normally print such an announcement, your work based on +the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + +3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + +a) Accompany it with the complete corresponding machine-readable +source code, which must be distributed under the terms of Sections +1 and 2 above on a medium customarily used for software interchange; or, + +b) Accompany it with a written offer, valid for at least three +years, to give any third party, for a charge no more than your +cost of physically performing source distribution, a complete +machine-readable copy of the corresponding source code, to be +distributed under the terms of Sections 1 and 2 above on a medium +customarily used for software interchange; or, + +c) Accompany it with the information you received as to the offer +to distribute corresponding source code. (This alternative is +allowed only for noncommercial distribution and only if you +received the program in object code or executable form with such +an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + +4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + +5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + +6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + +7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + +8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + +9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + +10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + +11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + +12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + +Copyright (C) + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program; if not, write to the Free Software Foundation, Inc., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + +Gnomovision version 69, Copyright (C) year name of author +Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. +This is free software, and you are welcome to redistribute it +under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + +Yoyodyne, Inc., hereby disclaims all copyright interest in the program +`Gnomovision' (which makes passes at compilers) written by James Hacker. + +, 1 April 1989 +Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/benchmarks/cuda-jitify/sw4ck/Makefile b/benchmarks/cuda-jitify/sw4ck/Makefile new file mode 100644 index 0000000..fb49036 --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/Makefile @@ -0,0 +1,82 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC ?= nvcc +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = +JIT_PATH ?=/p/vast1/koparasy/JIT/jit/build/ +JIT ?= no + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + +program = sw4ck$(SUFFIX).x + +source = main.cu curvilinear4sg.cu + +obj = $(source:.cu=$(SUFFIX).o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := $(EXTRA_CFLAGS) -std=c++14 --cuda-gpu-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia + +# Linker Flags +LDFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lnvrtc -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3 +endif + +ifeq ($(JIT),yes) + LIBLLVM_PATH=$(dir $(realpath $(CC)))../lib + CFLAGS += -fpass-plugin=$(JIT_PATH)/pass/libProteusJitPass.so -DENABLE_JIT + LDFLAGS += -lnvptxcompiler_static +endif + +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +main$(SUFFIX).o: main.cu utils.cpp utils.h + $(CC) $(CFLAGS) -c $< -o $@ + +curvilinear4sg$(SUFFIX).o : curvilinear4sg.cu \ + kernel1.cpp \ + kernel2.cpp \ + kernel3.cpp \ + kernel4.cpp \ + kernel5.cpp \ + utils.h \ + curvilinear4sg.h + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf *.x *.o + +run: $(program) + $(LAUNCHER) ./$(program) sw4ck.in 100 diff --git a/benchmarks/cuda-jitify/sw4ck/curvilinear4sg.cu b/benchmarks/cuda-jitify/sw4ck/curvilinear4sg.cu new file mode 100644 index 0000000..598f3a4 --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/curvilinear4sg.cu @@ -0,0 +1,110 @@ +#include "../../external/jitify/jitify.hpp" +#include "curvilinear4sg.h" +#include "kernel1.cuh" +#include "kernel2.cuh" +#include "kernel3.cuh" +#include "kernel4.cuh" +#include "kernel5.cuh" + +void curvilinear4sg_ci(int ifirst, int ilast, int jfirst, int jlast, int kfirst, + int klast, float_sw4 *d_u, float_sw4 *d_mu, + float_sw4 *d_lambda, float_sw4 *d_met, float_sw4 *d_jac, + float_sw4 *d_lu, int *onesided, float_sw4 *d_acof, + float_sw4 *d_bope, float_sw4 *d_ghcof, + float_sw4 *d_acof_no_gp, float_sw4 *d_ghcof_no_gp, + float_sw4 *d_strx, float_sw4 *d_stry, int nk, char op) { + + float_sw4 a1 = 0; + float_sw4 sgn = 1; + if (op == '=') { + a1 = 0; + sgn = 1; + } else if (op == '+') { + a1 = 1; + sgn = 1; + } else if (op == '-') { + a1 = 1; + sgn = -1; + } + + int kstart = kfirst + 2; + int kend = klast - 2; + if (onesided[5] == 1) + kend = nk - 6; + + static jitify::JitCache kernel_cache; + std::string all_kernels = std::string(kernel1_cpp) + + std::string(kernel2_cpp) + + std::string(kernel3_cpp) + + std::string(kernel4_cpp) + std::string(kernel5_cpp); + jitify::Program program = + kernel_cache.program(all_kernels.c_str(), {"curvilinear4sg.h", "utils.h"}, + {"-std=c++20", "--time=jitify.trace"}); + + if (onesided[4] == 1) { + kstart = 7; + + Range<16> I(ifirst + 2, ilast - 1); + Range<4> J(jfirst + 2, jlast - 1); + Range<3> K(1, 6 + 1); // This was 6 + + dim3 tpb(I.tpb, J.tpb, K.tpb); + dim3 blocks(I.blocks, J.blocks, K.blocks); + + // kernel1<<>>( + program.kernel("kernel1") + .instantiate(I.start, I.end, J.start, J.end, K.start, K.end, ifirst, + ilast, jfirst, jlast, kfirst, klast, a1, sgn) + .configure(blocks, tpb) + .launch(d_u, d_mu, d_lambda, d_met, d_jac, d_lu, d_acof, d_bope, + d_ghcof, d_acof_no_gp, d_ghcof_no_gp, d_strx, d_stry); + } + + Range<64> I(ifirst + 2, ilast - 1); + Range<2> J(jfirst + 2, jlast - 1); + Range<2> K(kstart, kend + 1); // Changed for CUrvi-MR Was klast-1 + + dim3 tpb(I.tpb, J.tpb, K.tpb); + dim3 blocks(I.blocks, J.blocks, K.blocks); + + // kernel2<<>>( + program.kernel("kernel2") + .instantiate(I.start, I.end, J.start, J.end, K.start, K.end, ifirst, + ilast, jfirst, jlast, kfirst, klast, a1, sgn) + .configure(blocks, tpb) + .launch(d_u, d_mu, d_lambda, d_met, d_jac, d_lu, d_acof, d_bope, d_ghcof, + d_acof_no_gp, d_ghcof_no_gp, d_strx, d_stry); + + // kernel3<<>>( + program.kernel("kernel3") + .instantiate(I.start, I.end, J.start, J.end, K.start, K.end, ifirst, + ilast, jfirst, jlast, kfirst, klast, a1, sgn) + .configure(blocks, tpb) + .launch(d_u, d_mu, d_lambda, d_met, d_jac, d_lu, d_acof, d_bope, d_ghcof, + d_acof_no_gp, d_ghcof_no_gp, d_strx, d_stry); + + // kernel4<<>>( + program.kernel("kernel4") + .instantiate(I.start, I.end, J.start, J.end, K.start, K.end, ifirst, + ilast, jfirst, jlast, kfirst, klast, a1, sgn) + .configure(blocks, tpb) + .launch(d_u, d_mu, d_lambda, d_met, d_jac, d_lu, d_acof, d_bope, d_ghcof, + d_acof_no_gp, d_ghcof_no_gp, d_strx, d_stry); + + if (onesided[5] == 1) { + Range<16> I(ifirst + 2, ilast - 1); + Range<4> J(jfirst + 2, jlast - 1); + Range<4> K(nk - 5, nk + 1); // THIS WAS 6 + + dim3 tpb(I.tpb, J.tpb, K.tpb); + dim3 blocks(I.blocks, J.blocks, K.blocks); + + // kernel5<<>>( + program.kernel("kernel5") + .instantiate(I.start, I.end, J.start, J.end, K.start, K.end, ifirst, + ilast, jfirst, jlast, kfirst, klast, nk, a1, sgn) + .configure(blocks, tpb) + .launch(d_u, d_mu, d_lambda, d_met, d_jac, d_lu, d_acof, d_bope, + d_ghcof, d_acof_no_gp, d_ghcof_no_gp, d_strx, d_stry); + } +} diff --git a/benchmarks/cuda-jitify/sw4ck/curvilinear4sg.h b/benchmarks/cuda-jitify/sw4ck/curvilinear4sg.h new file mode 100644 index 0000000..883e04a --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/curvilinear4sg.h @@ -0,0 +1,51 @@ +#ifndef CURVILINEAR4SG_H +#define CURVILINEAR4SG_H + +#include "utils.h" + +template +class Range { + public: + Range(int istart, int iend) : start(istart), end(iend), tpb(N) { + blocks = (end - start) / N; + blocks = ((end - start) % N == 0) ? blocks : blocks + 1; + invalid = false; + if (blocks <= 0) invalid = true; + }; + int start; + int end; + int blocks; + int tpb; + bool invalid; +}; + + +#define ni (ilast - ifirst + 1) +#define nij (ni * (jlast - jfirst + 1)) +#define nijk (nij * (klast - kfirst + 1)) +#define base (-(ifirst + ni * jfirst + nij * kfirst)) +#define base3 (base - nijk) +#define base4 (base - nijk) +#define ifirst0 (ifirst) +#define jfirst0 (jfirst) + +#define mu(i, j, k) a_mu[base + (i) + ni * (j) + nij * (k)] +#define la(i, j, k) a_lambda[base + (i) + ni * (j) + nij * (k)] +#define jac(i, j, k) a_jac[base + (i) + ni * (j) + nij * (k)] +#define u(c, i, j, k) a_u[base3 + (i) + ni * (j) + nij * (k) + nijk * (c)] +#define lu(c, i, j, k) a_lu[base3 + (i) + ni * (j) + nij * (k) + nijk * (c)] +#define met(c, i, j, k) a_met[base4 + (i) + ni * (j) + nij * (k) + nijk * (c)] +#define strx(i) a_strx[i - ifirst0] +#define stry(j) a_stry[j - jfirst0] +#define acof(i, j, k) a_acof[(i - 1) + 6 * (j - 1) + 48 * (k - 1)] +#define bope(i, j) a_bope[i - 1 + 6 * (j - 1)] +#define ghcof(i) a_ghcof[i - 1] +#define acof_no_gp(i, j, k) a_acof_no_gp[(i - 1) + 6 * (j - 1) + 48 * (k - 1)] +#define ghcof_no_gp(i) a_ghcof_no_gp[i - 1] + +#define i6 ((float_sw4)(1.0 / 6)) +#define tf ((float_sw4)(0.75)) +#define c1 ((float_sw4)(2.0 / 3)) +#define c2 ((float_sw4)(-1.0 / 12)) + +#endif diff --git a/benchmarks/cuda-jitify/sw4ck/experiments.json b/benchmarks/cuda-jitify/sw4ck/experiments.json new file mode 100644 index 0000000..53bffa2 --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/experiments.json @@ -0,0 +1,9 @@ +{ + "name": "sw4ck", + "executables": { + "jitify": "sw4ck-jit.x" + }, + "inputs": { + "default": "sw4ck.in 1000" + } +} diff --git a/benchmarks/cuda-jitify/sw4ck/kernel1.cpp b/benchmarks/cuda-jitify/sw4ck/kernel1.cpp new file mode 100644 index 0000000..83b58c4 --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/kernel1.cpp @@ -0,0 +1,662 @@ +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))) +#endif +void kernel1( + const int start0, const int N0, + const int start1, const int N1, + const int start2, const int N2, + const int ifirst, const int ilast, + const int jfirst, const int jlast, + const int kfirst, const int klast, + const float_sw4 a1, const float_sw4 sgn, + const float_sw4* __restrict__ a_u, + const float_sw4* __restrict__ a_mu, + const float_sw4* __restrict__ a_lambda, + const float_sw4* __restrict__ a_met, + const float_sw4* __restrict__ a_jac, + float_sw4* __restrict__ a_lu, + const float_sw4* __restrict__ a_acof, + const float_sw4* __restrict__ a_bope, + const float_sw4* __restrict__ a_ghcof, + const float_sw4* __restrict__ a_acof_no_gp, + const float_sw4* __restrict__ a_ghcof_no_gp, + const float_sw4* __restrict__ a_strx, + const float_sw4* __restrict__ a_stry ) +{ + + int i = start0 + threadIdx.x + blockIdx.x * blockDim.x; + int j = start1 + threadIdx.y + blockIdx.y * blockDim.y; + int k = start2 + threadIdx.z + blockIdx.z * blockDim.z; + if ((i < N0) && (j < N1) && (k < N2)) { + // 5 ops + float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k); + // float_sw4 ijac = 1 / jac(i, j, k); + float_sw4 istry = 1 / (stry(j)); + float_sw4 istrx = 1 / (strx(i)); + float_sw4 istrxy = istry * istrx; + // ijac*=strx(i) * stry(j); + + float_sw4 r1 = 0, r2 = 0, r3 = 0; + + // pp derivative (u) (u-eq) + // 53 ops, tot=58 + float_sw4 cof1 = (2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(1, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2); + float_sw4 cof2 = (2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(1, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1); + float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * strx(i); + float_sw4 cof4 = (2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(1, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1); + float_sw4 cof5 = (2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(1, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2); + + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r1 = r1 + i6 * + (mux1 * (u(1, i - 2, j, k) - u(1, i, j, k)) + + mux2 * (u(1, i - 1, j, k) - u(1, i, j, k)) + + mux3 * (u(1, i + 1, j, k) - u(1, i, j, k)) + + mux4 * (u(1, i + 2, j, k) - u(1, i, j, k))) * + istry; + + // qq derivative (u) (u-eq) + // 43 ops, tot=101 + cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r1 = r1 + i6 * + (mux1 * (u(1, i, j - 2, k) - u(1, i, j, k)) + + mux2 * (u(1, i, j - 1, k) - u(1, i, j, k)) + + mux3 * (u(1, i, j + 1, k) - u(1, i, j, k)) + + mux4 * (u(1, i, j + 2, k) - u(1, i, j, k))) * + istrx; + + // pp derivative (v) (v-eq) + // 43 ops, tot=144 + cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * strx(i - 2); + cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * strx(i - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * strx(i + 1); + cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * strx(i + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 = r2 + i6 * + (mux1 * (u(2, i - 2, j, k) - u(2, i, j, k)) + + mux2 * (u(2, i - 1, j, k) - u(2, i, j, k)) + + mux3 * (u(2, i + 1, j, k) - u(2, i, j, k)) + + mux4 * (u(2, i + 2, j, k) - u(2, i, j, k))) * + istry; + + // qq derivative (v) (v-eq) + // 53 ops, tot=197 + cof1 = (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * + met(1, i, j - 2, k) * met(1, i, j - 2, k) * stry(j - 2); + cof2 = (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * + met(1, i, j - 1, k) * met(1, i, j - 1, k) * stry(j - 1); + cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * stry(j); + cof4 = (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * + met(1, i, j + 1, k) * met(1, i, j + 1, k) * stry(j + 1); + cof5 = (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * + met(1, i, j + 2, k) * met(1, i, j + 2, k) * stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 = r2 + i6 * + (mux1 * (u(2, i, j - 2, k) - u(2, i, j, k)) + + mux2 * (u(2, i, j - 1, k) - u(2, i, j, k)) + + mux3 * (u(2, i, j + 1, k) - u(2, i, j, k)) + + mux4 * (u(2, i, j + 2, k) - u(2, i, j, k))) * + istrx; + + // pp derivative (w) (w-eq) + // 43 ops, tot=240 + cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * strx(i - 2); + cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * strx(i - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * strx(i + 1); + cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * strx(i + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 = r3 + i6 * + (mux1 * (u(3, i - 2, j, k) - u(3, i, j, k)) + + mux2 * (u(3, i - 1, j, k) - u(3, i, j, k)) + + mux3 * (u(3, i + 1, j, k) - u(3, i, j, k)) + + mux4 * (u(3, i + 2, j, k) - u(3, i, j, k))) * + istry; + + // qq derivative (w) (w-eq) + // 43 ops, tot=283 + cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 = r3 + i6 * + (mux1 * (u(3, i, j - 2, k) - u(3, i, j, k)) + + mux2 * (u(3, i, j - 1, k) - u(3, i, j, k)) + + mux3 * (u(3, i, j + 1, k) - u(3, i, j, k)) + + mux4 * (u(3, i, j + 2, k) - u(3, i, j, k))) * + istrx; + + // All rr-derivatives at once + // averaging the coefficient + // 54*8*8+25*8 = 3656 ops, tot=3939 + float_sw4 mucofu2, mucofuv, mucofuw, mucofvw, mucofv2, mucofw2; + //#pragma unroll 1 // slowdown due to register spills + for (int q = 1; q <= 8; q++) { + mucofu2 = 0; + mucofuv = 0; + mucofuw = 0; + mucofvw = 0; + mucofv2 = 0; + mucofw2 = 0; + //#pragma unroll 1 // slowdown due to register spills + for (int m = 1; m <= 8; m++) { + mucofu2 += acof(k, q, m) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) * + strx(i) * met(2, i, j, m) * strx(i) + + mu(i, j, m) * (met(3, i, j, m) * stry(j) * + met(3, i, j, m) * stry(j) + + met(4, i, j, m) * met(4, i, j, m))); + mucofv2 += acof(k, q, m) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(3, i, j, m) * + stry(j) * met(3, i, j, m) * stry(j) + + mu(i, j, m) * (met(2, i, j, m) * strx(i) * + met(2, i, j, m) * strx(i) + + met(4, i, j, m) * met(4, i, j, m))); + mucofw2 += acof(k, q, m) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(4, i, j, m) * + met(4, i, j, m) + + mu(i, j, m) * (met(2, i, j, m) * strx(i) * + met(2, i, j, m) * strx(i) + + met(3, i, j, m) * stry(j) * + met(3, i, j, m) * stry(j))); + mucofuv += acof(k, q, m) * (mu(i, j, m) + la(i, j, m)) * + met(2, i, j, m) * met(3, i, j, m); + mucofuw += acof(k, q, m) * (mu(i, j, m) + la(i, j, m)) * + met(2, i, j, m) * met(4, i, j, m); + mucofvw += acof(k, q, m) * (mu(i, j, m) + la(i, j, m)) * + met(3, i, j, m) * met(4, i, j, m); + } + + // Computing the second derivative, + r1 += istrxy * mucofu2 * u(1, i, j, q) + mucofuv * u(2, i, j, q) + + istry * mucofuw * u(3, i, j, q); + r2 += mucofuv * u(1, i, j, q) + istrxy * mucofv2 * u(2, i, j, q) + + istrx * mucofvw * u(3, i, j, q); + r3 += istry * mucofuw * u(1, i, j, q) + + istrx * mucofvw * u(2, i, j, q) + + istrxy * mucofw2 * u(3, i, j, q); + } + + // Ghost point values, only nonzero for k=1. + // 72 ops., tot=4011 + mucofu2 = + ghcof(k) * ((2 * mu(i, j, 1) + la(i, j, 1)) * met(2, i, j, 1) * + strx(i) * met(2, i, j, 1) * strx(i) + + mu(i, j, 1) * (met(3, i, j, 1) * stry(j) * + met(3, i, j, 1) * stry(j) + + met(4, i, j, 1) * met(4, i, j, 1))); + mucofv2 = + ghcof(k) * ((2 * mu(i, j, 1) + la(i, j, 1)) * met(3, i, j, 1) * + stry(j) * met(3, i, j, 1) * stry(j) + + mu(i, j, 1) * (met(2, i, j, 1) * strx(i) * + met(2, i, j, 1) * strx(i) + + met(4, i, j, 1) * met(4, i, j, 1))); + mucofw2 = + ghcof(k) * + ((2 * mu(i, j, 1) + la(i, j, 1)) * met(4, i, j, 1) * + met(4, i, j, 1) + + mu(i, j, 1) * + (met(2, i, j, 1) * strx(i) * met(2, i, j, 1) * strx(i) + + met(3, i, j, 1) * stry(j) * met(3, i, j, 1) * stry(j))); + mucofuv = ghcof(k) * (mu(i, j, 1) + la(i, j, 1)) * met(2, i, j, 1) * + met(3, i, j, 1); + mucofuw = ghcof(k) * (mu(i, j, 1) + la(i, j, 1)) * met(2, i, j, 1) * + met(4, i, j, 1); + mucofvw = ghcof(k) * (mu(i, j, 1) + la(i, j, 1)) * met(3, i, j, 1) * + met(4, i, j, 1); + r1 += istrxy * mucofu2 * u(1, i, j, 0) + mucofuv * u(2, i, j, 0) + + istry * mucofuw * u(3, i, j, 0); + r2 += mucofuv * u(1, i, j, 0) + istrxy * mucofv2 * u(2, i, j, 0) + + istrx * mucofvw * u(3, i, j, 0); + r3 += istry * mucofuw * u(1, i, j, 0) + + istrx * mucofvw * u(2, i, j, 0) + + istrxy * mucofw2 * u(3, i, j, 0); + + // pq-derivatives (u-eq) + // 38 ops., tot=4049 + r1 += + c2 * + (mu(i, j + 2, k) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i - 2, j + 2, k)) + + c1 * + (u(2, i + 1, j + 2, k) - u(2, i - 1, j + 2, k))) - + mu(i, j - 2, k) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(2, i + 2, j - 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i + 1, j - 2, k) - + u(2, i - 1, j - 2, k)))) + + c1 * + (mu(i, j + 1, k) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * + (c2 * (u(2, i + 2, j + 1, k) - u(2, i - 2, j + 1, k)) + + c1 * + (u(2, i + 1, j + 1, k) - u(2, i - 1, j + 1, k))) - + mu(i, j - 1, k) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(2, i + 2, j - 1, k) - u(2, i - 2, j - 1, k)) + + c1 * + (u(2, i + 1, j - 1, k) - u(2, i - 1, j - 1, k)))); + + // qp-derivatives (u-eq) + // 38 ops. tot=4087 + r1 += + c2 * + (la(i + 2, j, k) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i + 2, j - 2, k)) + + c1 * + (u(2, i + 2, j + 1, k) - u(2, i + 2, j - 1, k))) - + la(i - 2, j, k) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(2, i - 2, j + 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i - 2, j + 1, k) - + u(2, i - 2, j - 1, k)))) + + c1 * + (la(i + 1, j, k) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(2, i + 1, j + 2, k) - u(2, i + 1, j - 2, k)) + + c1 * + (u(2, i + 1, j + 1, k) - u(2, i + 1, j - 1, k))) - + la(i - 1, j, k) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(2, i - 1, j + 2, k) - u(2, i - 1, j - 2, k)) + + c1 * + (u(2, i - 1, j + 1, k) - u(2, i - 1, j - 1, k)))); + + // pq-derivatives (v-eq) + // 38 ops. , tot=4125 + r2 += + c2 * + (la(i, j + 2, k) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i - 2, j + 2, k)) + + c1 * + (u(1, i + 1, j + 2, k) - u(1, i - 1, j + 2, k))) - + la(i, j - 2, k) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(1, i + 2, j - 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i + 1, j - 2, k) - + u(1, i - 1, j - 2, k)))) + + c1 * + (la(i, j + 1, k) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * + (c2 * (u(1, i + 2, j + 1, k) - u(1, i - 2, j + 1, k)) + + c1 * + (u(1, i + 1, j + 1, k) - u(1, i - 1, j + 1, k))) - + la(i, j - 1, k) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(1, i + 2, j - 1, k) - u(1, i - 2, j - 1, k)) + + c1 * + (u(1, i + 1, j - 1, k) - u(1, i - 1, j - 1, k)))); + + //* qp-derivatives (v-eq) + // 38 ops., tot=4163 + r2 += + c2 * + (mu(i + 2, j, k) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i + 2, j - 2, k)) + + c1 * + (u(1, i + 2, j + 1, k) - u(1, i + 2, j - 1, k))) - + mu(i - 2, j, k) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j + 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i - 2, j + 1, k) - + u(1, i - 2, j - 1, k)))) + + c1 * + (mu(i + 1, j, k) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j + 2, k) - u(1, i + 1, j - 2, k)) + + c1 * + (u(1, i + 1, j + 1, k) - u(1, i + 1, j - 1, k))) - + mu(i - 1, j, k) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j + 2, k) - u(1, i - 1, j - 2, k)) + + c1 * + (u(1, i - 1, j + 1, k) - u(1, i - 1, j - 1, k)))); + + // rp - derivatives + // 24*8 = 192 ops, tot=4355 + float_sw4 dudrm2 = 0, dudrm1 = 0, dudrp1 = 0, dudrp2 = 0; + float_sw4 dvdrm2 = 0, dvdrm1 = 0, dvdrp1 = 0, dvdrp2 = 0; + float_sw4 dwdrm2 = 0, dwdrm1 = 0, dwdrp1 = 0, dwdrp2 = 0; + //#pragma unroll 1 + for (int q = 1; q <= 8; q++) { + dudrm2 += bope(k, q) * u(1, i - 2, j, q); + dvdrm2 += bope(k, q) * u(2, i - 2, j, q); + dwdrm2 += bope(k, q) * u(3, i - 2, j, q); + dudrm1 += bope(k, q) * u(1, i - 1, j, q); + dvdrm1 += bope(k, q) * u(2, i - 1, j, q); + dwdrm1 += bope(k, q) * u(3, i - 1, j, q); + dudrp2 += bope(k, q) * u(1, i + 2, j, q); + dvdrp2 += bope(k, q) * u(2, i + 2, j, q); + dwdrp2 += bope(k, q) * u(3, i + 2, j, q); + dudrp1 += bope(k, q) * u(1, i + 1, j, q); + dvdrp1 += bope(k, q) * u(2, i + 1, j, q); + dwdrp1 += bope(k, q) * u(3, i + 1, j, q); + } + + // rp derivatives (u-eq) + // 67 ops, tot=4422 + r1 += (c2 * ((2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(2, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2) * dudrp2 + + la(i + 2, j, k) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * dvdrp2 * stry(j) + + la(i + 2, j, k) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * dwdrp2 - + ((2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(2, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2) * dudrm2 + + la(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * dvdrm2 * stry(j) + + la(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * dwdrm2)) + + c1 * ((2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(2, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1) * dudrp1 + + la(i + 1, j, k) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * dvdrp1 * stry(j) + + la(i + 1, j, k) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * dwdrp1 - + ((2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(2, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1) * dudrm1 + + la(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * dvdrm1 * stry(j) + + la(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * dwdrm1))) * + istry; + + // rp derivatives (v-eq) + // 42 ops, tot=4464 + r2 += + c2 * + (mu(i + 2, j, k) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * dudrp2 + + mu(i + 2, j, k) * met(2, i + 2, j, k) * + met(1, i + 2, j, k) * dvdrp2 * strx(i + 2) * istry - + (mu(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * dudrm2 + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * dvdrm2 * strx(i - 2) * istry)) + + c1 * (mu(i + 1, j, k) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * dudrp1 + + mu(i + 1, j, k) * met(2, i + 1, j, k) * + met(1, i + 1, j, k) * dvdrp1 * strx(i + 1) * istry - + (mu(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * dudrm1 + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * dvdrm1 * strx(i - 1) * istry)); + + // rp derivatives (w-eq) + // 38 ops, tot=4502 + r3 += istry * + (c2 * (mu(i + 2, j, k) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * dudrp2 + + mu(i + 2, j, k) * met(2, i + 2, j, k) * + met(1, i + 2, j, k) * dwdrp2 * strx(i + 2) - + (mu(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * dudrm2 + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * dwdrm2 * strx(i - 2))) + + c1 * (mu(i + 1, j, k) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * dudrp1 + + mu(i + 1, j, k) * met(2, i + 1, j, k) * + met(1, i + 1, j, k) * dwdrp1 * strx(i + 1) - + (mu(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * dudrm1 + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * dwdrm1 * strx(i - 1)))); + + // rq - derivatives + // 24*8 = 192 ops , tot=4694 + + dudrm2 = 0; + dudrm1 = 0; + dudrp1 = 0; + dudrp2 = 0; + dvdrm2 = 0; + dvdrm1 = 0; + dvdrp1 = 0; + dvdrp2 = 0; + dwdrm2 = 0; + dwdrm1 = 0; + dwdrp1 = 0; + dwdrp2 = 0; + //#pragma unroll 1 + for (int q = 1; q <= 8; q++) { + dudrm2 += bope(k, q) * u(1, i, j - 2, q); + dvdrm2 += bope(k, q) * u(2, i, j - 2, q); + dwdrm2 += bope(k, q) * u(3, i, j - 2, q); + dudrm1 += bope(k, q) * u(1, i, j - 1, q); + dvdrm1 += bope(k, q) * u(2, i, j - 1, q); + dwdrm1 += bope(k, q) * u(3, i, j - 1, q); + dudrp2 += bope(k, q) * u(1, i, j + 2, q); + dvdrp2 += bope(k, q) * u(2, i, j + 2, q); + dwdrp2 += bope(k, q) * u(3, i, j + 2, q); + dudrp1 += bope(k, q) * u(1, i, j + 1, q); + dvdrp1 += bope(k, q) * u(2, i, j + 1, q); + dwdrp1 += bope(k, q) * u(3, i, j + 1, q); + } + + // rq derivatives (u-eq) + // 42 ops, tot=4736 + r1 += + c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) * + met(1, i, j + 2, k) * dudrp2 * stry(j + 2) * istrx + + mu(i, j + 2, k) * met(2, i, j + 2, k) * + met(1, i, j + 2, k) * dvdrp2 - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * dudrm2 * stry(j - 2) * istrx + + mu(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * dvdrm2)) + + c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) * + met(1, i, j + 1, k) * dudrp1 * stry(j + 1) * istrx + + mu(i, j + 1, k) * met(2, i, j + 1, k) * + met(1, i, j + 1, k) * dvdrp1 - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * dudrm1 * stry(j - 1) * istrx + + mu(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * dvdrm1)); + + // rq derivatives (v-eq) + // 70 ops, tot=4806 + r2 += c2 * (la(i, j + 2, k) * met(2, i, j + 2, k) * + met(1, i, j + 2, k) * dudrp2 + + (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * + met(3, i, j + 2, k) * met(1, i, j + 2, k) * dvdrp2 * + stry(j + 2) * istrx + + la(i, j + 2, k) * met(4, i, j + 2, k) * + met(1, i, j + 2, k) * dwdrp2 * istrx - + (la(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * dudrm2 + + (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * + met(3, i, j - 2, k) * met(1, i, j - 2, k) * + dvdrm2 * stry(j - 2) * istrx + + la(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * dwdrm2 * istrx)) + + c1 * (la(i, j + 1, k) * met(2, i, j + 1, k) * + met(1, i, j + 1, k) * dudrp1 + + (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * + met(3, i, j + 1, k) * met(1, i, j + 1, k) * dvdrp1 * + stry(j + 1) * istrx + + la(i, j + 1, k) * met(4, i, j + 1, k) * + met(1, i, j + 1, k) * dwdrp1 * istrx - + (la(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * dudrm1 + + (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * + met(3, i, j - 1, k) * met(1, i, j - 1, k) * + dvdrm1 * stry(j - 1) * istrx + + la(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * dwdrm1 * istrx)); + + // rq derivatives (w-eq) + // 39 ops, tot=4845 + r3 += (c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) * + met(1, i, j + 2, k) * dwdrp2 * stry(j + 2) + + mu(i, j + 2, k) * met(4, i, j + 2, k) * + met(1, i, j + 2, k) * dvdrp2 - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * dwdrm2 * stry(j - 2) + + mu(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * dvdrm2)) + + c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) * + met(1, i, j + 1, k) * dwdrp1 * stry(j + 1) + + mu(i, j + 1, k) * met(4, i, j + 1, k) * + met(1, i, j + 1, k) * dvdrp1 - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * dwdrm1 * stry(j - 1) + + mu(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * dvdrm1))) * + istrx; + + // pr and qr derivatives at once + // in loop: 8*(53+53+43) = 1192 ops, tot=6037 + //#pragma unroll 1 + for (int q = 1; q <= 8; q++) { + // (u-eq) + // 53 ops + r1 += bope(k, q) * + ( + // pr + (2 * mu(i, j, q) + la(i, j, q)) * met(2, i, j, q) * + met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) * + strx(i) * istry + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) + + c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) + + mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) + + c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) * + istry + // qr + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) + + c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) * + stry(j) * istrx + + la(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q)))); + + // (v-eq) + // 53 ops + r2 += bope(k, q) * + ( + // pr + la(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) + + c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) * + strx(i) * istry + // qr + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) + + c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) + + (2 * mu(i, j, q) + la(i, j, q)) * met(3, i, j, q) * + met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) * + stry(j) * istrx + + mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) + + c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) * + istrx); + + // (w-eq) + // 43 ops + r3 += bope(k, q) * + ( + // pr + la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) * + istry + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) + + c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) * + strx(i) * istry + // qr + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) + + c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) * + stry(j) * istrx + + la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) * + istrx); + } + + // 12 ops, tot=6049 + lu(1, i, j, k) = a1 * lu(1, i, j, k) + sgn * r1 * ijac; + lu(2, i, j, k) = a1 * lu(2, i, j, k) + sgn * r2 * ijac; + lu(3, i, j, k) = a1 * lu(3, i, j, k) + sgn * r3 * ijac; + } +} + diff --git a/benchmarks/cuda-jitify/sw4ck/kernel1.cuh b/benchmarks/cuda-jitify/sw4ck/kernel1.cuh new file mode 100644 index 0000000..fab027f --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/kernel1.cuh @@ -0,0 +1,664 @@ +const char* const kernel1_cpp = "kernel1.cpp\n" +"#include \"curvilinear4sg.h\"\n" +"template<\n" +" const int start0, const int N0,\n" +" const int start1, const int N1,\n" +" const int start2, const int N2,\n" +" const int ifirst, const int ilast,\n" +" const int jfirst, const int jlast,\n" +" const int kfirst, const int klast,\n" +" const float_sw4 a1, const float_sw4 sgn\n" +">\n" +"__global__ \n" +"void kernel1(\n" +" const float_sw4* __restrict__ a_u, \n" +" const float_sw4* __restrict__ a_mu,\n" +" const float_sw4* __restrict__ a_lambda,\n" +" const float_sw4* __restrict__ a_met,\n" +" const float_sw4* __restrict__ a_jac,\n" +" float_sw4* __restrict__ a_lu, \n" +" const float_sw4* __restrict__ a_acof, \n" +" const float_sw4* __restrict__ a_bope,\n" +" const float_sw4* __restrict__ a_ghcof, \n" +" const float_sw4* __restrict__ a_acof_no_gp,\n" +" const float_sw4* __restrict__ a_ghcof_no_gp, \n" +" const float_sw4* __restrict__ a_strx,\n" +" const float_sw4* __restrict__ a_stry ) \n" +"{\n" +"\n" +" int i = start0 + threadIdx.x + blockIdx.x * blockDim.x;\n" +" int j = start1 + threadIdx.y + blockIdx.y * blockDim.y;\n" +" int k = start2 + threadIdx.z + blockIdx.z * blockDim.z;\n" +" if ((i < N0) && (j < N1) && (k < N2)) {\n" +" // 5 ops\n" +" float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k);\n" +" // float_sw4 ijac = 1 / jac(i, j, k);\n" +" float_sw4 istry = 1 / (stry(j));\n" +" float_sw4 istrx = 1 / (strx(i));\n" +" float_sw4 istrxy = istry * istrx;\n" +" // ijac*=strx(i) * stry(j);\n" +"\n" +" float_sw4 r1 = 0, r2 = 0, r3 = 0;\n" +"\n" +" // pp derivative (u) (u-eq)\n" +" // 53 ops, tot=58\n" +" float_sw4 cof1 = (2 * mu(i - 2, j, k) + la(i - 2, j, k)) *\n" +" met(1, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" strx(i - 2);\n" +" float_sw4 cof2 = (2 * mu(i - 1, j, k) + la(i - 1, j, k)) *\n" +" met(1, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" strx(i - 1);\n" +" float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) *\n" +" met(1, i, j, k) * strx(i);\n" +" float_sw4 cof4 = (2 * mu(i + 1, j, k) + la(i + 1, j, k)) *\n" +" met(1, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" strx(i + 1);\n" +" float_sw4 cof5 = (2 * mu(i + 2, j, k) + la(i + 2, j, k)) *\n" +" met(1, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" strx(i + 2);\n" +"\n" +" float_sw4 mux1 = cof2 - tf * (cof3 + cof1);\n" +" float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" float_sw4 mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r1 = r1 + i6 *\n" +" (mux1 * (u(1, i - 2, j, k) - u(1, i, j, k)) +\n" +" mux2 * (u(1, i - 1, j, k) - u(1, i, j, k)) +\n" +" mux3 * (u(1, i + 1, j, k) - u(1, i, j, k)) +\n" +" mux4 * (u(1, i + 2, j, k) - u(1, i, j, k))) *\n" +" istry;\n" +"\n" +" // qq derivative (u) (u-eq)\n" +" // 43 ops, tot=101\n" +" cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * stry(j - 2);\n" +" cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * stry(j - 1);\n" +" cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j);\n" +" cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * stry(j + 1);\n" +" cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * stry(j + 2);\n" +"\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r1 = r1 + i6 *\n" +" (mux1 * (u(1, i, j - 2, k) - u(1, i, j, k)) +\n" +" mux2 * (u(1, i, j - 1, k) - u(1, i, j, k)) +\n" +" mux3 * (u(1, i, j + 1, k) - u(1, i, j, k)) +\n" +" mux4 * (u(1, i, j + 2, k) - u(1, i, j, k))) *\n" +" istrx;\n" +"\n" +" // pp derivative (v) (v-eq)\n" +" // 43 ops, tot=144\n" +" cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * strx(i - 2);\n" +" cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * strx(i - 1);\n" +" cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i);\n" +" cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * strx(i + 1);\n" +" cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * strx(i + 2);\n" +"\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r2 = r2 + i6 *\n" +" (mux1 * (u(2, i - 2, j, k) - u(2, i, j, k)) +\n" +" mux2 * (u(2, i - 1, j, k) - u(2, i, j, k)) +\n" +" mux3 * (u(2, i + 1, j, k) - u(2, i, j, k)) +\n" +" mux4 * (u(2, i + 2, j, k) - u(2, i, j, k))) *\n" +" istry;\n" +"\n" +" // qq derivative (v) (v-eq)\n" +" // 53 ops, tot=197\n" +" cof1 = (2 * mu(i, j - 2, k) + la(i, j - 2, k)) *\n" +" met(1, i, j - 2, k) * met(1, i, j - 2, k) * stry(j - 2);\n" +" cof2 = (2 * mu(i, j - 1, k) + la(i, j - 1, k)) *\n" +" met(1, i, j - 1, k) * met(1, i, j - 1, k) * stry(j - 1);\n" +" cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) *\n" +" met(1, i, j, k) * stry(j);\n" +" cof4 = (2 * mu(i, j + 1, k) + la(i, j + 1, k)) *\n" +" met(1, i, j + 1, k) * met(1, i, j + 1, k) * stry(j + 1);\n" +" cof5 = (2 * mu(i, j + 2, k) + la(i, j + 2, k)) *\n" +" met(1, i, j + 2, k) * met(1, i, j + 2, k) * stry(j + 2);\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r2 = r2 + i6 *\n" +" (mux1 * (u(2, i, j - 2, k) - u(2, i, j, k)) +\n" +" mux2 * (u(2, i, j - 1, k) - u(2, i, j, k)) +\n" +" mux3 * (u(2, i, j + 1, k) - u(2, i, j, k)) +\n" +" mux4 * (u(2, i, j + 2, k) - u(2, i, j, k))) *\n" +" istrx;\n" +"\n" +" // pp derivative (w) (w-eq)\n" +" // 43 ops, tot=240\n" +" cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * strx(i - 2);\n" +" cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * strx(i - 1);\n" +" cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i);\n" +" cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * strx(i + 1);\n" +" cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * strx(i + 2);\n" +"\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r3 = r3 + i6 *\n" +" (mux1 * (u(3, i - 2, j, k) - u(3, i, j, k)) +\n" +" mux2 * (u(3, i - 1, j, k) - u(3, i, j, k)) +\n" +" mux3 * (u(3, i + 1, j, k) - u(3, i, j, k)) +\n" +" mux4 * (u(3, i + 2, j, k) - u(3, i, j, k))) *\n" +" istry;\n" +"\n" +" // qq derivative (w) (w-eq)\n" +" // 43 ops, tot=283\n" +" cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * stry(j - 2);\n" +" cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * stry(j - 1);\n" +" cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j);\n" +" cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * stry(j + 1);\n" +" cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * stry(j + 2);\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r3 = r3 + i6 *\n" +" (mux1 * (u(3, i, j - 2, k) - u(3, i, j, k)) +\n" +" mux2 * (u(3, i, j - 1, k) - u(3, i, j, k)) +\n" +" mux3 * (u(3, i, j + 1, k) - u(3, i, j, k)) +\n" +" mux4 * (u(3, i, j + 2, k) - u(3, i, j, k))) *\n" +" istrx;\n" +"\n" +" // All rr-derivatives at once\n" +" // averaging the coefficient\n" +" // 54*8*8+25*8 = 3656 ops, tot=3939\n" +" float_sw4 mucofu2, mucofuv, mucofuw, mucofvw, mucofv2, mucofw2;\n" +" //#pragma unroll 1 // slowdown due to register spills\n" +" for (int q = 1; q <= 8; q++) {\n" +" mucofu2 = 0;\n" +" mucofuv = 0;\n" +" mucofuw = 0;\n" +" mucofvw = 0;\n" +" mucofv2 = 0;\n" +" mucofw2 = 0;\n" +" //#pragma unroll 1 // slowdown due to register spills\n" +" for (int m = 1; m <= 8; m++) {\n" +" mucofu2 += acof(k, q, m) *\n" +" ((2 * mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) *\n" +" strx(i) * met(2, i, j, m) * strx(i) +\n" +" mu(i, j, m) * (met(3, i, j, m) * stry(j) *\n" +" met(3, i, j, m) * stry(j) +\n" +" met(4, i, j, m) * met(4, i, j, m)));\n" +" mucofv2 += acof(k, q, m) *\n" +" ((2 * mu(i, j, m) + la(i, j, m)) * met(3, i, j, m) *\n" +" stry(j) * met(3, i, j, m) * stry(j) +\n" +" mu(i, j, m) * (met(2, i, j, m) * strx(i) *\n" +" met(2, i, j, m) * strx(i) +\n" +" met(4, i, j, m) * met(4, i, j, m)));\n" +" mucofw2 += acof(k, q, m) *\n" +" ((2 * mu(i, j, m) + la(i, j, m)) * met(4, i, j, m) *\n" +" met(4, i, j, m) +\n" +" mu(i, j, m) * (met(2, i, j, m) * strx(i) *\n" +" met(2, i, j, m) * strx(i) +\n" +" met(3, i, j, m) * stry(j) *\n" +" met(3, i, j, m) * stry(j)));\n" +" mucofuv += acof(k, q, m) * (mu(i, j, m) + la(i, j, m)) *\n" +" met(2, i, j, m) * met(3, i, j, m);\n" +" mucofuw += acof(k, q, m) * (mu(i, j, m) + la(i, j, m)) *\n" +" met(2, i, j, m) * met(4, i, j, m);\n" +" mucofvw += acof(k, q, m) * (mu(i, j, m) + la(i, j, m)) *\n" +" met(3, i, j, m) * met(4, i, j, m);\n" +" }\n" +"\n" +" // Computing the second derivative,\n" +" r1 += istrxy * mucofu2 * u(1, i, j, q) + mucofuv * u(2, i, j, q) +\n" +" istry * mucofuw * u(3, i, j, q);\n" +" r2 += mucofuv * u(1, i, j, q) + istrxy * mucofv2 * u(2, i, j, q) +\n" +" istrx * mucofvw * u(3, i, j, q);\n" +" r3 += istry * mucofuw * u(1, i, j, q) +\n" +" istrx * mucofvw * u(2, i, j, q) +\n" +" istrxy * mucofw2 * u(3, i, j, q);\n" +" }\n" +"\n" +" // Ghost point values, only nonzero for k=1.\n" +" // 72 ops., tot=4011\n" +" mucofu2 =\n" +" ghcof(k) * ((2 * mu(i, j, 1) + la(i, j, 1)) * met(2, i, j, 1) *\n" +" strx(i) * met(2, i, j, 1) * strx(i) +\n" +" mu(i, j, 1) * (met(3, i, j, 1) * stry(j) *\n" +" met(3, i, j, 1) * stry(j) +\n" +" met(4, i, j, 1) * met(4, i, j, 1)));\n" +" mucofv2 =\n" +" ghcof(k) * ((2 * mu(i, j, 1) + la(i, j, 1)) * met(3, i, j, 1) *\n" +" stry(j) * met(3, i, j, 1) * stry(j) +\n" +" mu(i, j, 1) * (met(2, i, j, 1) * strx(i) *\n" +" met(2, i, j, 1) * strx(i) +\n" +" met(4, i, j, 1) * met(4, i, j, 1)));\n" +" mucofw2 =\n" +" ghcof(k) *\n" +" ((2 * mu(i, j, 1) + la(i, j, 1)) * met(4, i, j, 1) *\n" +" met(4, i, j, 1) +\n" +" mu(i, j, 1) *\n" +" (met(2, i, j, 1) * strx(i) * met(2, i, j, 1) * strx(i) +\n" +" met(3, i, j, 1) * stry(j) * met(3, i, j, 1) * stry(j)));\n" +" mucofuv = ghcof(k) * (mu(i, j, 1) + la(i, j, 1)) * met(2, i, j, 1) *\n" +" met(3, i, j, 1);\n" +" mucofuw = ghcof(k) * (mu(i, j, 1) + la(i, j, 1)) * met(2, i, j, 1) *\n" +" met(4, i, j, 1);\n" +" mucofvw = ghcof(k) * (mu(i, j, 1) + la(i, j, 1)) * met(3, i, j, 1) *\n" +" met(4, i, j, 1);\n" +" r1 += istrxy * mucofu2 * u(1, i, j, 0) + mucofuv * u(2, i, j, 0) +\n" +" istry * mucofuw * u(3, i, j, 0);\n" +" r2 += mucofuv * u(1, i, j, 0) + istrxy * mucofv2 * u(2, i, j, 0) +\n" +" istrx * mucofvw * u(3, i, j, 0);\n" +" r3 += istry * mucofuw * u(1, i, j, 0) +\n" +" istrx * mucofvw * u(2, i, j, 0) +\n" +" istrxy * mucofw2 * u(3, i, j, 0);\n" +"\n" +" // pq-derivatives (u-eq)\n" +" // 38 ops., tot=4049\n" +" r1 +=\n" +" c2 *\n" +" (mu(i, j + 2, k) * met(1, i, j + 2, k) *\n" +" met(1, i, j + 2, k) *\n" +" (c2 * (u(2, i + 2, j + 2, k) - u(2, i - 2, j + 2, k)) +\n" +" c1 *\n" +" (u(2, i + 1, j + 2, k) - u(2, i - 1, j + 2, k))) -\n" +" mu(i, j - 2, k) * met(1, i, j - 2, k) *\n" +" met(1, i, j - 2, k) *\n" +" (c2 * (u(2, i + 2, j - 2, k) - u(2, i - 2, j - 2, k)) +\n" +" c1 * (u(2, i + 1, j - 2, k) -\n" +" u(2, i - 1, j - 2, k)))) +\n" +" c1 *\n" +" (mu(i, j + 1, k) * met(1, i, j + 1, k) *\n" +" met(1, i, j + 1, k) *\n" +" (c2 * (u(2, i + 2, j + 1, k) - u(2, i - 2, j + 1, k)) +\n" +" c1 *\n" +" (u(2, i + 1, j + 1, k) - u(2, i - 1, j + 1, k))) -\n" +" mu(i, j - 1, k) * met(1, i, j - 1, k) *\n" +" met(1, i, j - 1, k) *\n" +" (c2 * (u(2, i + 2, j - 1, k) - u(2, i - 2, j - 1, k)) +\n" +" c1 *\n" +" (u(2, i + 1, j - 1, k) - u(2, i - 1, j - 1, k))));\n" +"\n" +" // qp-derivatives (u-eq)\n" +" // 38 ops. tot=4087\n" +" r1 +=\n" +" c2 *\n" +" (la(i + 2, j, k) * met(1, i + 2, j, k) *\n" +" met(1, i + 2, j, k) *\n" +" (c2 * (u(2, i + 2, j + 2, k) - u(2, i + 2, j - 2, k)) +\n" +" c1 *\n" +" (u(2, i + 2, j + 1, k) - u(2, i + 2, j - 1, k))) -\n" +" la(i - 2, j, k) * met(1, i - 2, j, k) *\n" +" met(1, i - 2, j, k) *\n" +" (c2 * (u(2, i - 2, j + 2, k) - u(2, i - 2, j - 2, k)) +\n" +" c1 * (u(2, i - 2, j + 1, k) -\n" +" u(2, i - 2, j - 1, k)))) +\n" +" c1 *\n" +" (la(i + 1, j, k) * met(1, i + 1, j, k) *\n" +" met(1, i + 1, j, k) *\n" +" (c2 * (u(2, i + 1, j + 2, k) - u(2, i + 1, j - 2, k)) +\n" +" c1 *\n" +" (u(2, i + 1, j + 1, k) - u(2, i + 1, j - 1, k))) -\n" +" la(i - 1, j, k) * met(1, i - 1, j, k) *\n" +" met(1, i - 1, j, k) *\n" +" (c2 * (u(2, i - 1, j + 2, k) - u(2, i - 1, j - 2, k)) +\n" +" c1 *\n" +" (u(2, i - 1, j + 1, k) - u(2, i - 1, j - 1, k))));\n" +"\n" +" // pq-derivatives (v-eq)\n" +" // 38 ops. , tot=4125\n" +" r2 +=\n" +" c2 *\n" +" (la(i, j + 2, k) * met(1, i, j + 2, k) *\n" +" met(1, i, j + 2, k) *\n" +" (c2 * (u(1, i + 2, j + 2, k) - u(1, i - 2, j + 2, k)) +\n" +" c1 *\n" +" (u(1, i + 1, j + 2, k) - u(1, i - 1, j + 2, k))) -\n" +" la(i, j - 2, k) * met(1, i, j - 2, k) *\n" +" met(1, i, j - 2, k) *\n" +" (c2 * (u(1, i + 2, j - 2, k) - u(1, i - 2, j - 2, k)) +\n" +" c1 * (u(1, i + 1, j - 2, k) -\n" +" u(1, i - 1, j - 2, k)))) +\n" +" c1 *\n" +" (la(i, j + 1, k) * met(1, i, j + 1, k) *\n" +" met(1, i, j + 1, k) *\n" +" (c2 * (u(1, i + 2, j + 1, k) - u(1, i - 2, j + 1, k)) +\n" +" c1 *\n" +" (u(1, i + 1, j + 1, k) - u(1, i - 1, j + 1, k))) -\n" +" la(i, j - 1, k) * met(1, i, j - 1, k) *\n" +" met(1, i, j - 1, k) *\n" +" (c2 * (u(1, i + 2, j - 1, k) - u(1, i - 2, j - 1, k)) +\n" +" c1 *\n" +" (u(1, i + 1, j - 1, k) - u(1, i - 1, j - 1, k))));\n" +"\n" +" //* qp-derivatives (v-eq)\n" +" // 38 ops., tot=4163\n" +" r2 +=\n" +" c2 *\n" +" (mu(i + 2, j, k) * met(1, i + 2, j, k) *\n" +" met(1, i + 2, j, k) *\n" +" (c2 * (u(1, i + 2, j + 2, k) - u(1, i + 2, j - 2, k)) +\n" +" c1 *\n" +" (u(1, i + 2, j + 1, k) - u(1, i + 2, j - 1, k))) -\n" +" mu(i - 2, j, k) * met(1, i - 2, j, k) *\n" +" met(1, i - 2, j, k) *\n" +" (c2 * (u(1, i - 2, j + 2, k) - u(1, i - 2, j - 2, k)) +\n" +" c1 * (u(1, i - 2, j + 1, k) -\n" +" u(1, i - 2, j - 1, k)))) +\n" +" c1 *\n" +" (mu(i + 1, j, k) * met(1, i + 1, j, k) *\n" +" met(1, i + 1, j, k) *\n" +" (c2 * (u(1, i + 1, j + 2, k) - u(1, i + 1, j - 2, k)) +\n" +" c1 *\n" +" (u(1, i + 1, j + 1, k) - u(1, i + 1, j - 1, k))) -\n" +" mu(i - 1, j, k) * met(1, i - 1, j, k) *\n" +" met(1, i - 1, j, k) *\n" +" (c2 * (u(1, i - 1, j + 2, k) - u(1, i - 1, j - 2, k)) +\n" +" c1 *\n" +" (u(1, i - 1, j + 1, k) - u(1, i - 1, j - 1, k))));\n" +"\n" +" // rp - derivatives\n" +" // 24*8 = 192 ops, tot=4355\n" +" float_sw4 dudrm2 = 0, dudrm1 = 0, dudrp1 = 0, dudrp2 = 0;\n" +" float_sw4 dvdrm2 = 0, dvdrm1 = 0, dvdrp1 = 0, dvdrp2 = 0;\n" +" float_sw4 dwdrm2 = 0, dwdrm1 = 0, dwdrp1 = 0, dwdrp2 = 0;\n" +" //#pragma unroll 1\n" +" for (int q = 1; q <= 8; q++) {\n" +" dudrm2 += bope(k, q) * u(1, i - 2, j, q);\n" +" dvdrm2 += bope(k, q) * u(2, i - 2, j, q);\n" +" dwdrm2 += bope(k, q) * u(3, i - 2, j, q);\n" +" dudrm1 += bope(k, q) * u(1, i - 1, j, q);\n" +" dvdrm1 += bope(k, q) * u(2, i - 1, j, q);\n" +" dwdrm1 += bope(k, q) * u(3, i - 1, j, q);\n" +" dudrp2 += bope(k, q) * u(1, i + 2, j, q);\n" +" dvdrp2 += bope(k, q) * u(2, i + 2, j, q);\n" +" dwdrp2 += bope(k, q) * u(3, i + 2, j, q);\n" +" dudrp1 += bope(k, q) * u(1, i + 1, j, q);\n" +" dvdrp1 += bope(k, q) * u(2, i + 1, j, q);\n" +" dwdrp1 += bope(k, q) * u(3, i + 1, j, q);\n" +" }\n" +"\n" +" // rp derivatives (u-eq)\n" +" // 67 ops, tot=4422\n" +" r1 += (c2 * ((2 * mu(i + 2, j, k) + la(i + 2, j, k)) *\n" +" met(2, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" strx(i + 2) * dudrp2 +\n" +" la(i + 2, j, k) * met(3, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dvdrp2 * stry(j) +\n" +" la(i + 2, j, k) * met(4, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dwdrp2 -\n" +" ((2 * mu(i - 2, j, k) + la(i - 2, j, k)) *\n" +" met(2, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" strx(i - 2) * dudrm2 +\n" +" la(i - 2, j, k) * met(3, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dvdrm2 * stry(j) +\n" +" la(i - 2, j, k) * met(4, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dwdrm2)) +\n" +" c1 * ((2 * mu(i + 1, j, k) + la(i + 1, j, k)) *\n" +" met(2, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" strx(i + 1) * dudrp1 +\n" +" la(i + 1, j, k) * met(3, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dvdrp1 * stry(j) +\n" +" la(i + 1, j, k) * met(4, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dwdrp1 -\n" +" ((2 * mu(i - 1, j, k) + la(i - 1, j, k)) *\n" +" met(2, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" strx(i - 1) * dudrm1 +\n" +" la(i - 1, j, k) * met(3, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dvdrm1 * stry(j) +\n" +" la(i - 1, j, k) * met(4, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dwdrm1))) *\n" +" istry;\n" +"\n" +" // rp derivatives (v-eq)\n" +" // 42 ops, tot=4464\n" +" r2 +=\n" +" c2 *\n" +" (mu(i + 2, j, k) * met(3, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dudrp2 +\n" +" mu(i + 2, j, k) * met(2, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dvdrp2 * strx(i + 2) * istry -\n" +" (mu(i - 2, j, k) * met(3, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dudrm2 +\n" +" mu(i - 2, j, k) * met(2, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dvdrm2 * strx(i - 2) * istry)) +\n" +" c1 * (mu(i + 1, j, k) * met(3, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dudrp1 +\n" +" mu(i + 1, j, k) * met(2, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dvdrp1 * strx(i + 1) * istry -\n" +" (mu(i - 1, j, k) * met(3, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dudrm1 +\n" +" mu(i - 1, j, k) * met(2, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dvdrm1 * strx(i - 1) * istry));\n" +"\n" +" // rp derivatives (w-eq)\n" +" // 38 ops, tot=4502\n" +" r3 += istry *\n" +" (c2 * (mu(i + 2, j, k) * met(4, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dudrp2 +\n" +" mu(i + 2, j, k) * met(2, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dwdrp2 * strx(i + 2) -\n" +" (mu(i - 2, j, k) * met(4, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dudrm2 +\n" +" mu(i - 2, j, k) * met(2, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dwdrm2 * strx(i - 2))) +\n" +" c1 * (mu(i + 1, j, k) * met(4, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dudrp1 +\n" +" mu(i + 1, j, k) * met(2, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dwdrp1 * strx(i + 1) -\n" +" (mu(i - 1, j, k) * met(4, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dudrm1 +\n" +" mu(i - 1, j, k) * met(2, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dwdrm1 * strx(i - 1))));\n" +"\n" +" // rq - derivatives\n" +" // 24*8 = 192 ops , tot=4694\n" +"\n" +" dudrm2 = 0;\n" +" dudrm1 = 0;\n" +" dudrp1 = 0;\n" +" dudrp2 = 0;\n" +" dvdrm2 = 0;\n" +" dvdrm1 = 0;\n" +" dvdrp1 = 0;\n" +" dvdrp2 = 0;\n" +" dwdrm2 = 0;\n" +" dwdrm1 = 0;\n" +" dwdrp1 = 0;\n" +" dwdrp2 = 0;\n" +" //#pragma unroll 1\n" +" for (int q = 1; q <= 8; q++) {\n" +" dudrm2 += bope(k, q) * u(1, i, j - 2, q);\n" +" dvdrm2 += bope(k, q) * u(2, i, j - 2, q);\n" +" dwdrm2 += bope(k, q) * u(3, i, j - 2, q);\n" +" dudrm1 += bope(k, q) * u(1, i, j - 1, q);\n" +" dvdrm1 += bope(k, q) * u(2, i, j - 1, q);\n" +" dwdrm1 += bope(k, q) * u(3, i, j - 1, q);\n" +" dudrp2 += bope(k, q) * u(1, i, j + 2, q);\n" +" dvdrp2 += bope(k, q) * u(2, i, j + 2, q);\n" +" dwdrp2 += bope(k, q) * u(3, i, j + 2, q);\n" +" dudrp1 += bope(k, q) * u(1, i, j + 1, q);\n" +" dvdrp1 += bope(k, q) * u(2, i, j + 1, q);\n" +" dwdrp1 += bope(k, q) * u(3, i, j + 1, q);\n" +" }\n" +"\n" +" // rq derivatives (u-eq)\n" +" // 42 ops, tot=4736\n" +" r1 +=\n" +" c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dudrp2 * stry(j + 2) * istrx +\n" +" mu(i, j + 2, k) * met(2, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dvdrp2 -\n" +" (mu(i, j - 2, k) * met(3, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dudrm2 * stry(j - 2) * istrx +\n" +" mu(i, j - 2, k) * met(2, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dvdrm2)) +\n" +" c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dudrp1 * stry(j + 1) * istrx +\n" +" mu(i, j + 1, k) * met(2, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dvdrp1 -\n" +" (mu(i, j - 1, k) * met(3, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dudrm1 * stry(j - 1) * istrx +\n" +" mu(i, j - 1, k) * met(2, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dvdrm1));\n" +"\n" +" // rq derivatives (v-eq)\n" +" // 70 ops, tot=4806\n" +" r2 += c2 * (la(i, j + 2, k) * met(2, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dudrp2 +\n" +" (2 * mu(i, j + 2, k) + la(i, j + 2, k)) *\n" +" met(3, i, j + 2, k) * met(1, i, j + 2, k) * dvdrp2 *\n" +" stry(j + 2) * istrx +\n" +" la(i, j + 2, k) * met(4, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dwdrp2 * istrx -\n" +" (la(i, j - 2, k) * met(2, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dudrm2 +\n" +" (2 * mu(i, j - 2, k) + la(i, j - 2, k)) *\n" +" met(3, i, j - 2, k) * met(1, i, j - 2, k) *\n" +" dvdrm2 * stry(j - 2) * istrx +\n" +" la(i, j - 2, k) * met(4, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dwdrm2 * istrx)) +\n" +" c1 * (la(i, j + 1, k) * met(2, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dudrp1 +\n" +" (2 * mu(i, j + 1, k) + la(i, j + 1, k)) *\n" +" met(3, i, j + 1, k) * met(1, i, j + 1, k) * dvdrp1 *\n" +" stry(j + 1) * istrx +\n" +" la(i, j + 1, k) * met(4, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dwdrp1 * istrx -\n" +" (la(i, j - 1, k) * met(2, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dudrm1 +\n" +" (2 * mu(i, j - 1, k) + la(i, j - 1, k)) *\n" +" met(3, i, j - 1, k) * met(1, i, j - 1, k) *\n" +" dvdrm1 * stry(j - 1) * istrx +\n" +" la(i, j - 1, k) * met(4, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dwdrm1 * istrx));\n" +"\n" +" // rq derivatives (w-eq)\n" +" // 39 ops, tot=4845\n" +" r3 += (c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dwdrp2 * stry(j + 2) +\n" +" mu(i, j + 2, k) * met(4, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dvdrp2 -\n" +" (mu(i, j - 2, k) * met(3, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dwdrm2 * stry(j - 2) +\n" +" mu(i, j - 2, k) * met(4, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dvdrm2)) +\n" +" c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dwdrp1 * stry(j + 1) +\n" +" mu(i, j + 1, k) * met(4, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dvdrp1 -\n" +" (mu(i, j - 1, k) * met(3, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dwdrm1 * stry(j - 1) +\n" +" mu(i, j - 1, k) * met(4, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dvdrm1))) *\n" +" istrx;\n" +"\n" +" // pr and qr derivatives at once\n" +" // in loop: 8*(53+53+43) = 1192 ops, tot=6037\n" +" //#pragma unroll 1\n" +" for (int q = 1; q <= 8; q++) {\n" +" // (u-eq)\n" +" // 53 ops\n" +" r1 += bope(k, q) *\n" +" (\n" +" // pr\n" +" (2 * mu(i, j, q) + la(i, j, q)) * met(2, i, j, q) *\n" +" met(1, i, j, q) *\n" +" (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) +\n" +" c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) *\n" +" strx(i) * istry +\n" +" mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) +\n" +" c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) +\n" +" mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) +\n" +" c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) *\n" +" istry\n" +" // qr\n" +" + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) +\n" +" c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) *\n" +" stry(j) * istrx +\n" +" la(i, j, q) * met(2, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) +\n" +" c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))));\n" +"\n" +" // (v-eq)\n" +" // 53 ops\n" +" r2 += bope(k, q) *\n" +" (\n" +" // pr\n" +" la(i, j, q) * met(3, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) +\n" +" c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) +\n" +" mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) +\n" +" c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) *\n" +" strx(i) * istry\n" +" // qr\n" +" + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) +\n" +" c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) +\n" +" (2 * mu(i, j, q) + la(i, j, q)) * met(3, i, j, q) *\n" +" met(1, i, j, q) *\n" +" (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) +\n" +" c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) *\n" +" stry(j) * istrx +\n" +" mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) +\n" +" c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) *\n" +" istrx);\n" +"\n" +" // (w-eq)\n" +" // 43 ops\n" +" r3 += bope(k, q) *\n" +" (\n" +" // pr\n" +" la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) +\n" +" c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) *\n" +" istry +\n" +" mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) +\n" +" c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) *\n" +" strx(i) * istry\n" +" // qr\n" +" + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) +\n" +" c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) *\n" +" stry(j) * istrx +\n" +" la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) +\n" +" c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) *\n" +" istrx);\n" +" }\n" +"\n" +" // 12 ops, tot=6049\n" +" lu(1, i, j, k) = a1 * lu(1, i, j, k) + sgn * r1 * ijac;\n" +" lu(2, i, j, k) = a1 * lu(2, i, j, k) + sgn * r2 * ijac;\n" +" lu(3, i, j, k) = a1 * lu(3, i, j, k) + sgn * r3 * ijac;\n" +" }\n" +"}\n" +"\n" +; diff --git a/benchmarks/cuda-jitify/sw4ck/kernel2.cpp b/benchmarks/cuda-jitify/sw4ck/kernel2.cpp new file mode 100644 index 0000000..e481c7d --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/kernel2.cpp @@ -0,0 +1,428 @@ +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))) +#endif +void kernel2( + const int start0, const int N0, + const int start1, const int N1, + const int start2, const int N2, + const int ifirst, const int ilast, + const int jfirst, const int jlast, + const int kfirst, const int klast, + const float_sw4 a1, float_sw4 sgn, + const float_sw4* __restrict__ a_u, + const float_sw4* __restrict__ a_mu, + const float_sw4* __restrict__ a_lambda, + const float_sw4* __restrict__ a_met, + const float_sw4* __restrict__ a_jac, + float_sw4* __restrict__ a_lu, + const float_sw4* __restrict__ a_acof, + const float_sw4* __restrict__ a_bope, + const float_sw4* __restrict__ a_ghcof, + const float_sw4* __restrict__ a_acof_no_gp, + const float_sw4* __restrict__ a_ghcof_no_gp, + const float_sw4* __restrict__ a_strx, + const float_sw4* __restrict__ a_stry ) +{ + int i = start0 + threadIdx.x + blockIdx.x * blockDim.x; + int j = start1 + threadIdx.y + blockIdx.y * blockDim.y; + int k = start2 + threadIdx.z + blockIdx.z * blockDim.z; + if ((i < N0) && (j < N1) && (k < N2)) { + float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k); + float_sw4 istry = 1 / (stry(j)); + float_sw4 istrx = 1 / (strx(i)); + float_sw4 istrxy = istry * istrx; + + float_sw4 r1 = 0; + + // pp derivative (u) + // 53 ops, tot=58 + float_sw4 cof1 = (2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(1, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2); + float_sw4 cof2 = (2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(1, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1); + float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * strx(i); + float_sw4 cof4 = (2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(1, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1); + float_sw4 cof5 = (2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(1, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2); + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r1 += i6 * + (mux1 * (u(1, i - 2, j, k) - u(1, i, j, k)) + + mux2 * (u(1, i - 1, j, k) - u(1, i, j, k)) + + mux3 * (u(1, i + 1, j, k) - u(1, i, j, k)) + + mux4 * (u(1, i + 2, j, k) - u(1, i, j, k))) * + istry; + // qq derivative (u) + // 43 ops, tot=101 + { + float_sw4 cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + float_sw4 cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + float_sw4 cof3 = + (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + float_sw4 cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + float_sw4 cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r1 += i6 * + (mux1 * (u(1, i, j - 2, k) - u(1, i, j, k)) + + mux2 * (u(1, i, j - 1, k) - u(1, i, j, k)) + + mux3 * (u(1, i, j + 1, k) - u(1, i, j, k)) + + mux4 * (u(1, i, j + 2, k) - u(1, i, j, k))) * + istrx; + } + // rr derivative (u) + // 5*11+14+14=83 ops, tot=184 + { + float_sw4 cof1 = + (2 * mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) * + strx(i) * met(2, i, j, k - 2) * strx(i) + + mu(i, j, k - 2) * (met(3, i, j, k - 2) * stry(j) * + met(3, i, j, k - 2) * stry(j) + + met(4, i, j, k - 2) * met(4, i, j, k - 2)); + float_sw4 cof2 = + (2 * mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) * + strx(i) * met(2, i, j, k - 1) * strx(i) + + mu(i, j, k - 1) * (met(3, i, j, k - 1) * stry(j) * + met(3, i, j, k - 1) * stry(j) + + met(4, i, j, k - 1) * met(4, i, j, k - 1)); + float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * + strx(i) * met(2, i, j, k) * strx(i) + + mu(i, j, k) * (met(3, i, j, k) * stry(j) * + met(3, i, j, k) * stry(j) + + met(4, i, j, k) * met(4, i, j, k)); + float_sw4 cof4 = + (2 * mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) * + strx(i) * met(2, i, j, k + 1) * strx(i) + + mu(i, j, k + 1) * (met(3, i, j, k + 1) * stry(j) * + met(3, i, j, k + 1) * stry(j) + + met(4, i, j, k + 1) * met(4, i, j, k + 1)); + float_sw4 cof5 = + (2 * mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) * + strx(i) * met(2, i, j, k + 2) * strx(i) + + mu(i, j, k + 2) * (met(3, i, j, k + 2) * stry(j) * + met(3, i, j, k + 2) * stry(j) + + met(4, i, j, k + 2) * met(4, i, j, k + 2)); + + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r1 += i6 * + (mux1 * (u(1, i, j, k - 2) - u(1, i, j, k)) + + mux2 * (u(1, i, j, k - 1) - u(1, i, j, k)) + + mux3 * (u(1, i, j, k + 1) - u(1, i, j, k)) + + mux4 * (u(1, i, j, k + 2) - u(1, i, j, k))) * + istrxy; + } + // rr derivative (v) + // 42 ops, tot=226 + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) * + met(3, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) * + met(3, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(3, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) * + met(3, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) * + met(3, i, j, k + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r1 += i6 * (mux1 * (u(2, i, j, k - 2) - u(2, i, j, k)) + + mux2 * (u(2, i, j, k - 1) - u(2, i, j, k)) + + mux3 * (u(2, i, j, k + 1) - u(2, i, j, k)) + + mux4 * (u(2, i, j, k + 2) - u(2, i, j, k))); + + // rr derivative (w) + // 43 ops, tot=269 + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) * + met(4, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) * + met(4, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(4, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) * + met(4, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) * + met(4, i, j, k + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r1 += i6 * + (mux1 * (u(3, i, j, k - 2) - u(3, i, j, k)) + + mux2 * (u(3, i, j, k - 1) - u(3, i, j, k)) + + mux3 * (u(3, i, j, k + 1) - u(3, i, j, k)) + + mux4 * (u(3, i, j, k + 2) - u(3, i, j, k))) * + istry; + + // pq-derivatives + // 38 ops, tot=307 + r1 += + c2 * + (mu(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i - 2, j + 2, k)) + + c1 * (u(2, i + 1, j + 2, k) - u(2, i - 1, j + 2, k))) - + mu(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + (c2 * (u(2, i + 2, j - 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i + 1, j - 2, k) - u(2, i - 1, j - 2, k)))) + + c1 * + (mu(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(2, i + 2, j + 1, k) - u(2, i - 2, j + 1, k)) + + c1 * (u(2, i + 1, j + 1, k) - u(2, i - 1, j + 1, k))) - + mu(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + (c2 * (u(2, i + 2, j - 1, k) - u(2, i - 2, j - 1, k)) + + c1 * (u(2, i + 1, j - 1, k) - u(2, i - 1, j - 1, k)))); + + // qp-derivatives + // 38 ops, tot=345 + r1 += + c2 * + (la(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i + 2, j - 2, k)) + + c1 * (u(2, i + 2, j + 1, k) - u(2, i + 2, j - 1, k))) - + la(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + (c2 * (u(2, i - 2, j + 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i - 2, j + 1, k) - u(2, i - 2, j - 1, k)))) + + c1 * + (la(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(2, i + 1, j + 2, k) - u(2, i + 1, j - 2, k)) + + c1 * (u(2, i + 1, j + 1, k) - u(2, i + 1, j - 1, k))) - + la(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + (c2 * (u(2, i - 1, j + 2, k) - u(2, i - 1, j - 2, k)) + + c1 * (u(2, i - 1, j + 1, k) - u(2, i - 1, j - 1, k)))); + + // pr-derivatives + // 130 ops., tot=475 + r1 += + c2 * + ((2 * mu(i, j, k + 2) + la(i, j, k + 2)) * + met(2, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(1, i + 2, j, k + 2) - u(1, i - 2, j, k + 2)) + + c1 * (u(1, i + 1, j, k + 2) - u(1, i - 1, j, k + 2))) * + strx(i) * istry + + mu(i, j, k + 2) * met(3, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(2, i + 2, j, k + 2) - u(2, i - 2, j, k + 2)) + + c1 * (u(2, i + 1, j, k + 2) - u(2, i - 1, j, k + 2))) + + mu(i, j, k + 2) * met(4, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(3, i + 2, j, k + 2) - u(3, i - 2, j, k + 2)) + + c1 * (u(3, i + 1, j, k + 2) - u(3, i - 1, j, k + 2))) * + istry - + ((2 * mu(i, j, k - 2) + la(i, j, k - 2)) * + met(2, i, j, k - 2) * met(1, i, j, k - 2) * + (c2 * (u(1, i + 2, j, k - 2) - u(1, i - 2, j, k - 2)) + + c1 * (u(1, i + 1, j, k - 2) - u(1, i - 1, j, k - 2))) * + strx(i) * istry + + mu(i, j, k - 2) * met(3, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(2, i + 2, j, k - 2) - u(2, i - 2, j, k - 2)) + + c1 * (u(2, i + 1, j, k - 2) - u(2, i - 1, j, k - 2))) + + mu(i, j, k - 2) * met(4, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(3, i + 2, j, k - 2) - u(3, i - 2, j, k - 2)) + + c1 * (u(3, i + 1, j, k - 2) - u(3, i - 1, j, k - 2))) * + istry)) + + c1 * + ((2 * mu(i, j, k + 1) + la(i, j, k + 1)) * + met(2, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(1, i + 2, j, k + 1) - u(1, i - 2, j, k + 1)) + + c1 * (u(1, i + 1, j, k + 1) - u(1, i - 1, j, k + 1))) * + strx(i) * istry + + mu(i, j, k + 1) * met(3, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(2, i + 2, j, k + 1) - u(2, i - 2, j, k + 1)) + + c1 * (u(2, i + 1, j, k + 1) - u(2, i - 1, j, k + 1))) + + mu(i, j, k + 1) * met(4, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(3, i + 2, j, k + 1) - u(3, i - 2, j, k + 1)) + + c1 * (u(3, i + 1, j, k + 1) - u(3, i - 1, j, k + 1))) * + istry - + ((2 * mu(i, j, k - 1) + la(i, j, k - 1)) * + met(2, i, j, k - 1) * met(1, i, j, k - 1) * + (c2 * (u(1, i + 2, j, k - 1) - u(1, i - 2, j, k - 1)) + + c1 * (u(1, i + 1, j, k - 1) - u(1, i - 1, j, k - 1))) * + strx(i) * istry + + mu(i, j, k - 1) * met(3, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(2, i + 2, j, k - 1) - u(2, i - 2, j, k - 1)) + + c1 * (u(2, i + 1, j, k - 1) - u(2, i - 1, j, k - 1))) + + mu(i, j, k - 1) * met(4, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(3, i + 2, j, k - 1) - u(3, i - 2, j, k - 1)) + + c1 * (u(3, i + 1, j, k - 1) - u(3, i - 1, j, k - 1))) * + istry)); + + // rp derivatives + // 130 ops, tot=605 + r1 += + (c2 * + ((2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(2, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j, k + 2) - u(1, i + 2, j, k - 2)) + + c1 * (u(1, i + 2, j, k + 1) - u(1, i + 2, j, k - 1))) * + strx(i + 2) + + la(i + 2, j, k) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(2, i + 2, j, k + 2) - u(2, i + 2, j, k - 2)) + + c1 * (u(2, i + 2, j, k + 1) - u(2, i + 2, j, k - 1))) * + stry(j) + + la(i + 2, j, k) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(3, i + 2, j, k + 2) - u(3, i + 2, j, k - 2)) + + c1 * (u(3, i + 2, j, k + 1) - u(3, i + 2, j, k - 1))) - + ((2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(2, i - 2, j, k) * met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j, k + 2) - u(1, i - 2, j, k - 2)) + + c1 * + (u(1, i - 2, j, k + 1) - u(1, i - 2, j, k - 1))) * + strx(i - 2) + + la(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(2, i - 2, j, k + 2) - u(2, i - 2, j, k - 2)) + + c1 * + (u(2, i - 2, j, k + 1) - u(2, i - 2, j, k - 1))) * + stry(j) + + la(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(3, i - 2, j, k + 2) - u(3, i - 2, j, k - 2)) + + c1 * (u(3, i - 2, j, k + 1) - + u(3, i - 2, j, k - 1))))) + + c1 * + ((2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(2, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j, k + 2) - u(1, i + 1, j, k - 2)) + + c1 * (u(1, i + 1, j, k + 1) - u(1, i + 1, j, k - 1))) * + strx(i + 1) + + la(i + 1, j, k) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(2, i + 1, j, k + 2) - u(2, i + 1, j, k - 2)) + + c1 * (u(2, i + 1, j, k + 1) - u(2, i + 1, j, k - 1))) * + stry(j) + + la(i + 1, j, k) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(3, i + 1, j, k + 2) - u(3, i + 1, j, k - 2)) + + c1 * (u(3, i + 1, j, k + 1) - u(3, i + 1, j, k - 1))) - + ((2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(2, i - 1, j, k) * met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j, k + 2) - u(1, i - 1, j, k - 2)) + + c1 * + (u(1, i - 1, j, k + 1) - u(1, i - 1, j, k - 1))) * + strx(i - 1) + + la(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(2, i - 1, j, k + 2) - u(2, i - 1, j, k - 2)) + + c1 * + (u(2, i - 1, j, k + 1) - u(2, i - 1, j, k - 1))) * + stry(j) + + la(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(3, i - 1, j, k + 2) - u(3, i - 1, j, k - 2)) + + c1 * (u(3, i - 1, j, k + 1) - + u(3, i - 1, j, k - 1)))))) * + istry; + + // qr derivatives + // 82 ops, tot=687 + r1 += + c2 * + (mu(i, j, k + 2) * met(3, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j - 2, k + 2)) + + c1 * (u(1, i, j + 1, k + 2) - u(1, i, j - 1, k + 2))) * + stry(j) * istrx + + la(i, j, k + 2) * met(2, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j - 2, k + 2)) + + c1 * (u(2, i, j + 1, k + 2) - u(2, i, j - 1, k + 2))) - + (mu(i, j, k - 2) * met(3, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(1, i, j + 2, k - 2) - u(1, i, j - 2, k - 2)) + + c1 * (u(1, i, j + 1, k - 2) - u(1, i, j - 1, k - 2))) * + stry(j) * istrx + + la(i, j, k - 2) * met(2, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(2, i, j + 2, k - 2) - u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j + 1, k - 2) - + u(2, i, j - 1, k - 2))))) + + c1 * + (mu(i, j, k + 1) * met(3, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(1, i, j + 2, k + 1) - u(1, i, j - 2, k + 1)) + + c1 * (u(1, i, j + 1, k + 1) - u(1, i, j - 1, k + 1))) * + stry(j) * istrx + + la(i, j, k + 1) * met(2, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(2, i, j + 2, k + 1) - u(2, i, j - 2, k + 1)) + + c1 * (u(2, i, j + 1, k + 1) - u(2, i, j - 1, k + 1))) - + (mu(i, j, k - 1) * met(3, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(1, i, j + 2, k - 1) - u(1, i, j - 2, k - 1)) + + c1 * (u(1, i, j + 1, k - 1) - u(1, i, j - 1, k - 1))) * + stry(j) * istrx + + la(i, j, k - 1) * met(2, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(2, i, j + 2, k - 1) - u(2, i, j - 2, k - 1)) + + c1 * + (u(2, i, j + 1, k - 1) - u(2, i, j - 1, k - 1))))); + + // rq derivatives + // 82 ops, tot=769 + r1 += + c2 * + (mu(i, j + 2, k) * met(3, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j + 2, k - 2)) + + c1 * (u(1, i, j + 2, k + 1) - u(1, i, j + 2, k - 1))) * + stry(j + 2) * istrx + + mu(i, j + 2, k) * met(2, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j + 2, k - 2)) + + c1 * (u(2, i, j + 2, k + 1) - u(2, i, j + 2, k - 1))) - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(1, i, j - 2, k + 2) - u(1, i, j - 2, k - 2)) + + c1 * (u(1, i, j - 2, k + 1) - u(1, i, j - 2, k - 1))) * + stry(j - 2) * istrx + + mu(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(2, i, j - 2, k + 2) - u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j - 2, k + 1) - + u(2, i, j - 2, k - 1))))) + + c1 * + (mu(i, j + 1, k) * met(3, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(1, i, j + 1, k + 2) - u(1, i, j + 1, k - 2)) + + c1 * (u(1, i, j + 1, k + 1) - u(1, i, j + 1, k - 1))) * + stry(j + 1) * istrx + + mu(i, j + 1, k) * met(2, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(2, i, j + 1, k + 2) - u(2, i, j + 1, k - 2)) + + c1 * (u(2, i, j + 1, k + 1) - u(2, i, j + 1, k - 1))) - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(1, i, j - 1, k + 2) - u(1, i, j - 1, k - 2)) + + c1 * (u(1, i, j - 1, k + 1) - u(1, i, j - 1, k - 1))) * + stry(j - 1) * istrx + + mu(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(2, i, j - 1, k + 2) - u(2, i, j - 1, k - 2)) + + c1 * + (u(2, i, j - 1, k + 1) - u(2, i, j - 1, k - 1))))); + + // 4 ops, tot=773 + lu(1, i, j, k) = a1 * lu(1, i, j, k) + sgn * r1 * ijac; + } +} + diff --git a/benchmarks/cuda-jitify/sw4ck/kernel2.cuh b/benchmarks/cuda-jitify/sw4ck/kernel2.cuh new file mode 100644 index 0000000..6aec388 --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/kernel2.cuh @@ -0,0 +1,429 @@ +const char* const kernel2_cpp = +"template<\n" +" const int start0, const int N0, \n" +" const int start1, const int N1,\n" +" const int start2, const int N2,\n" +" const int ifirst, const int ilast,\n" +" const int jfirst, const int jlast,\n" +" const int kfirst, const int klast,\n" +" const float_sw4 a1, float_sw4 sgn\n" +">\n" +"__global__ \n" +"void kernel2(\n" +" const float_sw4* __restrict__ a_u, \n" +" const float_sw4* __restrict__ a_mu,\n" +" const float_sw4* __restrict__ a_lambda,\n" +" const float_sw4* __restrict__ a_met,\n" +" const float_sw4* __restrict__ a_jac,\n" +" float_sw4* __restrict__ a_lu, \n" +" const float_sw4* __restrict__ a_acof, \n" +" const float_sw4* __restrict__ a_bope,\n" +" const float_sw4* __restrict__ a_ghcof, \n" +" const float_sw4* __restrict__ a_acof_no_gp,\n" +" const float_sw4* __restrict__ a_ghcof_no_gp, \n" +" const float_sw4* __restrict__ a_strx,\n" +" const float_sw4* __restrict__ a_stry ) \n" +"{\n" +" int i = start0 + threadIdx.x + blockIdx.x * blockDim.x;\n" +" int j = start1 + threadIdx.y + blockIdx.y * blockDim.y;\n" +" int k = start2 + threadIdx.z + blockIdx.z * blockDim.z;\n" +" if ((i < N0) && (j < N1) && (k < N2)) {\n" +" float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k);\n" +" float_sw4 istry = 1 / (stry(j));\n" +" float_sw4 istrx = 1 / (strx(i));\n" +" float_sw4 istrxy = istry * istrx;\n" +"\n" +" float_sw4 r1 = 0;\n" +"\n" +" // pp derivative (u)\n" +" // 53 ops, tot=58\n" +" float_sw4 cof1 = (2 * mu(i - 2, j, k) + la(i - 2, j, k)) *\n" +" met(1, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" strx(i - 2);\n" +" float_sw4 cof2 = (2 * mu(i - 1, j, k) + la(i - 1, j, k)) *\n" +" met(1, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" strx(i - 1);\n" +" float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) *\n" +" met(1, i, j, k) * strx(i);\n" +" float_sw4 cof4 = (2 * mu(i + 1, j, k) + la(i + 1, j, k)) *\n" +" met(1, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" strx(i + 1);\n" +" float_sw4 cof5 = (2 * mu(i + 2, j, k) + la(i + 2, j, k)) *\n" +" met(1, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" strx(i + 2);\n" +" float_sw4 mux1 = cof2 - tf * (cof3 + cof1);\n" +" float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" float_sw4 mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r1 += i6 *\n" +" (mux1 * (u(1, i - 2, j, k) - u(1, i, j, k)) +\n" +" mux2 * (u(1, i - 1, j, k) - u(1, i, j, k)) +\n" +" mux3 * (u(1, i + 1, j, k) - u(1, i, j, k)) +\n" +" mux4 * (u(1, i + 2, j, k) - u(1, i, j, k))) *\n" +" istry;\n" +" // qq derivative (u)\n" +" // 43 ops, tot=101\n" +" {\n" +" float_sw4 cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * stry(j - 2);\n" +" float_sw4 cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * stry(j - 1);\n" +" float_sw4 cof3 =\n" +" (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j);\n" +" float_sw4 cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * stry(j + 1);\n" +" float_sw4 cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * stry(j + 2);\n" +" float_sw4 mux1 = cof2 - tf * (cof3 + cof1);\n" +" float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" float_sw4 mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r1 += i6 *\n" +" (mux1 * (u(1, i, j - 2, k) - u(1, i, j, k)) +\n" +" mux2 * (u(1, i, j - 1, k) - u(1, i, j, k)) +\n" +" mux3 * (u(1, i, j + 1, k) - u(1, i, j, k)) +\n" +" mux4 * (u(1, i, j + 2, k) - u(1, i, j, k))) *\n" +" istrx;\n" +" }\n" +" // rr derivative (u)\n" +" // 5*11+14+14=83 ops, tot=184\n" +" {\n" +" float_sw4 cof1 =\n" +" (2 * mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) *\n" +" strx(i) * met(2, i, j, k - 2) * strx(i) +\n" +" mu(i, j, k - 2) * (met(3, i, j, k - 2) * stry(j) *\n" +" met(3, i, j, k - 2) * stry(j) +\n" +" met(4, i, j, k - 2) * met(4, i, j, k - 2));\n" +" float_sw4 cof2 =\n" +" (2 * mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) *\n" +" strx(i) * met(2, i, j, k - 1) * strx(i) +\n" +" mu(i, j, k - 1) * (met(3, i, j, k - 1) * stry(j) *\n" +" met(3, i, j, k - 1) * stry(j) +\n" +" met(4, i, j, k - 1) * met(4, i, j, k - 1));\n" +" float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) *\n" +" strx(i) * met(2, i, j, k) * strx(i) +\n" +" mu(i, j, k) * (met(3, i, j, k) * stry(j) *\n" +" met(3, i, j, k) * stry(j) +\n" +" met(4, i, j, k) * met(4, i, j, k));\n" +" float_sw4 cof4 =\n" +" (2 * mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) *\n" +" strx(i) * met(2, i, j, k + 1) * strx(i) +\n" +" mu(i, j, k + 1) * (met(3, i, j, k + 1) * stry(j) *\n" +" met(3, i, j, k + 1) * stry(j) +\n" +" met(4, i, j, k + 1) * met(4, i, j, k + 1));\n" +" float_sw4 cof5 =\n" +" (2 * mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) *\n" +" strx(i) * met(2, i, j, k + 2) * strx(i) +\n" +" mu(i, j, k + 2) * (met(3, i, j, k + 2) * stry(j) *\n" +" met(3, i, j, k + 2) * stry(j) +\n" +" met(4, i, j, k + 2) * met(4, i, j, k + 2));\n" +"\n" +" float_sw4 mux1 = cof2 - tf * (cof3 + cof1);\n" +" float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" float_sw4 mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r1 += i6 *\n" +" (mux1 * (u(1, i, j, k - 2) - u(1, i, j, k)) +\n" +" mux2 * (u(1, i, j, k - 1) - u(1, i, j, k)) +\n" +" mux3 * (u(1, i, j, k + 1) - u(1, i, j, k)) +\n" +" mux4 * (u(1, i, j, k + 2) - u(1, i, j, k))) *\n" +" istrxy;\n" +" }\n" +" // rr derivative (v)\n" +" // 42 ops, tot=226\n" +" cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) *\n" +" met(3, i, j, k - 2);\n" +" cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) *\n" +" met(3, i, j, k - 1);\n" +" cof3 =\n" +" (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(3, i, j, k);\n" +" cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) *\n" +" met(3, i, j, k + 1);\n" +" cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) *\n" +" met(3, i, j, k + 2);\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r1 += i6 * (mux1 * (u(2, i, j, k - 2) - u(2, i, j, k)) +\n" +" mux2 * (u(2, i, j, k - 1) - u(2, i, j, k)) +\n" +" mux3 * (u(2, i, j, k + 1) - u(2, i, j, k)) +\n" +" mux4 * (u(2, i, j, k + 2) - u(2, i, j, k)));\n" +"\n" +" // rr derivative (w)\n" +" // 43 ops, tot=269\n" +" cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) *\n" +" met(4, i, j, k - 2);\n" +" cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) *\n" +" met(4, i, j, k - 1);\n" +" cof3 =\n" +" (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(4, i, j, k);\n" +" cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) *\n" +" met(4, i, j, k + 1);\n" +" cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) *\n" +" met(4, i, j, k + 2);\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r1 += i6 *\n" +" (mux1 * (u(3, i, j, k - 2) - u(3, i, j, k)) +\n" +" mux2 * (u(3, i, j, k - 1) - u(3, i, j, k)) +\n" +" mux3 * (u(3, i, j, k + 1) - u(3, i, j, k)) +\n" +" mux4 * (u(3, i, j, k + 2) - u(3, i, j, k))) *\n" +" istry;\n" +"\n" +" // pq-derivatives\n" +" // 38 ops, tot=307\n" +" r1 +=\n" +" c2 *\n" +" (mu(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" (c2 * (u(2, i + 2, j + 2, k) - u(2, i - 2, j + 2, k)) +\n" +" c1 * (u(2, i + 1, j + 2, k) - u(2, i - 1, j + 2, k))) -\n" +" mu(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) *\n" +" (c2 * (u(2, i + 2, j - 2, k) - u(2, i - 2, j - 2, k)) +\n" +" c1 * (u(2, i + 1, j - 2, k) - u(2, i - 1, j - 2, k)))) +\n" +" c1 *\n" +" (mu(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" (c2 * (u(2, i + 2, j + 1, k) - u(2, i - 2, j + 1, k)) +\n" +" c1 * (u(2, i + 1, j + 1, k) - u(2, i - 1, j + 1, k))) -\n" +" mu(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) *\n" +" (c2 * (u(2, i + 2, j - 1, k) - u(2, i - 2, j - 1, k)) +\n" +" c1 * (u(2, i + 1, j - 1, k) - u(2, i - 1, j - 1, k))));\n" +"\n" +" // qp-derivatives\n" +" // 38 ops, tot=345\n" +" r1 +=\n" +" c2 *\n" +" (la(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" (c2 * (u(2, i + 2, j + 2, k) - u(2, i + 2, j - 2, k)) +\n" +" c1 * (u(2, i + 2, j + 1, k) - u(2, i + 2, j - 1, k))) -\n" +" la(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" (c2 * (u(2, i - 2, j + 2, k) - u(2, i - 2, j - 2, k)) +\n" +" c1 * (u(2, i - 2, j + 1, k) - u(2, i - 2, j - 1, k)))) +\n" +" c1 *\n" +" (la(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" (c2 * (u(2, i + 1, j + 2, k) - u(2, i + 1, j - 2, k)) +\n" +" c1 * (u(2, i + 1, j + 1, k) - u(2, i + 1, j - 1, k))) -\n" +" la(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" (c2 * (u(2, i - 1, j + 2, k) - u(2, i - 1, j - 2, k)) +\n" +" c1 * (u(2, i - 1, j + 1, k) - u(2, i - 1, j - 1, k))));\n" +"\n" +" // pr-derivatives\n" +" // 130 ops., tot=475\n" +" r1 +=\n" +" c2 *\n" +" ((2 * mu(i, j, k + 2) + la(i, j, k + 2)) *\n" +" met(2, i, j, k + 2) * met(1, i, j, k + 2) *\n" +" (c2 * (u(1, i + 2, j, k + 2) - u(1, i - 2, j, k + 2)) +\n" +" c1 * (u(1, i + 1, j, k + 2) - u(1, i - 1, j, k + 2))) *\n" +" strx(i) * istry +\n" +" mu(i, j, k + 2) * met(3, i, j, k + 2) * met(1, i, j, k + 2) *\n" +" (c2 * (u(2, i + 2, j, k + 2) - u(2, i - 2, j, k + 2)) +\n" +" c1 * (u(2, i + 1, j, k + 2) - u(2, i - 1, j, k + 2))) +\n" +" mu(i, j, k + 2) * met(4, i, j, k + 2) * met(1, i, j, k + 2) *\n" +" (c2 * (u(3, i + 2, j, k + 2) - u(3, i - 2, j, k + 2)) +\n" +" c1 * (u(3, i + 1, j, k + 2) - u(3, i - 1, j, k + 2))) *\n" +" istry -\n" +" ((2 * mu(i, j, k - 2) + la(i, j, k - 2)) *\n" +" met(2, i, j, k - 2) * met(1, i, j, k - 2) *\n" +" (c2 * (u(1, i + 2, j, k - 2) - u(1, i - 2, j, k - 2)) +\n" +" c1 * (u(1, i + 1, j, k - 2) - u(1, i - 1, j, k - 2))) *\n" +" strx(i) * istry +\n" +" mu(i, j, k - 2) * met(3, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 * (u(2, i + 2, j, k - 2) - u(2, i - 2, j, k - 2)) +\n" +" c1 * (u(2, i + 1, j, k - 2) - u(2, i - 1, j, k - 2))) +\n" +" mu(i, j, k - 2) * met(4, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 * (u(3, i + 2, j, k - 2) - u(3, i - 2, j, k - 2)) +\n" +" c1 * (u(3, i + 1, j, k - 2) - u(3, i - 1, j, k - 2))) *\n" +" istry)) +\n" +" c1 *\n" +" ((2 * mu(i, j, k + 1) + la(i, j, k + 1)) *\n" +" met(2, i, j, k + 1) * met(1, i, j, k + 1) *\n" +" (c2 * (u(1, i + 2, j, k + 1) - u(1, i - 2, j, k + 1)) +\n" +" c1 * (u(1, i + 1, j, k + 1) - u(1, i - 1, j, k + 1))) *\n" +" strx(i) * istry +\n" +" mu(i, j, k + 1) * met(3, i, j, k + 1) * met(1, i, j, k + 1) *\n" +" (c2 * (u(2, i + 2, j, k + 1) - u(2, i - 2, j, k + 1)) +\n" +" c1 * (u(2, i + 1, j, k + 1) - u(2, i - 1, j, k + 1))) +\n" +" mu(i, j, k + 1) * met(4, i, j, k + 1) * met(1, i, j, k + 1) *\n" +" (c2 * (u(3, i + 2, j, k + 1) - u(3, i - 2, j, k + 1)) +\n" +" c1 * (u(3, i + 1, j, k + 1) - u(3, i - 1, j, k + 1))) *\n" +" istry -\n" +" ((2 * mu(i, j, k - 1) + la(i, j, k - 1)) *\n" +" met(2, i, j, k - 1) * met(1, i, j, k - 1) *\n" +" (c2 * (u(1, i + 2, j, k - 1) - u(1, i - 2, j, k - 1)) +\n" +" c1 * (u(1, i + 1, j, k - 1) - u(1, i - 1, j, k - 1))) *\n" +" strx(i) * istry +\n" +" mu(i, j, k - 1) * met(3, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 * (u(2, i + 2, j, k - 1) - u(2, i - 2, j, k - 1)) +\n" +" c1 * (u(2, i + 1, j, k - 1) - u(2, i - 1, j, k - 1))) +\n" +" mu(i, j, k - 1) * met(4, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 * (u(3, i + 2, j, k - 1) - u(3, i - 2, j, k - 1)) +\n" +" c1 * (u(3, i + 1, j, k - 1) - u(3, i - 1, j, k - 1))) *\n" +" istry));\n" +"\n" +" // rp derivatives\n" +" // 130 ops, tot=605\n" +" r1 +=\n" +" (c2 *\n" +" ((2 * mu(i + 2, j, k) + la(i + 2, j, k)) *\n" +" met(2, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" (c2 * (u(1, i + 2, j, k + 2) - u(1, i + 2, j, k - 2)) +\n" +" c1 * (u(1, i + 2, j, k + 1) - u(1, i + 2, j, k - 1))) *\n" +" strx(i + 2) +\n" +" la(i + 2, j, k) * met(3, i + 2, j, k) *\n" +" met(1, i + 2, j, k) *\n" +" (c2 * (u(2, i + 2, j, k + 2) - u(2, i + 2, j, k - 2)) +\n" +" c1 * (u(2, i + 2, j, k + 1) - u(2, i + 2, j, k - 1))) *\n" +" stry(j) +\n" +" la(i + 2, j, k) * met(4, i + 2, j, k) *\n" +" met(1, i + 2, j, k) *\n" +" (c2 * (u(3, i + 2, j, k + 2) - u(3, i + 2, j, k - 2)) +\n" +" c1 * (u(3, i + 2, j, k + 1) - u(3, i + 2, j, k - 1))) -\n" +" ((2 * mu(i - 2, j, k) + la(i - 2, j, k)) *\n" +" met(2, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" (c2 * (u(1, i - 2, j, k + 2) - u(1, i - 2, j, k - 2)) +\n" +" c1 *\n" +" (u(1, i - 2, j, k + 1) - u(1, i - 2, j, k - 1))) *\n" +" strx(i - 2) +\n" +" la(i - 2, j, k) * met(3, i - 2, j, k) *\n" +" met(1, i - 2, j, k) *\n" +" (c2 * (u(2, i - 2, j, k + 2) - u(2, i - 2, j, k - 2)) +\n" +" c1 *\n" +" (u(2, i - 2, j, k + 1) - u(2, i - 2, j, k - 1))) *\n" +" stry(j) +\n" +" la(i - 2, j, k) * met(4, i - 2, j, k) *\n" +" met(1, i - 2, j, k) *\n" +" (c2 * (u(3, i - 2, j, k + 2) - u(3, i - 2, j, k - 2)) +\n" +" c1 * (u(3, i - 2, j, k + 1) -\n" +" u(3, i - 2, j, k - 1))))) +\n" +" c1 *\n" +" ((2 * mu(i + 1, j, k) + la(i + 1, j, k)) *\n" +" met(2, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" (c2 * (u(1, i + 1, j, k + 2) - u(1, i + 1, j, k - 2)) +\n" +" c1 * (u(1, i + 1, j, k + 1) - u(1, i + 1, j, k - 1))) *\n" +" strx(i + 1) +\n" +" la(i + 1, j, k) * met(3, i + 1, j, k) *\n" +" met(1, i + 1, j, k) *\n" +" (c2 * (u(2, i + 1, j, k + 2) - u(2, i + 1, j, k - 2)) +\n" +" c1 * (u(2, i + 1, j, k + 1) - u(2, i + 1, j, k - 1))) *\n" +" stry(j) +\n" +" la(i + 1, j, k) * met(4, i + 1, j, k) *\n" +" met(1, i + 1, j, k) *\n" +" (c2 * (u(3, i + 1, j, k + 2) - u(3, i + 1, j, k - 2)) +\n" +" c1 * (u(3, i + 1, j, k + 1) - u(3, i + 1, j, k - 1))) -\n" +" ((2 * mu(i - 1, j, k) + la(i - 1, j, k)) *\n" +" met(2, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" (c2 * (u(1, i - 1, j, k + 2) - u(1, i - 1, j, k - 2)) +\n" +" c1 *\n" +" (u(1, i - 1, j, k + 1) - u(1, i - 1, j, k - 1))) *\n" +" strx(i - 1) +\n" +" la(i - 1, j, k) * met(3, i - 1, j, k) *\n" +" met(1, i - 1, j, k) *\n" +" (c2 * (u(2, i - 1, j, k + 2) - u(2, i - 1, j, k - 2)) +\n" +" c1 *\n" +" (u(2, i - 1, j, k + 1) - u(2, i - 1, j, k - 1))) *\n" +" stry(j) +\n" +" la(i - 1, j, k) * met(4, i - 1, j, k) *\n" +" met(1, i - 1, j, k) *\n" +" (c2 * (u(3, i - 1, j, k + 2) - u(3, i - 1, j, k - 2)) +\n" +" c1 * (u(3, i - 1, j, k + 1) -\n" +" u(3, i - 1, j, k - 1)))))) *\n" +" istry;\n" +"\n" +" // qr derivatives\n" +" // 82 ops, tot=687\n" +" r1 +=\n" +" c2 *\n" +" (mu(i, j, k + 2) * met(3, i, j, k + 2) * met(1, i, j, k + 2) *\n" +" (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j - 2, k + 2)) +\n" +" c1 * (u(1, i, j + 1, k + 2) - u(1, i, j - 1, k + 2))) *\n" +" stry(j) * istrx +\n" +" la(i, j, k + 2) * met(2, i, j, k + 2) * met(1, i, j, k + 2) *\n" +" (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j - 2, k + 2)) +\n" +" c1 * (u(2, i, j + 1, k + 2) - u(2, i, j - 1, k + 2))) -\n" +" (mu(i, j, k - 2) * met(3, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 * (u(1, i, j + 2, k - 2) - u(1, i, j - 2, k - 2)) +\n" +" c1 * (u(1, i, j + 1, k - 2) - u(1, i, j - 1, k - 2))) *\n" +" stry(j) * istrx +\n" +" la(i, j, k - 2) * met(2, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 * (u(2, i, j + 2, k - 2) - u(2, i, j - 2, k - 2)) +\n" +" c1 * (u(2, i, j + 1, k - 2) -\n" +" u(2, i, j - 1, k - 2))))) +\n" +" c1 *\n" +" (mu(i, j, k + 1) * met(3, i, j, k + 1) * met(1, i, j, k + 1) *\n" +" (c2 * (u(1, i, j + 2, k + 1) - u(1, i, j - 2, k + 1)) +\n" +" c1 * (u(1, i, j + 1, k + 1) - u(1, i, j - 1, k + 1))) *\n" +" stry(j) * istrx +\n" +" la(i, j, k + 1) * met(2, i, j, k + 1) * met(1, i, j, k + 1) *\n" +" (c2 * (u(2, i, j + 2, k + 1) - u(2, i, j - 2, k + 1)) +\n" +" c1 * (u(2, i, j + 1, k + 1) - u(2, i, j - 1, k + 1))) -\n" +" (mu(i, j, k - 1) * met(3, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 * (u(1, i, j + 2, k - 1) - u(1, i, j - 2, k - 1)) +\n" +" c1 * (u(1, i, j + 1, k - 1) - u(1, i, j - 1, k - 1))) *\n" +" stry(j) * istrx +\n" +" la(i, j, k - 1) * met(2, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 * (u(2, i, j + 2, k - 1) - u(2, i, j - 2, k - 1)) +\n" +" c1 *\n" +" (u(2, i, j + 1, k - 1) - u(2, i, j - 1, k - 1)))));\n" +"\n" +" // rq derivatives\n" +" // 82 ops, tot=769\n" +" r1 +=\n" +" c2 *\n" +" (mu(i, j + 2, k) * met(3, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j + 2, k - 2)) +\n" +" c1 * (u(1, i, j + 2, k + 1) - u(1, i, j + 2, k - 1))) *\n" +" stry(j + 2) * istrx +\n" +" mu(i, j + 2, k) * met(2, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j + 2, k - 2)) +\n" +" c1 * (u(2, i, j + 2, k + 1) - u(2, i, j + 2, k - 1))) -\n" +" (mu(i, j - 2, k) * met(3, i, j - 2, k) *\n" +" met(1, i, j - 2, k) *\n" +" (c2 * (u(1, i, j - 2, k + 2) - u(1, i, j - 2, k - 2)) +\n" +" c1 * (u(1, i, j - 2, k + 1) - u(1, i, j - 2, k - 1))) *\n" +" stry(j - 2) * istrx +\n" +" mu(i, j - 2, k) * met(2, i, j - 2, k) *\n" +" met(1, i, j - 2, k) *\n" +" (c2 * (u(2, i, j - 2, k + 2) - u(2, i, j - 2, k - 2)) +\n" +" c1 * (u(2, i, j - 2, k + 1) -\n" +" u(2, i, j - 2, k - 1))))) +\n" +" c1 *\n" +" (mu(i, j + 1, k) * met(3, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" (c2 * (u(1, i, j + 1, k + 2) - u(1, i, j + 1, k - 2)) +\n" +" c1 * (u(1, i, j + 1, k + 1) - u(1, i, j + 1, k - 1))) *\n" +" stry(j + 1) * istrx +\n" +" mu(i, j + 1, k) * met(2, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" (c2 * (u(2, i, j + 1, k + 2) - u(2, i, j + 1, k - 2)) +\n" +" c1 * (u(2, i, j + 1, k + 1) - u(2, i, j + 1, k - 1))) -\n" +" (mu(i, j - 1, k) * met(3, i, j - 1, k) *\n" +" met(1, i, j - 1, k) *\n" +" (c2 * (u(1, i, j - 1, k + 2) - u(1, i, j - 1, k - 2)) +\n" +" c1 * (u(1, i, j - 1, k + 1) - u(1, i, j - 1, k - 1))) *\n" +" stry(j - 1) * istrx +\n" +" mu(i, j - 1, k) * met(2, i, j - 1, k) *\n" +" met(1, i, j - 1, k) *\n" +" (c2 * (u(2, i, j - 1, k + 2) - u(2, i, j - 1, k - 2)) +\n" +" c1 *\n" +" (u(2, i, j - 1, k + 1) - u(2, i, j - 1, k - 1)))));\n" +"\n" +" // 4 ops, tot=773\n" +" lu(1, i, j, k) = a1 * lu(1, i, j, k) + sgn * r1 * ijac;\n" +" } \n" +"}\n" +"\n" +; diff --git a/benchmarks/cuda-jitify/sw4ck/kernel3.cpp b/benchmarks/cuda-jitify/sw4ck/kernel3.cpp new file mode 100644 index 0000000..b959afc --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/kernel3.cpp @@ -0,0 +1,412 @@ +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))) +#endif +void kernel3( + const int start0, const int N0, + const int start1, const int N1, + const int start2, const int N2, + const int ifirst, const int ilast, + const int jfirst, const int jlast, + const int kfirst, const int klast, + const float_sw4 a1, const float_sw4 sgn, + const float_sw4* __restrict__ a_u, + const float_sw4* __restrict__ a_mu, + const float_sw4* __restrict__ a_lambda, + const float_sw4* __restrict__ a_met, + const float_sw4* __restrict__ a_jac, + float_sw4* __restrict__ a_lu, + const float_sw4* __restrict__ a_acof, + const float_sw4* __restrict__ a_bope, + const float_sw4* __restrict__ a_ghcof, + const float_sw4* __restrict__ a_acof_no_gp, + const float_sw4* __restrict__ a_ghcof_no_gp, + const float_sw4* __restrict__ a_strx, + const float_sw4* __restrict__ a_stry ) +{ + int i = start0 + threadIdx.x + blockIdx.x * blockDim.x; + int j = start1 + threadIdx.y + blockIdx.y * blockDim.y; + int k = start2 + threadIdx.z + blockIdx.z * blockDim.z; + if ((i < N0) && (j < N1) && (k < N2)) { + float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k); + float_sw4 istry = 1 / (stry(j)); + float_sw4 istrx = 1 / (strx(i)); + float_sw4 istrxy = istry * istrx; + + float_sw4 r2 = 0; + // v-equation + + // r1 = 0; + // pp derivative (v) + // 43 ops, tot=816 + float_sw4 cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * strx(i - 2); + float_sw4 cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * strx(i - 1); + float_sw4 cof3 = + (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + float_sw4 cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * strx(i + 1); + float_sw4 cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * strx(i + 2); + + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r2 += i6 * + (mux1 * (u(2, i - 2, j, k) - u(2, i, j, k)) + + mux2 * (u(2, i - 1, j, k) - u(2, i, j, k)) + + mux3 * (u(2, i + 1, j, k) - u(2, i, j, k)) + + mux4 * (u(2, i + 2, j, k) - u(2, i, j, k))) * + istry; + + // qq derivative (v) + // 53 ops, tot=869 + cof1 = (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + cof2 = (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * stry(j); + cof4 = (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + cof5 = (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 += i6 * + (mux1 * (u(2, i, j - 2, k) - u(2, i, j, k)) + + mux2 * (u(2, i, j - 1, k) - u(2, i, j, k)) + + mux3 * (u(2, i, j + 1, k) - u(2, i, j, k)) + + mux4 * (u(2, i, j + 2, k) - u(2, i, j, k))) * + istrx; + + // rr derivative (u) + // 42 ops, tot=911 + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) * + met(3, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) * + met(3, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(3, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) * + met(3, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) * + met(3, i, j, k + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 += i6 * (mux1 * (u(1, i, j, k - 2) - u(1, i, j, k)) + + mux2 * (u(1, i, j, k - 1) - u(1, i, j, k)) + + mux3 * (u(1, i, j, k + 1) - u(1, i, j, k)) + + mux4 * (u(1, i, j, k + 2) - u(1, i, j, k))); + + // rr derivative (v) + // 83 ops, tot=994 + cof1 = (2 * mu(i, j, k - 2) + la(i, j, k - 2)) * met(3, i, j, k - 2) * + stry(j) * met(3, i, j, k - 2) * stry(j) + + mu(i, j, k - 2) * (met(2, i, j, k - 2) * strx(i) * + met(2, i, j, k - 2) * strx(i) + + met(4, i, j, k - 2) * met(4, i, j, k - 2)); + cof2 = (2 * mu(i, j, k - 1) + la(i, j, k - 1)) * met(3, i, j, k - 1) * + stry(j) * met(3, i, j, k - 1) * stry(j) + + mu(i, j, k - 1) * (met(2, i, j, k - 1) * strx(i) * + met(2, i, j, k - 1) * strx(i) + + met(4, i, j, k - 1) * met(4, i, j, k - 1)); + cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(3, i, j, k) * stry(j) * + met(3, i, j, k) * stry(j) + + mu(i, j, k) * + (met(2, i, j, k) * strx(i) * met(2, i, j, k) * strx(i) + + met(4, i, j, k) * met(4, i, j, k)); + cof4 = (2 * mu(i, j, k + 1) + la(i, j, k + 1)) * met(3, i, j, k + 1) * + stry(j) * met(3, i, j, k + 1) * stry(j) + + mu(i, j, k + 1) * (met(2, i, j, k + 1) * strx(i) * + met(2, i, j, k + 1) * strx(i) + + met(4, i, j, k + 1) * met(4, i, j, k + 1)); + cof5 = (2 * mu(i, j, k + 2) + la(i, j, k + 2)) * met(3, i, j, k + 2) * + stry(j) * met(3, i, j, k + 2) * stry(j) + + mu(i, j, k + 2) * (met(2, i, j, k + 2) * strx(i) * + met(2, i, j, k + 2) * strx(i) + + met(4, i, j, k + 2) * met(4, i, j, k + 2)); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 += i6 * + (mux1 * (u(2, i, j, k - 2) - u(2, i, j, k)) + + mux2 * (u(2, i, j, k - 1) - u(2, i, j, k)) + + mux3 * (u(2, i, j, k + 1) - u(2, i, j, k)) + + mux4 * (u(2, i, j, k + 2) - u(2, i, j, k))) * + istrxy; + + // rr derivative (w) + // 43 ops, tot=1037 + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(3, i, j, k - 2) * + met(4, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(3, i, j, k - 1) * + met(4, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(3, i, j, k) * met(4, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(3, i, j, k + 1) * + met(4, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(3, i, j, k + 2) * + met(4, i, j, k + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 += i6 * + (mux1 * (u(3, i, j, k - 2) - u(3, i, j, k)) + + mux2 * (u(3, i, j, k - 1) - u(3, i, j, k)) + + mux3 * (u(3, i, j, k + 1) - u(3, i, j, k)) + + mux4 * (u(3, i, j, k + 2) - u(3, i, j, k))) * + istrx; + + // pq-derivatives + // 38 ops, tot=1075 + r2 += + c2 * + (la(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i - 2, j + 2, k)) + + c1 * (u(1, i + 1, j + 2, k) - u(1, i - 1, j + 2, k))) - + la(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + (c2 * (u(1, i + 2, j - 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i + 1, j - 2, k) - u(1, i - 1, j - 2, k)))) + + c1 * + (la(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(1, i + 2, j + 1, k) - u(1, i - 2, j + 1, k)) + + c1 * (u(1, i + 1, j + 1, k) - u(1, i - 1, j + 1, k))) - + la(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + (c2 * (u(1, i + 2, j - 1, k) - u(1, i - 2, j - 1, k)) + + c1 * (u(1, i + 1, j - 1, k) - u(1, i - 1, j - 1, k)))); + + // qp-derivatives + // 38 ops, tot=1113 + r2 += + c2 * + (mu(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i + 2, j - 2, k)) + + c1 * (u(1, i + 2, j + 1, k) - u(1, i + 2, j - 1, k))) - + mu(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j + 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i - 2, j + 1, k) - u(1, i - 2, j - 1, k)))) + + c1 * + (mu(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j + 2, k) - u(1, i + 1, j - 2, k)) + + c1 * (u(1, i + 1, j + 1, k) - u(1, i + 1, j - 1, k))) - + mu(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j + 2, k) - u(1, i - 1, j - 2, k)) + + c1 * (u(1, i - 1, j + 1, k) - u(1, i - 1, j - 1, k)))); + + // pr-derivatives + // 82 ops, tot=1195 + r2 += + c2 * + ((la(i, j, k + 2)) * met(3, i, j, k + 2) * + met(1, i, j, k + 2) * + (c2 * (u(1, i + 2, j, k + 2) - u(1, i - 2, j, k + 2)) + + c1 * (u(1, i + 1, j, k + 2) - u(1, i - 1, j, k + 2))) + + mu(i, j, k + 2) * met(2, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(2, i + 2, j, k + 2) - u(2, i - 2, j, k + 2)) + + c1 * (u(2, i + 1, j, k + 2) - u(2, i - 1, j, k + 2))) * + strx(i) * istry - + ((la(i, j, k - 2)) * met(3, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(1, i + 2, j, k - 2) - u(1, i - 2, j, k - 2)) + + c1 * (u(1, i + 1, j, k - 2) - u(1, i - 1, j, k - 2))) + + mu(i, j, k - 2) * met(2, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(2, i + 2, j, k - 2) - u(2, i - 2, j, k - 2)) + + c1 * (u(2, i + 1, j, k - 2) - u(2, i - 1, j, k - 2))) * + strx(i) * istry)) + + c1 * + ((la(i, j, k + 1)) * met(3, i, j, k + 1) * + met(1, i, j, k + 1) * + (c2 * (u(1, i + 2, j, k + 1) - u(1, i - 2, j, k + 1)) + + c1 * (u(1, i + 1, j, k + 1) - u(1, i - 1, j, k + 1))) + + mu(i, j, k + 1) * met(2, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(2, i + 2, j, k + 1) - u(2, i - 2, j, k + 1)) + + c1 * (u(2, i + 1, j, k + 1) - u(2, i - 1, j, k + 1))) * + strx(i) * istry - + (la(i, j, k - 1) * met(3, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(1, i + 2, j, k - 1) - u(1, i - 2, j, k - 1)) + + c1 * (u(1, i + 1, j, k - 1) - u(1, i - 1, j, k - 1))) + + mu(i, j, k - 1) * met(2, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(2, i + 2, j, k - 1) - u(2, i - 2, j, k - 1)) + + c1 * (u(2, i + 1, j, k - 1) - u(2, i - 1, j, k - 1))) * + strx(i) * istry)); + + // rp derivatives + // 82 ops, tot=1277 + r2 += + c2 * + ((mu(i + 2, j, k)) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j, k + 2) - u(1, i + 2, j, k - 2)) + + c1 * (u(1, i + 2, j, k + 1) - u(1, i + 2, j, k - 1))) + + mu(i + 2, j, k) * met(2, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(2, i + 2, j, k + 2) - u(2, i + 2, j, k - 2)) + + c1 * (u(2, i + 2, j, k + 1) - u(2, i + 2, j, k - 1))) * + strx(i + 2) * istry - + (mu(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j, k + 2) - u(1, i - 2, j, k - 2)) + + c1 * (u(1, i - 2, j, k + 1) - u(1, i - 2, j, k - 1))) + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(2, i - 2, j, k + 2) - u(2, i - 2, j, k - 2)) + + c1 * (u(2, i - 2, j, k + 1) - u(2, i - 2, j, k - 1))) * + strx(i - 2) * istry)) + + c1 * + ((mu(i + 1, j, k)) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j, k + 2) - u(1, i + 1, j, k - 2)) + + c1 * (u(1, i + 1, j, k + 1) - u(1, i + 1, j, k - 1))) + + mu(i + 1, j, k) * met(2, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(2, i + 1, j, k + 2) - u(2, i + 1, j, k - 2)) + + c1 * (u(2, i + 1, j, k + 1) - u(2, i + 1, j, k - 1))) * + strx(i + 1) * istry - + (mu(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j, k + 2) - u(1, i - 1, j, k - 2)) + + c1 * (u(1, i - 1, j, k + 1) - u(1, i - 1, j, k - 1))) + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(2, i - 1, j, k + 2) - u(2, i - 1, j, k - 2)) + + c1 * (u(2, i - 1, j, k + 1) - u(2, i - 1, j, k - 1))) * + strx(i - 1) * istry)); + + // qr derivatives + // 130 ops, tot=1407 + r2 += + c2 * + (mu(i, j, k + 2) * met(2, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j - 2, k + 2)) + + c1 * (u(1, i, j + 1, k + 2) - u(1, i, j - 1, k + 2))) + + (2 * mu(i, j, k + 2) + la(i, j, k + 2)) * + met(3, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j - 2, k + 2)) + + c1 * (u(2, i, j + 1, k + 2) - u(2, i, j - 1, k + 2))) * + stry(j) * istrx + + mu(i, j, k + 2) * met(4, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(3, i, j + 2, k + 2) - u(3, i, j - 2, k + 2)) + + c1 * (u(3, i, j + 1, k + 2) - u(3, i, j - 1, k + 2))) * + istrx - + (mu(i, j, k - 2) * met(2, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(1, i, j + 2, k - 2) - u(1, i, j - 2, k - 2)) + + c1 * (u(1, i, j + 1, k - 2) - u(1, i, j - 1, k - 2))) + + (2 * mu(i, j, k - 2) + la(i, j, k - 2)) * + met(3, i, j, k - 2) * met(1, i, j, k - 2) * + (c2 * (u(2, i, j + 2, k - 2) - u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j + 1, k - 2) - u(2, i, j - 1, k - 2))) * + stry(j) * istrx + + mu(i, j, k - 2) * met(4, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(3, i, j + 2, k - 2) - u(3, i, j - 2, k - 2)) + + c1 * (u(3, i, j + 1, k - 2) - u(3, i, j - 1, k - 2))) * + istrx)) + + c1 * + (mu(i, j, k + 1) * met(2, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(1, i, j + 2, k + 1) - u(1, i, j - 2, k + 1)) + + c1 * (u(1, i, j + 1, k + 1) - u(1, i, j - 1, k + 1))) + + (2 * mu(i, j, k + 1) + la(i, j, k + 1)) * + met(3, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(2, i, j + 2, k + 1) - u(2, i, j - 2, k + 1)) + + c1 * (u(2, i, j + 1, k + 1) - u(2, i, j - 1, k + 1))) * + stry(j) * istrx + + mu(i, j, k + 1) * met(4, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(3, i, j + 2, k + 1) - u(3, i, j - 2, k + 1)) + + c1 * (u(3, i, j + 1, k + 1) - u(3, i, j - 1, k + 1))) * + istrx - + (mu(i, j, k - 1) * met(2, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(1, i, j + 2, k - 1) - u(1, i, j - 2, k - 1)) + + c1 * (u(1, i, j + 1, k - 1) - u(1, i, j - 1, k - 1))) + + (2 * mu(i, j, k - 1) + la(i, j, k - 1)) * + met(3, i, j, k - 1) * met(1, i, j, k - 1) * + (c2 * (u(2, i, j + 2, k - 1) - u(2, i, j - 2, k - 1)) + + c1 * (u(2, i, j + 1, k - 1) - u(2, i, j - 1, k - 1))) * + stry(j) * istrx + + mu(i, j, k - 1) * met(4, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(3, i, j + 2, k - 1) - u(3, i, j - 2, k - 1)) + + c1 * (u(3, i, j + 1, k - 1) - u(3, i, j - 1, k - 1))) * + istrx)); + + // rq derivatives + // 130 ops, tot=1537 + r2 += + c2 * + (la(i, j + 2, k) * met(2, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j + 2, k - 2)) + + c1 * (u(1, i, j + 2, k + 1) - u(1, i, j + 2, k - 1))) + + (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * + met(3, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j + 2, k - 2)) + + c1 * (u(2, i, j + 2, k + 1) - u(2, i, j + 2, k - 1))) * + stry(j + 2) * istrx + + la(i, j + 2, k) * met(4, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(3, i, j + 2, k + 2) - u(3, i, j + 2, k - 2)) + + c1 * (u(3, i, j + 2, k + 1) - u(3, i, j + 2, k - 1))) * + istrx - + (la(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(1, i, j - 2, k + 2) - u(1, i, j - 2, k - 2)) + + c1 * (u(1, i, j - 2, k + 1) - u(1, i, j - 2, k - 1))) + + (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * + met(3, i, j - 2, k) * met(1, i, j - 2, k) * + (c2 * (u(2, i, j - 2, k + 2) - u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j - 2, k + 1) - u(2, i, j - 2, k - 1))) * + stry(j - 2) * istrx + + la(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(3, i, j - 2, k + 2) - u(3, i, j - 2, k - 2)) + + c1 * (u(3, i, j - 2, k + 1) - u(3, i, j - 2, k - 1))) * + istrx)) + + c1 * + (la(i, j + 1, k) * met(2, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(1, i, j + 1, k + 2) - u(1, i, j + 1, k - 2)) + + c1 * (u(1, i, j + 1, k + 1) - u(1, i, j + 1, k - 1))) + + (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * + met(3, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(2, i, j + 1, k + 2) - u(2, i, j + 1, k - 2)) + + c1 * (u(2, i, j + 1, k + 1) - u(2, i, j + 1, k - 1))) * + stry(j + 1) * istrx + + la(i, j + 1, k) * met(4, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(3, i, j + 1, k + 2) - u(3, i, j + 1, k - 2)) + + c1 * (u(3, i, j + 1, k + 1) - u(3, i, j + 1, k - 1))) * + istrx - + (la(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(1, i, j - 1, k + 2) - u(1, i, j - 1, k - 2)) + + c1 * (u(1, i, j - 1, k + 1) - u(1, i, j - 1, k - 1))) + + (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * + met(3, i, j - 1, k) * met(1, i, j - 1, k) * + (c2 * (u(2, i, j - 1, k + 2) - u(2, i, j - 1, k - 2)) + + c1 * (u(2, i, j - 1, k + 1) - u(2, i, j - 1, k - 1))) * + stry(j - 1) * istrx + + la(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(3, i, j - 1, k + 2) - u(3, i, j - 1, k - 2)) + + c1 * (u(3, i, j - 1, k + 1) - u(3, i, j - 1, k - 1))) * + istrx)); + + // 4 ops, tot=1541 + lu(2, i, j, k) = a1 * lu(2, i, j, k) + sgn * r2 * ijac; + } +} + diff --git a/benchmarks/cuda-jitify/sw4ck/kernel3.cuh b/benchmarks/cuda-jitify/sw4ck/kernel3.cuh new file mode 100644 index 0000000..9048f59 --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/kernel3.cuh @@ -0,0 +1,413 @@ +const char* const kernel3_cpp = +"template<\n" +" const int start0, const int N0, \n" +" const int start1, const int N1,\n" +" const int start2, const int N2,\n" +" const int ifirst, const int ilast,\n" +" const int jfirst, const int jlast,\n" +" const int kfirst, const int klast,\n" +" const float_sw4 a1, const float_sw4 sgn\n" +">\n" +"__global__ \n" +"void kernel3(\n" +" const float_sw4* __restrict__ a_u, \n" +" const float_sw4* __restrict__ a_mu,\n" +" const float_sw4* __restrict__ a_lambda,\n" +" const float_sw4* __restrict__ a_met,\n" +" const float_sw4* __restrict__ a_jac,\n" +" float_sw4* __restrict__ a_lu, \n" +" const float_sw4* __restrict__ a_acof, \n" +" const float_sw4* __restrict__ a_bope,\n" +" const float_sw4* __restrict__ a_ghcof, \n" +" const float_sw4* __restrict__ a_acof_no_gp,\n" +" const float_sw4* __restrict__ a_ghcof_no_gp, \n" +" const float_sw4* __restrict__ a_strx,\n" +" const float_sw4* __restrict__ a_stry ) \n" +"{\n" +" int i = start0 + threadIdx.x + blockIdx.x * blockDim.x;\n" +" int j = start1 + threadIdx.y + blockIdx.y * blockDim.y;\n" +" int k = start2 + threadIdx.z + blockIdx.z * blockDim.z;\n" +" if ((i < N0) && (j < N1) && (k < N2)) {\n" +" float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k);\n" +" float_sw4 istry = 1 / (stry(j));\n" +" float_sw4 istrx = 1 / (strx(i));\n" +" float_sw4 istrxy = istry * istrx;\n" +"\n" +" float_sw4 r2 = 0;\n" +" // v-equation\n" +"\n" +" // r1 = 0;\n" +" // pp derivative (v)\n" +" // 43 ops, tot=816\n" +" float_sw4 cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * strx(i - 2);\n" +" float_sw4 cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * strx(i - 1);\n" +" float_sw4 cof3 =\n" +" (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i);\n" +" float_sw4 cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * strx(i + 1);\n" +" float_sw4 cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * strx(i + 2);\n" +"\n" +" float_sw4 mux1 = cof2 - tf * (cof3 + cof1);\n" +" float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" float_sw4 mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r2 += i6 *\n" +" (mux1 * (u(2, i - 2, j, k) - u(2, i, j, k)) +\n" +" mux2 * (u(2, i - 1, j, k) - u(2, i, j, k)) +\n" +" mux3 * (u(2, i + 1, j, k) - u(2, i, j, k)) +\n" +" mux4 * (u(2, i + 2, j, k) - u(2, i, j, k))) *\n" +" istry;\n" +"\n" +" // qq derivative (v)\n" +" // 53 ops, tot=869\n" +" cof1 = (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * met(1, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * stry(j - 2);\n" +" cof2 = (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * met(1, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * stry(j - 1);\n" +" cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) *\n" +" met(1, i, j, k) * stry(j);\n" +" cof4 = (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * met(1, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * stry(j + 1);\n" +" cof5 = (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * met(1, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * stry(j + 2);\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r2 += i6 *\n" +" (mux1 * (u(2, i, j - 2, k) - u(2, i, j, k)) +\n" +" mux2 * (u(2, i, j - 1, k) - u(2, i, j, k)) +\n" +" mux3 * (u(2, i, j + 1, k) - u(2, i, j, k)) +\n" +" mux4 * (u(2, i, j + 2, k) - u(2, i, j, k))) *\n" +" istrx;\n" +"\n" +" // rr derivative (u)\n" +" // 42 ops, tot=911\n" +" cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) *\n" +" met(3, i, j, k - 2);\n" +" cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) *\n" +" met(3, i, j, k - 1);\n" +" cof3 =\n" +" (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(3, i, j, k);\n" +" cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) *\n" +" met(3, i, j, k + 1);\n" +" cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) *\n" +" met(3, i, j, k + 2);\n" +"\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r2 += i6 * (mux1 * (u(1, i, j, k - 2) - u(1, i, j, k)) +\n" +" mux2 * (u(1, i, j, k - 1) - u(1, i, j, k)) +\n" +" mux3 * (u(1, i, j, k + 1) - u(1, i, j, k)) +\n" +" mux4 * (u(1, i, j, k + 2) - u(1, i, j, k)));\n" +"\n" +" // rr derivative (v)\n" +" // 83 ops, tot=994\n" +" cof1 = (2 * mu(i, j, k - 2) + la(i, j, k - 2)) * met(3, i, j, k - 2) *\n" +" stry(j) * met(3, i, j, k - 2) * stry(j) +\n" +" mu(i, j, k - 2) * (met(2, i, j, k - 2) * strx(i) *\n" +" met(2, i, j, k - 2) * strx(i) +\n" +" met(4, i, j, k - 2) * met(4, i, j, k - 2));\n" +" cof2 = (2 * mu(i, j, k - 1) + la(i, j, k - 1)) * met(3, i, j, k - 1) *\n" +" stry(j) * met(3, i, j, k - 1) * stry(j) +\n" +" mu(i, j, k - 1) * (met(2, i, j, k - 1) * strx(i) *\n" +" met(2, i, j, k - 1) * strx(i) +\n" +" met(4, i, j, k - 1) * met(4, i, j, k - 1));\n" +" cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(3, i, j, k) * stry(j) *\n" +" met(3, i, j, k) * stry(j) +\n" +" mu(i, j, k) *\n" +" (met(2, i, j, k) * strx(i) * met(2, i, j, k) * strx(i) +\n" +" met(4, i, j, k) * met(4, i, j, k));\n" +" cof4 = (2 * mu(i, j, k + 1) + la(i, j, k + 1)) * met(3, i, j, k + 1) *\n" +" stry(j) * met(3, i, j, k + 1) * stry(j) +\n" +" mu(i, j, k + 1) * (met(2, i, j, k + 1) * strx(i) *\n" +" met(2, i, j, k + 1) * strx(i) +\n" +" met(4, i, j, k + 1) * met(4, i, j, k + 1));\n" +" cof5 = (2 * mu(i, j, k + 2) + la(i, j, k + 2)) * met(3, i, j, k + 2) *\n" +" stry(j) * met(3, i, j, k + 2) * stry(j) +\n" +" mu(i, j, k + 2) * (met(2, i, j, k + 2) * strx(i) *\n" +" met(2, i, j, k + 2) * strx(i) +\n" +" met(4, i, j, k + 2) * met(4, i, j, k + 2));\n" +"\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r2 += i6 *\n" +" (mux1 * (u(2, i, j, k - 2) - u(2, i, j, k)) +\n" +" mux2 * (u(2, i, j, k - 1) - u(2, i, j, k)) +\n" +" mux3 * (u(2, i, j, k + 1) - u(2, i, j, k)) +\n" +" mux4 * (u(2, i, j, k + 2) - u(2, i, j, k))) *\n" +" istrxy;\n" +"\n" +" // rr derivative (w)\n" +" // 43 ops, tot=1037\n" +" cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(3, i, j, k - 2) *\n" +" met(4, i, j, k - 2);\n" +" cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(3, i, j, k - 1) *\n" +" met(4, i, j, k - 1);\n" +" cof3 =\n" +" (mu(i, j, k) + la(i, j, k)) * met(3, i, j, k) * met(4, i, j, k);\n" +" cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(3, i, j, k + 1) *\n" +" met(4, i, j, k + 1);\n" +" cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(3, i, j, k + 2) *\n" +" met(4, i, j, k + 2);\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r2 += i6 *\n" +" (mux1 * (u(3, i, j, k - 2) - u(3, i, j, k)) +\n" +" mux2 * (u(3, i, j, k - 1) - u(3, i, j, k)) +\n" +" mux3 * (u(3, i, j, k + 1) - u(3, i, j, k)) +\n" +" mux4 * (u(3, i, j, k + 2) - u(3, i, j, k))) *\n" +" istrx;\n" +"\n" +" // pq-derivatives\n" +" // 38 ops, tot=1075\n" +" r2 +=\n" +" c2 *\n" +" (la(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" (c2 * (u(1, i + 2, j + 2, k) - u(1, i - 2, j + 2, k)) +\n" +" c1 * (u(1, i + 1, j + 2, k) - u(1, i - 1, j + 2, k))) -\n" +" la(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) *\n" +" (c2 * (u(1, i + 2, j - 2, k) - u(1, i - 2, j - 2, k)) +\n" +" c1 * (u(1, i + 1, j - 2, k) - u(1, i - 1, j - 2, k)))) +\n" +" c1 *\n" +" (la(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" (c2 * (u(1, i + 2, j + 1, k) - u(1, i - 2, j + 1, k)) +\n" +" c1 * (u(1, i + 1, j + 1, k) - u(1, i - 1, j + 1, k))) -\n" +" la(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) *\n" +" (c2 * (u(1, i + 2, j - 1, k) - u(1, i - 2, j - 1, k)) +\n" +" c1 * (u(1, i + 1, j - 1, k) - u(1, i - 1, j - 1, k))));\n" +"\n" +" // qp-derivatives\n" +" // 38 ops, tot=1113\n" +" r2 +=\n" +" c2 *\n" +" (mu(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" (c2 * (u(1, i + 2, j + 2, k) - u(1, i + 2, j - 2, k)) +\n" +" c1 * (u(1, i + 2, j + 1, k) - u(1, i + 2, j - 1, k))) -\n" +" mu(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" (c2 * (u(1, i - 2, j + 2, k) - u(1, i - 2, j - 2, k)) +\n" +" c1 * (u(1, i - 2, j + 1, k) - u(1, i - 2, j - 1, k)))) +\n" +" c1 *\n" +" (mu(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" (c2 * (u(1, i + 1, j + 2, k) - u(1, i + 1, j - 2, k)) +\n" +" c1 * (u(1, i + 1, j + 1, k) - u(1, i + 1, j - 1, k))) -\n" +" mu(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" (c2 * (u(1, i - 1, j + 2, k) - u(1, i - 1, j - 2, k)) +\n" +" c1 * (u(1, i - 1, j + 1, k) - u(1, i - 1, j - 1, k))));\n" +"\n" +" // pr-derivatives\n" +" // 82 ops, tot=1195\n" +" r2 +=\n" +" c2 *\n" +" ((la(i, j, k + 2)) * met(3, i, j, k + 2) *\n" +" met(1, i, j, k + 2) *\n" +" (c2 * (u(1, i + 2, j, k + 2) - u(1, i - 2, j, k + 2)) +\n" +" c1 * (u(1, i + 1, j, k + 2) - u(1, i - 1, j, k + 2))) +\n" +" mu(i, j, k + 2) * met(2, i, j, k + 2) * met(1, i, j, k + 2) *\n" +" (c2 * (u(2, i + 2, j, k + 2) - u(2, i - 2, j, k + 2)) +\n" +" c1 * (u(2, i + 1, j, k + 2) - u(2, i - 1, j, k + 2))) *\n" +" strx(i) * istry -\n" +" ((la(i, j, k - 2)) * met(3, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 * (u(1, i + 2, j, k - 2) - u(1, i - 2, j, k - 2)) +\n" +" c1 * (u(1, i + 1, j, k - 2) - u(1, i - 1, j, k - 2))) +\n" +" mu(i, j, k - 2) * met(2, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 * (u(2, i + 2, j, k - 2) - u(2, i - 2, j, k - 2)) +\n" +" c1 * (u(2, i + 1, j, k - 2) - u(2, i - 1, j, k - 2))) *\n" +" strx(i) * istry)) +\n" +" c1 *\n" +" ((la(i, j, k + 1)) * met(3, i, j, k + 1) *\n" +" met(1, i, j, k + 1) *\n" +" (c2 * (u(1, i + 2, j, k + 1) - u(1, i - 2, j, k + 1)) +\n" +" c1 * (u(1, i + 1, j, k + 1) - u(1, i - 1, j, k + 1))) +\n" +" mu(i, j, k + 1) * met(2, i, j, k + 1) * met(1, i, j, k + 1) *\n" +" (c2 * (u(2, i + 2, j, k + 1) - u(2, i - 2, j, k + 1)) +\n" +" c1 * (u(2, i + 1, j, k + 1) - u(2, i - 1, j, k + 1))) *\n" +" strx(i) * istry -\n" +" (la(i, j, k - 1) * met(3, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 * (u(1, i + 2, j, k - 1) - u(1, i - 2, j, k - 1)) +\n" +" c1 * (u(1, i + 1, j, k - 1) - u(1, i - 1, j, k - 1))) +\n" +" mu(i, j, k - 1) * met(2, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 * (u(2, i + 2, j, k - 1) - u(2, i - 2, j, k - 1)) +\n" +" c1 * (u(2, i + 1, j, k - 1) - u(2, i - 1, j, k - 1))) *\n" +" strx(i) * istry));\n" +"\n" +" // rp derivatives\n" +" // 82 ops, tot=1277\n" +" r2 +=\n" +" c2 *\n" +" ((mu(i + 2, j, k)) * met(3, i + 2, j, k) *\n" +" met(1, i + 2, j, k) *\n" +" (c2 * (u(1, i + 2, j, k + 2) - u(1, i + 2, j, k - 2)) +\n" +" c1 * (u(1, i + 2, j, k + 1) - u(1, i + 2, j, k - 1))) +\n" +" mu(i + 2, j, k) * met(2, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" (c2 * (u(2, i + 2, j, k + 2) - u(2, i + 2, j, k - 2)) +\n" +" c1 * (u(2, i + 2, j, k + 1) - u(2, i + 2, j, k - 1))) *\n" +" strx(i + 2) * istry -\n" +" (mu(i - 2, j, k) * met(3, i - 2, j, k) *\n" +" met(1, i - 2, j, k) *\n" +" (c2 * (u(1, i - 2, j, k + 2) - u(1, i - 2, j, k - 2)) +\n" +" c1 * (u(1, i - 2, j, k + 1) - u(1, i - 2, j, k - 1))) +\n" +" mu(i - 2, j, k) * met(2, i - 2, j, k) *\n" +" met(1, i - 2, j, k) *\n" +" (c2 * (u(2, i - 2, j, k + 2) - u(2, i - 2, j, k - 2)) +\n" +" c1 * (u(2, i - 2, j, k + 1) - u(2, i - 2, j, k - 1))) *\n" +" strx(i - 2) * istry)) +\n" +" c1 *\n" +" ((mu(i + 1, j, k)) * met(3, i + 1, j, k) *\n" +" met(1, i + 1, j, k) *\n" +" (c2 * (u(1, i + 1, j, k + 2) - u(1, i + 1, j, k - 2)) +\n" +" c1 * (u(1, i + 1, j, k + 1) - u(1, i + 1, j, k - 1))) +\n" +" mu(i + 1, j, k) * met(2, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" (c2 * (u(2, i + 1, j, k + 2) - u(2, i + 1, j, k - 2)) +\n" +" c1 * (u(2, i + 1, j, k + 1) - u(2, i + 1, j, k - 1))) *\n" +" strx(i + 1) * istry -\n" +" (mu(i - 1, j, k) * met(3, i - 1, j, k) *\n" +" met(1, i - 1, j, k) *\n" +" (c2 * (u(1, i - 1, j, k + 2) - u(1, i - 1, j, k - 2)) +\n" +" c1 * (u(1, i - 1, j, k + 1) - u(1, i - 1, j, k - 1))) +\n" +" mu(i - 1, j, k) * met(2, i - 1, j, k) *\n" +" met(1, i - 1, j, k) *\n" +" (c2 * (u(2, i - 1, j, k + 2) - u(2, i - 1, j, k - 2)) +\n" +" c1 * (u(2, i - 1, j, k + 1) - u(2, i - 1, j, k - 1))) *\n" +" strx(i - 1) * istry));\n" +"\n" +" // qr derivatives\n" +" // 130 ops, tot=1407\n" +" r2 +=\n" +" c2 *\n" +" (mu(i, j, k + 2) * met(2, i, j, k + 2) * met(1, i, j, k + 2) *\n" +" (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j - 2, k + 2)) +\n" +" c1 * (u(1, i, j + 1, k + 2) - u(1, i, j - 1, k + 2))) +\n" +" (2 * mu(i, j, k + 2) + la(i, j, k + 2)) *\n" +" met(3, i, j, k + 2) * met(1, i, j, k + 2) *\n" +" (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j - 2, k + 2)) +\n" +" c1 * (u(2, i, j + 1, k + 2) - u(2, i, j - 1, k + 2))) *\n" +" stry(j) * istrx +\n" +" mu(i, j, k + 2) * met(4, i, j, k + 2) * met(1, i, j, k + 2) *\n" +" (c2 * (u(3, i, j + 2, k + 2) - u(3, i, j - 2, k + 2)) +\n" +" c1 * (u(3, i, j + 1, k + 2) - u(3, i, j - 1, k + 2))) *\n" +" istrx -\n" +" (mu(i, j, k - 2) * met(2, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 * (u(1, i, j + 2, k - 2) - u(1, i, j - 2, k - 2)) +\n" +" c1 * (u(1, i, j + 1, k - 2) - u(1, i, j - 1, k - 2))) +\n" +" (2 * mu(i, j, k - 2) + la(i, j, k - 2)) *\n" +" met(3, i, j, k - 2) * met(1, i, j, k - 2) *\n" +" (c2 * (u(2, i, j + 2, k - 2) - u(2, i, j - 2, k - 2)) +\n" +" c1 * (u(2, i, j + 1, k - 2) - u(2, i, j - 1, k - 2))) *\n" +" stry(j) * istrx +\n" +" mu(i, j, k - 2) * met(4, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 * (u(3, i, j + 2, k - 2) - u(3, i, j - 2, k - 2)) +\n" +" c1 * (u(3, i, j + 1, k - 2) - u(3, i, j - 1, k - 2))) *\n" +" istrx)) +\n" +" c1 *\n" +" (mu(i, j, k + 1) * met(2, i, j, k + 1) * met(1, i, j, k + 1) *\n" +" (c2 * (u(1, i, j + 2, k + 1) - u(1, i, j - 2, k + 1)) +\n" +" c1 * (u(1, i, j + 1, k + 1) - u(1, i, j - 1, k + 1))) +\n" +" (2 * mu(i, j, k + 1) + la(i, j, k + 1)) *\n" +" met(3, i, j, k + 1) * met(1, i, j, k + 1) *\n" +" (c2 * (u(2, i, j + 2, k + 1) - u(2, i, j - 2, k + 1)) +\n" +" c1 * (u(2, i, j + 1, k + 1) - u(2, i, j - 1, k + 1))) *\n" +" stry(j) * istrx +\n" +" mu(i, j, k + 1) * met(4, i, j, k + 1) * met(1, i, j, k + 1) *\n" +" (c2 * (u(3, i, j + 2, k + 1) - u(3, i, j - 2, k + 1)) +\n" +" c1 * (u(3, i, j + 1, k + 1) - u(3, i, j - 1, k + 1))) *\n" +" istrx -\n" +" (mu(i, j, k - 1) * met(2, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 * (u(1, i, j + 2, k - 1) - u(1, i, j - 2, k - 1)) +\n" +" c1 * (u(1, i, j + 1, k - 1) - u(1, i, j - 1, k - 1))) +\n" +" (2 * mu(i, j, k - 1) + la(i, j, k - 1)) *\n" +" met(3, i, j, k - 1) * met(1, i, j, k - 1) *\n" +" (c2 * (u(2, i, j + 2, k - 1) - u(2, i, j - 2, k - 1)) +\n" +" c1 * (u(2, i, j + 1, k - 1) - u(2, i, j - 1, k - 1))) *\n" +" stry(j) * istrx +\n" +" mu(i, j, k - 1) * met(4, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 * (u(3, i, j + 2, k - 1) - u(3, i, j - 2, k - 1)) +\n" +" c1 * (u(3, i, j + 1, k - 1) - u(3, i, j - 1, k - 1))) *\n" +" istrx));\n" +"\n" +" // rq derivatives\n" +" // 130 ops, tot=1537\n" +" r2 +=\n" +" c2 *\n" +" (la(i, j + 2, k) * met(2, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j + 2, k - 2)) +\n" +" c1 * (u(1, i, j + 2, k + 1) - u(1, i, j + 2, k - 1))) +\n" +" (2 * mu(i, j + 2, k) + la(i, j + 2, k)) *\n" +" met(3, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j + 2, k - 2)) +\n" +" c1 * (u(2, i, j + 2, k + 1) - u(2, i, j + 2, k - 1))) *\n" +" stry(j + 2) * istrx +\n" +" la(i, j + 2, k) * met(4, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" (c2 * (u(3, i, j + 2, k + 2) - u(3, i, j + 2, k - 2)) +\n" +" c1 * (u(3, i, j + 2, k + 1) - u(3, i, j + 2, k - 1))) *\n" +" istrx -\n" +" (la(i, j - 2, k) * met(2, i, j - 2, k) *\n" +" met(1, i, j - 2, k) *\n" +" (c2 * (u(1, i, j - 2, k + 2) - u(1, i, j - 2, k - 2)) +\n" +" c1 * (u(1, i, j - 2, k + 1) - u(1, i, j - 2, k - 1))) +\n" +" (2 * mu(i, j - 2, k) + la(i, j - 2, k)) *\n" +" met(3, i, j - 2, k) * met(1, i, j - 2, k) *\n" +" (c2 * (u(2, i, j - 2, k + 2) - u(2, i, j - 2, k - 2)) +\n" +" c1 * (u(2, i, j - 2, k + 1) - u(2, i, j - 2, k - 1))) *\n" +" stry(j - 2) * istrx +\n" +" la(i, j - 2, k) * met(4, i, j - 2, k) *\n" +" met(1, i, j - 2, k) *\n" +" (c2 * (u(3, i, j - 2, k + 2) - u(3, i, j - 2, k - 2)) +\n" +" c1 * (u(3, i, j - 2, k + 1) - u(3, i, j - 2, k - 1))) *\n" +" istrx)) +\n" +" c1 *\n" +" (la(i, j + 1, k) * met(2, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" (c2 * (u(1, i, j + 1, k + 2) - u(1, i, j + 1, k - 2)) +\n" +" c1 * (u(1, i, j + 1, k + 1) - u(1, i, j + 1, k - 1))) +\n" +" (2 * mu(i, j + 1, k) + la(i, j + 1, k)) *\n" +" met(3, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" (c2 * (u(2, i, j + 1, k + 2) - u(2, i, j + 1, k - 2)) +\n" +" c1 * (u(2, i, j + 1, k + 1) - u(2, i, j + 1, k - 1))) *\n" +" stry(j + 1) * istrx +\n" +" la(i, j + 1, k) * met(4, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" (c2 * (u(3, i, j + 1, k + 2) - u(3, i, j + 1, k - 2)) +\n" +" c1 * (u(3, i, j + 1, k + 1) - u(3, i, j + 1, k - 1))) *\n" +" istrx -\n" +" (la(i, j - 1, k) * met(2, i, j - 1, k) *\n" +" met(1, i, j - 1, k) *\n" +" (c2 * (u(1, i, j - 1, k + 2) - u(1, i, j - 1, k - 2)) +\n" +" c1 * (u(1, i, j - 1, k + 1) - u(1, i, j - 1, k - 1))) +\n" +" (2 * mu(i, j - 1, k) + la(i, j - 1, k)) *\n" +" met(3, i, j - 1, k) * met(1, i, j - 1, k) *\n" +" (c2 * (u(2, i, j - 1, k + 2) - u(2, i, j - 1, k - 2)) +\n" +" c1 * (u(2, i, j - 1, k + 1) - u(2, i, j - 1, k - 1))) *\n" +" stry(j - 1) * istrx +\n" +" la(i, j - 1, k) * met(4, i, j - 1, k) *\n" +" met(1, i, j - 1, k) *\n" +" (c2 * (u(3, i, j - 1, k + 2) - u(3, i, j - 1, k - 2)) +\n" +" c1 * (u(3, i, j - 1, k + 1) - u(3, i, j - 1, k - 1))) *\n" +" istrx));\n" +"\n" +" // 4 ops, tot=1541\n" +" lu(2, i, j, k) = a1 * lu(2, i, j, k) + sgn * r2 * ijac;\n" +" }\n" +"}\n" +"\n" +; diff --git a/benchmarks/cuda-jitify/sw4ck/kernel4.cpp b/benchmarks/cuda-jitify/sw4ck/kernel4.cpp new file mode 100644 index 0000000..909fadd --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/kernel4.cpp @@ -0,0 +1,423 @@ +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))) +#endif +void kernel4( + const int start0, const int N0, + const int start1, const int N1, + const int start2, const int N2, + const int ifirst, const int ilast, + const int jfirst, const int jlast, + const int kfirst, const int klast, + const float_sw4 a1, const float_sw4 sgn, + const float_sw4* __restrict__ a_u, + const float_sw4* __restrict__ a_mu, + const float_sw4* __restrict__ a_lambda, + const float_sw4* __restrict__ a_met, + const float_sw4* __restrict__ a_jac, + float_sw4* __restrict__ a_lu, + const float_sw4* __restrict__ a_acof, + const float_sw4* __restrict__ a_bope, + const float_sw4* __restrict__ a_ghcof, + const float_sw4* __restrict__ a_acof_no_gp, + const float_sw4* __restrict__ a_ghcof_no_gp, + const float_sw4* __restrict__ a_strx, + const float_sw4* __restrict__ a_stry ) +{ + int i = start0 + threadIdx.x + blockIdx.x * blockDim.x; + int j = start1 + threadIdx.y + blockIdx.y * blockDim.y; + int k = start2 + threadIdx.z + blockIdx.z * blockDim.z; + if ((i < N0) && (j < N1) && (k < N2)) { + float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k); + float_sw4 istry = 1 / (stry(j)); + float_sw4 istrx = 1 / (strx(i)); + float_sw4 istrxy = istry * istrx; + + float_sw4 r3 = 0.0; + + // w-equation + + // r1 = 0; + // pp derivative (w) + // 43 ops, tot=1580 + float_sw4 cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * strx(i - 2); + float_sw4 cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * strx(i - 1); + float_sw4 cof3 = + (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + float_sw4 cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * strx(i + 1); + float_sw4 cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * strx(i + 2); + + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r3 += i6 * + (mux1 * (u(3, i - 2, j, k) - u(3, i, j, k)) + + mux2 * (u(3, i - 1, j, k) - u(3, i, j, k)) + + mux3 * (u(3, i + 1, j, k) - u(3, i, j, k)) + + mux4 * (u(3, i + 2, j, k) - u(3, i, j, k))) * + istry; + + // qq derivative (w) + // 43 ops, tot=1623 + { + float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4; + cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 += i6 * + (mux1 * (u(3, i, j - 2, k) - u(3, i, j, k)) + + mux2 * (u(3, i, j - 1, k) - u(3, i, j, k)) + + mux3 * (u(3, i, j + 1, k) - u(3, i, j, k)) + + mux4 * (u(3, i, j + 2, k) - u(3, i, j, k))) * + istrx; + } + // rr derivative (u) + // 43 ops, tot=1666 + { + float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4; + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) * + met(4, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) * + met(4, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(4, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) * + met(4, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) * + met(4, i, j, k + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 += i6 * + (mux1 * (u(1, i, j, k - 2) - u(1, i, j, k)) + + mux2 * (u(1, i, j, k - 1) - u(1, i, j, k)) + + mux3 * (u(1, i, j, k + 1) - u(1, i, j, k)) + + mux4 * (u(1, i, j, k + 2) - u(1, i, j, k))) * + istry; + } + // rr derivative (v) + // 43 ops, tot=1709 + { + float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4; + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(3, i, j, k - 2) * + met(4, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(3, i, j, k - 1) * + met(4, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(3, i, j, k) * met(4, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(3, i, j, k + 1) * + met(4, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(3, i, j, k + 2) * + met(4, i, j, k + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 += i6 * + (mux1 * (u(2, i, j, k - 2) - u(2, i, j, k)) + + mux2 * (u(2, i, j, k - 1) - u(2, i, j, k)) + + mux3 * (u(2, i, j, k + 1) - u(2, i, j, k)) + + mux4 * (u(2, i, j, k + 2) - u(2, i, j, k))) * + istrx; + } + + // rr derivative (w) + // 83 ops, tot=1792 + { + float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4; + cof1 = (2 * mu(i, j, k - 2) + la(i, j, k - 2)) * + met(4, i, j, k - 2) * met(4, i, j, k - 2) + + mu(i, j, k - 2) * (met(2, i, j, k - 2) * strx(i) * + met(2, i, j, k - 2) * strx(i) + + met(3, i, j, k - 2) * stry(j) * + met(3, i, j, k - 2) * stry(j)); + cof2 = (2 * mu(i, j, k - 1) + la(i, j, k - 1)) * + met(4, i, j, k - 1) * met(4, i, j, k - 1) + + mu(i, j, k - 1) * (met(2, i, j, k - 1) * strx(i) * + met(2, i, j, k - 1) * strx(i) + + met(3, i, j, k - 1) * stry(j) * + met(3, i, j, k - 1) * stry(j)); + cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(4, i, j, k) * + met(4, i, j, k) + + mu(i, j, k) * + (met(2, i, j, k) * strx(i) * met(2, i, j, k) * strx(i) + + met(3, i, j, k) * stry(j) * met(3, i, j, k) * stry(j)); + cof4 = (2 * mu(i, j, k + 1) + la(i, j, k + 1)) * + met(4, i, j, k + 1) * met(4, i, j, k + 1) + + mu(i, j, k + 1) * (met(2, i, j, k + 1) * strx(i) * + met(2, i, j, k + 1) * strx(i) + + met(3, i, j, k + 1) * stry(j) * + met(3, i, j, k + 1) * stry(j)); + cof5 = (2 * mu(i, j, k + 2) + la(i, j, k + 2)) * + met(4, i, j, k + 2) * met(4, i, j, k + 2) + + mu(i, j, k + 2) * (met(2, i, j, k + 2) * strx(i) * + met(2, i, j, k + 2) * strx(i) + + met(3, i, j, k + 2) * stry(j) * + met(3, i, j, k + 2) * stry(j)); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 += + i6 * + (mux1 * (u(3, i, j, k - 2) - u(3, i, j, k)) + + mux2 * (u(3, i, j, k - 1) - u(3, i, j, k)) + + mux3 * (u(3, i, j, k + 1) - u(3, i, j, k)) + + mux4 * (u(3, i, j, k + 2) - u(3, i, j, k))) * + istrxy + // pr-derivatives + // 86 ops, tot=1878 + // r1 += + + + c2 * + ((la(i, j, k + 2)) * met(4, i, j, k + 2) * + met(1, i, j, k + 2) * + (c2 * (u(1, i + 2, j, k + 2) - u(1, i - 2, j, k + 2)) + + c1 * + (u(1, i + 1, j, k + 2) - u(1, i - 1, j, k + 2))) * + istry + + mu(i, j, k + 2) * met(2, i, j, k + 2) * + met(1, i, j, k + 2) * + (c2 * (u(3, i + 2, j, k + 2) - u(3, i - 2, j, k + 2)) + + c1 * + (u(3, i + 1, j, k + 2) - u(3, i - 1, j, k + 2))) * + strx(i) * istry - + ((la(i, j, k - 2)) * met(4, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * + (u(1, i + 2, j, k - 2) - u(1, i - 2, j, k - 2)) + + c1 * (u(1, i + 1, j, k - 2) - + u(1, i - 1, j, k - 2))) * + istry + + mu(i, j, k - 2) * met(2, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * + (u(3, i + 2, j, k - 2) - u(3, i - 2, j, k - 2)) + + c1 * (u(3, i + 1, j, k - 2) - + u(3, i - 1, j, k - 2))) * + strx(i) * istry)) + + c1 * + ((la(i, j, k + 1)) * met(4, i, j, k + 1) * + met(1, i, j, k + 1) * + (c2 * (u(1, i + 2, j, k + 1) - u(1, i - 2, j, k + 1)) + + c1 * + (u(1, i + 1, j, k + 1) - u(1, i - 1, j, k + 1))) * + istry + + mu(i, j, k + 1) * met(2, i, j, k + 1) * + met(1, i, j, k + 1) * + (c2 * (u(3, i + 2, j, k + 1) - u(3, i - 2, j, k + 1)) + + c1 * + (u(3, i + 1, j, k + 1) - u(3, i - 1, j, k + 1))) * + strx(i) * istry - + (la(i, j, k - 1) * met(4, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * + (u(1, i + 2, j, k - 1) - u(1, i - 2, j, k - 1)) + + c1 * (u(1, i + 1, j, k - 1) - + u(1, i - 1, j, k - 1))) * + istry + + mu(i, j, k - 1) * met(2, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * + (u(3, i + 2, j, k - 1) - u(3, i - 2, j, k - 1)) + + c1 * (u(3, i + 1, j, k - 1) - + u(3, i - 1, j, k - 1))) * + strx(i) * istry)) + // rp derivatives + // 79 ops, tot=1957 + // r1 += + + istry * (c2 * ((mu(i + 2, j, k)) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j, k + 2) - + u(1, i + 2, j, k - 2)) + + c1 * (u(1, i + 2, j, k + 1) - + u(1, i + 2, j, k - 1))) + + mu(i + 2, j, k) * met(2, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(3, i + 2, j, k + 2) - + u(3, i + 2, j, k - 2)) + + c1 * (u(3, i + 2, j, k + 1) - + u(3, i + 2, j, k - 1))) * + strx(i + 2) - + (mu(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j, k + 2) - + u(1, i - 2, j, k - 2)) + + c1 * (u(1, i - 2, j, k + 1) - + u(1, i - 2, j, k - 1))) + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(3, i - 2, j, k + 2) - + u(3, i - 2, j, k - 2)) + + c1 * (u(3, i - 2, j, k + 1) - + u(3, i - 2, j, k - 1))) * + strx(i - 2))) + + c1 * ((mu(i + 1, j, k)) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j, k + 2) - + u(1, i + 1, j, k - 2)) + + c1 * (u(1, i + 1, j, k + 1) - + u(1, i + 1, j, k - 1))) + + mu(i + 1, j, k) * met(2, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(3, i + 1, j, k + 2) - + u(3, i + 1, j, k - 2)) + + c1 * (u(3, i + 1, j, k + 1) - + u(3, i + 1, j, k - 1))) * + strx(i + 1) - + (mu(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j, k + 2) - + u(1, i - 1, j, k - 2)) + + c1 * (u(1, i - 1, j, k + 1) - + u(1, i - 1, j, k - 1))) + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(3, i - 1, j, k + 2) - + u(3, i - 1, j, k - 2)) + + c1 * (u(3, i - 1, j, k + 1) - + u(3, i - 1, j, k - 1))) * + strx(i - 1)))) + // qr derivatives + // 86 ops, tot=2043 + // r1 += + + + c2 * + (mu(i, j, k + 2) * met(3, i, j, k + 2) * + met(1, i, j, k + 2) * + (c2 * (u(3, i, j + 2, k + 2) - u(3, i, j - 2, k + 2)) + + c1 * + (u(3, i, j + 1, k + 2) - u(3, i, j - 1, k + 2))) * + stry(j) * istrx + + la(i, j, k + 2) * met(4, i, j, k + 2) * + met(1, i, j, k + 2) * + (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j - 2, k + 2)) + + c1 * + (u(2, i, j + 1, k + 2) - u(2, i, j - 1, k + 2))) * + istrx - + (mu(i, j, k - 2) * met(3, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * + (u(3, i, j + 2, k - 2) - u(3, i, j - 2, k - 2)) + + c1 * (u(3, i, j + 1, k - 2) - + u(3, i, j - 1, k - 2))) * + stry(j) * istrx + + la(i, j, k - 2) * met(4, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * + (u(2, i, j + 2, k - 2) - u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j + 1, k - 2) - + u(2, i, j - 1, k - 2))) * + istrx)) + + c1 * + (mu(i, j, k + 1) * met(3, i, j, k + 1) * + met(1, i, j, k + 1) * + (c2 * (u(3, i, j + 2, k + 1) - u(3, i, j - 2, k + 1)) + + c1 * + (u(3, i, j + 1, k + 1) - u(3, i, j - 1, k + 1))) * + stry(j) * istrx + + la(i, j, k + 1) * met(4, i, j, k + 1) * + met(1, i, j, k + 1) * + (c2 * (u(2, i, j + 2, k + 1) - u(2, i, j - 2, k + 1)) + + c1 * + (u(2, i, j + 1, k + 1) - u(2, i, j - 1, k + 1))) * + istrx - + (mu(i, j, k - 1) * met(3, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * + (u(3, i, j + 2, k - 1) - u(3, i, j - 2, k - 1)) + + c1 * (u(3, i, j + 1, k - 1) - + u(3, i, j - 1, k - 1))) * + stry(j) * istrx + + la(i, j, k - 1) * met(4, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * + (u(2, i, j + 2, k - 1) - u(2, i, j - 2, k - 1)) + + c1 * (u(2, i, j + 1, k - 1) - + u(2, i, j - 1, k - 1))) * + istrx)) + // rq derivatives + // 79 ops, tot=2122 + // r1 += + + istrx * (c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) * + met(1, i, j + 2, k) * + (c2 * (u(3, i, j + 2, k + 2) - + u(3, i, j + 2, k - 2)) + + c1 * (u(3, i, j + 2, k + 1) - + u(3, i, j + 2, k - 1))) * + stry(j + 2) + + mu(i, j + 2, k) * met(4, i, j + 2, k) * + met(1, i, j + 2, k) * + (c2 * (u(2, i, j + 2, k + 2) - + u(2, i, j + 2, k - 2)) + + c1 * (u(2, i, j + 2, k + 1) - + u(2, i, j + 2, k - 1))) - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(3, i, j - 2, k + 2) - + u(3, i, j - 2, k - 2)) + + c1 * (u(3, i, j - 2, k + 1) - + u(3, i, j - 2, k - 1))) * + stry(j - 2) + + mu(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(2, i, j - 2, k + 2) - + u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j - 2, k + 1) - + u(2, i, j - 2, k - 1))))) + + c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) * + met(1, i, j + 1, k) * + (c2 * (u(3, i, j + 1, k + 2) - + u(3, i, j + 1, k - 2)) + + c1 * (u(3, i, j + 1, k + 1) - + u(3, i, j + 1, k - 1))) * + stry(j + 1) + + mu(i, j + 1, k) * met(4, i, j + 1, k) * + met(1, i, j + 1, k) * + (c2 * (u(2, i, j + 1, k + 2) - + u(2, i, j + 1, k - 2)) + + c1 * (u(2, i, j + 1, k + 1) - + u(2, i, j + 1, k - 1))) - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(3, i, j - 1, k + 2) - + u(3, i, j - 1, k - 2)) + + c1 * (u(3, i, j - 1, k + 1) - + u(3, i, j - 1, k - 1))) * + stry(j - 1) + + mu(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(2, i, j - 1, k + 2) - + u(2, i, j - 1, k - 2)) + + c1 * (u(2, i, j - 1, k + 1) - + u(2, i, j - 1, k - 1)))))); + } + + // 4 ops, tot=2126 + lu(3, i, j, k) = a1 * lu(3, i, j, k) + sgn * r3 * ijac; + } +} + diff --git a/benchmarks/cuda-jitify/sw4ck/kernel4.cuh b/benchmarks/cuda-jitify/sw4ck/kernel4.cuh new file mode 100644 index 0000000..ef932e5 --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/kernel4.cuh @@ -0,0 +1,424 @@ +const char* const kernel4_cpp = +"template<\n" +" const int start0, const int N0, \n" +" const int start1, const int N1,\n" +" const int start2, const int N2,\n" +" const int ifirst, const int ilast,\n" +" const int jfirst, const int jlast,\n" +" const int kfirst, const int klast,\n" +" const float_sw4 a1, const float_sw4 sgn\n" +">\n" +"__global__ \n" +"void kernel4(\n" +" const float_sw4* __restrict__ a_u, \n" +" const float_sw4* __restrict__ a_mu,\n" +" const float_sw4* __restrict__ a_lambda,\n" +" const float_sw4* __restrict__ a_met,\n" +" const float_sw4* __restrict__ a_jac,\n" +" float_sw4* __restrict__ a_lu, \n" +" const float_sw4* __restrict__ a_acof, \n" +" const float_sw4* __restrict__ a_bope,\n" +" const float_sw4* __restrict__ a_ghcof, \n" +" const float_sw4* __restrict__ a_acof_no_gp,\n" +" const float_sw4* __restrict__ a_ghcof_no_gp, \n" +" const float_sw4* __restrict__ a_strx,\n" +" const float_sw4* __restrict__ a_stry ) \n" +"{\n" +" int i = start0 + threadIdx.x + blockIdx.x * blockDim.x;\n" +" int j = start1 + threadIdx.y + blockIdx.y * blockDim.y;\n" +" int k = start2 + threadIdx.z + blockIdx.z * blockDim.z;\n" +" if ((i < N0) && (j < N1) && (k < N2)) {\n" +" float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k);\n" +" float_sw4 istry = 1 / (stry(j));\n" +" float_sw4 istrx = 1 / (strx(i));\n" +" float_sw4 istrxy = istry * istrx;\n" +"\n" +" float_sw4 r3 = 0.0;\n" +"\n" +" // w-equation\n" +"\n" +" // r1 = 0;\n" +" // pp derivative (w)\n" +" // 43 ops, tot=1580\n" +" float_sw4 cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * strx(i - 2);\n" +" float_sw4 cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * strx(i - 1);\n" +" float_sw4 cof3 =\n" +" (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i);\n" +" float_sw4 cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * strx(i + 1);\n" +" float_sw4 cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * strx(i + 2);\n" +"\n" +" float_sw4 mux1 = cof2 - tf * (cof3 + cof1);\n" +" float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" float_sw4 mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r3 += i6 *\n" +" (mux1 * (u(3, i - 2, j, k) - u(3, i, j, k)) +\n" +" mux2 * (u(3, i - 1, j, k) - u(3, i, j, k)) +\n" +" mux3 * (u(3, i + 1, j, k) - u(3, i, j, k)) +\n" +" mux4 * (u(3, i + 2, j, k) - u(3, i, j, k))) *\n" +" istry;\n" +"\n" +" // qq derivative (w)\n" +" // 43 ops, tot=1623\n" +" {\n" +" float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4;\n" +" cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * stry(j - 2);\n" +" cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * stry(j - 1);\n" +" cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j);\n" +" cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * stry(j + 1);\n" +" cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * stry(j + 2);\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r3 += i6 *\n" +" (mux1 * (u(3, i, j - 2, k) - u(3, i, j, k)) +\n" +" mux2 * (u(3, i, j - 1, k) - u(3, i, j, k)) +\n" +" mux3 * (u(3, i, j + 1, k) - u(3, i, j, k)) +\n" +" mux4 * (u(3, i, j + 2, k) - u(3, i, j, k))) *\n" +" istrx;\n" +" }\n" +" // rr derivative (u)\n" +" // 43 ops, tot=1666\n" +" {\n" +" float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4;\n" +" cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) *\n" +" met(4, i, j, k - 2);\n" +" cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) *\n" +" met(4, i, j, k - 1);\n" +" cof3 =\n" +" (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(4, i, j, k);\n" +" cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) *\n" +" met(4, i, j, k + 1);\n" +" cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) *\n" +" met(4, i, j, k + 2);\n" +"\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r3 += i6 *\n" +" (mux1 * (u(1, i, j, k - 2) - u(1, i, j, k)) +\n" +" mux2 * (u(1, i, j, k - 1) - u(1, i, j, k)) +\n" +" mux3 * (u(1, i, j, k + 1) - u(1, i, j, k)) +\n" +" mux4 * (u(1, i, j, k + 2) - u(1, i, j, k))) *\n" +" istry;\n" +" }\n" +" // rr derivative (v)\n" +" // 43 ops, tot=1709\n" +" {\n" +" float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4;\n" +" cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(3, i, j, k - 2) *\n" +" met(4, i, j, k - 2);\n" +" cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(3, i, j, k - 1) *\n" +" met(4, i, j, k - 1);\n" +" cof3 =\n" +" (mu(i, j, k) + la(i, j, k)) * met(3, i, j, k) * met(4, i, j, k);\n" +" cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(3, i, j, k + 1) *\n" +" met(4, i, j, k + 1);\n" +" cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(3, i, j, k + 2) *\n" +" met(4, i, j, k + 2);\n" +"\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r3 += i6 *\n" +" (mux1 * (u(2, i, j, k - 2) - u(2, i, j, k)) +\n" +" mux2 * (u(2, i, j, k - 1) - u(2, i, j, k)) +\n" +" mux3 * (u(2, i, j, k + 1) - u(2, i, j, k)) +\n" +" mux4 * (u(2, i, j, k + 2) - u(2, i, j, k))) *\n" +" istrx;\n" +" }\n" +"\n" +" // rr derivative (w)\n" +" // 83 ops, tot=1792\n" +" {\n" +" float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4;\n" +" cof1 = (2 * mu(i, j, k - 2) + la(i, j, k - 2)) *\n" +" met(4, i, j, k - 2) * met(4, i, j, k - 2) +\n" +" mu(i, j, k - 2) * (met(2, i, j, k - 2) * strx(i) *\n" +" met(2, i, j, k - 2) * strx(i) +\n" +" met(3, i, j, k - 2) * stry(j) *\n" +" met(3, i, j, k - 2) * stry(j));\n" +" cof2 = (2 * mu(i, j, k - 1) + la(i, j, k - 1)) *\n" +" met(4, i, j, k - 1) * met(4, i, j, k - 1) +\n" +" mu(i, j, k - 1) * (met(2, i, j, k - 1) * strx(i) *\n" +" met(2, i, j, k - 1) * strx(i) +\n" +" met(3, i, j, k - 1) * stry(j) *\n" +" met(3, i, j, k - 1) * stry(j));\n" +" cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(4, i, j, k) *\n" +" met(4, i, j, k) +\n" +" mu(i, j, k) *\n" +" (met(2, i, j, k) * strx(i) * met(2, i, j, k) * strx(i) +\n" +" met(3, i, j, k) * stry(j) * met(3, i, j, k) * stry(j));\n" +" cof4 = (2 * mu(i, j, k + 1) + la(i, j, k + 1)) *\n" +" met(4, i, j, k + 1) * met(4, i, j, k + 1) +\n" +" mu(i, j, k + 1) * (met(2, i, j, k + 1) * strx(i) *\n" +" met(2, i, j, k + 1) * strx(i) +\n" +" met(3, i, j, k + 1) * stry(j) *\n" +" met(3, i, j, k + 1) * stry(j));\n" +" cof5 = (2 * mu(i, j, k + 2) + la(i, j, k + 2)) *\n" +" met(4, i, j, k + 2) * met(4, i, j, k + 2) +\n" +" mu(i, j, k + 2) * (met(2, i, j, k + 2) * strx(i) *\n" +" met(2, i, j, k + 2) * strx(i) +\n" +" met(3, i, j, k + 2) * stry(j) *\n" +" met(3, i, j, k + 2) * stry(j));\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r3 +=\n" +" i6 *\n" +" (mux1 * (u(3, i, j, k - 2) - u(3, i, j, k)) +\n" +" mux2 * (u(3, i, j, k - 1) - u(3, i, j, k)) +\n" +" mux3 * (u(3, i, j, k + 1) - u(3, i, j, k)) +\n" +" mux4 * (u(3, i, j, k + 2) - u(3, i, j, k))) *\n" +" istrxy\n" +" // pr-derivatives\n" +" // 86 ops, tot=1878\n" +" // r1 +=\n" +" +\n" +" c2 *\n" +" ((la(i, j, k + 2)) * met(4, i, j, k + 2) *\n" +" met(1, i, j, k + 2) *\n" +" (c2 * (u(1, i + 2, j, k + 2) - u(1, i - 2, j, k + 2)) +\n" +" c1 *\n" +" (u(1, i + 1, j, k + 2) - u(1, i - 1, j, k + 2))) *\n" +" istry +\n" +" mu(i, j, k + 2) * met(2, i, j, k + 2) *\n" +" met(1, i, j, k + 2) *\n" +" (c2 * (u(3, i + 2, j, k + 2) - u(3, i - 2, j, k + 2)) +\n" +" c1 *\n" +" (u(3, i + 1, j, k + 2) - u(3, i - 1, j, k + 2))) *\n" +" strx(i) * istry -\n" +" ((la(i, j, k - 2)) * met(4, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 *\n" +" (u(1, i + 2, j, k - 2) - u(1, i - 2, j, k - 2)) +\n" +" c1 * (u(1, i + 1, j, k - 2) -\n" +" u(1, i - 1, j, k - 2))) *\n" +" istry +\n" +" mu(i, j, k - 2) * met(2, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 *\n" +" (u(3, i + 2, j, k - 2) - u(3, i - 2, j, k - 2)) +\n" +" c1 * (u(3, i + 1, j, k - 2) -\n" +" u(3, i - 1, j, k - 2))) *\n" +" strx(i) * istry)) +\n" +" c1 *\n" +" ((la(i, j, k + 1)) * met(4, i, j, k + 1) *\n" +" met(1, i, j, k + 1) *\n" +" (c2 * (u(1, i + 2, j, k + 1) - u(1, i - 2, j, k + 1)) +\n" +" c1 *\n" +" (u(1, i + 1, j, k + 1) - u(1, i - 1, j, k + 1))) *\n" +" istry +\n" +" mu(i, j, k + 1) * met(2, i, j, k + 1) *\n" +" met(1, i, j, k + 1) *\n" +" (c2 * (u(3, i + 2, j, k + 1) - u(3, i - 2, j, k + 1)) +\n" +" c1 *\n" +" (u(3, i + 1, j, k + 1) - u(3, i - 1, j, k + 1))) *\n" +" strx(i) * istry -\n" +" (la(i, j, k - 1) * met(4, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 *\n" +" (u(1, i + 2, j, k - 1) - u(1, i - 2, j, k - 1)) +\n" +" c1 * (u(1, i + 1, j, k - 1) -\n" +" u(1, i - 1, j, k - 1))) *\n" +" istry +\n" +" mu(i, j, k - 1) * met(2, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 *\n" +" (u(3, i + 2, j, k - 1) - u(3, i - 2, j, k - 1)) +\n" +" c1 * (u(3, i + 1, j, k - 1) -\n" +" u(3, i - 1, j, k - 1))) *\n" +" strx(i) * istry))\n" +" // rp derivatives\n" +" // 79 ops, tot=1957\n" +" // r1 +=\n" +" + istry * (c2 * ((mu(i + 2, j, k)) * met(4, i + 2, j, k) *\n" +" met(1, i + 2, j, k) *\n" +" (c2 * (u(1, i + 2, j, k + 2) -\n" +" u(1, i + 2, j, k - 2)) +\n" +" c1 * (u(1, i + 2, j, k + 1) -\n" +" u(1, i + 2, j, k - 1))) +\n" +" mu(i + 2, j, k) * met(2, i + 2, j, k) *\n" +" met(1, i + 2, j, k) *\n" +" (c2 * (u(3, i + 2, j, k + 2) -\n" +" u(3, i + 2, j, k - 2)) +\n" +" c1 * (u(3, i + 2, j, k + 1) -\n" +" u(3, i + 2, j, k - 1))) *\n" +" strx(i + 2) -\n" +" (mu(i - 2, j, k) * met(4, i - 2, j, k) *\n" +" met(1, i - 2, j, k) *\n" +" (c2 * (u(1, i - 2, j, k + 2) -\n" +" u(1, i - 2, j, k - 2)) +\n" +" c1 * (u(1, i - 2, j, k + 1) -\n" +" u(1, i - 2, j, k - 1))) +\n" +" mu(i - 2, j, k) * met(2, i - 2, j, k) *\n" +" met(1, i - 2, j, k) *\n" +" (c2 * (u(3, i - 2, j, k + 2) -\n" +" u(3, i - 2, j, k - 2)) +\n" +" c1 * (u(3, i - 2, j, k + 1) -\n" +" u(3, i - 2, j, k - 1))) *\n" +" strx(i - 2))) +\n" +" c1 * ((mu(i + 1, j, k)) * met(4, i + 1, j, k) *\n" +" met(1, i + 1, j, k) *\n" +" (c2 * (u(1, i + 1, j, k + 2) -\n" +" u(1, i + 1, j, k - 2)) +\n" +" c1 * (u(1, i + 1, j, k + 1) -\n" +" u(1, i + 1, j, k - 1))) +\n" +" mu(i + 1, j, k) * met(2, i + 1, j, k) *\n" +" met(1, i + 1, j, k) *\n" +" (c2 * (u(3, i + 1, j, k + 2) -\n" +" u(3, i + 1, j, k - 2)) +\n" +" c1 * (u(3, i + 1, j, k + 1) -\n" +" u(3, i + 1, j, k - 1))) *\n" +" strx(i + 1) -\n" +" (mu(i - 1, j, k) * met(4, i - 1, j, k) *\n" +" met(1, i - 1, j, k) *\n" +" (c2 * (u(1, i - 1, j, k + 2) -\n" +" u(1, i - 1, j, k - 2)) +\n" +" c1 * (u(1, i - 1, j, k + 1) -\n" +" u(1, i - 1, j, k - 1))) +\n" +" mu(i - 1, j, k) * met(2, i - 1, j, k) *\n" +" met(1, i - 1, j, k) *\n" +" (c2 * (u(3, i - 1, j, k + 2) -\n" +" u(3, i - 1, j, k - 2)) +\n" +" c1 * (u(3, i - 1, j, k + 1) -\n" +" u(3, i - 1, j, k - 1))) *\n" +" strx(i - 1))))\n" +" // qr derivatives\n" +" // 86 ops, tot=2043\n" +" // r1 +=\n" +" +\n" +" c2 *\n" +" (mu(i, j, k + 2) * met(3, i, j, k + 2) *\n" +" met(1, i, j, k + 2) *\n" +" (c2 * (u(3, i, j + 2, k + 2) - u(3, i, j - 2, k + 2)) +\n" +" c1 *\n" +" (u(3, i, j + 1, k + 2) - u(3, i, j - 1, k + 2))) *\n" +" stry(j) * istrx +\n" +" la(i, j, k + 2) * met(4, i, j, k + 2) *\n" +" met(1, i, j, k + 2) *\n" +" (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j - 2, k + 2)) +\n" +" c1 *\n" +" (u(2, i, j + 1, k + 2) - u(2, i, j - 1, k + 2))) *\n" +" istrx -\n" +" (mu(i, j, k - 2) * met(3, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 *\n" +" (u(3, i, j + 2, k - 2) - u(3, i, j - 2, k - 2)) +\n" +" c1 * (u(3, i, j + 1, k - 2) -\n" +" u(3, i, j - 1, k - 2))) *\n" +" stry(j) * istrx +\n" +" la(i, j, k - 2) * met(4, i, j, k - 2) *\n" +" met(1, i, j, k - 2) *\n" +" (c2 *\n" +" (u(2, i, j + 2, k - 2) - u(2, i, j - 2, k - 2)) +\n" +" c1 * (u(2, i, j + 1, k - 2) -\n" +" u(2, i, j - 1, k - 2))) *\n" +" istrx)) +\n" +" c1 *\n" +" (mu(i, j, k + 1) * met(3, i, j, k + 1) *\n" +" met(1, i, j, k + 1) *\n" +" (c2 * (u(3, i, j + 2, k + 1) - u(3, i, j - 2, k + 1)) +\n" +" c1 *\n" +" (u(3, i, j + 1, k + 1) - u(3, i, j - 1, k + 1))) *\n" +" stry(j) * istrx +\n" +" la(i, j, k + 1) * met(4, i, j, k + 1) *\n" +" met(1, i, j, k + 1) *\n" +" (c2 * (u(2, i, j + 2, k + 1) - u(2, i, j - 2, k + 1)) +\n" +" c1 *\n" +" (u(2, i, j + 1, k + 1) - u(2, i, j - 1, k + 1))) *\n" +" istrx -\n" +" (mu(i, j, k - 1) * met(3, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 *\n" +" (u(3, i, j + 2, k - 1) - u(3, i, j - 2, k - 1)) +\n" +" c1 * (u(3, i, j + 1, k - 1) -\n" +" u(3, i, j - 1, k - 1))) *\n" +" stry(j) * istrx +\n" +" la(i, j, k - 1) * met(4, i, j, k - 1) *\n" +" met(1, i, j, k - 1) *\n" +" (c2 *\n" +" (u(2, i, j + 2, k - 1) - u(2, i, j - 2, k - 1)) +\n" +" c1 * (u(2, i, j + 1, k - 1) -\n" +" u(2, i, j - 1, k - 1))) *\n" +" istrx))\n" +" // rq derivatives\n" +" // 79 ops, tot=2122\n" +" // r1 +=\n" +" + istrx * (c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) *\n" +" met(1, i, j + 2, k) *\n" +" (c2 * (u(3, i, j + 2, k + 2) -\n" +" u(3, i, j + 2, k - 2)) +\n" +" c1 * (u(3, i, j + 2, k + 1) -\n" +" u(3, i, j + 2, k - 1))) *\n" +" stry(j + 2) +\n" +" mu(i, j + 2, k) * met(4, i, j + 2, k) *\n" +" met(1, i, j + 2, k) *\n" +" (c2 * (u(2, i, j + 2, k + 2) -\n" +" u(2, i, j + 2, k - 2)) +\n" +" c1 * (u(2, i, j + 2, k + 1) -\n" +" u(2, i, j + 2, k - 1))) -\n" +" (mu(i, j - 2, k) * met(3, i, j - 2, k) *\n" +" met(1, i, j - 2, k) *\n" +" (c2 * (u(3, i, j - 2, k + 2) -\n" +" u(3, i, j - 2, k - 2)) +\n" +" c1 * (u(3, i, j - 2, k + 1) -\n" +" u(3, i, j - 2, k - 1))) *\n" +" stry(j - 2) +\n" +" mu(i, j - 2, k) * met(4, i, j - 2, k) *\n" +" met(1, i, j - 2, k) *\n" +" (c2 * (u(2, i, j - 2, k + 2) -\n" +" u(2, i, j - 2, k - 2)) +\n" +" c1 * (u(2, i, j - 2, k + 1) -\n" +" u(2, i, j - 2, k - 1))))) +\n" +" c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) *\n" +" met(1, i, j + 1, k) *\n" +" (c2 * (u(3, i, j + 1, k + 2) -\n" +" u(3, i, j + 1, k - 2)) +\n" +" c1 * (u(3, i, j + 1, k + 1) -\n" +" u(3, i, j + 1, k - 1))) *\n" +" stry(j + 1) +\n" +" mu(i, j + 1, k) * met(4, i, j + 1, k) *\n" +" met(1, i, j + 1, k) *\n" +" (c2 * (u(2, i, j + 1, k + 2) -\n" +" u(2, i, j + 1, k - 2)) +\n" +" c1 * (u(2, i, j + 1, k + 1) -\n" +" u(2, i, j + 1, k - 1))) -\n" +" (mu(i, j - 1, k) * met(3, i, j - 1, k) *\n" +" met(1, i, j - 1, k) *\n" +" (c2 * (u(3, i, j - 1, k + 2) -\n" +" u(3, i, j - 1, k - 2)) +\n" +" c1 * (u(3, i, j - 1, k + 1) -\n" +" u(3, i, j - 1, k - 1))) *\n" +" stry(j - 1) +\n" +" mu(i, j - 1, k) * met(4, i, j - 1, k) *\n" +" met(1, i, j - 1, k) *\n" +" (c2 * (u(2, i, j - 1, k + 2) -\n" +" u(2, i, j - 1, k - 2)) +\n" +" c1 * (u(2, i, j - 1, k + 1) -\n" +" u(2, i, j - 1, k - 1))))));\n" +" }\n" +"\n" +" // 4 ops, tot=2126\n" +" lu(3, i, j, k) = a1 * lu(3, i, j, k) + sgn * r3 * ijac;\n" +" }\n" +"}\n" +"\n" +; diff --git a/benchmarks/cuda-jitify/sw4ck/kernel5.cpp b/benchmarks/cuda-jitify/sw4ck/kernel5.cpp new file mode 100644 index 0000000..aa0ccad --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/kernel5.cpp @@ -0,0 +1,631 @@ +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15))) +#endif +void kernel5( + const int start0, const int N0, + const int start1, const int N1, + const int start2, const int N2, + const int ifirst, const int ilast, + const int jfirst, const int jlast, + const int kfirst, const int klast, + const int nk, + const float_sw4 a1, const float_sw4 sgn, + const float_sw4* __restrict__ a_u, + const float_sw4* __restrict__ a_mu, + const float_sw4* __restrict__ a_lambda, + const float_sw4* __restrict__ a_met, + const float_sw4* __restrict__ a_jac, + float_sw4* __restrict__ a_lu, + const float_sw4* __restrict__ a_acof, + const float_sw4* __restrict__ a_bope, + const float_sw4* __restrict__ a_ghcof, + const float_sw4* __restrict__ a_acof_no_gp, + const float_sw4* __restrict__ a_ghcof_no_gp, + const float_sw4* __restrict__ a_strx, + const float_sw4* __restrict__ a_stry ) +{ + + int i = start0 + threadIdx.x + blockIdx.x * blockDim.x; + int j = start1 + threadIdx.y + blockIdx.y * blockDim.y; + int k = start2 + threadIdx.z + blockIdx.z * blockDim.z; + if ((i < N0) && (j < N1) && (k < N2)) { + // 5 ops + float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k); + float_sw4 istry = 1 / (stry(j)); + float_sw4 istrx = 1 / (strx(i)); + float_sw4 istrxy = istry * istrx; + + float_sw4 r1 = 0, r2 = 0, r3 = 0; + + // pp derivative (u) (u-eq) + // 53 ops, tot=58 + float_sw4 cof1 = (2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(1, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2); + float_sw4 cof2 = (2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(1, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1); + float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * strx(i); + float_sw4 cof4 = (2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(1, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1); + float_sw4 cof5 = (2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(1, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2); + + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r1 = r1 + i6 * + (mux1 * (u(1, i - 2, j, k) - u(1, i, j, k)) + + mux2 * (u(1, i - 1, j, k) - u(1, i, j, k)) + + mux3 * (u(1, i + 1, j, k) - u(1, i, j, k)) + + mux4 * (u(1, i + 2, j, k) - u(1, i, j, k))) * + istry; + + // qq derivative (u) (u-eq) + // 43 ops, tot=101 + cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + stry(j - 2); + cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + stry(j - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + stry(j + 1); + cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + stry(j + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r1 = r1 + i6 * + (mux1 * (u(1, i, j - 2, k) - u(1, i, j, k)) + + mux2 * (u(1, i, j - 1, k) - u(1, i, j, k)) + + mux3 * (u(1, i, j + 1, k) - u(1, i, j, k)) + + mux4 * (u(1, i, j + 2, k) - u(1, i, j, k))) * + istrx; + + // pp derivative (v) (v-eq) + // 43 ops, tot=144 + cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2); + cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1); + cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 = r2 + i6 * + (mux1 * (u(2, i - 2, j, k) - u(2, i, j, k)) + + mux2 * (u(2, i - 1, j, k) - u(2, i, j, k)) + + mux3 * (u(2, i + 1, j, k) - u(2, i, j, k)) + + mux4 * (u(2, i + 2, j, k) - u(2, i, j, k))) * + istry; + + // qq derivative (v) (v-eq) + // 53 ops, tot=197 + cof1 = (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + cof2 = (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * stry(j); + cof4 = (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + cof5 = (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 = r2 + i6 * + (mux1 * (u(2, i, j - 2, k) - u(2, i, j, k)) + + mux2 * (u(2, i, j - 1, k) - u(2, i, j, k)) + + mux3 * (u(2, i, j + 1, k) - u(2, i, j, k)) + + mux4 * (u(2, i, j + 2, k) - u(2, i, j, k))) * + istrx; + + // pp derivative (w) (w-eq) + // 43 ops, tot=240 + cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2); + cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1); + cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 = r3 + i6 * + (mux1 * (u(3, i - 2, j, k) - u(3, i, j, k)) + + mux2 * (u(3, i - 1, j, k) - u(3, i, j, k)) + + mux3 * (u(3, i + 1, j, k) - u(3, i, j, k)) + + mux4 * (u(3, i + 2, j, k) - u(3, i, j, k))) * + istry; + + // qq derivative (w) (w-eq) + // 43 ops, tot=283 + cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + stry(j - 2); + cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + stry(j - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + stry(j + 1); + cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 = r3 + i6 * + (mux1 * (u(3, i, j - 2, k) - u(3, i, j, k)) + + mux2 * (u(3, i, j - 1, k) - u(3, i, j, k)) + + mux3 * (u(3, i, j + 1, k) - u(3, i, j, k)) + + mux4 * (u(3, i, j + 2, k) - u(3, i, j, k))) * + istrx; + + // All rr-derivatives at once + // averaging the coefficient + // 54*8*8+25*8 = 3656 ops, tot=3939 + float_sw4 mucofu2, mucofuv, mucofuw, mucofvw, mucofv2, mucofw2; + //#pragma unroll 8 + for (int q = nk - 7; q <= nk; q++) { + mucofu2 = 0; + mucofuv = 0; + mucofuw = 0; + mucofvw = 0; + mucofv2 = 0; + mucofw2 = 0; + //#pragma unroll 8 + for (int m = nk - 7; m <= nk; m++) { + mucofu2 += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) * + strx(i) * met(2, i, j, m) * strx(i) + + mu(i, j, m) * (met(3, i, j, m) * stry(j) * + met(3, i, j, m) * stry(j) + + met(4, i, j, m) * met(4, i, j, m))); + mucofv2 += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(3, i, j, m) * + stry(j) * met(3, i, j, m) * stry(j) + + mu(i, j, m) * (met(2, i, j, m) * strx(i) * + met(2, i, j, m) * strx(i) + + met(4, i, j, m) * met(4, i, j, m))); + mucofw2 += + acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(4, i, j, m) * + met(4, i, j, m) + + mu(i, j, m) * + (met(2, i, j, m) * strx(i) * met(2, i, j, m) * strx(i) + + met(3, i, j, m) * stry(j) * met(3, i, j, m) * stry(j))); + mucofuv += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + (mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) * + met(3, i, j, m); + mucofuw += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + (mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) * + met(4, i, j, m); + mucofvw += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + (mu(i, j, m) + la(i, j, m)) * met(3, i, j, m) * + met(4, i, j, m); + } + + // Computing the second derivative, + r1 += istrxy * mucofu2 * u(1, i, j, q) + mucofuv * u(2, i, j, q) + + istry * mucofuw * u(3, i, j, q); + r2 += mucofuv * u(1, i, j, q) + istrxy * mucofv2 * u(2, i, j, q) + + istrx * mucofvw * u(3, i, j, q); + r3 += istry * mucofuw * u(1, i, j, q) + + istrx * mucofvw * u(2, i, j, q) + + istrxy * mucofw2 * u(3, i, j, q); + } + + // Ghost point values, only nonzero for k=nk. + // 72 ops., tot=4011 + mucofu2 = ghcof_no_gp(nk - k + 1) * + ((2 * mu(i, j, nk) + la(i, j, nk)) * met(2, i, j, nk) * + strx(i) * met(2, i, j, nk) * strx(i) + + mu(i, j, nk) * (met(3, i, j, nk) * stry(j) * + met(3, i, j, nk) * stry(j) + + met(4, i, j, nk) * met(4, i, j, nk))); + mucofv2 = ghcof_no_gp(nk - k + 1) * + ((2 * mu(i, j, nk) + la(i, j, nk)) * met(3, i, j, nk) * + stry(j) * met(3, i, j, nk) * stry(j) + + mu(i, j, nk) * (met(2, i, j, nk) * strx(i) * + met(2, i, j, nk) * strx(i) + + met(4, i, j, nk) * met(4, i, j, nk))); + mucofw2 = + ghcof_no_gp(nk - k + 1) * + ((2 * mu(i, j, nk) + la(i, j, nk)) * met(4, i, j, nk) * + met(4, i, j, nk) + + mu(i, j, nk) * + (met(2, i, j, nk) * strx(i) * met(2, i, j, nk) * strx(i) + + met(3, i, j, nk) * stry(j) * met(3, i, j, nk) * stry(j))); + mucofuv = ghcof_no_gp(nk - k + 1) * (mu(i, j, nk) + la(i, j, nk)) * + met(2, i, j, nk) * met(3, i, j, nk); + mucofuw = ghcof_no_gp(nk - k + 1) * (mu(i, j, nk) + la(i, j, nk)) * + met(2, i, j, nk) * met(4, i, j, nk); + mucofvw = ghcof_no_gp(nk - k + 1) * (mu(i, j, nk) + la(i, j, nk)) * + met(3, i, j, nk) * met(4, i, j, nk); + r1 += istrxy * mucofu2 * u(1, i, j, nk + 1) + + mucofuv * u(2, i, j, nk + 1) + + istry * mucofuw * u(3, i, j, nk + 1); + r2 += mucofuv * u(1, i, j, nk + 1) + + istrxy * mucofv2 * u(2, i, j, nk + 1) + + istrx * mucofvw * u(3, i, j, nk + 1); + r3 += istry * mucofuw * u(1, i, j, nk + 1) + + istrx * mucofvw * u(2, i, j, nk + 1) + + istrxy * mucofw2 * u(3, i, j, nk + 1); + + // pq-derivatives (u-eq) + // 38 ops., tot=4049 + r1 += + c2 * + (mu(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i - 2, j + 2, k)) + + c1 * (u(2, i + 1, j + 2, k) - u(2, i - 1, j + 2, k))) - + mu(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + (c2 * (u(2, i + 2, j - 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i + 1, j - 2, k) - u(2, i - 1, j - 2, k)))) + + c1 * + (mu(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(2, i + 2, j + 1, k) - u(2, i - 2, j + 1, k)) + + c1 * (u(2, i + 1, j + 1, k) - u(2, i - 1, j + 1, k))) - + mu(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + (c2 * (u(2, i + 2, j - 1, k) - u(2, i - 2, j - 1, k)) + + c1 * (u(2, i + 1, j - 1, k) - u(2, i - 1, j - 1, k)))); + + // qp-derivatives (u-eq) + // 38 ops. tot=4087 + r1 += + c2 * + (la(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i + 2, j - 2, k)) + + c1 * (u(2, i + 2, j + 1, k) - u(2, i + 2, j - 1, k))) - + la(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + (c2 * (u(2, i - 2, j + 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i - 2, j + 1, k) - u(2, i - 2, j - 1, k)))) + + c1 * + (la(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(2, i + 1, j + 2, k) - u(2, i + 1, j - 2, k)) + + c1 * (u(2, i + 1, j + 1, k) - u(2, i + 1, j - 1, k))) - + la(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + (c2 * (u(2, i - 1, j + 2, k) - u(2, i - 1, j - 2, k)) + + c1 * (u(2, i - 1, j + 1, k) - u(2, i - 1, j - 1, k)))); + + // pq-derivatives (v-eq) + // 38 ops. , tot=4125 + r2 += + c2 * + (la(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i - 2, j + 2, k)) + + c1 * (u(1, i + 1, j + 2, k) - u(1, i - 1, j + 2, k))) - + la(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + (c2 * (u(1, i + 2, j - 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i + 1, j - 2, k) - u(1, i - 1, j - 2, k)))) + + c1 * + (la(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(1, i + 2, j + 1, k) - u(1, i - 2, j + 1, k)) + + c1 * (u(1, i + 1, j + 1, k) - u(1, i - 1, j + 1, k))) - + la(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + (c2 * (u(1, i + 2, j - 1, k) - u(1, i - 2, j - 1, k)) + + c1 * (u(1, i + 1, j - 1, k) - u(1, i - 1, j - 1, k)))); + + //* qp-derivatives (v-eq) + // 38 ops., tot=4163 + r2 += + c2 * + (mu(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i + 2, j - 2, k)) + + c1 * (u(1, i + 2, j + 1, k) - u(1, i + 2, j - 1, k))) - + mu(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j + 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i - 2, j + 1, k) - u(1, i - 2, j - 1, k)))) + + c1 * + (mu(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j + 2, k) - u(1, i + 1, j - 2, k)) + + c1 * (u(1, i + 1, j + 1, k) - u(1, i + 1, j - 1, k))) - + mu(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j + 2, k) - u(1, i - 1, j - 2, k)) + + c1 * (u(1, i - 1, j + 1, k) - u(1, i - 1, j - 1, k)))); + + // rp - derivatives + // 24*8 = 192 ops, tot=4355 + float_sw4 dudrm2 = 0, dudrm1 = 0, dudrp1 = 0, dudrp2 = 0; + float_sw4 dvdrm2 = 0, dvdrm1 = 0, dvdrp1 = 0, dvdrp2 = 0; + float_sw4 dwdrm2 = 0, dwdrm1 = 0, dwdrp1 = 0, dwdrp2 = 0; + //#pragma unroll 8 + for (int q = nk - 7; q <= nk; q++) { + dudrm2 -= bope(nk - k + 1, nk - q + 1) * u(1, i - 2, j, q); + dvdrm2 -= bope(nk - k + 1, nk - q + 1) * u(2, i - 2, j, q); + dwdrm2 -= bope(nk - k + 1, nk - q + 1) * u(3, i - 2, j, q); + dudrm1 -= bope(nk - k + 1, nk - q + 1) * u(1, i - 1, j, q); + dvdrm1 -= bope(nk - k + 1, nk - q + 1) * u(2, i - 1, j, q); + dwdrm1 -= bope(nk - k + 1, nk - q + 1) * u(3, i - 1, j, q); + dudrp2 -= bope(nk - k + 1, nk - q + 1) * u(1, i + 2, j, q); + dvdrp2 -= bope(nk - k + 1, nk - q + 1) * u(2, i + 2, j, q); + dwdrp2 -= bope(nk - k + 1, nk - q + 1) * u(3, i + 2, j, q); + dudrp1 -= bope(nk - k + 1, nk - q + 1) * u(1, i + 1, j, q); + dvdrp1 -= bope(nk - k + 1, nk - q + 1) * u(2, i + 1, j, q); + dwdrp1 -= bope(nk - k + 1, nk - q + 1) * u(3, i + 1, j, q); + } + + // rp derivatives (u-eq) + // 67 ops, tot=4422 + r1 += (c2 * ((2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(2, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2) * dudrp2 + + la(i + 2, j, k) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * dvdrp2 * stry(j) + + la(i + 2, j, k) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * dwdrp2 - + ((2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(2, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2) * dudrm2 + + la(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * dvdrm2 * stry(j) + + la(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * dwdrm2)) + + c1 * ((2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(2, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1) * dudrp1 + + la(i + 1, j, k) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * dvdrp1 * stry(j) + + la(i + 1, j, k) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * dwdrp1 - + ((2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(2, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1) * dudrm1 + + la(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * dvdrm1 * stry(j) + + la(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * dwdrm1))) * + istry; + + // rp derivatives (v-eq) + // 42 ops, tot=4464 + r2 += + c2 * (mu(i + 2, j, k) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * dudrp2 + + mu(i + 2, j, k) * met(2, i + 2, j, k) * + met(1, i + 2, j, k) * dvdrp2 * strx(i + 2) * istry - + (mu(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * dudrm2 + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * dvdrm2 * strx(i - 2) * istry)) + + c1 * (mu(i + 1, j, k) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * dudrp1 + + mu(i + 1, j, k) * met(2, i + 1, j, k) * + met(1, i + 1, j, k) * dvdrp1 * strx(i + 1) * istry - + (mu(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * dudrm1 + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * dvdrm1 * strx(i - 1) * istry)); + + // rp derivatives (w-eq) + // 38 ops, tot=4502 + r3 += + istry * (c2 * (mu(i + 2, j, k) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * dudrp2 + + mu(i + 2, j, k) * met(2, i + 2, j, k) * + met(1, i + 2, j, k) * dwdrp2 * strx(i + 2) - + (mu(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * dudrm2 + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * dwdrm2 * strx(i - 2))) + + c1 * (mu(i + 1, j, k) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * dudrp1 + + mu(i + 1, j, k) * met(2, i + 1, j, k) * + met(1, i + 1, j, k) * dwdrp1 * strx(i + 1) - + (mu(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * dudrm1 + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * dwdrm1 * strx(i - 1)))); + + // rq - derivatives + // 24*8 = 192 ops , tot=4694 + + dudrm2 = 0; + dudrm1 = 0; + dudrp1 = 0; + dudrp2 = 0; + dvdrm2 = 0; + dvdrm1 = 0; + dvdrp1 = 0; + dvdrp2 = 0; + dwdrm2 = 0; + dwdrm1 = 0; + dwdrp1 = 0; + dwdrp2 = 0; + //#pragma unroll 8 + for (int q = nk - 7; q <= nk; q++) { + dudrm2 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j - 2, q); + dvdrm2 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j - 2, q); + dwdrm2 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j - 2, q); + dudrm1 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j - 1, q); + dvdrm1 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j - 1, q); + dwdrm1 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j - 1, q); + dudrp2 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j + 2, q); + dvdrp2 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j + 2, q); + dwdrp2 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j + 2, q); + dudrp1 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j + 1, q); + dvdrp1 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j + 1, q); + dwdrp1 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j + 1, q); + } + + // rq derivatives (u-eq) + // 42 ops, tot=4736 + r1 += c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) * + met(1, i, j + 2, k) * dudrp2 * stry(j + 2) * istrx + + mu(i, j + 2, k) * met(2, i, j + 2, k) * + met(1, i, j + 2, k) * dvdrp2 - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * dudrm2 * stry(j - 2) * istrx + + mu(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * dvdrm2)) + + c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) * + met(1, i, j + 1, k) * dudrp1 * stry(j + 1) * istrx + + mu(i, j + 1, k) * met(2, i, j + 1, k) * + met(1, i, j + 1, k) * dvdrp1 - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * dudrm1 * stry(j - 1) * istrx + + mu(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * dvdrm1)); + + // rq derivatives (v-eq) + // 70 ops, tot=4806 + r2 += c2 * (la(i, j + 2, k) * met(2, i, j + 2, k) * + met(1, i, j + 2, k) * dudrp2 + + (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * + met(3, i, j + 2, k) * met(1, i, j + 2, k) * dvdrp2 * + stry(j + 2) * istrx + + la(i, j + 2, k) * met(4, i, j + 2, k) * + met(1, i, j + 2, k) * dwdrp2 * istrx - + (la(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * dudrm2 + + (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * + met(3, i, j - 2, k) * met(1, i, j - 2, k) * dvdrm2 * + stry(j - 2) * istrx + + la(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * dwdrm2 * istrx)) + + c1 * (la(i, j + 1, k) * met(2, i, j + 1, k) * + met(1, i, j + 1, k) * dudrp1 + + (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * + met(3, i, j + 1, k) * met(1, i, j + 1, k) * dvdrp1 * + stry(j + 1) * istrx + + la(i, j + 1, k) * met(4, i, j + 1, k) * + met(1, i, j + 1, k) * dwdrp1 * istrx - + (la(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * dudrm1 + + (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * + met(3, i, j - 1, k) * met(1, i, j - 1, k) * dvdrm1 * + stry(j - 1) * istrx + + la(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * dwdrm1 * istrx)); + + // rq derivatives (w-eq) + // 39 ops, tot=4845 + r3 += (c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) * + met(1, i, j + 2, k) * dwdrp2 * stry(j + 2) + + mu(i, j + 2, k) * met(4, i, j + 2, k) * + met(1, i, j + 2, k) * dvdrp2 - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * dwdrm2 * stry(j - 2) + + mu(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * dvdrm2)) + + c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) * + met(1, i, j + 1, k) * dwdrp1 * stry(j + 1) + + mu(i, j + 1, k) * met(4, i, j + 1, k) * + met(1, i, j + 1, k) * dvdrp1 - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * dwdrm1 * stry(j - 1) + + mu(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * dvdrm1))) * + istrx; + + // pr and qr derivatives at once + // in loop: 8*(53+53+43) = 1192 ops, tot=6037 + //#pragma unroll 8 + for (int q = nk - 7; q <= nk; q++) { + // (u-eq) + // 53 ops + r1 -= bope(nk - k + 1, nk - q + 1) * + ( + // pr + (2 * mu(i, j, q) + la(i, j, q)) * met(2, i, j, q) * + met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) * + strx(i) * istry + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) + + c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) + + mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) + + c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) * + istry + // qr + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) + + c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) * + stry(j) * istrx + + la(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q)))); + + // (v-eq) + // 53 ops + r2 -= bope(nk - k + 1, nk - q + 1) * + ( + // pr + la(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) + + c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) * + strx(i) * istry + // qr + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) + + c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) + + (2 * mu(i, j, q) + la(i, j, q)) * met(3, i, j, q) * + met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) * + stry(j) * istrx + + mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) + + c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) * + istrx); + + // (w-eq) + // 43 ops + r3 -= bope(nk - k + 1, nk - q + 1) * + ( + // pr + la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) * + istry + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) + + c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) * + strx(i) * istry + // qr + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) + + c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) * + stry(j) * istrx + + la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) * + istrx); + } + + // 12 ops, tot=6049 + lu(1, i, j, k) = a1 * lu(1, i, j, k) + sgn * r1 * ijac; + lu(2, i, j, k) = a1 * lu(2, i, j, k) + sgn * r2 * ijac; + lu(3, i, j, k) = a1 * lu(3, i, j, k) + sgn * r3 * ijac; + } +} diff --git a/benchmarks/cuda-jitify/sw4ck/kernel5.cuh b/benchmarks/cuda-jitify/sw4ck/kernel5.cuh new file mode 100644 index 0000000..da654a0 --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/kernel5.cuh @@ -0,0 +1,632 @@ +const char* const kernel5_cpp = +"template<\n" +" const int start0, const int N0, \n" +" const int start1, const int N1,\n" +" const int start2, const int N2,\n" +" const int ifirst, const int ilast,\n" +" const int jfirst, const int jlast,\n" +" const int kfirst, const int klast,\n" +" const int nk,\n" +" const float_sw4 a1, const float_sw4 sgn\n" +">\n" +"__global__ \n" +"void kernel5(\n" +" const float_sw4* __restrict__ a_u, \n" +" const float_sw4* __restrict__ a_mu,\n" +" const float_sw4* __restrict__ a_lambda,\n" +" const float_sw4* __restrict__ a_met,\n" +" const float_sw4* __restrict__ a_jac,\n" +" float_sw4* __restrict__ a_lu, \n" +" const float_sw4* __restrict__ a_acof, \n" +" const float_sw4* __restrict__ a_bope,\n" +" const float_sw4* __restrict__ a_ghcof, \n" +" const float_sw4* __restrict__ a_acof_no_gp,\n" +" const float_sw4* __restrict__ a_ghcof_no_gp, \n" +" const float_sw4* __restrict__ a_strx,\n" +" const float_sw4* __restrict__ a_stry ) \n" +"{\n" +"\n" +" int i = start0 + threadIdx.x + blockIdx.x * blockDim.x;\n" +" int j = start1 + threadIdx.y + blockIdx.y * blockDim.y;\n" +" int k = start2 + threadIdx.z + blockIdx.z * blockDim.z;\n" +" if ((i < N0) && (j < N1) && (k < N2)) {\n" +" // 5 ops\n" +" float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k);\n" +" float_sw4 istry = 1 / (stry(j));\n" +" float_sw4 istrx = 1 / (strx(i));\n" +" float_sw4 istrxy = istry * istrx;\n" +"\n" +" float_sw4 r1 = 0, r2 = 0, r3 = 0;\n" +"\n" +" // pp derivative (u) (u-eq)\n" +" // 53 ops, tot=58\n" +" float_sw4 cof1 = (2 * mu(i - 2, j, k) + la(i - 2, j, k)) *\n" +" met(1, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" strx(i - 2);\n" +" float_sw4 cof2 = (2 * mu(i - 1, j, k) + la(i - 1, j, k)) *\n" +" met(1, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" strx(i - 1);\n" +" float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) *\n" +" met(1, i, j, k) * strx(i);\n" +" float_sw4 cof4 = (2 * mu(i + 1, j, k) + la(i + 1, j, k)) *\n" +" met(1, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" strx(i + 1);\n" +" float_sw4 cof5 = (2 * mu(i + 2, j, k) + la(i + 2, j, k)) *\n" +" met(1, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" strx(i + 2);\n" +"\n" +" float_sw4 mux1 = cof2 - tf * (cof3 + cof1);\n" +" float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" float_sw4 mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r1 = r1 + i6 *\n" +" (mux1 * (u(1, i - 2, j, k) - u(1, i, j, k)) +\n" +" mux2 * (u(1, i - 1, j, k) - u(1, i, j, k)) +\n" +" mux3 * (u(1, i + 1, j, k) - u(1, i, j, k)) +\n" +" mux4 * (u(1, i + 2, j, k) - u(1, i, j, k))) *\n" +" istry;\n" +"\n" +" // qq derivative (u) (u-eq)\n" +" // 43 ops, tot=101\n" +" cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * met(1, i, j - 2, k) *\n" +" stry(j - 2);\n" +" cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * met(1, i, j - 1, k) *\n" +" stry(j - 1);\n" +" cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j);\n" +" cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" stry(j + 1);\n" +" cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" stry(j + 2);\n" +"\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r1 = r1 + i6 *\n" +" (mux1 * (u(1, i, j - 2, k) - u(1, i, j, k)) +\n" +" mux2 * (u(1, i, j - 1, k) - u(1, i, j, k)) +\n" +" mux3 * (u(1, i, j + 1, k) - u(1, i, j, k)) +\n" +" mux4 * (u(1, i, j + 2, k) - u(1, i, j, k))) *\n" +" istrx;\n" +"\n" +" // pp derivative (v) (v-eq)\n" +" // 43 ops, tot=144\n" +" cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" strx(i - 2);\n" +" cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" strx(i - 1);\n" +" cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i);\n" +" cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" strx(i + 1);\n" +" cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" strx(i + 2);\n" +"\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r2 = r2 + i6 *\n" +" (mux1 * (u(2, i - 2, j, k) - u(2, i, j, k)) +\n" +" mux2 * (u(2, i - 1, j, k) - u(2, i, j, k)) +\n" +" mux3 * (u(2, i + 1, j, k) - u(2, i, j, k)) +\n" +" mux4 * (u(2, i + 2, j, k) - u(2, i, j, k))) *\n" +" istry;\n" +"\n" +" // qq derivative (v) (v-eq)\n" +" // 53 ops, tot=197\n" +" cof1 = (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * met(1, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * stry(j - 2);\n" +" cof2 = (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * met(1, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * stry(j - 1);\n" +" cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) *\n" +" met(1, i, j, k) * stry(j);\n" +" cof4 = (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * met(1, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * stry(j + 1);\n" +" cof5 = (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * met(1, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * stry(j + 2);\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r2 = r2 + i6 *\n" +" (mux1 * (u(2, i, j - 2, k) - u(2, i, j, k)) +\n" +" mux2 * (u(2, i, j - 1, k) - u(2, i, j, k)) +\n" +" mux3 * (u(2, i, j + 1, k) - u(2, i, j, k)) +\n" +" mux4 * (u(2, i, j + 2, k) - u(2, i, j, k))) *\n" +" istrx;\n" +"\n" +" // pp derivative (w) (w-eq)\n" +" // 43 ops, tot=240\n" +" cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" strx(i - 2);\n" +" cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" strx(i - 1);\n" +" cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i);\n" +" cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" strx(i + 1);\n" +" cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" strx(i + 2);\n" +"\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r3 = r3 + i6 *\n" +" (mux1 * (u(3, i - 2, j, k) - u(3, i, j, k)) +\n" +" mux2 * (u(3, i - 1, j, k) - u(3, i, j, k)) +\n" +" mux3 * (u(3, i + 1, j, k) - u(3, i, j, k)) +\n" +" mux4 * (u(3, i + 2, j, k) - u(3, i, j, k))) *\n" +" istry;\n" +"\n" +" // qq derivative (w) (w-eq)\n" +" // 43 ops, tot=283\n" +" cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * met(1, i, j - 2, k) *\n" +" stry(j - 2);\n" +" cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * met(1, i, j - 1, k) *\n" +" stry(j - 1);\n" +" cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j);\n" +" cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" stry(j + 1);\n" +" cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" stry(j + 2);\n" +" mux1 = cof2 - tf * (cof3 + cof1);\n" +" mux2 = cof1 + cof4 + 3 * (cof3 + cof2);\n" +" mux3 = cof2 + cof5 + 3 * (cof4 + cof3);\n" +" mux4 = cof4 - tf * (cof3 + cof5);\n" +"\n" +" r3 = r3 + i6 *\n" +" (mux1 * (u(3, i, j - 2, k) - u(3, i, j, k)) +\n" +" mux2 * (u(3, i, j - 1, k) - u(3, i, j, k)) +\n" +" mux3 * (u(3, i, j + 1, k) - u(3, i, j, k)) +\n" +" mux4 * (u(3, i, j + 2, k) - u(3, i, j, k))) *\n" +" istrx;\n" +"\n" +" // All rr-derivatives at once\n" +" // averaging the coefficient\n" +" // 54*8*8+25*8 = 3656 ops, tot=3939\n" +" float_sw4 mucofu2, mucofuv, mucofuw, mucofvw, mucofv2, mucofw2;\n" +" //#pragma unroll 8\n" +" for (int q = nk - 7; q <= nk; q++) {\n" +" mucofu2 = 0;\n" +" mucofuv = 0;\n" +" mucofuw = 0;\n" +" mucofvw = 0;\n" +" mucofv2 = 0;\n" +" mucofw2 = 0;\n" +" //#pragma unroll 8\n" +" for (int m = nk - 7; m <= nk; m++) {\n" +" mucofu2 += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) *\n" +" ((2 * mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) *\n" +" strx(i) * met(2, i, j, m) * strx(i) +\n" +" mu(i, j, m) * (met(3, i, j, m) * stry(j) *\n" +" met(3, i, j, m) * stry(j) +\n" +" met(4, i, j, m) * met(4, i, j, m)));\n" +" mucofv2 += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) *\n" +" ((2 * mu(i, j, m) + la(i, j, m)) * met(3, i, j, m) *\n" +" stry(j) * met(3, i, j, m) * stry(j) +\n" +" mu(i, j, m) * (met(2, i, j, m) * strx(i) *\n" +" met(2, i, j, m) * strx(i) +\n" +" met(4, i, j, m) * met(4, i, j, m)));\n" +" mucofw2 +=\n" +" acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) *\n" +" ((2 * mu(i, j, m) + la(i, j, m)) * met(4, i, j, m) *\n" +" met(4, i, j, m) +\n" +" mu(i, j, m) *\n" +" (met(2, i, j, m) * strx(i) * met(2, i, j, m) * strx(i) +\n" +" met(3, i, j, m) * stry(j) * met(3, i, j, m) * stry(j)));\n" +" mucofuv += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) *\n" +" (mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) *\n" +" met(3, i, j, m);\n" +" mucofuw += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) *\n" +" (mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) *\n" +" met(4, i, j, m);\n" +" mucofvw += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) *\n" +" (mu(i, j, m) + la(i, j, m)) * met(3, i, j, m) *\n" +" met(4, i, j, m);\n" +" }\n" +"\n" +" // Computing the second derivative,\n" +" r1 += istrxy * mucofu2 * u(1, i, j, q) + mucofuv * u(2, i, j, q) +\n" +" istry * mucofuw * u(3, i, j, q);\n" +" r2 += mucofuv * u(1, i, j, q) + istrxy * mucofv2 * u(2, i, j, q) +\n" +" istrx * mucofvw * u(3, i, j, q);\n" +" r3 += istry * mucofuw * u(1, i, j, q) +\n" +" istrx * mucofvw * u(2, i, j, q) +\n" +" istrxy * mucofw2 * u(3, i, j, q);\n" +" }\n" +"\n" +" // Ghost point values, only nonzero for k=nk.\n" +" // 72 ops., tot=4011\n" +" mucofu2 = ghcof_no_gp(nk - k + 1) *\n" +" ((2 * mu(i, j, nk) + la(i, j, nk)) * met(2, i, j, nk) *\n" +" strx(i) * met(2, i, j, nk) * strx(i) +\n" +" mu(i, j, nk) * (met(3, i, j, nk) * stry(j) *\n" +" met(3, i, j, nk) * stry(j) +\n" +" met(4, i, j, nk) * met(4, i, j, nk)));\n" +" mucofv2 = ghcof_no_gp(nk - k + 1) *\n" +" ((2 * mu(i, j, nk) + la(i, j, nk)) * met(3, i, j, nk) *\n" +" stry(j) * met(3, i, j, nk) * stry(j) +\n" +" mu(i, j, nk) * (met(2, i, j, nk) * strx(i) *\n" +" met(2, i, j, nk) * strx(i) +\n" +" met(4, i, j, nk) * met(4, i, j, nk)));\n" +" mucofw2 =\n" +" ghcof_no_gp(nk - k + 1) *\n" +" ((2 * mu(i, j, nk) + la(i, j, nk)) * met(4, i, j, nk) *\n" +" met(4, i, j, nk) +\n" +" mu(i, j, nk) *\n" +" (met(2, i, j, nk) * strx(i) * met(2, i, j, nk) * strx(i) +\n" +" met(3, i, j, nk) * stry(j) * met(3, i, j, nk) * stry(j)));\n" +" mucofuv = ghcof_no_gp(nk - k + 1) * (mu(i, j, nk) + la(i, j, nk)) *\n" +" met(2, i, j, nk) * met(3, i, j, nk);\n" +" mucofuw = ghcof_no_gp(nk - k + 1) * (mu(i, j, nk) + la(i, j, nk)) *\n" +" met(2, i, j, nk) * met(4, i, j, nk);\n" +" mucofvw = ghcof_no_gp(nk - k + 1) * (mu(i, j, nk) + la(i, j, nk)) *\n" +" met(3, i, j, nk) * met(4, i, j, nk);\n" +" r1 += istrxy * mucofu2 * u(1, i, j, nk + 1) +\n" +" mucofuv * u(2, i, j, nk + 1) +\n" +" istry * mucofuw * u(3, i, j, nk + 1);\n" +" r2 += mucofuv * u(1, i, j, nk + 1) +\n" +" istrxy * mucofv2 * u(2, i, j, nk + 1) +\n" +" istrx * mucofvw * u(3, i, j, nk + 1);\n" +" r3 += istry * mucofuw * u(1, i, j, nk + 1) +\n" +" istrx * mucofvw * u(2, i, j, nk + 1) +\n" +" istrxy * mucofw2 * u(3, i, j, nk + 1);\n" +"\n" +" // pq-derivatives (u-eq)\n" +" // 38 ops., tot=4049\n" +" r1 +=\n" +" c2 *\n" +" (mu(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" (c2 * (u(2, i + 2, j + 2, k) - u(2, i - 2, j + 2, k)) +\n" +" c1 * (u(2, i + 1, j + 2, k) - u(2, i - 1, j + 2, k))) -\n" +" mu(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) *\n" +" (c2 * (u(2, i + 2, j - 2, k) - u(2, i - 2, j - 2, k)) +\n" +" c1 * (u(2, i + 1, j - 2, k) - u(2, i - 1, j - 2, k)))) +\n" +" c1 *\n" +" (mu(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" (c2 * (u(2, i + 2, j + 1, k) - u(2, i - 2, j + 1, k)) +\n" +" c1 * (u(2, i + 1, j + 1, k) - u(2, i - 1, j + 1, k))) -\n" +" mu(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) *\n" +" (c2 * (u(2, i + 2, j - 1, k) - u(2, i - 2, j - 1, k)) +\n" +" c1 * (u(2, i + 1, j - 1, k) - u(2, i - 1, j - 1, k))));\n" +"\n" +" // qp-derivatives (u-eq)\n" +" // 38 ops. tot=4087\n" +" r1 +=\n" +" c2 *\n" +" (la(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" (c2 * (u(2, i + 2, j + 2, k) - u(2, i + 2, j - 2, k)) +\n" +" c1 * (u(2, i + 2, j + 1, k) - u(2, i + 2, j - 1, k))) -\n" +" la(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" (c2 * (u(2, i - 2, j + 2, k) - u(2, i - 2, j - 2, k)) +\n" +" c1 * (u(2, i - 2, j + 1, k) - u(2, i - 2, j - 1, k)))) +\n" +" c1 *\n" +" (la(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" (c2 * (u(2, i + 1, j + 2, k) - u(2, i + 1, j - 2, k)) +\n" +" c1 * (u(2, i + 1, j + 1, k) - u(2, i + 1, j - 1, k))) -\n" +" la(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" (c2 * (u(2, i - 1, j + 2, k) - u(2, i - 1, j - 2, k)) +\n" +" c1 * (u(2, i - 1, j + 1, k) - u(2, i - 1, j - 1, k))));\n" +"\n" +" // pq-derivatives (v-eq)\n" +" // 38 ops. , tot=4125\n" +" r2 +=\n" +" c2 *\n" +" (la(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) *\n" +" (c2 * (u(1, i + 2, j + 2, k) - u(1, i - 2, j + 2, k)) +\n" +" c1 * (u(1, i + 1, j + 2, k) - u(1, i - 1, j + 2, k))) -\n" +" la(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) *\n" +" (c2 * (u(1, i + 2, j - 2, k) - u(1, i - 2, j - 2, k)) +\n" +" c1 * (u(1, i + 1, j - 2, k) - u(1, i - 1, j - 2, k)))) +\n" +" c1 *\n" +" (la(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) *\n" +" (c2 * (u(1, i + 2, j + 1, k) - u(1, i - 2, j + 1, k)) +\n" +" c1 * (u(1, i + 1, j + 1, k) - u(1, i - 1, j + 1, k))) -\n" +" la(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) *\n" +" (c2 * (u(1, i + 2, j - 1, k) - u(1, i - 2, j - 1, k)) +\n" +" c1 * (u(1, i + 1, j - 1, k) - u(1, i - 1, j - 1, k))));\n" +"\n" +" //* qp-derivatives (v-eq)\n" +" // 38 ops., tot=4163\n" +" r2 +=\n" +" c2 *\n" +" (mu(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" (c2 * (u(1, i + 2, j + 2, k) - u(1, i + 2, j - 2, k)) +\n" +" c1 * (u(1, i + 2, j + 1, k) - u(1, i + 2, j - 1, k))) -\n" +" mu(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" (c2 * (u(1, i - 2, j + 2, k) - u(1, i - 2, j - 2, k)) +\n" +" c1 * (u(1, i - 2, j + 1, k) - u(1, i - 2, j - 1, k)))) +\n" +" c1 *\n" +" (mu(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" (c2 * (u(1, i + 1, j + 2, k) - u(1, i + 1, j - 2, k)) +\n" +" c1 * (u(1, i + 1, j + 1, k) - u(1, i + 1, j - 1, k))) -\n" +" mu(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" (c2 * (u(1, i - 1, j + 2, k) - u(1, i - 1, j - 2, k)) +\n" +" c1 * (u(1, i - 1, j + 1, k) - u(1, i - 1, j - 1, k))));\n" +"\n" +" // rp - derivatives\n" +" // 24*8 = 192 ops, tot=4355\n" +" float_sw4 dudrm2 = 0, dudrm1 = 0, dudrp1 = 0, dudrp2 = 0;\n" +" float_sw4 dvdrm2 = 0, dvdrm1 = 0, dvdrp1 = 0, dvdrp2 = 0;\n" +" float_sw4 dwdrm2 = 0, dwdrm1 = 0, dwdrp1 = 0, dwdrp2 = 0;\n" +" //#pragma unroll 8\n" +" for (int q = nk - 7; q <= nk; q++) {\n" +" dudrm2 -= bope(nk - k + 1, nk - q + 1) * u(1, i - 2, j, q);\n" +" dvdrm2 -= bope(nk - k + 1, nk - q + 1) * u(2, i - 2, j, q);\n" +" dwdrm2 -= bope(nk - k + 1, nk - q + 1) * u(3, i - 2, j, q);\n" +" dudrm1 -= bope(nk - k + 1, nk - q + 1) * u(1, i - 1, j, q);\n" +" dvdrm1 -= bope(nk - k + 1, nk - q + 1) * u(2, i - 1, j, q);\n" +" dwdrm1 -= bope(nk - k + 1, nk - q + 1) * u(3, i - 1, j, q);\n" +" dudrp2 -= bope(nk - k + 1, nk - q + 1) * u(1, i + 2, j, q);\n" +" dvdrp2 -= bope(nk - k + 1, nk - q + 1) * u(2, i + 2, j, q);\n" +" dwdrp2 -= bope(nk - k + 1, nk - q + 1) * u(3, i + 2, j, q);\n" +" dudrp1 -= bope(nk - k + 1, nk - q + 1) * u(1, i + 1, j, q);\n" +" dvdrp1 -= bope(nk - k + 1, nk - q + 1) * u(2, i + 1, j, q);\n" +" dwdrp1 -= bope(nk - k + 1, nk - q + 1) * u(3, i + 1, j, q);\n" +" }\n" +"\n" +" // rp derivatives (u-eq)\n" +" // 67 ops, tot=4422\n" +" r1 += (c2 * ((2 * mu(i + 2, j, k) + la(i + 2, j, k)) *\n" +" met(2, i + 2, j, k) * met(1, i + 2, j, k) *\n" +" strx(i + 2) * dudrp2 +\n" +" la(i + 2, j, k) * met(3, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dvdrp2 * stry(j) +\n" +" la(i + 2, j, k) * met(4, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dwdrp2 -\n" +" ((2 * mu(i - 2, j, k) + la(i - 2, j, k)) *\n" +" met(2, i - 2, j, k) * met(1, i - 2, j, k) *\n" +" strx(i - 2) * dudrm2 +\n" +" la(i - 2, j, k) * met(3, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dvdrm2 * stry(j) +\n" +" la(i - 2, j, k) * met(4, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dwdrm2)) +\n" +" c1 * ((2 * mu(i + 1, j, k) + la(i + 1, j, k)) *\n" +" met(2, i + 1, j, k) * met(1, i + 1, j, k) *\n" +" strx(i + 1) * dudrp1 +\n" +" la(i + 1, j, k) * met(3, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dvdrp1 * stry(j) +\n" +" la(i + 1, j, k) * met(4, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dwdrp1 -\n" +" ((2 * mu(i - 1, j, k) + la(i - 1, j, k)) *\n" +" met(2, i - 1, j, k) * met(1, i - 1, j, k) *\n" +" strx(i - 1) * dudrm1 +\n" +" la(i - 1, j, k) * met(3, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dvdrm1 * stry(j) +\n" +" la(i - 1, j, k) * met(4, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dwdrm1))) *\n" +" istry;\n" +"\n" +" // rp derivatives (v-eq)\n" +" // 42 ops, tot=4464\n" +" r2 +=\n" +" c2 * (mu(i + 2, j, k) * met(3, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dudrp2 +\n" +" mu(i + 2, j, k) * met(2, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dvdrp2 * strx(i + 2) * istry -\n" +" (mu(i - 2, j, k) * met(3, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dudrm2 +\n" +" mu(i - 2, j, k) * met(2, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dvdrm2 * strx(i - 2) * istry)) +\n" +" c1 * (mu(i + 1, j, k) * met(3, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dudrp1 +\n" +" mu(i + 1, j, k) * met(2, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dvdrp1 * strx(i + 1) * istry -\n" +" (mu(i - 1, j, k) * met(3, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dudrm1 +\n" +" mu(i - 1, j, k) * met(2, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dvdrm1 * strx(i - 1) * istry));\n" +"\n" +" // rp derivatives (w-eq)\n" +" // 38 ops, tot=4502\n" +" r3 +=\n" +" istry * (c2 * (mu(i + 2, j, k) * met(4, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dudrp2 +\n" +" mu(i + 2, j, k) * met(2, i + 2, j, k) *\n" +" met(1, i + 2, j, k) * dwdrp2 * strx(i + 2) -\n" +" (mu(i - 2, j, k) * met(4, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dudrm2 +\n" +" mu(i - 2, j, k) * met(2, i - 2, j, k) *\n" +" met(1, i - 2, j, k) * dwdrm2 * strx(i - 2))) +\n" +" c1 * (mu(i + 1, j, k) * met(4, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dudrp1 +\n" +" mu(i + 1, j, k) * met(2, i + 1, j, k) *\n" +" met(1, i + 1, j, k) * dwdrp1 * strx(i + 1) -\n" +" (mu(i - 1, j, k) * met(4, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dudrm1 +\n" +" mu(i - 1, j, k) * met(2, i - 1, j, k) *\n" +" met(1, i - 1, j, k) * dwdrm1 * strx(i - 1))));\n" +"\n" +" // rq - derivatives\n" +" // 24*8 = 192 ops , tot=4694\n" +"\n" +" dudrm2 = 0;\n" +" dudrm1 = 0;\n" +" dudrp1 = 0;\n" +" dudrp2 = 0;\n" +" dvdrm2 = 0;\n" +" dvdrm1 = 0;\n" +" dvdrp1 = 0;\n" +" dvdrp2 = 0;\n" +" dwdrm2 = 0;\n" +" dwdrm1 = 0;\n" +" dwdrp1 = 0;\n" +" dwdrp2 = 0;\n" +" //#pragma unroll 8\n" +" for (int q = nk - 7; q <= nk; q++) {\n" +" dudrm2 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j - 2, q);\n" +" dvdrm2 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j - 2, q);\n" +" dwdrm2 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j - 2, q);\n" +" dudrm1 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j - 1, q);\n" +" dvdrm1 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j - 1, q);\n" +" dwdrm1 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j - 1, q);\n" +" dudrp2 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j + 2, q);\n" +" dvdrp2 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j + 2, q);\n" +" dwdrp2 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j + 2, q);\n" +" dudrp1 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j + 1, q);\n" +" dvdrp1 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j + 1, q);\n" +" dwdrp1 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j + 1, q);\n" +" }\n" +"\n" +" // rq derivatives (u-eq)\n" +" // 42 ops, tot=4736\n" +" r1 += c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dudrp2 * stry(j + 2) * istrx +\n" +" mu(i, j + 2, k) * met(2, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dvdrp2 -\n" +" (mu(i, j - 2, k) * met(3, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dudrm2 * stry(j - 2) * istrx +\n" +" mu(i, j - 2, k) * met(2, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dvdrm2)) +\n" +" c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dudrp1 * stry(j + 1) * istrx +\n" +" mu(i, j + 1, k) * met(2, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dvdrp1 -\n" +" (mu(i, j - 1, k) * met(3, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dudrm1 * stry(j - 1) * istrx +\n" +" mu(i, j - 1, k) * met(2, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dvdrm1));\n" +"\n" +" // rq derivatives (v-eq)\n" +" // 70 ops, tot=4806\n" +" r2 += c2 * (la(i, j + 2, k) * met(2, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dudrp2 +\n" +" (2 * mu(i, j + 2, k) + la(i, j + 2, k)) *\n" +" met(3, i, j + 2, k) * met(1, i, j + 2, k) * dvdrp2 *\n" +" stry(j + 2) * istrx +\n" +" la(i, j + 2, k) * met(4, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dwdrp2 * istrx -\n" +" (la(i, j - 2, k) * met(2, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dudrm2 +\n" +" (2 * mu(i, j - 2, k) + la(i, j - 2, k)) *\n" +" met(3, i, j - 2, k) * met(1, i, j - 2, k) * dvdrm2 *\n" +" stry(j - 2) * istrx +\n" +" la(i, j - 2, k) * met(4, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dwdrm2 * istrx)) +\n" +" c1 * (la(i, j + 1, k) * met(2, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dudrp1 +\n" +" (2 * mu(i, j + 1, k) + la(i, j + 1, k)) *\n" +" met(3, i, j + 1, k) * met(1, i, j + 1, k) * dvdrp1 *\n" +" stry(j + 1) * istrx +\n" +" la(i, j + 1, k) * met(4, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dwdrp1 * istrx -\n" +" (la(i, j - 1, k) * met(2, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dudrm1 +\n" +" (2 * mu(i, j - 1, k) + la(i, j - 1, k)) *\n" +" met(3, i, j - 1, k) * met(1, i, j - 1, k) * dvdrm1 *\n" +" stry(j - 1) * istrx +\n" +" la(i, j - 1, k) * met(4, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dwdrm1 * istrx));\n" +"\n" +" // rq derivatives (w-eq)\n" +" // 39 ops, tot=4845\n" +" r3 += (c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dwdrp2 * stry(j + 2) +\n" +" mu(i, j + 2, k) * met(4, i, j + 2, k) *\n" +" met(1, i, j + 2, k) * dvdrp2 -\n" +" (mu(i, j - 2, k) * met(3, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dwdrm2 * stry(j - 2) +\n" +" mu(i, j - 2, k) * met(4, i, j - 2, k) *\n" +" met(1, i, j - 2, k) * dvdrm2)) +\n" +" c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dwdrp1 * stry(j + 1) +\n" +" mu(i, j + 1, k) * met(4, i, j + 1, k) *\n" +" met(1, i, j + 1, k) * dvdrp1 -\n" +" (mu(i, j - 1, k) * met(3, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dwdrm1 * stry(j - 1) +\n" +" mu(i, j - 1, k) * met(4, i, j - 1, k) *\n" +" met(1, i, j - 1, k) * dvdrm1))) *\n" +" istrx;\n" +"\n" +" // pr and qr derivatives at once\n" +" // in loop: 8*(53+53+43) = 1192 ops, tot=6037\n" +" //#pragma unroll 8\n" +" for (int q = nk - 7; q <= nk; q++) {\n" +" // (u-eq)\n" +" // 53 ops\n" +" r1 -= bope(nk - k + 1, nk - q + 1) *\n" +" (\n" +" // pr\n" +" (2 * mu(i, j, q) + la(i, j, q)) * met(2, i, j, q) *\n" +" met(1, i, j, q) *\n" +" (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) +\n" +" c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) *\n" +" strx(i) * istry +\n" +" mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) +\n" +" c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) +\n" +" mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) +\n" +" c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) *\n" +" istry\n" +" // qr\n" +" + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) +\n" +" c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) *\n" +" stry(j) * istrx +\n" +" la(i, j, q) * met(2, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) +\n" +" c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))));\n" +"\n" +" // (v-eq)\n" +" // 53 ops\n" +" r2 -= bope(nk - k + 1, nk - q + 1) *\n" +" (\n" +" // pr\n" +" la(i, j, q) * met(3, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) +\n" +" c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) +\n" +" mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) +\n" +" c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) *\n" +" strx(i) * istry\n" +" // qr\n" +" + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) +\n" +" c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) +\n" +" (2 * mu(i, j, q) + la(i, j, q)) * met(3, i, j, q) *\n" +" met(1, i, j, q) *\n" +" (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) +\n" +" c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) *\n" +" stry(j) * istrx +\n" +" mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) +\n" +" c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) *\n" +" istrx);\n" +"\n" +" // (w-eq)\n" +" // 43 ops\n" +" r3 -= bope(nk - k + 1, nk - q + 1) *\n" +" (\n" +" // pr\n" +" la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) +\n" +" c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) *\n" +" istry +\n" +" mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) +\n" +" c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) *\n" +" strx(i) * istry\n" +" // qr\n" +" + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) +\n" +" c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) *\n" +" stry(j) * istrx +\n" +" la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) *\n" +" (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) +\n" +" c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) *\n" +" istrx);\n" +" }\n" +"\n" +" // 12 ops, tot=6049\n" +" lu(1, i, j, k) = a1 * lu(1, i, j, k) + sgn * r1 * ijac;\n" +" lu(2, i, j, k) = a1 * lu(2, i, j, k) + sgn * r2 * ijac;\n" +" lu(3, i, j, k) = a1 * lu(3, i, j, k) + sgn * r3 * ijac;\n" +" }\n" +"}\n" +; diff --git a/benchmarks/cuda-jitify/sw4ck/main.cu b/benchmarks/cuda-jitify/sw4ck/main.cu new file mode 100644 index 0000000..5fc5232 --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/main.cu @@ -0,0 +1,223 @@ +////////////////////////////////////////////////////////////////////////////// +//// Copyright (c) 2021, Lawrence Livermore National Security, LLC and SW4CK +//// project contributors. See the COPYRIGHT file for details. +//// +//// SPDX-License-Identifier: GPL-2.0-only +//////////////////////////////////////////////////////////////////////////////// + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "utils.h" +#include "utils.cpp" + +int main(int argc, char* argv[]) { + if (argc != 3) { + std::cout << "Usage: " << argv[0] << " \n"; + return 1; + } + + // Open an input data file + std::ifstream iff; + iff.open(argv[1]); + + // Repeat the execution of kernels + const int repeat = atoi(argv[2]); + + // At most 10 input datasets + std::map arrays[10]; + std::vector onesided; + std::string line; + int lc = 0; + std::cout << "Reading from file " << argv[1] << "\n"; + while (std::getline(iff, line)) { + std::istringstream iss(line); + int* optr = new int[14]; + const int N = 16; + if ((lc % N) == 0) { + if (!(iss >> optr[0] >> optr[1] >> optr[2] >> optr[3] >> optr[4] >> + optr[5] >> optr[6] >> optr[7] >> optr[8] >> optr[9] >> optr[10] >> + optr[11] >> optr[12] >> optr[13])) { + std::cerr << "Error reading data on line " << lc + 1 << "\n"; + break; + } + onesided.push_back(optr); + } else { + Sarray* s = new Sarray(); + auto name = s->fill(iss); + if (name == "Break") { + std::cerr << "Error reading Sarray data on line " << lc + 1 << "\n"; + break; + } else { + arrays[lc / N][name] = s; + } + } + lc++; + } // while + +#ifdef VERBOSE + std::cout << "\nCurrent state of map array\n"; +#endif + for (int i = 0; i < 2; i++) + for (auto const& x : arrays[i]) { +#ifdef VERBOSE + std::cout << x.first << " " << x.second->g << " " << x.second->m_npts + << "\n"; +#endif + x.second->init(); + } + + // + // Allocate device memory explictly + // + int size = (6 + 384 + 24 + 48 + 6 + 384 + 6 + 6); + float_sw4 *cof_ptr = (float_sw4*) malloc (sizeof(float_sw4) * size); + for (int i = 0; i < size; i++) cof_ptr[i] = i / 1000.0; + + float_sw4 *d_cof_ptr; + cudaMalloc ((void**)&d_cof_ptr, size * sizeof(float_sw4)); + cudaMemcpy(d_cof_ptr, cof_ptr, size * sizeof(float_sw4), cudaMemcpyHostToDevice); + + // obtain memory offsets + float_sw4 *d_sbop = d_cof_ptr; + float_sw4 *d_acof = d_sbop + 6; + float_sw4 *d_bop = d_acof + 384; + float_sw4 *d_bope = d_bop + 24; + float_sw4 *d_ghcof = d_bope + 48; + float_sw4 *d_acof_no_gp = d_ghcof + 6; + float_sw4 *d_ghcof_no_gp = d_acof_no_gp + 384; + + // Expected norm values after executing five kernels for the two input dataset + float_sw4 exact_norm[2] = {2.2502232733796421194, 202.0512747393526638}; + + for (int i = 0; i < 2; i++) { + int* optr = onesided[i]; + float_sw4* alpha_ptr = arrays[i]["a_AlphaVE_0"]->m_data; + size = arrays[i]["a_AlphaVE_0"]->m_nc * + arrays[i]["a_AlphaVE_0"]->m_ni * + arrays[i]["a_AlphaVE_0"]->m_nj * + arrays[i]["a_AlphaVE_0"]->m_nk * sizeof(float_sw4); + float_sw4* d_alpha_ptr; + cudaMalloc((void**)&d_alpha_ptr, size); + cudaMemcpy(d_alpha_ptr, alpha_ptr, size, cudaMemcpyHostToDevice); + + float_sw4* mua_ptr = arrays[i]["mMuVE_0"]->m_data; + size = arrays[i]["mMuVE_0"]->m_nc * + arrays[i]["mMuVE_0"]->m_ni * + arrays[i]["mMuVE_0"]->m_nj * + arrays[i]["mMuVE_0"]->m_nk * sizeof(float_sw4); + float_sw4* d_mua_ptr; + cudaMalloc((void**)&d_mua_ptr, size); + cudaMemcpy(d_mua_ptr, mua_ptr, size, cudaMemcpyHostToDevice); + + float_sw4* lambdaa_ptr = arrays[i]["mLambdaVE_0"]->m_data; + size = arrays[i]["mLambdaVE_0"]->m_nc * + arrays[i]["mLambdaVE_0"]->m_ni * + arrays[i]["mLambdaVE_0"]->m_nj * + arrays[i]["mLambdaVE_0"]->m_nk * sizeof(float_sw4); + float_sw4* d_lambdaa_ptr; + cudaMalloc((void**)&d_lambdaa_ptr, size); + cudaMemcpy(d_lambdaa_ptr, lambdaa_ptr, size, cudaMemcpyHostToDevice); + + float_sw4* met_ptr = arrays[i]["mMetric"]->m_data; + size = arrays[i]["mMetric"]->m_nc * + arrays[i]["mMetric"]->m_ni * + arrays[i]["mMetric"]->m_nj * + arrays[i]["mMetric"]->m_nk * sizeof(float_sw4); + float_sw4* d_met_ptr; + cudaMalloc((void**)&d_met_ptr, size); + cudaMemcpy(d_met_ptr, met_ptr, size, cudaMemcpyHostToDevice); + + float_sw4* jac_ptr = arrays[i]["mJ"]->m_data; + size = arrays[i]["mJ"]->m_nc * + arrays[i]["mJ"]->m_ni * + arrays[i]["mJ"]->m_nj * + arrays[i]["mJ"]->m_nk * sizeof(float_sw4); + float_sw4* d_jac_ptr; + cudaMalloc((void**)&d_jac_ptr, size); + cudaMemcpy(d_jac_ptr, jac_ptr, size, cudaMemcpyHostToDevice); + + float_sw4* uacc_ptr = arrays[i]["a_Uacc"]->m_data; + // will initialize uacc content for each kernel run + int uacc_size = arrays[i]["a_Uacc"]->m_nc * + arrays[i]["a_Uacc"]->m_ni * + arrays[i]["a_Uacc"]->m_nj * + arrays[i]["a_Uacc"]->m_nk * sizeof(float_sw4); + float_sw4* d_uacc_ptr; + cudaMalloc((void**)&d_uacc_ptr, uacc_size); + + int* onesided_ptr = optr; + int nkg = optr[12]; + char op = '-'; + + int sg_str_size = (optr[7] - optr[6] + optr[9] - optr[8] + 2); + float_sw4* sg_str = (float_sw4*) malloc (sg_str_size * sizeof(float_sw4)); + for (int n = 0; n < sg_str_size; n++) sg_str[n] = n / 1000.0; + + float_sw4* d_sg_str; + cudaMalloc((void**)&d_sg_str, sg_str_size * sizeof(float_sw4)); + cudaMemcpy(d_sg_str, sg_str, sg_str_size * sizeof(float_sw4), cudaMemcpyHostToDevice); + + float_sw4* d_sg_str_x = d_sg_str; + float_sw4* d_sg_str_y = d_sg_str_x + optr[7] - optr[6] + 1; + + double time = 0.0; + + // execute kernel (need to reset device uacc content for result verification) + for (int p = 0; p < repeat; p++) { + cudaMemcpy(d_uacc_ptr, uacc_ptr, uacc_size, cudaMemcpyHostToDevice); + + cudaDeviceSynchronize(); + auto start = std::chrono::steady_clock::now(); + + curvilinear4sg_ci(optr[6], optr[7], optr[8], optr[9], optr[10], optr[11], + d_alpha_ptr, d_mua_ptr, d_lambdaa_ptr, d_met_ptr, d_jac_ptr, + d_uacc_ptr, onesided_ptr, d_acof_no_gp, d_bope, + d_ghcof_no_gp, d_acof_no_gp, d_ghcof_no_gp, d_sg_str_x, + d_sg_str_y, nkg, op); + + cudaDeviceSynchronize(); + auto end = std::chrono::steady_clock::now(); + time += std::chrono::duration_cast(end - start).count(); + } + + CheckDeviceError(cudaPeekAtLastError()); + + std::cout << "\nAverage execution time of sw4ck kernels: " + << (time * 1e-6f) / repeat << " milliseconds\n\n"; + + size = arrays[i]["a_Uacc"]->m_nc * + arrays[i]["a_Uacc"]->m_ni * + arrays[i]["a_Uacc"]->m_nj * + arrays[i]["a_Uacc"]->m_nk * sizeof(float_sw4); + cudaMemcpy(uacc_ptr, d_uacc_ptr, size, cudaMemcpyDeviceToHost); + + float_sw4 norm = arrays[i]["a_Uacc"]->norm(); + float_sw4 err = (norm - exact_norm[i]) / exact_norm[i] * 100; + std::cout << "Error = " << err << " %\n"; + + // Free host and device memory allocations + cudaFree(d_alpha_ptr); + cudaFree(d_mua_ptr); + cudaFree(d_lambdaa_ptr); + cudaFree(d_met_ptr); + cudaFree(d_jac_ptr); + cudaFree(d_uacc_ptr); + cudaFree(d_sg_str); + free(sg_str); + delete(optr); + } + cudaFree(d_cof_ptr); + free(cof_ptr); + for (int i = 0; i < 2; i++) + for (auto const& x : arrays[i]) + delete(x.second); + return 0; +} diff --git a/benchmarks/cuda-jitify/sw4ck/sw4ck.in b/benchmarks/cuda-jitify/sw4ck/sw4ck.in new file mode 100644 index 0000000..b6b621e --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/sw4ck.in @@ -0,0 +1,32 @@ +0 0 0 0 1 1 -2 375 -2 375 -2 17 14 3 +a_U 2 3 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 8573040 +a_Mu 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +a_Lambda 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +mMetric 2 4 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 11430720 +mJ 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +a_Uacc 2 3 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 8573040 +a_AlphaVE_0 2 3 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 8573040 +mMuVE_0 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +mLambdaVE_0 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +a_AlphaVE_1 2 3 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 8573040 +mMuVE_1 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +mLambdaVE_1 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +a_AlphaVE_2 2 3 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 8573040 +mMuVE_2 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +mLambdaVE_2 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +0 0 0 0 1 1 -2 746 -2 746 -2 21 18 3 +a_U 3 3 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 40392072 +a_Mu 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +a_Lambda 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +mMetric 3 4 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 53856096 +mJ 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +a_Uacc 3 3 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 40392072 +a_AlphaVE_0 3 3 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 40392072 +mMuVE_0 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +mLambdaVE_0 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +a_AlphaVE_1 3 3 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 40392072 +mMuVE_1 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +mLambdaVE_1 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +a_AlphaVE_2 3 3 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 40392072 +mMuVE_2 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +mLambdaVE_2 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 diff --git a/benchmarks/cuda-jitify/sw4ck/utils.cpp b/benchmarks/cuda-jitify/sw4ck/utils.cpp new file mode 100644 index 0000000..a0de62e --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/utils.cpp @@ -0,0 +1,100 @@ +class Sarray { + public: + Sarray() {} + ~Sarray(); + Sarray(int nc, int ibeg, int iend, int jbeg, int jend, int kbeg, int kend); + std::string fill(std::istringstream& iss); + void init(); + float_sw4 norm(); + std::tuple minmax(); + int m_nc, m_ni, m_nj, m_nk; + int m_ib, m_ie, m_jb, m_je, m_kb, m_ke; + ssize_t m_base; + size_t m_offi, m_offj, m_offk, m_offc, m_npts; + float_sw4* m_data; + size_t size; + int g; +}; + +std::string Sarray::fill(std::istringstream& iss) { + std::string name; + if (!(iss >> name >> g >> m_nc >> m_ni >> m_nj >> m_nk >> m_ib >> m_ie >> + m_jb >> m_je >> m_kb >> m_ke >> m_base >> m_offi >> m_offj >> m_offk >> + m_offc >> m_npts)) + return "Break"; +#ifdef VERBOSE + std::cout << name << " " << m_npts << "\n"; +#endif + size = m_nc * m_ni * m_nj * m_nk * sizeof(float_sw4); + + float_sw4* ptr = (float_sw4*) malloc (size); + if (ptr == nullptr) { + std::cerr << "malloc failed (size:" << size << " bytes)\n"; + abort(); + } + +#ifdef VERBOSE + std::cout << "Allocated " << size << " bytes " << name << "[" << g << "]\n"; +#endif + m_data = ptr; + return name; +} + +Sarray::~Sarray() { +#ifdef VERBOSE + std::cout << "Free " << size << " bytes\n"; +#endif + free(m_data); +} + +void Sarray::init() { + + const float_sw4 dx = 0.001; + int nc = m_nc; + int offi = nc; + int offj = nc*m_ni; + int offk = nc*m_ni*m_nj; + + for (int i = 0; i < m_ni; i++) + for (int j = 0; j < m_nj; j++) + for (int k = 0; k < m_nk; k++) + for (int c = 0; c < nc; c++) { + int indx = c + i * offi + j * offj + k * offk; + float_sw4 x = i*dx; + float_sw4 y = j*dx; + float_sw4 z = k*dx; + float_sw4 f = sin(x)*sin(y)*sin(z); + m_data[indx]=f; + } + +} +float_sw4 Sarray::norm() { + float_sw4 ret = 0.0; + for (size_t i = 0; i < size / 8; i++) ret += m_data[i] * m_data[i]; + return ret; +} + +std::tuple Sarray::minmax(){ + float_sw4 min = std::numeric_limits::max(); + float_sw4 max = std::numeric_limits::min(); + for (size_t i = 0; i < size / 8; i++) { + min=std::min(min,m_data[i]); + max=std::max(max,m_data[i]); + } + return std::make_tuple(min,max); +} + + +void CheckError(cudaError_t const err, const char *file, char const *const fun, + const int line) { + if (err) { + std::cerr << "CUDA Error Code[" << err << "]: " << cudaGetErrorString(err) + << " " << file << " " << fun << " Line number: " << line << "\n"; + abort(); + } +} + +#define CheckDeviceError(err) \ + CheckError(err, __FILE__, __FUNCTION__, __LINE__) + + diff --git a/benchmarks/cuda-jitify/sw4ck/utils.h b/benchmarks/cuda-jitify/sw4ck/utils.h new file mode 100644 index 0000000..7d29704 --- /dev/null +++ b/benchmarks/cuda-jitify/sw4ck/utils.h @@ -0,0 +1,29 @@ +#ifndef __UTILS_H +#define __UTILS_H + +#include + +// Use double precision for accuracy +#define float_sw4 double + +void curvilinear4sg_ci( + int ifirst, int ilast, + int jfirst, int jlast, + int kfirst, int klast, + float_sw4* d_u, + float_sw4* d_mu, + float_sw4* d_lambda, + float_sw4* d_met, + float_sw4* d_jac, + float_sw4* d_lu, + int* onesided, + float_sw4* d_acof, + float_sw4* d_bope, + float_sw4* d_ghcof, + float_sw4* d_acof_no_gp, + float_sw4* d_ghcof_no_gp, + float_sw4* d_strx, + float_sw4* d_stry, + int nk, char op); + +#endif diff --git a/benchmarks/cuda-jitify/wsm5/Makefile b/benchmarks/cuda-jitify/wsm5/Makefile new file mode 100644 index 0000000..11d7853 --- /dev/null +++ b/benchmarks/cuda-jitify/wsm5/Makefile @@ -0,0 +1,73 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC ?= nvcc +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = +JIT_PATH ?=/p/vast1/koparasy/JIT/jit/build-lassen/ +JIT ?= no + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + +program = main$(SUFFIX).x + +source = main.cu + +obj = $(source:.cu=$(SUFFIX).o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := -DMKX=4 -std=c++14 -Xcompiler -Wall --offload-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia + +# Linker Flags +LDFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lnvrtc -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl + + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g -DDEBUG + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3 +endif + +ifeq ($(JIT),yes) + LIBLLVM_PATH=$(dir $(realpath $(CC)))../lib + CFLAGS += -DENABLE_JIT + LDFLAGS += -lnvptxcompiler_static +endif + +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) Makefile + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +%$(SUFFIX).o: %.cu kernel.h spt.h constants.h utils.h Makefile + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf $(program) $(obj) + +run: $(program) + $(LAUNCHER) ./$(program) 10 diff --git a/benchmarks/cuda-jitify/wsm5/constants.h b/benchmarks/cuda-jitify/wsm5/constants.h new file mode 100644 index 0000000..dbea514 --- /dev/null +++ b/benchmarks/cuda-jitify/wsm5/constants.h @@ -0,0 +1,92 @@ +// WSM5 Constants + +#if 1 +# define epsilon 1.e-15 +# define r_d 287. +# define rhoair0 1.28 +# define rhosnow 100. +# define dens rhosnow +# define rhowater 1000. +# define svpt0 .27314999389648438e+03 +# define xlv 2.5e6 +#endif + +#define g 0.981000041961670E+01 +#define r_v 0.461600006103516E+03 +#define rv r_v +#define cice 0.210600000000000E+04 +#define cliq 0.419000000000000E+04 +#define denr 0.100000000000000E+04 +#define den0 0.127999997138977E+01 +#define xlf0 0.350000000000000E+06 +#define xlv0 0.250000000000000E+07 +#define xls 0.285000000000000E+07 +#define t0c 0.273149993896484E+03 +#define qmin 0.100000000362749E-14 +#define ep1 0.608362436294556E+00 +#define ep2 0.621750414371490E+00 +#define psat 0.610780029296875E+03 +#define alpha 0.120000000000000E+00 +#define n0smax 0.100000000000000E+12 +#define n0s 0.200000000000000E+07 +#define n0r 0.800000000000000E+07 +#define qcrmin 0.100000000000000E-08 +#define avtr 0.841900000000000E+03 +#define bvtr 0.800000000000000E+00 +#define g1pbr 0.931232915622909E+00 +#define g3pbr 0.469078683336385E+01 +#define g4pbr 0.178173289058329E+02 +#define g5pbro2 0.182658695197891E+01 +#define avts 0.117200000000000E+02 +#define bvts 0.410000000000000E+00 +#define g1pbs 0.886676521690526E+00 +#define g3pbs 0.301156382231086E+01 +#define g4pbs 0.102654190601850E+02 +#define g5pbso2 1.550308 +#define r0 0.800000000000000E-05 +#define peaut 0.550000000000000E+00 +#define xncr 0.300000000000000E+09 +#define xmyu 0.171800000000000E-04 +#define lamdarmax 0.800000000000000E+05 +#define lamdasmax 0.100000000000000E+06 +#define lamdagmax 0.600000000000000E+05 +#define pi 0.314159265358979E+01 +#define dicon 0.119000000000000E+02 +#define dimax 0.500000000000000E-03 +#define pfrz1 0.100000000000000E+03 +#define pfrz2 0.660000000000000E+00 +#define eacrr 0.100000000000000E+01 +#define eacrc 0.100000000000000E+01 + + double cpv = 4.*r_v ; + double cp = 7.*r_d/2. ; + double cv = cp-r_d ; + double cpd = cp ; + + //double ep_1 = r_v/r_d-1. ; + //double ep_2 = r_d/r_v ; + double pvtr = avtr*g4pbr/6. ; + double pvts = avts*g4pbs/6. ; + double xlv1 = cliq - cv ; + + double rslopermax = 1./lamdarmax ; + double rslopesmax = .10000000000000001e-04 ; // 1./lamdasmax ; + double rsloperbmax = 0.11954406247375457E-03 ; // exp(log(rslopermax) * bvtr) ; + double rslopesbmax = .89125093813374589e-02 ; // exp(log(rslopesmax) * bvts) ; + double rsloper2max = rslopermax * rslopermax ; + double rslopes2max = rslopesmax * rslopesmax ; + double rsloper3max = rsloper2max * rslopermax ; + double rslopes3max = rslopes2max * rslopesmax ; + + double pidn0r = pi*denr*n0r ; + double pidn0s = pi*dens*n0s ; + + double precs1 = 4.*n0s*.65 ; + double precs2 = 4.*n0s*.44*sqrt(avts)*g5pbso2 ; + double qc0 = 4./3.*pi*denr*(r0*r0*r0)*xncr/den0 ; + double qck1 = .104*9.8*peaut/pow((xncr*denr),(1./3.))/xmyu*pow(den0,(4./3.)) ; + double precr1 = 2.*pi*n0r*.78 ; + double precr2 = 2.*pi*n0r*.31*sqrt(avtr)*g5pbro2 ; + double pacrr = pi*n0r*avtr*g3pbr*.25*eacrr ; + double pacrc = pi*n0s*avts*g3pbs*.25*eacrc ; + double roqimax = 2.08e22*pow(dimax,8.0) ; diff --git a/benchmarks/cuda-jitify/wsm5/experiments.json b/benchmarks/cuda-jitify/wsm5/experiments.json new file mode 100644 index 0000000..df8a012 --- /dev/null +++ b/benchmarks/cuda-jitify/wsm5/experiments.json @@ -0,0 +1,9 @@ +{ + "name": "wsm5", + "executables": { + "jitify": "main-jit.x" + }, + "inputs" : { + "default":"10" + } +} diff --git a/benchmarks/cuda-jitify/wsm5/kernel.cuh b/benchmarks/cuda-jitify/wsm5/kernel.cuh new file mode 100644 index 0000000..f3fad27 --- /dev/null +++ b/benchmarks/cuda-jitify/wsm5/kernel.cuh @@ -0,0 +1,787 @@ +const char* const kernel_h = "kernel.h\n" +"#include \"spt.h\"\n" +"template<\n" +" const int ids, const int ide, const int jds, const int jde, const int kds,\n" +" const int kde, const int ims, const int ime, const int jms, const int jme,\n" +" const int kms, const int kme, const int ips, const int ipe, const int jps,\n" +" const int jpe, const int kps, const int kpe>\n" +"__global__ void\n" +"wsm(float *__restrict__ th, const float *__restrict__ pii,\n" +" float *__restrict__ q, float *__restrict__ qc, float *__restrict__ qi,\n" +" float *__restrict__ qr, float *__restrict__ qs,\n" +" const float *__restrict__ den, const float *__restrict__ p,\n" +" const float *__restrict__ delz, float *__restrict__ rain,\n" +" float *__restrict__ rainncv, float *__restrict__ sr,\n" +" float *__restrict__ snow, float *__restrict__ snowncv, const float delt) {\n" +" float xlf, xmi, acrfac, vt2i, vt2s, supice, diameter;\n" +" float roqi0, xni0, qimax, value, source, factor, xlwork2;\n" +" float t_k, q_k, qr_k, qc_k, qs_k, qi_k, qs1_k, qs2_k, cpm_k, xl_k, w1_k, w2_k,\n" +" w3_k;\n" +"\n" +"#define hsub xls\n" +"#define hvap xlv0\n" +"#define cvap cpv\n" +" float ttp;\n" +" float dldt;\n" +" float xa;\n" +" float xb;\n" +" float dldti;\n" +" float xai;\n" +" float xbi;\n" +"\n" +" float qs1[MKX];\n" +" float qs2[MKX];\n" +" float rh1[MKX];\n" +" float rh2[MKX];\n" +"\n" +" if (ig < ide - ids + 1 && jg < jde - jds + 1) {\n" +"\n" +" int k;\n" +"\n" +"#include \"constants.h\"\n" +"\n" +" float t[MKX];\n" +" float cpm[MKX];\n" +" float xl[MKX];\n" +"\n" +" for (k = kps - 1; k <= kpe - 1; k++) {\n" +" t[k] = th[P3(ti, k, tj)] * pii[P3(ti, k, tj)];\n" +" }\n" +"\n" +" for (k = kps - 1; k <= kpe - 1; k++) {\n" +" if (qc[P3(ti, k, tj)] < 0.f) {\n" +" qc[P3(ti, k, tj)] = 0.f;\n" +" }\n" +" if (qi[P3(ti, k, tj)] < 0.f) {\n" +" qi[P3(ti, k, tj)] = 0.f;\n" +" }\n" +" if (qr[P3(ti, k, tj)] < 0.f) {\n" +" qr[P3(ti, k, tj)] = 0.f;\n" +" }\n" +" if (qs[P3(ti, k, tj)] < 0.f) {\n" +" qs[P3(ti, k, tj)] = 0.f;\n" +" }\n" +" }\n" +"\n" +" // latent heat for phase changes and heat capacity. neglect the\n" +" // changes during microphysical process calculation\n" +" // emanuel(1994)\n" +"\n" +"#define CPMCAL(x) (cpd * (1.f - MAX(x, qmin)) + MAX(x, qmin) * cpv)\n" +"#define XLCAL(x) (xlv0 - xlv1 * ((x)-t0c))\n" +"\n" +" for (k = kps - 1; k <= kpe - 1; k++) {\n" +" cpm[k] = CPMCAL(q[P3(ti, k, tj)]);\n" +" xl[k] = XLCAL(t[k]);\n" +" }\n" +"\n" +" // compute the minor time steps.\n" +"\n" +" float dtcldcr = 120.f;\n" +" int loops = delt / dtcldcr + .5f;\n" +"\n" +" loops = MAX(loops, 1);\n" +" float dtcld = delt / loops;\n" +" if (delt <= dtcldcr)\n" +" dtcld = delt;\n" +"\n" +" int loop;\n" +"\n" +" for (loop = 1; loop <= loops; loop++) {\n" +" // initialize the large scale variables\n" +" int mstep = 1;\n" +"\n" +" ttp = t0c + 0.01f;\n" +" dldt = cvap - cliq;\n" +" xa = -dldt / rv;\n" +" xb = xa + hvap / (rv * ttp);\n" +" dldti = cvap - cice;\n" +" xai = -dldti / rv;\n" +" xbi = xai + hsub / (rv * ttp);\n" +"\n" +" float tr, ltr, tt, pp, qq;\n" +"\n" +" for (k = kps - 1; k <= kpe - 1; k++) {\n" +"\n" +" pp = p[P3(ti, k, tj)];\n" +" tt = t[k];\n" +" tr = ttp / tt;\n" +" ltr = logf(tr);\n" +"\n" +" qq = psat * expf(ltr * (xa) + xb * (1.f - tr));\n" +" qq = ep2 * qq / (pp - qq);\n" +" qs1[k] = MAX(qq, qmin);\n" +" rh1[k] = MAX(q[P3(ti, k, tj)] / qs1[k], qmin);\n" +"\n" +" if (tt < ttp) {\n" +" qq = psat * expf(ltr * (xai) + xbi * (1.f - tr));\n" +" } else {\n" +" qq = psat * expf(ltr * (xa) + xb * (1.f - tr));\n" +" }\n" +" qq = ep2 * qq / (pp - qq);\n" +" qs2[k] = MAX(qq, qmin);\n" +" rh2[k] = MAX(q[P3(ti, k, tj)] / qs2[k], qmin);\n" +" }\n" +"\n" +" float prevp_reg;\n" +" float psdep_reg;\n" +" float praut_reg;\n" +" float psaut_reg;\n" +" float pracw_reg;\n" +" float psaci_reg;\n" +" float psacw_reg;\n" +" float pigen_reg;\n" +" float pidep_reg;\n" +" float pcond_reg;\n" +" float psmlt_reg;\n" +" float psevp_reg;\n" +" float xni[MKX];\n" +"\n" +" for (k = kps - 1; k <= kpe - 1; k++) {\n" +" xni[k] = 1.e3f;\n" +" }\n" +"\n" +"#define DIFFUS(x, y) (8.794e-5f * expf(logf(x) * (1.81f)) / (y))\n" +"#define VISCOS(x, y) (1.496e-6f * ((x)*sqrtf(x)) / ((x) + 120.f) / (y))\n" +"#define XKA(x, y) (1.414e3f * VISCOS((x), (y)) * (y))\n" +"#define DIFFAC(a, b, c, d, e) \\\n" +" ((d) * (a) * (a) / (XKA((c), (d)) * rv * (c) * (c)) + \\\n" +" 1.f / ((e)*DIFFUS((c), (b))))\n" +"#define VENFAC(a, b, c) \\\n" +" (expf(logf((VISCOS((b), (c)) / DIFFUS((b), (a)))) * ((.3333333f))) * \\\n" +" rsqrtf(VISCOS((b), (c))) * sqrtf(sqrtf(den0 / (c))))\n" +"\n" +"#define LAMDAR(x, y) sqrtf(sqrtf(pidn0r / ((x) * (y))))\n" +"#define LAMDAS(x, y, z) sqrtf(sqrtf(pidn0s *(z) / ((x) * (y))))\n" +"\n" +" // calculate mstep for this column\n" +"\n" +" float rsloper[MKX];\n" +" float rslopebr[MKX];\n" +" float rslope2r[MKX];\n" +" float rslope3r[MKX];\n" +" float rslopes[MKX];\n" +" float rslopebs[MKX];\n" +" float rslope2s[MKX];\n" +" float rslope3s[MKX];\n" +" float denfac[MKX];\n" +" float n0sfac[MKX];\n" +"\n" +" float w1[MKX];\n" +" float w2[MKX];\n" +" float w3[MKX];\n" +"\n" +" float w;\n" +" float rmstep;\n" +" int numdt;\n" +" for (k = kps - 1; k <= kpe - 1; k++) {\n" +" float supcol = t0c - t[k];\n" +" n0sfac[k] = MAX(MIN(expf(alpha * supcol), n0smax / n0s), 1.f);\n" +" if (qr[P3(ti, k, tj)] <= qcrmin) {\n" +" rsloper[k] = rslopermax;\n" +" rslopebr[k] = rsloperbmax;\n" +" rslope2r[k] = rsloper2max;\n" +" rslope3r[k] = rsloper3max;\n" +" } else {\n" +" rsloper[k] = 1.f / LAMDAR(qr[P3(ti, k, tj)], den[P3(ti, k, tj)]);\n" +" rslopebr[k] = expf(logf(rsloper[k]) * bvtr);\n" +" rslope2r[k] = rsloper[k] * rsloper[k];\n" +" rslope3r[k] = rslope2r[k] * rsloper[k];\n" +" }\n" +" if (qs[P3(ti, k, tj)] <= qcrmin) {\n" +" rslopes[k] = rslopesmax;\n" +" rslopebs[k] = rslopesbmax;\n" +" rslope2s[k] = rslopes2max;\n" +" rslope3s[k] = rslopes3max;\n" +" } else {\n" +" rslopes[k] =\n" +" 1.f / LAMDAS(qs[P3(ti, k, tj)], den[P3(ti, k, tj)], n0sfac[k]);\n" +" rslopebs[k] = expf(logf(rslopes[k]) * bvts);\n" +" rslope2s[k] = rslopes[k] * rslopes[k];\n" +" rslope3s[k] = rslope2s[k] * rslopes[k];\n" +" }\n" +" denfac[k] = sqrtf(den0 / den[P3(ti, k, tj)]);\n" +" w1[k] = pvtr * rslopebr[k] * denfac[k] / delz[P3(ti, k, tj)];\n" +" w2[k] = pvts * rslopebs[k] * denfac[k] / delz[P3(ti, k, tj)];\n" +"\n" +" w = MAX(w1[k], w2[k]);\n" +" numdt = MAX((int)trunc(w * dtcld + .5f + .5f), 1);\n" +" if (numdt >= mstep)\n" +" mstep = numdt;\n" +" //-------------------------------------------------------------\n" +" // Ni: ice crystal number concentration [HDC 5c]\n" +" //-------------------------------------------------------------\n" +" float temp = (den[P3(ti, k, tj)] * MAX(qi[P3(ti, k, tj)], qmin));\n" +" temp = sqrtf(sqrtf(temp * temp * temp));\n" +" xni[k] = MIN(MAX(5.38e7f * temp, 1.e3f), 1.e6f);\n" +" }\n" +" rmstep = 1.f / mstep;\n" +"\n" +" int n;\n" +" float dtcldden, coeres, rdelz;\n" +"\n" +" float den_k, falk1_k, falk1_kp1, fall1_k, delz_k, delz_kp1;\n" +" float falk2_k, falk2_kp1, fall2_k;\n" +"\n" +" for (n = 1; n <= mstep; n++) {\n" +" k = kpe - 1;\n" +" den_k = den[P3(ti, k, tj)];\n" +" falk1_kp1 = den_k * qr[P3(ti, k, tj)] * w1[k] * rmstep;\n" +" falk2_kp1 = den_k * qs[P3(ti, k, tj)] * w2[k] * rmstep;\n" +" dtcldden = dtcld / den_k;\n" +" qr[P3(ti, k, tj)] = MAX(qr[P3(ti, k, tj)] - falk1_kp1 * dtcldden, 0.f);\n" +" qs[P3(ti, k, tj)] = MAX(qs[P3(ti, k, tj)] - falk2_kp1 * dtcldden, 0.f);\n" +" delz_kp1 = delz[P3(ti, k, tj)];\n" +" for (k = kpe - 2; k >= kps - 1; k--) {\n" +" den_k = den[P3(ti, k, tj)];\n" +" falk1_k = den_k * qr[P3(ti, k, tj)] * w1[k] * rmstep;\n" +" fall1_k = falk1_k;\n" +" falk2_k = den_k * qs[P3(ti, k, tj)] * w2[k] * rmstep;\n" +" fall2_k = falk2_k;\n" +" dtcldden = dtcld / den_k;\n" +" delz_k = delz[P3(ti, k, tj)];\n" +" rdelz = 1.f / delz_k;\n" +" qr[P3(ti, k, tj)] =\n" +" MAX(qr[P3(ti, k, tj)] -\n" +" (falk1_k - falk1_kp1 * delz_kp1 * rdelz) * dtcldden,\n" +" 0.f);\n" +" qs[P3(ti, k, tj)] =\n" +" MAX(qs[P3(ti, k, tj)] -\n" +" (falk2_k - falk2_kp1 * delz_kp1 * rdelz) * dtcldden,\n" +" 0.f);\n" +" delz_kp1 = delz_k;\n" +" falk1_kp1 = falk1_k;\n" +" falk2_kp1 = falk2_k;\n" +" }\n" +"\n" +" for (k = kpe - 1; k >= kps - 1; k--) {\n" +" if (t[k] > t0c && qs[P3(ti, k, tj)] > 0.f) {\n" +" xlf = xlf0;\n" +" w3[k] = VENFAC(p[P3(ti, k, tj)], t[k], den[P3(ti, k, tj)]);\n" +" coeres = rslope2s[k] * sqrtf(rslopes[k] * rslopebs[2]);\n" +" psmlt_reg = XKA(t[k], den[P3(ti, k, tj)]) / xlf * (t0c - t[k]) *\n" +" pi / 2.f * n0sfac[k] *\n" +" (precs1 * rslope2s[k] + precs2 * w3[k] * coeres);\n" +" psmlt_reg = MIN(\n" +" MAX(psmlt_reg * dtcld * rmstep, -qs[P3(ti, k, tj)] * rmstep),\n" +" 0.f);\n" +" qs[P3(ti, k, tj)] += psmlt_reg;\n" +" qr[P3(ti, k, tj)] -= psmlt_reg;\n" +" t[k] += xlf / CPMCAL(q[P3(ti, k, tj)]) * psmlt_reg;\n" +" }\n" +" }\n" +" }\n" +"\n" +" //---------------------------------------------------------------\n" +" // Vice [ms-1] : fallout of ice crystal [HDC 5a]\n" +" //---------------------------------------------------------------\n" +" mstep = 1;\n" +" numdt = 1;\n" +" for (k = kpe - 1; k >= kps - 1; k--) {\n" +" if (qi[P3(ti, k, tj)] <= 0.f) {\n" +" w2[k] = 0.f;\n" +" } else {\n" +" xmi = den[P3(ti, k, tj)] * qi[P3(ti, k, tj)] / xni[k];\n" +" diameter = MAX(MIN(dicon * sqrtf(xmi), dimax), 1.e-25f);\n" +" w1[k] = 1.49e4f * expf(logf(diameter) * (1.31f));\n" +" w2[k] = w1[k] / delz[P3(ti, k, tj)];\n" +" }\n" +" numdt = MAX((int)trunc(w2[k] * dtcld + .5f + .5f), 1);\n" +" if (numdt > mstep)\n" +" mstep = numdt;\n" +" }\n" +" rmstep = 1.f / mstep;\n" +"\n" +" float falkc_k, falkc_kp1, fallc_k, fallc_kp1;\n" +" for (n = 1; n <= mstep; n++) {\n" +" k = kpe - 1;\n" +" den_k = den[P3(ti, k, tj)];\n" +" falkc_kp1 = den_k * qi[P3(ti, k, tj)] * w2[k] * rmstep;\n" +" fallc_kp1 = fallc_kp1 + falkc_kp1;\n" +" qi[P3(ti, k, tj)] =\n" +" MAX(qi[P3(ti, k, tj)] - falkc_kp1 * dtcld / den_k, 0.f);\n" +" delz_kp1 = delz[P3(ti, k, tj)];\n" +" for (k = kpe - 2; k >= kps - 1; k--) {\n" +" den_k = den[P3(ti, k, tj)];\n" +" falkc_k = den_k * qi[P3(ti, k, tj)] * w2[k] * rmstep;\n" +" fallc_k = fallc_k + falkc_k;\n" +" delz_k = delz[P3(ti, k, tj)];\n" +" qi[P3(ti, k, tj)] =\n" +" MAX(qi[P3(ti, k, tj)] -\n" +" (falkc_k - falkc_kp1 * delz_kp1 / delz_k) * dtcld / den_k,\n" +" 0.f);\n" +" delz_kp1 = delz_k;\n" +" falkc_kp1 = falkc_k;\n" +" fallc_kp1 = fallc_k;\n" +" }\n" +" }\n" +" float fallsum = fall1_k + fall2_k + fallc_k;\n" +" float fallsum_qsi = fall2_k + fallc_k;\n" +"\n" +" rainncv[P2(ti, tj)] = 0.f;\n" +" if (fallsum > 0.f) {\n" +" rainncv[P2(ti, tj)] =\n" +" fallsum * delz[P3(ti, 1, tj)] / denr * dtcld * 1000.f;\n" +" rain[P2(ti, tj)] =\n" +" fallsum * delz[P3(ti, 1, tj)] / denr * dtcld * 1000.f +\n" +" rain[P2(ti, tj)];\n" +" }\n" +" snowncv[P2(ti, tj)] = 0.f;\n" +" if (fallsum_qsi > 0.f) {\n" +" snowncv[P2(ti, tj)] =\n" +" fallsum_qsi * delz[P3(ti, 0, tj)] / denr * dtcld * 1000.f;\n" +" snow[P2(ti, tj)] =\n" +" fallsum_qsi * delz[P3(ti, 0, tj)] / denr * dtcld * 1000.f +\n" +" snow[P2(ti, tj)];\n" +" }\n" +" sr[P2(ti, tj)] = 0.f;\n" +" if (fallsum > 0.f)\n" +" sr[P2(ti, tj)] = fallsum_qsi * delz[P3(ti, 0, tj)] / denr * dtcld *\n" +" 1000.f / (rainncv[P2(ti, tj)] + 1.e-12f);\n" +"\n" +" //---------------------------------------------------------------\n" +" // pimlt: instantaneous melting of cloud ice [HL A47] [RH83 A28]\n" +" // (T>T0: I->C)\n" +" //---------------------------------------------------------------\n" +"\n" +" for (k = kps - 1; k <= kpe - 1; k++) {\n" +"\n" +" // note -- many of these are turned into scalars of form name_reg by\n" +" // _def_ above so that they will be stored in registers\n" +" prevp_reg = 0.f;\n" +" psdep_reg = 0.f;\n" +" praut_reg = 0.f;\n" +" psaut_reg = 0.f;\n" +" pracw_reg = 0.f;\n" +" psaci_reg = 0.f;\n" +" psacw_reg = 0.f;\n" +" pigen_reg = 0.f;\n" +" pidep_reg = 0.f;\n" +" pcond_reg = 0.f;\n" +" psevp_reg = 0.f;\n" +"\n" +" q_k = q[P3(ti, k, tj)];\n" +" t_k = t[k];\n" +" qr_k = qr[P3(ti, k, tj)];\n" +" qc_k = qc[P3(ti, k, tj)];\n" +" qs_k = qs[P3(ti, k, tj)];\n" +" qi_k = qi[P3(ti, k, tj)];\n" +" qs1_k = qs1[k];\n" +" qs2_k = qs2[k];\n" +" cpm_k = cpm[k];\n" +" xl_k = xl[k];\n" +"\n" +" float supcol = t0c - t_k;\n" +" xlf = xls - xl_k;\n" +" if (supcol < 0.f)\n" +" xlf = xlf0;\n" +" if (supcol < 0.f && qi_k > 0.f) {\n" +" qc_k = qc_k + qi_k;\n" +" t_k = t_k - xlf / cpm_k * qi_k;\n" +" qi_k = 0.f;\n" +" }\n" +" //---------------------------------------------------------------\n" +" // pihmf: homogeneous freezing of cloud water below -40c [HL A45]\n" +" // (T<-40C: C->I)\n" +" //---------------------------------------------------------------\n" +" if (supcol > 40.f && qc_k > 0.f) {\n" +" qi_k = qi_k + qc_k;\n" +" t_k = t_k + xlf / cpm_k * qc_k;\n" +" qc_k = 0.f;\n" +" }\n" +" //---------------------------------------------------------------\n" +" // pihtf: heterogeneous freezing of cloud water [HL A44]\n" +" // (T0>T>-40C: C->I)\n" +" //---------------------------------------------------------------\n" +" if (supcol > 0.f && qc_k > 0.f) {\n" +" float pfrzdtc =\n" +" MIN(pfrz1 * (expf(pfrz2 * supcol) - 1.f) * den[P3(ti, k, tj)] /\n" +" denr / xncr * qc_k * qc_k * dtcld,\n" +" qc_k);\n" +" qi_k = qi_k + pfrzdtc;\n" +" t_k = t_k + xlf / cpm_k * pfrzdtc;\n" +" qc_k = qc_k - pfrzdtc;\n" +" }\n" +" //---------------------------------------------------------------\n" +" // psfrz: freezing of rain water [HL A20] [LFO 45]\n" +" // (TS)\n" +" //---------------------------------------------------------------\n" +" if (supcol > 0.f && qr_k > 0.f) {\n" +" float temp = rsloper[k];\n" +" temp = temp * temp * temp * temp * temp * temp * temp;\n" +" float pfrzdtr =\n" +" MIN(20.f * (pi * pi) * pfrz1 * n0r * denr / den[P3(ti, k, tj)] *\n" +" (expf(pfrz2 * supcol) - 1.f) * temp * dtcld,\n" +" qr_k);\n" +" qs_k = qs_k + pfrzdtr;\n" +" t_k = t_k + xlf / cpm_k * pfrzdtr;\n" +" qr_k = qr_k - pfrzdtr;\n" +" }\n" +"\n" +" //----------------------------------------------------------------\n" +" // rsloper: reverse of the slope parameter of the rain(m)\n" +" // xka: thermal conductivity of air(jm-1s-1k-1)\n" +" // work1: the thermodynamic term in the denominator associated with\n" +" // heat conduction and vapor diffusion\n" +" // (ry88, y93, h85)\n" +" // work2: parameter associated with the ventilation effects(y93)\n" +"\n" +" n0sfac[k] = MAX(MIN(expf(alpha * supcol), n0smax / n0s), 1.f);\n" +" if (qr_k <= qcrmin) {\n" +" rsloper[k] = rslopermax;\n" +" rslopebr[k] = rsloperbmax;\n" +" rslope2r[k] = rsloper2max;\n" +" rslope3r[k] = rsloper3max;\n" +" } else {\n" +" rsloper[k] =\n" +" 1.f / (sqrtf(sqrtf(pidn0r / ((qr_k) * (den[P3(ti, k, tj)])))));\n" +" rslopebr[k] = expf(logf(rsloper[k]) * bvtr);\n" +" rslope2r[k] = rsloper[k] * rsloper[k];\n" +" rslope3r[k] = rslope2r[k] * rsloper[k];\n" +" }\n" +" if (qs_k <= qcrmin) {\n" +" rslopes[k] = rslopesmax;\n" +" rslopebs[k] = rslopesbmax;\n" +" rslope2s[k] = rslopes2max;\n" +" rslope3s[k] = rslopes3max;\n" +" } else {\n" +" rslopes[k] = 1.f / (sqrtf(sqrtf(pidn0s * (n0sfac[k]) /\n" +" ((qs_k) * (den[P3(ti, k, tj)])))));\n" +" rslopebs[k] = expf(logf(rslopes[k]) * bvts);\n" +" rslope2s[k] = rslopes[k] * rslopes[k];\n" +" rslope3s[k] = rslope2s[k] * rslopes[k];\n" +" }\n" +"\n" +" w1_k = DIFFAC(xl_k, p[P3(ti, k, tj)], t_k, den[P3(ti, k, tj)], qs1_k);\n" +" w2_k = DIFFAC(xls, p[P3(ti, k, tj)], t_k, den[P3(ti, k, tj)], qs2_k);\n" +" w3_k = VENFAC(p[P3(ti, k, tj)], t_k, den[P3(ti, k, tj)]);\n" +"\n" +" //\n" +" //===============================================================\n" +" //\n" +" // warm rain processes\n" +" //\n" +" // - follows the processes in RH83 and LFO except for autoconcersion\n" +" //\n" +" //===============================================================\n" +" //\n" +" float supsat = MAX(q_k, qmin) - qs1_k;\n" +" float satdt = supsat / dtcld;\n" +" //---------------------------------------------------------------\n" +" // praut: auto conversion rate from cloud to rain [HDC 16]\n" +" // (C->R)\n" +" //---------------------------------------------------------------\n" +" if (qc_k > qc0) {\n" +" praut_reg = qck1 * expf(logf(qc_k) * ((7.f / 3.f)));\n" +" praut_reg = MIN(praut_reg, qc_k / dtcld);\n" +" }\n" +" //---------------------------------------------------------------\n" +" // pracw: accretion of cloud water by rain [HL A40] [LFO 51]\n" +" // (C->R)\n" +" //---------------------------------------------------------------\n" +" if (qr_k > qcrmin && qc_k > qmin) {\n" +" pracw_reg = MIN(pacrr * rslope3r[k] * rslopebr[k] * qc_k * denfac[k],\n" +" qc_k / dtcld);\n" +" }\n" +" //---------------------------------------------------------------\n" +" // prevp: evaporation/condensation rate of rain [HDC 14]\n" +" // (V->R or R->V)\n" +" //---------------------------------------------------------------\n" +" if (qr_k > 0.f) {\n" +" coeres = rslope2r[k] * sqrtf(rsloper[k] * rslopebr[k]);\n" +" prevp_reg = (rh1[k] - 1.f) *\n" +" (precr1 * rslope2r[k] + precr2 * w3_k * coeres) / w1_k;\n" +" if (prevp_reg < 0.f) {\n" +" prevp_reg = MAX(prevp_reg, -qr_k / dtcld);\n" +" prevp_reg = MAX(prevp_reg, satdt / 2.f);\n" +" } else {\n" +" prevp_reg = MIN(prevp_reg, satdt / 2.f);\n" +" }\n" +" }\n" +"\n" +" //\n" +" //===============================================================\n" +" //\n" +" // cold rain processes\n" +" //\n" +" // - follows the revised ice microphysics processes in HDC\n" +" // - the processes same as in RH83 and RH84 and LFO behave\n" +" // following ice crystal hapits defined in HDC, inclduing\n" +" // intercept parameter for snow (n0s), ice crystal number\n" +" // concentration (ni), ice nuclei number concentration\n" +" // (n0i), ice diameter (d)\n" +" //\n" +" //===============================================================\n" +" //\n" +" float rdtcld = 1.f / dtcld;\n" +" supsat = MAX(q_k, qmin) - qs2_k;\n" +" satdt = supsat / dtcld;\n" +" int ifsat = 0;\n" +" //-------------------------------------------------------------\n" +" // Ni: ice crystal number concentraiton [HDC 5c]\n" +" //-------------------------------------------------------------\n" +" float temp = (den[P3(ti, k, tj)] * MAX(qi_k, qmin));\n" +" temp = sqrtf(sqrtf(temp * temp * temp));\n" +" xni[k] = MIN(MAX(5.38e7f * temp, 1.e3f), 1.e6f);\n" +" float eacrs = expf(0.07f * (-supcol));\n" +" //-------------------------------------------------------------\n" +" // psacw: Accretion of cloud water by snow [HL A7] [LFO 24]\n" +" // (TS, and T>=T0: C->R)\n" +" //-------------------------------------------------------------\n" +" if (qs_k > qcrmin && qc_k > qmin) {\n" +" psacw_reg = MIN(pacrc * n0sfac[k] * rslope3s[k] * rslopebs[k] * qc_k *\n" +" denfac[k],\n" +" qc_k * rdtcld);\n" +" }\n" +" //\n" +" if (supcol > 0) {\n" +" if (qs_k > qcrmin && qi_k > qmin) {\n" +" xmi = den[P3(ti, k, tj)] * qi_k / xni[k];\n" +" diameter = MIN(dicon * sqrtf(xmi), dimax);\n" +" vt2i = 1.49e4f * powf(diameter, 1.31f);\n" +" vt2s = pvts * rslopebs[k] * denfac[k];\n" +" //-------------------------------------------------------------\n" +" // psaci: Accretion of cloud ice by rain [HDC 10]\n" +" // (TS)\n" +" //-------------------------------------------------------------\n" +" acrfac = 2.f * rslope3s[k] + 2.f * diameter * rslope2s[k] +\n" +" diameter * diameter * rslopes[k];\n" +" psaci_reg = pi * qi_k * eacrs * n0s * n0sfac[k] * abs(vt2s - vt2i) *\n" +" acrfac * .25f;\n" +" }\n" +" //-------------------------------------------------------------\n" +" // pidep: Deposition/Sublimation rate of ice [HDC 9]\n" +" // (TI or I->V)\n" +" //-------------------------------------------------------------\n" +" if (qi_k > 0 && ifsat != 1) {\n" +" xmi = den[P3(ti, k, tj)] * qi_k / xni[k];\n" +" diameter = dicon * sqrtf(xmi);\n" +" pidep_reg = 4.f * diameter * xni[k] * (rh2[k] - 1.f) / w2_k;\n" +" supice = satdt - prevp_reg;\n" +" if (pidep_reg < 0.f) {\n" +" pidep_reg = MAX(MAX(pidep_reg, satdt * .5f), supice);\n" +" pidep_reg = MAX(pidep_reg, -qi_k * rdtcld);\n" +" } else {\n" +" pidep_reg = MIN(MIN(pidep_reg, satdt * .5f), supice);\n" +" }\n" +" if (abs(prevp_reg + pidep_reg) >= abs(satdt))\n" +" ifsat = 1;\n" +" }\n" +" //-------------------------------------------------------------\n" +" // psdep: deposition/sublimation rate of snow [HDC 14]\n" +" // (V->S or S->V)\n" +" //-------------------------------------------------------------\n" +" if (qs_k > 0.f && ifsat != 1) {\n" +" coeres = rslope2s[k] * sqrtf(rslopes[k] * rslopebs[k]);\n" +" psdep_reg = (rh2[k] - 1.f) * n0sfac[k] *\n" +" (precs1 * rslope2s[k] + precs2 * w3_k * coeres) / w2_k;\n" +" supice = satdt - prevp_reg - pidep_reg;\n" +" if (psdep_reg < 0.f) {\n" +" psdep_reg = MAX(psdep_reg, -qs_k * rdtcld);\n" +" psdep_reg = MAX(MAX(psdep_reg, satdt * .5f), supice);\n" +" } else {\n" +" psdep_reg = MIN(MIN(psdep_reg, satdt * .5f), supice);\n" +" }\n" +" if (abs(prevp_reg + pidep_reg + psdep_reg) >= abs(satdt))\n" +" ifsat = 1;\n" +" }\n" +" //-------------------------------------------------------------\n" +" // pigen: generation(nucleation) of ice from vapor [HL A50] [HDC 7-8]\n" +" // (TI)\n" +" //-------------------------------------------------------------\n" +" if (supsat > 0 && ifsat != 1) {\n" +" supice = satdt - prevp_reg - pidep_reg - psdep_reg;\n" +" xni0 = 1.e3f * expf(0.1f * supcol);\n" +" roqi0 = 4.92e-11f * expf(logf(xni0) * (1.33f));\n" +" pigen_reg = MAX(0.f, (roqi0 / den[P3(ti, k, tj)] - MAX(qi_k, 0.f)) *\n" +" rdtcld);\n" +" pigen_reg = MIN(MIN(pigen_reg, satdt), supice);\n" +" }\n" +" //\n" +" //-------------------------------------------------------------\n" +" // psaut: conversion(aggregation) of ice to snow [HDC 12]\n" +" // (TS)\n" +" //-------------------------------------------------------------\n" +" if (qi_k > 0.f) {\n" +" qimax = roqimax / den[P3(ti, k, tj)];\n" +" psaut_reg = MAX(0.f, (qi_k - qimax) * rdtcld);\n" +" }\n" +" }\n" +" //-------------------------------------------------------------\n" +" // psevp: Evaporation of melting snow [HL A35] [RH83 A27]\n" +" // (T>T0: S->V)\n" +" //-------------------------------------------------------------\n" +" if (supcol < 0.f) {\n" +" if (qs_k > 0.f && rh1[k] < 1.f) {\n" +" psevp_reg = psdep_reg * w2_k / w1_k;\n" +" } // asked Jimy about this, 11.6.07, JM\n" +" psevp_reg = MIN(MAX(psevp_reg, -qs_k * rdtcld), 0.f);\n" +" }\n" +"\n" +" // check mass conservation of generation terms and feedback to the\n" +" // large scale\n" +" if (t_k <= t0c) {\n" +" //\n" +" // cloud water\n" +" //\n" +" value = MAX(qmin, qc_k);\n" +" source = (praut_reg + pracw_reg + psacw_reg) * dtcld;\n" +" if (source > value) {\n" +" factor = value / source;\n" +" praut_reg = praut_reg * factor;\n" +" pracw_reg = pracw_reg * factor;\n" +" psacw_reg = psacw_reg * factor;\n" +" }\n" +" //\n" +" // cloud ice\n" +" //\n" +" value = MAX(qmin, qi_k);\n" +" source = (psaut_reg + psaci_reg - pigen_reg - pidep_reg) * dtcld;\n" +" if (source > value) {\n" +" factor = value / source;\n" +" psaut_reg = psaut_reg * factor;\n" +" psaci_reg = psaci_reg * factor;\n" +" pigen_reg = pigen_reg * factor;\n" +" pidep_reg = pidep_reg * factor;\n" +" }\n" +"\n" +" //\n" +" // rain (added for WRFV3.0.1)\n" +" //\n" +" value = MAX(qmin, qr_k);\n" +" source = (-praut_reg + pracw_reg - prevp_reg) * dtcld;\n" +" if (source > value) {\n" +" factor = value / source;\n" +" praut_reg = praut_reg * factor;\n" +" pracw_reg = pracw_reg * factor;\n" +" prevp_reg = prevp_reg * factor;\n" +" }\n" +" //\n" +" // snow (added for WRFV3.0.1)\n" +" //\n" +" value = MAX(qmin, qs_k);\n" +" source = (-psdep_reg + psaut_reg - psaci_reg - psacw_reg) * dtcld;\n" +" if (source > value) {\n" +" factor = value / source;\n" +" psdep_reg = psdep_reg * factor;\n" +" psaut_reg = psaut_reg * factor;\n" +" psaci_reg = psaci_reg * factor;\n" +" psacw_reg = psacw_reg * factor;\n" +" }\n" +" // (end added for WRFV3.0.1)\n" +"\n" +" //\n" +" w3_k = -(prevp_reg + psdep_reg + pigen_reg + pidep_reg);\n" +" // update\n" +" q_k = q_k + w3_k * dtcld;\n" +" qc_k = MAX(qc_k - (praut_reg + pracw_reg + psacw_reg) * dtcld, 0.f);\n" +" qr_k = MAX(qr_k + (praut_reg + pracw_reg + prevp_reg) * dtcld, 0.f);\n" +" qi_k = MAX(qi_k - (psaut_reg + psaci_reg - pigen_reg - pidep_reg) *\n" +" dtcld,\n" +" 0.f);\n" +" qs_k = MAX(qs_k + (psdep_reg + psaut_reg + psaci_reg + psacw_reg) *\n" +" dtcld,\n" +" 0.f);\n" +" xlf = xls - xl_k;\n" +" xlwork2 = -xls * (psdep_reg + pidep_reg + pigen_reg) -\n" +" xl_k * prevp_reg - xlf * psacw_reg;\n" +" t_k = t_k - xlwork2 / cpm_k * dtcld;\n" +" } else {\n" +" //\n" +" // cloud water\n" +" //\n" +" value = MAX(qmin, qc_k);\n" +" source = (praut_reg + pracw_reg + psacw_reg) * dtcld;\n" +" if (source > value) {\n" +" factor = value / source;\n" +" praut_reg = praut_reg * factor;\n" +" pracw_reg = pracw_reg * factor;\n" +" psacw_reg = psacw_reg * factor;\n" +" }\n" +" //\n" +" // rain (added for WRFV3.0.1)\n" +" //\n" +" value = MAX(qmin, qr_k);\n" +" source = (-praut_reg - pracw_reg - prevp_reg - psacw_reg) * dtcld;\n" +" if (source > value) {\n" +" factor = value / source;\n" +" praut_reg = praut_reg * factor;\n" +" pracw_reg = pracw_reg * factor;\n" +" prevp_reg = prevp_reg * factor;\n" +" psacw_reg = psacw_reg * factor;\n" +" }\n" +" // (end added for WRFV3.0.1)\n" +" //\n" +" // snow\n" +" //\n" +" value = MAX(qcrmin, qs_k);\n" +" source = (-psevp_reg) * dtcld;\n" +" if (source > value) {\n" +" factor = value / source;\n" +" psevp_reg = psevp_reg * factor;\n" +" }\n" +" w3_k = -(prevp_reg + psevp_reg);\n" +" // update\n" +" q_k = q_k + w3_k * dtcld;\n" +" qc_k = MAX(qc_k - (praut_reg + pracw_reg + psacw_reg) * dtcld, 0.f);\n" +" qr_k = MAX(qr_k + (praut_reg + pracw_reg + prevp_reg + psacw_reg) *\n" +" dtcld,\n" +" 0.f);\n" +" qs_k = MAX(qs_k + psevp_reg * dtcld, 0.f);\n" +" xlf = xls - xl_k;\n" +" xlwork2 = -xl_k * (prevp_reg + psevp_reg);\n" +" t_k = t_k - xlwork2 / cpm_k * dtcld;\n" +" }\n" +" //\n" +" // Inline expansion for fpvs\n" +" cvap = cpv;\n" +" ttp = t0c + 0.01f;\n" +" dldt = cvap - cliq;\n" +" xa = -dldt / rv;\n" +" xb = xa + hvap / (rv * ttp);\n" +" dldti = cvap - cice;\n" +" xai = -dldti / rv;\n" +" xbi = xai + hsub / (rv * ttp);\n" +" tr = ttp / t_k;\n" +" qs1_k = psat * expf(logf(tr) * (xa)) * expf(xb * (1.f - tr));\n" +" qs1_k = ep2 * qs1_k / (p[P3(ti, k, tj)] - qs1_k);\n" +" qs1_k = MAX(qs1_k, qmin);\n" +"\n" +" // pcond: condensational/evaporational rate of cloud water [HL A46]\n" +" // [RH83 A6]\n" +" // if there exists additional water vapor condensated/if\n" +" // evaporation of cloud water is not enough to remove subsaturation\n" +"\n" +" w1_k = ((MAX(q_k, qmin) - (qs1_k)) /\n" +" (1.f +\n" +" (xl_k) * (xl_k) / (rv * (cpm_k)) * (qs1_k) / ((t_k) * (t_k))));\n" +" // w3_k = qc_k+w1_k ; NOT USED\n" +" pcond_reg = MIN(MAX(w1_k / dtcld, 0.f), MAX(q_k, 0.f) / dtcld);\n" +" if (qc_k > 0.f && w1_k < 0.f) {\n" +" pcond_reg = MAX(w1_k, -qc_k) / dtcld;\n" +" }\n" +" q_k = q_k - pcond_reg * dtcld;\n" +" qc_k = MAX(qc_k + pcond_reg * dtcld, 0.f);\n" +" t_k = t_k + pcond_reg * xl_k / cpm_k * dtcld;\n" +"\n" +" // padding for small values\n" +" if (qc_k <= qmin)\n" +" qc_k = 0.f;\n" +" if (qi_k <= qmin)\n" +" qi_k = 0.f;\n" +"\n" +" q[P3(ti, k, tj)] = q_k;\n" +" t[k] = t_k;\n" +" qr[P3(ti, k, tj)] = qr_k;\n" +" qc[P3(ti, k, tj)] = qc_k;\n" +" qs[P3(ti, k, tj)] = qs_k;\n" +" qi[P3(ti, k, tj)] = qi_k;\n" +" qs1[k] = qs1_k;\n" +" }\n" +" }\n" +"\n" +" for (k = kps - 1; k <= kpe - 1; k++)\n" +" th[P3(ti, k, tj)] = t[k] / pii[P3(ti, k, tj)];\n" +" }\n" +"}\n" +; diff --git a/benchmarks/cuda-jitify/wsm5/kernel.h b/benchmarks/cuda-jitify/wsm5/kernel.h new file mode 100644 index 0000000..3777256 --- /dev/null +++ b/benchmarks/cuda-jitify/wsm5/kernel.h @@ -0,0 +1,784 @@ +#include "spt.h" +__global__ void +wsm(float *__restrict__ th, const float *__restrict__ pii, + float *__restrict__ q, float *__restrict__ qc, float *__restrict__ qi, + float *__restrict__ qr, float *__restrict__ qs, + const float *__restrict__ den, const float *__restrict__ p, + const float *__restrict__ delz, float *__restrict__ rain, + float *__restrict__ rainncv, float *__restrict__ sr, + float *__restrict__ snow, float *__restrict__ snowncv, const float delt, + const int ids, const int ide, const int jds, const int jde, const int kds, + const int kde, const int ims, const int ime, const int jms, const int jme, + const int kms, const int kme, const int ips, const int ipe, const int jps, + const int jpe, const int kps, const int kpe) { + float xlf, xmi, acrfac, vt2i, vt2s, supice, diameter; + float roqi0, xni0, qimax, value, source, factor, xlwork2; + float t_k, q_k, qr_k, qc_k, qs_k, qi_k, qs1_k, qs2_k, cpm_k, xl_k, w1_k, w2_k, + w3_k; + +#define hsub xls +#define hvap xlv0 +#define cvap cpv + float ttp; + float dldt; + float xa; + float xb; + float dldti; + float xai; + float xbi; + + float qs1[MKX]; + float qs2[MKX]; + float rh1[MKX]; + float rh2[MKX]; + + if (ig < ide - ids + 1 && jg < jde - jds + 1) { + + int k; + +#include "constants.h" + + float t[MKX]; + float cpm[MKX]; + float xl[MKX]; + + for (k = kps - 1; k <= kpe - 1; k++) { + t[k] = th[P3(ti, k, tj)] * pii[P3(ti, k, tj)]; + } + + for (k = kps - 1; k <= kpe - 1; k++) { + if (qc[P3(ti, k, tj)] < 0.f) { + qc[P3(ti, k, tj)] = 0.f; + } + if (qi[P3(ti, k, tj)] < 0.f) { + qi[P3(ti, k, tj)] = 0.f; + } + if (qr[P3(ti, k, tj)] < 0.f) { + qr[P3(ti, k, tj)] = 0.f; + } + if (qs[P3(ti, k, tj)] < 0.f) { + qs[P3(ti, k, tj)] = 0.f; + } + } + + // latent heat for phase changes and heat capacity. neglect the + // changes during microphysical process calculation + // emanuel(1994) + +#define CPMCAL(x) (cpd * (1.f - MAX(x, qmin)) + MAX(x, qmin) * cpv) +#define XLCAL(x) (xlv0 - xlv1 * ((x)-t0c)) + + for (k = kps - 1; k <= kpe - 1; k++) { + cpm[k] = CPMCAL(q[P3(ti, k, tj)]); + xl[k] = XLCAL(t[k]); + } + + // compute the minor time steps. + + float dtcldcr = 120.f; + int loops = delt / dtcldcr + .5f; + + loops = MAX(loops, 1); + float dtcld = delt / loops; + if (delt <= dtcldcr) + dtcld = delt; + + int loop; + + for (loop = 1; loop <= loops; loop++) { + // initialize the large scale variables + int mstep = 1; + + ttp = t0c + 0.01f; + dldt = cvap - cliq; + xa = -dldt / rv; + xb = xa + hvap / (rv * ttp); + dldti = cvap - cice; + xai = -dldti / rv; + xbi = xai + hsub / (rv * ttp); + + float tr, ltr, tt, pp, qq; + + for (k = kps - 1; k <= kpe - 1; k++) { + + pp = p[P3(ti, k, tj)]; + tt = t[k]; + tr = ttp / tt; + ltr = logf(tr); + + qq = psat * expf(ltr * (xa) + xb * (1.f - tr)); + qq = ep2 * qq / (pp - qq); + qs1[k] = MAX(qq, qmin); + rh1[k] = MAX(q[P3(ti, k, tj)] / qs1[k], qmin); + + if (tt < ttp) { + qq = psat * expf(ltr * (xai) + xbi * (1.f - tr)); + } else { + qq = psat * expf(ltr * (xa) + xb * (1.f - tr)); + } + qq = ep2 * qq / (pp - qq); + qs2[k] = MAX(qq, qmin); + rh2[k] = MAX(q[P3(ti, k, tj)] / qs2[k], qmin); + } + + float prevp_reg; + float psdep_reg; + float praut_reg; + float psaut_reg; + float pracw_reg; + float psaci_reg; + float psacw_reg; + float pigen_reg; + float pidep_reg; + float pcond_reg; + float psmlt_reg; + float psevp_reg; + float xni[MKX]; + + for (k = kps - 1; k <= kpe - 1; k++) { + xni[k] = 1.e3f; + } + +#define DIFFUS(x, y) (8.794e-5f * expf(logf(x) * (1.81f)) / (y)) +#define VISCOS(x, y) (1.496e-6f * ((x)*sqrtf(x)) / ((x) + 120.f) / (y)) +#define XKA(x, y) (1.414e3f * VISCOS((x), (y)) * (y)) +#define DIFFAC(a, b, c, d, e) \ + ((d) * (a) * (a) / (XKA((c), (d)) * rv * (c) * (c)) + \ + 1.f / ((e)*DIFFUS((c), (b)))) +#define VENFAC(a, b, c) \ + (expf(logf((VISCOS((b), (c)) / DIFFUS((b), (a)))) * ((.3333333f))) * \ + rsqrtf(VISCOS((b), (c))) * sqrtf(sqrtf(den0 / (c)))) + +#define LAMDAR(x, y) sqrtf(sqrtf(pidn0r / ((x) * (y)))) +#define LAMDAS(x, y, z) sqrtf(sqrtf(pidn0s *(z) / ((x) * (y)))) + + // calculate mstep for this column + + float rsloper[MKX]; + float rslopebr[MKX]; + float rslope2r[MKX]; + float rslope3r[MKX]; + float rslopes[MKX]; + float rslopebs[MKX]; + float rslope2s[MKX]; + float rslope3s[MKX]; + float denfac[MKX]; + float n0sfac[MKX]; + + float w1[MKX]; + float w2[MKX]; + float w3[MKX]; + + float w; + float rmstep; + int numdt; + for (k = kps - 1; k <= kpe - 1; k++) { + float supcol = t0c - t[k]; + n0sfac[k] = MAX(MIN(expf(alpha * supcol), n0smax / n0s), 1.f); + if (qr[P3(ti, k, tj)] <= qcrmin) { + rsloper[k] = rslopermax; + rslopebr[k] = rsloperbmax; + rslope2r[k] = rsloper2max; + rslope3r[k] = rsloper3max; + } else { + rsloper[k] = 1.f / LAMDAR(qr[P3(ti, k, tj)], den[P3(ti, k, tj)]); + rslopebr[k] = expf(logf(rsloper[k]) * bvtr); + rslope2r[k] = rsloper[k] * rsloper[k]; + rslope3r[k] = rslope2r[k] * rsloper[k]; + } + if (qs[P3(ti, k, tj)] <= qcrmin) { + rslopes[k] = rslopesmax; + rslopebs[k] = rslopesbmax; + rslope2s[k] = rslopes2max; + rslope3s[k] = rslopes3max; + } else { + rslopes[k] = + 1.f / LAMDAS(qs[P3(ti, k, tj)], den[P3(ti, k, tj)], n0sfac[k]); + rslopebs[k] = expf(logf(rslopes[k]) * bvts); + rslope2s[k] = rslopes[k] * rslopes[k]; + rslope3s[k] = rslope2s[k] * rslopes[k]; + } + denfac[k] = sqrtf(den0 / den[P3(ti, k, tj)]); + w1[k] = pvtr * rslopebr[k] * denfac[k] / delz[P3(ti, k, tj)]; + w2[k] = pvts * rslopebs[k] * denfac[k] / delz[P3(ti, k, tj)]; + + w = MAX(w1[k], w2[k]); + numdt = MAX((int)trunc(w * dtcld + .5f + .5f), 1); + if (numdt >= mstep) + mstep = numdt; + //------------------------------------------------------------- + // Ni: ice crystal number concentration [HDC 5c] + //------------------------------------------------------------- + float temp = (den[P3(ti, k, tj)] * MAX(qi[P3(ti, k, tj)], qmin)); + temp = sqrtf(sqrtf(temp * temp * temp)); + xni[k] = MIN(MAX(5.38e7f * temp, 1.e3f), 1.e6f); + } + rmstep = 1.f / mstep; + + int n; + float dtcldden, coeres, rdelz; + + float den_k, falk1_k, falk1_kp1, fall1_k, delz_k, delz_kp1; + float falk2_k, falk2_kp1, fall2_k; + + for (n = 1; n <= mstep; n++) { + k = kpe - 1; + den_k = den[P3(ti, k, tj)]; + falk1_kp1 = den_k * qr[P3(ti, k, tj)] * w1[k] * rmstep; + falk2_kp1 = den_k * qs[P3(ti, k, tj)] * w2[k] * rmstep; + dtcldden = dtcld / den_k; + qr[P3(ti, k, tj)] = MAX(qr[P3(ti, k, tj)] - falk1_kp1 * dtcldden, 0.f); + qs[P3(ti, k, tj)] = MAX(qs[P3(ti, k, tj)] - falk2_kp1 * dtcldden, 0.f); + delz_kp1 = delz[P3(ti, k, tj)]; + for (k = kpe - 2; k >= kps - 1; k--) { + den_k = den[P3(ti, k, tj)]; + falk1_k = den_k * qr[P3(ti, k, tj)] * w1[k] * rmstep; + fall1_k = falk1_k; + falk2_k = den_k * qs[P3(ti, k, tj)] * w2[k] * rmstep; + fall2_k = falk2_k; + dtcldden = dtcld / den_k; + delz_k = delz[P3(ti, k, tj)]; + rdelz = 1.f / delz_k; + qr[P3(ti, k, tj)] = + MAX(qr[P3(ti, k, tj)] - + (falk1_k - falk1_kp1 * delz_kp1 * rdelz) * dtcldden, + 0.f); + qs[P3(ti, k, tj)] = + MAX(qs[P3(ti, k, tj)] - + (falk2_k - falk2_kp1 * delz_kp1 * rdelz) * dtcldden, + 0.f); + delz_kp1 = delz_k; + falk1_kp1 = falk1_k; + falk2_kp1 = falk2_k; + } + + for (k = kpe - 1; k >= kps - 1; k--) { + if (t[k] > t0c && qs[P3(ti, k, tj)] > 0.f) { + xlf = xlf0; + w3[k] = VENFAC(p[P3(ti, k, tj)], t[k], den[P3(ti, k, tj)]); + coeres = rslope2s[k] * sqrtf(rslopes[k] * rslopebs[2]); + psmlt_reg = XKA(t[k], den[P3(ti, k, tj)]) / xlf * (t0c - t[k]) * + pi / 2.f * n0sfac[k] * + (precs1 * rslope2s[k] + precs2 * w3[k] * coeres); + psmlt_reg = MIN( + MAX(psmlt_reg * dtcld * rmstep, -qs[P3(ti, k, tj)] * rmstep), + 0.f); + qs[P3(ti, k, tj)] += psmlt_reg; + qr[P3(ti, k, tj)] -= psmlt_reg; + t[k] += xlf / CPMCAL(q[P3(ti, k, tj)]) * psmlt_reg; + } + } + } + + //--------------------------------------------------------------- + // Vice [ms-1] : fallout of ice crystal [HDC 5a] + //--------------------------------------------------------------- + mstep = 1; + numdt = 1; + for (k = kpe - 1; k >= kps - 1; k--) { + if (qi[P3(ti, k, tj)] <= 0.f) { + w2[k] = 0.f; + } else { + xmi = den[P3(ti, k, tj)] * qi[P3(ti, k, tj)] / xni[k]; + diameter = MAX(MIN(dicon * sqrtf(xmi), dimax), 1.e-25f); + w1[k] = 1.49e4f * expf(logf(diameter) * (1.31f)); + w2[k] = w1[k] / delz[P3(ti, k, tj)]; + } + numdt = MAX((int)trunc(w2[k] * dtcld + .5f + .5f), 1); + if (numdt > mstep) + mstep = numdt; + } + rmstep = 1.f / mstep; + + float falkc_k, falkc_kp1, fallc_k, fallc_kp1; + for (n = 1; n <= mstep; n++) { + k = kpe - 1; + den_k = den[P3(ti, k, tj)]; + falkc_kp1 = den_k * qi[P3(ti, k, tj)] * w2[k] * rmstep; + fallc_kp1 = fallc_kp1 + falkc_kp1; + qi[P3(ti, k, tj)] = + MAX(qi[P3(ti, k, tj)] - falkc_kp1 * dtcld / den_k, 0.f); + delz_kp1 = delz[P3(ti, k, tj)]; + for (k = kpe - 2; k >= kps - 1; k--) { + den_k = den[P3(ti, k, tj)]; + falkc_k = den_k * qi[P3(ti, k, tj)] * w2[k] * rmstep; + fallc_k = fallc_k + falkc_k; + delz_k = delz[P3(ti, k, tj)]; + qi[P3(ti, k, tj)] = + MAX(qi[P3(ti, k, tj)] - + (falkc_k - falkc_kp1 * delz_kp1 / delz_k) * dtcld / den_k, + 0.f); + delz_kp1 = delz_k; + falkc_kp1 = falkc_k; + fallc_kp1 = fallc_k; + } + } + float fallsum = fall1_k + fall2_k + fallc_k; + float fallsum_qsi = fall2_k + fallc_k; + + rainncv[P2(ti, tj)] = 0.f; + if (fallsum > 0.f) { + rainncv[P2(ti, tj)] = + fallsum * delz[P3(ti, 1, tj)] / denr * dtcld * 1000.f; + rain[P2(ti, tj)] = + fallsum * delz[P3(ti, 1, tj)] / denr * dtcld * 1000.f + + rain[P2(ti, tj)]; + } + snowncv[P2(ti, tj)] = 0.f; + if (fallsum_qsi > 0.f) { + snowncv[P2(ti, tj)] = + fallsum_qsi * delz[P3(ti, 0, tj)] / denr * dtcld * 1000.f; + snow[P2(ti, tj)] = + fallsum_qsi * delz[P3(ti, 0, tj)] / denr * dtcld * 1000.f + + snow[P2(ti, tj)]; + } + sr[P2(ti, tj)] = 0.f; + if (fallsum > 0.f) + sr[P2(ti, tj)] = fallsum_qsi * delz[P3(ti, 0, tj)] / denr * dtcld * + 1000.f / (rainncv[P2(ti, tj)] + 1.e-12f); + + //--------------------------------------------------------------- + // pimlt: instantaneous melting of cloud ice [HL A47] [RH83 A28] + // (T>T0: I->C) + //--------------------------------------------------------------- + + for (k = kps - 1; k <= kpe - 1; k++) { + + // note -- many of these are turned into scalars of form name_reg by + // _def_ above so that they will be stored in registers + prevp_reg = 0.f; + psdep_reg = 0.f; + praut_reg = 0.f; + psaut_reg = 0.f; + pracw_reg = 0.f; + psaci_reg = 0.f; + psacw_reg = 0.f; + pigen_reg = 0.f; + pidep_reg = 0.f; + pcond_reg = 0.f; + psevp_reg = 0.f; + + q_k = q[P3(ti, k, tj)]; + t_k = t[k]; + qr_k = qr[P3(ti, k, tj)]; + qc_k = qc[P3(ti, k, tj)]; + qs_k = qs[P3(ti, k, tj)]; + qi_k = qi[P3(ti, k, tj)]; + qs1_k = qs1[k]; + qs2_k = qs2[k]; + cpm_k = cpm[k]; + xl_k = xl[k]; + + float supcol = t0c - t_k; + xlf = xls - xl_k; + if (supcol < 0.f) + xlf = xlf0; + if (supcol < 0.f && qi_k > 0.f) { + qc_k = qc_k + qi_k; + t_k = t_k - xlf / cpm_k * qi_k; + qi_k = 0.f; + } + //--------------------------------------------------------------- + // pihmf: homogeneous freezing of cloud water below -40c [HL A45] + // (T<-40C: C->I) + //--------------------------------------------------------------- + if (supcol > 40.f && qc_k > 0.f) { + qi_k = qi_k + qc_k; + t_k = t_k + xlf / cpm_k * qc_k; + qc_k = 0.f; + } + //--------------------------------------------------------------- + // pihtf: heterogeneous freezing of cloud water [HL A44] + // (T0>T>-40C: C->I) + //--------------------------------------------------------------- + if (supcol > 0.f && qc_k > 0.f) { + float pfrzdtc = + MIN(pfrz1 * (expf(pfrz2 * supcol) - 1.f) * den[P3(ti, k, tj)] / + denr / xncr * qc_k * qc_k * dtcld, + qc_k); + qi_k = qi_k + pfrzdtc; + t_k = t_k + xlf / cpm_k * pfrzdtc; + qc_k = qc_k - pfrzdtc; + } + //--------------------------------------------------------------- + // psfrz: freezing of rain water [HL A20] [LFO 45] + // (TS) + //--------------------------------------------------------------- + if (supcol > 0.f && qr_k > 0.f) { + float temp = rsloper[k]; + temp = temp * temp * temp * temp * temp * temp * temp; + float pfrzdtr = + MIN(20.f * (pi * pi) * pfrz1 * n0r * denr / den[P3(ti, k, tj)] * + (expf(pfrz2 * supcol) - 1.f) * temp * dtcld, + qr_k); + qs_k = qs_k + pfrzdtr; + t_k = t_k + xlf / cpm_k * pfrzdtr; + qr_k = qr_k - pfrzdtr; + } + + //---------------------------------------------------------------- + // rsloper: reverse of the slope parameter of the rain(m) + // xka: thermal conductivity of air(jm-1s-1k-1) + // work1: the thermodynamic term in the denominator associated with + // heat conduction and vapor diffusion + // (ry88, y93, h85) + // work2: parameter associated with the ventilation effects(y93) + + n0sfac[k] = MAX(MIN(expf(alpha * supcol), n0smax / n0s), 1.f); + if (qr_k <= qcrmin) { + rsloper[k] = rslopermax; + rslopebr[k] = rsloperbmax; + rslope2r[k] = rsloper2max; + rslope3r[k] = rsloper3max; + } else { + rsloper[k] = + 1.f / (sqrtf(sqrtf(pidn0r / ((qr_k) * (den[P3(ti, k, tj)]))))); + rslopebr[k] = expf(logf(rsloper[k]) * bvtr); + rslope2r[k] = rsloper[k] * rsloper[k]; + rslope3r[k] = rslope2r[k] * rsloper[k]; + } + if (qs_k <= qcrmin) { + rslopes[k] = rslopesmax; + rslopebs[k] = rslopesbmax; + rslope2s[k] = rslopes2max; + rslope3s[k] = rslopes3max; + } else { + rslopes[k] = 1.f / (sqrtf(sqrtf(pidn0s * (n0sfac[k]) / + ((qs_k) * (den[P3(ti, k, tj)]))))); + rslopebs[k] = expf(logf(rslopes[k]) * bvts); + rslope2s[k] = rslopes[k] * rslopes[k]; + rslope3s[k] = rslope2s[k] * rslopes[k]; + } + + w1_k = DIFFAC(xl_k, p[P3(ti, k, tj)], t_k, den[P3(ti, k, tj)], qs1_k); + w2_k = DIFFAC(xls, p[P3(ti, k, tj)], t_k, den[P3(ti, k, tj)], qs2_k); + w3_k = VENFAC(p[P3(ti, k, tj)], t_k, den[P3(ti, k, tj)]); + + // + //=============================================================== + // + // warm rain processes + // + // - follows the processes in RH83 and LFO except for autoconcersion + // + //=============================================================== + // + float supsat = MAX(q_k, qmin) - qs1_k; + float satdt = supsat / dtcld; + //--------------------------------------------------------------- + // praut: auto conversion rate from cloud to rain [HDC 16] + // (C->R) + //--------------------------------------------------------------- + if (qc_k > qc0) { + praut_reg = qck1 * expf(logf(qc_k) * ((7.f / 3.f))); + praut_reg = MIN(praut_reg, qc_k / dtcld); + } + //--------------------------------------------------------------- + // pracw: accretion of cloud water by rain [HL A40] [LFO 51] + // (C->R) + //--------------------------------------------------------------- + if (qr_k > qcrmin && qc_k > qmin) { + pracw_reg = MIN(pacrr * rslope3r[k] * rslopebr[k] * qc_k * denfac[k], + qc_k / dtcld); + } + //--------------------------------------------------------------- + // prevp: evaporation/condensation rate of rain [HDC 14] + // (V->R or R->V) + //--------------------------------------------------------------- + if (qr_k > 0.f) { + coeres = rslope2r[k] * sqrtf(rsloper[k] * rslopebr[k]); + prevp_reg = (rh1[k] - 1.f) * + (precr1 * rslope2r[k] + precr2 * w3_k * coeres) / w1_k; + if (prevp_reg < 0.f) { + prevp_reg = MAX(prevp_reg, -qr_k / dtcld); + prevp_reg = MAX(prevp_reg, satdt / 2.f); + } else { + prevp_reg = MIN(prevp_reg, satdt / 2.f); + } + } + + // + //=============================================================== + // + // cold rain processes + // + // - follows the revised ice microphysics processes in HDC + // - the processes same as in RH83 and RH84 and LFO behave + // following ice crystal hapits defined in HDC, inclduing + // intercept parameter for snow (n0s), ice crystal number + // concentration (ni), ice nuclei number concentration + // (n0i), ice diameter (d) + // + //=============================================================== + // + float rdtcld = 1.f / dtcld; + supsat = MAX(q_k, qmin) - qs2_k; + satdt = supsat / dtcld; + int ifsat = 0; + //------------------------------------------------------------- + // Ni: ice crystal number concentraiton [HDC 5c] + //------------------------------------------------------------- + float temp = (den[P3(ti, k, tj)] * MAX(qi_k, qmin)); + temp = sqrtf(sqrtf(temp * temp * temp)); + xni[k] = MIN(MAX(5.38e7f * temp, 1.e3f), 1.e6f); + float eacrs = expf(0.07f * (-supcol)); + //------------------------------------------------------------- + // psacw: Accretion of cloud water by snow [HL A7] [LFO 24] + // (TS, and T>=T0: C->R) + //------------------------------------------------------------- + if (qs_k > qcrmin && qc_k > qmin) { + psacw_reg = MIN(pacrc * n0sfac[k] * rslope3s[k] * rslopebs[k] * qc_k * + denfac[k], + qc_k * rdtcld); + } + // + if (supcol > 0) { + if (qs_k > qcrmin && qi_k > qmin) { + xmi = den[P3(ti, k, tj)] * qi_k / xni[k]; + diameter = MIN(dicon * sqrtf(xmi), dimax); + vt2i = 1.49e4f * powf(diameter, 1.31f); + vt2s = pvts * rslopebs[k] * denfac[k]; + //------------------------------------------------------------- + // psaci: Accretion of cloud ice by rain [HDC 10] + // (TS) + //------------------------------------------------------------- + acrfac = 2.f * rslope3s[k] + 2.f * diameter * rslope2s[k] + + diameter * diameter * rslopes[k]; + psaci_reg = pi * qi_k * eacrs * n0s * n0sfac[k] * abs(vt2s - vt2i) * + acrfac * .25f; + } + //------------------------------------------------------------- + // pidep: Deposition/Sublimation rate of ice [HDC 9] + // (TI or I->V) + //------------------------------------------------------------- + if (qi_k > 0 && ifsat != 1) { + xmi = den[P3(ti, k, tj)] * qi_k / xni[k]; + diameter = dicon * sqrtf(xmi); + pidep_reg = 4.f * diameter * xni[k] * (rh2[k] - 1.f) / w2_k; + supice = satdt - prevp_reg; + if (pidep_reg < 0.f) { + pidep_reg = MAX(MAX(pidep_reg, satdt * .5f), supice); + pidep_reg = MAX(pidep_reg, -qi_k * rdtcld); + } else { + pidep_reg = MIN(MIN(pidep_reg, satdt * .5f), supice); + } + if (abs(prevp_reg + pidep_reg) >= abs(satdt)) + ifsat = 1; + } + //------------------------------------------------------------- + // psdep: deposition/sublimation rate of snow [HDC 14] + // (V->S or S->V) + //------------------------------------------------------------- + if (qs_k > 0.f && ifsat != 1) { + coeres = rslope2s[k] * sqrtf(rslopes[k] * rslopebs[k]); + psdep_reg = (rh2[k] - 1.f) * n0sfac[k] * + (precs1 * rslope2s[k] + precs2 * w3_k * coeres) / w2_k; + supice = satdt - prevp_reg - pidep_reg; + if (psdep_reg < 0.f) { + psdep_reg = MAX(psdep_reg, -qs_k * rdtcld); + psdep_reg = MAX(MAX(psdep_reg, satdt * .5f), supice); + } else { + psdep_reg = MIN(MIN(psdep_reg, satdt * .5f), supice); + } + if (abs(prevp_reg + pidep_reg + psdep_reg) >= abs(satdt)) + ifsat = 1; + } + //------------------------------------------------------------- + // pigen: generation(nucleation) of ice from vapor [HL A50] [HDC 7-8] + // (TI) + //------------------------------------------------------------- + if (supsat > 0 && ifsat != 1) { + supice = satdt - prevp_reg - pidep_reg - psdep_reg; + xni0 = 1.e3f * expf(0.1f * supcol); + roqi0 = 4.92e-11f * expf(logf(xni0) * (1.33f)); + pigen_reg = MAX(0.f, (roqi0 / den[P3(ti, k, tj)] - MAX(qi_k, 0.f)) * + rdtcld); + pigen_reg = MIN(MIN(pigen_reg, satdt), supice); + } + // + //------------------------------------------------------------- + // psaut: conversion(aggregation) of ice to snow [HDC 12] + // (TS) + //------------------------------------------------------------- + if (qi_k > 0.f) { + qimax = roqimax / den[P3(ti, k, tj)]; + psaut_reg = MAX(0.f, (qi_k - qimax) * rdtcld); + } + } + //------------------------------------------------------------- + // psevp: Evaporation of melting snow [HL A35] [RH83 A27] + // (T>T0: S->V) + //------------------------------------------------------------- + if (supcol < 0.f) { + if (qs_k > 0.f && rh1[k] < 1.f) { + psevp_reg = psdep_reg * w2_k / w1_k; + } // asked Jimy about this, 11.6.07, JM + psevp_reg = MIN(MAX(psevp_reg, -qs_k * rdtcld), 0.f); + } + + // check mass conservation of generation terms and feedback to the + // large scale + if (t_k <= t0c) { + // + // cloud water + // + value = MAX(qmin, qc_k); + source = (praut_reg + pracw_reg + psacw_reg) * dtcld; + if (source > value) { + factor = value / source; + praut_reg = praut_reg * factor; + pracw_reg = pracw_reg * factor; + psacw_reg = psacw_reg * factor; + } + // + // cloud ice + // + value = MAX(qmin, qi_k); + source = (psaut_reg + psaci_reg - pigen_reg - pidep_reg) * dtcld; + if (source > value) { + factor = value / source; + psaut_reg = psaut_reg * factor; + psaci_reg = psaci_reg * factor; + pigen_reg = pigen_reg * factor; + pidep_reg = pidep_reg * factor; + } + + // + // rain (added for WRFV3.0.1) + // + value = MAX(qmin, qr_k); + source = (-praut_reg + pracw_reg - prevp_reg) * dtcld; + if (source > value) { + factor = value / source; + praut_reg = praut_reg * factor; + pracw_reg = pracw_reg * factor; + prevp_reg = prevp_reg * factor; + } + // + // snow (added for WRFV3.0.1) + // + value = MAX(qmin, qs_k); + source = (-psdep_reg + psaut_reg - psaci_reg - psacw_reg) * dtcld; + if (source > value) { + factor = value / source; + psdep_reg = psdep_reg * factor; + psaut_reg = psaut_reg * factor; + psaci_reg = psaci_reg * factor; + psacw_reg = psacw_reg * factor; + } + // (end added for WRFV3.0.1) + + // + w3_k = -(prevp_reg + psdep_reg + pigen_reg + pidep_reg); + // update + q_k = q_k + w3_k * dtcld; + qc_k = MAX(qc_k - (praut_reg + pracw_reg + psacw_reg) * dtcld, 0.f); + qr_k = MAX(qr_k + (praut_reg + pracw_reg + prevp_reg) * dtcld, 0.f); + qi_k = MAX(qi_k - (psaut_reg + psaci_reg - pigen_reg - pidep_reg) * + dtcld, + 0.f); + qs_k = MAX(qs_k + (psdep_reg + psaut_reg + psaci_reg + psacw_reg) * + dtcld, + 0.f); + xlf = xls - xl_k; + xlwork2 = -xls * (psdep_reg + pidep_reg + pigen_reg) - + xl_k * prevp_reg - xlf * psacw_reg; + t_k = t_k - xlwork2 / cpm_k * dtcld; + } else { + // + // cloud water + // + value = MAX(qmin, qc_k); + source = (praut_reg + pracw_reg + psacw_reg) * dtcld; + if (source > value) { + factor = value / source; + praut_reg = praut_reg * factor; + pracw_reg = pracw_reg * factor; + psacw_reg = psacw_reg * factor; + } + // + // rain (added for WRFV3.0.1) + // + value = MAX(qmin, qr_k); + source = (-praut_reg - pracw_reg - prevp_reg - psacw_reg) * dtcld; + if (source > value) { + factor = value / source; + praut_reg = praut_reg * factor; + pracw_reg = pracw_reg * factor; + prevp_reg = prevp_reg * factor; + psacw_reg = psacw_reg * factor; + } + // (end added for WRFV3.0.1) + // + // snow + // + value = MAX(qcrmin, qs_k); + source = (-psevp_reg) * dtcld; + if (source > value) { + factor = value / source; + psevp_reg = psevp_reg * factor; + } + w3_k = -(prevp_reg + psevp_reg); + // update + q_k = q_k + w3_k * dtcld; + qc_k = MAX(qc_k - (praut_reg + pracw_reg + psacw_reg) * dtcld, 0.f); + qr_k = MAX(qr_k + (praut_reg + pracw_reg + prevp_reg + psacw_reg) * + dtcld, + 0.f); + qs_k = MAX(qs_k + psevp_reg * dtcld, 0.f); + xlf = xls - xl_k; + xlwork2 = -xl_k * (prevp_reg + psevp_reg); + t_k = t_k - xlwork2 / cpm_k * dtcld; + } + // + // Inline expansion for fpvs + cvap = cpv; + ttp = t0c + 0.01f; + dldt = cvap - cliq; + xa = -dldt / rv; + xb = xa + hvap / (rv * ttp); + dldti = cvap - cice; + xai = -dldti / rv; + xbi = xai + hsub / (rv * ttp); + tr = ttp / t_k; + qs1_k = psat * expf(logf(tr) * (xa)) * expf(xb * (1.f - tr)); + qs1_k = ep2 * qs1_k / (p[P3(ti, k, tj)] - qs1_k); + qs1_k = MAX(qs1_k, qmin); + + // pcond: condensational/evaporational rate of cloud water [HL A46] + // [RH83 A6] + // if there exists additional water vapor condensated/if + // evaporation of cloud water is not enough to remove subsaturation + + w1_k = ((MAX(q_k, qmin) - (qs1_k)) / + (1.f + + (xl_k) * (xl_k) / (rv * (cpm_k)) * (qs1_k) / ((t_k) * (t_k)))); + // w3_k = qc_k+w1_k ; NOT USED + pcond_reg = MIN(MAX(w1_k / dtcld, 0.f), MAX(q_k, 0.f) / dtcld); + if (qc_k > 0.f && w1_k < 0.f) { + pcond_reg = MAX(w1_k, -qc_k) / dtcld; + } + q_k = q_k - pcond_reg * dtcld; + qc_k = MAX(qc_k + pcond_reg * dtcld, 0.f); + t_k = t_k + pcond_reg * xl_k / cpm_k * dtcld; + + // padding for small values + if (qc_k <= qmin) + qc_k = 0.f; + if (qi_k <= qmin) + qi_k = 0.f; + + q[P3(ti, k, tj)] = q_k; + t[k] = t_k; + qr[P3(ti, k, tj)] = qr_k; + qc[P3(ti, k, tj)] = qc_k; + qs[P3(ti, k, tj)] = qs_k; + qi[P3(ti, k, tj)] = qi_k; + qs1[k] = qs1_k; + } + } + + for (k = kps - 1; k <= kpe - 1; k++) + th[P3(ti, k, tj)] = t[k] / pii[P3(ti, k, tj)]; + } +} diff --git a/benchmarks/cuda-jitify/wsm5/main.cu b/benchmarks/cuda-jitify/wsm5/main.cu new file mode 100644 index 0000000..4a9827c --- /dev/null +++ b/benchmarks/cuda-jitify/wsm5/main.cu @@ -0,0 +1,122 @@ +#include "../../external/jitify/jitify.hpp" +#include "kernel.cuh" +#include "utils.h" +#include +#include +#include +#include +#include + +int main(int argc, char *argv[]) { + if (argc != 2) { + printf("Usage: %s \n", argv[0]); + return 1; + } + const int repeat = atoi(argv[1]); + float *th, *pii, *q; + float *qc, *qi, *qr, *qs; + float *den, *p, *delz; + float *rain, *rainncv; + float *sr; + float *snow, *snowncv; + + float delt = 10.f; + int ims = 0, ime = 59, jms = 0, jme = 45, kms = 0, kme = 2; + int ips = 0, ipe = 59, jps = 0, jpe = 45, kps = 0, kpe = 2; + int d3 = (ime - ims + 1) * (jme - jms + 1) * (kme - kms + 1); + int d2 = (ime - ims + 1) * (jme - jms + 1); + + int dips = 0; + int dipe = (ipe - ips + 1); + int djps = 0; + int djpe = (jpe - jps + 1); + int dkps = 0; + int dkpe = (kpe - kps + 1); + + int remx = (ipe - ips + 1) % XXX != 0 ? 1 : 0; + int remy = (jpe - jps + 1) % YYY != 0 ? 1 : 0; + + dim3 dimBlock(XXX, YYY); + dim3 dimGrid((ipe - ips + 1) / XXX + remx, (jpe - jps + 1) / YYY + remy); + + float rain_sum = 0, snow_sum = 0; + + long time = 0; + for (int i = 0; i < repeat; i++) { + // read-only in the kernel + TODEV3(pii); + TODEV3(den); + TODEV3(p); + TODEV3(delz); + + TODEV3(th); + TODEV3(q); + TODEV3(qc); + TODEV3(qi); + TODEV3(qr); + TODEV3(qs); + TODEV2(rain); + TODEV2(rainncv); + TODEV2(sr); + TODEV2(snow); + TODEV2(snowncv); + + cudaDeviceSynchronize(); + + static jitify::JitCache kernel_cache; + jitify::Program program = kernel_cache.program( + kernel_h, {}, {"-DMKX=4", "-std=c++20", "--time=jitify.trace"}); + + auto start = std::chrono::steady_clock::now(); + + // wsm <<< dimGrid, dimBlock >>> ( + program.kernel("wsm") + .instantiate(dips + 1, (ipe - ips + 1), // ids, ide + djps + 1, (jpe - jps + 1), // jds, jde + dkps + 1, (kpe - kps + 1), // kds, kde + dips + 1, dipe, // ims, ime + djps + 1, djpe, // jms, jme + dkps + 1, dkpe, // kms, kme + dips + 1, dipe, // ips, ipe + djps + 1, djpe, // jps, jpe + dkps + 1, dkpe // kps, kpe + ) + .configure(dimGrid, dimBlock) + .launch(th_d, pii_d, q_d, qc_d, qi_d, qr_d, qs_d, den_d, p_d, delz_d, + rain_d, rainncv_d, sr_d, snow_d, snowncv_d, delt); + cudaDeviceSynchronize(); + auto end = std::chrono::steady_clock::now(); + time += std::chrono::duration_cast(end - start) + .count(); + + FROMDEV2(rain); + FROMDEV2(snow); + + rain_sum = snow_sum = 0; + for (int i = 0; i < d2; i++) { + rain_sum += rain[i]; + snow_sum += snow[i]; + } + + FREE(pii); + FREE(den); + FREE(p); + FREE(delz); + FREE(th); + FREE(q); + FREE(qc); + FREE(qi); + FREE(qr); + FREE(qs); + FREE(rain); + FREE(rainncv); + FREE(sr); + FREE(snow); + FREE(snowncv); + } + + printf("Average kernel execution time: %lf (ms)\n", (time * 1e-6) / repeat); + printf("Checksum: rain = %f snow = %f\n", rain_sum, snow_sum); + + return (0); +} diff --git a/benchmarks/cuda-jitify/wsm5/spt.h b/benchmarks/cuda-jitify/wsm5/spt.h new file mode 100644 index 0000000..2904b11 --- /dev/null +++ b/benchmarks/cuda-jitify/wsm5/spt.h @@ -0,0 +1,64 @@ +// The lower bound to MKX is kpe - kps + 1 +#ifndef MKX + #error(need a defined constant MKX that is static number of levels) +#endif + +#define bi blockIdx.x +#define bj blockIdx.y +#define bx blockDim.x +#define by blockDim.y +#define ti threadIdx.x +#define tj threadIdx.y + +# define ix (ime-ims+1) +# define jx (jme-jms+1) +# define kx (kme-kms+1) + + +// basic indexing macros. indices are always given as global indices +// in undecompsed Domain(ids:ide,jds:jde) +// +// That is, given IJ (global index), the global Index mapped to +// a local index on a Patch(0:nx-1,0:ny-1) in Device Memory as: +// +// I - (ips-ims) + nx * ( J - (jps-jms) ) +// +// where ips is the global index of the start of the patch (the -1 is +// for translating from WRF fortran indices). +// +// The global index I is mapped to a local index on a GPU Block's +// shared memory (0:bx-1, 0:by-1) as: +// +// I - (ips-ims) - bi * bx + by * ( J - (jps-jms) - bj * by ) +// +// Where bi is the index into the GPU Block, and bx is the +// GPU Block Width. + +// global to patch index converter +#define GtoP(i,p,P) ((i)-(p)+(P)) +#define GtoB(i,n,N,p,P) ((i)-(p)+(P)-(n)*(N)) + +// thread index to local memory index = i + bi * bx + ips - ims +#define TtoP(i,a,b,c,d) ((i)+(a)*(b)+(c)-(d)) + +#define MAX(x,y) ((x)>(y)?(x):(y)) +#define MIN(x,y) ((x)<(y)?(x):(y)) + +// basic indexing macros +#define I2(i,j,m) ((i)+((j)*(m))) +#define I3(i,j,m,k,n) (I2(i,j,m)+((k)*(m)*(n))) + +// index into a patch stored on device memory - 1 +# define P2(i,j) I2(TtoP(i,bi,bx,ips,ims),TtoP(j,bj,by,jps,jms),ime-ims+1) +# define P3(i,k,j) I3(TtoP(i,bi,bx,ips,ims),k,ime-ims+1,TtoP(j,bj,by,jps,jms),kme-kms+1) + +// index into a block stored on shared memory +# define S2(i,j) I2(i,j,bx) +//# define S3(i,k,j) I3(i,k,bx,j,kme-kms+1) +//# define S3(i,k,j) I3(i,j,bx,k,by) +# define S3(i,k,j) I3(k,i,kx,j,bx) + +#define ig (TtoP(ti,bi,bx,ips,ims)) +#define jg (TtoP(tj,bj,by,jps,jms)) + + diff --git a/benchmarks/cuda-jitify/wsm5/utils.h b/benchmarks/cuda-jitify/wsm5/utils.h new file mode 100644 index 0000000..46d4076 --- /dev/null +++ b/benchmarks/cuda-jitify/wsm5/utils.h @@ -0,0 +1,25 @@ +// thread block sizes +#define XXX 8 +#define YYY 8 + +// data allocation on host and device +// data initialization on host +// host to device copy +# define TODEV(A,s) A = (float*) malloc ((s) * sizeof(float)); \ + for (int i = 0; i < s; i++) A[i] = 0.001; \ + float *A##_d;\ + cudaMalloc((void**)&A##_d,((s))*sizeof(float));\ + cudaMemcpy(A##_d, A, (s)*sizeof(float), cudaMemcpyHostToDevice); + +// device to host copy +# define FROMDEV(A,s) cudaMemcpy(A, A##_d, (s)*sizeof(float), cudaMemcpyDeviceToHost); + +// deallocation host and device memory +# define FREE(A) free(A);\ + cudaFree(A##_d) + +# define TODEV3(A) TODEV(A,d3) +# define TODEV2(A) TODEV(A,d2) +# define FROMDEV3(A) FROMDEV(A,d3) +# define FROMDEV2(A) FROMDEV(A,d2) + diff --git a/benchmarks/cuda/LULESH/Makefile b/benchmarks/cuda/LULESH/Makefile new file mode 100755 index 0000000..80262aa --- /dev/null +++ b/benchmarks/cuda/LULESH/Makefile @@ -0,0 +1,53 @@ +MPI_FLAGS = + +CC?=nvcc +ARCH=sm_70 +JIT_PATH ?= /p/vast1/ggeorgak/projects/compilers/jitproject/jit/build-lassen +JIT ?= no +FLAGS = +DFLAGS = $(MPI_FLAGS) -lineinfo +RFLAGS = $(MPI_FLAGS) -O3 -DNDEBUG + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + + +#SILO_INCLUDES := /usr/local/silo-4.8/include +#SILO_LIBS := /usr/local/silo-4.8/lib + +LINKFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl +#LINKFLAGS += -L$(SILO_LIBS) -lsilo + +#INC_SILO:= -I$(SILO_INCLUDES) + +# release flags +FLAGS += --cuda-gpu-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia $(RFLAGS) + +ifeq ($(JIT),yes) + LIBLLVM_PATH=$(dir $(realpath $(CC)))../lib + FLAGS += -fpass-plugin=$(JIT_PATH)/pass/libProteusJitPass.so -DENABLE_JIT + LINKFLAGS += -Wl,-rpath,$(LIBLLVM_PATH) -L$(LIBLLVM_PATH) -lLLVM \ + -Wl,-rpath,$(JIT_PATH)/lib -L${JIT_PATH}/lib/ -lproteusjit -lnvptxcompiler_static +endif + +lulesh$(SUFFIX).x: allocator$(SUFFIX).o lulesh$(SUFFIX).o lulesh-comms$(SUFFIX).o lulesh-comms-gpu$(SUFFIX).o + $(CC) allocator$(SUFFIX).o lulesh$(SUFFIX).o lulesh-comms$(SUFFIX).o lulesh-comms-gpu$(SUFFIX).o -o $@ $(LINKFLAGS) + +allocator$(SUFFIX).o: allocator.cu vector.h + $(CC) $(FLAGS) allocator.cu -I ./ -c -o $@ + +lulesh$(SUFFIX).o: lulesh.cu util.h vector.h allocator.h + $(CC) $(FLAGS) lulesh.cu -I ./ $(INC_SILO) -c -o $@ + +lulesh-comms$(SUFFIX).o: lulesh-comms.cu + $(CC) $(FLAGS) lulesh-comms.cu -I ./ -c -o $@ + +lulesh-comms-gpu$(SUFFIX).o: lulesh-comms-gpu.cu + $(CC) $(FLAGS) lulesh-comms-gpu.cu -I ./ -c -o $@ + +clean: + rm -rf *.x *.o xyz.asc regNumList.txt diff --git a/benchmarks/cuda/LULESH/README b/benchmarks/cuda/LULESH/README new file mode 100644 index 0000000..15f3518 --- /dev/null +++ b/benchmarks/cuda/LULESH/README @@ -0,0 +1,21 @@ +This is the README for LULESH 2.0 using CUDA + +This is meant to be an example of how we would port this type of code to CUDA for Nvidia GPUs. + +More information including LULESH 1.0 can be found at https://codesign.llnl.gov/lulesh.php + +If you have any questions or problems please contact: + +Ian Karlin +Rob Neely + + +*** Notable changes in LULESH 2.0 using CUDA *** + +Split functionality into different files +lulesh.cu - where most (all?) of the timed functionality lies +lulesh-comm.cu - MPI functionality +lulesh-comm-gpu.cu - MPI functionality + +The unstructured meshes feature is available but not fully supported. It will generate incorrect verification output and the report is turned off. + diff --git a/benchmarks/cuda/LULESH/allocator.cu b/benchmarks/cuda/LULESH/allocator.cu new file mode 100755 index 0000000..c234bd4 --- /dev/null +++ b/benchmarks/cuda/LULESH/allocator.cu @@ -0,0 +1,105 @@ +/* +# Copyright (c) 2011-2012 NVIDIA CORPORATION. All Rights Reserved. +# +# NVIDIA CORPORATION and its licensors retain all intellectual property +# and proprietary rights in and to this software, related documentation +# and any modifications thereto. Any use, reproduction, disclosure or +# distribution of this software and related documentation without an express +# license agreement from NVIDIA CORPORATION is strictly prohibited. +*/ + +#include +#include +#include +#include + +template< typename T > +inline T* allocate( int size ) +{ + return new T( size ); +} + +template< typename T > +Allocator::FreeMap& Allocator::getFreeVars( ) +{ + static FreeMap s_free_vars; + return s_free_vars; +} + +template +T* +Allocator::allocate(int size) +{ + T *v; + bool is_empty; + { + //locate free var list for the right size + FreeList &f_vars=getFreeVars( )[size]; + is_empty = f_vars.empty(); + if (!is_empty) { + //set the return value to the previously freed vector + v=f_vars.top(); + //remove the vector from the free vector list + f_vars.pop(); + } + + } + if(is_empty) //if there are no free vectors + { + //create a new vector + //v=allocate(size); + v = new T(size); + + } + return v; +} + +template +T* Allocator::free(T* v,int size) { + //add the vector to the free vector list + { + if( v != NULL ) + getFreeVars( )[size].push(v); + } + return NULL; +} + +template +T* +Allocator::resize( T *ptr, int old_size, int new_size ) +{ + if( old_size == new_size ) + return ptr; + free( ptr, old_size ); + return allocate( new_size ); +} + +template +void Allocator::clear() { + { + FreeMap &free_vars = getFreeVars( ); + for(typename FreeMap::iterator m_iter=free_vars.begin();m_iter!=free_vars.end();m_iter++) + { + FreeList &stack=m_iter->second; + while(!stack.empty()) { + T *ptr = stack.top(); + stack.pop(); + delete ptr; + } + } + free_vars.clear(); + } +} + +/**************************************** + * Explict instantiations + ***************************************/ + +// here we imply Index_Type is int +template class Allocator >; +template class Allocator >; +template class Allocator >; + +template class Allocator >; +template class Allocator >; +template class Allocator >; diff --git a/benchmarks/cuda/LULESH/allocator.h b/benchmarks/cuda/LULESH/allocator.h new file mode 100755 index 0000000..b15c803 --- /dev/null +++ b/benchmarks/cuda/LULESH/allocator.h @@ -0,0 +1,39 @@ +/* +# Copyright (c) 2011-2012 NVIDIA CORPORATION. All Rights Reserved. +# +# NVIDIA CORPORATION and its licensors retain all intellectual property +# and proprietary rights in and to this software, related documentation +# and any modifications thereto. Any use, reproduction, disclosure or +# distribution of this software and related documentation without an express +# license agreement from NVIDIA CORPORATION is strictly prohibited. +*/ + +#pragma once + +#include +#include + +/*********************************************************** + * Class to allocate arrays of memory for temperary use. + * The allocator will hold onto the memory for the next call. + * This allows memory like Vectors to be reused in different + * parts of the algorithm without having to store it in + * a class and hold onto even when it isn't being used. + ***********************************************************/ +template +class Allocator +{ + typedef std::stack FreeList; + typedef std::map FreeMap; + +public: + static T* allocate( int size ); + static T* free( T *v, int size ); + static T* resize( T *ptr, int old_size, int new_size ); + + static void clear(); + +private: + static FreeMap& getFreeVars( ); + // static FreeMap free_vars; //a map of vector lists +}; diff --git a/benchmarks/cuda/LULESH/experiments.json b/benchmarks/cuda/LULESH/experiments.json new file mode 100644 index 0000000..72907a3 --- /dev/null +++ b/benchmarks/cuda/LULESH/experiments.json @@ -0,0 +1,10 @@ +{ + "name": "lulesh", + "executables": { + "aot" : "lulesh-aot.x", + "jit": "lulesh-jit.x" + }, + "inputs" : { + "default":"-s 128" + } +} diff --git a/benchmarks/cuda/LULESH/lulesh-comms-gpu.cu b/benchmarks/cuda/LULESH/lulesh-comms-gpu.cu new file mode 100755 index 0000000..203cd47 --- /dev/null +++ b/benchmarks/cuda/LULESH/lulesh-comms-gpu.cu @@ -0,0 +1,1926 @@ + +// If no MPI, then this whole file is stubbed out + +#if USE_MPI +#include +#include +#endif + +#include "lulesh.h" + +#if USE_MPI +/* Comm Routines */ + +#define ALLOW_UNPACKED_PLANE false +#define ALLOW_UNPACKED_ROW false +#define ALLOW_UNPACKED_COL false + +/* + There are coherence issues for packing and unpacking message + buffers. Ideally, you would like a lot of threads to + cooperate in the assembly/dissassembly of each message. + To do that, each thread should really be operating in a + different coherence zone. + + Let's assume we have three fields, f1 through f3, defined on + a 61x61x61 cube. If we want to send the block boundary + information for each field to each neighbor processor across + each cube face, then we have three cases for the + memory layout/coherence of data on each of the six cube + boundaries: + + (a) Two of the faces will be in contiguous memory blocks + (b) Two of the faces will be comprised of pencils of + contiguous memory. + (c) Two of the faces will have large strides between + every value living on the face. + + How do you pack and unpack this data in buffers to + simultaneous achieve the best memory efficiency and + the most thread independence? + + Do do you pack field f1 through f3 tighly to reduce message + size? Do you align each field on a cache coherence boundary + within the message so that threads can pack and unpack each + field independently? For case (b), do you align each + boundary pencil of each field separately? This increases + the message size, but could improve cache coherence so + each pencil could be processed independently by a separate + thread with no conflicts. + + Also, memory access for case (c) would best be done without + going through the cache (the stride is so large it just causes + a lot of useless cache evictions). Is it worth creating + a special case version of the packing algorithm that uses + non-coherent load/store opcodes? +*/ + +/******************************************/ + +template +__global__ void SendPlane(Real_t *destAddr, Real_t *srcAddr, Index_t sendCount, Index_t dx, Index_t dy, Index_t dz) +{ + int tid = threadIdx.x + blockIdx.x * blockDim.x; + if (tid >= sendCount) return; + + int i, j; + + switch (type) { + case 0: + i = tid; + destAddr[i] = srcAddr[i] ; + break; + case 1: + i = tid; + destAddr[i] = srcAddr[dx*dy*(dz - 1) + i] ; + break; + case 2: + i = tid / dx; + j = tid % dx; + destAddr[i*dx+j] = srcAddr[i*dx*dy + j] ; + break; + case 3: + i = tid / dx; + j = tid % dx; + destAddr[i*dx+j] = srcAddr[dx*(dy - 1) + i*dx*dy + j] ; + break; + case 4: + i = tid / dy; + j = tid % dy; + destAddr[i*dy + j] = srcAddr[i*dx*dy + j*dx] ; + break; + case 5: + i = tid / dy; + j = tid % dy; + destAddr[i*dy + j] = srcAddr[dx - 1 + i*dx*dy + j*dx] ; + break; + } +} + +template +__global__ void AddPlane(Real_t *srcAddr, Real_t *destAddr, Index_t recvCount, Index_t dx, Index_t dy, Index_t dz) +{ + int tid = threadIdx.x + blockIdx.x * blockDim.x; + if (tid >= recvCount) return; + + int i, j; + + switch (type) { + case 0: + i = tid; + destAddr[i] += srcAddr[i] ; + break; + case 1: + i = tid; + destAddr[dx*dy*(dz - 1) + i] += srcAddr[i] ; + break; + case 2: + i = tid / dx; + j = tid % dx; + destAddr[i*dx*dy + j] += srcAddr[i*dx + j] ; + break; + case 3: + i = tid / dx; + j = tid % dx; + destAddr[dx*(dy - 1) + i*dx*dy + j] += srcAddr[i*dx + j] ; + break; + case 4: + i = tid / dy; + j = tid % dy; + destAddr[i*dx*dy + j*dx] += srcAddr[i*dy + j] ; + break; + case 5: + i = tid / dy; + j = tid % dy; + destAddr[dx - 1 + i*dx*dy + j*dx] += srcAddr[i*dy + j] ; + break; + } +} + +template +__global__ void CopyPlane(Real_t *srcAddr, Real_t *destAddr, Index_t recvCount, Index_t dx, Index_t dy, Index_t dz) +{ + int tid = threadIdx.x + blockIdx.x * blockDim.x; + if (tid >= recvCount) return; + + int i, j; + + switch (type) { + case 0: + i = tid; + destAddr[i] = srcAddr[i] ; + break; + case 1: + i = tid; + destAddr[dx*dy*(dz - 1) + i] = srcAddr[i] ; + break; + case 2: + i = tid / dx; + j = tid % dx; + destAddr[i*dx*dy + j] = srcAddr[i*dx + j] ; + break; + case 3: + i = tid / dx; + j = tid % dx; + destAddr[dx*(dy - 1) + i*dx*dy + j] = srcAddr[i*dx + j] ; + break; + case 4: + i = tid / dy; + j = tid % dy; + destAddr[i*dx*dy + j*dx] = srcAddr[i*dy + j] ; + break; + case 5: + i = tid / dy; + j = tid % dy; + destAddr[dx - 1 + i*dx*dy + j*dx] = srcAddr[i*dy + j] ; + break; + } +} + +template +__global__ void SendEdge(Real_t *destAddr, Real_t *srcAddr, Index_t sendCount, Index_t dx, Index_t dy, Index_t dz) +{ + int i = threadIdx.x + blockIdx.x * blockDim.x; + if (i >= sendCount) return; + + switch (type) { + case 0: + destAddr[i] = srcAddr[i*dx*dy] ; + break; + case 1: + destAddr[i] = srcAddr[i] ; + break; + case 2: + destAddr[i] = srcAddr[i*dx] ; + break; + case 3: + destAddr[i] = srcAddr[dx*dy - 1 + i*dx*dy] ; + break; + case 4: + destAddr[i] = srcAddr[dx*(dy-1) + dx*dy*(dz-1) + i] ; + break; + case 5: + destAddr[i] = srcAddr[dx*dy*(dz-1) + dx - 1 + i*dx] ; + break; + case 6: + destAddr[i] = srcAddr[dx*(dy-1) + i*dx*dy] ; + break; + case 7: + destAddr[i] = srcAddr[dx*dy*(dz-1) + i] ; + break; + case 8: + destAddr[i] = srcAddr[dx*dy*(dz-1) + i*dx] ; + break; + case 9: + destAddr[i] = srcAddr[dx - 1 + i*dx*dy] ; + break; + case 10: + destAddr[i] = srcAddr[dx*(dy - 1) + i] ; + break; + case 11: + destAddr[i] = srcAddr[dx - 1 + i*dx] ; + break; + } +} + +template +__global__ void AddEdge(Real_t *srcAddr, Real_t *destAddr, Index_t recvCount, Index_t dx, Index_t dy, Index_t dz) +{ + int i = threadIdx.x + blockIdx.x * blockDim.x; + if (i >= recvCount) return; + + switch (type) { + case 0: + destAddr[i*dx*dy] += srcAddr[i] ; + break; + case 1: + destAddr[i] += srcAddr[i] ; + break; + case 2: + destAddr[i*dx] += srcAddr[i] ; + break; + case 3: + destAddr[dx*dy - 1 + i*dx*dy] += srcAddr[i] ; + break; + case 4: + destAddr[dx*(dy-1) + dx*dy*(dz-1) + i] += srcAddr[i] ; + break; + case 5: + destAddr[dx*dy*(dz-1) + dx - 1 + i*dx] += srcAddr[i] ; + break; + case 6: + destAddr[dx*(dy-1) + i*dx*dy] += srcAddr[i] ; + break; + case 7: + destAddr[dx*dy*(dz-1) + i] += srcAddr[i] ; + break; + case 8: + destAddr[dx*dy*(dz-1) + i*dx] += srcAddr[i] ; + break; + case 9: + destAddr[dx - 1 + i*dx*dy] += srcAddr[i] ; + break; + case 10: + destAddr[dx*(dy - 1) + i] += srcAddr[i] ; + break; + case 11: + destAddr[dx - 1 + i*dx] += srcAddr[i] ; + break; + } +} + +template +__global__ void CopyEdge(Real_t *srcAddr, Real_t *destAddr, Index_t recvCount, Index_t dx, Index_t dy, Index_t dz) +{ + int i = threadIdx.x + blockIdx.x * blockDim.x; + if (i >= recvCount) return; + + switch (type) { + case 0: + destAddr[i*dx*dy] = srcAddr[i] ; + break; + case 1: + destAddr[i] = srcAddr[i] ; + break; + case 2: + destAddr[i*dx] = srcAddr[i] ; + break; + case 3: + destAddr[dx*dy - 1 + i*dx*dy] = srcAddr[i] ; + break; + case 4: + destAddr[dx*(dy-1) + dx*dy*(dz-1) + i] = srcAddr[i] ; + break; + case 5: + destAddr[dx*dy*(dz-1) + dx - 1 + i*dx] = srcAddr[i] ; + break; + case 6: + destAddr[dx*(dy-1) + i*dx*dy] = srcAddr[i] ; + break; + case 7: + destAddr[dx*dy*(dz-1) + i] = srcAddr[i] ; + break; + case 8: + destAddr[dx*dy*(dz-1) + i*dx] = srcAddr[i] ; + break; + case 9: + destAddr[dx - 1 + i*dx*dy] = srcAddr[i] ; + break; + case 10: + destAddr[dx*(dy - 1) + i] = srcAddr[i] ; + break; + case 11: + destAddr[dx - 1 + i*dx] = srcAddr[i] ; + break; + } +} + +__global__ void AddCorner(Real_t *destAddr, Real_t src) +{ + destAddr[0] += src; +} + +__global__ void CopyCorner(Real_t *destAddr, Real_t src) +{ + destAddr[0] = src; +} + +/******************************************/ + +void CommSendGpu(Domain& domain, int msgType, + Index_t xferFields, Domain_member *fieldData, + Index_t dx, Index_t dy, Index_t dz, bool doSend, bool planeOnly, cudaStream_t stream) +{ + + if (domain.numRanks() == 1) + return ; + + /* post recieve buffers for all incoming messages */ + int myRank ; + Index_t maxPlaneComm = xferFields * domain.maxPlaneSize ; + Index_t maxEdgeComm = xferFields * domain.maxEdgeSize ; + Index_t pmsg = 0 ; /* plane comm msg */ + Index_t emsg = 0 ; /* edge comm msg */ + Index_t cmsg = 0 ; /* corner comm msg */ + MPI_Datatype baseType = ((sizeof(Real_t) == 4) ? MPI_FLOAT : MPI_DOUBLE) ; + MPI_Status status[26] ; + Real_t *destAddr ; + Real_t *d_destAddr ; + bool rowMin, rowMax, colMin, colMax, planeMin, planeMax ; + /* assume communication to 6 neighbors by default */ + rowMin = rowMax = colMin = colMax = planeMin = planeMax = true ; + if (domain.rowLoc() == 0) { + rowMin = false ; + } + if (domain.rowLoc() == (domain.tp()-1)) { + rowMax = false ; + } + if (domain.colLoc() == 0) { + colMin = false ; + } + if (domain.colLoc() == (domain.tp()-1)) { + colMax = false ; + } + if (domain.planeLoc() == 0) { + planeMin = false ; + } + if (domain.planeLoc() == (domain.tp()-1)) { + planeMax = false ; + } + + for (Index_t i=0; i<26; ++i) { + domain.sendRequest[i] = MPI_REQUEST_NULL ; + } + + MPI_Comm_rank(MPI_COMM_WORLD, &myRank) ; + + // setup launch grid + const int block = 128; + + /* post sends */ + + if (planeMin | planeMax) { + /* ASSUMING ONE DOMAIN PER RANK, CONSTANT BLOCK SIZE HERE */ + int sendCount = dx * dy ; + + if (planeMin) { + destAddr = &domain.commDataSend[pmsg * maxPlaneComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm] ; + for (Index_t fi=0 ; fi<<<(sendCount+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), sendCount, dx, dy, dz); + d_destAddr += sendCount ; + } + d_destAddr -= xferFields*sendCount ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*sendCount*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*sendCount, baseType, + myRank - domain.tp()*domain.tp(), msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg]) ; + ++pmsg ; + } + if (planeMax && doSend) { + destAddr = &domain.commDataSend[pmsg * maxPlaneComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm] ; + for (Index_t fi=0 ; fi<<<(sendCount+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), sendCount, dx, dy, dz); + d_destAddr += sendCount ; + } + d_destAddr -= xferFields*sendCount ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*sendCount*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*sendCount, baseType, + myRank + domain.tp()*domain.tp(), msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg]) ; + ++pmsg ; + } + } + if (rowMin | rowMax) { + /* ASSUMING ONE DOMAIN PER RANK, CONSTANT BLOCK SIZE HERE */ + int sendCount = dx * dz ; + + if (rowMin) { + destAddr = &domain.commDataSend[pmsg * maxPlaneComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm] ; + for (Index_t fi=0; fi<<<(sendCount+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), sendCount, dx, dy, dz); + d_destAddr += sendCount ; + } + d_destAddr -= xferFields*sendCount ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*sendCount*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*sendCount, baseType, + myRank - domain.tp(), msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg]) ; + ++pmsg ; + } + if (rowMax && doSend) { + destAddr = &domain.commDataSend[pmsg * maxPlaneComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm] ; + for (Index_t fi=0; fi<<<(sendCount+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), sendCount, dx, dy, dz); + d_destAddr += sendCount ; + } + d_destAddr -= xferFields*sendCount ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*sendCount*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*sendCount, baseType, + myRank + domain.tp(), msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg]) ; + ++pmsg ; + } + } + if (colMin | colMax) { + /* ASSUMING ONE DOMAIN PER RANK, CONSTANT BLOCK SIZE HERE */ + int sendCount = dy * dz ; + + if (colMin) { + destAddr = &domain.commDataSend[pmsg * maxPlaneComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm] ; + for (Index_t fi=0; fi<<<(sendCount+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), sendCount, dx, dy, dz); + d_destAddr += sendCount ; + } + d_destAddr -= xferFields*sendCount ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*sendCount*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*sendCount, baseType, + myRank - 1, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg]) ; + ++pmsg ; + } + if (colMax && doSend) { + destAddr = &domain.commDataSend[pmsg * maxPlaneComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm] ; + for (Index_t fi=0; fi<<<(sendCount+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), sendCount, dx, dy, dz); + d_destAddr += sendCount ; + } + d_destAddr -= xferFields*sendCount ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*sendCount*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*sendCount, baseType, + myRank + 1, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg]) ; + ++pmsg ; + } + } + + if (!planeOnly) { + if (rowMin && colMin) { + int toRank = myRank - domain.tp() - 1 ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dz+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dz, dx, dy, dz); + d_destAddr += dz ; + } + d_destAddr -= xferFields*dz ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dz, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMin && planeMin) { + int toRank = myRank - domain.tp()*domain.tp() - domain.tp() ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dx+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dx, dx, dy, dz); + d_destAddr += dx ; + } + d_destAddr -= xferFields*dx ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dx, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (colMin && planeMin) { + int toRank = myRank - domain.tp()*domain.tp() - 1 ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dy+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dy, dx, dy, dz); + d_destAddr += dy ; + } + d_destAddr -= xferFields*dy ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dy, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMax && colMax && doSend) { + int toRank = myRank + domain.tp() + 1 ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dz+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dz, dx, dy, dz); + d_destAddr += dz ; + } + d_destAddr -= xferFields*dz ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dz, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMax && planeMax && doSend) { + int toRank = myRank + domain.tp()*domain.tp() + domain.tp() ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dx+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dx, dx, dy, dz); + d_destAddr += dx ; + } + d_destAddr -= xferFields*dx ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dx, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (colMax && planeMax && doSend) { + int toRank = myRank + domain.tp()*domain.tp() + 1 ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dy+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dy, dx, dy, dz); + d_destAddr += dy ; + } + d_destAddr -= xferFields*dy ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dy, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMax && colMin && doSend) { + int toRank = myRank + domain.tp() - 1 ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dz+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dz, dx, dy, dz); + d_destAddr += dz ; + } + d_destAddr -= xferFields*dz ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dz, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMin && planeMax && doSend) { + int toRank = myRank + domain.tp()*domain.tp() - domain.tp() ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dx+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dx, dx, dy, dz); + d_destAddr += dx ; + } + d_destAddr -= xferFields*dx ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dx, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (colMin && planeMax && doSend) { + int toRank = myRank + domain.tp()*domain.tp() - 1 ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dy+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dy, dx, dy, dz); + d_destAddr += dy ; + } + d_destAddr -= xferFields*dy ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dy, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMin && colMax) { + int toRank = myRank - domain.tp() + 1 ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dz+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dz, dx, dy, dz); + d_destAddr += dz ; + } + d_destAddr -= xferFields*dz ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dz, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMax && planeMin) { + int toRank = myRank - domain.tp()*domain.tp() + domain.tp() ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dx+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dx, dx, dy, dz); + d_destAddr += dx ; + } + d_destAddr -= xferFields*dx ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dx, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (colMax && planeMin) { + int toRank = myRank - domain.tp()*domain.tp() + 1 ; + destAddr = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_destAddr = &domain.d_commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + for (Index_t fi=0; fi<<<(dy+block-1)/block,block,0,stream>>>(d_destAddr, &(domain.*src)(0), dy, dx, dy, dz); + d_destAddr += dy ; + } + d_destAddr -= xferFields*dy ; + cudaMemcpyAsync(destAddr, d_destAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyDeviceToHost, stream); + cudaStreamSynchronize(stream); + + MPI_Isend(destAddr, xferFields*dy, baseType, toRank, msgType, + MPI_COMM_WORLD, &domain.sendRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMin && colMin && planeMin) { + /* corner at domain logical coord (0, 0, 0) */ + int toRank = myRank - domain.tp()*domain.tp() - domain.tp() - 1 ; + Real_t *comBuf = &domain.commDataSend[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + for (Index_t fi=0; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + if (planeMax) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + } + + if (rowMin | rowMax) { + /* ASSUMING ONE DOMAIN PER RANK, CONSTANT BLOCK SIZE HERE */ + Index_t opCount = dx * dz ; + + if (rowMin) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + if (rowMax) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + } + if (colMin | colMax) { + /* ASSUMING ONE DOMAIN PER RANK, CONSTANT BLOCK SIZE HERE */ + Index_t opCount = dy * dz ; + + if (colMin) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + if (colMax) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + } + + if (rowMin & colMin) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dz+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dz, dx, dy, dz); + d_srcAddr += dz ; + } + ++emsg ; + } + + if (rowMin & planeMin) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dx+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dx, dx, dy, dz); + d_srcAddr += dx ; + } + ++emsg ; + } + + if (colMin & planeMin) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dy+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dy, dx, dy, dz); + d_srcAddr += dy ; + } + ++emsg ; + } + + if (rowMax & colMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dz+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dz, dx, dy, dz); + d_srcAddr += dz ; + } + ++emsg ; + } + + if (rowMax & planeMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dx+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dx, dx, dy, dz); + d_srcAddr += dx ; + } + ++emsg ; + } + + if (colMax & planeMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dy+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dy, dx, dy, dz); + d_srcAddr += dy ; + } + ++emsg ; + } + + if (rowMax & colMin) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dz+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dz, dx, dy, dz); + d_srcAddr += dz ; + } + ++emsg ; + } + + if (rowMin & planeMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dx+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dx, dx, dy, dz); + d_srcAddr += dx ; + } + ++emsg ; + } + + if (colMin & planeMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dy+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dy, dx, dy, dz); + d_srcAddr += dy ; + } + ++emsg ; + } + + if (rowMin & colMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dz+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dz, dx, dy, dz); + d_srcAddr += dz ; + } + ++emsg ; + } + + if (rowMax & planeMin) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dx+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dx, dx, dy, dz); + d_srcAddr += dx ; + } + ++emsg ; + } + + if (colMax & planeMin) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dy+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dy, dx, dy, dz); + d_srcAddr += dy ; + } + ++emsg ; + } + + if (rowMin & colMin & planeMin) { + stream = streams[s++]; + /* corner at domain logical coord (0, 0, 0) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(0), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMin & colMin & planeMax) { + stream = streams[s++]; + /* corner at domain logical coord (0, 0, 1) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*dy*(dz - 1) ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMin & colMax & planeMin) { + stream = streams[s++]; + /* corner at domain logical coord (1, 0, 0) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx - 1 ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMin & colMax & planeMax) { + stream = streams[s++]; + /* corner at domain logical coord (1, 0, 1) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*dy*(dz - 1) + (dx - 1) ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMax & colMin & planeMin) { + stream = streams[s++]; + /* corner at domain logical coord (0, 1, 0) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*(dy - 1) ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMax & colMin & planeMax) { + stream = streams[s++]; + /* corner at domain logical coord (0, 1, 1) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*dy*(dz - 1) + dx*(dy - 1) ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMax & colMax & planeMin) { + stream = streams[s++]; + /* corner at domain logical coord (1, 1, 0) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*dy - 1 ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMax & colMax & planeMax) { + stream = streams[s++]; + /* corner at domain logical coord (1, 1, 1) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*dy*dz - 1 ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + + // don't need to call synchronize since it will be done automatically + // before kernels start to execute in NULL stream +} + +/******************************************/ + +void CommSyncPosVelGpu(Domain& domain, cudaStream_t *streams) { + + if (domain.numRanks() == 1) + return ; + + int myRank ; + bool doRecv = false ; + Index_t xferFields = 6 ; /* x, y, z, xd, yd, zd */ + Domain_member fieldData[6] ; + Index_t maxPlaneComm = xferFields * domain.maxPlaneSize ; + Index_t maxEdgeComm = xferFields * domain.maxEdgeSize ; + Index_t pmsg = 0 ; /* plane comm msg */ + Index_t emsg = 0 ; /* edge comm msg */ + Index_t cmsg = 0 ; /* corner comm msg */ + Index_t dx = domain.sizeX + 1 ; + Index_t dy = domain.sizeY + 1 ; + Index_t dz = domain.sizeZ + 1 ; + MPI_Status status ; + Real_t *srcAddr ; + Real_t *d_srcAddr ; + bool rowMin, rowMax, colMin, colMax, planeMin, planeMax ; + + /* assume communication to 6 neighbors by default */ + rowMin = rowMax = colMin = colMax = planeMin = planeMax = true ; + if (domain.rowLoc() == 0) { + rowMin = false ; + } + if (domain.rowLoc() == (domain.tp()-1)) { + rowMax = false ; + } + if (domain.colLoc() == 0) { + colMin = false ; + } + if (domain.colLoc() == (domain.tp()-1)) { + colMax = false ; + } + if (domain.planeLoc() == 0) { + planeMin = false ; + } + if (domain.planeLoc() == (domain.tp()-1)) { + planeMax = false ; + } + + fieldData[0] = &Domain::get_x ; + fieldData[1] = &Domain::get_y ; + fieldData[2] = &Domain::get_z ; + fieldData[3] = &Domain::get_xd ; + fieldData[4] = &Domain::get_yd ; + fieldData[5] = &Domain::get_zd ; + + // setup launch grid + const int block = 128; + + // streams + int s = 0; + cudaStream_t stream; + + MPI_Comm_rank(MPI_COMM_WORLD, &myRank) ; + + if (planeMin | planeMax) { + /* ASSUMING ONE DOMAIN PER RANK, CONSTANT BLOCK SIZE HERE */ + Index_t opCount = dx * dy ; + + if (planeMin && doRecv) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + if (planeMax) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + } + + if (rowMin | rowMax) { + /* ASSUMING ONE DOMAIN PER RANK, CONSTANT BLOCK SIZE HERE */ + Index_t opCount = dx * dz ; + + if (rowMin && doRecv) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + if (rowMax) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + } + if (colMin | colMax) { + /* ASSUMING ONE DOMAIN PER RANK, CONSTANT BLOCK SIZE HERE */ + Index_t opCount = dy * dz ; + + if (colMin && doRecv) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + if (colMax) { + /* contiguous memory */ + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*opCount*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(opCount+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), opCount, dx, dy, dz); + d_srcAddr += opCount ; + } + ++pmsg ; + } + } + + if (rowMin && colMin && doRecv) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dz+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dz, dx, dy, dz); + d_srcAddr += dz ; + } + ++emsg ; + } + + if (rowMin && planeMin && doRecv) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dx+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dx, dx, dy, dz); + d_srcAddr += dx ; + } + ++emsg ; + } + + if (colMin && planeMin && doRecv) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dy+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dy, dx, dy, dz); + d_srcAddr += dy ; + } + ++emsg ; + } + + if (rowMax & colMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dz+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dz, dx, dy, dz); + d_srcAddr += dz ; + } + ++emsg ; + } + + if (rowMax & planeMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dx+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dx, dx, dy, dz); + d_srcAddr += dx ; + } + ++emsg ; + } + + if (colMax & planeMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dy+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dy, dx, dy, dz); + d_srcAddr += dy ; + } + ++emsg ; + } + + if (rowMax & colMin) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dz+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dz, dx, dy, dz); + d_srcAddr += dz ; + } + ++emsg ; + } + + if (rowMin & planeMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dx+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dx, dx, dy, dz); + d_srcAddr += dx ; + } + ++emsg ; + } + + if (colMin & planeMax) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dy+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dy, dx, dy, dz); + d_srcAddr += dy ; + } + ++emsg ; + } + + if (rowMin && colMax && doRecv) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dz*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dz+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dz, dx, dy, dz); + d_srcAddr += dz ; + } + ++emsg ; + } + + if (rowMax && planeMin && doRecv) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dx*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dx+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dx, dx, dy, dz); + d_srcAddr += dx ; + } + ++emsg ; + } + + if (colMax && planeMin && doRecv) { + stream = streams[s++]; + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + d_srcAddr = &domain.d_commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg], &status) ; + cudaMemcpyAsync(d_srcAddr, srcAddr, xferFields*dy*sizeof(Real_t), cudaMemcpyHostToDevice, stream); + for (Index_t fi=0 ; fi<<<(dy+block-1)/block,block,0,stream>>>(d_srcAddr, &(domain.*dest)(0), dy, dx, dy, dz); + d_srcAddr += dy ; + } + ++emsg ; + } + + if (rowMin & colMin & planeMin & doRecv) { + stream = streams[s++]; + /* corner at domain logical coord (0, 0, 0) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(0), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMin & colMin & planeMax) { + stream = streams[s++]; + /* corner at domain logical coord (0, 0, 1) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*dy*(dz - 1) ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMin & colMax & planeMin & doRecv) { + stream = streams[s++]; + /* corner at domain logical coord (1, 0, 0) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx - 1 ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMin & colMax & planeMax) { + stream = streams[s++]; + /* corner at domain logical coord (1, 0, 1) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*dy*(dz - 1) + (dx - 1) ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMax & colMin & planeMin & doRecv) { + stream = streams[s++]; + /* corner at domain logical coord (0, 1, 0) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*(dy - 1) ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMax & colMin & planeMax) { + stream = streams[s++]; + /* corner at domain logical coord (0, 1, 1) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*dy*(dz - 1) + dx*(dy - 1) ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMax & colMax & planeMin & doRecv) { + stream = streams[s++]; + /* corner at domain logical coord (1, 1, 0) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*dy - 1 ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + if (rowMax & colMax & planeMax) { + stream = streams[s++]; + /* corner at domain logical coord (1, 1, 1) */ + Real_t *comBuf = &domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL] ; + Index_t idx = dx*dy*dz - 1 ; + MPI_Wait(&domain.recvRequest[pmsg+emsg+cmsg], &status) ; + for (Index_t fi=0; fi>>(&(domain.*fieldData[fi])(idx), comBuf[fi]) ; + } + ++cmsg ; + } + + // don't need to call synchronize since it will be done automatically + // before kernels start to execute in NULL stream +} + +/******************************************/ + +void CommMonoQGpu(Domain& domain, cudaStream_t stream) +{ + if (domain.numRanks() == 1) + return ; + + int myRank ; + Index_t xferFields = 3 ; /* delv_xi, delv_eta, delv_zeta */ + Domain_member fieldData[3] ; + Index_t fieldOffset[3] ; + Index_t maxPlaneComm = xferFields * domain.maxPlaneSize ; + Index_t pmsg = 0 ; /* plane comm msg */ + Index_t dx = domain.sizeX ; + Index_t dy = domain.sizeY ; + Index_t dz = domain.sizeZ ; + MPI_Status status ; + Real_t *srcAddr ; + bool rowMin, rowMax, colMin, colMax, planeMin, planeMax ; + /* assume communication to 6 neighbors by default */ + rowMin = rowMax = colMin = colMax = planeMin = planeMax = true ; + if (domain.rowLoc() == 0) { + rowMin = false ; + } + if (domain.rowLoc() == (domain.tp()-1)) { + rowMax = false ; + } + if (domain.colLoc() == 0) { + colMin = false ; + } + if (domain.colLoc() == (domain.tp()-1)) { + colMax = false ; + } + if (domain.planeLoc() == 0) { + planeMin = false ; + } + if (domain.planeLoc() == (domain.tp()-1)) { + planeMax = false ; + } + + /* point into ghost data area */ + // fieldData[0] = &(domain.delv_xi(domain.numElem())) ; + // fieldData[1] = &(domain.delv_eta(domain.numElem())) ; + // fieldData[2] = &(domain.delv_zeta(domain.numElem())) ; + fieldData[0] = &Domain::get_delv_xi ; + fieldData[1] = &Domain::get_delv_eta ; + fieldData[2] = &Domain::get_delv_zeta ; + fieldOffset[0] = domain.numElem ; + fieldOffset[1] = domain.numElem ; + fieldOffset[2] = domain.numElem ; + + MPI_Comm_rank(MPI_COMM_WORLD, &myRank) ; + + if (planeMin | planeMax) { + /* ASSUMING ONE DOMAIN PER RANK, CONSTANT BLOCK SIZE HERE */ + Index_t opCount = dx * dy ; + + if (planeMin) { + /* contiguous memory */ + srcAddr = &domain.commDataRecv[pmsg * maxPlaneComm] ; + MPI_Wait(&domain.recvRequest[pmsg], &status) ; + for (Index_t fi=0 ; fi +#include +#endif + +#include "lulesh.h" + +#if USE_MPI +/* Comm Routines */ + +#define ALLOW_UNPACKED_PLANE false +#define ALLOW_UNPACKED_ROW false +#define ALLOW_UNPACKED_COL false + +/* + There are coherence issues for packing and unpacking message + buffers. Ideally, you would like a lot of threads to + cooperate in the assembly/dissassembly of each message. + To do that, each thread should really be operating in a + different coherence zone. + + Let's assume we have three fields, f1 through f3, defined on + a 61x61x61 cube. If we want to send the block boundary + information for each field to each neighbor processor across + each cube face, then we have three cases for the + memory layout/coherence of data on each of the six cube + boundaries: + + (a) Two of the faces will be in contiguous memory blocks + (b) Two of the faces will be comprised of pencils of + contiguous memory. + (c) Two of the faces will have large strides between + every value living on the face. + + How do you pack and unpack this data in buffers to + simultaneous achieve the best memory efficiency and + the most thread independence? + + Do do you pack field f1 through f3 tighly to reduce message + size? Do you align each field on a cache coherence boundary + within the message so that threads can pack and unpack each + field independently? For case (b), do you align each + boundary pencil of each field separately? This increases + the message size, but could improve cache coherence so + each pencil could be processed independently by a separate + thread with no conflicts. + + Also, memory access for case (c) would best be done without + going through the cache (the stride is so large it just causes + a lot of useless cache evictions). Is it worth creating + a special case version of the packing algorithm that uses + non-coherent load/store opcodes? +*/ + +/******************************************/ + + +/* doRecv flag only works with regular block structure */ +void CommRecv(Domain& domain, int msgType, Index_t xferFields, + Index_t dx, Index_t dy, Index_t dz, bool doRecv, bool planeOnly) { + + if (domain.numRanks() == 1) + return ; + + /* post recieve buffers for all incoming messages */ + int myRank ; + Index_t maxPlaneComm = xferFields * domain.maxPlaneSize ; + Index_t maxEdgeComm = xferFields * domain.maxEdgeSize ; + Index_t pmsg = 0 ; /* plane comm msg */ + Index_t emsg = 0 ; /* edge comm msg */ + Index_t cmsg = 0 ; /* corner comm msg */ + MPI_Datatype baseType = ((sizeof(Real_t) == 4) ? MPI_FLOAT : MPI_DOUBLE) ; + bool rowMin, rowMax, colMin, colMax, planeMin, planeMax ; + + /* assume communication to 6 neighbors by default */ + rowMin = rowMax = colMin = colMax = planeMin = planeMax = true ; + + if (domain.rowLoc() == 0) { + rowMin = false ; + } + if (domain.rowLoc() == (domain.tp()-1)) { + rowMax = false ; + } + if (domain.colLoc() == 0) { + colMin = false ; + } + if (domain.colLoc() == (domain.tp()-1)) { + colMax = false ; + } + if (domain.planeLoc() == 0) { + planeMin = false ; + } + if (domain.planeLoc() == (domain.tp()-1)) { + planeMax = false ; + } + + for (Index_t i=0; i<26; ++i) { + domain.recvRequest[i] = MPI_REQUEST_NULL ; + } + + MPI_Comm_rank(MPI_COMM_WORLD, &myRank) ; + + /* post receives */ + + /* receive data from neighboring domain faces */ + if (planeMin && doRecv) { + /* contiguous memory */ + int fromRank = myRank - domain.tp()*domain.tp() ; + int recvCount = dx * dy * xferFields ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm], + recvCount, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg]) ; + ++pmsg ; + } + if (planeMax) { + /* contiguous memory */ + int fromRank = myRank + domain.tp()*domain.tp() ; + int recvCount = dx * dy * xferFields ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm], + recvCount, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg]) ; + ++pmsg ; + } + if (rowMin && doRecv) { + /* semi-contiguous memory */ + int fromRank = myRank - domain.tp() ; + int recvCount = dx * dz * xferFields ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm], + recvCount, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg]) ; + ++pmsg ; + } + if (rowMax) { + /* semi-contiguous memory */ + int fromRank = myRank + domain.tp() ; + int recvCount = dx * dz * xferFields ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm], + recvCount, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg]) ; + ++pmsg ; + } + if (colMin && doRecv) { + /* scattered memory */ + int fromRank = myRank - 1 ; + int recvCount = dy * dz * xferFields ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm], + recvCount, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg]) ; + ++pmsg ; + } + if (colMax) { + /* scattered memory */ + int fromRank = myRank + 1 ; + int recvCount = dy * dz * xferFields ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm], + recvCount, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg]) ; + ++pmsg ; + } + + if (!planeOnly) { + /* receive data from domains connected only by an edge */ + if (rowMin && colMin && doRecv) { + int fromRank = myRank - domain.tp() - 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dz * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMin && planeMin && doRecv) { + int fromRank = myRank - domain.tp()*domain.tp() - domain.tp() ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dx * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (colMin && planeMin && doRecv) { + int fromRank = myRank - domain.tp()*domain.tp() - 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dy * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMax && colMax) { + int fromRank = myRank + domain.tp() + 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dz * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMax && planeMax) { + int fromRank = myRank + domain.tp()*domain.tp() + domain.tp() ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dx * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (colMax && planeMax) { + int fromRank = myRank + domain.tp()*domain.tp() + 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dy * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMax && colMin) { + int fromRank = myRank + domain.tp() - 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dz * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMin && planeMax) { + int fromRank = myRank + domain.tp()*domain.tp() - domain.tp() ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dx * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (colMin && planeMax) { + int fromRank = myRank + domain.tp()*domain.tp() - 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dy * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMin && colMax && doRecv) { + int fromRank = myRank - domain.tp() + 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dz * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (rowMax && planeMin && doRecv) { + int fromRank = myRank - domain.tp()*domain.tp() + domain.tp() ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dx * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + if (colMax && planeMin && doRecv) { + int fromRank = myRank - domain.tp()*domain.tp() + 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm], + dy * xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg]) ; + ++emsg ; + } + + /* receive data from domains connected only by a corner */ + if (rowMin && colMin && planeMin && doRecv) { + /* corner at domain logical coord (0, 0, 0) */ + int fromRank = myRank - domain.tp()*domain.tp() - domain.tp() - 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL], + xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg+cmsg]) ; + ++cmsg ; + } + if (rowMin && colMin && planeMax) { + /* corner at domain logical coord (0, 0, 1) */ + int fromRank = myRank + domain.tp()*domain.tp() - domain.tp() - 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL], + xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg+cmsg]) ; + ++cmsg ; + } + if (rowMin && colMax && planeMin && doRecv) { + /* corner at domain logical coord (1, 0, 0) */ + int fromRank = myRank - domain.tp()*domain.tp() - domain.tp() + 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL], + xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg+cmsg]) ; + ++cmsg ; + } + if (rowMin && colMax && planeMax) { + /* corner at domain logical coord (1, 0, 1) */ + int fromRank = myRank + domain.tp()*domain.tp() - domain.tp() + 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL], + xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg+cmsg]) ; + ++cmsg ; + } + if (rowMax && colMin && planeMin && doRecv) { + /* corner at domain logical coord (0, 1, 0) */ + int fromRank = myRank - domain.tp()*domain.tp() + domain.tp() - 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL], + xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg+cmsg]) ; + ++cmsg ; + } + if (rowMax && colMin && planeMax) { + /* corner at domain logical coord (0, 1, 1) */ + int fromRank = myRank + domain.tp()*domain.tp() + domain.tp() - 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL], + xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg+cmsg]) ; + ++cmsg ; + } + if (rowMax && colMax && planeMin && doRecv) { + /* corner at domain logical coord (1, 1, 0) */ + int fromRank = myRank - domain.tp()*domain.tp() + domain.tp() + 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL], + xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg+cmsg]) ; + ++cmsg ; + } + if (rowMax && colMax && planeMax) { + /* corner at domain logical coord (1, 1, 1) */ + int fromRank = myRank + domain.tp()*domain.tp() + domain.tp() + 1 ; + MPI_Irecv(&domain.commDataRecv[pmsg * maxPlaneComm + + emsg * maxEdgeComm + + cmsg * CACHE_COHERENCE_PAD_REAL], + xferFields, baseType, fromRank, msgType, + MPI_COMM_WORLD, &domain.recvRequest[pmsg+emsg+cmsg]) ; + ++cmsg ; + } + } +} + +/******************************************/ + +void CommSend(Domain& domain, int msgType, + Index_t xferFields, Domain_member *fieldData, + Index_t dx, Index_t dy, Index_t dz, bool doSend, bool planeOnly) +{ + + if (domain.numRanks() == 1) + return ; + + /* post recieve buffers for all incoming messages */ + int myRank ; + Index_t maxPlaneComm = xferFields * domain.maxPlaneSize ; + Index_t maxEdgeComm = xferFields * domain.maxEdgeSize ; + Index_t pmsg = 0 ; /* plane comm msg */ + Index_t emsg = 0 ; /* edge comm msg */ + Index_t cmsg = 0 ; /* corner comm msg */ + MPI_Datatype baseType = ((sizeof(Real_t) == 4) ? MPI_FLOAT : MPI_DOUBLE) ; + MPI_Status status[26] ; + Real_t *destAddr ; + bool rowMin, rowMax, colMin, colMax, planeMin, planeMax ; + /* assume communication to 6 neighbors by default */ + rowMin = rowMax = colMin = colMax = planeMin = planeMax = true ; + if (domain.rowLoc() == 0) { + rowMin = false ; + } + if (domain.rowLoc() == (domain.tp()-1)) { + rowMax = false ; + } + if (domain.colLoc() == 0) { + colMin = false ; + } + if (domain.colLoc() == (domain.tp()-1)) { + colMax = false ; + } + if (domain.planeLoc() == 0) { + planeMin = false ; + } + if (domain.planeLoc() == (domain.tp()-1)) { + planeMax = false ; + } + + for (Index_t i=0; i<26; ++i) { + domain.sendRequest[i] = MPI_REQUEST_NULL ; + } + + MPI_Comm_rank(MPI_COMM_WORLD, &myRank) ; + + /* post sends */ + + if (planeMin | planeMax) { + /* ASSUMING ONE DOMAIN PER RANK, CONSTANT BLOCK SIZE HERE */ + int sendCount = dx * dy ; + + if (planeMin) { + destAddr = &domain.commDataSend[pmsg * maxPlaneComm] ; + for (Index_t fi=0 ; fi +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include "cuda_profiler_api.h" + +#ifdef USE_MPI +#include +#endif + +#include +#include + +#include "lulesh.h" + +/****************************************************/ +/* Allow flexibility for arithmetic representations */ +/****************************************************/ +__device__ inline real4 SQRT(real4 arg) { return sqrtf(arg) ; } +__device__ inline real8 SQRT(real8 arg) { return sqrt(arg) ; } + +__device__ inline real4 CBRT(real4 arg) { return cbrtf(arg) ; } +__device__ inline real8 CBRT(real8 arg) { return cbrt(arg) ; } + +__device__ __host__ inline real4 FABS(real4 arg) { return fabsf(arg) ; } +__device__ __host__ inline real8 FABS(real8 arg) { return fabs(arg) ; } + +__device__ inline real4 FMAX(real4 arg1,real4 arg2) { return fmaxf(arg1,arg2) ; } +__device__ inline real8 FMAX(real8 arg1,real8 arg2) { return fmax(arg1,arg2) ; } + +#define MAX(a, b) ( ((a) > (b)) ? (a) : (b)) + +/* Stuff needed for boundary conditions */ +/* 2 BCs on each of 6 hexahedral faces (12 bits) */ +#define XI_M 0x00007 +#define XI_M_SYMM 0x00001 +#define XI_M_FREE 0x00002 +#define XI_M_COMM 0x00004 + +#define XI_P 0x00038 +#define XI_P_SYMM 0x00008 +#define XI_P_FREE 0x00010 +#define XI_P_COMM 0x00020 + +#define ETA_M 0x001c0 +#define ETA_M_SYMM 0x00040 +#define ETA_M_FREE 0x00080 +#define ETA_M_COMM 0x00100 + +#define ETA_P 0x00e00 +#define ETA_P_SYMM 0x00200 +#define ETA_P_FREE 0x00400 +#define ETA_P_COMM 0x00800 + +#define ZETA_M 0x07000 +#define ZETA_M_SYMM 0x01000 +#define ZETA_M_FREE 0x02000 +#define ZETA_M_COMM 0x04000 + +#define ZETA_P 0x38000 +#define ZETA_P_SYMM 0x08000 +#define ZETA_P_FREE 0x10000 +#define ZETA_P_COMM 0x20000 + +#define VOLUDER(a0,a1,a2,a3,a4,a5,b0,b1,b2,b3,b4,b5,dvdc) \ +{ \ + const Real_t twelfth = Real_t(1.0) / Real_t(12.0) ; \ + \ + dvdc= \ + ((a1) + (a2)) * ((b0) + (b1)) - ((a0) + (a1)) * ((b1) + (b2)) + \ + ((a0) + (a4)) * ((b3) + (b4)) - ((a3) + (a4)) * ((b0) + (b4)) - \ + ((a2) + (a5)) * ((b3) + (b5)) + ((a3) + (a5)) * ((b2) + (b5)); \ + dvdc *= twelfth; \ +} +/* +__device__ +static +__forceinline__ +void SumOverNodes(Real_t& val, volatile Real_t* smem, int cta_elem, int node) { + + int tid = (cta_elem << 3) + node; + smem[tid] = val; + if (node < 4) + { + smem[tid] += smem[tid+4]; + smem[tid] += smem[tid+2]; + smem[tid] += smem[tid+1]; + } + val = smem[(cta_elem << 3)]; +} +*/ + +__device__ +static +__forceinline__ +void SumOverNodesShfl(Real_t& val) { + + val += utils::shfl_xor( val, 4, 8); + val += utils::shfl_xor( val, 2, 8); + val += utils::shfl_xor( val, 1, 8); +} + +__host__ __device__ +static +__forceinline__ +Real_t CalcElemVolume( const Real_t x0, const Real_t x1, + const Real_t x2, const Real_t x3, + const Real_t x4, const Real_t x5, + const Real_t x6, const Real_t x7, + const Real_t y0, const Real_t y1, + const Real_t y2, const Real_t y3, + const Real_t y4, const Real_t y5, + const Real_t y6, const Real_t y7, + const Real_t z0, const Real_t z1, + const Real_t z2, const Real_t z3, + const Real_t z4, const Real_t z5, + const Real_t z6, const Real_t z7 ) +{ + Real_t twelveth = Real_t(1.0)/Real_t(12.0); + + Real_t dx61 = x6 - x1; + Real_t dy61 = y6 - y1; + Real_t dz61 = z6 - z1; + + Real_t dx70 = x7 - x0; + Real_t dy70 = y7 - y0; + Real_t dz70 = z7 - z0; + + Real_t dx63 = x6 - x3; + Real_t dy63 = y6 - y3; + Real_t dz63 = z6 - z3; + + Real_t dx20 = x2 - x0; + Real_t dy20 = y2 - y0; + Real_t dz20 = z2 - z0; + + Real_t dx50 = x5 - x0; + Real_t dy50 = y5 - y0; + Real_t dz50 = z5 - z0; + + Real_t dx64 = x6 - x4; + Real_t dy64 = y6 - y4; + Real_t dz64 = z6 - z4; + + Real_t dx31 = x3 - x1; + Real_t dy31 = y3 - y1; + Real_t dz31 = z3 - z1; + + Real_t dx72 = x7 - x2; + Real_t dy72 = y7 - y2; + Real_t dz72 = z7 - z2; + + Real_t dx43 = x4 - x3; + Real_t dy43 = y4 - y3; + Real_t dz43 = z4 - z3; + + Real_t dx57 = x5 - x7; + Real_t dy57 = y5 - y7; + Real_t dz57 = z5 - z7; + + Real_t dx14 = x1 - x4; + Real_t dy14 = y1 - y4; + Real_t dz14 = z1 - z4; + + Real_t dx25 = x2 - x5; + Real_t dy25 = y2 - y5; + Real_t dz25 = z2 - z5; + +#define TRIPLE_PRODUCT(x1, y1, z1, x2, y2, z2, x3, y3, z3) \ + ((x1)*((y2)*(z3) - (z2)*(y3)) + (x2)*((z1)*(y3) - (y1)*(z3)) + (x3)*((y1)*(z2) - (z1)*(y2))) + + // 11 + 3*14 + Real_t volume = + TRIPLE_PRODUCT(dx31 + dx72, dx63, dx20, + dy31 + dy72, dy63, dy20, + dz31 + dz72, dz63, dz20) + + TRIPLE_PRODUCT(dx43 + dx57, dx64, dx70, + dy43 + dy57, dy64, dy70, + dz43 + dz57, dz64, dz70) + + TRIPLE_PRODUCT(dx14 + dx25, dx61, dx50, + dy14 + dy25, dy61, dy50, + dz14 + dz25, dz61, dz50); + +#undef TRIPLE_PRODUCT + + volume *= twelveth; + + return volume ; +} + +__host__ __device__ +static +__forceinline__ +Real_t CalcElemVolume( const Real_t x[8], const Real_t y[8], const Real_t z[8] ) +{ +return CalcElemVolume( x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7], + y[0], y[1], y[2], y[3], y[4], y[5], y[6], y[7], + z[0], z[1], z[2], z[3], z[4], z[5], z[6], z[7]); +} + +void cuda_init(int rank) +{ + Int_t deviceCount, dev; + cudaDeviceProp cuda_deviceProp; + + cudaSafeCall( cudaGetDeviceCount(&deviceCount) ); + if (deviceCount == 0) { + fprintf(stderr, "cuda_init(): no devices supporting CUDA.\n"); + exit(1); + } + + dev = rank % deviceCount; + + if ((dev < 0) || (dev > deviceCount-1)) { + fprintf(stderr, "cuda_init(): requested device (%d) out of range [%d,%d]\n", + dev, 0, deviceCount-1); + exit(1); + } + + cudaSafeCall( cudaSetDevice(dev) ); + + struct cudaDeviceProp props; + cudaGetDeviceProperties(&props, dev); + + char hostname[256]; + gethostname(hostname, sizeof(hostname)); + + printf("Host %s using GPU %i: %s\n", hostname, dev, props.name); + + cudaSafeCall( cudaGetDeviceProperties(&cuda_deviceProp, dev) ); + if (cuda_deviceProp.major < 3) { + fprintf(stderr, "cuda_init(): This implementation of Lulesh requires device SM 3.0+.\n", dev); + exit(1); + } + +#if CUDART_VERSION < 5000 + fprintf(stderr,"cuda_init(): This implementation of Lulesh uses texture objects, which is requires Cuda 5.0+.\n"); + exit(1); +#endif + +} + +void AllocateNodalPersistent(Domain* domain, size_t domNodes) +{ + domain->x.resize(domNodes) ; /* coordinates */ + domain->y.resize(domNodes) ; + domain->z.resize(domNodes) ; + + domain->xd.resize(domNodes) ; /* velocities */ + domain->yd.resize(domNodes) ; + domain->zd.resize(domNodes) ; + + domain->xdd.resize(domNodes) ; /* accelerations */ + domain->ydd.resize(domNodes) ; + domain->zdd.resize(domNodes) ; + + domain->fx.resize(domNodes) ; /* forces */ + domain->fy.resize(domNodes) ; + domain->fz.resize(domNodes) ; + + domain->nodalMass.resize(domNodes) ; /* mass */ +} + +void AllocateElemPersistent(Domain* domain, size_t domElems, size_t padded_domElems) +{ + domain->matElemlist.resize(domElems) ; /* material indexset */ + domain->nodelist.resize(8*padded_domElems) ; /* elemToNode connectivity */ + + domain->lxim.resize(domElems) ; /* elem connectivity through face */ + domain->lxip.resize(domElems) ; + domain->letam.resize(domElems) ; + domain->letap.resize(domElems) ; + domain->lzetam.resize(domElems) ; + domain->lzetap.resize(domElems) ; + + domain->elemBC.resize(domElems) ; /* elem face symm/free-surf flag */ + + domain->e.resize(domElems) ; /* energy */ + domain->p.resize(domElems) ; /* pressure */ + + domain->q.resize(domElems) ; /* q */ + domain->ql.resize(domElems) ; /* linear term for q */ + domain->qq.resize(domElems) ; /* quadratic term for q */ + + domain->v.resize(domElems) ; /* relative volume */ + + domain->volo.resize(domElems) ; /* reference volume */ + domain->delv.resize(domElems) ; /* m_vnew - m_v */ + domain->vdov.resize(domElems) ; /* volume derivative over volume */ + + domain->arealg.resize(domElems) ; /* elem characteristic length */ + + domain->ss.resize(domElems) ; /* "sound speed" */ + + domain->elemMass.resize(domElems) ; /* mass */ + +} + +void AllocateSymmX(Domain* domain, size_t size) +{ + domain->symmX.resize(size) ; +} + +void AllocateSymmY(Domain* domain, size_t size) +{ + domain->symmY.resize(size) ; +} + +void AllocateSymmZ(Domain* domain, size_t size) +{ + domain->symmZ.resize(size) ; +} + +void InitializeFields(Domain* domain) +{ + /* Basic Field Initialization */ + + thrust::fill(domain->ss.begin(),domain->ss.end(),0.); + thrust::fill(domain->e.begin(),domain->e.end(),0.); + thrust::fill(domain->p.begin(),domain->p.end(),0.); + thrust::fill(domain->q.begin(),domain->q.end(),0.); + thrust::fill(domain->v.begin(),domain->v.end(),1.); + + thrust::fill(domain->xd.begin(),domain->xd.end(),0.); + thrust::fill(domain->yd.begin(),domain->yd.end(),0.); + thrust::fill(domain->zd.begin(),domain->zd.end(),0.); + + thrust::fill(domain->xdd.begin(),domain->xdd.end(),0.); + thrust::fill(domain->ydd.begin(),domain->ydd.end(),0.); + thrust::fill(domain->zdd.begin(),domain->zdd.end(),0.); + + thrust::fill(domain->nodalMass.begin(),domain->nodalMass.end(),0.); +} + +//////////////////////////////////////////////////////////////////////////////// +void +Domain::SetupCommBuffers(Int_t edgeNodes) +{ + // allocate a buffer large enough for nodal ghost data + maxEdgeSize = MAX(this->sizeX, MAX(this->sizeY, this->sizeZ))+1 ; + maxPlaneSize = CACHE_ALIGN_REAL(maxEdgeSize*maxEdgeSize) ; + maxEdgeSize = CACHE_ALIGN_REAL(maxEdgeSize) ; + + // assume communication to 6 neighbors by default + m_rowMin = (m_rowLoc == 0) ? 0 : 1; + m_rowMax = (m_rowLoc == m_tp-1) ? 0 : 1; + m_colMin = (m_colLoc == 0) ? 0 : 1; + m_colMax = (m_colLoc == m_tp-1) ? 0 : 1; + m_planeMin = (m_planeLoc == 0) ? 0 : 1; + m_planeMax = (m_planeLoc == m_tp-1) ? 0 : 1; + +#if USE_MPI + // account for face communication + Index_t comBufSize = + (m_rowMin + m_rowMax + m_colMin + m_colMax + m_planeMin + m_planeMax) * + maxPlaneSize * MAX_FIELDS_PER_MPI_COMM ; + + // account for edge communication + comBufSize += + ((m_rowMin & m_colMin) + (m_rowMin & m_planeMin) + (m_colMin & m_planeMin) + + (m_rowMax & m_colMax) + (m_rowMax & m_planeMax) + (m_colMax & m_planeMax) + + (m_rowMax & m_colMin) + (m_rowMin & m_planeMax) + (m_colMin & m_planeMax) + + (m_rowMin & m_colMax) + (m_rowMax & m_planeMin) + (m_colMax & m_planeMin)) * + maxPlaneSize * MAX_FIELDS_PER_MPI_COMM ; + + // account for corner communication + // factor of 16 is so each buffer has its own cache line + comBufSize += ((m_rowMin & m_colMin & m_planeMin) + + (m_rowMin & m_colMin & m_planeMax) + + (m_rowMin & m_colMax & m_planeMin) + + (m_rowMin & m_colMax & m_planeMax) + + (m_rowMax & m_colMin & m_planeMin) + + (m_rowMax & m_colMin & m_planeMax) + + (m_rowMax & m_colMax & m_planeMin) + + (m_rowMax & m_colMax & m_planeMax)) * CACHE_COHERENCE_PAD_REAL ; + + this->commDataSend = new Real_t[comBufSize] ; + this->commDataRecv = new Real_t[comBufSize] ; + + // pin buffers + cudaHostRegister(this->commDataSend, comBufSize*sizeof(Real_t), 0); + cudaHostRegister(this->commDataRecv, comBufSize*sizeof(Real_t), 0); + + // prevent floating point exceptions + memset(this->commDataSend, 0, comBufSize*sizeof(Real_t)) ; + memset(this->commDataRecv, 0, comBufSize*sizeof(Real_t)) ; + + // allocate shadow GPU buffers + cudaMalloc(&this->d_commDataSend, comBufSize*sizeof(Real_t)); + cudaMalloc(&this->d_commDataRecv, comBufSize*sizeof(Real_t)); + + // prevent floating point exceptions + cudaMemset(this->d_commDataSend, 0, comBufSize*sizeof(Real_t)); + cudaMemset(this->d_commDataRecv, 0, comBufSize*sizeof(Real_t)); +#endif +} + +void SetupConnectivityBC(Domain *domain, int edgeElems) +{ + int domElems = domain->numElem; + + Vector_h lxim_h(domElems); + Vector_h lxip_h(domElems); + Vector_h letam_h(domElems); + Vector_h letap_h(domElems); + Vector_h lzetam_h(domElems); + Vector_h lzetap_h(domElems); + + /* set up elemement connectivity information */ + lxim_h[0] = 0 ; + for (Index_t i=1; i elemBC_h(domElems); + for (Index_t i=0; im_planeMin != 0) { + ghostIdx[0] = pidx ; + pidx += domain->sizeX*domain->sizeY ; + } + + if (domain->m_planeMax != 0) { + ghostIdx[1] = pidx ; + pidx += domain->sizeX*domain->sizeY ; + } + + if (domain->m_rowMin != 0) { + ghostIdx[2] = pidx ; + pidx += domain->sizeX*domain->sizeZ ; + } + + if (domain->m_rowMax != 0) { + ghostIdx[3] = pidx ; + pidx += domain->sizeX*domain->sizeZ ; + } + + if (domain->m_colMin != 0) { + ghostIdx[4] = pidx ; + pidx += domain->sizeY*domain->sizeZ ; + } + + if (domain->m_colMax != 0) { + ghostIdx[5] = pidx ; + } + + /* symmetry plane or free surface BCs */ + for (Index_t i=0; im_planeLoc == 0) { + elemBC_h[rowInc+j] |= ZETA_M_SYMM ; + } + else { + elemBC_h[rowInc+j] |= ZETA_M_COMM ; + lzetam_h[rowInc+j] = ghostIdx[0] + rowInc + j ; + } + + if (domain->m_planeLoc == domain->m_tp-1) { + elemBC_h[rowInc+j+domElems-edgeElems*edgeElems] |= + ZETA_P_FREE; + } + else { + elemBC_h[rowInc+j+domElems-edgeElems*edgeElems] |= + ZETA_P_COMM ; + lzetap_h[rowInc+j+domElems-edgeElems*edgeElems] = + ghostIdx[1] + rowInc + j ; + } + + if (domain->m_rowLoc == 0) { + elemBC_h[planeInc+j] |= ETA_M_SYMM ; + } + else { + elemBC_h[planeInc+j] |= ETA_M_COMM ; + letam_h[planeInc+j] = ghostIdx[2] + rowInc + j ; + } + + if (domain->m_rowLoc == domain->m_tp-1) { + elemBC_h[planeInc+j+edgeElems*edgeElems-edgeElems] |= + ETA_P_FREE ; + } + else { + elemBC_h[planeInc+j+edgeElems*edgeElems-edgeElems] |= + ETA_P_COMM ; + letap_h[planeInc+j+edgeElems*edgeElems-edgeElems] = + ghostIdx[3] + rowInc + j ; + } + + if (domain->m_colLoc == 0) { + elemBC_h[planeInc+j*edgeElems] |= XI_M_SYMM ; + } + else { + elemBC_h[planeInc+j*edgeElems] |= XI_M_COMM ; + lxim_h[planeInc+j*edgeElems] = ghostIdx[4] + rowInc + j ; + } + + if (domain->m_colLoc == domain->m_tp-1) { + elemBC_h[planeInc+j*edgeElems+edgeElems-1] |= XI_P_FREE ; + } + else { + elemBC_h[planeInc+j*edgeElems+edgeElems-1] |= XI_P_COMM ; + lxip_h[planeInc+j*edgeElems+edgeElems-1] = + ghostIdx[5] + rowInc + j ; + } + } + } + + domain->elemBC = elemBC_h; + domain->lxim = lxim_h; + domain->lxip = lxip_h; + domain->letam = letam_h; + domain->letap = letap_h; + domain->lzetam = lzetam_h; + domain->lzetap = lzetap_h; +} + +void Domain::BuildMesh(Int_t nx, Int_t edgeNodes, Int_t edgeElems, Int_t domNodes, Int_t padded_domElems, Vector_h &x_h, Vector_h &y_h, Vector_h &z_h, Vector_h &nodelist_h) +{ + Index_t meshEdgeElems = m_tp*nx ; + + x_h.resize(domNodes); + y_h.resize(domNodes); + z_h.resize(domNodes); + + // initialize nodal coordinates + Index_t nidx = 0 ; + Real_t tz = Real_t(1.125)*Real_t(m_planeLoc*nx)/Real_t(meshEdgeElems) ; + for (Index_t plane=0; planemax_streams = 32; + domain->streams.resize(domain->max_streams); + + for (Int_t i=0;imax_streams;i++) + cudaStreamCreate(&(domain->streams[i])); + + cudaEventCreateWithFlags(&domain->time_constraint_computed,cudaEventDisableTiming); + + Index_t domElems; + Index_t domNodes; + Index_t padded_domElems; + + Vector_h nodelist_h; + Vector_h x_h; + Vector_h y_h; + Vector_h z_h; + + if (structured) + { + domain->m_tp = tp ; + domain->m_numRanks = numRanks ; + + domain->m_colLoc = colLoc ; + domain->m_rowLoc = rowLoc ; + domain->m_planeLoc = planeLoc ; + + Index_t edgeElems = nx ; + Index_t edgeNodes = edgeElems+1 ; + + domain->sizeX = edgeElems ; + domain->sizeY = edgeElems ; + domain->sizeZ = edgeElems ; + + domain->numElem = domain->sizeX*domain->sizeY*domain->sizeZ ; + domain->padded_numElem = PAD(domain->numElem,32); + + domain->numNode = (domain->sizeX+1)*(domain->sizeY+1)*(domain->sizeZ+1) ; + domain->padded_numNode = PAD(domain->numNode,32); + + domElems = domain->numElem ; + domNodes = domain->numNode ; + padded_domElems = domain->padded_numElem ; + + AllocateElemPersistent(domain,domElems,padded_domElems); + AllocateNodalPersistent(domain,domNodes); + + domain->SetupCommBuffers(edgeNodes); + + InitializeFields(domain); + + domain->BuildMesh(nx, edgeNodes, edgeElems, domNodes, padded_domElems, x_h, y_h, z_h, nodelist_h); + + domain->numSymmX = domain->numSymmY = domain->numSymmZ = 0; + + if (domain->m_colLoc == 0) + domain->numSymmX = (edgeElems+1)*(edgeElems+1) ; + if (domain->m_rowLoc == 0) + domain->numSymmY = (edgeElems+1)*(edgeElems+1) ; + if (domain->m_planeLoc == 0) + domain->numSymmZ = (edgeElems+1)*(edgeElems+1) ; + + AllocateSymmX(domain,edgeNodes*edgeNodes); + AllocateSymmY(domain,edgeNodes*edgeNodes); + AllocateSymmZ(domain,edgeNodes*edgeNodes); + + /* set up symmetry nodesets */ + + Vector_h symmX_h(domain->symmX.size()); + Vector_h symmY_h(domain->symmY.size()); + Vector_h symmZ_h(domain->symmZ.size()); + + Int_t nidx = 0 ; + for (Index_t i=0; im_planeLoc == 0) { + symmZ_h[nidx] = rowInc + j ; + } + if (domain->m_rowLoc == 0) { + symmY_h[nidx] = planeInc + j ; + } + if (domain->m_colLoc == 0) { + symmX_h[nidx] = planeInc + j*edgeNodes ; + } + ++nidx ; + } + } + + if (domain->m_planeLoc == 0) + domain->symmZ = symmZ_h; + if (domain->m_rowLoc == 0) + domain->symmY = symmY_h; + if (domain->m_colLoc == 0) + domain->symmX = symmX_h; + + SetupConnectivityBC(domain, edgeElems); + } + else + { + FILE *fp; + int ee, en; + + if ((fp = fopen(argv[2], "r")) == 0) { + printf("could not open file %s\n", argv[2]) ; + exit( LFileError ) ; + } + + bool fsuccess; + fsuccess = fscanf(fp, "%d %d", &ee, &en) ; + domain->numElem = Index_t(ee); + domain->padded_numElem = PAD(domain->numElem,32); + + domain->numNode = Index_t(en); + domain->padded_numNode = PAD(domain->numNode,32); + + domElems = domain->numElem ; + domNodes = domain->numNode ; + padded_domElems = domain->padded_numElem ; + + AllocateElemPersistent(domain,domElems,padded_domElems); + AllocateNodalPersistent(domain,domNodes); + + InitializeFields(domain); + + /* initialize nodal coordinates */ + x_h.resize(domNodes); + y_h.resize(domNodes); + z_h.resize(domNodes); + + for (Index_t i=0; ix = x_h; + domain->y = y_h; + domain->z = z_h; + + /* embed hexehedral elements in nodal point lattice */ + nodelist_h.resize(padded_domElems*8); + for (Index_t zidx=0; zidxnodelist = nodelist_h; + + /* set up face-based element neighbors */ + Vector_h lxim_h(domElems); + Vector_h lxip_h(domElems); + Vector_h letam_h(domElems); + Vector_h letap_h(domElems); + Vector_h lzetam_h(domElems); + Vector_h lzetap_h(domElems); + + for (Index_t i=0; ilxim = lxim_h; + domain->lxip = lxip_h; + domain->letam = letam_h; + domain->letap = letap_h; + domain->lzetam = lzetam_h; + domain->lzetap = lzetap_h; + + /* set up X symmetry nodeset */ + + fsuccess = fscanf(fp, "%d", &domain->numSymmX) ; + Vector_h symmX_h(domain->numSymmX); + for (Index_t i=0; inumSymmX; ++i) { + int n ; + fsuccess = fscanf(fp, "%d", &n) ; + symmX_h[i] = Index_t(n) ; + } + domain->symmX = symmX_h; + + fsuccess = fscanf(fp, "%d", &domain->numSymmY) ; + Vector_h symmY_h(domain->numSymmY); + for (Index_t i=0; inumSymmY; ++i) { + int n ; + fsuccess = fscanf(fp, "%d", &n) ; + symmY_h[i] = Index_t(n) ; + } + domain->symmY = symmY_h; + + fsuccess = fscanf(fp, "%d", &domain->numSymmZ) ; + Vector_h symmZ_h(domain->numSymmZ); + for (Index_t i=0; inumSymmZ; ++i) { + int n ; + fsuccess = fscanf(fp, "%d", &n) ; + symmZ_h[i] = Index_t(n) ; + } + domain->symmZ = symmZ_h; + + /* set up free surface nodeset */ + Index_t numFreeSurf; + fsuccess = fscanf(fp, "%d", &numFreeSurf) ; + Vector_h freeSurf_h(numFreeSurf); + for (Index_t i=0; i elemBC_h(domElems); + Vector_h surfaceNode_h(domNodes); + + for (Index_t i=0; inumElem; ++i) { + elemBC_h[i] = 0 ; + } + + for (Index_t i=0; inumNode; ++i) { + surfaceNode_h[i] = 0 ; + } + + for (Index_t i=0; inumSymmX; ++i) { + surfaceNode_h[symmX_h[i]] = 1 ; + } + + for (Index_t i=0; inumSymmY; ++i) { + surfaceNode_h[symmY_h[i]] = 1 ; + } + + for (Index_t i=0; inumSymmZ; ++i) { + surfaceNode_h[symmZ_h[i]] = 1 ; + } + + for (Index_t zidx=0; zidxnumElem; ++zidx) { + Int_t mask = 0 ; + + for (Index_t ni=0; ni<8; ++ni) { + mask |= (surfaceNode_h[nodelist_h[ni*domain->padded_numElem+zidx]] << ni) ; + } + + if ((mask & 0x0f) == 0x0f) elemBC_h[zidx] |= ZETA_M_SYMM ; + if ((mask & 0xf0) == 0xf0) elemBC_h[zidx] |= ZETA_P_SYMM ; + if ((mask & 0x33) == 0x33) elemBC_h[zidx] |= ETA_M_SYMM ; + if ((mask & 0xcc) == 0xcc) elemBC_h[zidx] |= ETA_P_SYMM ; + if ((mask & 0x99) == 0x99) elemBC_h[zidx] |= XI_M_SYMM ; + if ((mask & 0x66) == 0x66) elemBC_h[zidx] |= XI_P_SYMM ; + } + + for (Index_t zidx=0; zidxnumElem; ++zidx) { + if (elemBC_h[zidx] == (XI_M_SYMM | ETA_M_SYMM | ZETA_M_SYMM)) { + domain->octantCorner = zidx ; + break ; + } + } + + for (Index_t i=0; inumNode; ++i) { + surfaceNode_h[i] = 0 ; + } + + for (Index_t i=0; inumElem; ++zidx) { + Int_t mask = 0 ; + + for (Index_t ni=0; ni<8; ++ni) { + mask |= (surfaceNode_h[nodelist_h[ni*domain->padded_numElem+zidx]] << ni) ; + } + + if ((mask & 0x0f) == 0x0f) elemBC_h[zidx] |= ZETA_M_SYMM ; + if ((mask & 0xf0) == 0xf0) elemBC_h[zidx] |= ZETA_P_SYMM ; + if ((mask & 0x33) == 0x33) elemBC_h[zidx] |= ETA_M_SYMM ; + if ((mask & 0xcc) == 0xcc) elemBC_h[zidx] |= ETA_P_SYMM ; + if ((mask & 0x99) == 0x99) elemBC_h[zidx] |= XI_M_SYMM ; + if ((mask & 0x66) == 0x66) elemBC_h[zidx] |= XI_P_SYMM ; + } + + domain->elemBC = elemBC_h; + + /* deposit energy */ + domain->e[domain->octantCorner] = Real_t(3.948746e+7) ; + + } + + /* set up node-centered indexing of elements */ + Vector_h nodeElemCount_h(domNodes); + + for (Index_t i=0; i nodeElemStart_h(domNodes); + + nodeElemStart_h[0] = 0; + for (Index_t i=1; i < domNodes; ++i) { + nodeElemStart_h[i] = + nodeElemStart_h[i-1] + nodeElemCount_h[i-1] ; + } + + Vector_h nodeElemCornerList_h(nodeElemStart_h[domNodes-1] + + nodeElemCount_h[domNodes-1] ); + + for (Index_t i=0; i < domNodes; ++i) { + nodeElemCount_h[i] = 0; + } + + for (Index_t j=0; j < 8; ++j) { + for (Index_t i=0; i < domElems; ++i) { + Index_t m = nodelist_h[padded_domElems*j+i]; + Index_t k = padded_domElems*j + i ; + Index_t offset = nodeElemStart_h[m] + + nodeElemCount_h[m] ; + nodeElemCornerList_h[offset] = k; + ++(nodeElemCount_h[m]) ; + } + } + + Index_t clSize = nodeElemStart_h[domNodes-1] + + nodeElemCount_h[domNodes-1] ; + for (Index_t i=0; i < clSize; ++i) { + Index_t clv = nodeElemCornerList_h[i] ; + if ((clv < 0) || (clv > padded_domElems*8)) { + fprintf(stderr, + "AllocateNodeElemIndexes(): nodeElemCornerList entry out of range!\n"); + exit(1); + } + } + + domain->nodeElemStart = nodeElemStart_h; + domain->nodeElemCount = nodeElemCount_h; + domain->nodeElemCornerList = nodeElemCornerList_h; + + /* Create a material IndexSet (entire domain same material for now) */ + Vector_h matElemlist_h(domElems); + for (Index_t i=0; imatElemlist = matElemlist_h; + + cudaMallocHost(&domain->dtcourant_h,sizeof(Real_t),0); + cudaMallocHost(&domain->dthydro_h,sizeof(Real_t),0); + cudaMallocHost(&domain->bad_vol_h,sizeof(Index_t),0); + cudaMallocHost(&domain->bad_q_h,sizeof(Index_t),0); + + *(domain->bad_vol_h)=-1; + *(domain->bad_q_h)=-1; + *(domain->dthydro_h)=1e20; + *(domain->dtcourant_h)=1e20; + + /* initialize material parameters */ + domain->time_h = Real_t(0.) ; + domain->dtfixed = Real_t(-1.0e-6) ; + domain->deltatimemultlb = Real_t(1.1) ; + domain->deltatimemultub = Real_t(1.2) ; + domain->stoptime = Real_t(1.0e-2) ; + domain->dtmax = Real_t(1.0e-2) ; + domain->cycle = 0 ; + + domain->e_cut = Real_t(1.0e-7) ; + domain->p_cut = Real_t(1.0e-7) ; + domain->q_cut = Real_t(1.0e-7) ; + domain->u_cut = Real_t(1.0e-7) ; + domain->v_cut = Real_t(1.0e-10) ; + + domain->hgcoef = Real_t(3.0) ; + domain->ss4o3 = Real_t(4.0)/Real_t(3.0) ; + + domain->qstop = Real_t(1.0e+12) ; + domain->monoq_max_slope = Real_t(1.0) ; + domain->monoq_limiter_mult = Real_t(2.0) ; + domain->qlc_monoq = Real_t(0.5) ; + domain->qqc_monoq = Real_t(2.0)/Real_t(3.0) ; + domain->qqc = Real_t(2.0) ; + + domain->pmin = Real_t(0.) ; + domain->emin = Real_t(-1.0e+15) ; + + domain->dvovmax = Real_t(0.1) ; + + domain->eosvmax = Real_t(1.0e+9) ; + domain->eosvmin = Real_t(1.0e-9) ; + + domain->refdens = Real_t(1.0) ; + + /* initialize field data */ + Vector_h nodalMass_h(domNodes); + Vector_h volo_h(domElems); + Vector_h elemMass_h(domElems); + + for (Index_t i=0; inodalMass = nodalMass_h; + domain->volo = volo_h; + domain->elemMass= elemMass_h; + + /* deposit energy */ + domain->octantCorner = 0; + // deposit initial energy + // An energy of 3.948746e+7 is correct for a problem with + // 45 zones along a side - we need to scale it + const Real_t ebase = 3.948746e+7; + Real_t scale = (nx*domain->m_tp)/45.0; + Real_t einit = ebase*scale*scale*scale; + //Real_t einit = ebase; + if (domain->m_rowLoc + domain->m_colLoc + domain->m_planeLoc == 0) { + // Dump into the first zone (which we know is in the corner) + // of the domain that sits at the origin + domain->e[0] = einit; + } + + //set initial deltatime base on analytic CFL calculation + domain->deltatime_h = (.5*cbrt(domain->volo[0]))/sqrt(2*einit); + + domain->cost = cost; + domain->regNumList.resize(domain->numElem) ; // material indexset + domain->regElemlist.resize(domain->numElem) ; // material indexset + domain->regCSR.resize(nr); + domain->regReps.resize(nr); + domain->regSorted.resize(nr); + + // Setup region index sets. For now, these are constant sized + // throughout the run, but could be changed every cycle to + // simulate effects of ALE on the lagrange solver + + domain->CreateRegionIndexSets(nr, balance); + + return domain ; +} + +/******************* to support region *********************/ +void Domain::sortRegions(Vector_h& regReps_h, Vector_h& regSorted_h) +{ + Index_t temp; + Vector_h regIndex; + regIndex.resize(numReg); + for(int i = 0; i < numReg; i++) + regIndex[i] = i; + + for(int i = 0; i < numReg-1; i++) + for(int j = 0; j < numReg-i-1; j++) + if(regReps_h[j] < regReps_h[j+1]) + { + temp = regReps_h[j]; + regReps_h[j] = regReps_h[j+1]; + regReps_h[j+1] = temp; + + temp = regElemSize[j]; + regElemSize[j] = regElemSize[j+1]; + regElemSize[j+1] = temp; + + temp = regIndex[j]; + regIndex[j] = regIndex[j+1]; + regIndex[j+1] = temp; + } + for(int i = 0; i < numReg; i++) + regSorted_h[regIndex[i]] = i; +} + +// simple function for int pow x^y, y >= 0 +static Int_t POW(Int_t x, Int_t y) +{ + Int_t res = 1; + for (Int_t i = 0; i < y; i++) + res *= x; + return res; +} + +void Domain::CreateRegionIndexSets(Int_t nr, Int_t b) +{ +#if USE_MPI + Index_t myRank; + MPI_Comm_rank(MPI_COMM_WORLD, &myRank) ; + srand(myRank); +#else + srand(0); + Index_t myRank = 0; +#endif + numReg = nr; + balance = b; + + regElemSize = new Int_t[numReg]; + Index_t nextIndex = 0; + + Vector_h regCSR_h(regCSR.size()); // records the begining and end of each region + Vector_h regReps_h(regReps.size()); // records the rep number per region + Vector_h regNumList_h(regNumList.size()); // Region number per domain element + Vector_h regElemlist_h(regElemlist.size()); // region indexset + Vector_h regSorted_h(regSorted.size()); // keeps index of sorted regions + + //if we only have one region just fill it + // Fill out the regNumList with material numbers, which are always + // the region index plus one + if(numReg == 1) { + while (nextIndex < numElem) { + regNumList_h[nextIndex] = 1; + nextIndex++; + } + regElemSize[0] = 0; + } + //If we have more than one region distribute the elements. + else { + Int_t regionNum; + Int_t regionVar; + Int_t lastReg = -1; + Int_t binSize; + Int_t elements; + Index_t runto = 0; + Int_t costDenominator = 0; + Int_t* regBinEnd = new Int_t[numReg]; + //Determine the relative weights of all the regions. + for (Index_t i=0 ; i= regBinEnd[i]) + i++; + //rotate the regions based on MPI rank. Rotation is Rank % NumRegions + regionNum = ((i + myRank) % numReg) + 1; + // make sure we don't pick the same region twice in a row + while(regionNum == lastReg) { + regionVar = rand() % costDenominator; + i = 0; + while(regionVar >= regBinEnd[i]) + i++; + regionNum = ((i + myRank) % numReg) + 1; + } + //Pick the bin size of the region and determine the number of elements. + binSize = rand() % 1000; + if(binSize < 773) { + elements = rand() % 15 + 1; + } + else if(binSize < 937) { + elements = rand() % 16 + 16; + } + else if(binSize < 970) { + elements = rand() % 32 + 32; + } + else if(binSize < 974) { + elements = rand() % 64 + 64; + } + else if(binSize < 978) { + elements = rand() % 128 + 128; + } + else if(binSize < 981) { + elements = rand() % 256 + 256; + } + else + elements = rand() % 1537 + 512; + runto = elements + nextIndex; + //Store the elements. If we hit the end before we run out of elements then just stop. + while (nextIndex < runto && nextIndex < numElem) { + regNumList_h[nextIndex] = regionNum; + nextIndex++; + } + lastReg = regionNum; + } + } + // Convert regNumList to region index sets + // First, count size of each region + for (Index_t i=0 ; itime_constraint_computed); + + Real_t targetdt = domain->stoptime - domain->time_h; + + if ((domain->dtfixed <= Real_t(0.0)) && (domain->cycle != Int_t(0))) { + + Real_t ratio ; + + /* This will require a reduction in parallel */ + Real_t gnewdt = Real_t(1.0e+20) ; + Real_t newdt; + if ( *(domain->dtcourant_h) < gnewdt) { + gnewdt = *(domain->dtcourant_h) / Real_t(2.0) ; + } + if ( *(domain->dthydro_h) < gnewdt) { + gnewdt = *(domain->dthydro_h) * Real_t(2.0) / Real_t(3.0) ; + } + +#if USE_MPI + MPI_Allreduce(&gnewdt, &newdt, 1, + ((sizeof(Real_t) == 4) ? MPI_FLOAT : MPI_DOUBLE), + MPI_MIN, MPI_COMM_WORLD) ; +#else + newdt = gnewdt; +#endif + + Real_t olddt = domain->deltatime_h; + ratio = newdt / olddt ; + if (ratio >= Real_t(1.0)) { + if (ratio < domain->deltatimemultlb) { + newdt = olddt ; + } + else if (ratio > domain->deltatimemultub) { + newdt = olddt*domain->deltatimemultub ; + } + } + + if (newdt > domain->dtmax) { + newdt = domain->dtmax ; + } + domain->deltatime_h = newdt ; + } + + /* TRY TO PREVENT VERY SMALL SCALING ON THE NEXT CYCLE */ + if ((targetdt > domain->deltatime_h) && + (targetdt < (Real_t(4.0) * domain->deltatime_h / Real_t(3.0))) ) { + targetdt = Real_t(2.0) * domain->deltatime_h / Real_t(3.0) ; + } + + if (targetdt < domain->deltatime_h) { + domain->deltatime_h = targetdt ; + } + + domain->time_h += domain->deltatime_h ; + + ++domain->cycle ; +} + +__device__ +static + __forceinline__ +void CalcElemShapeFunctionDerivatives( const Real_t* const x, + const Real_t* const y, + const Real_t* const z, + Real_t b[][8], + Real_t* const volume ) +{ + const Real_t x0 = x[0] ; const Real_t x1 = x[1] ; + const Real_t x2 = x[2] ; const Real_t x3 = x[3] ; + const Real_t x4 = x[4] ; const Real_t x5 = x[5] ; + const Real_t x6 = x[6] ; const Real_t x7 = x[7] ; + + const Real_t y0 = y[0] ; const Real_t y1 = y[1] ; + const Real_t y2 = y[2] ; const Real_t y3 = y[3] ; + const Real_t y4 = y[4] ; const Real_t y5 = y[5] ; + const Real_t y6 = y[6] ; const Real_t y7 = y[7] ; + + const Real_t z0 = z[0] ; const Real_t z1 = z[1] ; + const Real_t z2 = z[2] ; const Real_t z3 = z[3] ; + const Real_t z4 = z[4] ; const Real_t z5 = z[5] ; + const Real_t z6 = z[6] ; const Real_t z7 = z[7] ; + + Real_t fjxxi, fjxet, fjxze; + Real_t fjyxi, fjyet, fjyze; + Real_t fjzxi, fjzet, fjzze; + Real_t cjxxi, cjxet, cjxze; + Real_t cjyxi, cjyet, cjyze; + Real_t cjzxi, cjzet, cjzze; + + fjxxi = Real_t(.125) * ( (x6-x0) + (x5-x3) - (x7-x1) - (x4-x2) ); + fjxet = Real_t(.125) * ( (x6-x0) - (x5-x3) + (x7-x1) - (x4-x2) ); + fjxze = Real_t(.125) * ( (x6-x0) + (x5-x3) + (x7-x1) + (x4-x2) ); + + fjyxi = Real_t(.125) * ( (y6-y0) + (y5-y3) - (y7-y1) - (y4-y2) ); + fjyet = Real_t(.125) * ( (y6-y0) - (y5-y3) + (y7-y1) - (y4-y2) ); + fjyze = Real_t(.125) * ( (y6-y0) + (y5-y3) + (y7-y1) + (y4-y2) ); + + fjzxi = Real_t(.125) * ( (z6-z0) + (z5-z3) - (z7-z1) - (z4-z2) ); + fjzet = Real_t(.125) * ( (z6-z0) - (z5-z3) + (z7-z1) - (z4-z2) ); + fjzze = Real_t(.125) * ( (z6-z0) + (z5-z3) + (z7-z1) + (z4-z2) ); + + /* compute cofactors */ + cjxxi = (fjyet * fjzze) - (fjzet * fjyze); + cjxet = - (fjyxi * fjzze) + (fjzxi * fjyze); + cjxze = (fjyxi * fjzet) - (fjzxi * fjyet); + + cjyxi = - (fjxet * fjzze) + (fjzet * fjxze); + cjyet = (fjxxi * fjzze) - (fjzxi * fjxze); + cjyze = - (fjxxi * fjzet) + (fjzxi * fjxet); + + cjzxi = (fjxet * fjyze) - (fjyet * fjxze); + cjzet = - (fjxxi * fjyze) + (fjyxi * fjxze); + cjzze = (fjxxi * fjyet) - (fjyxi * fjxet); + + /* calculate partials : + this need only be done for l = 0,1,2,3 since , by symmetry , + (6,7,4,5) = - (0,1,2,3) . + */ + b[0][0] = - cjxxi - cjxet - cjxze; + b[0][1] = cjxxi - cjxet - cjxze; + b[0][2] = cjxxi + cjxet - cjxze; + b[0][3] = - cjxxi + cjxet - cjxze; + b[0][4] = -b[0][2]; + b[0][5] = -b[0][3]; + b[0][6] = -b[0][0]; + b[0][7] = -b[0][1]; + + /* + + b[0][4] = - cjxxi - cjxet + cjxze; + b[0][5] = + cjxxi - cjxet + cjxze; + b[0][6] = + cjxxi + cjxet + cjxze; + b[0][7] = - cjxxi + cjxet + cjxze; + + */ + + b[1][0] = - cjyxi - cjyet - cjyze; + b[1][1] = cjyxi - cjyet - cjyze; + b[1][2] = cjyxi + cjyet - cjyze; + b[1][3] = - cjyxi + cjyet - cjyze; + b[1][4] = -b[1][2]; + b[1][5] = -b[1][3]; + b[1][6] = -b[1][0]; + b[1][7] = -b[1][1]; + + b[2][0] = - cjzxi - cjzet - cjzze; + b[2][1] = cjzxi - cjzet - cjzze; + b[2][2] = cjzxi + cjzet - cjzze; + b[2][3] = - cjzxi + cjzet - cjzze; + b[2][4] = -b[2][2]; + b[2][5] = -b[2][3]; + b[2][6] = -b[2][0]; + b[2][7] = -b[2][1]; + + /* calculate jacobian determinant (volume) */ + *volume = Real_t(8.) * ( fjxet * cjxet + fjyet * cjyet + fjzet * cjzet); +} + +static +__device__ +__forceinline__ +void SumElemFaceNormal(Real_t *normalX0, Real_t *normalY0, Real_t *normalZ0, + Real_t *normalX1, Real_t *normalY1, Real_t *normalZ1, + Real_t *normalX2, Real_t *normalY2, Real_t *normalZ2, + Real_t *normalX3, Real_t *normalY3, Real_t *normalZ3, + const Real_t x0, const Real_t y0, const Real_t z0, + const Real_t x1, const Real_t y1, const Real_t z1, + const Real_t x2, const Real_t y2, const Real_t z2, + const Real_t x3, const Real_t y3, const Real_t z3) +{ + Real_t bisectX0 = Real_t(0.5) * (x3 + x2 - x1 - x0); + Real_t bisectY0 = Real_t(0.5) * (y3 + y2 - y1 - y0); + Real_t bisectZ0 = Real_t(0.5) * (z3 + z2 - z1 - z0); + Real_t bisectX1 = Real_t(0.5) * (x2 + x1 - x3 - x0); + Real_t bisectY1 = Real_t(0.5) * (y2 + y1 - y3 - y0); + Real_t bisectZ1 = Real_t(0.5) * (z2 + z1 - z3 - z0); + Real_t areaX = Real_t(0.25) * (bisectY0 * bisectZ1 - bisectZ0 * bisectY1); + Real_t areaY = Real_t(0.25) * (bisectZ0 * bisectX1 - bisectX0 * bisectZ1); + Real_t areaZ = Real_t(0.25) * (bisectX0 * bisectY1 - bisectY0 * bisectX1); + + *normalX0 += areaX; + *normalX1 += areaX; + *normalX2 += areaX; + *normalX3 += areaX; + + *normalY0 += areaY; + *normalY1 += areaY; + *normalY2 += areaY; + *normalY3 += areaY; + + *normalZ0 += areaZ; + *normalZ1 += areaZ; + *normalZ2 += areaZ; + *normalZ3 += areaZ; +} + +static +__device__ +__forceinline__ +void SumElemFaceNormal_warp_per_4cell( + Real_t *normalX0, Real_t *normalY0, Real_t *normalZ0, + const Real_t x, const Real_t y, const Real_t z, + int node, + int n0, int n1, int n2, int n3) +{ + Real_t coef0 = Real_t(0.5); + Real_t coef1 = Real_t(0.5); + if (node == n0 || node == n1 || node==n2 || node==n3) + { + if (node == n0 || node == n1) + coef0 = -coef0; + + if (node == n0 || node == n3) + coef1 = -coef1; + } + else + { + coef0 = Real_t(0.); + coef1 = Real_t(0.); + } + + Real_t bisectX0 = coef0*x; + Real_t bisectY0 = coef0*y; + Real_t bisectZ0 = coef0*z; + + Real_t bisectX1 = coef1*x; + Real_t bisectY1 = coef1*y; + Real_t bisectZ1 = coef1*z; + + SumOverNodesShfl(bisectX0); + SumOverNodesShfl(bisectY0); + SumOverNodesShfl(bisectZ0); + + SumOverNodesShfl(bisectX1); + SumOverNodesShfl(bisectY1); + SumOverNodesShfl(bisectZ1); + + Real_t areaX = Real_t(0.25) * (bisectY0 * bisectZ1 - bisectZ0 * bisectY1); + Real_t areaY = Real_t(0.25) * (bisectZ0 * bisectX1 - bisectX0 * bisectZ1); + Real_t areaZ = Real_t(0.25) * (bisectX0 * bisectY1 - bisectY0 * bisectX1); + + if (node == n0 || node == n1 || node==n2 || node==n3) + { + *normalX0 += areaX; + *normalY0 += areaY; + *normalZ0 += areaZ; + } + +} + +__device__ +static inline +void CalcElemNodeNormals(Real_t pfx[8], + Real_t pfy[8], + Real_t pfz[8], + const Real_t x[8], + const Real_t y[8], + const Real_t z[8]) +{ + for (Index_t i = 0 ; i < 8 ; ++i) { + pfx[i] = Real_t(0.0); + pfy[i] = Real_t(0.0); + pfz[i] = Real_t(0.0); + } + /* evaluate face one: nodes 0, 1, 2, 3 */ + SumElemFaceNormal(&pfx[0], &pfy[0], &pfz[0], + &pfx[1], &pfy[1], &pfz[1], + &pfx[2], &pfy[2], &pfz[2], + &pfx[3], &pfy[3], &pfz[3], + x[0], y[0], z[0], x[1], y[1], z[1], + x[2], y[2], z[2], x[3], y[3], z[3]); + /* evaluate face two: nodes 0, 4, 5, 1 */ + SumElemFaceNormal(&pfx[0], &pfy[0], &pfz[0], + &pfx[4], &pfy[4], &pfz[4], + &pfx[5], &pfy[5], &pfz[5], + &pfx[1], &pfy[1], &pfz[1], + x[0], y[0], z[0], x[4], y[4], z[4], + x[5], y[5], z[5], x[1], y[1], z[1]); + /* evaluate face three: nodes 1, 5, 6, 2 */ + SumElemFaceNormal(&pfx[1], &pfy[1], &pfz[1], + &pfx[5], &pfy[5], &pfz[5], + &pfx[6], &pfy[6], &pfz[6], + &pfx[2], &pfy[2], &pfz[2], + x[1], y[1], z[1], x[5], y[5], z[5], + x[6], y[6], z[6], x[2], y[2], z[2]); + /* evaluate face four: nodes 2, 6, 7, 3 */ + SumElemFaceNormal(&pfx[2], &pfy[2], &pfz[2], + &pfx[6], &pfy[6], &pfz[6], + &pfx[7], &pfy[7], &pfz[7], + &pfx[3], &pfy[3], &pfz[3], + x[2], y[2], z[2], x[6], y[6], z[6], + x[7], y[7], z[7], x[3], y[3], z[3]); + /* evaluate face five: nodes 3, 7, 4, 0 */ + SumElemFaceNormal(&pfx[3], &pfy[3], &pfz[3], + &pfx[7], &pfy[7], &pfz[7], + &pfx[4], &pfy[4], &pfz[4], + &pfx[0], &pfy[0], &pfz[0], + x[3], y[3], z[3], x[7], y[7], z[7], + x[4], y[4], z[4], x[0], y[0], z[0]); + /* evaluate face six: nodes 4, 7, 6, 5 */ + SumElemFaceNormal(&pfx[4], &pfy[4], &pfz[4], + &pfx[7], &pfy[7], &pfz[7], + &pfx[6], &pfy[6], &pfz[6], + &pfx[5], &pfy[5], &pfz[5], + x[4], y[4], z[4], x[7], y[7], z[7], + x[6], y[6], z[6], x[5], y[5], z[5]); +} + + + +__global__ +void AddNodeForcesFromElems_kernel( Index_t numNode, + Index_t padded_numNode, + const Int_t* nodeElemCount, + const Int_t* nodeElemStart, + const Index_t* nodeElemCornerList, + const Real_t* fx_elem, + const Real_t* fy_elem, + const Real_t* fz_elem, + Real_t* fx_node, + Real_t* fy_node, + Real_t* fz_node, + const Int_t num_threads) +{ + int tid=blockDim.x*blockIdx.x+threadIdx.x; + if (tid < num_threads) + { + Index_t g_i = tid; + Int_t count=nodeElemCount[g_i]; + Int_t start=nodeElemStart[g_i]; + Real_t fx,fy,fz; + fx=fy=fz=Real_t(0.0); + + for (int j=0;j +__global__ +#ifdef DOUBLE_PRECISION +__launch_bounds__(64,4) +#else +__launch_bounds__(64,8) +#endif +#ifdef ENABLE_JIT +__attribute__((annotate("jit",5,6,7,21))) +#endif +void CalcVolumeForceForElems_kernel( + + const Real_t* __restrict__ volo, + const Real_t* __restrict__ v, + const Real_t* __restrict__ p, + const Real_t* __restrict__ q, + Real_t hourg, + Index_t numElem, + Index_t padded_numElem, + const Index_t* __restrict__ nodelist, + const Real_t* __restrict__ ss, + const Real_t* __restrict__ elemMass, + const Real_t* __restrict__ x, const Real_t* __restrict__ y, const Real_t* __restrict__ z, + const Real_t* __restrict__ xd, const Real_t* __restrict__ yd, const Real_t* __restrict__ zd, + //TextureObj x, TextureObj y, TextureObj z, + //TextureObj xd, TextureObj yd, TextureObj zd, + //TextureObj* x, TextureObj* y, TextureObj* z, + //TextureObj* xd, TextureObj* yd, TextureObj* zd, +#ifdef DOUBLE_PRECISION // For floats, use atomicAdd + Real_t* __restrict__ fx_elem, + Real_t* __restrict__ fy_elem, + Real_t* __restrict__ fz_elem, +#else + Real_t* __restrict__ fx_node, + Real_t* __restrict__ fy_node, + Real_t* __restrict__ fz_node, +#endif + Index_t* __restrict__ bad_vol, + const Index_t num_threads) + +{ + + /************************************************* + * FUNCTION: Calculates the volume forces + *************************************************/ + + Real_t xn[8],yn[8],zn[8];; + Real_t xdn[8],ydn[8],zdn[8];; + Real_t dvdxn[8],dvdyn[8],dvdzn[8];; + Real_t hgfx[8],hgfy[8],hgfz[8];; + Real_t hourgam[8][4]; + Real_t coefficient; + + int elem=blockDim.x*blockIdx.x+threadIdx.x; + if (elem < num_threads) + { + Real_t volume = v[elem]; + Real_t det = volo[elem] * volume; + + // Check for bad volume + if (volume < 0.) { + *bad_vol = elem; + } + + Real_t ss1 = ss[elem]; + Real_t mass1 = elemMass[elem]; + Real_t sigxx = -p[elem] - q[elem]; + + Index_t n[8]; + #pragma unroll + for (int i=0;i<8;i++) { + n[i] = nodelist[elem+i*padded_numElem]; + } + + Real_t volinv = Real_t(1.0) / det; + //#pragma unroll + //for (int i=0;i<8;i++) { + // xn[i] =x[n[i]]; + // yn[i] =y[n[i]]; + // zn[i] =z[n[i]]; + //} + + #pragma unroll + for (int i=0;i<8;i++) + xn[i] =x[n[i]]; + + #pragma unroll + for (int i=0;i<8;i++) + yn[i] =y[n[i]]; + + #pragma unroll + for (int i=0;i<8;i++) + zn[i] =z[n[i]]; + + + Real_t volume13 = CBRT(det); + coefficient = - hourg * Real_t(0.01) * ss1 * mass1 / volume13; + + /*************************************************/ + /* compute the volume derivatives */ + /*************************************************/ + CalcElemVolumeDerivative(dvdxn, dvdyn, dvdzn, xn, yn, zn); + + /*************************************************/ + /* compute the hourglass modes */ + /*************************************************/ + CalcHourglassModes(xn,yn,zn,dvdxn,dvdyn,dvdzn,hourgam,volinv); + + /*************************************************/ + /* CalcStressForElems */ + /*************************************************/ + Real_t B[3][8]; + + CalcElemShapeFunctionDerivatives(xn, yn, zn, B, &det); + + CalcElemNodeNormals( B[0] , B[1], B[2], xn, yn, zn); + + // Check for bad volume + if (det < 0.) { + *bad_vol = elem; + } + + #pragma unroll + for (int i=0;i<8;i++) + { + hgfx[i] = -( sigxx*B[0][i] ); + hgfy[i] = -( sigxx*B[1][i] ); + hgfz[i] = -( sigxx*B[2][i] ); + } + + if (hourg_gt_zero) + { + /*************************************************/ + /* CalcFBHourglassForceForElems */ + /*************************************************/ + +// #pragma unroll +// for (int i=0;i<8;i++) { +// xdn[i] =xd[n[i]]; +// ydn[i] =yd[n[i]]; +// zdn[i] =zd[n[i]]; +// } + + #pragma unroll + for (int i=0;i<8;i++) + xdn[i] =xd[n[i]]; + + #pragma unroll + for (int i=0;i<8;i++) + ydn[i] =yd[n[i]]; + + #pragma unroll + for (int i=0;i<8;i++) + zdn[i] =zd[n[i]]; + + + + + CalcElemFBHourglassForce + ( &xdn[0],&ydn[0],&zdn[0], + hourgam[0],hourgam[1],hourgam[2],hourgam[3], + hourgam[4],hourgam[5],hourgam[6],hourgam[7], + coefficient, + &hgfx[0],&hgfy[0],&hgfz[0] + ); + + } + +#ifdef DOUBLE_PRECISION + #pragma unroll + for (int node=0;node<8;node++) + { + Index_t store_loc = elem+padded_numElem*node; + fx_elem[store_loc]=hgfx[node]; + fy_elem[store_loc]=hgfy[node]; + fz_elem[store_loc]=hgfz[node]; + } +#else + #pragma unroll + for (int i=0;i<8;i++) + { + Index_t ni= n[i]; + atomicAdd(&fx_node[ni],hgfx[i]); + atomicAdd(&fy_node[ni],hgfy[i]); + atomicAdd(&fz_node[ni],hgfz[i]); + } +#endif + + } // If elem < numElem +} + + +template< bool hourg_gt_zero, int cta_size> +__global__ +void CalcVolumeForceForElems_kernel_warp_per_4cell( + + const Real_t* __restrict__ volo, + const Real_t* __restrict__ v, + const Real_t* __restrict__ p, + const Real_t* __restrict__ q, + Real_t hourg, + Index_t numElem, + Index_t padded_numElem, + const Index_t* __restrict__ nodelist, + const Real_t* __restrict__ ss, + const Real_t* __restrict__ elemMass, + //const Real_t __restrict__ *x, const Real_t __restrict__ *y, const Real_t __restrict__ *z, + //const Real_t __restrict__ *xd, const Real_t __restrict__ *yd, const Real_t __restrict__ *zd, + const Real_t *x, const Real_t *y, const Real_t *z, + const Real_t *xd, const Real_t *yd, const Real_t *zd, +#ifdef DOUBLE_PRECISION // For floats, use atomicAdd + Real_t* __restrict__ fx_elem, + Real_t* __restrict__ fy_elem, + Real_t* __restrict__ fz_elem, +#else + Real_t* __restrict__ fx_node, + Real_t* __restrict__ fy_node, + Real_t* __restrict__ fz_node, +#endif + Index_t* __restrict__ bad_vol, + const Index_t num_threads) + +{ + + /************************************************* + * FUNCTION: Calculates the volume forces + *************************************************/ + + Real_t xn,yn,zn;; + Real_t xdn,ydn,zdn;; + Real_t dvdxn,dvdyn,dvdzn;; + Real_t hgfx,hgfy,hgfz;; + Real_t hourgam[4]; + Real_t coefficient; + + int tid=blockDim.x*blockIdx.x+threadIdx.x; + int elem = tid >> 3; // elem = tid/8 + int node = tid & 7; // node = tid%8 + + // elem within cta +// int cta_elem = threadIdx.x/8; + + if (elem < num_threads) + { + Real_t volume = v[elem]; + Real_t det = volo[elem] * volume; + + // Check for bad volume + if (volume < 0.) { + *bad_vol = elem; + } + + Real_t ss1 = ss[elem]; + Real_t mass1 = elemMass[elem]; + Real_t sigxx = -p[elem] - q[elem]; + + Index_t node_id; + node_id = nodelist[elem+node*padded_numElem]; + + Real_t volinv = Real_t(1.0) / det; + + xn =x[node_id]; + yn =y[node_id]; + zn =z[node_id]; + + Real_t volume13 = CBRT(det); + coefficient = - hourg * Real_t(0.01) * ss1 * mass1 / volume13; + + /*************************************************/ + /* compute the volume derivatives */ + /*************************************************/ + unsigned int ind0,ind1,ind2,ind3,ind4,ind5; + + // Use octal number to represent the indices for each node + //ind0 = 012307456; + //ind1 = 023016745; + //ind2 = 030125674; + //ind3 = 045670123; + //ind4 = 056743012; + //ind5 = 074561230; + + //int mask = 7u << (3*node; + + switch(node) { + case 0: + {ind0=1; ind1=2; ind2=3; ind3=4; ind4=5; ind5=7; + break;} + case 1: + {ind0=2; ind1=3; ind2=0; ind3=5; ind4=6; ind5=4; + break;} + case 2: + {ind0=3; ind1=0; ind2=1; ind3=6; ind4=7; ind5=5; + break;} + case 3: + {ind0=0; ind1=1; ind2=2; ind3=7; ind4=4; ind5=6; + break;} + case 4: + {ind0=7; ind1=6; ind2=5; ind3=0; ind4=3; ind5=1; + break;} + case 5: + {ind0=4; ind1=7; ind2=6; ind3=1; ind4=0; ind5=2; + break;} + case 6: + {ind0=5; ind1=4; ind2=7; ind3=2; ind4=1; ind5=3; + break;} + case 7: + {ind0=6; ind1=5; ind2=4; ind3=3; ind4=2; ind5=0; + break;} + } + + VOLUDER(utils::shfl(yn,ind0,8),utils::shfl(yn,ind1,8),utils::shfl(yn,ind2,8), + utils::shfl(yn,ind3,8),utils::shfl(yn,ind4,8),utils::shfl(yn,ind5,8), + utils::shfl(zn,ind0,8),utils::shfl(zn,ind1,8),utils::shfl(zn,ind2,8), + utils::shfl(zn,ind3,8),utils::shfl(zn,ind4,8),utils::shfl(zn,ind5,8), + dvdxn); + + VOLUDER(utils::shfl(zn,ind0,8),utils::shfl(zn,ind1,8),utils::shfl(zn,ind2,8), + utils::shfl(zn,ind3,8),utils::shfl(zn,ind4,8),utils::shfl(zn,ind5,8), + utils::shfl(xn,ind0,8),utils::shfl(xn,ind1,8),utils::shfl(xn,ind2,8), + utils::shfl(xn,ind3,8),utils::shfl(xn,ind4,8),utils::shfl(xn,ind5,8), + dvdyn); + + VOLUDER(utils::shfl(xn,ind0,8),utils::shfl(xn,ind1,8),utils::shfl(xn,ind2,8), + utils::shfl(xn,ind3,8),utils::shfl(xn,ind4,8),utils::shfl(xn,ind5,8), + utils::shfl(yn,ind0,8),utils::shfl(yn,ind1,8),utils::shfl(yn,ind2,8), + utils::shfl(yn,ind3,8),utils::shfl(yn,ind4,8),utils::shfl(yn,ind5,8), + dvdzn); + + /*************************************************/ + /* compute the hourglass modes */ + /*************************************************/ + + Real_t hourmodx, hourmody, hourmodz; + const Real_t posf = Real_t( 1.); + const Real_t negf = Real_t(-1.); + + hourmodx=xn; hourmody=yn; hourmodz=zn; + if (node==2 || node==3 || node==4 || node==5) { + hourmodx *= negf; hourmody *= negf; hourmodz *= negf; + hourgam[0] = negf; + } + else hourgam[0] = posf; + + SumOverNodesShfl(hourmodx); + SumOverNodesShfl(hourmody); + SumOverNodesShfl(hourmodz); + hourgam[0] -= volinv*(dvdxn*hourmodx + dvdyn*hourmody + dvdzn*hourmodz); + + + hourmodx=xn; hourmody=yn; hourmodz=zn; + if (node==1 || node==2 || node==4 || node==7) { + hourmodx *= negf; hourmody *= negf; hourmodz *= negf; + hourgam[1] = negf; + } + else hourgam[1] = posf; + + SumOverNodesShfl(hourmodx); + SumOverNodesShfl(hourmody); + SumOverNodesShfl(hourmodz); + hourgam[1] -= volinv*(dvdxn*hourmodx + dvdyn*hourmody + dvdzn*hourmodz); + + + hourmodx=xn; hourmody=yn; hourmodz=zn; + if (node==1 || node==3 || node==5 || node==7) { + hourmodx *= negf; hourmody *= negf; hourmodz *= negf; + hourgam[2] = negf; + } + else hourgam[2] = posf; + + SumOverNodesShfl(hourmodx); + SumOverNodesShfl(hourmody); + SumOverNodesShfl(hourmodz); + hourgam[2] -= volinv*(dvdxn*hourmodx + dvdyn*hourmody + dvdzn*hourmodz); + + + hourmodx=xn; hourmody=yn; hourmodz=zn; + if (node==0 || node==2 || node==5 || node==7) { + hourmodx *= negf; hourmody *= negf; hourmodz *= negf; + hourgam[3] = negf; + } + else hourgam[3] = posf; + + SumOverNodesShfl(hourmodx); + SumOverNodesShfl(hourmody); + SumOverNodesShfl(hourmodz); + hourgam[3] -= volinv*(dvdxn*hourmodx + dvdyn*hourmody + dvdzn*hourmodz); + + /*************************************************/ + /* CalcStressForElems */ + /*************************************************/ + Real_t b[3]; + + /*************************************************/ + //CalcElemShapeFunctionDerivatives_warp_per_4cell(xn, yn, zn, B, &det); + /*************************************************/ + + Real_t fjxxi, fjxet, fjxze; + Real_t fjyxi, fjyet, fjyze; + Real_t fjzxi, fjzet, fjzze; + + fjxxi = fjxet = fjxze = Real_t(0.125)*xn; + fjyxi = fjyet = fjyze = Real_t(0.125)*yn; + fjzxi = fjzet = fjzze = Real_t(0.125)*zn; + + if (node==0 || node==3 || node==7 || node==4) + { + fjxxi = -fjxxi; + fjyxi = -fjyxi; + fjzxi = -fjzxi; + } + if (node==0 || node==5 || node==1 || node==4) + { + fjxet = -fjxet; + fjyet = -fjyet; + fjzet = -fjzet; + } + if (node==0 || node==3 || node==1 || node==2) + { + fjxze = -fjxze; + fjyze = -fjyze; + fjzze = -fjzze; + } + + SumOverNodesShfl(fjxxi); + SumOverNodesShfl(fjxet); + SumOverNodesShfl(fjxze); + + SumOverNodesShfl(fjyxi); + SumOverNodesShfl(fjyet); + SumOverNodesShfl(fjyze); + + SumOverNodesShfl(fjzxi); + SumOverNodesShfl(fjzet); + SumOverNodesShfl(fjzze); + + /* compute cofactors */ + Real_t cjxxi, cjxet, cjxze; + Real_t cjyxi, cjyet, cjyze; + Real_t cjzxi, cjzet, cjzze; + + cjxxi = (fjyet * fjzze) - (fjzet * fjyze); + cjxet = - (fjyxi * fjzze) + (fjzxi * fjyze); + cjxze = (fjyxi * fjzet) - (fjzxi * fjyet); + + cjyxi = - (fjxet * fjzze) + (fjzet * fjxze); + cjyet = (fjxxi * fjzze) - (fjzxi * fjxze); + cjyze = - (fjxxi * fjzet) + (fjzxi * fjxet); + + cjzxi = (fjxet * fjyze) - (fjyet * fjxze); + cjzet = - (fjxxi * fjyze) + (fjyxi * fjxze); + cjzze = (fjxxi * fjyet) - (fjyxi * fjxet); + + Real_t coef_xi, coef_et, coef_ze; + + if (node==0 || node==3 || node==4 || node==7) + coef_xi = Real_t(-1.); + else + coef_xi = Real_t(1.); + + if (node==0 || node==1 || node==4 || node==5) + coef_et = Real_t(-1.); + else + coef_et = Real_t(1.); + + if (node==0 || node==1 || node==2 || node==3) + coef_ze = Real_t(-1.); + else + coef_ze = Real_t(1.); + + /* calculate partials : + this need only be done for l = 0,1,2,3 since , by symmetry , + (6,7,4,5) = - (0,1,2,3) . + */ + b[0] = coef_xi * cjxxi + coef_et * cjxet + coef_ze * cjxze; + b[1] = coef_xi * cjyxi + coef_et * cjyet + coef_ze * cjyze; + b[2] = coef_xi * cjzxi + coef_et * cjzet + coef_ze * cjzze; + + /* calculate jacobian determinant (volume) */ + det = Real_t(8.) * ( fjxet * cjxet + fjyet * cjyet + fjzet * cjzet); + + /*************************************************/ + //CalcElemNodeNormals_warp_per_4cell( B[0] , B[1], B[2], xn, yn, zn); + /*************************************************/ + + b[0] = Real_t(0.0); + b[1] = Real_t(0.0); + b[2] = Real_t(0.0); + + // Six faces, if no + SumElemFaceNormal_warp_per_4cell(&b[0], &b[1], &b[2], + xn, yn, zn, node, 0,1,2,3); + + SumElemFaceNormal_warp_per_4cell(&b[0], &b[1], &b[2], + xn, yn, zn, node, 0,4,5,1); + + SumElemFaceNormal_warp_per_4cell(&b[0], &b[1], &b[2], + xn, yn, zn, node, 1,5,6,2); + + SumElemFaceNormal_warp_per_4cell(&b[0], &b[1], &b[2], + xn, yn, zn, node, 2,6,7,3); + + SumElemFaceNormal_warp_per_4cell(&b[0], &b[1], &b[2], + xn, yn, zn, node, 3,7,4,0); + + SumElemFaceNormal_warp_per_4cell(&b[0], &b[1], &b[2], + xn, yn, zn, node, 4,7,6,5); + + // Check for bad volume + if (det < 0.) { + *bad_vol = elem; + } + + hgfx = -( sigxx*b[0] ); + hgfy = -( sigxx*b[1] ); + hgfz = -( sigxx*b[2] ); + + if (hourg_gt_zero) + { + /*************************************************/ + /* CalcFBHourglassForceForElems */ + /*************************************************/ + + xdn = xd[node_id]; + ydn = yd[node_id]; + zdn = zd[node_id]; + + Real_t hgfx_temp=0; + #pragma unroll + for (int i=0;i<4;i++) { + Real_t h; + h=hourgam[i]*xdn; + SumOverNodesShfl(h); + hgfx_temp+=hourgam[i]*h; + } + hgfx_temp *= coefficient; + hgfx += hgfx_temp; + + Real_t hgfy_temp=0; + #pragma unroll + for (int i=0;i<4;i++) { + Real_t h; + h=hourgam[i]*ydn; + SumOverNodesShfl(h); + hgfy_temp+=hourgam[i]*h; + } + hgfy_temp *= coefficient; + hgfy += hgfy_temp; + + Real_t hgfz_temp=0; + #pragma unroll + for (int i=0;i<4;i++) { + Real_t h; + h=hourgam[i]*zdn; + SumOverNodesShfl(h); + hgfz_temp+=hourgam[i]*h; + } + hgfz_temp *= coefficient; + hgfz += hgfz_temp; + + + } + +#ifdef DOUBLE_PRECISION + Index_t store_loc = elem+padded_numElem*node; + fx_elem[store_loc]=hgfx; + fy_elem[store_loc]=hgfy; + fz_elem[store_loc]=hgfz; +#else + atomicAdd(&fx_node[node_id],hgfx); + atomicAdd(&fy_node[node_id],hgfy); + atomicAdd(&fz_node[node_id],hgfz); +#endif + + } // If elem < numElem +} + +static inline +void CalcVolumeForceForElems(const Real_t hgcoef,Domain *domain) +{ + Index_t numElem = domain->numElem ; + Index_t padded_numElem = domain->padded_numElem; + +#ifdef DOUBLE_PRECISION + Vector_d* fx_elem = Allocator< Vector_d >::allocate(padded_numElem*8); + Vector_d* fy_elem = Allocator< Vector_d >::allocate(padded_numElem*8); + Vector_d* fz_elem = Allocator< Vector_d >::allocate(padded_numElem*8); +#else + thrust::fill(domain->fx.begin(),domain->fx.end(),0.); + thrust::fill(domain->fy.begin(),domain->fy.end(),0.); + thrust::fill(domain->fz.begin(),domain->fz.end(),0.); +#endif + + int num_threads = numElem ; + const int block_size = 64; + int dimGrid = PAD_DIV(num_threads,block_size); + + bool hourg_gt_zero = hgcoef > Real_t(0.0); + if (hourg_gt_zero) + { + CalcVolumeForceForElems_kernel <<>> + ( domain->volo.raw(), + domain->v.raw(), + domain->p.raw(), + domain->q.raw(), + hgcoef, numElem, padded_numElem, + domain->nodelist.raw(), + domain->ss.raw(), + domain->elemMass.raw(), + domain->x.raw(), domain->y.raw(), domain->z.raw(), domain->xd.raw(), domain->yd.raw(), domain->zd.raw(), +#ifdef DOUBLE_PRECISION + fx_elem->raw(), + fy_elem->raw(), + fz_elem->raw() , +#else + domain->fx.raw(), + domain->fy.raw(), + domain->fz.raw(), +#endif + domain->bad_vol_h, + num_threads + ); + } + else + { + CalcVolumeForceForElems_kernel <<>> + ( domain->volo.raw(), + domain->v.raw(), + domain->p.raw(), + domain->q.raw(), + hgcoef, numElem, padded_numElem, + domain->nodelist.raw(), + domain->ss.raw(), + domain->elemMass.raw(), + domain->x.raw(), domain->y.raw(), domain->z.raw(), domain->xd.raw(), domain->yd.raw(), domain->zd.raw(), +#ifdef DOUBLE_PRECISION + fx_elem->raw(), + fy_elem->raw(), + fz_elem->raw() , +#else + domain->fx.raw(), + domain->fy.raw(), + domain->fz.raw(), +#endif + domain->bad_vol_h, + num_threads + ); + } + +#ifdef DOUBLE_PRECISION + num_threads = domain->numNode; + + // Launch boundary nodes first + dimGrid= PAD_DIV(num_threads,block_size); + + AddNodeForcesFromElems_kernel<<>> + ( domain->numNode, + domain->padded_numNode, + domain->nodeElemCount.raw(), + domain->nodeElemStart.raw(), + domain->nodeElemCornerList.raw(), + fx_elem->raw(), + fy_elem->raw(), + fz_elem->raw(), + domain->fx.raw(), + domain->fy.raw(), + domain->fz.raw(), + num_threads + ); +// cudaDeviceSynchronize(); +// cudaCheckError(); + + Allocator >::free(fx_elem,padded_numElem*8); + Allocator >::free(fy_elem,padded_numElem*8); + Allocator >::free(fz_elem,padded_numElem*8); + +#endif // ifdef DOUBLE_PRECISION + return ; +} + +/* +static inline +void CalcVolumeForceForElems_warp_per_4cell(const Real_t hgcoef,Domain *domain) +{ + // We're gonna map one warp per 4 cells, i.e. one thread per vertex + + Index_t numElem = domain->numElem ; + Index_t padded_numElem = domain->padded_numElem; + +#ifdef DOUBLE_PRECISION + Vector_d* fx_elem = Allocator< Vector_d >::allocate(padded_numElem*8); + Vector_d* fy_elem = Allocator< Vector_d >::allocate(padded_numElem*8); + Vector_d* fz_elem = Allocator< Vector_d >::allocate(padded_numElem*8); +#else + thrust::fill(domain->fx.begin(),domain->fx.end(),0.); + thrust::fill(domain->fy.begin(),domain->fy.end(),0.); + thrust::fill(domain->fz.begin(),domain->fz.end(),0.); +#endif + + const int warps_per_cta = 2; + const int cta_size = warps_per_cta * 32; + int num_threads = numElem*8; + + int dimGrid = PAD_DIV(num_threads,cta_size); + + bool hourg_gt_zero = hgcoef > Real_t(0.0); + if (hourg_gt_zero) + { + CalcVolumeForceForElems_kernel_warp_per_4cell <<>> + ( domain->volo.raw(), + domain->v.raw(), + domain->p.raw(), + domain->q.raw(), + hgcoef, numElem, padded_numElem, + domain->nodelist.raw(), + domain->ss.raw(), + domain->elemMass.raw(), + domain->x.raw(), + domain->y.raw(), + domain->z.raw(), + domain->xd.raw(), + domain->yd.raw(), + domain->zd.raw(), + //domain->tex_x, domain->tex_y, domain->tex_z, domain->tex_xd, domain->tex_yd, domain->tex_zd, +#ifdef DOUBLE_PRECISION + fx_elem->raw(), + fy_elem->raw(), + fz_elem->raw() , +#else + domain->fx.raw(), + domain->fy.raw(), + domain->fz.raw(), +#endif + domain->bad_vol_h, + num_threads + ); + } + else + { + CalcVolumeForceForElems_kernel_warp_per_4cell <<>> + ( domain->volo.raw(), + domain->v.raw(), + domain->p.raw(), + domain->q.raw(), + hgcoef, numElem, padded_numElem, + domain->nodelist.raw(), + domain->ss.raw(), + domain->elemMass.raw(), + domain->x.raw(), + domain->y.raw(), + domain->z.raw(), + domain->xd.raw(), + domain->yd.raw(), + domain->zd.raw(), +#ifdef DOUBLE_PRECISION + fx_elem->raw(), + fy_elem->raw(), + fz_elem->raw() , +#else + domain->fx.raw(), + domain->fy.raw(), + domain->fz.raw(), +#endif + domain->bad_vol_h, + num_threads + ); + } + +#ifdef DOUBLE_PRECISION + num_threads = domain->numNode; + + // Launch boundary nodes first + dimGrid= PAD_DIV(num_threads,cta_size); + + AddNodeForcesFromElems_kernel<<>> + ( domain->numNode, + domain->padded_numNode, + domain->nodeElemCount.raw(), + domain->nodeElemStart.raw(), + domain->nodeElemCornerList.raw(), + fx_elem->raw(), + fy_elem->raw(), + fz_elem->raw(), + domain->fx.raw(), + domain->fy.raw(), + domain->fz.raw(), + num_threads + ); + //cudaDeviceSynchronize(); + //cudaCheckError(); + + Allocator >::free(fx_elem,padded_numElem*8); + Allocator >::free(fy_elem,padded_numElem*8); + Allocator >::free(fz_elem,padded_numElem*8); + +#endif // ifdef DOUBLE_PRECISION + return ; +} +*/ + +static inline +void CalcVolumeForceForElems(Domain* domain) +{ + const Real_t hgcoef = domain->hgcoef ; + + CalcVolumeForceForElems(hgcoef,domain); + + //CalcVolumeForceForElems_warp_per_4cell(hgcoef,domain); +} + +static inline void checkErrors(Domain* domain,int its,int myRank) +{ + if (*(domain->bad_vol_h) != -1) + { + printf("Rank %i: Volume Error in cell %d at iteration %d\n",myRank,*(domain->bad_vol_h),its); + exit(VolumeError); + } + + if (*(domain->bad_q_h) != -1) + { + printf("Rank %i: Q Error in cell %d at iteration %d\n",myRank,*(domain->bad_q_h),its); + exit(QStopError); + } +} + +static inline void CalcForceForNodes(Domain *domain) +{ +#if USE_MPI + CommRecv(*domain, MSG_COMM_SBN, 3, + domain->sizeX + 1, domain->sizeY + 1, domain->sizeZ + 1, + true, false) ; +#endif + + CalcVolumeForceForElems(domain); + + // moved here from the main loop to allow async execution with GPU work + TimeIncrement(domain); + +#if USE_MPI + // initialize pointers + domain->d_fx = domain->fx.raw(); + domain->d_fy = domain->fy.raw(); + domain->d_fz = domain->fz.raw(); + + Domain_member fieldData[3] ; + fieldData[0] = &Domain::get_fx ; + fieldData[1] = &Domain::get_fy ; + fieldData[2] = &Domain::get_fz ; + + CommSendGpu(*domain, MSG_COMM_SBN, 3, fieldData, + domain->sizeX + 1, domain->sizeY + 1, domain->sizeZ + 1, + true, false, domain->streams[2]) ; + CommSBNGpu(*domain, 3, fieldData, &domain->streams[2]) ; +#endif +} + +__global__ +void CalcAccelerationForNodes_kernel(int numNode, + Real_t *xdd, Real_t *ydd, Real_t *zdd, + Real_t *fx, Real_t *fy, Real_t *fz, + Real_t *nodalMass) +{ + int tid=blockDim.x*blockIdx.x+threadIdx.x; + if (tid < numNode) + { + Real_t one_over_nMass = Real_t(1.)/nodalMass[tid]; + xdd[tid]=fx[tid]*one_over_nMass; + ydd[tid]=fy[tid]*one_over_nMass; + zdd[tid]=fz[tid]*one_over_nMass; + } +} + +static inline +void CalcAccelerationForNodes(Domain *domain) +{ + Index_t dimBlock = 128; + Index_t dimGrid = PAD_DIV(domain->numNode,dimBlock); + + CalcAccelerationForNodes_kernel<<>> + (domain->numNode, + domain->xdd.raw(),domain->ydd.raw(),domain->zdd.raw(), + domain->fx.raw(),domain->fy.raw(),domain->fz.raw(), + domain->nodalMass.raw()); + + //cudaDeviceSynchronize(); + //cudaCheckError(); +} + +__global__ +void ApplyAccelerationBoundaryConditionsForNodes_kernel( + int numNodeBC, Real_t *xyzdd, + Index_t *symm) +{ + int i=blockDim.x*blockIdx.x+threadIdx.x; + if (i < numNodeBC) + { + xyzdd[symm[i]] = Real_t(0.0) ; + } +} + +static inline +void ApplyAccelerationBoundaryConditionsForNodes(Domain *domain) +{ + + Index_t dimBlock = 128; + + Index_t dimGrid = PAD_DIV(domain->numSymmX,dimBlock); + if (domain->numSymmX > 0) + ApplyAccelerationBoundaryConditionsForNodes_kernel<<>> + (domain->numSymmX, + domain->xdd.raw(), + domain->symmX.raw()); + + dimGrid = PAD_DIV(domain->numSymmY,dimBlock); + if (domain->numSymmY > 0) + ApplyAccelerationBoundaryConditionsForNodes_kernel<<>> + (domain->numSymmY, + domain->ydd.raw(), + domain->symmY.raw()); + + dimGrid = PAD_DIV(domain->numSymmZ,dimBlock); + if (domain->numSymmZ > 0) + ApplyAccelerationBoundaryConditionsForNodes_kernel<<>> + (domain->numSymmZ, + domain->zdd.raw(), + domain->symmZ.raw()); +} + + +__global__ +void CalcPositionAndVelocityForNodes_kernel(int numNode, + const Real_t deltatime, + const Real_t u_cut, + Real_t* __restrict__ x, Real_t* __restrict__ y, Real_t* __restrict__ z, + Real_t* __restrict__ xd, Real_t* __restrict__ yd, Real_t* __restrict__ zd, + const Real_t* __restrict__ xdd, const Real_t* __restrict__ ydd, const Real_t* __restrict__ zdd) +{ + int i=blockDim.x*blockIdx.x+threadIdx.x; + if (i < numNode) + { + Real_t xdtmp, ydtmp, zdtmp, dt; + dt = deltatime; + + xdtmp = xd[i] + xdd[i] * dt ; + ydtmp = yd[i] + ydd[i] * dt ; + zdtmp = zd[i] + zdd[i] * dt ; + + if( FABS(xdtmp) < u_cut ) xdtmp = 0.0; + if( FABS(ydtmp) < u_cut ) ydtmp = 0.0; + if( FABS(zdtmp) < u_cut ) zdtmp = 0.0; + + x[i] += xdtmp * dt; + y[i] += ydtmp * dt; + z[i] += zdtmp * dt; + + xd[i] = xdtmp; + yd[i] = ydtmp; + zd[i] = zdtmp; + } +} + +static inline +void CalcPositionAndVelocityForNodes(const Real_t u_cut, Domain* domain) +{ + Index_t dimBlock = 128; + Index_t dimGrid = PAD_DIV(domain->numNode,dimBlock); + + CalcPositionAndVelocityForNodes_kernel<<>> + (domain->numNode,domain->deltatime_h,u_cut, + domain->x.raw(),domain->y.raw(),domain->z.raw(), + domain->xd.raw(),domain->yd.raw(),domain->zd.raw(), + domain->xdd.raw(),domain->ydd.raw(),domain->zdd.raw()); + + //cudaDeviceSynchronize(); + //cudaCheckError(); +} + +static inline +void LagrangeNodal(Domain *domain) +{ +#ifdef SEDOV_SYNC_POS_VEL_EARLY + Domain_member fieldData[6] ; +#endif + + Real_t u_cut = domain->u_cut ; + + /* time of boundary condition evaluation is beginning of step for force and + * acceleration boundary conditions. */ + CalcForceForNodes(domain); + +#if USE_MPI +#ifdef SEDOV_SYNC_POS_VEL_EARLY + CommRecv(*domain, MSG_SYNC_POS_VEL, 6, + domain->sizeX + 1, domain->sizeY + 1, domain->sizeZ + 1, + false, false) ; +#endif +#endif + + CalcAccelerationForNodes(domain); + + ApplyAccelerationBoundaryConditionsForNodes(domain); + + CalcPositionAndVelocityForNodes(u_cut, domain); + +#if USE_MPI +#ifdef SEDOV_SYNC_POS_VEL_EARLY + // initialize pointers + domain->d_x = domain->x.raw(); + domain->d_y = domain->y.raw(); + domain->d_z = domain->z.raw(); + + domain->d_xd = domain->xd.raw(); + domain->d_yd = domain->yd.raw(); + domain->d_zd = domain->zd.raw(); + + fieldData[0] = &Domain::get_x ; + fieldData[1] = &Domain::get_y ; + fieldData[2] = &Domain::get_z ; + fieldData[3] = &Domain::get_xd ; + fieldData[4] = &Domain::get_yd ; + fieldData[5] = &Domain::get_zd ; + + CommSendGpu(*domain, MSG_SYNC_POS_VEL, 6, fieldData, + domain->sizeX + 1, domain->sizeY + 1, domain->sizeZ + 1, + false, false, domain->streams[2]) ; + CommSyncPosVelGpu(*domain, &domain->streams[2]) ; +#endif +#endif + + return; +} + +__device__ +static inline +Real_t AreaFace( const Real_t x0, const Real_t x1, + const Real_t x2, const Real_t x3, + const Real_t y0, const Real_t y1, + const Real_t y2, const Real_t y3, + const Real_t z0, const Real_t z1, + const Real_t z2, const Real_t z3) +{ + Real_t fx = (x2 - x0) - (x3 - x1); + Real_t fy = (y2 - y0) - (y3 - y1); + Real_t fz = (z2 - z0) - (z3 - z1); + Real_t gx = (x2 - x0) + (x3 - x1); + Real_t gy = (y2 - y0) + (y3 - y1); + Real_t gz = (z2 - z0) + (z3 - z1); + Real_t temp = (fx * gx + fy * gy + fz * gz); + Real_t area = + (fx * fx + fy * fy + fz * fz) * + (gx * gx + gy * gy + gz * gz) - + temp * temp; + return area ; +} + +__device__ +static inline +Real_t CalcElemCharacteristicLength( const Real_t x[8], + const Real_t y[8], + const Real_t z[8], + const Real_t volume) +{ + Real_t a, charLength = Real_t(0.0); + + a = AreaFace(x[0],x[1],x[2],x[3], + y[0],y[1],y[2],y[3], + z[0],z[1],z[2],z[3]) ; // 38 + charLength = FMAX(a,charLength) ; + + a = AreaFace(x[4],x[5],x[6],x[7], + y[4],y[5],y[6],y[7], + z[4],z[5],z[6],z[7]) ; + charLength = FMAX(a,charLength) ; + + a = AreaFace(x[0],x[1],x[5],x[4], + y[0],y[1],y[5],y[4], + z[0],z[1],z[5],z[4]) ; + charLength = FMAX(a,charLength) ; + + a = AreaFace(x[1],x[2],x[6],x[5], + y[1],y[2],y[6],y[5], + z[1],z[2],z[6],z[5]) ; + charLength = FMAX(a,charLength) ; + + a = AreaFace(x[2],x[3],x[7],x[6], + y[2],y[3],y[7],y[6], + z[2],z[3],z[7],z[6]) ; + charLength = FMAX(a,charLength) ; + + a = AreaFace(x[3],x[0],x[4],x[7], + y[3],y[0],y[4],y[7], + z[3],z[0],z[4],z[7]) ; + charLength = FMAX(a,charLength) ; + + charLength = Real_t(4.0) * volume / SQRT(charLength); + + return charLength; +} + +__device__ +static +__forceinline__ +void CalcElemVelocityGradient( const Real_t* const xvel, + const Real_t* const yvel, + const Real_t* const zvel, + const Real_t b[][8], + const Real_t detJ, + Real_t* const d ) +{ + const Real_t inv_detJ = Real_t(1.0) / detJ ; + Real_t dyddx, dxddy, dzddx, dxddz, dzddy, dyddz; + const Real_t* const pfx = b[0]; + const Real_t* const pfy = b[1]; + const Real_t* const pfz = b[2]; + + Real_t tmp1 = (xvel[0]-xvel[6]); + Real_t tmp2 = (xvel[1]-xvel[7]); + Real_t tmp3 = (xvel[2]-xvel[4]); + Real_t tmp4 = (xvel[3]-xvel[5]); + + + d[0] = inv_detJ * ( pfx[0] * tmp1 + + pfx[1] * tmp2 + + pfx[2] * tmp3 + + pfx[3] * tmp4); + + dxddy = inv_detJ * ( pfy[0] * tmp1 + + pfy[1] * tmp2 + + pfy[2] * tmp3 + + pfy[3] * tmp4); + + dxddz = inv_detJ * ( pfz[0] * tmp1 + + pfz[1] * tmp2 + + pfz[2] * tmp3 + + pfz[3] * tmp4); + + tmp1 = (yvel[0]-yvel[6]); + tmp2 = (yvel[1]-yvel[7]); + tmp3 = (yvel[2]-yvel[4]); + tmp4 = (yvel[3]-yvel[5]); + + d[1] = inv_detJ * ( pfy[0] * tmp1 + + pfy[1] * tmp2 + + pfy[2] * tmp3 + + pfy[3] * tmp4); + + dyddx = inv_detJ * ( pfx[0] * tmp1 + + pfx[1] * tmp2 + + pfx[2] * tmp3 + + pfx[3] * tmp4); + + dyddz = inv_detJ * ( pfz[0] * tmp1 + + pfz[1] * tmp2 + + pfz[2] * tmp3 + + pfz[3] * tmp4); + + tmp1 = (zvel[0]-zvel[6]); + tmp2 = (zvel[1]-zvel[7]); + tmp3 = (zvel[2]-zvel[4]); + tmp4 = (zvel[3]-zvel[5]); + + d[2] = inv_detJ * ( pfz[0] * tmp1 + + pfz[1] * tmp2 + + pfz[2] * tmp3 + + pfz[3] * tmp4); + + dzddx = inv_detJ * ( pfx[0] * tmp1 + + pfx[1] * tmp2 + + pfx[2] * tmp3 + + pfx[3] * tmp4); + + dzddy = inv_detJ * ( pfy[0] * tmp1 + + pfy[1] * tmp2 + + pfy[2] * tmp3 + + pfy[3] * tmp4); + + d[5] = Real_t( .5) * ( dxddy + dyddx ); + d[4] = Real_t( .5) * ( dxddz + dzddx ); + d[3] = Real_t( .5) * ( dzddy + dyddz ); +} + +static __device__ __forceinline__ +void CalcMonoGradient(Real_t *x, Real_t *y, Real_t *z, + Real_t *xv, Real_t *yv, Real_t *zv, + Real_t vol, + Real_t *delx_zeta, + Real_t *delv_zeta, + Real_t *delx_xi, + Real_t *delv_xi, + Real_t *delx_eta, + Real_t *delv_eta) +{ + + #define SUM4(a,b,c,d) (a + b + c + d) + const Real_t ptiny = Real_t(1.e-36) ; + Real_t ax,ay,az ; + Real_t dxv,dyv,dzv ; + + Real_t norm = Real_t(1.0) / ( vol + ptiny ) ; + + Real_t dxj = Real_t(-0.25)*(SUM4(x[0],x[1],x[5],x[4]) - SUM4(x[3],x[2],x[6],x[7])) ; + Real_t dyj = Real_t(-0.25)*(SUM4(y[0],y[1],y[5],y[4]) - SUM4(y[3],y[2],y[6],y[7])) ; + Real_t dzj = Real_t(-0.25)*(SUM4(z[0],z[1],z[5],z[4]) - SUM4(z[3],z[2],z[6],z[7])) ; + + Real_t dxi = Real_t( 0.25)*(SUM4(x[1],x[2],x[6],x[5]) - SUM4(x[0],x[3],x[7],x[4])) ; + Real_t dyi = Real_t( 0.25)*(SUM4(y[1],y[2],y[6],y[5]) - SUM4(y[0],y[3],y[7],y[4])) ; + Real_t dzi = Real_t( 0.25)*(SUM4(z[1],z[2],z[6],z[5]) - SUM4(z[0],z[3],z[7],z[4])) ; + + Real_t dxk = Real_t( 0.25)*(SUM4(x[4],x[5],x[6],x[7]) - SUM4(x[0],x[1],x[2],x[3])) ; + Real_t dyk = Real_t( 0.25)*(SUM4(y[4],y[5],y[6],y[7]) - SUM4(y[0],y[1],y[2],y[3])) ; + Real_t dzk = Real_t( 0.25)*(SUM4(z[4],z[5],z[6],z[7]) - SUM4(z[0],z[1],z[2],z[3])) ; + + /* find delvk and delxk ( i cross j ) */ + ax = dyi*dzj - dzi*dyj ; + ay = dzi*dxj - dxi*dzj ; + az = dxi*dyj - dyi*dxj ; + + *delx_zeta = vol / SQRT(ax*ax + ay*ay + az*az + ptiny) ; + + ax *= norm ; + ay *= norm ; + az *= norm ; + + dxv = Real_t(0.25)*(SUM4(xv[4],xv[5],xv[6],xv[7]) - SUM4(xv[0],xv[1],xv[2],xv[3])) ; + dyv = Real_t(0.25)*(SUM4(yv[4],yv[5],yv[6],yv[7]) - SUM4(yv[0],yv[1],yv[2],yv[3])) ; + dzv = Real_t(0.25)*(SUM4(zv[4],zv[5],zv[6],zv[7]) - SUM4(zv[0],zv[1],zv[2],zv[3])) ; + + *delv_zeta = ax*dxv + ay*dyv + az*dzv ; + + /* find delxi and delvi ( j cross k ) */ + + ax = dyj*dzk - dzj*dyk ; + ay = dzj*dxk - dxj*dzk ; + az = dxj*dyk - dyj*dxk ; + + *delx_xi = vol / SQRT(ax*ax + ay*ay + az*az + ptiny) ; + + ax *= norm ; + ay *= norm ; + az *= norm ; + + dxv = Real_t(0.25)*(SUM4(xv[1],xv[2],xv[6],xv[5]) - SUM4(xv[0],xv[3],xv[7],xv[4])) ; + dyv = Real_t(0.25)*(SUM4(yv[1],yv[2],yv[6],yv[5]) - SUM4(yv[0],yv[3],yv[7],yv[4])) ; + dzv = Real_t(0.25)*(SUM4(zv[1],zv[2],zv[6],zv[5]) - SUM4(zv[0],zv[3],zv[7],zv[4])) ; + + *delv_xi = ax*dxv + ay*dyv + az*dzv ; + + /* find delxj and delvj ( k cross i ) */ + + ax = dyk*dzi - dzk*dyi ; + ay = dzk*dxi - dxk*dzi ; + az = dxk*dyi - dyk*dxi ; + + *delx_eta = vol / SQRT(ax*ax + ay*ay + az*az + ptiny) ; + + ax *= norm ; + ay *= norm ; + az *= norm ; + + dxv = Real_t(-0.25)*(SUM4(xv[0],xv[1],xv[5],xv[4]) - SUM4(xv[3],xv[2],xv[6],xv[7])) ; + dyv = Real_t(-0.25)*(SUM4(yv[0],yv[1],yv[5],yv[4]) - SUM4(yv[3],yv[2],yv[6],yv[7])) ; + dzv = Real_t(-0.25)*(SUM4(zv[0],zv[1],zv[5],zv[4]) - SUM4(zv[3],zv[2],zv[6],zv[7])) ; + + *delv_eta = ax*dxv + ay*dyv + az*dzv ; +#undef SUM4 +} + + +__global__ +#ifdef DOUBLE_PRECISION +__launch_bounds__(64,8) // 64-bit +#else +__launch_bounds__(64,16) // 32-bit +#endif +#ifdef ENABLE_JIT +__attribute__((annotate("jit",1,2,27))) +#endif +void CalcKinematicsAndMonotonicQGradient_kernel( + Index_t numElem, Index_t padded_numElem, const Real_t dt, + const Index_t* __restrict__ nodelist, const Real_t* __restrict__ volo, const Real_t* __restrict__ v, + + const Real_t* __restrict__ x, + const Real_t* __restrict__ y, + const Real_t* __restrict__ z, + const Real_t* __restrict__ xd, + const Real_t* __restrict__ yd, + const Real_t* __restrict__ zd, + + //TextureObj x, + //TextureObj y, + //TextureObj z, + //TextureObj xd, + //TextureObj yd, + //TextureObj zd, + //TextureObj* x, + //TextureObj* y, + //TextureObj* z, + //TextureObj* xd, + //TextureObj* yd, + //TextureObj* zd, + + + Real_t* __restrict__ vnew, + Real_t* __restrict__ delv, + Real_t* __restrict__ arealg, + Real_t* __restrict__ dxx, + Real_t* __restrict__ dyy, + Real_t* __restrict__ dzz, + Real_t* __restrict__ vdov, + Real_t* __restrict__ delx_zeta, + Real_t* __restrict__ delv_zeta, + Real_t* __restrict__ delx_xi, + Real_t* __restrict__ delv_xi, + Real_t* __restrict__ delx_eta, + Real_t* __restrict__ delv_eta, + Index_t* __restrict__ bad_vol, + const Index_t num_threads + ) +{ + + Real_t B[3][8] ; /** shape function derivatives */ + Index_t nodes[8] ; + Real_t x_local[8] ; + Real_t y_local[8] ; + Real_t z_local[8] ; + Real_t xd_local[8] ; + Real_t yd_local[8] ; + Real_t zd_local[8] ; + Real_t D[6]; + + int k=blockDim.x*blockIdx.x+threadIdx.x; + + if ( k < num_threads) { + + Real_t volume ; + Real_t relativeVolume ; + + // get nodal coordinates from global arrays and copy into local arrays. + //#pragma unroll + //for( Index_t lnode=0 ; lnode<8 ; ++lnode ) + //{ + // Index_t gnode = nodelist[k+lnode*padded_numElem]; + // nodes[lnode] = gnode; + // x_local[lnode] = x[gnode]; + // y_local[lnode] = y[gnode]; + // z_local[lnode] = z[gnode]; + //} + + #pragma unroll + for( Index_t lnode=0 ; lnode<8 ; ++lnode ) + { + Index_t gnode = nodelist[k+lnode*padded_numElem]; + nodes[lnode] = gnode; + } + + #pragma unroll + for( Index_t lnode=0 ; lnode<8 ; ++lnode ) + x_local[lnode] = x[nodes[lnode]]; + + #pragma unroll + for( Index_t lnode=0 ; lnode<8 ; ++lnode ) + y_local[lnode] = y[nodes[lnode]]; + + #pragma unroll + for( Index_t lnode=0 ; lnode<8 ; ++lnode ) + z_local[lnode] = z[nodes[lnode]]; + + + + // volume calculations + volume = CalcElemVolume(x_local, y_local, z_local ); + + relativeVolume = volume / volo[k] ; + vnew[k] = relativeVolume ; + + delv[k] = relativeVolume - v[k] ; + // set characteristic length + arealg[k] = CalcElemCharacteristicLength(x_local,y_local,z_local,volume); + + // get nodal velocities from global array and copy into local arrays. + #pragma unroll + for( Index_t lnode=0 ; lnode<8 ; ++lnode ) + { + Index_t gnode = nodes[lnode]; + xd_local[lnode] = xd[gnode]; + yd_local[lnode] = yd[gnode]; + zd_local[lnode] = zd[gnode]; + } + + Real_t dt2 = Real_t(0.5) * dt; + + #pragma unroll + for ( Index_t j=0 ; j<8 ; ++j ) + { + x_local[j] -= dt2 * xd_local[j]; + y_local[j] -= dt2 * yd_local[j]; + z_local[j] -= dt2 * zd_local[j]; + } + + Real_t detJ; + + CalcElemShapeFunctionDerivatives(x_local,y_local,z_local,B,&detJ ); + + CalcElemVelocityGradient(xd_local,yd_local,zd_local,B,detJ,D); + + // ------------------------ + // CALC LAGRANGE ELEM 2 + // ------------------------ + + // calc strain rate and apply as constraint (only done in FB element) + Real_t vdovNew = D[0] + D[1] + D[2]; + Real_t vdovthird = vdovNew/Real_t(3.0) ; + + // make the rate of deformation tensor deviatoric + vdov[k] = vdovNew ; + dxx[k] = D[0] - vdovthird ; + dyy[k] = D[1] - vdovthird ; + dzz[k] = D[2] - vdovthird ; + + // ------------------------ + // CALC MONOTONIC Q GRADIENT + // ------------------------ + Real_t vol = volo[k]*vnew[k]; + + // Undo x_local update + #pragma unroll + for ( Index_t j=0 ; j<8 ; ++j ) { + x_local[j] += dt2 * xd_local[j]; + y_local[j] += dt2 * yd_local[j]; + z_local[j] += dt2 * zd_local[j]; + } + + CalcMonoGradient(x_local,y_local,z_local,xd_local,yd_local,zd_local, + vol, + &delx_zeta[k],&delv_zeta[k],&delx_xi[k], + &delv_xi[k], &delx_eta[k], &delv_eta[k]); + + //Check for bad volume + if (relativeVolume < 0) + *bad_vol = k; + } +} + + +static inline +void CalcKinematicsAndMonotonicQGradient(Domain *domain) +{ + Index_t numElem = domain->numElem ; + Index_t padded_numElem = domain->padded_numElem; + + int num_threads = numElem; + + const int block_size = 64; + int dimGrid = PAD_DIV(num_threads,block_size); + + CalcKinematicsAndMonotonicQGradient_kernel<<>> + ( numElem,padded_numElem, domain->deltatime_h, + domain->nodelist.raw(), + domain->volo.raw(), + domain->v.raw(), + domain->x.raw(), domain->y.raw(), domain->z.raw(), domain->xd.raw(), domain->yd.raw(), domain->zd.raw(), + domain->vnew->raw(), + domain->delv.raw(), + domain->arealg.raw(), + domain->dxx->raw(), + domain->dyy->raw(), + domain->dzz->raw(), + domain->vdov.raw(), + domain->delx_zeta->raw(), + domain->delv_zeta->raw(), + domain->delx_xi->raw(), + domain->delv_xi->raw(), + domain->delx_eta->raw(), + domain->delv_eta->raw(), + domain->bad_vol_h, + num_threads + ); + + //cudaDeviceSynchronize(); + //cudaCheckError(); +} + +__global__ +#ifdef DOUBLE_PRECISION +__launch_bounds__(128,16) +#else +__launch_bounds__(128,16) +#endif +void CalcMonotonicQRegionForElems_kernel( + Real_t qlc_monoq, + Real_t qqc_monoq, + Real_t monoq_limiter_mult, + Real_t monoq_max_slope, + Real_t ptiny, + + // the elementset length + Index_t elength, + + Index_t* regElemlist, +// const Index_t* __restrict__ regElemlist, + Index_t *elemBC, + Index_t *lxim, + Index_t *lxip, + Index_t *letam, + Index_t *letap, + Index_t *lzetam, + Index_t *lzetap, + Real_t *delv_xi, + Real_t *delv_eta, + Real_t *delv_zeta, + Real_t *delx_xi, + Real_t *delx_eta, + Real_t *delx_zeta, + Real_t *vdov,Real_t *elemMass,Real_t *volo,Real_t *vnew, + Real_t *qq, Real_t *ql, + Real_t *q, + Real_t qstop, + Index_t* bad_q + ) +{ + int ielem=blockDim.x*blockIdx.x + threadIdx.x; + + if (ielem monoq_max_slope) phixi = monoq_max_slope; + + + /* phieta */ + norm = Real_t(1.) / ( delv_eta[i] + ptiny ) ; + + switch (bcMask & ETA_M) { + case ETA_M_COMM: /* needs comm data */ + case 0: delvm = delv_eta[letam[i]] ; break ; + case ETA_M_SYMM: delvm = delv_eta[i] ; break ; + case ETA_M_FREE: delvm = Real_t(0.0) ; break ; + default: /* ERROR */ ; break ; + } + switch (bcMask & ETA_P) { + case ETA_P_COMM: /* needs comm data */ + case 0: delvp = delv_eta[letap[i]] ; break ; + case ETA_P_SYMM: delvp = delv_eta[i] ; break ; + case ETA_P_FREE: delvp = Real_t(0.0) ; break ; + default: /* ERROR */ ; break ; + } + + delvm = delvm * norm ; + delvp = delvp * norm ; + + phieta = Real_t(.5) * ( delvm + delvp ) ; + + delvm *= monoq_limiter_mult ; + delvp *= monoq_limiter_mult ; + + if ( delvm < phieta ) phieta = delvm ; + if ( delvp < phieta ) phieta = delvp ; + if ( phieta < Real_t(0.)) phieta = Real_t(0.) ; + if ( phieta > monoq_max_slope) phieta = monoq_max_slope; + + /* phizeta */ + norm = Real_t(1.) / ( delv_zeta[i] + ptiny ) ; + + switch (bcMask & ZETA_M) { + case ZETA_M_COMM: /* needs comm data */ + case 0: delvm = delv_zeta[lzetam[i]] ; break ; + case ZETA_M_SYMM: delvm = delv_zeta[i] ; break ; + case ZETA_M_FREE: delvm = Real_t(0.0) ; break ; + default: /* ERROR */ ; break ; + } + switch (bcMask & ZETA_P) { + case ZETA_P_COMM: /* needs comm data */ + case 0: delvp = delv_zeta[lzetap[i]] ; break ; + case ZETA_P_SYMM: delvp = delv_zeta[i] ; break ; + case ZETA_P_FREE: delvp = Real_t(0.0) ; break ; + default: /* ERROR */ ; break ; + } + + delvm = delvm * norm ; + delvp = delvp * norm ; + + phizeta = Real_t(.5) * ( delvm + delvp ) ; + + delvm *= monoq_limiter_mult ; + delvp *= monoq_limiter_mult ; + + if ( delvm < phizeta ) phizeta = delvm ; + if ( delvp < phizeta ) phizeta = delvp ; + if ( phizeta < Real_t(0.)) phizeta = Real_t(0.); + if ( phizeta > monoq_max_slope ) phizeta = monoq_max_slope; + + /* Remove length scale */ + + if ( vdov[i] > Real_t(0.) ) { + qlin = Real_t(0.) ; + qquad = Real_t(0.) ; + } + else { + Real_t delvxxi = delv_xi[i] * delx_xi[i] ; + Real_t delvxeta = delv_eta[i] * delx_eta[i] ; + Real_t delvxzeta = delv_zeta[i] * delx_zeta[i] ; + + if ( delvxxi > Real_t(0.) ) delvxxi = Real_t(0.) ; + if ( delvxeta > Real_t(0.) ) delvxeta = Real_t(0.) ; + if ( delvxzeta > Real_t(0.) ) delvxzeta = Real_t(0.) ; + + Real_t rho = elemMass[i] / (volo[i] * vnew[i]) ; + + qlin = -qlc_monoq * rho * + ( delvxxi * (Real_t(1.) - phixi) + + delvxeta * (Real_t(1.) - phieta) + + delvxzeta * (Real_t(1.) - phizeta) ) ; + + qquad = qqc_monoq * rho * + ( delvxxi*delvxxi * (Real_t(1.) - phixi*phixi) + + delvxeta*delvxeta * (Real_t(1.) - phieta*phieta) + + delvxzeta*delvxzeta * (Real_t(1.) - phizeta*phizeta) ) ; + } + + qq[i] = qquad ; + ql[i] = qlin ; + + // Don't allow excessive artificial viscosity + if (q[i] > qstop) + *(bad_q) = i; + + } +} + + +static inline +void CalcMonotonicQRegionForElems(Domain *domain) +{ + + const Real_t ptiny = Real_t(1.e-36) ; + Real_t monoq_max_slope = domain->monoq_max_slope ; + Real_t monoq_limiter_mult = domain->monoq_limiter_mult ; + + Real_t qlc_monoq = domain->qlc_monoq; + Real_t qqc_monoq = domain->qqc_monoq; + Index_t elength = domain->numElem; + + Index_t dimBlock= 128; + Index_t dimGrid = PAD_DIV(elength,dimBlock); + + CalcMonotonicQRegionForElems_kernel<<>> + ( qlc_monoq,qqc_monoq,monoq_limiter_mult,monoq_max_slope,ptiny,elength, + domain->regElemlist.raw(),domain->elemBC.raw(), + domain->lxim.raw(),domain->lxip.raw(), + domain->letam.raw(),domain->letap.raw(), + domain->lzetam.raw(),domain->lzetap.raw(), + domain->delv_xi->raw(),domain->delv_eta->raw(),domain->delv_zeta->raw(), + domain->delx_xi->raw(),domain->delx_eta->raw(),domain->delx_zeta->raw(), + domain->vdov.raw(),domain->elemMass.raw(),domain->volo.raw(),domain->vnew->raw(), + domain->qq.raw(),domain->ql.raw(), + domain->q.raw(), + domain->qstop, + domain->bad_q_h + ); + + //cudaDeviceSynchronize(); + //cudaCheckError(); +} + +static +__device__ __forceinline__ +void CalcPressureForElems_device( + Real_t& p_new, Real_t& bvc, + Real_t& pbvc, Real_t& e_old, + Real_t& compression, Real_t& vnewc, + Real_t pmin, + Real_t p_cut, Real_t eosvmax) +{ + + Real_t c1s = Real_t(2.0)/Real_t(3.0); + Real_t p_temp = p_new; + + bvc = c1s * (compression + Real_t(1.)); + pbvc = c1s; + + p_temp = bvc * e_old ; + + if ( FABS(p_temp) < p_cut ) + p_temp = Real_t(0.0) ; + + if ( vnewc >= eosvmax ) /* impossible condition here? */ + p_temp = Real_t(0.0) ; + + if (p_temp < pmin) + p_temp = pmin ; + + p_new = p_temp; + +} + +static +__device__ __forceinline__ +void CalcSoundSpeedForElems_device(Real_t& vnewc, Real_t rho0, Real_t &enewc, + Real_t &pnewc, Real_t &pbvc, + Real_t &bvc, Real_t ss4o3, Index_t nz, + Real_t *ss, Index_t iz) +{ + Real_t ssTmp = (pbvc * enewc + vnewc * vnewc * + bvc * pnewc) / rho0; + if (ssTmp <= Real_t(.1111111e-36)) { + ssTmp = Real_t(.3333333e-18); + } + else { + ssTmp = SQRT(ssTmp) ; + } + ss[iz] = ssTmp; +} + +static +__device__ +__forceinline__ +void ApplyMaterialPropertiesForElems_device( + Real_t& eosvmin, Real_t& eosvmax, + Real_t* vnew, Real_t *v, + Real_t& vnewc, Index_t* bad_vol, Index_t zn) +{ + vnewc = vnew[zn] ; + + if (eosvmin != Real_t(0.)) { + if (vnewc < eosvmin) + vnewc = eosvmin ; + } + + if (eosvmax != Real_t(0.)) { + if (vnewc > eosvmax) + vnewc = eosvmax ; + } + + // Now check for valid volume + Real_t vc = v[zn]; + if (eosvmin != Real_t(0.)) { + if (vc < eosvmin) + vc = eosvmin ; + } + if (eosvmax != Real_t(0.)) { + if (vc > eosvmax) + vc = eosvmax ; + } + if (vc <= 0.) { + *bad_vol = zn; + } + +} + +static +__device__ +__forceinline__ +void UpdateVolumesForElems_device(Index_t numElem, Real_t& v_cut, + Real_t *vnew, + Real_t *v, + int i) +{ + Real_t tmpV ; + tmpV = vnew[i] ; + + if ( FABS(tmpV - Real_t(1.0)) < v_cut ) + tmpV = Real_t(1.0) ; + v[i] = tmpV ; +} + + +static +__device__ +__forceinline__ +void CalcEnergyForElems_device(Real_t& p_new, Real_t& e_new, Real_t& q_new, + Real_t& bvc, Real_t& pbvc, + Real_t& p_old, Real_t& e_old, Real_t& q_old, + Real_t& compression, Real_t& compHalfStep, + Real_t& vnewc, Real_t& work, Real_t& delvc, Real_t pmin, + Real_t p_cut, Real_t e_cut, Real_t q_cut, Real_t emin, + Real_t& qq, Real_t& ql, + Real_t& rho0, + Real_t& eosvmax, + Index_t length) +{ + const Real_t sixth = Real_t(1.0) / Real_t(6.0) ; + Real_t pHalfStep; + + e_new = e_old - Real_t(0.5) * delvc * (p_old + q_old) + + Real_t(0.5) * work; + + if (e_new < emin ) { + e_new = emin ; + } + + CalcPressureForElems_device(pHalfStep, bvc, pbvc, e_new, compHalfStep, vnewc, + pmin, p_cut, eosvmax); + + Real_t vhalf = Real_t(1.) / (Real_t(1.) + compHalfStep) ; + + if ( delvc > Real_t(0.) ) { + q_new = Real_t(0.) ; + } + else { + Real_t ssc = ( pbvc * e_new + + vhalf * vhalf * bvc * pHalfStep ) / rho0 ; + + if ( ssc <= Real_t(.1111111e-36) ) { + ssc =Real_t(.3333333e-18) ; + } else { + ssc = SQRT(ssc) ; + } + + q_new = (ssc*ql + qq) ; + } + + e_new = e_new + Real_t(0.5) * delvc + * ( Real_t(3.0)*(p_old + q_old) + - Real_t(4.0)*(pHalfStep + q_new)) ; + + e_new += Real_t(0.5) * work; + + if (FABS(e_new) < e_cut) { + e_new = Real_t(0.) ; + } + if ( e_new < emin ) { + e_new = emin ; + } + + CalcPressureForElems_device(p_new, bvc, pbvc, e_new, compression, vnewc, + pmin, p_cut, eosvmax); + + Real_t q_tilde ; + + if (delvc > Real_t(0.)) { + q_tilde = Real_t(0.) ; + } + else { + Real_t ssc = ( pbvc * e_new + + vnewc * vnewc * bvc * p_new ) / rho0 ; + + if ( ssc <= Real_t(.1111111e-36) ) { + ssc = Real_t(.3333333e-18) ; + } else { + ssc = SQRT(ssc) ; + } + + q_tilde = (ssc*ql + qq) ; + } + + e_new = e_new - ( Real_t(7.0)*(p_old + q_old) + - Real_t(8.0)*(pHalfStep + q_new) + + (p_new + q_tilde)) * delvc*sixth ; + + if (FABS(e_new) < e_cut) { + e_new = Real_t(0.) ; + } + if ( e_new < emin ) { + e_new = emin ; + } + + CalcPressureForElems_device(p_new, bvc, pbvc, e_new, compression, vnewc, + pmin, p_cut, eosvmax); + + + if ( delvc <= Real_t(0.) ) { + Real_t ssc = ( pbvc * e_new + + vnewc * vnewc * bvc * p_new ) / rho0 ; + + if ( ssc <= Real_t(.1111111e-36) ) { + ssc = Real_t(.3333333e-18) ; + } else { + ssc = SQRT(ssc) ; + } + + q_new = (ssc*ql + qq) ; + + if (FABS(q_new) < q_cut) q_new = Real_t(0.) ; + } + + return ; +} + +__device__ inline +Index_t giveMyRegion(const Index_t* regCSR,const Index_t i, const Index_t numReg) +{ + + for(Index_t reg = 0; reg < numReg-1; reg++) + if(i < regCSR[reg]) + return reg; + return (numReg-1); +} + + +__global__ +void ApplyMaterialPropertiesAndUpdateVolume_kernel( + Index_t length, + Real_t rho0, + Real_t e_cut, + Real_t emin, + Real_t* __restrict__ ql, + Real_t* __restrict__ qq, + Real_t* __restrict__ vnew, + Real_t* __restrict__ v, + Real_t pmin, + Real_t p_cut, + Real_t q_cut, + Real_t eosvmin, + Real_t eosvmax, + Index_t* __restrict__ regElemlist, +// const Index_t* __restrict__ regElemlist, + Real_t* __restrict__ e, + Real_t* __restrict__ delv, + Real_t* __restrict__ p, + Real_t* __restrict__ q, + Real_t ss4o3, + Real_t* __restrict__ ss, + Real_t v_cut, + Index_t* __restrict__ bad_vol, + const Int_t cost, + const Index_t* regCSR, + const Index_t* regReps, + const Index_t numReg +) +{ + + Real_t e_old, delvc, p_old, q_old, e_temp, delvc_temp, p_temp, q_temp; + Real_t compression, compHalfStep; + Real_t qq_old, ql_old, qq_temp, ql_temp, work; + Real_t p_new, e_new, q_new; + Real_t bvc, pbvc, vnewc; + + Index_t i=blockDim.x*blockIdx.x + threadIdx.x; + + if (i= eosvmax) { /* impossible due to calling func? */ + p_old = Real_t(0.) ; + compression = Real_t(0.) ; + compHalfStep = Real_t(0.) ; + } + } + +// qq_old = qq[zidx] ; +// ql_old = ql[zidx] ; +// work = Real_t(0.) ; + + CalcEnergyForElems_device(p_new, e_new, q_new, bvc, pbvc, + p_old, e_old, q_old, compression, compHalfStep, + vnewc, work, delvc, pmin, + p_cut, e_cut, q_cut, emin, + qq_old, ql_old, rho0, eosvmax, length); + }//end for rep + + p[zidx] = p_new ; + e[zidx] = e_new ; + q[zidx] = q_new ; + + CalcSoundSpeedForElems_device + (vnewc,rho0,e_new,p_new,pbvc,bvc,ss4o3,length,ss,zidx); + +/********************** End EvalEOSForElems **************************/ + + UpdateVolumesForElems_device(length,v_cut,vnew,v,zidx); + + } +} + +static inline +void ApplyMaterialPropertiesAndUpdateVolume(Domain *domain) +{ + Index_t length = domain->numElem ; + + if (length != 0) { + + Index_t dimBlock = 128; + Index_t dimGrid = PAD_DIV(length,dimBlock); + + ApplyMaterialPropertiesAndUpdateVolume_kernel<<>> + (length, + domain->refdens, + domain->e_cut, + domain->emin, + domain->ql.raw(), + domain->qq.raw(), + domain->vnew->raw(), + domain->v.raw(), + domain->pmin, + domain->p_cut, + domain->q_cut, + domain->eosvmin, + domain->eosvmax, + domain->regElemlist.raw(), + domain->e.raw(), + domain->delv.raw(), + domain->p.raw(), + domain->q.raw(), + domain->ss4o3, + domain->ss.raw(), + domain->v_cut, + domain->bad_vol_h, + domain->cost, + domain->regCSR.raw(), + domain->regReps.raw(), + domain->numReg + ); + + //cudaDeviceSynchronize(); + //cudaCheckError(); + } +} + +static inline +void LagrangeElements(Domain *domain) +{ + int allElem = domain->numElem + /* local elem */ + 2*domain->sizeX*domain->sizeY + /* plane ghosts */ + 2*domain->sizeX*domain->sizeZ + /* row ghosts */ + 2*domain->sizeY*domain->sizeZ ; /* col ghosts */ + + domain->vnew = Allocator< Vector_d >::allocate(domain->numElem); + domain->dxx = Allocator< Vector_d >::allocate(domain->numElem); + domain->dyy = Allocator< Vector_d >::allocate(domain->numElem); + domain->dzz = Allocator< Vector_d >::allocate(domain->numElem); + + domain->delx_xi = Allocator< Vector_d >::allocate(domain->numElem); + domain->delx_eta = Allocator< Vector_d >::allocate(domain->numElem); + domain->delx_zeta = Allocator< Vector_d >::allocate(domain->numElem); + + domain->delv_xi = Allocator< Vector_d >::allocate(allElem); + domain->delv_eta = Allocator< Vector_d >::allocate(allElem); + domain->delv_zeta = Allocator< Vector_d >::allocate(allElem); + +#if USE_MPI + CommRecv(*domain, MSG_MONOQ, 3, + domain->sizeX, domain->sizeY, domain->sizeZ, + true, true) ; +#endif + + /*********************************************/ + /* Calc Kinematics and Monotic Q Gradient */ + /*********************************************/ + CalcKinematicsAndMonotonicQGradient(domain); + +#if USE_MPI + Domain_member fieldData[3] ; + + // initialize pointers + domain->d_delv_xi = domain->delv_xi->raw(); + domain->d_delv_eta = domain->delv_eta->raw(); + domain->d_delv_zeta = domain->delv_zeta->raw(); + + fieldData[0] = &Domain::get_delv_xi ; + fieldData[1] = &Domain::get_delv_eta ; + fieldData[2] = &Domain::get_delv_zeta ; + + CommSendGpu(*domain, MSG_MONOQ, 3, fieldData, + domain->sizeX, domain->sizeY, domain->sizeZ, + true, true, domain->streams[2]) ; + CommMonoQGpu(*domain, domain->streams[2]) ; +#endif + + Allocator >::free(domain->dxx,domain->numElem); + Allocator >::free(domain->dyy,domain->numElem); + Allocator >::free(domain->dzz,domain->numElem); + + /********************************** + * Calc Monotic Q Region + **********************************/ + CalcMonotonicQRegionForElems(domain); + + Allocator >::free(domain->delx_xi,domain->numElem); + Allocator >::free(domain->delx_eta,domain->numElem); + Allocator >::free(domain->delx_zeta,domain->numElem); + + Allocator >::free(domain->delv_xi,allElem); + Allocator >::free(domain->delv_eta,allElem); + Allocator >::free(domain->delv_zeta,allElem); + +// printf("\n --Start of ApplyMaterials! \n"); + ApplyMaterialPropertiesAndUpdateVolume(domain) ; +// printf("\n --End of ApplyMaterials! \n"); + Allocator >::free(domain->vnew,domain->numElem); +} + +template +__global__ +#ifdef DOUBLE_PRECISION +__launch_bounds__(128,16) +#else +__launch_bounds__(128,16) +#endif +void CalcTimeConstraintsForElems_kernel( + Index_t length, + Real_t qqc2, + Real_t dvovmax, + Index_t *matElemlist, + Real_t *ss, + Real_t *vdov, + Real_t *arealg, + Real_t *dev_mindtcourant, + Real_t *dev_mindthydro) +{ + int tid = threadIdx.x; + int i=blockDim.x*blockIdx.x + tid; + + __shared__ volatile Real_t s_mindthydro[block_size]; + __shared__ volatile Real_t s_mindtcourant[block_size]; + + Real_t mindthydro = Real_t(1.0e+20) ; + Real_t mindtcourant = Real_t(1.0e+20) ; + + Real_t dthydro = mindthydro; + Real_t dtcourant = mindtcourant; + + while (i dtdvov ) { + dthydro = dtdvov ; + } + } + if (dthydro < mindthydro) + mindthydro = dthydro; + + // Computing dt_courant + Real_t ss_tmp = ss[indx]; + Real_t area_tmp = arealg[indx]; + Real_t dtf = ss_tmp * ss_tmp ; + + dtf += ((vdov_tmp < 0.) ? qqc2*area_tmp*area_tmp*vdov_tmp*vdov_tmp : 0.); + + dtf = area_tmp / SQRT(dtf) ; + + /* determine minimum timestep with its corresponding elem */ + if (vdov_tmp != Real_t(0.) && dtf < dtcourant) { + dtcourant = dtf ; + } + + if (dtcourant< mindtcourant) + mindtcourant= dtcourant; + + i += gridDim.x*blockDim.x; + } + + s_mindthydro[tid] = mindthydro; + s_mindtcourant[tid] = mindtcourant; + + __syncthreads(); + + // Do shared memory reduction + if (block_size >= 1024) { + if (tid < 512) { + s_mindthydro[tid] = min( s_mindthydro[tid] , s_mindthydro[tid + 512]) ; + s_mindtcourant[tid] = min( s_mindtcourant[tid], s_mindtcourant[tid + 512]) ; } + __syncthreads(); } + + if (block_size >= 512) { + if (tid < 256) { + s_mindthydro[tid] = min( s_mindthydro[tid], s_mindthydro[tid + 256]) ; + s_mindtcourant[tid] = min( s_mindtcourant[tid], s_mindtcourant[tid + 256]) ; } + __syncthreads(); } + + if (block_size >= 256) { + if (tid < 128) { + s_mindthydro[tid] = min( s_mindthydro[tid], s_mindthydro[tid + 128]) ; + s_mindtcourant[tid] = min( s_mindtcourant[tid], s_mindtcourant[tid + 128]) ; } + __syncthreads(); } + + if (block_size >= 128) { + if (tid < 64) { + s_mindthydro[tid] = min( s_mindthydro[tid], s_mindthydro[tid + 64]) ; + s_mindtcourant[tid] = min( s_mindtcourant[tid], s_mindtcourant[tid + 64]) ; } + __syncthreads(); } + + if (tid < 32) { + s_mindthydro[tid] = min( s_mindthydro[tid], s_mindthydro[tid + 32]) ; + s_mindtcourant[tid] = min( s_mindtcourant[tid], s_mindtcourant[tid + 32]) ; + } + + if (tid < 16) { + s_mindthydro[tid] = min( s_mindthydro[tid], s_mindthydro[tid + 16]) ; + s_mindtcourant[tid] = min( s_mindtcourant[tid], s_mindtcourant[tid + 16]) ; + } + if (tid < 8) { + s_mindthydro[tid] = min( s_mindthydro[tid], s_mindthydro[tid + 8]) ; + s_mindtcourant[tid] = min( s_mindtcourant[tid], s_mindtcourant[tid + 8]) ; + } + if (tid < 4) { + s_mindthydro[tid] = min( s_mindthydro[tid], s_mindthydro[tid + 4]) ; + s_mindtcourant[tid] = min( s_mindtcourant[tid], s_mindtcourant[tid + 4]) ; + } + if (tid < 2) { + s_mindthydro[tid] = min( s_mindthydro[tid], s_mindthydro[tid + 2]) ; + s_mindtcourant[tid] = min( s_mindtcourant[tid], s_mindtcourant[tid + 2]) ; + } + if (tid < 1) { + s_mindthydro[tid] = min( s_mindthydro[tid], s_mindthydro[tid + 1]) ; + s_mindtcourant[tid] = min( s_mindtcourant[tid], s_mindtcourant[tid + 1]) ; + } + + // Store in global memory + if (tid==0) { + dev_mindtcourant[blockIdx.x] = s_mindtcourant[0]; + dev_mindthydro[blockIdx.x] = s_mindthydro[0]; + } + +} + +template +__global__ +void CalcMinDtOneBlock(Real_t* dev_mindthydro, Real_t* dev_mindtcourant, Real_t* dtcourant, Real_t* dthydro, Index_t shared_array_size) +{ + + volatile __shared__ Real_t s_data[block_size]; + int tid = threadIdx.x; + + if (blockIdx.x==0) + { + if (tid < shared_array_size) + s_data[tid] = dev_mindtcourant[tid]; + else + s_data[tid] = 1.0e20; + + __syncthreads(); + + if (block_size >= 1024) { if (tid < 512) { s_data[tid] = min(s_data[tid],s_data[tid + 512]); } __syncthreads(); } + if (block_size >= 512) { if (tid < 256) { s_data[tid] = min(s_data[tid],s_data[tid + 256]); } __syncthreads(); } + if (block_size >= 256) { if (tid < 128) { s_data[tid] = min(s_data[tid],s_data[tid + 128]); } __syncthreads(); } + if (block_size >= 128) { if (tid < 64) { s_data[tid] = min(s_data[tid],s_data[tid + 64]); } __syncthreads(); } + if (tid < 32) { s_data[tid] = min(s_data[tid],s_data[tid + 32]); } + if (tid < 16) { s_data[tid] = min(s_data[tid],s_data[tid + 16]); } + if (tid < 8) { s_data[tid] = min(s_data[tid],s_data[tid + 8]); } + if (tid < 4) { s_data[tid] = min(s_data[tid],s_data[tid + 4]); } + if (tid < 2) { s_data[tid] = min(s_data[tid],s_data[tid + 2]); } + if (tid < 1) { s_data[tid] = min(s_data[tid],s_data[tid + 1]); } + + if (tid<1) + { + *(dtcourant)= s_data[0]; + } + } + else if (blockIdx.x==1) + { + if (tid < shared_array_size) + s_data[tid] = dev_mindthydro[tid]; + else + s_data[tid] = 1.0e20; + + __syncthreads(); + + if (block_size >= 1024) { if (tid < 512) { s_data[tid] = min(s_data[tid],s_data[tid + 512]); } __syncthreads(); } + if (block_size >= 512) { if (tid < 256) { s_data[tid] = min(s_data[tid],s_data[tid + 256]); } __syncthreads(); } + if (block_size >= 256) { if (tid < 128) { s_data[tid] = min(s_data[tid],s_data[tid + 128]); } __syncthreads(); } + if (block_size >= 128) { if (tid < 64) { s_data[tid] = min(s_data[tid],s_data[tid + 64]); } __syncthreads(); } + if (tid < 32) { s_data[tid] = min(s_data[tid],s_data[tid + 32]); } + if (tid < 16) { s_data[tid] = min(s_data[tid],s_data[tid + 16]); } + if (tid < 8) { s_data[tid] = min(s_data[tid],s_data[tid + 8]); } + if (tid < 4) { s_data[tid] = min(s_data[tid],s_data[tid + 4]); } + if (tid < 2) { s_data[tid] = min(s_data[tid],s_data[tid + 2]); } + if (tid < 1) { s_data[tid] = min(s_data[tid],s_data[tid + 1]); } + + if (tid<1) + { + *(dthydro) = s_data[0]; + } + } +} + +static inline +void CalcTimeConstraintsForElems(Domain* domain) +{ + Real_t qqc = domain->qqc; + Real_t qqc2 = Real_t(64.0) * qqc * qqc ; + Real_t dvovmax = domain->dvovmax ; + + const Index_t length = domain->numElem; + + const int max_dimGrid = 1024; + const int dimBlock = 128; + int dimGrid=std::min(max_dimGrid,PAD_DIV(length,dimBlock)); + + cudaFuncSetCacheConfig(CalcTimeConstraintsForElems_kernel, cudaFuncCachePreferShared); + + Vector_d* dev_mindtcourant= Allocator< Vector_d >::allocate(dimGrid); + Vector_d* dev_mindthydro = Allocator< Vector_d >::allocate(dimGrid); + + CalcTimeConstraintsForElems_kernel <<>> + (length,qqc2,dvovmax, + domain->matElemlist.raw(),domain->ss.raw(),domain->vdov.raw(),domain->arealg.raw(), + dev_mindtcourant->raw(),dev_mindthydro->raw()); + + // TODO: if dimGrid < 1024, should launch less threads + CalcMinDtOneBlock <<<2,max_dimGrid, max_dimGrid*sizeof(Real_t), domain->streams[1]>>>(dev_mindthydro->raw(),dev_mindtcourant->raw(),domain->dtcourant_h,domain->dthydro_h, dimGrid); + + cudaEventRecord(domain->time_constraint_computed,domain->streams[1]); + + Allocator >::free(dev_mindtcourant,dimGrid); + Allocator >::free(dev_mindthydro,dimGrid); +} + + +static inline +void LagrangeLeapFrog(Domain* domain) +{ + + /* calculate nodal forces, accelerations, velocities, positions, with + * applied boundary conditions and slide surface considerations */ + LagrangeNodal(domain); + + /* calculate element quantities (i.e. velocity gradient & q), and update + * material states */ + LagrangeElements(domain); + + CalcTimeConstraintsForElems(domain); + +} + +void printUsage(char* argv[]) +{ + printf("Usage: \n"); + printf("Unstructured grid: %s -u \n", argv[0]) ; + printf("Structured grid: %s -s numEdgeElems \n", argv[0]) ; + printf("\nExamples:\n") ; + printf("%s -s 45\n", argv[0]) ; + printf("%s -u sedov15oct.lmesh\n", argv[0]) ; +} + +#ifdef SAMI + +#ifdef __cplusplus + extern "C" { +#endif +#include "silo.h" +#ifdef __cplusplus + } +#endif + +#define MAX_LEN_SAMI_HEADER 10 + +#define SAMI_HDR_NUMBRICK 0 +#define SAMI_HDR_NUMNODES 3 +#define SAMI_HDR_NUMMATERIAL 4 +#define SAMI_HDR_INDEX_START 6 +#define SAMI_HDR_MESHDIM 7 + +#define MAX_ADJACENCY 14 /* must be 14 or greater */ + +void DumpSAMI(Domain *domain, char *name) +{ + DBfile *fp ; + int headerLen = MAX_LEN_SAMI_HEADER ; + int headerInfo[MAX_LEN_SAMI_HEADER]; + char varName[] = "brick_nd0"; + char coordName[] = "x"; + int version = 121 ; + int numElem = int(domain->numElem) ; + int numNode = int(domain->numNode) ; + int count ; + + int *materialID ; + int *nodeConnect ; + double *nodeCoord ; + + if ((fp = DBCreate(name, DB_CLOBBER, DB_LOCAL, + NULL, DB_PDB)) == NULL) + { + printf("Couldn't create file %s\n", name) ; + exit(1); + } + + for (int i=0; i nodelist_h = domain->nodelist; + + for (Index_t i=0; i<8; ++i) + { + for (Index_t j=0; jpadded_numElem + j]) + 1 ; + } + varName[8] = '0' + i; + DBWrite(fp, varName, nodeConnect, &numElem, 1, DB_INT) ; + } + + delete [] nodeConnect ; + + nodeCoord = new double[numNode] ; + + Vector_h x_h = domain->x; + Vector_h y_h = domain->y; + Vector_h z_h = domain->z; + + for (Index_t i=0; i<3; ++i) + { + for (Index_t j=0; jcycle)) ; + + DumpSAMI(domain, meshName) ; + +} +#endif + +void write_solution(Domain* locDom) +{ + Vector_h x_h = locDom->x; + Vector_h y_h = locDom->y; + Vector_h z_h = locDom->z; + +// printf("Writing solution to file xyz.asc\n"); + std::stringstream filename; + filename << "xyz.asc"; + + FILE *fout = fopen(filename.str().c_str(),"wb"); + + for (Index_t i=0; inumNode; i++) { + fprintf(fout,"%10d\n",i); + fprintf(fout,"%.10f\n",x_h[i]); + fprintf(fout,"%.10f\n",y_h[i]); + fprintf(fout,"%.10f\n",z_h[i]); + } + fclose(fout); +} + +/////////////////////////////////////////////////////////////////////////// +void InitMeshDecomp(Int_t numRanks, Int_t myRank, + Int_t *col, Int_t *row, Int_t *plane, Int_t *side) +{ + Int_t testProcs; + Int_t dx, dy, dz; + Int_t myDom; + + // Assume cube processor layout for now + testProcs = Int_t(cbrt(Real_t(numRanks))+0.5) ; + if (testProcs*testProcs*testProcs != numRanks) { + printf("Num processors must be a cube of an integer (1, 8, 27, ...)\n") ; +#if USE_MPI + MPI_Abort(MPI_COMM_WORLD, -1) ; +#else + exit(-1); +#endif + } + if (sizeof(Real_t) != 4 && sizeof(Real_t) != 8) { + printf("MPI operations only support float and double right now...\n"); +#if USE_MPI + MPI_Abort(MPI_COMM_WORLD, -1) ; +#else + exit(-1); +#endif + } + if (MAX_FIELDS_PER_MPI_COMM > CACHE_COHERENCE_PAD_REAL) { + printf("corner element comm buffers too small. Fix code.\n") ; +#if USE_MPI + MPI_Abort(MPI_COMM_WORLD, -1) ; +#else + exit(-1); +#endif + } + + dx = testProcs ; + dy = testProcs ; + dz = testProcs ; + + // temporary test + if (dx*dy*dz != numRanks) { + printf("error -- must have as many domains as procs\n") ; +#if USE_MPI + MPI_Abort(MPI_COMM_WORLD, -1) ; +#else + exit(-1); +#endif + } + Int_t remainder = dx*dy*dz % numRanks ; + if (myRank < remainder) { + myDom = myRank*( 1+ (dx*dy*dz / numRanks)) ; + } + else { + myDom = remainder*( 1+ (dx*dy*dz / numRanks)) + + (myRank - remainder)*(dx*dy*dz/numRanks) ; + } + + *col = myDom % dx ; + *row = (myDom / dx) % dy ; + *plane = myDom / (dx*dy) ; + *side = testProcs; + + return; +} + +void VerifyAndWriteFinalOutput(Real_t elapsed_time, + Domain& locDom, + Int_t its, + Int_t nx, + Int_t numRanks, + bool structured) +{ + size_t free_mem, total_mem, used_mem; + cudaMemGetInfo(&free_mem, &total_mem); + used_mem= total_mem - free_mem; +#if LULESH_SHOW_PROGRESS == 0 + printf(" Used Memory = %8.4f Mb\n", used_mem / (1024.*1024.) ); +#endif + + // GrindTime1 only takes a single domain into account, and is thus a good way to measure + // processor speed indepdendent of MPI parallelism. + // GrindTime2 takes into account speedups from MPI parallelism + Real_t grindTime1; + Real_t grindTime2; + if(structured) + { + grindTime1 = ((elapsed_time*1e6)/its)/(nx*nx*nx); + grindTime2 = ((elapsed_time*1e6)/its)/(nx*nx*nx*numRanks); + } + else + { + grindTime1 = ((elapsed_time*1e6)/its)/(locDom.numElem); + grindTime2 = ((elapsed_time*1e6)/its)/(locDom.numElem*numRanks); + } + // Copy Energy back to Host + if(structured) + { + Real_t e_zero; + Real_t* d_ezero_ptr = locDom.e.raw() + locDom.octantCorner; /* octant corner supposed to be 0 */ + cudaMemcpy(&e_zero, d_ezero_ptr, sizeof(Real_t), cudaMemcpyDeviceToHost); + + printf("Run completed: \n"); + printf(" Problem size = %i \n", nx); + printf(" MPI tasks = %i \n", numRanks); + printf(" Iteration count = %i \n", its); + printf(" Final Origin Energy = %12.6e \n", e_zero); + + Real_t MaxAbsDiff = Real_t(0.0); + Real_t TotalAbsDiff = Real_t(0.0); + Real_t MaxRelDiff = Real_t(0.0); + + Real_t *e_all = new Real_t[nx * nx]; + cudaMemcpy(e_all, locDom.e.raw(), nx * nx * sizeof(Real_t), cudaMemcpyDeviceToHost); + for (Index_t j=0; jh_nodalMass = locDom->nodalMass; + + fieldData = &Domain::get_nodalMass; + + // Initial domain boundary communication + CommRecv(*locDom, MSG_COMM_SBN, 1, + locDom->sizeX + 1, locDom->sizeY + 1, locDom->sizeZ + 1, + true, false) ; + CommSend(*locDom, MSG_COMM_SBN, 1, &fieldData, + locDom->sizeX + 1, locDom->sizeY + 1, locDom->sizeZ + 1, + true, false) ; + CommSBN(*locDom, 1, &fieldData) ; + + // copy back to the device + locDom->nodalMass = locDom->h_nodalMass; + + // End initialization + MPI_Barrier(MPI_COMM_WORLD); +#endif + + cudaDeviceSetCacheConfig(cudaFuncCachePreferL1); + + /* timestep to solution */ + int its=0; + + if (myRank == 0) { + if (structured) + printf("Running until t=%f, Problem size=%dx%dx%d\n",locDom->stoptime,nx,nx,nx); + else + printf("Running until t=%f, Problem size=%d \n",locDom->stoptime,locDom->numElem); + } + + cudaProfilerStart(); + +#if USE_MPI + double start = MPI_Wtime(); +#else + timeval start; + gettimeofday(&start, NULL) ; +#endif + + while(locDom->time_h < locDom->stoptime) + { + // this has been moved after computation of volume forces to hide launch latencies + //TimeIncrement(locDom) ; + + LagrangeLeapFrog(locDom) ; + + checkErrors(locDom,its,myRank); + + #if LULESH_SHOW_PROGRESS + if (myRank == 0) + printf("cycle = %d, time = %e, dt=%e\n", its+1, double(locDom->time_h), double(locDom->deltatime_h) ) ; + #endif + its++; + if (its == num_iters) break; + } + + // make sure GPU finished its work + cudaDeviceSynchronize(); + +// Use reduced max elapsed time + double elapsed_time; +#if USE_MPI + elapsed_time = MPI_Wtime() - start; +#else + timeval end; + gettimeofday(&end, NULL) ; + elapsed_time = (double)(end.tv_sec - start.tv_sec) + ((double)(end.tv_usec - start.tv_usec))/1000000 ; +#endif + + double elapsed_timeG; +#if USE_MPI + MPI_Reduce(&elapsed_time, &elapsed_timeG, 1, MPI_DOUBLE, + MPI_MAX, 0, MPI_COMM_WORLD); +#else + elapsed_timeG = elapsed_time; +#endif + + cudaProfilerStop(); + + if (myRank == 0) + VerifyAndWriteFinalOutput(elapsed_timeG, *locDom, its, nx, numRanks, structured); + +#ifdef SAMI + DumpDomain(locDom) ; +#endif + cudaDeviceReset(); + +#if USE_MPI + MPI_Finalize() ; +#endif + + return 0 ; +} + diff --git a/benchmarks/cuda/LULESH/lulesh.h b/benchmarks/cuda/LULESH/lulesh.h new file mode 100755 index 0000000..e1c508d --- /dev/null +++ b/benchmarks/cuda/LULESH/lulesh.h @@ -0,0 +1,313 @@ +#include "vector.h" + +#define LULESH_SHOW_PROGRESS 0 +#define DOUBLE_PRECISION +//#define SAMI + +#if USE_MPI +#include + +/* + define one of these three symbols: + + SEDOV_SYNC_POS_VEL_NONE + SEDOV_SYNC_POS_VEL_EARLY + SEDOV_SYNC_POS_VEL_LATE +*/ + +// TODO: currently we support only early sync! +#define SEDOV_SYNC_POS_VEL_EARLY 1 +#endif + +enum { + VolumeError = -1, + QStopError = -2, + LFileError = -3 +} ; + +/* Could also support fixed point and interval arithmetic types */ +typedef float real4 ; +typedef double real8 ; + +typedef int Index_t ; /* array subscript and loop index */ +typedef int Int_t ; /* integer representation */ +#ifdef DOUBLE_PRECISION +typedef real8 Real_t ; /* floating point representation */ +#else +typedef real4 Real_t ; /* floating point representation */ +#endif + +class Domain +{ + +public: + + void sortRegions(Vector_h& regReps_h, Vector_h& regSorted_h); + void CreateRegionIndexSets(Int_t nr, Int_t balance); + + + Index_t max_streams; + std::vector streams; + + /* Elem-centered */ + + Vector_d matElemlist ; /* material indexset */ + Vector_d nodelist ; /* elemToNode connectivity */ + + Vector_d lxim ; /* element connectivity through face */ + Vector_d lxip ; + Vector_d letam ; + Vector_d letap ; + Vector_d lzetam ; + Vector_d lzetap ; + + Vector_d elemBC ; /* elem face symm/free-surf flag */ + + Vector_d e ; /* energy */ + + Vector_d p ; /* pressure */ + + Vector_d q ; /* q */ + Vector_d ql ; /* linear term for q */ + Vector_d qq ; /* quadratic term for q */ + + Vector_d v ; /* relative volume */ + + Vector_d volo ; /* reference volume */ + Vector_d delv ; /* m_vnew - m_v */ + Vector_d vdov ; /* volume derivative over volume */ + + Vector_d arealg ; /* char length of an element */ + + Vector_d ss ; /* "sound speed" */ + + Vector_d elemMass ; /* mass */ + + Vector_d* vnew ; /* new relative volume -- temporary */ + + Vector_d* delv_xi ; /* velocity gradient -- temporary */ + Vector_d* delv_eta ; + Vector_d* delv_zeta ; + + Vector_d* delx_xi ; /* coordinate gradient -- temporary */ + Vector_d* delx_eta ; + Vector_d* delx_zeta ; + + Vector_d* dxx ; /* principal strains -- temporary */ + Vector_d* dyy ; + Vector_d* dzz ; + + /* Node-centered */ + + Vector_d x ; /* coordinates */ + Vector_d y ; + Vector_d z ; + + Vector_d xd ; /* velocities */ + Vector_d yd ; + Vector_d zd ; + + + Vector_d xdd ; /* accelerations */ + Vector_d ydd ; + Vector_d zdd ; + + Vector_d fx ; /* forces */ + Vector_d fy ; + Vector_d fz ; + + Vector_d nodalMass ; /* mass */ + Vector_h h_nodalMass ; /* mass - host */ + + /* device pointers for comms */ + Real_t *d_delv_xi ; /* velocity gradient -- temporary */ + Real_t *d_delv_eta ; + Real_t *d_delv_zeta ; + + Real_t *d_x ; /* coordinates */ + Real_t *d_y ; + Real_t *d_z ; + + Real_t *d_xd ; /* velocities */ + Real_t *d_yd ; + Real_t *d_zd ; + + Real_t *d_fx ; /* forces */ + Real_t *d_fy ; + Real_t *d_fz ; + + /* access elements for comms */ + Real_t& get_delv_xi(Index_t idx) { return d_delv_xi[idx] ; } + Real_t& get_delv_eta(Index_t idx) { return d_delv_eta[idx] ; } + Real_t& get_delv_zeta(Index_t idx) { return d_delv_zeta[idx] ; } + + Real_t& get_x(Index_t idx) { return d_x[idx] ; } + Real_t& get_y(Index_t idx) { return d_y[idx] ; } + Real_t& get_z(Index_t idx) { return d_z[idx] ; } + + Real_t& get_xd(Index_t idx) { return d_xd[idx] ; } + Real_t& get_yd(Index_t idx) { return d_yd[idx] ; } + Real_t& get_zd(Index_t idx) { return d_zd[idx] ; } + + Real_t& get_fx(Index_t idx) { return d_fx[idx] ; } + Real_t& get_fy(Index_t idx) { return d_fy[idx] ; } + Real_t& get_fz(Index_t idx) { return d_fz[idx] ; } + + // host access + Real_t& get_nodalMass(Index_t idx) { return h_nodalMass[idx] ; } + + /* Boundary nodesets */ + + Vector_d symmX ; /* symmetry plane nodesets */ + Vector_d symmY ; + Vector_d symmZ ; + + Vector_d nodeElemCount ; + Vector_d nodeElemStart; + Vector_d nodeElemCornerList ; + + /* Parameters */ + + Real_t dtfixed ; /* fixed time increment */ + Real_t deltatimemultlb ; + Real_t deltatimemultub ; + Real_t stoptime ; /* end time for simulation */ + Real_t dtmax ; /* maximum allowable time increment */ + Int_t cycle ; /* iteration count for simulation */ + + Real_t* dthydro_h; /* hydro time constraint */ + Real_t* dtcourant_h; /* courant time constraint */ + Index_t* bad_q_h; /* flag to indicate Q error */ + Index_t* bad_vol_h; /* flag to indicate volume error */ + + /* cuda Events to indicate completion of certain kernels */ + cudaEvent_t time_constraint_computed; + + Real_t time_h ; /* current time */ + Real_t deltatime_h ; /* variable time increment */ + + Real_t u_cut ; /* velocity tolerance */ + Real_t hgcoef ; /* hourglass control */ + Real_t qstop ; /* excessive q indicator */ + Real_t monoq_max_slope ; + Real_t monoq_limiter_mult ; + Real_t e_cut ; /* energy tolerance */ + Real_t p_cut ; /* pressure tolerance */ + Real_t ss4o3 ; + Real_t q_cut ; /* q tolerance */ + Real_t v_cut ; /* relative volume tolerance */ + Real_t qlc_monoq ; /* linear term coef for q */ + Real_t qqc_monoq ; /* quadratic term coef for q */ + Real_t qqc ; + Real_t eosvmax ; + Real_t eosvmin ; + Real_t pmin ; /* pressure floor */ + Real_t emin ; /* energy floor */ + Real_t dvovmax ; /* maximum allowable volume change */ + Real_t refdens ; /* reference density */ + + Index_t m_colLoc ; + Index_t m_rowLoc ; + Index_t m_planeLoc ; + Index_t m_tp ; + + Index_t& colLoc() { return m_colLoc ; } + Index_t& rowLoc() { return m_rowLoc ; } + Index_t& planeLoc() { return m_planeLoc ; } + Index_t& tp() { return m_tp ; } + + Index_t sizeX ; + Index_t sizeY ; + Index_t sizeZ ; + Index_t maxPlaneSize ; + Index_t maxEdgeSize ; + + Index_t numElem ; + Index_t padded_numElem ; + + Index_t numNode; + Index_t padded_numNode ; + + Index_t numSymmX ; + Index_t numSymmY ; + Index_t numSymmZ ; + + Index_t octantCorner; + + // Region information + Int_t numReg ; //number of regions (def:11) + Int_t balance; //Load balance between regions of a domain (def: 1) + Int_t cost; //imbalance cost (def: 1) + Int_t* regElemSize ; // Size of region sets + Vector_d regCSR; // records the begining and end of each region + Vector_d regReps; // records the rep number per region + Vector_d regNumList; // Region number per domain element + Vector_d regElemlist; // region indexset + Vector_d regSorted; // keeps index of sorted regions + + // + // MPI-Related additional data + // + + Index_t m_numRanks; + Index_t& numRanks() { return m_numRanks ; } + + void SetupCommBuffers(Int_t edgeNodes); + void BuildMesh(Int_t nx, Int_t edgeNodes, Int_t edgeElems, Int_t domNodes, Int_t padded_domElems, Vector_h &x_h, Vector_h &y_h, Vector_h &z_h, Vector_h &nodelist_h); + + // Used in setup + Index_t m_rowMin, m_rowMax; + Index_t m_colMin, m_colMax; + Index_t m_planeMin, m_planeMax ; + +#if USE_MPI + // Communication Work space + Real_t *commDataSend ; + Real_t *commDataRecv ; + + Real_t *d_commDataSend ; + Real_t *d_commDataRecv ; + + // Maximum number of block neighbors + MPI_Request recvRequest[26] ; // 6 faces + 12 edges + 8 corners + MPI_Request sendRequest[26] ; // 6 faces + 12 edges + 8 corners +#endif + +}; + +typedef Real_t& (Domain::* Domain_member )(Index_t) ; + +// Assume 128 byte coherence +// Assume Real_t is an "integral power of 2" bytes wide +#define CACHE_COHERENCE_PAD_REAL (128 / sizeof(Real_t)) + +#define CACHE_ALIGN_REAL(n) \ + (((n) + (CACHE_COHERENCE_PAD_REAL - 1)) & ~(CACHE_COHERENCE_PAD_REAL-1)) + +// MPI Message Tags +#define MSG_COMM_SBN 1024 +#define MSG_SYNC_POS_VEL 2048 +#define MSG_MONOQ 3072 + +#define MAX_FIELDS_PER_MPI_COMM 6 + +// cpu-comms +void CommRecv(Domain& domain, Int_t msgType, Index_t xferFields, + Index_t dx, Index_t dy, Index_t dz, + bool doRecv, bool planeOnly); +void CommSend(Domain& domain, Int_t msgType, + Index_t xferFields, Domain_member *fieldData, + Index_t dx, Index_t dy, Index_t dz, + bool doSend, bool planeOnly); +void CommSBN(Domain& domain, Int_t xferFields, Domain_member *fieldData); +void CommSyncPosVel(Domain& domain); +void CommMonoQ(Domain& domain); + +// gpu-comms +void CommSendGpu(Domain& domain, Int_t msgType, + Index_t xferFields, Domain_member *fieldData, + Index_t dx, Index_t dy, Index_t dz, + bool doSend, bool planeOnly, cudaStream_t stream); +void CommSBNGpu(Domain& domain, Int_t xferFields, Domain_member *fieldData, cudaStream_t *streams); +void CommSyncPosVelGpu(Domain& domain, cudaStream_t *streams); +void CommMonoQGpu(Domain& domain, cudaStream_t stream); diff --git a/benchmarks/cuda/LULESH/sedov15oct.lmesh b/benchmarks/cuda/LULESH/sedov15oct.lmesh new file mode 100755 index 0000000..8e7e2dd --- /dev/null +++ b/benchmarks/cuda/LULESH/sedov15oct.lmesh @@ -0,0 +1,3410 @@ +875 1126 +0.000000 0.000000 0.000000 +0.000000 0.000000 0.080000 +0.075314 0.000000 0.075314 +0.071149 0.071149 0.071149 +0.000000 0.075314 0.075314 +0.080000 0.000000 0.000000 +0.075314 0.075314 0.000000 +0.000000 0.080000 0.000000 +0.000000 0.000000 0.160000 +0.070627 0.000000 0.150627 +0.066985 0.066985 0.142299 +0.000000 0.070627 0.150627 +0.141255 0.000000 0.141255 +0.133970 0.063343 0.133970 +0.126686 0.126686 0.126686 +0.063343 0.133970 0.133970 +0.000000 0.141255 0.141255 +0.150627 0.000000 0.070627 +0.142299 0.066985 0.066985 +0.133970 0.133970 0.063343 +0.066985 0.142299 0.066985 +0.000000 0.150627 0.070627 +0.160000 0.000000 0.000000 +0.150627 0.070627 0.000000 +0.141255 0.141255 0.000000 +0.070627 0.150627 0.000000 +0.000000 0.160000 0.000000 +0.000000 0.000000 0.240000 +0.065941 0.000000 0.225941 +0.062821 0.062821 0.213448 +0.000000 0.065941 0.225941 +0.131882 0.000000 0.211882 +0.125642 0.059701 0.200956 +0.119402 0.119402 0.190029 +0.059701 0.125642 0.200956 +0.000000 0.131882 0.211882 +0.197823 0.000000 0.197823 +0.188463 0.056581 0.188463 +0.179102 0.113161 0.179102 +0.169742 0.169742 0.169742 +0.113161 0.179102 0.179102 +0.056581 0.188463 0.188463 +0.000000 0.197823 0.197823 +0.211882 0.000000 0.131882 +0.200956 0.059701 0.125642 +0.190029 0.119402 0.119402 +0.179102 0.179102 0.113161 +0.119402 0.190029 0.119402 +0.059701 0.200956 0.125642 +0.000000 0.211882 0.131882 +0.225941 0.000000 0.065941 +0.213448 0.062821 0.062821 +0.200956 0.125642 0.059701 +0.188463 0.188463 0.056581 +0.125642 0.200956 0.059701 +0.062821 0.213448 0.062821 +0.000000 0.225941 0.065941 +0.240000 0.000000 0.000000 +0.225941 0.065941 0.000000 +0.211882 0.131882 0.000000 +0.197823 0.197823 0.000000 +0.131882 0.211882 0.000000 +0.065941 0.225941 0.000000 +0.000000 0.240000 0.000000 +0.000000 0.000000 0.320000 +0.061255 0.000000 0.301255 +0.058657 0.058657 0.284598 +0.000000 0.061255 0.301255 +0.122510 0.000000 0.282510 +0.117313 0.056059 0.267941 +0.112117 0.112117 0.253372 +0.056059 0.117313 0.267941 +0.000000 0.122510 0.282510 +0.183765 0.000000 0.263765 +0.175970 0.053460 0.251284 +0.168176 0.106921 0.238803 +0.160381 0.160381 0.226322 +0.106921 0.168176 0.238803 +0.053460 0.175970 0.251284 +0.000000 0.183765 0.263765 +0.245019 0.000000 0.245019 +0.234627 0.050862 0.234627 +0.224234 0.101725 0.224234 +0.213842 0.152587 0.213842 +0.203449 0.203449 0.203449 +0.152587 0.213842 0.213842 +0.101725 0.224234 0.224234 +0.050862 0.234627 0.234627 +0.000000 0.245019 0.245019 +0.263765 0.000000 0.183765 +0.251284 0.053460 0.175970 +0.238803 0.106921 0.168176 +0.226322 0.160381 0.160381 +0.213842 0.213842 0.152587 +0.160381 0.226322 0.160381 +0.106921 0.238803 0.168176 +0.053460 0.251284 0.175970 +0.000000 0.263765 0.183765 +0.282510 0.000000 0.122510 +0.267941 0.056059 0.117313 +0.253372 0.112117 0.112117 +0.238803 0.168176 0.106921 +0.224234 0.224234 0.101725 +0.168176 0.238803 0.106921 +0.112117 0.253372 0.112117 +0.056059 0.267941 0.117313 +0.000000 0.282510 0.122510 +0.301255 0.000000 0.061255 +0.284598 0.058657 0.058657 +0.267941 0.117313 0.056059 +0.251284 0.175970 0.053460 +0.234627 0.234627 0.050862 +0.175970 0.251284 0.053460 +0.117313 0.267941 0.056059 +0.058657 0.284598 0.058657 +0.000000 0.301255 0.061255 +0.320000 0.000000 0.000000 +0.301255 0.061255 0.000000 +0.282510 0.122510 0.000000 +0.263765 0.183765 0.000000 +0.245019 0.245019 0.000000 +0.183765 0.263765 0.000000 +0.122510 0.282510 0.000000 +0.061255 0.301255 0.000000 +0.000000 0.320000 0.000000 +0.000000 0.000000 0.400000 +0.056569 0.000000 0.376569 +0.054492 0.054492 0.355747 +0.000000 0.056569 0.376569 +0.113137 0.000000 0.353137 +0.108985 0.052416 0.334926 +0.104833 0.104833 0.316715 +0.052416 0.108985 0.334926 +0.000000 0.113137 0.353137 +0.169706 0.000000 0.329706 +0.163477 0.050340 0.314105 +0.157249 0.100680 0.298504 +0.151021 0.151021 0.282903 +0.100680 0.157249 0.298504 +0.050340 0.163477 0.314105 +0.000000 0.169706 0.329706 +0.226274 0.000000 0.306274 +0.217970 0.048264 0.293283 +0.209665 0.096528 0.280293 +0.201361 0.144792 0.267302 +0.193057 0.193057 0.254311 +0.144792 0.201361 0.267302 +0.096528 0.209665 0.280293 +0.048264 0.217970 0.293283 +0.000000 0.226274 0.306274 +0.282843 0.000000 0.282843 +0.272462 0.046188 0.272462 +0.262082 0.092376 0.262082 +0.251701 0.138564 0.251701 +0.241321 0.184752 0.241321 +0.230940 0.230940 0.230940 +0.184752 0.241321 0.241321 +0.138564 0.251701 0.251701 +0.092376 0.262082 0.262082 +0.046188 0.272462 0.272462 +0.000000 0.282843 0.282843 +0.306274 0.000000 0.226274 +0.293283 0.048264 0.217970 +0.280293 0.096528 0.209665 +0.267302 0.144792 0.201361 +0.254311 0.193057 0.193057 +0.241321 0.241321 0.184752 +0.193057 0.254311 0.193057 +0.144792 0.267302 0.201361 +0.096528 0.280293 0.209665 +0.048264 0.293283 0.217970 +0.000000 0.306274 0.226274 +0.329706 0.000000 0.169706 +0.314105 0.050340 0.163477 +0.298504 0.100680 0.157249 +0.282903 0.151021 0.151021 +0.267302 0.201361 0.144792 +0.251701 0.251701 0.138564 +0.201361 0.267302 0.144792 +0.151021 0.282903 0.151021 +0.100680 0.298504 0.157249 +0.050340 0.314105 0.163477 +0.000000 0.329706 0.169706 +0.353137 0.000000 0.113137 +0.334926 0.052416 0.108985 +0.316715 0.104833 0.104833 +0.298504 0.157249 0.100680 +0.280293 0.209665 0.096528 +0.262082 0.262082 0.092376 +0.209665 0.280293 0.096528 +0.157249 0.298504 0.100680 +0.104833 0.316715 0.104833 +0.052416 0.334926 0.108985 +0.000000 0.353137 0.113137 +0.376569 0.000000 0.056569 +0.355747 0.054492 0.054492 +0.334926 0.108985 0.052416 +0.314105 0.163477 0.050340 +0.293283 0.217970 0.048264 +0.272462 0.272462 0.046188 +0.217970 0.293283 0.048264 +0.163477 0.314105 0.050340 +0.108985 0.334926 0.052416 +0.054492 0.355747 0.054492 +0.000000 0.376569 0.056569 +0.400000 0.000000 0.000000 +0.376569 0.056569 0.000000 +0.353137 0.113137 0.000000 +0.329706 0.169706 0.000000 +0.306274 0.226274 0.000000 +0.282843 0.282843 0.000000 +0.226274 0.306274 0.000000 +0.169706 0.329706 0.000000 +0.113137 0.353137 0.000000 +0.056569 0.376569 0.000000 +0.000000 0.400000 0.000000 +0.000000 0.000000 0.485000 +0.070466 0.000000 0.462373 +0.068363 0.068363 0.442150 +0.000000 0.070466 0.462373 +0.140451 0.000000 0.436705 +0.136283 0.065794 0.418989 +0.131255 0.131255 0.398626 +0.065794 0.136283 0.418989 +0.000000 0.140451 0.436705 +0.209484 0.000000 0.408111 +0.203322 0.062773 0.392977 +0.196035 0.125373 0.375636 +0.187592 0.187592 0.356027 +0.125373 0.196035 0.375636 +0.062773 0.203322 0.392977 +0.000000 0.209484 0.408111 +0.277120 0.000000 0.376774 +0.269050 0.059325 0.364262 +0.259758 0.118654 0.350068 +0.249153 0.177951 0.334067 +0.237092 0.237092 0.316062 +0.177951 0.249153 0.334067 +0.118654 0.259758 0.350068 +0.059325 0.269050 0.364262 +0.000000 0.277120 0.376774 +0.342947 0.000000 0.342947 +0.333055 0.055482 0.333055 +0.322017 0.111128 0.322017 +0.309687 0.167078 0.309687 +0.295809 0.223398 0.295809 +0.280015 0.280015 0.280015 +0.223398 0.295809 0.295809 +0.167078 0.309687 0.309687 +0.111128 0.322017 0.322017 +0.055482 0.333055 0.333055 +0.000000 0.342947 0.342947 +0.376774 0.000000 0.277120 +0.364262 0.059325 0.269050 +0.350068 0.118654 0.259758 +0.334067 0.177951 0.249153 +0.316062 0.237092 0.237092 +0.295809 0.295809 0.223398 +0.237092 0.316062 0.237092 +0.177951 0.334067 0.249153 +0.118654 0.350068 0.259758 +0.059325 0.364262 0.269050 +0.000000 0.376774 0.277120 +0.408111 0.000000 0.209484 +0.392977 0.062773 0.203322 +0.375636 0.125373 0.196035 +0.356027 0.187592 0.187592 +0.334067 0.249153 0.177951 +0.309687 0.309687 0.167078 +0.249153 0.334067 0.177951 +0.187592 0.356027 0.187592 +0.125373 0.375636 0.196035 +0.062773 0.392977 0.203322 +0.000000 0.408111 0.209484 +0.436705 0.000000 0.140451 +0.418989 0.065794 0.136283 +0.398626 0.131255 0.131255 +0.375636 0.196035 0.125373 +0.350068 0.259758 0.118654 +0.322017 0.322017 0.111128 +0.259758 0.350068 0.118654 +0.196035 0.375636 0.125373 +0.131255 0.398626 0.131255 +0.065794 0.418989 0.136283 +0.000000 0.436705 0.140451 +0.462373 0.000000 0.070466 +0.442150 0.068363 0.068363 +0.418989 0.136283 0.065794 +0.392977 0.203322 0.062773 +0.364262 0.269050 0.059325 +0.333055 0.333055 0.055482 +0.269050 0.364262 0.059325 +0.203322 0.392977 0.062773 +0.136283 0.418989 0.065794 +0.068363 0.442150 0.068363 +0.000000 0.462373 0.070466 +0.485000 0.000000 0.000000 +0.462373 0.070466 0.000000 +0.436705 0.140451 0.000000 +0.408111 0.209484 0.000000 +0.376774 0.277120 0.000000 +0.342947 0.342947 0.000000 +0.277120 0.376774 0.000000 +0.209484 0.408111 0.000000 +0.140451 0.436705 0.000000 +0.070466 0.462373 0.000000 +0.000000 0.485000 0.000000 +0.000000 0.000000 0.570000 +0.084363 0.000000 0.548177 +0.082233 0.082233 0.528553 +0.000000 0.084363 0.548177 +0.167764 0.000000 0.520274 +0.163580 0.079171 0.503053 +0.157677 0.157677 0.480537 +0.079171 0.163580 0.503053 +0.000000 0.167764 0.520274 +0.249262 0.000000 0.486516 +0.243166 0.075206 0.471850 +0.234820 0.150066 0.452769 +0.224163 0.224163 0.429150 +0.150066 0.234820 0.452769 +0.075206 0.243166 0.471850 +0.000000 0.249262 0.486516 +0.327966 0.000000 0.447274 +0.320130 0.070385 0.435241 +0.309851 0.140780 0.419843 +0.296945 0.211110 0.400832 +0.281128 0.281128 0.377813 +0.211110 0.296945 0.400832 +0.140780 0.309851 0.419843 +0.070385 0.320130 0.435241 +0.000000 0.327966 0.447274 +0.403051 0.000000 0.403051 +0.393648 0.064775 0.393648 +0.381953 0.129881 0.381953 +0.367673 0.195591 0.367673 +0.350297 0.262043 0.350297 +0.329090 0.329090 0.329090 +0.262043 0.350297 0.350297 +0.195591 0.367673 0.367673 +0.129881 0.381953 0.381953 +0.064775 0.393648 0.393648 +0.000000 0.403051 0.403051 +0.447274 0.000000 0.327966 +0.435241 0.070385 0.320130 +0.419843 0.140780 0.309851 +0.400832 0.211110 0.296945 +0.377813 0.281128 0.281128 +0.350297 0.350297 0.262043 +0.281128 0.377813 0.281128 +0.211110 0.400832 0.296945 +0.140780 0.419843 0.309851 +0.070385 0.435241 0.320130 +0.000000 0.447274 0.327966 +0.486516 0.000000 0.249262 +0.471850 0.075206 0.243166 +0.452769 0.150066 0.234820 +0.429150 0.224163 0.224163 +0.400832 0.296945 0.211110 +0.367673 0.367673 0.195591 +0.296945 0.400832 0.211110 +0.224163 0.429150 0.224163 +0.150066 0.452769 0.234820 +0.075206 0.471850 0.243166 +0.000000 0.486516 0.249262 +0.520274 0.000000 0.167764 +0.503053 0.079171 0.163580 +0.480537 0.157677 0.157677 +0.452769 0.234820 0.150066 +0.419843 0.309851 0.140780 +0.381953 0.381953 0.129881 +0.309851 0.419843 0.140780 +0.234820 0.452769 0.150066 +0.157677 0.480537 0.157677 +0.079171 0.503053 0.163580 +0.000000 0.520274 0.167764 +0.548177 0.000000 0.084363 +0.528553 0.082233 0.082233 +0.503053 0.163580 0.079171 +0.471850 0.243166 0.075206 +0.435241 0.320130 0.070385 +0.393648 0.393648 0.064775 +0.320130 0.435241 0.070385 +0.243166 0.471850 0.075206 +0.163580 0.503053 0.079171 +0.082233 0.528553 0.082233 +0.000000 0.548177 0.084363 +0.570000 0.000000 0.000000 +0.548177 0.084363 0.000000 +0.520274 0.167764 0.000000 +0.486516 0.249262 0.000000 +0.447274 0.327966 0.000000 +0.403051 0.403051 0.000000 +0.327966 0.447274 0.000000 +0.249262 0.486516 0.000000 +0.167764 0.520274 0.000000 +0.084363 0.548177 0.000000 +0.000000 0.570000 0.000000 +0.000000 0.000000 0.655000 +0.098261 0.000000 0.633981 +0.096103 0.096103 0.614956 +0.000000 0.098261 0.633981 +0.195077 0.000000 0.603842 +0.190878 0.092548 0.587116 +0.184099 0.184099 0.562448 +0.092548 0.190878 0.587116 +0.000000 0.195077 0.603842 +0.289040 0.000000 0.564921 +0.283010 0.087640 0.550723 +0.273606 0.174759 0.529901 +0.260734 0.260734 0.502274 +0.174759 0.273606 0.529901 +0.087640 0.283010 0.550723 +0.000000 0.289040 0.564921 +0.378811 0.000000 0.517773 +0.371211 0.081446 0.506219 +0.359943 0.162906 0.489618 +0.344737 0.244269 0.467597 +0.325164 0.325164 0.439564 +0.244269 0.344737 0.467597 +0.162906 0.359943 0.489618 +0.081446 0.371211 0.506219 +0.000000 0.378811 0.517773 +0.463155 0.000000 0.463155 +0.454241 0.074069 0.454241 +0.441889 0.148633 0.441889 +0.425658 0.224105 0.425658 +0.404785 0.300689 0.404785 +0.378164 0.378164 0.378164 +0.300689 0.404785 0.404785 +0.224105 0.425658 0.425658 +0.148633 0.441889 0.441889 +0.074069 0.454241 0.454241 +0.000000 0.463155 0.463155 +0.517773 0.000000 0.378811 +0.506219 0.081446 0.371211 +0.489618 0.162906 0.359943 +0.467597 0.244269 0.344737 +0.439564 0.325164 0.325164 +0.404785 0.404785 0.300689 +0.325164 0.439564 0.325164 +0.244269 0.467597 0.344737 +0.162906 0.489618 0.359943 +0.081446 0.506219 0.371211 +0.000000 0.517773 0.378811 +0.564921 0.000000 0.289040 +0.550723 0.087640 0.283010 +0.529901 0.174759 0.273606 +0.502274 0.260734 0.260734 +0.467597 0.344737 0.244269 +0.425658 0.425658 0.224105 +0.344737 0.467597 0.244269 +0.260734 0.502274 0.260734 +0.174759 0.529901 0.273606 +0.087640 0.550723 0.283010 +0.000000 0.564921 0.289040 +0.603842 0.000000 0.195077 +0.587116 0.092548 0.190878 +0.562448 0.184099 0.184099 +0.529901 0.273606 0.174759 +0.489618 0.359943 0.162906 +0.441889 0.441889 0.148633 +0.359943 0.489618 0.162906 +0.273606 0.529901 0.174759 +0.184099 0.562448 0.184099 +0.092548 0.587116 0.190878 +0.000000 0.603842 0.195077 +0.633981 0.000000 0.098261 +0.614956 0.096103 0.096103 +0.587116 0.190878 0.092548 +0.550723 0.283010 0.087640 +0.506219 0.371211 0.081446 +0.454241 0.454241 0.074069 +0.371211 0.506219 0.081446 +0.283010 0.550723 0.087640 +0.190878 0.587116 0.092548 +0.096103 0.614956 0.096103 +0.000000 0.633981 0.098261 +0.655000 0.000000 0.000000 +0.633981 0.098261 0.000000 +0.603842 0.195077 0.000000 +0.564921 0.289040 0.000000 +0.517773 0.378811 0.000000 +0.463155 0.463155 0.000000 +0.378811 0.517773 0.000000 +0.289040 0.564921 0.000000 +0.195077 0.603842 0.000000 +0.098261 0.633981 0.000000 +0.000000 0.655000 0.000000 +0.000000 0.000000 0.740000 +0.112158 0.000000 0.719785 +0.109973 0.109973 0.701359 +0.000000 0.112158 0.719785 +0.222391 0.000000 0.687411 +0.218176 0.105926 0.671179 +0.210521 0.210521 0.644359 +0.105926 0.218176 0.671179 +0.000000 0.222391 0.687411 +0.328819 0.000000 0.643327 +0.322855 0.100073 0.629595 +0.312391 0.199451 0.607033 +0.297304 0.297304 0.575398 +0.199451 0.312391 0.607033 +0.100073 0.322855 0.629595 +0.000000 0.328819 0.643327 +0.429657 0.000000 0.588273 +0.422291 0.092507 0.577198 +0.410036 0.185031 0.559394 +0.392530 0.277428 0.534362 +0.369200 0.369200 0.501315 +0.277428 0.392530 0.534362 +0.185031 0.410036 0.559394 +0.092507 0.422291 0.577198 +0.000000 0.429657 0.588273 +0.523259 0.000000 0.523259 +0.514834 0.083362 0.514834 +0.501825 0.167385 0.501825 +0.483644 0.252618 0.483644 +0.459272 0.339334 0.459272 +0.427239 0.427239 0.427239 +0.339334 0.459272 0.459272 +0.252618 0.483644 0.483644 +0.167385 0.501825 0.501825 +0.083362 0.514834 0.514834 +0.000000 0.523259 0.523259 +0.588273 0.000000 0.429657 +0.577198 0.092507 0.422291 +0.559394 0.185031 0.410036 +0.534362 0.277428 0.392530 +0.501315 0.369200 0.369200 +0.459272 0.459272 0.339334 +0.369200 0.501315 0.369200 +0.277428 0.534362 0.392530 +0.185031 0.559394 0.410036 +0.092507 0.577198 0.422291 +0.000000 0.588273 0.429657 +0.643327 0.000000 0.328819 +0.629595 0.100073 0.322855 +0.607033 0.199451 0.312391 +0.575398 0.297304 0.297304 +0.534362 0.392530 0.277428 +0.483644 0.483644 0.252618 +0.392530 0.534362 0.277428 +0.297304 0.575398 0.297304 +0.199451 0.607033 0.312391 +0.100073 0.629595 0.322855 +0.000000 0.643327 0.328819 +0.687411 0.000000 0.222391 +0.671179 0.105926 0.218176 +0.644359 0.210521 0.210521 +0.607033 0.312391 0.199451 +0.559394 0.410036 0.185031 +0.501825 0.501825 0.167385 +0.410036 0.559394 0.185031 +0.312391 0.607033 0.199451 +0.210521 0.644359 0.210521 +0.105926 0.671179 0.218176 +0.000000 0.687411 0.222391 +0.719785 0.000000 0.112158 +0.701359 0.109973 0.109973 +0.671179 0.218176 0.105926 +0.629595 0.322855 0.100073 +0.577198 0.422291 0.092507 +0.514834 0.514834 0.083362 +0.422291 0.577198 0.092507 +0.322855 0.629595 0.100073 +0.218176 0.671179 0.105926 +0.109973 0.701359 0.109973 +0.000000 0.719785 0.112158 +0.740000 0.000000 0.000000 +0.719785 0.112158 0.000000 +0.687411 0.222391 0.000000 +0.643327 0.328819 0.000000 +0.588273 0.429657 0.000000 +0.523259 0.523259 0.000000 +0.429657 0.588273 0.000000 +0.328819 0.643327 0.000000 +0.222391 0.687411 0.000000 +0.112158 0.719785 0.000000 +0.000000 0.740000 0.000000 +0.000000 0.000000 0.825000 +0.126056 0.000000 0.805589 +0.123843 0.123843 0.787761 +0.000000 0.126056 0.805589 +0.249704 0.000000 0.770979 +0.245474 0.119303 0.755242 +0.236942 0.236942 0.726270 +0.119303 0.245474 0.755242 +0.000000 0.249704 0.770979 +0.368597 0.000000 0.721732 +0.362699 0.112506 0.708468 +0.351177 0.224144 0.684166 +0.333875 0.333875 0.648521 +0.224144 0.351177 0.684166 +0.112506 0.362699 0.708468 +0.000000 0.368597 0.721732 +0.480503 0.000000 0.658773 +0.473371 0.103567 0.648177 +0.460128 0.207157 0.629169 +0.440322 0.310587 0.601127 +0.413236 0.413236 0.563066 +0.310587 0.440322 0.601127 +0.207157 0.460128 0.629169 +0.103567 0.473371 0.648177 +0.000000 0.480503 0.658773 +0.583363 0.000000 0.583363 +0.575427 0.092656 0.575427 +0.561761 0.186137 0.561761 +0.541630 0.281132 0.541630 +0.513760 0.377980 0.513760 +0.476314 0.476314 0.476314 +0.377980 0.513760 0.513760 +0.281132 0.541630 0.541630 +0.186137 0.561761 0.561761 +0.092656 0.575427 0.575427 +0.000000 0.583363 0.583363 +0.658773 0.000000 0.480503 +0.648177 0.103567 0.473371 +0.629169 0.207157 0.460128 +0.601127 0.310587 0.440322 +0.563066 0.413236 0.413236 +0.513760 0.513760 0.377980 +0.413236 0.563066 0.413236 +0.310587 0.601127 0.440322 +0.207157 0.629169 0.460128 +0.103567 0.648177 0.473371 +0.000000 0.658773 0.480503 +0.721732 0.000000 0.368597 +0.708468 0.112506 0.362699 +0.684166 0.224144 0.351177 +0.648521 0.333875 0.333875 +0.601127 0.440322 0.310587 +0.541630 0.541630 0.281132 +0.440322 0.601127 0.310587 +0.333875 0.648521 0.333875 +0.224144 0.684166 0.351177 +0.112506 0.708468 0.362699 +0.000000 0.721732 0.368597 +0.770979 0.000000 0.249704 +0.755242 0.119303 0.245474 +0.726270 0.236942 0.236942 +0.684166 0.351177 0.224144 +0.629169 0.460128 0.207157 +0.561761 0.561761 0.186137 +0.460128 0.629169 0.207157 +0.351177 0.684166 0.224144 +0.236942 0.726270 0.236942 +0.119303 0.755242 0.245474 +0.000000 0.770979 0.249704 +0.805589 0.000000 0.126056 +0.787761 0.123843 0.123843 +0.755242 0.245474 0.119303 +0.708468 0.362699 0.112506 +0.648177 0.473371 0.103567 +0.575427 0.575427 0.092656 +0.473371 0.648177 0.103567 +0.362699 0.708468 0.112506 +0.245474 0.755242 0.119303 +0.123843 0.787761 0.123843 +0.000000 0.805589 0.126056 +0.825000 0.000000 0.000000 +0.805589 0.126056 0.000000 +0.770979 0.249704 0.000000 +0.721732 0.368597 0.000000 +0.658773 0.480503 0.000000 +0.583363 0.583363 0.000000 +0.480503 0.658773 0.000000 +0.368597 0.721732 0.000000 +0.249704 0.770979 0.000000 +0.126056 0.805589 0.000000 +0.000000 0.825000 0.000000 +0.000000 0.000000 0.910000 +0.139953 0.000000 0.891394 +0.137713 0.137713 0.874164 +0.000000 0.139953 0.891394 +0.277018 0.000000 0.854547 +0.272771 0.132681 0.839306 +0.263364 0.263364 0.808182 +0.132681 0.272771 0.839306 +0.000000 0.277018 0.854547 +0.408375 0.000000 0.800137 +0.402543 0.124939 0.787340 +0.389962 0.248837 0.761298 +0.370446 0.370446 0.721645 +0.248837 0.389962 0.761298 +0.124939 0.402543 0.787340 +0.000000 0.408375 0.800137 +0.531349 0.000000 0.729272 +0.524452 0.114628 0.719155 +0.510221 0.229283 0.698944 +0.488114 0.343746 0.667892 +0.457271 0.457271 0.624817 +0.343746 0.488114 0.667892 +0.229283 0.510221 0.698944 +0.114628 0.524452 0.719155 +0.000000 0.531349 0.729272 +0.643467 0.000000 0.643467 +0.636020 0.101949 0.636020 +0.621696 0.204890 0.621696 +0.599615 0.309646 0.599615 +0.568248 0.416626 0.568248 +0.525389 0.525389 0.525389 +0.416626 0.568248 0.568248 +0.309646 0.599615 0.599615 +0.204890 0.621696 0.621696 +0.101949 0.636020 0.636020 +0.000000 0.643467 0.643467 +0.729272 0.000000 0.531349 +0.719155 0.114628 0.524452 +0.698944 0.229283 0.510221 +0.667892 0.343746 0.488114 +0.624817 0.457271 0.457271 +0.568248 0.568248 0.416626 +0.457271 0.624817 0.457271 +0.343746 0.667892 0.488114 +0.229283 0.698944 0.510221 +0.114628 0.719155 0.524452 +0.000000 0.729272 0.531349 +0.800137 0.000000 0.408375 +0.787340 0.124939 0.402543 +0.761298 0.248837 0.389962 +0.721645 0.370446 0.370446 +0.667892 0.488114 0.343746 +0.599615 0.599615 0.309646 +0.488114 0.667892 0.343746 +0.370446 0.721645 0.370446 +0.248837 0.761298 0.389962 +0.124939 0.787340 0.402543 +0.000000 0.800137 0.408375 +0.854547 0.000000 0.277018 +0.839306 0.132681 0.272771 +0.808182 0.263364 0.263364 +0.761298 0.389962 0.248837 +0.698944 0.510221 0.229283 +0.621696 0.621696 0.204890 +0.510221 0.698944 0.229283 +0.389962 0.761298 0.248837 +0.263364 0.808182 0.263364 +0.132681 0.839306 0.272771 +0.000000 0.854547 0.277018 +0.891394 0.000000 0.139953 +0.874164 0.137713 0.137713 +0.839306 0.272771 0.132681 +0.787340 0.402543 0.124939 +0.719155 0.524452 0.114628 +0.636020 0.636020 0.101949 +0.524452 0.719155 0.114628 +0.402543 0.787340 0.124939 +0.272771 0.839306 0.132681 +0.137713 0.874164 0.137713 +0.000000 0.891394 0.139953 +0.910000 0.000000 0.000000 +0.891394 0.139953 0.000000 +0.854547 0.277018 0.000000 +0.800137 0.408375 0.000000 +0.729272 0.531349 0.000000 +0.643467 0.643467 0.000000 +0.531349 0.729272 0.000000 +0.408375 0.800137 0.000000 +0.277018 0.854547 0.000000 +0.139953 0.891394 0.000000 +0.000000 0.910000 0.000000 +0.000000 0.000000 0.995000 +0.153851 0.000000 0.977198 +0.151583 0.151583 0.960567 +0.000000 0.153851 0.977198 +0.304331 0.000000 0.938116 +0.300069 0.146058 0.923369 +0.289786 0.289786 0.890093 +0.146058 0.300069 0.923369 +0.000000 0.304331 0.938116 +0.448153 0.000000 0.878542 +0.442387 0.137372 0.866213 +0.428748 0.273530 0.838430 +0.407017 0.407017 0.794769 +0.273530 0.428748 0.838430 +0.137372 0.442387 0.866213 +0.000000 0.448153 0.878542 +0.582194 0.000000 0.799772 +0.575532 0.125689 0.790134 +0.560314 0.251409 0.768719 +0.535906 0.376905 0.734657 +0.501307 0.501307 0.686568 +0.376905 0.535906 0.734657 +0.251409 0.560314 0.768719 +0.125689 0.575532 0.790134 +0.000000 0.582194 0.799772 +0.703571 0.000000 0.703571 +0.696613 0.111243 0.696613 +0.681632 0.223642 0.681632 +0.657601 0.338159 0.657601 +0.622736 0.455271 0.622736 +0.574464 0.574464 0.574464 +0.455271 0.622736 0.622736 +0.338159 0.657601 0.657601 +0.223642 0.681632 0.681632 +0.111243 0.696613 0.696613 +0.000000 0.703571 0.703571 +0.799772 0.000000 0.582194 +0.790134 0.125689 0.575532 +0.768719 0.251409 0.560314 +0.734657 0.376905 0.535906 +0.686568 0.501307 0.501307 +0.622736 0.622736 0.455271 +0.501307 0.686568 0.501307 +0.376905 0.734657 0.535906 +0.251409 0.768719 0.560314 +0.125689 0.790134 0.575532 +0.000000 0.799772 0.582194 +0.878542 0.000000 0.448153 +0.866213 0.137372 0.442387 +0.838430 0.273530 0.428748 +0.794769 0.407017 0.407017 +0.734657 0.535906 0.376905 +0.657601 0.657601 0.338159 +0.535906 0.734657 0.376905 +0.407017 0.794769 0.407017 +0.273530 0.838430 0.428748 +0.137372 0.866213 0.442387 +0.000000 0.878542 0.448153 +0.938116 0.000000 0.304331 +0.923369 0.146058 0.300069 +0.890093 0.289786 0.289786 +0.838430 0.428748 0.273530 +0.768719 0.560314 0.251409 +0.681632 0.681632 0.223642 +0.560314 0.768719 0.251409 +0.428748 0.838430 0.273530 +0.289786 0.890093 0.289786 +0.146058 0.923369 0.300069 +0.000000 0.938116 0.304331 +0.977198 0.000000 0.153851 +0.960567 0.151583 0.151583 +0.923369 0.300069 0.146058 +0.866213 0.442387 0.137372 +0.790134 0.575532 0.125689 +0.696613 0.696613 0.111243 +0.575532 0.790134 0.125689 +0.442387 0.866213 0.137372 +0.300069 0.923369 0.146058 +0.151583 0.960567 0.151583 +0.000000 0.977198 0.153851 +0.995000 0.000000 0.000000 +0.977198 0.153851 0.000000 +0.938116 0.304331 0.000000 +0.878542 0.448153 0.000000 +0.799772 0.582194 0.000000 +0.703571 0.703571 0.000000 +0.582194 0.799772 0.000000 +0.448153 0.878542 0.000000 +0.304331 0.938116 0.000000 +0.153851 0.977198 0.000000 +0.000000 0.995000 0.000000 +0.000000 0.000000 1.080000 +0.167748 0.000000 1.063002 +0.165453 0.165453 1.046970 +0.000000 0.167748 1.063002 +0.331644 0.000000 1.021684 +0.327367 0.159435 1.007432 +0.316208 0.316208 0.972004 +0.159435 0.327367 1.007432 +0.000000 0.331644 1.021684 +0.487932 0.000000 0.956948 +0.482232 0.149805 0.945086 +0.467533 0.298222 0.915563 +0.443588 0.443588 0.867893 +0.298222 0.467533 0.915563 +0.149805 0.482232 0.945086 +0.000000 0.487932 0.956948 +0.633040 0.000000 0.870272 +0.626612 0.136749 0.861113 +0.610406 0.273535 0.838495 +0.583698 0.410064 0.801422 +0.545343 0.545343 0.748319 +0.410064 0.583698 0.801422 +0.273535 0.610406 0.838495 +0.136749 0.626612 0.861113 +0.000000 0.633040 0.870272 +0.763675 0.000000 0.763675 +0.757206 0.120536 0.757206 +0.741568 0.242394 0.741568 +0.715587 0.366673 0.715587 +0.677224 0.493917 0.677224 +0.623538 0.623538 0.623538 +0.493917 0.677224 0.677224 +0.366673 0.715587 0.715587 +0.242394 0.741568 0.741568 +0.120536 0.757206 0.757206 +0.000000 0.763675 0.763675 +0.870272 0.000000 0.633040 +0.861113 0.136749 0.626612 +0.838495 0.273535 0.610406 +0.801422 0.410064 0.583698 +0.748319 0.545343 0.545343 +0.677224 0.677224 0.493917 +0.545343 0.748319 0.545343 +0.410064 0.801422 0.583698 +0.273535 0.838495 0.610406 +0.136749 0.861113 0.626612 +0.000000 0.870272 0.633040 +0.956948 0.000000 0.487932 +0.945086 0.149805 0.482232 +0.915563 0.298222 0.467533 +0.867893 0.443588 0.443588 +0.801422 0.583698 0.410064 +0.715587 0.715587 0.366673 +0.583698 0.801422 0.410064 +0.443588 0.867893 0.443588 +0.298222 0.915563 0.467533 +0.149805 0.945086 0.482232 +0.000000 0.956948 0.487932 +1.021684 0.000000 0.331644 +1.007432 0.159435 0.327367 +0.972004 0.316208 0.316208 +0.915563 0.467533 0.298222 +0.838495 0.610406 0.273535 +0.741568 0.741568 0.242394 +0.610406 0.838495 0.273535 +0.467533 0.915563 0.298222 +0.316208 0.972004 0.316208 +0.159435 1.007432 0.327367 +0.000000 1.021684 0.331644 +1.063002 0.000000 0.167748 +1.046970 0.165453 0.165453 +1.007432 0.327367 0.159435 +0.945086 0.482232 0.149805 +0.861113 0.626612 0.136749 +0.757206 0.757206 0.120536 +0.626612 0.861113 0.136749 +0.482232 0.945086 0.149805 +0.327367 1.007432 0.159435 +0.165453 1.046970 0.165453 +0.000000 1.063002 0.167748 +1.080000 0.000000 0.000000 +1.063002 0.167748 0.000000 +1.021684 0.331644 0.000000 +0.956948 0.487932 0.000000 +0.870272 0.633040 0.000000 +0.763675 0.763675 0.000000 +0.633040 0.870272 0.000000 +0.487932 0.956948 0.000000 +0.331644 1.021684 0.000000 +0.167748 1.063002 0.000000 +0.000000 1.080000 0.000000 +0.000000 0.000000 1.165000 +0.181646 0.000000 1.148806 +0.179323 0.179323 1.133373 +0.000000 0.181646 1.148806 +0.358958 0.000000 1.105252 +0.354664 0.172813 1.091495 +0.342630 0.342630 1.053915 +0.172813 0.354664 1.091495 +0.000000 0.358958 1.105252 +0.527710 0.000000 1.035353 +0.522076 0.162238 1.023958 +0.506319 0.322915 0.992695 +0.480159 0.480159 0.941016 +0.322915 0.506319 0.992695 +0.162238 0.522076 1.023958 +0.000000 0.527710 1.035353 +0.683886 0.000000 0.940772 +0.677693 0.147810 0.932092 +0.660499 0.295660 0.908270 +0.631490 0.443223 0.868187 +0.589379 0.589379 0.810070 +0.443223 0.631490 0.868187 +0.295660 0.660499 0.908270 +0.147810 0.677693 0.932092 +0.000000 0.683886 0.940772 +0.823779 0.000000 0.823779 +0.817799 0.129830 0.817799 +0.801504 0.261146 0.801504 +0.773573 0.395186 0.773573 +0.731712 0.532562 0.731712 +0.672613 0.672613 0.672613 +0.532562 0.731712 0.731712 +0.395186 0.773573 0.773573 +0.261146 0.801504 0.801504 +0.129830 0.817799 0.817799 +0.000000 0.823779 0.823779 +0.940772 0.000000 0.683886 +0.932092 0.147810 0.677693 +0.908270 0.295660 0.660499 +0.868187 0.443223 0.631490 +0.810070 0.589379 0.589379 +0.731712 0.731712 0.532562 +0.589379 0.810070 0.589379 +0.443223 0.868187 0.631490 +0.295660 0.908270 0.660499 +0.147810 0.932092 0.677693 +0.000000 0.940772 0.683886 +1.035353 0.000000 0.527710 +1.023958 0.162238 0.522076 +0.992695 0.322915 0.506319 +0.941016 0.480159 0.480159 +0.868187 0.631490 0.443223 +0.773573 0.773573 0.395186 +0.631490 0.868187 0.443223 +0.480159 0.941016 0.480159 +0.322915 0.992695 0.506319 +0.162238 1.023958 0.522076 +0.000000 1.035353 0.527710 +1.105252 0.000000 0.358958 +1.091495 0.172813 0.354664 +1.053915 0.342630 0.342630 +0.992695 0.506319 0.322915 +0.908270 0.660499 0.295660 +0.801504 0.801504 0.261146 +0.660499 0.908270 0.295660 +0.506319 0.992695 0.322915 +0.342630 1.053915 0.342630 +0.172813 1.091495 0.354664 +0.000000 1.105252 0.358958 +1.148806 0.000000 0.181646 +1.133373 0.179323 0.179323 +1.091495 0.354664 0.172813 +1.023958 0.522076 0.162238 +0.932092 0.677693 0.147810 +0.817799 0.817799 0.129830 +0.677693 0.932092 0.147810 +0.522076 1.023958 0.162238 +0.354664 1.091495 0.172813 +0.179323 1.133373 0.179323 +0.000000 1.148806 0.181646 +1.165000 0.000000 0.000000 +1.148806 0.181646 0.000000 +1.105252 0.358958 0.000000 +1.035353 0.527710 0.000000 +0.940772 0.683886 0.000000 +0.823779 0.823779 0.000000 +0.683886 0.940772 0.000000 +0.527710 1.035353 0.000000 +0.358958 1.105252 0.000000 +0.181646 1.148806 0.000000 +0.000000 1.165000 0.000000 +0.000000 0.000000 1.250000 +0.195543 0.000000 1.234610 +0.193193 0.193193 1.219776 +0.000000 0.195543 1.234610 +0.386271 0.000000 1.188821 +0.381962 0.186190 1.175559 +0.369052 0.369052 1.135826 +0.186190 0.381962 1.175559 +0.000000 0.386271 1.188821 +0.567488 0.000000 1.113758 +0.561920 0.174671 1.102831 +0.545104 0.347608 1.069827 +0.516730 0.516730 1.014140 +0.347608 0.545104 1.069827 +0.174671 0.561920 1.102831 +0.000000 0.567488 1.113758 +0.734732 0.000000 1.011271 +0.728773 0.158871 1.003070 +0.710591 0.317786 0.978045 +0.679283 0.476382 0.934952 +0.633415 0.633415 0.871821 +0.476382 0.679283 0.934952 +0.317786 0.710591 0.978045 +0.158871 0.728773 1.003070 +0.000000 0.734732 1.011271 +0.883883 0.000000 0.883883 +0.878392 0.139124 0.878392 +0.861440 0.279899 0.861440 +0.831558 0.423700 0.831558 +0.786200 0.571208 0.786200 +0.721688 0.721688 0.721688 +0.571208 0.786200 0.786200 +0.423700 0.831558 0.831558 +0.279899 0.861440 0.861440 +0.139124 0.878392 0.878392 +0.000000 0.883883 0.883883 +1.011271 0.000000 0.734732 +1.003070 0.158871 0.728773 +0.978045 0.317786 0.710591 +0.934952 0.476382 0.679283 +0.871821 0.633415 0.633415 +0.786200 0.786200 0.571208 +0.633415 0.871821 0.633415 +0.476382 0.934952 0.679283 +0.317786 0.978045 0.710591 +0.158871 1.003070 0.728773 +0.000000 1.011271 0.734732 +1.113758 0.000000 0.567488 +1.102831 0.174671 0.561920 +1.069827 0.347608 0.545104 +1.014140 0.516730 0.516730 +0.934952 0.679283 0.476382 +0.831558 0.831558 0.423700 +0.679283 0.934952 0.476382 +0.516730 1.014140 0.516730 +0.347608 1.069827 0.545104 +0.174671 1.102831 0.561920 +0.000000 1.113758 0.567488 +1.188821 0.000000 0.386271 +1.175559 0.186190 0.381962 +1.135826 0.369052 0.369052 +1.069827 0.545104 0.347608 +0.978045 0.710591 0.317786 +0.861440 0.861440 0.279899 +0.710591 0.978045 0.317786 +0.545104 1.069827 0.347608 +0.369052 1.135826 0.369052 +0.186190 1.175559 0.381962 +0.000000 1.188821 0.386271 +1.234610 0.000000 0.195543 +1.219776 0.193193 0.193193 +1.175559 0.381962 0.186190 +1.102831 0.561920 0.174671 +1.003070 0.728773 0.158871 +0.878392 0.878392 0.139124 +0.728773 1.003070 0.158871 +0.561920 1.102831 0.174671 +0.381962 1.175559 0.186190 +0.193193 1.219776 0.193193 +0.000000 1.234610 0.195543 +1.250000 0.000000 0.000000 +1.234610 0.195543 0.000000 +1.188821 0.386271 0.000000 +1.113758 0.567488 0.000000 +1.011271 0.734732 0.000000 +0.883883 0.883883 0.000000 +0.734732 1.011271 0.000000 +0.567488 1.113758 0.000000 +0.386271 1.188821 0.000000 +0.195543 1.234610 0.000000 +0.000000 1.250000 0.000000 +0 5 6 7 1 2 3 4 +1 2 3 4 8 9 10 11 +2 17 18 3 9 12 13 10 +3 18 19 20 10 13 14 15 +3 20 21 4 10 15 16 11 +2 5 6 3 17 22 23 18 +3 6 25 20 18 23 24 19 +3 6 7 4 20 25 26 21 +8 9 10 11 27 28 29 30 +9 12 13 10 28 31 32 29 +10 13 14 15 29 32 33 34 +10 15 16 11 29 34 35 30 +12 43 44 13 31 36 37 32 +13 44 45 14 32 37 38 33 +14 45 46 47 33 38 39 40 +14 47 48 15 33 40 41 34 +15 48 49 16 34 41 42 35 +12 17 18 13 43 50 51 44 +13 18 19 14 44 51 52 45 +14 19 54 47 45 52 53 46 +14 19 20 15 47 54 55 48 +15 20 21 16 48 55 56 49 +17 22 23 18 50 57 58 51 +18 23 24 19 51 58 59 52 +19 24 61 54 52 59 60 53 +19 24 25 20 54 61 62 55 +20 25 26 21 55 62 63 56 +27 28 29 30 64 65 66 67 +28 31 32 29 65 68 69 66 +29 32 33 34 66 69 70 71 +29 34 35 30 66 71 72 67 +31 36 37 32 68 73 74 69 +32 37 38 33 69 74 75 70 +33 38 39 40 70 75 76 77 +33 40 41 34 70 77 78 71 +34 41 42 35 71 78 79 72 +36 89 90 37 73 80 81 74 +37 90 91 38 74 81 82 75 +38 91 92 39 75 82 83 76 +39 92 93 94 76 83 84 85 +39 94 95 40 76 85 86 77 +40 95 96 41 77 86 87 78 +41 96 97 42 78 87 88 79 +36 43 44 37 89 98 99 90 +37 44 45 38 90 99 100 91 +38 45 46 39 91 100 101 92 +39 46 103 94 92 101 102 93 +39 46 47 40 94 103 104 95 +40 47 48 41 95 104 105 96 +41 48 49 42 96 105 106 97 +43 50 51 44 98 107 108 99 +44 51 52 45 99 108 109 100 +45 52 53 46 100 109 110 101 +46 53 112 103 101 110 111 102 +46 53 54 47 103 112 113 104 +47 54 55 48 104 113 114 105 +48 55 56 49 105 114 115 106 +50 57 58 51 107 116 117 108 +51 58 59 52 108 117 118 109 +52 59 60 53 109 118 119 110 +53 60 121 112 110 119 120 111 +53 60 61 54 112 121 122 113 +54 61 62 55 113 122 123 114 +55 62 63 56 114 123 124 115 +64 65 66 67 125 126 127 128 +65 68 69 66 126 129 130 127 +66 69 70 71 127 130 131 132 +66 71 72 67 127 132 133 128 +68 73 74 69 129 134 135 130 +69 74 75 70 130 135 136 131 +70 75 76 77 131 136 137 138 +70 77 78 71 131 138 139 132 +71 78 79 72 132 139 140 133 +73 80 81 74 134 141 142 135 +74 81 82 75 135 142 143 136 +75 82 83 76 136 143 144 137 +76 83 84 85 137 144 145 146 +76 85 86 77 137 146 147 138 +77 86 87 78 138 147 148 139 +78 87 88 79 139 148 149 140 +80 161 162 81 141 150 151 142 +81 162 163 82 142 151 152 143 +82 163 164 83 143 152 153 144 +83 164 165 84 144 153 154 145 +84 165 166 167 145 154 155 156 +84 167 168 85 145 156 157 146 +85 168 169 86 146 157 158 147 +86 169 170 87 147 158 159 148 +87 170 171 88 148 159 160 149 +80 89 90 81 161 172 173 162 +81 90 91 82 162 173 174 163 +82 91 92 83 163 174 175 164 +83 92 93 84 164 175 176 165 +84 93 178 167 165 176 177 166 +84 93 94 85 167 178 179 168 +85 94 95 86 168 179 180 169 +86 95 96 87 169 180 181 170 +87 96 97 88 170 181 182 171 +89 98 99 90 172 183 184 173 +90 99 100 91 173 184 185 174 +91 100 101 92 174 185 186 175 +92 101 102 93 175 186 187 176 +93 102 189 178 176 187 188 177 +93 102 103 94 178 189 190 179 +94 103 104 95 179 190 191 180 +95 104 105 96 180 191 192 181 +96 105 106 97 181 192 193 182 +98 107 108 99 183 194 195 184 +99 108 109 100 184 195 196 185 +100 109 110 101 185 196 197 186 +101 110 111 102 186 197 198 187 +102 111 200 189 187 198 199 188 +102 111 112 103 189 200 201 190 +103 112 113 104 190 201 202 191 +104 113 114 105 191 202 203 192 +105 114 115 106 192 203 204 193 +107 116 117 108 194 205 206 195 +108 117 118 109 195 206 207 196 +109 118 119 110 196 207 208 197 +110 119 120 111 197 208 209 198 +111 120 211 200 198 209 210 199 +111 120 121 112 200 211 212 201 +112 121 122 113 201 212 213 202 +113 122 123 114 202 213 214 203 +114 123 124 115 203 214 215 204 +125 126 127 128 216 217 218 219 +126 129 130 127 217 220 221 218 +127 130 131 132 218 221 222 223 +127 132 133 128 218 223 224 219 +129 134 135 130 220 225 226 221 +130 135 136 131 221 226 227 222 +131 136 137 138 222 227 228 229 +131 138 139 132 222 229 230 223 +132 139 140 133 223 230 231 224 +134 141 142 135 225 232 233 226 +135 142 143 136 226 233 234 227 +136 143 144 137 227 234 235 228 +137 144 145 146 228 235 236 237 +137 146 147 138 228 237 238 229 +138 147 148 139 229 238 239 230 +139 148 149 140 230 239 240 231 +141 150 151 142 232 241 242 233 +142 151 152 143 233 242 243 234 +143 152 153 144 234 243 244 235 +144 153 154 145 235 244 245 236 +145 154 155 156 236 245 246 247 +145 156 157 146 236 247 248 237 +146 157 158 147 237 248 249 238 +147 158 159 148 238 249 250 239 +148 159 160 149 239 250 251 240 +150 161 162 151 241 252 253 242 +151 162 163 152 242 253 254 243 +152 163 164 153 243 254 255 244 +153 164 165 154 244 255 256 245 +154 165 166 155 245 256 257 246 +155 166 167 156 246 257 258 247 +156 167 168 157 247 258 259 248 +157 168 169 158 248 259 260 249 +158 169 170 159 249 260 261 250 +159 170 171 160 250 261 262 251 +161 172 173 162 252 263 264 253 +162 173 174 163 253 264 265 254 +163 174 175 164 254 265 266 255 +164 175 176 165 255 266 267 256 +165 176 177 166 256 267 268 257 +166 177 178 167 257 268 269 258 +167 178 179 168 258 269 270 259 +168 179 180 169 259 270 271 260 +169 180 181 170 260 271 272 261 +170 181 182 171 261 272 273 262 +172 183 184 173 263 274 275 264 +173 184 185 174 264 275 276 265 +174 185 186 175 265 276 277 266 +175 186 187 176 266 277 278 267 +176 187 188 177 267 278 279 268 +177 188 189 178 268 279 280 269 +178 189 190 179 269 280 281 270 +179 190 191 180 270 281 282 271 +180 191 192 181 271 282 283 272 +181 192 193 182 272 283 284 273 +183 194 195 184 274 285 286 275 +184 195 196 185 275 286 287 276 +185 196 197 186 276 287 288 277 +186 197 198 187 277 288 289 278 +187 198 199 188 278 289 290 279 +188 199 200 189 279 290 291 280 +189 200 201 190 280 291 292 281 +190 201 202 191 281 292 293 282 +191 202 203 192 282 293 294 283 +192 203 204 193 283 294 295 284 +194 205 206 195 285 296 297 286 +195 206 207 196 286 297 298 287 +196 207 208 197 287 298 299 288 +197 208 209 198 288 299 300 289 +198 209 210 199 289 300 301 290 +199 210 211 200 290 301 302 291 +200 211 212 201 291 302 303 292 +201 212 213 202 292 303 304 293 +202 213 214 203 293 304 305 294 +203 214 215 204 294 305 306 295 +216 217 218 219 307 308 309 310 +217 220 221 218 308 311 312 309 +218 221 222 223 309 312 313 314 +218 223 224 219 309 314 315 310 +220 225 226 221 311 316 317 312 +221 226 227 222 312 317 318 313 +222 227 228 229 313 318 319 320 +222 229 230 223 313 320 321 314 +223 230 231 224 314 321 322 315 +225 232 233 226 316 323 324 317 +226 233 234 227 317 324 325 318 +227 234 235 228 318 325 326 319 +228 235 236 237 319 326 327 328 +228 237 238 229 319 328 329 320 +229 238 239 230 320 329 330 321 +230 239 240 231 321 330 331 322 +232 241 242 233 323 332 333 324 +233 242 243 234 324 333 334 325 +234 243 244 235 325 334 335 326 +235 244 245 236 326 335 336 327 +236 245 246 247 327 336 337 338 +236 247 248 237 327 338 339 328 +237 248 249 238 328 339 340 329 +238 249 250 239 329 340 341 330 +239 250 251 240 330 341 342 331 +241 252 253 242 332 343 344 333 +242 253 254 243 333 344 345 334 +243 254 255 244 334 345 346 335 +244 255 256 245 335 346 347 336 +245 256 257 246 336 347 348 337 +246 257 258 247 337 348 349 338 +247 258 259 248 338 349 350 339 +248 259 260 249 339 350 351 340 +249 260 261 250 340 351 352 341 +250 261 262 251 341 352 353 342 +252 263 264 253 343 354 355 344 +253 264 265 254 344 355 356 345 +254 265 266 255 345 356 357 346 +255 266 267 256 346 357 358 347 +256 267 268 257 347 358 359 348 +257 268 269 258 348 359 360 349 +258 269 270 259 349 360 361 350 +259 270 271 260 350 361 362 351 +260 271 272 261 351 362 363 352 +261 272 273 262 352 363 364 353 +263 274 275 264 354 365 366 355 +264 275 276 265 355 366 367 356 +265 276 277 266 356 367 368 357 +266 277 278 267 357 368 369 358 +267 278 279 268 358 369 370 359 +268 279 280 269 359 370 371 360 +269 280 281 270 360 371 372 361 +270 281 282 271 361 372 373 362 +271 282 283 272 362 373 374 363 +272 283 284 273 363 374 375 364 +274 285 286 275 365 376 377 366 +275 286 287 276 366 377 378 367 +276 287 288 277 367 378 379 368 +277 288 289 278 368 379 380 369 +278 289 290 279 369 380 381 370 +279 290 291 280 370 381 382 371 +280 291 292 281 371 382 383 372 +281 292 293 282 372 383 384 373 +282 293 294 283 373 384 385 374 +283 294 295 284 374 385 386 375 +285 296 297 286 376 387 388 377 +286 297 298 287 377 388 389 378 +287 298 299 288 378 389 390 379 +288 299 300 289 379 390 391 380 +289 300 301 290 380 391 392 381 +290 301 302 291 381 392 393 382 +291 302 303 292 382 393 394 383 +292 303 304 293 383 394 395 384 +293 304 305 294 384 395 396 385 +294 305 306 295 385 396 397 386 +307 308 309 310 398 399 400 401 +308 311 312 309 399 402 403 400 +309 312 313 314 400 403 404 405 +309 314 315 310 400 405 406 401 +311 316 317 312 402 407 408 403 +312 317 318 313 403 408 409 404 +313 318 319 320 404 409 410 411 +313 320 321 314 404 411 412 405 +314 321 322 315 405 412 413 406 +316 323 324 317 407 414 415 408 +317 324 325 318 408 415 416 409 +318 325 326 319 409 416 417 410 +319 326 327 328 410 417 418 419 +319 328 329 320 410 419 420 411 +320 329 330 321 411 420 421 412 +321 330 331 322 412 421 422 413 +323 332 333 324 414 423 424 415 +324 333 334 325 415 424 425 416 +325 334 335 326 416 425 426 417 +326 335 336 327 417 426 427 418 +327 336 337 338 418 427 428 429 +327 338 339 328 418 429 430 419 +328 339 340 329 419 430 431 420 +329 340 341 330 420 431 432 421 +330 341 342 331 421 432 433 422 +332 343 344 333 423 434 435 424 +333 344 345 334 424 435 436 425 +334 345 346 335 425 436 437 426 +335 346 347 336 426 437 438 427 +336 347 348 337 427 438 439 428 +337 348 349 338 428 439 440 429 +338 349 350 339 429 440 441 430 +339 350 351 340 430 441 442 431 +340 351 352 341 431 442 443 432 +341 352 353 342 432 443 444 433 +343 354 355 344 434 445 446 435 +344 355 356 345 435 446 447 436 +345 356 357 346 436 447 448 437 +346 357 358 347 437 448 449 438 +347 358 359 348 438 449 450 439 +348 359 360 349 439 450 451 440 +349 360 361 350 440 451 452 441 +350 361 362 351 441 452 453 442 +351 362 363 352 442 453 454 443 +352 363 364 353 443 454 455 444 +354 365 366 355 445 456 457 446 +355 366 367 356 446 457 458 447 +356 367 368 357 447 458 459 448 +357 368 369 358 448 459 460 449 +358 369 370 359 449 460 461 450 +359 370 371 360 450 461 462 451 +360 371 372 361 451 462 463 452 +361 372 373 362 452 463 464 453 +362 373 374 363 453 464 465 454 +363 374 375 364 454 465 466 455 +365 376 377 366 456 467 468 457 +366 377 378 367 457 468 469 458 +367 378 379 368 458 469 470 459 +368 379 380 369 459 470 471 460 +369 380 381 370 460 471 472 461 +370 381 382 371 461 472 473 462 +371 382 383 372 462 473 474 463 +372 383 384 373 463 474 475 464 +373 384 385 374 464 475 476 465 +374 385 386 375 465 476 477 466 +376 387 388 377 467 478 479 468 +377 388 389 378 468 479 480 469 +378 389 390 379 469 480 481 470 +379 390 391 380 470 481 482 471 +380 391 392 381 471 482 483 472 +381 392 393 382 472 483 484 473 +382 393 394 383 473 484 485 474 +383 394 395 384 474 485 486 475 +384 395 396 385 475 486 487 476 +385 396 397 386 476 487 488 477 +398 399 400 401 489 490 491 492 +399 402 403 400 490 493 494 491 +400 403 404 405 491 494 495 496 +400 405 406 401 491 496 497 492 +402 407 408 403 493 498 499 494 +403 408 409 404 494 499 500 495 +404 409 410 411 495 500 501 502 +404 411 412 405 495 502 503 496 +405 412 413 406 496 503 504 497 +407 414 415 408 498 505 506 499 +408 415 416 409 499 506 507 500 +409 416 417 410 500 507 508 501 +410 417 418 419 501 508 509 510 +410 419 420 411 501 510 511 502 +411 420 421 412 502 511 512 503 +412 421 422 413 503 512 513 504 +414 423 424 415 505 514 515 506 +415 424 425 416 506 515 516 507 +416 425 426 417 507 516 517 508 +417 426 427 418 508 517 518 509 +418 427 428 429 509 518 519 520 +418 429 430 419 509 520 521 510 +419 430 431 420 510 521 522 511 +420 431 432 421 511 522 523 512 +421 432 433 422 512 523 524 513 +423 434 435 424 514 525 526 515 +424 435 436 425 515 526 527 516 +425 436 437 426 516 527 528 517 +426 437 438 427 517 528 529 518 +427 438 439 428 518 529 530 519 +428 439 440 429 519 530 531 520 +429 440 441 430 520 531 532 521 +430 441 442 431 521 532 533 522 +431 442 443 432 522 533 534 523 +432 443 444 433 523 534 535 524 +434 445 446 435 525 536 537 526 +435 446 447 436 526 537 538 527 +436 447 448 437 527 538 539 528 +437 448 449 438 528 539 540 529 +438 449 450 439 529 540 541 530 +439 450 451 440 530 541 542 531 +440 451 452 441 531 542 543 532 +441 452 453 442 532 543 544 533 +442 453 454 443 533 544 545 534 +443 454 455 444 534 545 546 535 +445 456 457 446 536 547 548 537 +446 457 458 447 537 548 549 538 +447 458 459 448 538 549 550 539 +448 459 460 449 539 550 551 540 +449 460 461 450 540 551 552 541 +450 461 462 451 541 552 553 542 +451 462 463 452 542 553 554 543 +452 463 464 453 543 554 555 544 +453 464 465 454 544 555 556 545 +454 465 466 455 545 556 557 546 +456 467 468 457 547 558 559 548 +457 468 469 458 548 559 560 549 +458 469 470 459 549 560 561 550 +459 470 471 460 550 561 562 551 +460 471 472 461 551 562 563 552 +461 472 473 462 552 563 564 553 +462 473 474 463 553 564 565 554 +463 474 475 464 554 565 566 555 +464 475 476 465 555 566 567 556 +465 476 477 466 556 567 568 557 +467 478 479 468 558 569 570 559 +468 479 480 469 559 570 571 560 +469 480 481 470 560 571 572 561 +470 481 482 471 561 572 573 562 +471 482 483 472 562 573 574 563 +472 483 484 473 563 574 575 564 +473 484 485 474 564 575 576 565 +474 485 486 475 565 576 577 566 +475 486 487 476 566 577 578 567 +476 487 488 477 567 578 579 568 +489 490 491 492 580 581 582 583 +490 493 494 491 581 584 585 582 +491 494 495 496 582 585 586 587 +491 496 497 492 582 587 588 583 +493 498 499 494 584 589 590 585 +494 499 500 495 585 590 591 586 +495 500 501 502 586 591 592 593 +495 502 503 496 586 593 594 587 +496 503 504 497 587 594 595 588 +498 505 506 499 589 596 597 590 +499 506 507 500 590 597 598 591 +500 507 508 501 591 598 599 592 +501 508 509 510 592 599 600 601 +501 510 511 502 592 601 602 593 +502 511 512 503 593 602 603 594 +503 512 513 504 594 603 604 595 +505 514 515 506 596 605 606 597 +506 515 516 507 597 606 607 598 +507 516 517 508 598 607 608 599 +508 517 518 509 599 608 609 600 +509 518 519 520 600 609 610 611 +509 520 521 510 600 611 612 601 +510 521 522 511 601 612 613 602 +511 522 523 512 602 613 614 603 +512 523 524 513 603 614 615 604 +514 525 526 515 605 616 617 606 +515 526 527 516 606 617 618 607 +516 527 528 517 607 618 619 608 +517 528 529 518 608 619 620 609 +518 529 530 519 609 620 621 610 +519 530 531 520 610 621 622 611 +520 531 532 521 611 622 623 612 +521 532 533 522 612 623 624 613 +522 533 534 523 613 624 625 614 +523 534 535 524 614 625 626 615 +525 536 537 526 616 627 628 617 +526 537 538 527 617 628 629 618 +527 538 539 528 618 629 630 619 +528 539 540 529 619 630 631 620 +529 540 541 530 620 631 632 621 +530 541 542 531 621 632 633 622 +531 542 543 532 622 633 634 623 +532 543 544 533 623 634 635 624 +533 544 545 534 624 635 636 625 +534 545 546 535 625 636 637 626 +536 547 548 537 627 638 639 628 +537 548 549 538 628 639 640 629 +538 549 550 539 629 640 641 630 +539 550 551 540 630 641 642 631 +540 551 552 541 631 642 643 632 +541 552 553 542 632 643 644 633 +542 553 554 543 633 644 645 634 +543 554 555 544 634 645 646 635 +544 555 556 545 635 646 647 636 +545 556 557 546 636 647 648 637 +547 558 559 548 638 649 650 639 +548 559 560 549 639 650 651 640 +549 560 561 550 640 651 652 641 +550 561 562 551 641 652 653 642 +551 562 563 552 642 653 654 643 +552 563 564 553 643 654 655 644 +553 564 565 554 644 655 656 645 +554 565 566 555 645 656 657 646 +555 566 567 556 646 657 658 647 +556 567 568 557 647 658 659 648 +558 569 570 559 649 660 661 650 +559 570 571 560 650 661 662 651 +560 571 572 561 651 662 663 652 +561 572 573 562 652 663 664 653 +562 573 574 563 653 664 665 654 +563 574 575 564 654 665 666 655 +564 575 576 565 655 666 667 656 +565 576 577 566 656 667 668 657 +566 577 578 567 657 668 669 658 +567 578 579 568 658 669 670 659 +580 581 582 583 671 672 673 674 +581 584 585 582 672 675 676 673 +582 585 586 587 673 676 677 678 +582 587 588 583 673 678 679 674 +584 589 590 585 675 680 681 676 +585 590 591 586 676 681 682 677 +586 591 592 593 677 682 683 684 +586 593 594 587 677 684 685 678 +587 594 595 588 678 685 686 679 +589 596 597 590 680 687 688 681 +590 597 598 591 681 688 689 682 +591 598 599 592 682 689 690 683 +592 599 600 601 683 690 691 692 +592 601 602 593 683 692 693 684 +593 602 603 594 684 693 694 685 +594 603 604 595 685 694 695 686 +596 605 606 597 687 696 697 688 +597 606 607 598 688 697 698 689 +598 607 608 599 689 698 699 690 +599 608 609 600 690 699 700 691 +600 609 610 611 691 700 701 702 +600 611 612 601 691 702 703 692 +601 612 613 602 692 703 704 693 +602 613 614 603 693 704 705 694 +603 614 615 604 694 705 706 695 +605 616 617 606 696 707 708 697 +606 617 618 607 697 708 709 698 +607 618 619 608 698 709 710 699 +608 619 620 609 699 710 711 700 +609 620 621 610 700 711 712 701 +610 621 622 611 701 712 713 702 +611 622 623 612 702 713 714 703 +612 623 624 613 703 714 715 704 +613 624 625 614 704 715 716 705 +614 625 626 615 705 716 717 706 +616 627 628 617 707 718 719 708 +617 628 629 618 708 719 720 709 +618 629 630 619 709 720 721 710 +619 630 631 620 710 721 722 711 +620 631 632 621 711 722 723 712 +621 632 633 622 712 723 724 713 +622 633 634 623 713 724 725 714 +623 634 635 624 714 725 726 715 +624 635 636 625 715 726 727 716 +625 636 637 626 716 727 728 717 +627 638 639 628 718 729 730 719 +628 639 640 629 719 730 731 720 +629 640 641 630 720 731 732 721 +630 641 642 631 721 732 733 722 +631 642 643 632 722 733 734 723 +632 643 644 633 723 734 735 724 +633 644 645 634 724 735 736 725 +634 645 646 635 725 736 737 726 +635 646 647 636 726 737 738 727 +636 647 648 637 727 738 739 728 +638 649 650 639 729 740 741 730 +639 650 651 640 730 741 742 731 +640 651 652 641 731 742 743 732 +641 652 653 642 732 743 744 733 +642 653 654 643 733 744 745 734 +643 654 655 644 734 745 746 735 +644 655 656 645 735 746 747 736 +645 656 657 646 736 747 748 737 +646 657 658 647 737 748 749 738 +647 658 659 648 738 749 750 739 +649 660 661 650 740 751 752 741 +650 661 662 651 741 752 753 742 +651 662 663 652 742 753 754 743 +652 663 664 653 743 754 755 744 +653 664 665 654 744 755 756 745 +654 665 666 655 745 756 757 746 +655 666 667 656 746 757 758 747 +656 667 668 657 747 758 759 748 +657 668 669 658 748 759 760 749 +658 669 670 659 749 760 761 750 +671 672 673 674 762 763 764 765 +672 675 676 673 763 766 767 764 +673 676 677 678 764 767 768 769 +673 678 679 674 764 769 770 765 +675 680 681 676 766 771 772 767 +676 681 682 677 767 772 773 768 +677 682 683 684 768 773 774 775 +677 684 685 678 768 775 776 769 +678 685 686 679 769 776 777 770 +680 687 688 681 771 778 779 772 +681 688 689 682 772 779 780 773 +682 689 690 683 773 780 781 774 +683 690 691 692 774 781 782 783 +683 692 693 684 774 783 784 775 +684 693 694 685 775 784 785 776 +685 694 695 686 776 785 786 777 +687 696 697 688 778 787 788 779 +688 697 698 689 779 788 789 780 +689 698 699 690 780 789 790 781 +690 699 700 691 781 790 791 782 +691 700 701 702 782 791 792 793 +691 702 703 692 782 793 794 783 +692 703 704 693 783 794 795 784 +693 704 705 694 784 795 796 785 +694 705 706 695 785 796 797 786 +696 707 708 697 787 798 799 788 +697 708 709 698 788 799 800 789 +698 709 710 699 789 800 801 790 +699 710 711 700 790 801 802 791 +700 711 712 701 791 802 803 792 +701 712 713 702 792 803 804 793 +702 713 714 703 793 804 805 794 +703 714 715 704 794 805 806 795 +704 715 716 705 795 806 807 796 +705 716 717 706 796 807 808 797 +707 718 719 708 798 809 810 799 +708 719 720 709 799 810 811 800 +709 720 721 710 800 811 812 801 +710 721 722 711 801 812 813 802 +711 722 723 712 802 813 814 803 +712 723 724 713 803 814 815 804 +713 724 725 714 804 815 816 805 +714 725 726 715 805 816 817 806 +715 726 727 716 806 817 818 807 +716 727 728 717 807 818 819 808 +718 729 730 719 809 820 821 810 +719 730 731 720 810 821 822 811 +720 731 732 721 811 822 823 812 +721 732 733 722 812 823 824 813 +722 733 734 723 813 824 825 814 +723 734 735 724 814 825 826 815 +724 735 736 725 815 826 827 816 +725 736 737 726 816 827 828 817 +726 737 738 727 817 828 829 818 +727 738 739 728 818 829 830 819 +729 740 741 730 820 831 832 821 +730 741 742 731 821 832 833 822 +731 742 743 732 822 833 834 823 +732 743 744 733 823 834 835 824 +733 744 745 734 824 835 836 825 +734 745 746 735 825 836 837 826 +735 746 747 736 826 837 838 827 +736 747 748 737 827 838 839 828 +737 748 749 738 828 839 840 829 +738 749 750 739 829 840 841 830 +740 751 752 741 831 842 843 832 +741 752 753 742 832 843 844 833 +742 753 754 743 833 844 845 834 +743 754 755 744 834 845 846 835 +744 755 756 745 835 846 847 836 +745 756 757 746 836 847 848 837 +746 757 758 747 837 848 849 838 +747 758 759 748 838 849 850 839 +748 759 760 749 839 850 851 840 +749 760 761 750 840 851 852 841 +762 763 764 765 853 854 855 856 +763 766 767 764 854 857 858 855 +764 767 768 769 855 858 859 860 +764 769 770 765 855 860 861 856 +766 771 772 767 857 862 863 858 +767 772 773 768 858 863 864 859 +768 773 774 775 859 864 865 866 +768 775 776 769 859 866 867 860 +769 776 777 770 860 867 868 861 +771 778 779 772 862 869 870 863 +772 779 780 773 863 870 871 864 +773 780 781 774 864 871 872 865 +774 781 782 783 865 872 873 874 +774 783 784 775 865 874 875 866 +775 784 785 776 866 875 876 867 +776 785 786 777 867 876 877 868 +778 787 788 779 869 878 879 870 +779 788 789 780 870 879 880 871 +780 789 790 781 871 880 881 872 +781 790 791 782 872 881 882 873 +782 791 792 793 873 882 883 884 +782 793 794 783 873 884 885 874 +783 794 795 784 874 885 886 875 +784 795 796 785 875 886 887 876 +785 796 797 786 876 887 888 877 +787 798 799 788 878 889 890 879 +788 799 800 789 879 890 891 880 +789 800 801 790 880 891 892 881 +790 801 802 791 881 892 893 882 +791 802 803 792 882 893 894 883 +792 803 804 793 883 894 895 884 +793 804 805 794 884 895 896 885 +794 805 806 795 885 896 897 886 +795 806 807 796 886 897 898 887 +796 807 808 797 887 898 899 888 +798 809 810 799 889 900 901 890 +799 810 811 800 890 901 902 891 +800 811 812 801 891 902 903 892 +801 812 813 802 892 903 904 893 +802 813 814 803 893 904 905 894 +803 814 815 804 894 905 906 895 +804 815 816 805 895 906 907 896 +805 816 817 806 896 907 908 897 +806 817 818 807 897 908 909 898 +807 818 819 808 898 909 910 899 +809 820 821 810 900 911 912 901 +810 821 822 811 901 912 913 902 +811 822 823 812 902 913 914 903 +812 823 824 813 903 914 915 904 +813 824 825 814 904 915 916 905 +814 825 826 815 905 916 917 906 +815 826 827 816 906 917 918 907 +816 827 828 817 907 918 919 908 +817 828 829 818 908 919 920 909 +818 829 830 819 909 920 921 910 +820 831 832 821 911 922 923 912 +821 832 833 822 912 923 924 913 +822 833 834 823 913 924 925 914 +823 834 835 824 914 925 926 915 +824 835 836 825 915 926 927 916 +825 836 837 826 916 927 928 917 +826 837 838 827 917 928 929 918 +827 838 839 828 918 929 930 919 +828 839 840 829 919 930 931 920 +829 840 841 830 920 931 932 921 +831 842 843 832 922 933 934 923 +832 843 844 833 923 934 935 924 +833 844 845 834 924 935 936 925 +834 845 846 835 925 936 937 926 +835 846 847 836 926 937 938 927 +836 847 848 837 927 938 939 928 +837 848 849 838 928 939 940 929 +838 849 850 839 929 940 941 930 +839 850 851 840 930 941 942 931 +840 851 852 841 931 942 943 932 +853 854 855 856 944 945 946 947 +854 857 858 855 945 948 949 946 +855 858 859 860 946 949 950 951 +855 860 861 856 946 951 952 947 +857 862 863 858 948 953 954 949 +858 863 864 859 949 954 955 950 +859 864 865 866 950 955 956 957 +859 866 867 860 950 957 958 951 +860 867 868 861 951 958 959 952 +862 869 870 863 953 960 961 954 +863 870 871 864 954 961 962 955 +864 871 872 865 955 962 963 956 +865 872 873 874 956 963 964 965 +865 874 875 866 956 965 966 957 +866 875 876 867 957 966 967 958 +867 876 877 868 958 967 968 959 +869 878 879 870 960 969 970 961 +870 879 880 871 961 970 971 962 +871 880 881 872 962 971 972 963 +872 881 882 873 963 972 973 964 +873 882 883 884 964 973 974 975 +873 884 885 874 964 975 976 965 +874 885 886 875 965 976 977 966 +875 886 887 876 966 977 978 967 +876 887 888 877 967 978 979 968 +878 889 890 879 969 980 981 970 +879 890 891 880 970 981 982 971 +880 891 892 881 971 982 983 972 +881 892 893 882 972 983 984 973 +882 893 894 883 973 984 985 974 +883 894 895 884 974 985 986 975 +884 895 896 885 975 986 987 976 +885 896 897 886 976 987 988 977 +886 897 898 887 977 988 989 978 +887 898 899 888 978 989 990 979 +889 900 901 890 980 991 992 981 +890 901 902 891 981 992 993 982 +891 902 903 892 982 993 994 983 +892 903 904 893 983 994 995 984 +893 904 905 894 984 995 996 985 +894 905 906 895 985 996 997 986 +895 906 907 896 986 997 998 987 +896 907 908 897 987 998 999 988 +897 908 909 898 988 999 1000 989 +898 909 910 899 989 1000 1001 990 +900 911 912 901 991 1002 1003 992 +901 912 913 902 992 1003 1004 993 +902 913 914 903 993 1004 1005 994 +903 914 915 904 994 1005 1006 995 +904 915 916 905 995 1006 1007 996 +905 916 917 906 996 1007 1008 997 +906 917 918 907 997 1008 1009 998 +907 918 919 908 998 1009 1010 999 +908 919 920 909 999 1010 1011 1000 +909 920 921 910 1000 1011 1012 1001 +911 922 923 912 1002 1013 1014 1003 +912 923 924 913 1003 1014 1015 1004 +913 924 925 914 1004 1015 1016 1005 +914 925 926 915 1005 1016 1017 1006 +915 926 927 916 1006 1017 1018 1007 +916 927 928 917 1007 1018 1019 1008 +917 928 929 918 1008 1019 1020 1009 +918 929 930 919 1009 1020 1021 1010 +919 930 931 920 1010 1021 1022 1011 +920 931 932 921 1011 1022 1023 1012 +922 933 934 923 1013 1024 1025 1014 +923 934 935 924 1014 1025 1026 1015 +924 935 936 925 1015 1026 1027 1016 +925 936 937 926 1016 1027 1028 1017 +926 937 938 927 1017 1028 1029 1018 +927 938 939 928 1018 1029 1030 1019 +928 939 940 929 1019 1030 1031 1020 +929 940 941 930 1020 1031 1032 1021 +930 941 942 931 1021 1032 1033 1022 +931 942 943 932 1022 1033 1034 1023 +944 945 946 947 1035 1036 1037 1038 +945 948 949 946 1036 1039 1040 1037 +946 949 950 951 1037 1040 1041 1042 +946 951 952 947 1037 1042 1043 1038 +948 953 954 949 1039 1044 1045 1040 +949 954 955 950 1040 1045 1046 1041 +950 955 956 957 1041 1046 1047 1048 +950 957 958 951 1041 1048 1049 1042 +951 958 959 952 1042 1049 1050 1043 +953 960 961 954 1044 1051 1052 1045 +954 961 962 955 1045 1052 1053 1046 +955 962 963 956 1046 1053 1054 1047 +956 963 964 965 1047 1054 1055 1056 +956 965 966 957 1047 1056 1057 1048 +957 966 967 958 1048 1057 1058 1049 +958 967 968 959 1049 1058 1059 1050 +960 969 970 961 1051 1060 1061 1052 +961 970 971 962 1052 1061 1062 1053 +962 971 972 963 1053 1062 1063 1054 +963 972 973 964 1054 1063 1064 1055 +964 973 974 975 1055 1064 1065 1066 +964 975 976 965 1055 1066 1067 1056 +965 976 977 966 1056 1067 1068 1057 +966 977 978 967 1057 1068 1069 1058 +967 978 979 968 1058 1069 1070 1059 +969 980 981 970 1060 1071 1072 1061 +970 981 982 971 1061 1072 1073 1062 +971 982 983 972 1062 1073 1074 1063 +972 983 984 973 1063 1074 1075 1064 +973 984 985 974 1064 1075 1076 1065 +974 985 986 975 1065 1076 1077 1066 +975 986 987 976 1066 1077 1078 1067 +976 987 988 977 1067 1078 1079 1068 +977 988 989 978 1068 1079 1080 1069 +978 989 990 979 1069 1080 1081 1070 +980 991 992 981 1071 1082 1083 1072 +981 992 993 982 1072 1083 1084 1073 +982 993 994 983 1073 1084 1085 1074 +983 994 995 984 1074 1085 1086 1075 +984 995 996 985 1075 1086 1087 1076 +985 996 997 986 1076 1087 1088 1077 +986 997 998 987 1077 1088 1089 1078 +987 998 999 988 1078 1089 1090 1079 +988 999 1000 989 1079 1090 1091 1080 +989 1000 1001 990 1080 1091 1092 1081 +991 1002 1003 992 1082 1093 1094 1083 +992 1003 1004 993 1083 1094 1095 1084 +993 1004 1005 994 1084 1095 1096 1085 +994 1005 1006 995 1085 1096 1097 1086 +995 1006 1007 996 1086 1097 1098 1087 +996 1007 1008 997 1087 1098 1099 1088 +997 1008 1009 998 1088 1099 1100 1089 +998 1009 1010 999 1089 1100 1101 1090 +999 1010 1011 1000 1090 1101 1102 1091 +1000 1011 1012 1001 1091 1102 1103 1092 +1002 1013 1014 1003 1093 1104 1105 1094 +1003 1014 1015 1004 1094 1105 1106 1095 +1004 1015 1016 1005 1095 1106 1107 1096 +1005 1016 1017 1006 1096 1107 1108 1097 +1006 1017 1018 1007 1097 1108 1109 1098 +1007 1018 1019 1008 1098 1109 1110 1099 +1008 1019 1020 1009 1099 1110 1111 1100 +1009 1020 1021 1010 1100 1111 1112 1101 +1010 1021 1022 1011 1101 1112 1113 1102 +1011 1022 1023 1012 1102 1113 1114 1103 +1013 1024 1025 1014 1104 1115 1116 1105 +1014 1025 1026 1015 1105 1116 1117 1106 +1015 1026 1027 1016 1106 1117 1118 1107 +1016 1027 1028 1017 1107 1118 1119 1108 +1017 1028 1029 1018 1108 1119 1120 1109 +1018 1029 1030 1019 1109 1120 1121 1110 +1019 1030 1031 1020 1110 1121 1122 1111 +1020 1031 1032 1021 1111 1122 1123 1112 +1021 1032 1033 1022 1112 1123 1124 1113 +1022 1033 1034 1023 1113 1124 1125 1114 +0 5 0 7 0 1 +1 2 1 4 0 8 +1 17 2 3 5 9 +4 18 2 20 6 10 +1 21 3 4 7 11 +2 5 5 6 0 22 +3 6 5 25 7 23 +4 7 6 7 0 26 +8 9 8 11 1 27 +8 12 9 10 2 28 +11 13 9 15 3 29 +8 16 10 11 4 30 +9 43 12 13 17 31 +10 44 12 14 18 32 +15 45 13 47 19 33 +10 48 14 16 20 34 +11 49 15 16 21 35 +12 22 17 18 2 50 +13 23 17 19 3 51 +14 24 18 54 20 52 +15 25 19 21 3 55 +16 26 20 21 4 56 +17 22 22 23 5 57 +18 23 22 24 6 58 +19 24 23 61 25 59 +20 25 24 26 6 62 +21 26 25 26 7 63 +27 28 27 30 8 64 +27 31 28 29 9 65 +30 32 28 34 10 66 +27 35 29 30 11 67 +28 36 31 32 12 68 +29 37 31 33 13 69 +34 38 32 40 14 70 +29 41 33 35 15 71 +30 42 34 35 16 72 +31 89 36 37 43 73 +32 90 36 38 44 74 +33 91 37 39 45 75 +40 92 38 94 46 76 +33 95 39 41 47 77 +34 96 40 42 48 78 +35 97 41 42 49 79 +36 50 43 44 12 98 +37 51 43 45 13 99 +38 52 44 46 14 100 +39 53 45 103 47 101 +40 54 46 48 14 104 +41 55 47 49 15 105 +42 56 48 49 16 106 +43 57 50 51 17 107 +44 58 50 52 18 108 +45 59 51 53 19 109 +46 60 52 112 54 110 +47 61 53 55 19 113 +48 62 54 56 20 114 +49 63 55 56 21 115 +50 57 57 58 22 116 +51 58 57 59 23 117 +52 59 58 60 24 118 +53 60 59 121 61 119 +54 61 60 62 24 122 +55 62 61 63 25 123 +56 63 62 63 26 124 +64 65 64 67 27 125 +64 68 65 66 28 126 +67 69 65 71 29 127 +64 72 66 67 30 128 +65 73 68 69 31 129 +66 74 68 70 32 130 +71 75 69 77 33 131 +66 78 70 72 34 132 +67 79 71 72 35 133 +68 80 73 74 36 134 +69 81 73 75 37 135 +70 82 74 76 38 136 +77 83 75 85 39 137 +70 86 76 78 40 138 +71 87 77 79 41 139 +72 88 78 79 42 140 +73 150 80 81 89 141 +74 151 80 82 90 142 +75 152 81 83 91 143 +76 153 82 84 92 144 +85 154 83 155 93 145 +76 156 84 86 94 146 +77 157 85 87 95 147 +78 158 86 88 96 148 +79 159 87 88 97 149 +80 98 89 90 36 160 +81 99 89 91 37 161 +82 100 90 92 38 162 +83 101 91 93 39 163 +84 102 92 165 94 164 +85 103 93 95 39 166 +86 104 94 96 40 167 +87 105 95 97 41 168 +88 106 96 97 42 169 +89 107 98 99 43 170 +90 108 98 100 44 171 +91 109 99 101 45 172 +92 110 100 102 46 173 +93 111 101 175 103 174 +94 112 102 104 46 176 +95 113 103 105 47 177 +96 114 104 106 48 178 +97 115 105 106 49 179 +98 116 107 108 50 180 +99 117 107 109 51 181 +100 118 108 110 52 182 +101 119 109 111 53 183 +102 120 110 185 112 184 +103 121 111 113 53 186 +104 122 112 114 54 187 +105 123 113 115 55 188 +106 124 114 115 56 189 +107 116 116 117 57 190 +108 117 116 118 58 191 +109 118 117 119 59 192 +110 119 118 120 60 193 +111 120 119 195 121 194 +112 121 120 122 60 196 +113 122 121 123 61 197 +114 123 122 124 62 198 +115 124 123 124 63 199 +125 126 125 128 64 200 +125 129 126 127 65 201 +128 130 126 132 66 202 +125 133 127 128 67 203 +126 134 129 130 68 204 +127 135 129 131 69 205 +132 136 130 138 70 206 +127 139 131 133 71 207 +128 140 132 133 72 208 +129 141 134 135 73 209 +130 142 134 136 74 210 +131 143 135 137 75 211 +138 144 136 146 76 212 +131 147 137 139 77 213 +132 148 138 140 78 214 +133 149 139 140 79 215 +134 150 141 142 80 216 +135 151 141 143 81 217 +136 152 142 144 82 218 +137 153 143 145 83 219 +146 154 144 155 84 220 +137 156 145 147 85 221 +138 157 146 148 86 222 +139 158 147 149 87 223 +140 159 148 149 88 224 +141 160 150 151 80 225 +142 161 150 152 81 226 +143 162 151 153 82 227 +144 163 152 154 83 228 +145 164 153 155 84 229 +145 165 154 156 84 230 +146 166 155 157 85 231 +147 167 156 158 86 232 +148 168 157 159 87 233 +149 169 158 159 88 234 +150 170 160 161 89 235 +151 171 160 162 90 236 +152 172 161 163 91 237 +153 173 162 164 92 238 +154 174 163 165 93 239 +155 175 164 166 93 240 +156 176 165 167 94 241 +157 177 166 168 95 242 +158 178 167 169 96 243 +159 179 168 169 97 244 +160 180 170 171 98 245 +161 181 170 172 99 246 +162 182 171 173 100 247 +163 183 172 174 101 248 +164 184 173 175 102 249 +165 185 174 176 102 250 +166 186 175 177 103 251 +167 187 176 178 104 252 +168 188 177 179 105 253 +169 189 178 179 106 254 +170 190 180 181 107 255 +171 191 180 182 108 256 +172 192 181 183 109 257 +173 193 182 184 110 258 +174 194 183 185 111 259 +175 195 184 186 111 260 +176 196 185 187 112 261 +177 197 186 188 113 262 +178 198 187 189 114 263 +179 199 188 189 115 264 +180 190 190 191 116 265 +181 191 190 192 117 266 +182 192 191 193 118 267 +183 193 192 194 119 268 +184 194 193 195 120 269 +185 195 194 196 120 270 +186 196 195 197 121 271 +187 197 196 198 122 272 +188 198 197 199 123 273 +189 199 198 199 124 274 +200 201 200 203 125 275 +200 204 201 202 126 276 +203 205 201 207 127 277 +200 208 202 203 128 278 +201 209 204 205 129 279 +202 210 204 206 130 280 +207 211 205 213 131 281 +202 214 206 208 132 282 +203 215 207 208 133 283 +204 216 209 210 134 284 +205 217 209 211 135 285 +206 218 210 212 136 286 +213 219 211 221 137 287 +206 222 212 214 138 288 +207 223 213 215 139 289 +208 224 214 215 140 290 +209 225 216 217 141 291 +210 226 216 218 142 292 +211 227 217 219 143 293 +212 228 218 220 144 294 +221 229 219 230 145 295 +212 231 220 222 146 296 +213 232 221 223 147 297 +214 233 222 224 148 298 +215 234 223 224 149 299 +216 235 225 226 150 300 +217 236 225 227 151 301 +218 237 226 228 152 302 +219 238 227 229 153 303 +220 239 228 230 154 304 +220 240 229 231 155 305 +221 241 230 232 156 306 +222 242 231 233 157 307 +223 243 232 234 158 308 +224 244 233 234 159 309 +225 245 235 236 160 310 +226 246 235 237 161 311 +227 247 236 238 162 312 +228 248 237 239 163 313 +229 249 238 240 164 314 +230 250 239 241 165 315 +231 251 240 242 166 316 +232 252 241 243 167 317 +233 253 242 244 168 318 +234 254 243 244 169 319 +235 255 245 246 170 320 +236 256 245 247 171 321 +237 257 246 248 172 322 +238 258 247 249 173 323 +239 259 248 250 174 324 +240 260 249 251 175 325 +241 261 250 252 176 326 +242 262 251 253 177 327 +243 263 252 254 178 328 +244 264 253 254 179 329 +245 265 255 256 180 330 +246 266 255 257 181 331 +247 267 256 258 182 332 +248 268 257 259 183 333 +249 269 258 260 184 334 +250 270 259 261 185 335 +251 271 260 262 186 336 +252 272 261 263 187 337 +253 273 262 264 188 338 +254 274 263 264 189 339 +255 265 265 266 190 340 +256 266 265 267 191 341 +257 267 266 268 192 342 +258 268 267 269 193 343 +259 269 268 270 194 344 +260 270 269 271 195 345 +261 271 270 272 196 346 +262 272 271 273 197 347 +263 273 272 274 198 348 +264 274 273 274 199 349 +275 276 275 278 200 350 +275 279 276 277 201 351 +278 280 276 282 202 352 +275 283 277 278 203 353 +276 284 279 280 204 354 +277 285 279 281 205 355 +282 286 280 288 206 356 +277 289 281 283 207 357 +278 290 282 283 208 358 +279 291 284 285 209 359 +280 292 284 286 210 360 +281 293 285 287 211 361 +288 294 286 296 212 362 +281 297 287 289 213 363 +282 298 288 290 214 364 +283 299 289 290 215 365 +284 300 291 292 216 366 +285 301 291 293 217 367 +286 302 292 294 218 368 +287 303 293 295 219 369 +296 304 294 305 220 370 +287 306 295 297 221 371 +288 307 296 298 222 372 +289 308 297 299 223 373 +290 309 298 299 224 374 +291 310 300 301 225 375 +292 311 300 302 226 376 +293 312 301 303 227 377 +294 313 302 304 228 378 +295 314 303 305 229 379 +295 315 304 306 230 380 +296 316 305 307 231 381 +297 317 306 308 232 382 +298 318 307 309 233 383 +299 319 308 309 234 384 +300 320 310 311 235 385 +301 321 310 312 236 386 +302 322 311 313 237 387 +303 323 312 314 238 388 +304 324 313 315 239 389 +305 325 314 316 240 390 +306 326 315 317 241 391 +307 327 316 318 242 392 +308 328 317 319 243 393 +309 329 318 319 244 394 +310 330 320 321 245 395 +311 331 320 322 246 396 +312 332 321 323 247 397 +313 333 322 324 248 398 +314 334 323 325 249 399 +315 335 324 326 250 400 +316 336 325 327 251 401 +317 337 326 328 252 402 +318 338 327 329 253 403 +319 339 328 329 254 404 +320 340 330 331 255 405 +321 341 330 332 256 406 +322 342 331 333 257 407 +323 343 332 334 258 408 +324 344 333 335 259 409 +325 345 334 336 260 410 +326 346 335 337 261 411 +327 347 336 338 262 412 +328 348 337 339 263 413 +329 349 338 339 264 414 +330 340 340 341 265 415 +331 341 340 342 266 416 +332 342 341 343 267 417 +333 343 342 344 268 418 +334 344 343 345 269 419 +335 345 344 346 270 420 +336 346 345 347 271 421 +337 347 346 348 272 422 +338 348 347 349 273 423 +339 349 348 349 274 424 +350 351 350 353 275 425 +350 354 351 352 276 426 +353 355 351 357 277 427 +350 358 352 353 278 428 +351 359 354 355 279 429 +352 360 354 356 280 430 +357 361 355 363 281 431 +352 364 356 358 282 432 +353 365 357 358 283 433 +354 366 359 360 284 434 +355 367 359 361 285 435 +356 368 360 362 286 436 +363 369 361 371 287 437 +356 372 362 364 288 438 +357 373 363 365 289 439 +358 374 364 365 290 440 +359 375 366 367 291 441 +360 376 366 368 292 442 +361 377 367 369 293 443 +362 378 368 370 294 444 +371 379 369 380 295 445 +362 381 370 372 296 446 +363 382 371 373 297 447 +364 383 372 374 298 448 +365 384 373 374 299 449 +366 385 375 376 300 450 +367 386 375 377 301 451 +368 387 376 378 302 452 +369 388 377 379 303 453 +370 389 378 380 304 454 +370 390 379 381 305 455 +371 391 380 382 306 456 +372 392 381 383 307 457 +373 393 382 384 308 458 +374 394 383 384 309 459 +375 395 385 386 310 460 +376 396 385 387 311 461 +377 397 386 388 312 462 +378 398 387 389 313 463 +379 399 388 390 314 464 +380 400 389 391 315 465 +381 401 390 392 316 466 +382 402 391 393 317 467 +383 403 392 394 318 468 +384 404 393 394 319 469 +385 405 395 396 320 470 +386 406 395 397 321 471 +387 407 396 398 322 472 +388 408 397 399 323 473 +389 409 398 400 324 474 +390 410 399 401 325 475 +391 411 400 402 326 476 +392 412 401 403 327 477 +393 413 402 404 328 478 +394 414 403 404 329 479 +395 415 405 406 330 480 +396 416 405 407 331 481 +397 417 406 408 332 482 +398 418 407 409 333 483 +399 419 408 410 334 484 +400 420 409 411 335 485 +401 421 410 412 336 486 +402 422 411 413 337 487 +403 423 412 414 338 488 +404 424 413 414 339 489 +405 415 415 416 340 490 +406 416 415 417 341 491 +407 417 416 418 342 492 +408 418 417 419 343 493 +409 419 418 420 344 494 +410 420 419 421 345 495 +411 421 420 422 346 496 +412 422 421 423 347 497 +413 423 422 424 348 498 +414 424 423 424 349 499 +425 426 425 428 350 500 +425 429 426 427 351 501 +428 430 426 432 352 502 +425 433 427 428 353 503 +426 434 429 430 354 504 +427 435 429 431 355 505 +432 436 430 438 356 506 +427 439 431 433 357 507 +428 440 432 433 358 508 +429 441 434 435 359 509 +430 442 434 436 360 510 +431 443 435 437 361 511 +438 444 436 446 362 512 +431 447 437 439 363 513 +432 448 438 440 364 514 +433 449 439 440 365 515 +434 450 441 442 366 516 +435 451 441 443 367 517 +436 452 442 444 368 518 +437 453 443 445 369 519 +446 454 444 455 370 520 +437 456 445 447 371 521 +438 457 446 448 372 522 +439 458 447 449 373 523 +440 459 448 449 374 524 +441 460 450 451 375 525 +442 461 450 452 376 526 +443 462 451 453 377 527 +444 463 452 454 378 528 +445 464 453 455 379 529 +445 465 454 456 380 530 +446 466 455 457 381 531 +447 467 456 458 382 532 +448 468 457 459 383 533 +449 469 458 459 384 534 +450 470 460 461 385 535 +451 471 460 462 386 536 +452 472 461 463 387 537 +453 473 462 464 388 538 +454 474 463 465 389 539 +455 475 464 466 390 540 +456 476 465 467 391 541 +457 477 466 468 392 542 +458 478 467 469 393 543 +459 479 468 469 394 544 +460 480 470 471 395 545 +461 481 470 472 396 546 +462 482 471 473 397 547 +463 483 472 474 398 548 +464 484 473 475 399 549 +465 485 474 476 400 550 +466 486 475 477 401 551 +467 487 476 478 402 552 +468 488 477 479 403 553 +469 489 478 479 404 554 +470 490 480 481 405 555 +471 491 480 482 406 556 +472 492 481 483 407 557 +473 493 482 484 408 558 +474 494 483 485 409 559 +475 495 484 486 410 560 +476 496 485 487 411 561 +477 497 486 488 412 562 +478 498 487 489 413 563 +479 499 488 489 414 564 +480 490 490 491 415 565 +481 491 490 492 416 566 +482 492 491 493 417 567 +483 493 492 494 418 568 +484 494 493 495 419 569 +485 495 494 496 420 570 +486 496 495 497 421 571 +487 497 496 498 422 572 +488 498 497 499 423 573 +489 499 498 499 424 574 +500 501 500 503 425 575 +500 504 501 502 426 576 +503 505 501 507 427 577 +500 508 502 503 428 578 +501 509 504 505 429 579 +502 510 504 506 430 580 +507 511 505 513 431 581 +502 514 506 508 432 582 +503 515 507 508 433 583 +504 516 509 510 434 584 +505 517 509 511 435 585 +506 518 510 512 436 586 +513 519 511 521 437 587 +506 522 512 514 438 588 +507 523 513 515 439 589 +508 524 514 515 440 590 +509 525 516 517 441 591 +510 526 516 518 442 592 +511 527 517 519 443 593 +512 528 518 520 444 594 +521 529 519 530 445 595 +512 531 520 522 446 596 +513 532 521 523 447 597 +514 533 522 524 448 598 +515 534 523 524 449 599 +516 535 525 526 450 600 +517 536 525 527 451 601 +518 537 526 528 452 602 +519 538 527 529 453 603 +520 539 528 530 454 604 +520 540 529 531 455 605 +521 541 530 532 456 606 +522 542 531 533 457 607 +523 543 532 534 458 608 +524 544 533 534 459 609 +525 545 535 536 460 610 +526 546 535 537 461 611 +527 547 536 538 462 612 +528 548 537 539 463 613 +529 549 538 540 464 614 +530 550 539 541 465 615 +531 551 540 542 466 616 +532 552 541 543 467 617 +533 553 542 544 468 618 +534 554 543 544 469 619 +535 555 545 546 470 620 +536 556 545 547 471 621 +537 557 546 548 472 622 +538 558 547 549 473 623 +539 559 548 550 474 624 +540 560 549 551 475 625 +541 561 550 552 476 626 +542 562 551 553 477 627 +543 563 552 554 478 628 +544 564 553 554 479 629 +545 565 555 556 480 630 +546 566 555 557 481 631 +547 567 556 558 482 632 +548 568 557 559 483 633 +549 569 558 560 484 634 +550 570 559 561 485 635 +551 571 560 562 486 636 +552 572 561 563 487 637 +553 573 562 564 488 638 +554 574 563 564 489 639 +555 565 565 566 490 640 +556 566 565 567 491 641 +557 567 566 568 492 642 +558 568 567 569 493 643 +559 569 568 570 494 644 +560 570 569 571 495 645 +561 571 570 572 496 646 +562 572 571 573 497 647 +563 573 572 574 498 648 +564 574 573 574 499 649 +575 576 575 578 500 650 +575 579 576 577 501 651 +578 580 576 582 502 652 +575 583 577 578 503 653 +576 584 579 580 504 654 +577 585 579 581 505 655 +582 586 580 588 506 656 +577 589 581 583 507 657 +578 590 582 583 508 658 +579 591 584 585 509 659 +580 592 584 586 510 660 +581 593 585 587 511 661 +588 594 586 596 512 662 +581 597 587 589 513 663 +582 598 588 590 514 664 +583 599 589 590 515 665 +584 600 591 592 516 666 +585 601 591 593 517 667 +586 602 592 594 518 668 +587 603 593 595 519 669 +596 604 594 605 520 670 +587 606 595 597 521 671 +588 607 596 598 522 672 +589 608 597 599 523 673 +590 609 598 599 524 674 +591 610 600 601 525 675 +592 611 600 602 526 676 +593 612 601 603 527 677 +594 613 602 604 528 678 +595 614 603 605 529 679 +595 615 604 606 530 680 +596 616 605 607 531 681 +597 617 606 608 532 682 +598 618 607 609 533 683 +599 619 608 609 534 684 +600 620 610 611 535 685 +601 621 610 612 536 686 +602 622 611 613 537 687 +603 623 612 614 538 688 +604 624 613 615 539 689 +605 625 614 616 540 690 +606 626 615 617 541 691 +607 627 616 618 542 692 +608 628 617 619 543 693 +609 629 618 619 544 694 +610 630 620 621 545 695 +611 631 620 622 546 696 +612 632 621 623 547 697 +613 633 622 624 548 698 +614 634 623 625 549 699 +615 635 624 626 550 700 +616 636 625 627 551 701 +617 637 626 628 552 702 +618 638 627 629 553 703 +619 639 628 629 554 704 +620 640 630 631 555 705 +621 641 630 632 556 706 +622 642 631 633 557 707 +623 643 632 634 558 708 +624 644 633 635 559 709 +625 645 634 636 560 710 +626 646 635 637 561 711 +627 647 636 638 562 712 +628 648 637 639 563 713 +629 649 638 639 564 714 +630 640 640 641 565 715 +631 641 640 642 566 716 +632 642 641 643 567 717 +633 643 642 644 568 718 +634 644 643 645 569 719 +635 645 644 646 570 720 +636 646 645 647 571 721 +637 647 646 648 572 722 +638 648 647 649 573 723 +639 649 648 649 574 724 +650 651 650 653 575 725 +650 654 651 652 576 726 +653 655 651 657 577 727 +650 658 652 653 578 728 +651 659 654 655 579 729 +652 660 654 656 580 730 +657 661 655 663 581 731 +652 664 656 658 582 732 +653 665 657 658 583 733 +654 666 659 660 584 734 +655 667 659 661 585 735 +656 668 660 662 586 736 +663 669 661 671 587 737 +656 672 662 664 588 738 +657 673 663 665 589 739 +658 674 664 665 590 740 +659 675 666 667 591 741 +660 676 666 668 592 742 +661 677 667 669 593 743 +662 678 668 670 594 744 +671 679 669 680 595 745 +662 681 670 672 596 746 +663 682 671 673 597 747 +664 683 672 674 598 748 +665 684 673 674 599 749 +666 685 675 676 600 750 +667 686 675 677 601 751 +668 687 676 678 602 752 +669 688 677 679 603 753 +670 689 678 680 604 754 +670 690 679 681 605 755 +671 691 680 682 606 756 +672 692 681 683 607 757 +673 693 682 684 608 758 +674 694 683 684 609 759 +675 695 685 686 610 760 +676 696 685 687 611 761 +677 697 686 688 612 762 +678 698 687 689 613 763 +679 699 688 690 614 764 +680 700 689 691 615 765 +681 701 690 692 616 766 +682 702 691 693 617 767 +683 703 692 694 618 768 +684 704 693 694 619 769 +685 705 695 696 620 770 +686 706 695 697 621 771 +687 707 696 698 622 772 +688 708 697 699 623 773 +689 709 698 700 624 774 +690 710 699 701 625 775 +691 711 700 702 626 776 +692 712 701 703 627 777 +693 713 702 704 628 778 +694 714 703 704 629 779 +695 715 705 706 630 780 +696 716 705 707 631 781 +697 717 706 708 632 782 +698 718 707 709 633 783 +699 719 708 710 634 784 +700 720 709 711 635 785 +701 721 710 712 636 786 +702 722 711 713 637 787 +703 723 712 714 638 788 +704 724 713 714 639 789 +705 715 715 716 640 790 +706 716 715 717 641 791 +707 717 716 718 642 792 +708 718 717 719 643 793 +709 719 718 720 644 794 +710 720 719 721 645 795 +711 721 720 722 646 796 +712 722 721 723 647 797 +713 723 722 724 648 798 +714 724 723 724 649 799 +725 726 725 728 650 800 +725 729 726 727 651 801 +728 730 726 732 652 802 +725 733 727 728 653 803 +726 734 729 730 654 804 +727 735 729 731 655 805 +732 736 730 738 656 806 +727 739 731 733 657 807 +728 740 732 733 658 808 +729 741 734 735 659 809 +730 742 734 736 660 810 +731 743 735 737 661 811 +738 744 736 746 662 812 +731 747 737 739 663 813 +732 748 738 740 664 814 +733 749 739 740 665 815 +734 750 741 742 666 816 +735 751 741 743 667 817 +736 752 742 744 668 818 +737 753 743 745 669 819 +746 754 744 755 670 820 +737 756 745 747 671 821 +738 757 746 748 672 822 +739 758 747 749 673 823 +740 759 748 749 674 824 +741 760 750 751 675 825 +742 761 750 752 676 826 +743 762 751 753 677 827 +744 763 752 754 678 828 +745 764 753 755 679 829 +745 765 754 756 680 830 +746 766 755 757 681 831 +747 767 756 758 682 832 +748 768 757 759 683 833 +749 769 758 759 684 834 +750 770 760 761 685 835 +751 771 760 762 686 836 +752 772 761 763 687 837 +753 773 762 764 688 838 +754 774 763 765 689 839 +755 775 764 766 690 840 +756 776 765 767 691 841 +757 777 766 768 692 842 +758 778 767 769 693 843 +759 779 768 769 694 844 +760 780 770 771 695 845 +761 781 770 772 696 846 +762 782 771 773 697 847 +763 783 772 774 698 848 +764 784 773 775 699 849 +765 785 774 776 700 850 +766 786 775 777 701 851 +767 787 776 778 702 852 +768 788 777 779 703 853 +769 789 778 779 704 854 +770 790 780 781 705 855 +771 791 780 782 706 856 +772 792 781 783 707 857 +773 793 782 784 708 858 +774 794 783 785 709 859 +775 795 784 786 710 860 +776 796 785 787 711 861 +777 797 786 788 712 862 +778 798 787 789 713 863 +779 799 788 789 714 864 +780 790 790 791 715 865 +781 791 790 792 716 866 +782 792 791 793 717 867 +783 793 792 794 718 868 +784 794 793 795 719 869 +785 795 794 796 720 870 +786 796 795 797 721 871 +787 797 796 798 722 872 +788 798 797 799 723 873 +789 799 798 799 724 874 +800 801 800 803 725 800 +800 804 801 802 726 801 +803 805 801 807 727 802 +800 808 802 803 728 803 +801 809 804 805 729 804 +802 810 804 806 730 805 +807 811 805 813 731 806 +802 814 806 808 732 807 +803 815 807 808 733 808 +804 816 809 810 734 809 +805 817 809 811 735 810 +806 818 810 812 736 811 +813 819 811 821 737 812 +806 822 812 814 738 813 +807 823 813 815 739 814 +808 824 814 815 740 815 +809 825 816 817 741 816 +810 826 816 818 742 817 +811 827 817 819 743 818 +812 828 818 820 744 819 +821 829 819 830 745 820 +812 831 820 822 746 821 +813 832 821 823 747 822 +814 833 822 824 748 823 +815 834 823 824 749 824 +816 835 825 826 750 825 +817 836 825 827 751 826 +818 837 826 828 752 827 +819 838 827 829 753 828 +820 839 828 830 754 829 +820 840 829 831 755 830 +821 841 830 832 756 831 +822 842 831 833 757 832 +823 843 832 834 758 833 +824 844 833 834 759 834 +825 845 835 836 760 835 +826 846 835 837 761 836 +827 847 836 838 762 837 +828 848 837 839 763 838 +829 849 838 840 764 839 +830 850 839 841 765 840 +831 851 840 842 766 841 +832 852 841 843 767 842 +833 853 842 844 768 843 +834 854 843 844 769 844 +835 855 845 846 770 845 +836 856 845 847 771 846 +837 857 846 848 772 847 +838 858 847 849 773 848 +839 859 848 850 774 849 +840 860 849 851 775 850 +841 861 850 852 776 851 +842 862 851 853 777 852 +843 863 852 854 778 853 +844 864 853 854 779 854 +845 865 855 856 780 855 +846 866 855 857 781 856 +847 867 856 858 782 857 +848 868 857 859 783 858 +849 869 858 860 784 859 +850 870 859 861 785 860 +851 871 860 862 786 861 +852 872 861 863 787 862 +853 873 862 864 788 863 +854 874 863 864 789 864 +855 865 865 866 790 865 +856 866 865 867 791 866 +857 867 866 868 792 867 +858 868 867 869 793 868 +859 869 868 870 794 869 +860 870 869 871 795 870 +861 871 870 872 796 871 +862 872 871 873 797 872 +863 873 872 874 798 873 +864 874 873 874 799 874 +146 +0 +1 +4 +7 +8 +11 +16 +21 +26 +27 +30 +35 +42 +49 +56 +63 +64 +67 +72 +79 +88 +97 +106 +115 +124 +125 +128 +133 +140 +149 +160 +171 +182 +193 +204 +215 +216 +219 +224 +231 +240 +251 +262 +273 +284 +295 +306 +307 +310 +315 +322 +331 +342 +353 +364 +375 +386 +397 +398 +401 +406 +413 +422 +433 +444 +455 +466 +477 +488 +489 +492 +497 +504 +513 +524 +535 +546 +557 +568 +579 +580 +583 +588 +595 +604 +615 +626 +637 +648 +659 +670 +671 +674 +679 +686 +695 +706 +717 +728 +739 +750 +761 +762 +765 +770 +777 +786 +797 +808 +819 +830 +841 +852 +853 +856 +861 +868 +877 +888 +899 +910 +921 +932 +943 +944 +947 +952 +959 +968 +979 +990 +1001 +1012 +1023 +1034 +1035 +1038 +1043 +1050 +1059 +1070 +1081 +1092 +1103 +1114 +1125 +146 +0 +1 +2 +5 +8 +9 +12 +17 +22 +27 +28 +31 +36 +43 +50 +57 +64 +65 +68 +73 +80 +89 +98 +107 +116 +125 +126 +129 +134 +141 +150 +161 +172 +183 +194 +205 +216 +217 +220 +225 +232 +241 +252 +263 +274 +285 +296 +307 +308 +311 +316 +323 +332 +343 +354 +365 +376 +387 +398 +399 +402 +407 +414 +423 +434 +445 +456 +467 +478 +489 +490 +493 +498 +505 +514 +525 +536 +547 +558 +569 +580 +581 +584 +589 +596 +605 +616 +627 +638 +649 +660 +671 +672 +675 +680 +687 +696 +707 +718 +729 +740 +751 +762 +763 +766 +771 +778 +787 +798 +809 +820 +831 +842 +853 +854 +857 +862 +869 +878 +889 +900 +911 +922 +933 +944 +945 +948 +953 +960 +969 +980 +991 +1002 +1013 +1024 +1035 +1036 +1039 +1044 +1051 +1060 +1071 +1082 +1093 +1104 +1115 +146 +0 +5 +6 +7 +22 +23 +24 +25 +26 +57 +58 +59 +60 +61 +62 +63 +116 +117 +118 +119 +120 +121 +122 +123 +124 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +660 +661 +662 +663 +664 +665 +666 +667 +668 +669 +670 +751 +752 +753 +754 +755 +756 +757 +758 +759 +760 +761 +842 +843 +844 +845 +846 +847 +848 +849 +850 +851 +852 +933 +934 +935 +936 +937 +938 +939 +940 +941 +942 +943 +1024 +1025 +1026 +1027 +1028 +1029 +1030 +1031 +1032 +1033 +1034 +1115 +1116 +1117 +1118 +1119 +1120 +1121 +1122 +1123 +1124 +1125 +91 +1035 +1036 +1037 +1038 +1039 +1040 +1041 +1042 +1043 +1044 +1045 +1046 +1047 +1048 +1049 +1050 +1051 +1052 +1053 +1054 +1055 +1056 +1057 +1058 +1059 +1060 +1061 +1062 +1063 +1064 +1065 +1066 +1067 +1068 +1069 +1070 +1071 +1072 +1073 +1074 +1075 +1076 +1077 +1078 +1079 +1080 +1081 +1082 +1083 +1084 +1085 +1086 +1087 +1088 +1089 +1090 +1091 +1092 +1093 +1094 +1095 +1096 +1097 +1098 +1099 +1100 +1101 +1102 +1103 +1104 +1105 +1106 +1107 +1108 +1109 +1110 +1111 +1112 +1113 +1114 +1115 +1116 +1117 +1118 +1119 +1120 +1121 +1122 +1123 +1124 +1125 diff --git a/benchmarks/cuda/LULESH/sedov21oct.lmesh b/benchmarks/cuda/LULESH/sedov21oct.lmesh new file mode 100755 index 0000000..469d625 --- /dev/null +++ b/benchmarks/cuda/LULESH/sedov21oct.lmesh @@ -0,0 +1,103466 @@ +31408 34446 +0.000000 0.000000 0.000000 +0.000000 0.000000 0.080000 +0.074142 0.000000 0.074142 +0.069100 0.069100 0.069100 +0.000000 0.074142 0.074142 +0.080000 0.000000 0.000000 +0.074142 0.074142 0.000000 +0.000000 0.080000 0.000000 +0.000000 0.000000 0.160000 +0.068284 0.000000 0.148284 +0.064058 0.064058 0.138200 +0.000000 0.068284 0.148284 +0.136569 0.000000 0.136569 +0.128116 0.059831 0.128116 +0.119663 0.119663 0.119663 +0.059831 0.128116 0.128116 +0.000000 0.136569 0.136569 +0.148284 0.000000 0.068284 +0.138200 0.064058 0.064058 +0.128116 0.128116 0.059831 +0.064058 0.138200 0.064058 +0.000000 0.148284 0.068284 +0.160000 0.000000 0.000000 +0.148284 0.068284 0.000000 +0.136569 0.136569 0.000000 +0.068284 0.148284 0.000000 +0.000000 0.160000 0.000000 +0.000000 0.000000 0.240000 +0.062426 0.000000 0.222426 +0.059016 0.059016 0.207300 +0.000000 0.062426 0.222426 +0.124853 0.000000 0.204853 +0.118031 0.055605 0.192173 +0.111210 0.111210 0.179494 +0.055605 0.118031 0.192173 +0.000000 0.124853 0.204853 +0.187279 0.000000 0.187279 +0.177047 0.052194 0.177047 +0.166814 0.104388 0.166814 +0.156582 0.156582 0.156582 +0.104388 0.166814 0.166814 +0.052194 0.177047 0.177047 +0.000000 0.187279 0.187279 +0.204853 0.000000 0.124853 +0.192173 0.055605 0.118031 +0.179494 0.111210 0.111210 +0.166814 0.166814 0.104388 +0.111210 0.179494 0.111210 +0.055605 0.192173 0.118031 +0.000000 0.204853 0.124853 +0.222426 0.000000 0.062426 +0.207300 0.059016 0.059016 +0.192173 0.118031 0.055605 +0.177047 0.177047 0.052194 +0.118031 0.192173 0.055605 +0.059016 0.207300 0.059016 +0.000000 0.222426 0.062426 +0.240000 0.000000 0.000000 +0.222426 0.062426 0.000000 +0.204853 0.124853 0.000000 +0.187279 0.187279 0.000000 +0.124853 0.204853 0.000000 +0.062426 0.222426 0.000000 +0.000000 0.240000 0.000000 +0.000000 0.000000 0.320000 +0.056569 0.000000 0.296569 +0.053973 0.053973 0.276400 +0.000000 0.056569 0.296569 +0.113137 0.000000 0.273137 +0.107947 0.051378 0.256231 +0.102757 0.102757 0.239325 +0.051378 0.107947 0.256231 +0.000000 0.113137 0.273137 +0.169706 0.000000 0.249706 +0.161920 0.048783 0.236062 +0.154135 0.097566 0.222419 +0.146349 0.146349 0.208776 +0.097566 0.154135 0.222419 +0.048783 0.161920 0.236062 +0.000000 0.169706 0.249706 +0.226274 0.000000 0.226274 +0.215894 0.046188 0.215894 +0.205513 0.092376 0.205513 +0.195133 0.138564 0.195133 +0.184752 0.184752 0.184752 +0.138564 0.195133 0.195133 +0.092376 0.205513 0.205513 +0.046188 0.215894 0.215894 +0.000000 0.226274 0.226274 +0.249706 0.000000 0.169706 +0.236062 0.048783 0.161920 +0.222419 0.097566 0.154135 +0.208776 0.146349 0.146349 +0.195133 0.195133 0.138564 +0.146349 0.208776 0.146349 +0.097566 0.222419 0.154135 +0.048783 0.236062 0.161920 +0.000000 0.249706 0.169706 +0.273137 0.000000 0.113137 +0.256231 0.051378 0.107947 +0.239325 0.102757 0.102757 +0.222419 0.154135 0.097566 +0.205513 0.205513 0.092376 +0.154135 0.222419 0.097566 +0.102757 0.239325 0.102757 +0.051378 0.256231 0.107947 +0.000000 0.273137 0.113137 +0.296569 0.000000 0.056569 +0.276400 0.053973 0.053973 +0.256231 0.107947 0.051378 +0.236062 0.161920 0.048783 +0.215894 0.215894 0.046188 +0.161920 0.236062 0.048783 +0.107947 0.256231 0.051378 +0.053973 0.276400 0.053973 +0.000000 0.296569 0.056569 +0.320000 0.000000 0.000000 +0.296569 0.056569 0.000000 +0.273137 0.113137 0.000000 +0.249706 0.169706 0.000000 +0.226274 0.226274 0.000000 +0.169706 0.249706 0.000000 +0.113137 0.273137 0.000000 +0.056569 0.296569 0.000000 +0.000000 0.320000 0.000000 +0.000000 0.000000 0.400000 +0.078036 0.000000 0.392314 +0.076592 0.076592 0.385055 +0.000000 0.078036 0.392314 +0.153073 0.000000 0.369552 +0.150552 0.072298 0.363465 +0.142963 0.142963 0.345142 +0.072298 0.150552 0.363465 +0.000000 0.153073 0.369552 +0.222228 0.000000 0.332588 +0.219250 0.065269 0.328130 +0.210116 0.130254 0.314460 +0.194261 0.194261 0.290732 +0.130254 0.210116 0.314460 +0.065269 0.219250 0.328130 +0.000000 0.222228 0.332588 +0.282843 0.000000 0.282843 +0.280086 0.055713 0.280086 +0.271439 0.112434 0.271439 +0.255735 0.170877 0.255735 +0.230940 0.230940 0.230940 +0.170877 0.255735 0.255735 +0.112434 0.271439 0.271439 +0.055713 0.280086 0.280086 +0.000000 0.282843 0.282843 +0.332588 0.000000 0.222228 +0.328130 0.065269 0.219250 +0.314460 0.130254 0.210116 +0.290732 0.194261 0.194261 +0.255735 0.255735 0.170877 +0.194261 0.290732 0.194261 +0.130254 0.314460 0.210116 +0.065269 0.328130 0.219250 +0.000000 0.332588 0.222228 +0.369552 0.000000 0.153073 +0.363465 0.072298 0.150552 +0.345142 0.142963 0.142963 +0.314460 0.210116 0.130254 +0.271439 0.271439 0.112434 +0.210116 0.314460 0.130254 +0.142963 0.345142 0.142963 +0.072298 0.363465 0.150552 +0.000000 0.369552 0.153073 +0.392314 0.000000 0.078036 +0.385055 0.076592 0.076592 +0.363465 0.150552 0.072298 +0.328130 0.219250 0.065269 +0.280086 0.280086 0.055713 +0.219250 0.328130 0.065269 +0.150552 0.363465 0.072298 +0.076592 0.385055 0.076592 +0.000000 0.392314 0.078036 +0.400000 0.000000 0.000000 +0.392314 0.078036 0.000000 +0.369552 0.153073 0.000000 +0.332588 0.222228 0.000000 +0.282843 0.282843 0.000000 +0.222228 0.332588 0.000000 +0.153073 0.369552 0.000000 +0.078036 0.392314 0.000000 +0.000000 0.400000 0.000000 +0.028341 0.000000 0.432406 +0.030456 0.030456 0.464675 +0.000000 0.028341 0.432406 +0.056561 0.000000 0.429626 +0.060784 0.030261 0.461700 +0.060400 0.060400 0.458783 +0.030261 0.060784 0.461700 +0.000000 0.056561 0.429626 +0.084365 0.027799 0.424132 +0.083843 0.055493 0.421508 +0.055493 0.083843 0.421508 +0.027799 0.084365 0.424132 +0.112155 0.000000 0.418568 +0.120541 0.029486 0.449865 +0.119817 0.058870 0.447164 +0.110140 0.081763 0.411050 +0.116929 0.116929 0.436386 +0.081763 0.110140 0.411050 +0.058870 0.119817 0.447164 +0.029486 0.120541 0.449865 +0.000000 0.112155 0.418568 +0.139290 0.000000 0.410336 +0.149717 0.028908 0.441052 +0.148853 0.057730 0.438506 +0.136883 0.080211 0.403246 +0.145398 0.114770 0.428328 +0.142809 0.142809 0.420701 +0.114770 0.145398 0.428328 +0.080211 0.136883 0.403246 +0.057730 0.148853 0.438506 +0.028908 0.149717 0.441052 +0.000000 0.139290 0.410336 +0.165526 0.026192 0.399616 +0.164616 0.052321 0.397419 +0.160970 0.104130 0.388617 +0.158231 0.129672 0.382003 +0.129672 0.158231 0.382003 +0.104130 0.160970 0.388617 +0.052321 0.164616 0.397419 +0.026192 0.165526 0.399616 +0.191658 0.000000 0.388645 +0.206046 0.027385 0.417819 +0.204977 0.054722 0.415653 +0.188679 0.076105 0.382604 +0.200688 0.109043 0.406954 +0.197453 0.135916 0.400396 +0.179661 0.150905 0.364317 +0.188763 0.188763 0.382773 +0.150905 0.179661 0.364317 +0.135916 0.197453 0.400396 +0.109043 0.200688 0.406954 +0.076105 0.188679 0.382604 +0.054722 0.204977 0.415653 +0.027385 0.206046 0.417819 +0.000000 0.191658 0.388645 +0.216667 0.000000 0.375278 +0.232958 0.026447 0.403496 +0.231831 0.052864 0.401544 +0.213522 0.073564 0.369831 +0.227294 0.105487 0.393685 +0.223861 0.131619 0.387738 +0.203942 0.146316 0.353238 +0.214583 0.183287 0.371669 +0.208700 0.208700 0.361478 +0.183287 0.214583 0.371669 +0.146316 0.203942 0.353238 +0.131619 0.223861 0.387738 +0.105487 0.227294 0.393685 +0.073564 0.213522 0.369831 +0.052864 0.231831 0.401544 +0.026447 0.232958 0.403496 +0.000000 0.216667 0.375278 +0.240390 0.023581 0.359770 +0.239318 0.047153 0.358164 +0.234986 0.094233 0.351681 +0.231695 0.117708 0.346756 +0.222749 0.164399 0.333367 +0.217035 0.187532 0.324816 +0.187532 0.217035 0.324816 +0.164399 0.222749 0.333367 +0.117708 0.231695 0.346756 +0.094233 0.234986 0.351681 +0.047153 0.239318 0.358164 +0.023581 0.240390 0.359770 +0.263797 0.000000 0.343786 +0.283705 0.024234 0.369732 +0.282552 0.048478 0.368228 +0.260572 0.067547 0.339584 +0.277879 0.097035 0.362140 +0.274315 0.121353 0.357495 +0.250612 0.135284 0.326604 +0.264561 0.170028 0.344783 +0.258283 0.194337 0.336602 +0.233074 0.202958 0.303748 +0.242661 0.242661 0.316242 +0.202958 0.233074 0.303748 +0.194337 0.258283 0.336602 +0.170028 0.264561 0.344783 +0.135284 0.250612 0.326604 +0.121353 0.274315 0.357495 +0.097035 0.277879 0.362140 +0.067547 0.260572 0.339584 +0.048478 0.282552 0.368228 +0.024234 0.283705 0.369732 +0.000000 0.263797 0.343786 +0.285717 0.000000 0.325797 +0.307322 0.022969 0.350433 +0.306198 0.045967 0.349152 +0.282574 0.064092 0.322214 +0.301635 0.092161 0.343949 +0.298138 0.115401 0.339962 +0.272794 0.128846 0.311062 +0.288503 0.162232 0.328975 +0.282251 0.185817 0.321845 +0.255311 0.194524 0.291126 +0.266523 0.233199 0.303911 +0.256882 0.256882 0.292918 +0.233199 0.266523 0.303911 +0.194524 0.255311 0.291126 +0.185817 0.282251 0.321845 +0.162232 0.288503 0.328975 +0.128846 0.272794 0.311062 +0.115401 0.298138 0.339962 +0.092161 0.301635 0.343949 +0.064092 0.282574 0.322214 +0.045967 0.306198 0.349152 +0.022969 0.307322 0.350433 +0.000000 0.285717 0.325797 +0.306084 0.020062 0.306084 +0.305094 0.040166 0.305094 +0.301057 0.080668 0.301057 +0.297950 0.101140 0.297950 +0.289327 0.142680 0.289327 +0.283683 0.163785 0.283683 +0.269323 0.206659 0.269323 +0.260408 0.228371 0.260408 +0.228371 0.260408 0.260408 +0.206659 0.269323 0.269323 +0.163785 0.283683 0.283683 +0.142680 0.289327 0.289327 +0.101140 0.297950 0.297950 +0.080668 0.301057 0.301057 +0.040166 0.305094 0.305094 +0.020062 0.306084 0.306084 +0.325797 0.000000 0.285717 +0.350433 0.022969 0.307322 +0.349152 0.045967 0.306198 +0.322214 0.064092 0.282574 +0.343949 0.092161 0.301635 +0.339962 0.115401 0.298138 +0.311062 0.128846 0.272794 +0.328975 0.162232 0.288503 +0.321845 0.185817 0.282251 +0.291126 0.194524 0.255311 +0.303911 0.233199 0.266523 +0.292918 0.256882 0.256882 +0.260408 0.260408 0.228371 +0.256882 0.292918 0.256882 +0.233199 0.303911 0.266523 +0.194524 0.291126 0.255311 +0.185817 0.321845 0.282251 +0.162232 0.328975 0.288503 +0.128846 0.311062 0.272794 +0.115401 0.339962 0.298138 +0.092161 0.343949 0.301635 +0.064092 0.322214 0.282574 +0.045967 0.349152 0.306198 +0.022969 0.350433 0.307322 +0.000000 0.325797 0.285717 +0.343786 0.000000 0.263797 +0.369732 0.024234 0.283705 +0.368228 0.048478 0.282552 +0.339584 0.067547 0.260572 +0.362140 0.097035 0.277879 +0.357495 0.121353 0.274315 +0.326604 0.135284 0.250612 +0.344783 0.170028 0.264561 +0.336602 0.194337 0.258283 +0.303748 0.202958 0.233074 +0.316242 0.242661 0.242661 +0.303911 0.266523 0.233199 +0.269323 0.269323 0.206659 +0.266523 0.303911 0.233199 +0.242661 0.316242 0.242661 +0.202958 0.303748 0.233074 +0.194337 0.336602 0.258283 +0.170028 0.344783 0.264561 +0.135284 0.326604 0.250612 +0.121353 0.357495 0.274315 +0.097035 0.362140 0.277879 +0.067547 0.339584 0.260572 +0.048478 0.368228 0.282552 +0.024234 0.369732 0.283705 +0.000000 0.343786 0.263797 +0.359770 0.023581 0.240390 +0.358164 0.047153 0.239318 +0.351681 0.094233 0.234986 +0.346756 0.117708 0.231695 +0.333367 0.164399 0.222749 +0.324816 0.187532 0.217035 +0.303748 0.233074 0.202958 +0.291126 0.255311 0.194524 +0.255311 0.291126 0.194524 +0.233074 0.303748 0.202958 +0.187532 0.324816 0.217035 +0.164399 0.333367 0.222749 +0.117708 0.346756 0.231695 +0.094233 0.351681 0.234986 +0.047153 0.358164 0.239318 +0.023581 0.359770 0.240390 +0.375278 0.000000 0.216667 +0.403496 0.026447 0.232958 +0.401544 0.052864 0.231831 +0.369831 0.073564 0.213522 +0.393685 0.105487 0.227294 +0.387738 0.131619 0.223861 +0.353238 0.146316 0.203942 +0.371669 0.183287 0.214583 +0.361478 0.208700 0.208700 +0.324816 0.217035 0.187532 +0.336602 0.258283 0.194337 +0.321845 0.282251 0.185817 +0.283683 0.283683 0.163785 +0.282251 0.321845 0.185817 +0.258283 0.336602 0.194337 +0.217035 0.324816 0.187532 +0.208700 0.361478 0.208700 +0.183287 0.371669 0.214583 +0.146316 0.353238 0.203942 +0.131619 0.387738 0.223861 +0.105487 0.393685 0.227294 +0.073564 0.369831 0.213522 +0.052864 0.401544 0.231831 +0.026447 0.403496 0.232958 +0.000000 0.375278 0.216667 +0.388645 0.000000 0.191658 +0.417819 0.027385 0.206046 +0.415653 0.054722 0.204977 +0.382604 0.076105 0.188679 +0.406954 0.109043 0.200688 +0.400396 0.135916 0.197453 +0.364317 0.150905 0.179661 +0.382773 0.188763 0.188763 +0.371669 0.214583 0.183287 +0.333367 0.222749 0.164399 +0.344783 0.264561 0.170028 +0.328975 0.288503 0.162232 +0.289327 0.289327 0.142680 +0.288503 0.328975 0.162232 +0.264561 0.344783 0.170028 +0.222749 0.333367 0.164399 +0.214583 0.371669 0.183287 +0.188763 0.382773 0.188763 +0.150905 0.364317 0.179661 +0.135916 0.400396 0.197453 +0.109043 0.406954 0.200688 +0.076105 0.382604 0.188679 +0.054722 0.415653 0.204977 +0.027385 0.417819 0.206046 +0.000000 0.388645 0.191658 +0.399616 0.026192 0.165526 +0.397419 0.052321 0.164616 +0.388617 0.104130 0.160970 +0.382003 0.129672 0.158231 +0.364317 0.179661 0.150905 +0.353238 0.203942 0.146316 +0.326604 0.250612 0.135284 +0.311062 0.272794 0.128846 +0.272794 0.311062 0.128846 +0.250612 0.326604 0.135284 +0.203942 0.353238 0.146316 +0.179661 0.364317 0.150905 +0.129672 0.382003 0.158231 +0.104130 0.388617 0.160970 +0.052321 0.397419 0.164616 +0.026192 0.399616 0.165526 +0.410336 0.000000 0.139290 +0.441052 0.028908 0.149717 +0.438506 0.057730 0.148853 +0.403246 0.080211 0.136883 +0.428328 0.114770 0.145398 +0.420701 0.142809 0.142809 +0.382003 0.158231 0.129672 +0.400396 0.197453 0.135916 +0.387738 0.223861 0.131619 +0.346756 0.231695 0.117708 +0.357495 0.274315 0.121353 +0.339962 0.298138 0.115401 +0.297950 0.297950 0.101140 +0.298138 0.339962 0.115401 +0.274315 0.357495 0.121353 +0.231695 0.346756 0.117708 +0.223861 0.387738 0.131619 +0.197453 0.400396 0.135916 +0.158231 0.382003 0.129672 +0.142809 0.420701 0.142809 +0.114770 0.428328 0.145398 +0.080211 0.403246 0.136883 +0.057730 0.438506 0.148853 +0.028908 0.441052 0.149717 +0.000000 0.410336 0.139290 +0.418568 0.000000 0.112155 +0.449865 0.029486 0.120541 +0.447164 0.058870 0.119817 +0.411050 0.081763 0.110140 +0.436386 0.116929 0.116929 +0.428328 0.145398 0.114770 +0.388617 0.160970 0.104130 +0.406954 0.200688 0.109043 +0.393685 0.227294 0.105487 +0.351681 0.234986 0.094233 +0.362140 0.277879 0.097035 +0.343949 0.301635 0.092161 +0.301057 0.301057 0.080668 +0.301635 0.343949 0.092161 +0.277879 0.362140 0.097035 +0.234986 0.351681 0.094233 +0.227294 0.393685 0.105487 +0.200688 0.406954 0.109043 +0.160970 0.388617 0.104130 +0.145398 0.428328 0.114770 +0.116929 0.436386 0.116929 +0.081763 0.411050 0.110140 +0.058870 0.447164 0.119817 +0.029486 0.449865 0.120541 +0.000000 0.418568 0.112155 +0.424132 0.027799 0.084365 +0.421508 0.055493 0.083843 +0.411050 0.110140 0.081763 +0.403246 0.136883 0.080211 +0.382604 0.188679 0.076105 +0.369831 0.213522 0.073564 +0.339584 0.260572 0.067547 +0.322214 0.282574 0.064092 +0.282574 0.322214 0.064092 +0.260572 0.339584 0.067547 +0.213522 0.369831 0.073564 +0.188679 0.382604 0.076105 +0.136883 0.403246 0.080211 +0.110140 0.411050 0.081763 +0.055493 0.421508 0.083843 +0.027799 0.424132 0.084365 +0.429626 0.000000 0.056561 +0.461700 0.030261 0.060784 +0.458783 0.060400 0.060400 +0.421508 0.083843 0.055493 +0.447164 0.119817 0.058870 +0.438506 0.148853 0.057730 +0.397419 0.164616 0.052321 +0.415653 0.204977 0.054722 +0.401544 0.231831 0.052864 +0.358164 0.239318 0.047153 +0.368228 0.282552 0.048478 +0.349152 0.306198 0.045967 +0.305094 0.305094 0.040166 +0.306198 0.349152 0.045967 +0.282552 0.368228 0.048478 +0.239318 0.358164 0.047153 +0.231831 0.401544 0.052864 +0.204977 0.415653 0.054722 +0.164616 0.397419 0.052321 +0.148853 0.438506 0.057730 +0.119817 0.447164 0.058870 +0.083843 0.421508 0.055493 +0.060400 0.458783 0.060400 +0.030261 0.461700 0.060784 +0.000000 0.429626 0.056561 +0.432406 0.000000 0.028341 +0.464675 0.030456 0.030456 +0.461700 0.060784 0.030261 +0.424132 0.084365 0.027799 +0.449865 0.120541 0.029486 +0.441052 0.149717 0.028908 +0.399616 0.165526 0.026192 +0.417819 0.206046 0.027385 +0.403496 0.232958 0.026447 +0.359770 0.240390 0.023581 +0.369732 0.283705 0.024234 +0.350433 0.307322 0.022969 +0.306084 0.306084 0.020062 +0.307322 0.350433 0.022969 +0.283705 0.369732 0.024234 +0.240390 0.359770 0.023581 +0.232958 0.403496 0.026447 +0.206046 0.417819 0.027385 +0.165526 0.399616 0.026192 +0.149717 0.441052 0.028908 +0.120541 0.449865 0.029486 +0.084365 0.424132 0.027799 +0.060784 0.461700 0.030261 +0.030456 0.464675 0.030456 +0.000000 0.432406 0.028341 +0.432406 0.028341 0.000000 +0.429626 0.056561 0.000000 +0.418568 0.112155 0.000000 +0.410336 0.139290 0.000000 +0.388645 0.191658 0.000000 +0.375278 0.216667 0.000000 +0.343786 0.263797 0.000000 +0.325797 0.285717 0.000000 +0.285717 0.325797 0.000000 +0.263797 0.343786 0.000000 +0.216667 0.375278 0.000000 +0.191658 0.388645 0.000000 +0.139290 0.410336 0.000000 +0.112155 0.418568 0.000000 +0.056561 0.429626 0.000000 +0.028341 0.432406 0.000000 +0.000000 0.000000 0.500000 +0.032702 0.000000 0.498929 +0.032632 0.032632 0.497866 +0.000000 0.032702 0.498929 +0.065263 0.000000 0.495722 +0.065126 0.032423 0.494679 +0.064714 0.064714 0.491553 +0.032423 0.065126 0.494679 +0.000000 0.065263 0.495722 +0.097545 0.000000 0.490393 +0.097344 0.032076 0.489383 +0.096742 0.064030 0.486355 +0.095740 0.095740 0.481319 +0.064030 0.096742 0.486355 +0.032076 0.097344 0.489383 +0.000000 0.097545 0.490393 +0.129410 0.000000 0.482963 +0.129151 0.031592 0.481998 +0.128376 0.063075 0.479105 +0.127085 0.094342 0.474288 +0.125281 0.125281 0.467557 +0.094342 0.127085 0.474288 +0.063075 0.128376 0.479105 +0.031592 0.129151 0.481998 +0.000000 0.129410 0.482963 +0.160720 0.000000 0.473465 +0.160411 0.030973 0.472556 +0.159485 0.061854 0.469828 +0.157942 0.092551 0.465283 +0.155783 0.122968 0.458923 +0.153009 0.153009 0.450751 +0.122968 0.155783 0.458923 +0.092551 0.157942 0.465283 +0.061854 0.159485 0.469828 +0.030973 0.160411 0.472556 +0.000000 0.160720 0.473465 +0.191342 0.000000 0.461940 +0.190992 0.030222 0.461095 +0.189942 0.060371 0.458560 +0.188190 0.090372 0.454332 +0.185735 0.120150 0.448404 +0.182574 0.149622 0.440772 +0.178703 0.178703 0.431428 +0.149622 0.182574 0.440772 +0.120150 0.185735 0.448404 +0.090372 0.188190 0.454332 +0.060371 0.189942 0.458560 +0.030222 0.190992 0.461095 +0.000000 0.191342 0.461940 +0.221144 0.000000 0.448436 +0.220763 0.029341 0.447664 +0.219619 0.058630 0.445343 +0.217707 0.087813 0.441466 +0.215023 0.116832 0.436023 +0.211557 0.145624 0.428995 +0.207302 0.174121 0.420366 +0.202246 0.202246 0.410114 +0.174121 0.207302 0.420366 +0.145624 0.211557 0.428995 +0.116832 0.215023 0.436023 +0.087813 0.217707 0.441466 +0.058630 0.219619 0.445343 +0.029341 0.220763 0.447664 +0.000000 0.221144 0.448436 +0.250000 0.000000 0.433013 +0.249598 0.028336 0.432317 +0.248391 0.056640 0.430225 +0.246371 0.084881 0.426728 +0.243529 0.113022 0.421805 +0.239851 0.141021 0.415433 +0.235318 0.168826 0.407582 +0.229911 0.196379 0.398217 +0.223607 0.223607 0.387298 +0.196379 0.229911 0.398217 +0.168826 0.235318 0.407582 +0.141021 0.239851 0.415433 +0.113022 0.243529 0.421805 +0.084881 0.246371 0.426728 +0.056640 0.248391 0.430225 +0.028336 0.249598 0.432317 +0.000000 0.250000 0.433013 +0.277785 0.000000 0.415735 +0.277374 0.027208 0.415119 +0.276136 0.054408 0.413266 +0.274062 0.081586 0.410163 +0.271138 0.108730 0.405786 +0.267341 0.135817 0.400103 +0.262645 0.162817 0.393075 +0.257018 0.189691 0.384655 +0.250425 0.216384 0.374787 +0.242826 0.242826 0.363415 +0.216384 0.250425 0.374787 +0.189691 0.257018 0.384655 +0.162817 0.262645 0.393075 +0.135817 0.267341 0.400103 +0.108730 0.271138 0.405786 +0.081586 0.274062 0.410163 +0.054408 0.276136 0.413266 +0.027208 0.277374 0.415119 +0.000000 0.277785 0.415735 +0.304381 0.000000 0.396677 +0.303970 0.025964 0.396141 +0.302734 0.051941 0.394531 +0.300660 0.077939 0.391828 +0.297728 0.103966 0.388007 +0.293909 0.130021 0.383030 +0.289167 0.156096 0.376850 +0.283459 0.182173 0.369411 +0.276732 0.208218 0.360644 +0.268931 0.234182 0.350478 +0.259994 0.259994 0.338831 +0.234182 0.268931 0.350478 +0.208218 0.276732 0.360644 +0.182173 0.283459 0.369411 +0.156096 0.289167 0.376850 +0.130021 0.293909 0.383030 +0.103966 0.297728 0.388007 +0.077939 0.300660 0.391828 +0.051941 0.302734 0.394531 +0.025964 0.303970 0.396141 +0.000000 0.304381 0.396677 +0.329673 0.000000 0.375920 +0.329273 0.024609 0.375464 +0.328070 0.049250 0.374092 +0.326047 0.073953 0.371785 +0.323180 0.098744 0.368516 +0.319434 0.123644 0.364245 +0.314763 0.148669 0.358918 +0.309110 0.173820 0.352473 +0.302411 0.199090 0.344834 +0.294589 0.224451 0.335915 +0.285560 0.249856 0.325619 +0.275231 0.275231 0.313841 +0.249856 0.285560 0.325619 +0.224451 0.294589 0.335915 +0.199090 0.302411 0.344834 +0.173820 0.309110 0.352473 +0.148669 0.314763 0.358918 +0.123644 0.319434 0.364245 +0.098744 0.323180 0.368516 +0.073953 0.326047 0.371785 +0.049250 0.328070 0.374092 +0.024609 0.329273 0.375464 +0.000000 0.329673 0.375920 +0.353553 0.000000 0.353553 +0.353174 0.023148 0.353174 +0.352031 0.046346 0.352031 +0.350107 0.069641 0.350107 +0.347373 0.093078 0.347373 +0.343788 0.116700 0.343788 +0.339299 0.140542 0.339299 +0.333839 0.164631 0.333839 +0.327327 0.188982 0.327327 +0.319669 0.213596 0.319669 +0.310757 0.238453 0.310757 +0.300470 0.263505 0.300470 +0.288675 0.288675 0.288675 +0.263505 0.300470 0.300470 +0.238453 0.310757 0.310757 +0.213596 0.319669 0.319669 +0.188982 0.327327 0.327327 +0.164631 0.333839 0.333839 +0.140542 0.339299 0.339299 +0.116700 0.343788 0.343788 +0.093078 0.347373 0.347373 +0.069641 0.350107 0.350107 +0.046346 0.352031 0.352031 +0.023148 0.353174 0.353174 +0.000000 0.353553 0.353553 +0.375920 0.000000 0.329673 +0.375464 0.024609 0.329273 +0.374092 0.049250 0.328070 +0.371785 0.073953 0.326047 +0.368516 0.098744 0.323180 +0.364245 0.123644 0.319434 +0.358918 0.148669 0.314763 +0.352473 0.173820 0.309110 +0.344834 0.199090 0.302411 +0.335915 0.224451 0.294589 +0.325619 0.249856 0.285560 +0.313841 0.275231 0.275231 +0.300470 0.300470 0.263505 +0.275231 0.313841 0.275231 +0.249856 0.325619 0.285560 +0.224451 0.335915 0.294589 +0.199090 0.344834 0.302411 +0.173820 0.352473 0.309110 +0.148669 0.358918 0.314763 +0.123644 0.364245 0.319434 +0.098744 0.368516 0.323180 +0.073953 0.371785 0.326047 +0.049250 0.374092 0.328070 +0.024609 0.375464 0.329273 +0.000000 0.375920 0.329673 +0.396677 0.000000 0.304381 +0.396141 0.025964 0.303970 +0.394531 0.051941 0.302734 +0.391828 0.077939 0.300660 +0.388007 0.103966 0.297728 +0.383030 0.130021 0.293909 +0.376850 0.156096 0.289167 +0.369411 0.182173 0.283459 +0.360644 0.208218 0.276732 +0.350478 0.234182 0.268931 +0.338831 0.259994 0.259994 +0.325619 0.285560 0.249856 +0.310757 0.310757 0.238453 +0.285560 0.325619 0.249856 +0.259994 0.338831 0.259994 +0.234182 0.350478 0.268931 +0.208218 0.360644 0.276732 +0.182173 0.369411 0.283459 +0.156096 0.376850 0.289167 +0.130021 0.383030 0.293909 +0.103966 0.388007 0.297728 +0.077939 0.391828 0.300660 +0.051941 0.394531 0.302734 +0.025964 0.396141 0.303970 +0.000000 0.396677 0.304381 +0.415735 0.000000 0.277785 +0.415119 0.027208 0.277374 +0.413266 0.054408 0.276136 +0.410163 0.081586 0.274062 +0.405786 0.108730 0.271138 +0.400103 0.135817 0.267341 +0.393075 0.162817 0.262645 +0.384655 0.189691 0.257018 +0.374787 0.216384 0.250425 +0.363415 0.242826 0.242826 +0.350478 0.268931 0.234182 +0.335915 0.294589 0.224451 +0.319669 0.319669 0.213596 +0.294589 0.335915 0.224451 +0.268931 0.350478 0.234182 +0.242826 0.363415 0.242826 +0.216384 0.374787 0.250425 +0.189691 0.384655 0.257018 +0.162817 0.393075 0.262645 +0.135817 0.400103 0.267341 +0.108730 0.405786 0.271138 +0.081586 0.410163 0.274062 +0.054408 0.413266 0.276136 +0.027208 0.415119 0.277374 +0.000000 0.415735 0.277785 +0.433013 0.000000 0.250000 +0.432317 0.028336 0.249598 +0.430225 0.056640 0.248391 +0.426728 0.084881 0.246371 +0.421805 0.113022 0.243529 +0.415433 0.141021 0.239851 +0.407582 0.168826 0.235318 +0.398217 0.196379 0.229911 +0.387298 0.223607 0.223607 +0.374787 0.250425 0.216384 +0.360644 0.276732 0.208218 +0.344834 0.302411 0.199090 +0.327327 0.327327 0.188982 +0.302411 0.344834 0.199090 +0.276732 0.360644 0.208218 +0.250425 0.374787 0.216384 +0.223607 0.387298 0.223607 +0.196379 0.398217 0.229911 +0.168826 0.407582 0.235318 +0.141021 0.415433 0.239851 +0.113022 0.421805 0.243529 +0.084881 0.426728 0.246371 +0.056640 0.430225 0.248391 +0.028336 0.432317 0.249598 +0.000000 0.433013 0.250000 +0.448436 0.000000 0.221144 +0.447664 0.029341 0.220763 +0.445343 0.058630 0.219619 +0.441466 0.087813 0.217707 +0.436023 0.116832 0.215023 +0.428995 0.145624 0.211557 +0.420366 0.174121 0.207302 +0.410114 0.202246 0.202246 +0.398217 0.229911 0.196379 +0.384655 0.257018 0.189691 +0.369411 0.283459 0.182173 +0.352473 0.309110 0.173820 +0.333839 0.333839 0.164631 +0.309110 0.352473 0.173820 +0.283459 0.369411 0.182173 +0.257018 0.384655 0.189691 +0.229911 0.398217 0.196379 +0.202246 0.410114 0.202246 +0.174121 0.420366 0.207302 +0.145624 0.428995 0.211557 +0.116832 0.436023 0.215023 +0.087813 0.441466 0.217707 +0.058630 0.445343 0.219619 +0.029341 0.447664 0.220763 +0.000000 0.448436 0.221144 +0.461940 0.000000 0.191342 +0.461095 0.030222 0.190992 +0.458560 0.060371 0.189942 +0.454332 0.090372 0.188190 +0.448404 0.120150 0.185735 +0.440772 0.149622 0.182574 +0.431428 0.178703 0.178703 +0.420366 0.207302 0.174121 +0.407582 0.235318 0.168826 +0.393075 0.262645 0.162817 +0.376850 0.289167 0.156096 +0.358918 0.314763 0.148669 +0.339299 0.339299 0.140542 +0.314763 0.358918 0.148669 +0.289167 0.376850 0.156096 +0.262645 0.393075 0.162817 +0.235318 0.407582 0.168826 +0.207302 0.420366 0.174121 +0.178703 0.431428 0.178703 +0.149622 0.440772 0.182574 +0.120150 0.448404 0.185735 +0.090372 0.454332 0.188190 +0.060371 0.458560 0.189942 +0.030222 0.461095 0.190992 +0.000000 0.461940 0.191342 +0.473465 0.000000 0.160720 +0.472556 0.030973 0.160411 +0.469828 0.061854 0.159485 +0.465283 0.092551 0.157942 +0.458923 0.122968 0.155783 +0.450751 0.153009 0.153009 +0.440772 0.182574 0.149622 +0.428995 0.211557 0.145624 +0.415433 0.239851 0.141021 +0.400103 0.267341 0.135817 +0.383030 0.293909 0.130021 +0.364245 0.319434 0.123644 +0.343788 0.343788 0.116700 +0.319434 0.364245 0.123644 +0.293909 0.383030 0.130021 +0.267341 0.400103 0.135817 +0.239851 0.415433 0.141021 +0.211557 0.428995 0.145624 +0.182574 0.440772 0.149622 +0.153009 0.450751 0.153009 +0.122968 0.458923 0.155783 +0.092551 0.465283 0.157942 +0.061854 0.469828 0.159485 +0.030973 0.472556 0.160411 +0.000000 0.473465 0.160720 +0.482963 0.000000 0.129410 +0.481998 0.031592 0.129151 +0.479105 0.063075 0.128376 +0.474288 0.094342 0.127085 +0.467557 0.125281 0.125281 +0.458923 0.155783 0.122968 +0.448404 0.185735 0.120150 +0.436023 0.215023 0.116832 +0.421805 0.243529 0.113022 +0.405786 0.271138 0.108730 +0.388007 0.297728 0.103966 +0.368516 0.323180 0.098744 +0.347373 0.347373 0.093078 +0.323180 0.368516 0.098744 +0.297728 0.388007 0.103966 +0.271138 0.405786 0.108730 +0.243529 0.421805 0.113022 +0.215023 0.436023 0.116832 +0.185735 0.448404 0.120150 +0.155783 0.458923 0.122968 +0.125281 0.467557 0.125281 +0.094342 0.474288 0.127085 +0.063075 0.479105 0.128376 +0.031592 0.481998 0.129151 +0.000000 0.482963 0.129410 +0.490393 0.000000 0.097545 +0.489383 0.032076 0.097344 +0.486355 0.064030 0.096742 +0.481319 0.095740 0.095740 +0.474288 0.127085 0.094342 +0.465283 0.157942 0.092551 +0.454332 0.188190 0.090372 +0.441466 0.217707 0.087813 +0.426728 0.246371 0.084881 +0.410163 0.274062 0.081586 +0.391828 0.300660 0.077939 +0.371785 0.326047 0.073953 +0.350107 0.350107 0.069641 +0.326047 0.371785 0.073953 +0.300660 0.391828 0.077939 +0.274062 0.410163 0.081586 +0.246371 0.426728 0.084881 +0.217707 0.441466 0.087813 +0.188190 0.454332 0.090372 +0.157942 0.465283 0.092551 +0.127085 0.474288 0.094342 +0.095740 0.481319 0.095740 +0.064030 0.486355 0.096742 +0.032076 0.489383 0.097344 +0.000000 0.490393 0.097545 +0.495722 0.000000 0.065263 +0.494679 0.032423 0.065126 +0.491553 0.064714 0.064714 +0.486355 0.096742 0.064030 +0.479105 0.128376 0.063075 +0.469828 0.159485 0.061854 +0.458560 0.189942 0.060371 +0.445343 0.219619 0.058630 +0.430225 0.248391 0.056640 +0.413266 0.276136 0.054408 +0.394531 0.302734 0.051941 +0.374092 0.328070 0.049250 +0.352031 0.352031 0.046346 +0.328070 0.374092 0.049250 +0.302734 0.394531 0.051941 +0.276136 0.413266 0.054408 +0.248391 0.430225 0.056640 +0.219619 0.445343 0.058630 +0.189942 0.458560 0.060371 +0.159485 0.469828 0.061854 +0.128376 0.479105 0.063075 +0.096742 0.486355 0.064030 +0.064714 0.491553 0.064714 +0.032423 0.494679 0.065126 +0.000000 0.495722 0.065263 +0.498929 0.000000 0.032702 +0.497866 0.032632 0.032632 +0.494679 0.065126 0.032423 +0.489383 0.097344 0.032076 +0.481998 0.129151 0.031592 +0.472556 0.160411 0.030973 +0.461095 0.190992 0.030222 +0.447664 0.220763 0.029341 +0.432317 0.249598 0.028336 +0.415119 0.277374 0.027208 +0.396141 0.303970 0.025964 +0.375464 0.329273 0.024609 +0.353174 0.353174 0.023148 +0.329273 0.375464 0.024609 +0.303970 0.396141 0.025964 +0.277374 0.415119 0.027208 +0.249598 0.432317 0.028336 +0.220763 0.447664 0.029341 +0.190992 0.461095 0.030222 +0.160411 0.472556 0.030973 +0.129151 0.481998 0.031592 +0.097344 0.489383 0.032076 +0.065126 0.494679 0.032423 +0.032632 0.497866 0.032632 +0.000000 0.498929 0.032702 +0.500000 0.000000 0.000000 +0.498929 0.032702 0.000000 +0.495722 0.065263 0.000000 +0.490393 0.097545 0.000000 +0.482963 0.129410 0.000000 +0.473465 0.160720 0.000000 +0.461940 0.191342 0.000000 +0.448436 0.221144 0.000000 +0.433013 0.250000 0.000000 +0.415735 0.277785 0.000000 +0.396677 0.304381 0.000000 +0.375920 0.329673 0.000000 +0.353553 0.353553 0.000000 +0.329673 0.375920 0.000000 +0.304381 0.396677 0.000000 +0.277785 0.415735 0.000000 +0.250000 0.433013 0.000000 +0.221144 0.448436 0.000000 +0.191342 0.461940 0.000000 +0.160720 0.473465 0.000000 +0.129410 0.482963 0.000000 +0.097545 0.490393 0.000000 +0.065263 0.495722 0.000000 +0.032702 0.498929 0.000000 +0.000000 0.500000 0.000000 +0.000000 0.000000 0.575000 +0.037607 0.000000 0.573769 +0.037527 0.037527 0.572546 +0.000000 0.037607 0.573769 +0.075053 0.000000 0.570081 +0.074895 0.037286 0.568881 +0.074421 0.074421 0.565286 +0.037286 0.074895 0.568881 +0.000000 0.075053 0.570081 +0.112177 0.000000 0.563952 +0.111946 0.036887 0.562790 +0.111253 0.073634 0.559308 +0.110101 0.110101 0.553516 +0.073634 0.111253 0.559308 +0.036887 0.111946 0.562790 +0.000000 0.112177 0.563952 +0.148821 0.000000 0.555407 +0.148524 0.036331 0.554298 +0.147632 0.072537 0.550970 +0.146148 0.108493 0.545431 +0.144074 0.144074 0.537690 +0.108493 0.146148 0.545431 +0.072537 0.147632 0.550970 +0.036331 0.148524 0.554298 +0.000000 0.148821 0.555407 +0.184828 0.000000 0.544485 +0.184473 0.035619 0.543439 +0.183408 0.071132 0.540302 +0.181634 0.106433 0.535076 +0.179151 0.141413 0.527762 +0.175961 0.175961 0.518363 +0.141413 0.179151 0.527762 +0.106433 0.181634 0.535076 +0.071132 0.183408 0.540302 +0.035619 0.184473 0.543439 +0.000000 0.184828 0.544485 +0.220043 0.000000 0.531231 +0.219641 0.034755 0.530259 +0.218433 0.069426 0.527344 +0.216419 0.103928 0.522481 +0.213595 0.138172 0.515665 +0.209960 0.172065 0.506888 +0.205509 0.205509 0.496142 +0.172065 0.209960 0.506888 +0.138172 0.213595 0.515665 +0.103928 0.216419 0.522481 +0.069426 0.218433 0.527344 +0.034755 0.219641 0.530259 +0.000000 0.220043 0.531231 +0.254316 0.000000 0.515702 +0.253878 0.033743 0.514813 +0.252562 0.067425 0.512144 +0.250363 0.100985 0.507686 +0.247276 0.134357 0.501426 +0.243291 0.167468 0.493345 +0.238397 0.200240 0.483421 +0.232583 0.232583 0.471631 +0.200240 0.238397 0.483421 +0.167468 0.243291 0.493345 +0.134357 0.247276 0.501426 +0.100985 0.250363 0.507686 +0.067425 0.252562 0.512144 +0.033743 0.253878 0.514813 +0.000000 0.254316 0.515702 +0.287500 0.000000 0.497965 +0.287038 0.032586 0.497164 +0.285649 0.065136 0.494759 +0.283327 0.097614 0.490737 +0.280059 0.129976 0.485076 +0.275828 0.162174 0.477748 +0.270615 0.194150 0.468720 +0.264397 0.225836 0.457949 +0.257148 0.257148 0.445393 +0.225836 0.264397 0.457949 +0.194150 0.270615 0.468720 +0.162174 0.275828 0.477748 +0.129976 0.280059 0.485076 +0.097614 0.283327 0.490737 +0.065136 0.285649 0.494759 +0.032586 0.287038 0.497164 +0.000000 0.287500 0.497965 +0.319453 0.000000 0.478095 +0.318980 0.031290 0.477387 +0.317556 0.062569 0.475256 +0.315171 0.093824 0.471687 +0.311808 0.125040 0.466654 +0.307442 0.156189 0.460119 +0.302041 0.187240 0.452037 +0.295571 0.218144 0.442353 +0.287989 0.248841 0.431005 +0.279250 0.279250 0.417928 +0.248841 0.287989 0.431005 +0.218144 0.295571 0.442353 +0.187240 0.302041 0.452037 +0.156189 0.307442 0.460119 +0.125040 0.311808 0.466654 +0.093824 0.315171 0.471687 +0.062569 0.317556 0.475256 +0.031290 0.318980 0.477387 +0.000000 0.319453 0.478095 +0.350038 0.000000 0.456178 +0.349566 0.029859 0.455563 +0.348144 0.059732 0.453710 +0.345759 0.089630 0.450602 +0.342387 0.119561 0.446208 +0.337996 0.149524 0.440484 +0.332542 0.179511 0.433378 +0.325977 0.209499 0.424822 +0.318242 0.239451 0.414741 +0.309271 0.269309 0.403050 +0.298993 0.298993 0.389655 +0.269309 0.309271 0.403050 +0.239451 0.318242 0.414741 +0.209499 0.325977 0.424822 +0.179511 0.332542 0.433378 +0.149524 0.337996 0.440484 +0.119561 0.342387 0.446208 +0.089630 0.345759 0.450602 +0.059732 0.348144 0.453710 +0.029859 0.349566 0.455563 +0.000000 0.350038 0.456178 +0.379124 0.000000 0.432308 +0.378664 0.028301 0.431784 +0.377280 0.056638 0.430206 +0.374954 0.085046 0.427553 +0.371657 0.113555 0.423794 +0.367349 0.142191 0.418881 +0.361977 0.170969 0.412756 +0.355477 0.199893 0.405344 +0.347773 0.228954 0.396559 +0.338778 0.258119 0.386302 +0.328394 0.287334 0.374461 +0.316515 0.316515 0.360917 +0.287334 0.328394 0.374461 +0.258119 0.338778 0.386302 +0.228954 0.347773 0.396559 +0.199893 0.355477 0.405344 +0.170969 0.361977 0.412756 +0.142191 0.367349 0.418881 +0.113555 0.371657 0.423794 +0.085046 0.374954 0.427553 +0.056638 0.377280 0.430206 +0.028301 0.378664 0.431784 +0.000000 0.379124 0.432308 +0.406586 0.000000 0.406586 +0.406150 0.026621 0.406150 +0.404836 0.053298 0.404836 +0.402623 0.080087 0.402623 +0.399479 0.107040 0.399479 +0.395357 0.134206 0.395357 +0.390194 0.161624 0.390194 +0.383915 0.189326 0.383915 +0.376426 0.217330 0.376426 +0.367620 0.245636 0.367620 +0.357371 0.274220 0.357371 +0.345541 0.303031 0.345541 +0.331976 0.331976 0.331976 +0.303031 0.345541 0.345541 +0.274220 0.357371 0.357371 +0.245636 0.367620 0.367620 +0.217330 0.376426 0.376426 +0.189326 0.383915 0.383915 +0.161624 0.390194 0.390194 +0.134206 0.395357 0.395357 +0.107040 0.399479 0.399479 +0.080087 0.402623 0.402623 +0.053298 0.404836 0.404836 +0.026621 0.406150 0.406150 +0.000000 0.406586 0.406586 +0.432308 0.000000 0.379124 +0.431784 0.028301 0.378664 +0.430206 0.056638 0.377280 +0.427553 0.085046 0.374954 +0.423794 0.113555 0.371657 +0.418881 0.142191 0.367349 +0.412756 0.170969 0.361977 +0.405344 0.199893 0.355477 +0.396559 0.228954 0.347773 +0.386302 0.258119 0.338778 +0.374461 0.287334 0.328394 +0.360917 0.316515 0.316515 +0.345541 0.345541 0.303031 +0.316515 0.360917 0.316515 +0.287334 0.374461 0.328394 +0.258119 0.386302 0.338778 +0.228954 0.396559 0.347773 +0.199893 0.405344 0.355477 +0.170969 0.412756 0.361977 +0.142191 0.418881 0.367349 +0.113555 0.423794 0.371657 +0.085046 0.427553 0.374954 +0.056638 0.430206 0.377280 +0.028301 0.431784 0.378664 +0.000000 0.432308 0.379124 +0.456178 0.000000 0.350038 +0.455563 0.029859 0.349566 +0.453710 0.059732 0.348144 +0.450602 0.089630 0.345759 +0.446208 0.119561 0.342387 +0.440484 0.149524 0.337996 +0.433378 0.179511 0.332542 +0.424822 0.209499 0.325977 +0.414741 0.239451 0.318242 +0.403050 0.269309 0.309271 +0.389655 0.298993 0.298993 +0.374461 0.328394 0.287334 +0.357371 0.357371 0.274220 +0.328394 0.374461 0.287334 +0.298993 0.389655 0.298993 +0.269309 0.403050 0.309271 +0.239451 0.414741 0.318242 +0.209499 0.424822 0.325977 +0.179511 0.433378 0.332542 +0.149524 0.440484 0.337996 +0.119561 0.446208 0.342387 +0.089630 0.450602 0.345759 +0.059732 0.453710 0.348144 +0.029859 0.455563 0.349566 +0.000000 0.456178 0.350038 +0.478095 0.000000 0.319453 +0.477387 0.031290 0.318980 +0.475256 0.062569 0.317556 +0.471687 0.093824 0.315171 +0.466654 0.125040 0.311808 +0.460119 0.156189 0.307442 +0.452037 0.187240 0.302041 +0.442353 0.218144 0.295571 +0.431005 0.248841 0.287989 +0.417928 0.279250 0.279250 +0.403050 0.309271 0.269309 +0.386302 0.338778 0.258119 +0.367620 0.367620 0.245636 +0.338778 0.386302 0.258119 +0.309271 0.403050 0.269309 +0.279250 0.417928 0.279250 +0.248841 0.431005 0.287989 +0.218144 0.442353 0.295571 +0.187240 0.452037 0.302041 +0.156189 0.460119 0.307442 +0.125040 0.466654 0.311808 +0.093824 0.471687 0.315171 +0.062569 0.475256 0.317556 +0.031290 0.477387 0.318980 +0.000000 0.478095 0.319453 +0.497965 0.000000 0.287500 +0.497164 0.032586 0.287038 +0.494759 0.065136 0.285649 +0.490737 0.097614 0.283327 +0.485076 0.129976 0.280059 +0.477748 0.162174 0.275828 +0.468720 0.194150 0.270615 +0.457949 0.225836 0.264397 +0.445393 0.257148 0.257148 +0.431005 0.287989 0.248841 +0.414741 0.318242 0.239451 +0.396559 0.347773 0.228954 +0.376426 0.376426 0.217330 +0.347773 0.396559 0.228954 +0.318242 0.414741 0.239451 +0.287989 0.431005 0.248841 +0.257148 0.445393 0.257148 +0.225836 0.457949 0.264397 +0.194150 0.468720 0.270615 +0.162174 0.477748 0.275828 +0.129976 0.485076 0.280059 +0.097614 0.490737 0.283327 +0.065136 0.494759 0.285649 +0.032586 0.497164 0.287038 +0.000000 0.497965 0.287500 +0.515702 0.000000 0.254316 +0.514813 0.033743 0.253878 +0.512144 0.067425 0.252562 +0.507686 0.100985 0.250363 +0.501426 0.134357 0.247276 +0.493345 0.167468 0.243291 +0.483421 0.200240 0.238397 +0.471631 0.232583 0.232583 +0.457949 0.264397 0.225836 +0.442353 0.295571 0.218144 +0.424822 0.325977 0.209499 +0.405344 0.355477 0.199893 +0.383915 0.383915 0.189326 +0.355477 0.405344 0.199893 +0.325977 0.424822 0.209499 +0.295571 0.442353 0.218144 +0.264397 0.457949 0.225836 +0.232583 0.471631 0.232583 +0.200240 0.483421 0.238397 +0.167468 0.493345 0.243291 +0.134357 0.501426 0.247276 +0.100985 0.507686 0.250363 +0.067425 0.512144 0.252562 +0.033743 0.514813 0.253878 +0.000000 0.515702 0.254316 +0.531231 0.000000 0.220043 +0.530259 0.034755 0.219641 +0.527344 0.069426 0.218433 +0.522481 0.103928 0.216419 +0.515665 0.138172 0.213595 +0.506888 0.172065 0.209960 +0.496142 0.205509 0.205509 +0.483421 0.238397 0.200240 +0.468720 0.270615 0.194150 +0.452037 0.302041 0.187240 +0.433378 0.332542 0.179511 +0.412756 0.361977 0.170969 +0.390194 0.390194 0.161624 +0.361977 0.412756 0.170969 +0.332542 0.433378 0.179511 +0.302041 0.452037 0.187240 +0.270615 0.468720 0.194150 +0.238397 0.483421 0.200240 +0.205509 0.496142 0.205509 +0.172065 0.506888 0.209960 +0.138172 0.515665 0.213595 +0.103928 0.522481 0.216419 +0.069426 0.527344 0.218433 +0.034755 0.530259 0.219641 +0.000000 0.531231 0.220043 +0.544485 0.000000 0.184828 +0.543439 0.035619 0.184473 +0.540302 0.071132 0.183408 +0.535076 0.106433 0.181634 +0.527762 0.141413 0.179151 +0.518363 0.175961 0.175961 +0.506888 0.209960 0.172065 +0.493345 0.243291 0.167468 +0.477748 0.275828 0.162174 +0.460119 0.307442 0.156189 +0.440484 0.337996 0.149524 +0.418881 0.367349 0.142191 +0.395357 0.395357 0.134206 +0.367349 0.418881 0.142191 +0.337996 0.440484 0.149524 +0.307442 0.460119 0.156189 +0.275828 0.477748 0.162174 +0.243291 0.493345 0.167468 +0.209960 0.506888 0.172065 +0.175961 0.518363 0.175961 +0.141413 0.527762 0.179151 +0.106433 0.535076 0.181634 +0.071132 0.540302 0.183408 +0.035619 0.543439 0.184473 +0.000000 0.544485 0.184828 +0.555407 0.000000 0.148821 +0.554298 0.036331 0.148524 +0.550970 0.072537 0.147632 +0.545431 0.108493 0.146148 +0.537690 0.144074 0.144074 +0.527762 0.179151 0.141413 +0.515665 0.213595 0.138172 +0.501426 0.247276 0.134357 +0.485076 0.280059 0.129976 +0.466654 0.311808 0.125040 +0.446208 0.342387 0.119561 +0.423794 0.371657 0.113555 +0.399479 0.399479 0.107040 +0.371657 0.423794 0.113555 +0.342387 0.446208 0.119561 +0.311808 0.466654 0.125040 +0.280059 0.485076 0.129976 +0.247276 0.501426 0.134357 +0.213595 0.515665 0.138172 +0.179151 0.527762 0.141413 +0.144074 0.537690 0.144074 +0.108493 0.545431 0.146148 +0.072537 0.550970 0.147632 +0.036331 0.554298 0.148524 +0.000000 0.555407 0.148821 +0.563952 0.000000 0.112177 +0.562790 0.036887 0.111946 +0.559308 0.073634 0.111253 +0.553516 0.110101 0.110101 +0.545431 0.146148 0.108493 +0.535076 0.181634 0.106433 +0.522481 0.216419 0.103928 +0.507686 0.250363 0.100985 +0.490737 0.283327 0.097614 +0.471687 0.315171 0.093824 +0.450602 0.345759 0.089630 +0.427553 0.374954 0.085046 +0.402623 0.402623 0.080087 +0.374954 0.427553 0.085046 +0.345759 0.450602 0.089630 +0.315171 0.471687 0.093824 +0.283327 0.490737 0.097614 +0.250363 0.507686 0.100985 +0.216419 0.522481 0.103928 +0.181634 0.535076 0.106433 +0.146148 0.545431 0.108493 +0.110101 0.553516 0.110101 +0.073634 0.559308 0.111253 +0.036887 0.562790 0.111946 +0.000000 0.563952 0.112177 +0.570081 0.000000 0.075053 +0.568881 0.037286 0.074895 +0.565286 0.074421 0.074421 +0.559308 0.111253 0.073634 +0.550970 0.147632 0.072537 +0.540302 0.183408 0.071132 +0.527344 0.218433 0.069426 +0.512144 0.252562 0.067425 +0.494759 0.285649 0.065136 +0.475256 0.317556 0.062569 +0.453710 0.348144 0.059732 +0.430206 0.377280 0.056638 +0.404836 0.404836 0.053298 +0.377280 0.430206 0.056638 +0.348144 0.453710 0.059732 +0.317556 0.475256 0.062569 +0.285649 0.494759 0.065136 +0.252562 0.512144 0.067425 +0.218433 0.527344 0.069426 +0.183408 0.540302 0.071132 +0.147632 0.550970 0.072537 +0.111253 0.559308 0.073634 +0.074421 0.565286 0.074421 +0.037286 0.568881 0.074895 +0.000000 0.570081 0.075053 +0.573769 0.000000 0.037607 +0.572546 0.037527 0.037527 +0.568881 0.074895 0.037286 +0.562790 0.111946 0.036887 +0.554298 0.148524 0.036331 +0.543439 0.184473 0.035619 +0.530259 0.219641 0.034755 +0.514813 0.253878 0.033743 +0.497164 0.287038 0.032586 +0.477387 0.318980 0.031290 +0.455563 0.349566 0.029859 +0.431784 0.378664 0.028301 +0.406150 0.406150 0.026621 +0.378664 0.431784 0.028301 +0.349566 0.455563 0.029859 +0.318980 0.477387 0.031290 +0.287038 0.497164 0.032586 +0.253878 0.514813 0.033743 +0.219641 0.530259 0.034755 +0.184473 0.543439 0.035619 +0.148524 0.554298 0.036331 +0.111946 0.562790 0.036887 +0.074895 0.568881 0.037286 +0.037527 0.572546 0.037527 +0.000000 0.573769 0.037607 +0.575000 0.000000 0.000000 +0.573769 0.037607 0.000000 +0.570081 0.075053 0.000000 +0.563952 0.112177 0.000000 +0.555407 0.148821 0.000000 +0.544485 0.184828 0.000000 +0.531231 0.220043 0.000000 +0.515702 0.254316 0.000000 +0.497965 0.287500 0.000000 +0.478095 0.319453 0.000000 +0.456178 0.350038 0.000000 +0.432308 0.379124 0.000000 +0.406586 0.406586 0.000000 +0.379124 0.432308 0.000000 +0.350038 0.456178 0.000000 +0.319453 0.478095 0.000000 +0.287500 0.497965 0.000000 +0.254316 0.515702 0.000000 +0.220043 0.531231 0.000000 +0.184828 0.544485 0.000000 +0.148821 0.555407 0.000000 +0.112177 0.563952 0.000000 +0.075053 0.570081 0.000000 +0.037607 0.573769 0.000000 +0.000000 0.575000 0.000000 +0.000000 0.000000 0.650000 +0.042512 0.000000 0.648608 +0.042421 0.042421 0.647226 +0.000000 0.042512 0.648608 +0.084842 0.000000 0.644439 +0.084663 0.042150 0.643083 +0.084128 0.084128 0.639019 +0.042150 0.084663 0.643083 +0.000000 0.084842 0.644439 +0.126809 0.000000 0.637510 +0.126548 0.041699 0.636197 +0.125765 0.083239 0.632261 +0.124462 0.124462 0.625714 +0.083239 0.125765 0.632261 +0.041699 0.126548 0.636197 +0.000000 0.126809 0.637510 +0.168232 0.000000 0.627852 +0.167896 0.041069 0.626597 +0.166888 0.081998 0.622836 +0.165211 0.122644 0.616574 +0.162866 0.162866 0.607824 +0.122644 0.165211 0.616574 +0.081998 0.166888 0.622836 +0.041069 0.167896 0.626597 +0.000000 0.168232 0.627852 +0.208936 0.000000 0.615505 +0.208534 0.040265 0.614323 +0.207331 0.080410 0.610777 +0.205325 0.120316 0.604868 +0.202518 0.159858 0.596600 +0.198912 0.198912 0.585976 +0.159858 0.202518 0.596600 +0.120316 0.205325 0.604868 +0.080410 0.207331 0.610777 +0.040265 0.208534 0.614323 +0.000000 0.208936 0.615505 +0.248744 0.000000 0.600522 +0.248289 0.039288 0.599424 +0.246924 0.078482 0.596128 +0.244647 0.117484 0.590631 +0.241456 0.156194 0.582926 +0.237346 0.194509 0.573004 +0.232314 0.232314 0.560857 +0.194509 0.237346 0.573004 +0.156194 0.241456 0.582926 +0.117484 0.244647 0.590631 +0.078482 0.246924 0.596128 +0.039288 0.248289 0.599424 +0.000000 0.248744 0.600522 +0.287488 0.000000 0.582967 +0.286992 0.038144 0.581963 +0.285504 0.076220 0.578945 +0.283019 0.114157 0.573906 +0.279529 0.151881 0.566829 +0.275024 0.189312 0.557694 +0.269492 0.226358 0.546476 +0.262919 0.262919 0.533148 +0.226358 0.269492 0.546476 +0.189312 0.275024 0.557694 +0.151881 0.279529 0.566829 +0.114157 0.283019 0.573906 +0.076220 0.285504 0.578945 +0.038144 0.286992 0.581963 +0.000000 0.287488 0.582967 +0.325000 0.000000 0.562917 +0.324478 0.036836 0.562012 +0.322908 0.073632 0.559293 +0.320283 0.110346 0.554746 +0.316588 0.146929 0.548347 +0.311806 0.183327 0.540063 +0.305913 0.219474 0.529857 +0.298884 0.255292 0.517682 +0.290689 0.290689 0.503488 +0.255292 0.298884 0.517682 +0.219474 0.305913 0.529857 +0.183327 0.311806 0.540063 +0.146929 0.316588 0.548347 +0.110346 0.320283 0.554746 +0.073632 0.322908 0.559293 +0.036836 0.324478 0.562012 +0.000000 0.325000 0.562917 +0.361121 0.000000 0.540455 +0.360586 0.035371 0.539654 +0.358976 0.070730 0.537246 +0.356281 0.106062 0.533212 +0.352479 0.141349 0.527522 +0.347543 0.176562 0.520135 +0.341438 0.211662 0.510998 +0.334123 0.246598 0.500051 +0.325552 0.281299 0.487224 +0.315674 0.315674 0.472440 +0.281299 0.325552 0.487224 +0.246598 0.334123 0.500051 +0.211662 0.341438 0.510998 +0.176562 0.347543 0.520135 +0.141349 0.352479 0.527522 +0.106062 0.356281 0.533212 +0.070730 0.358976 0.537246 +0.035371 0.360586 0.539654 +0.000000 0.361121 0.540455 +0.395695 0.000000 0.515680 +0.395161 0.033754 0.514984 +0.393554 0.067523 0.512890 +0.390858 0.101321 0.509376 +0.387046 0.135156 0.504409 +0.382082 0.169027 0.497939 +0.375918 0.202925 0.489905 +0.368496 0.236825 0.480234 +0.359752 0.270684 0.468838 +0.349611 0.304436 0.455621 +0.337992 0.337992 0.440480 +0.304436 0.349611 0.455621 +0.270684 0.359752 0.468838 +0.236825 0.368496 0.480234 +0.202925 0.375918 0.489905 +0.169027 0.382082 0.497939 +0.135156 0.387046 0.504409 +0.101321 0.390858 0.509376 +0.067523 0.393554 0.512890 +0.033754 0.395161 0.514984 +0.000000 0.395695 0.515680 +0.428575 0.000000 0.488696 +0.428055 0.031992 0.488104 +0.426491 0.064025 0.486319 +0.423861 0.096139 0.483321 +0.420134 0.128367 0.479071 +0.415264 0.160738 0.473518 +0.409191 0.193269 0.466593 +0.401844 0.225967 0.458215 +0.393135 0.258817 0.448284 +0.382966 0.291786 0.436689 +0.371228 0.324813 0.423304 +0.357800 0.357800 0.407993 +0.324813 0.371228 0.423304 +0.291786 0.382966 0.436689 +0.258817 0.393135 0.448284 +0.225967 0.401844 0.458215 +0.193269 0.409191 0.466593 +0.160738 0.415264 0.473518 +0.128367 0.420134 0.479071 +0.096139 0.423861 0.483321 +0.064025 0.426491 0.486319 +0.031992 0.428055 0.488104 +0.000000 0.428575 0.488696 +0.459619 0.000000 0.459619 +0.459127 0.030093 0.459127 +0.457641 0.060250 0.457641 +0.455139 0.090533 0.455139 +0.451585 0.121002 0.451585 +0.446925 0.151711 0.446925 +0.441089 0.182705 0.441089 +0.433990 0.214020 0.433990 +0.425525 0.245677 0.425525 +0.415570 0.277675 0.415570 +0.403985 0.309988 0.403985 +0.390611 0.342557 0.390611 +0.375278 0.375278 0.375278 +0.342557 0.390611 0.390611 +0.309988 0.403985 0.403985 +0.277675 0.415570 0.415570 +0.245677 0.425525 0.425525 +0.214020 0.433990 0.433990 +0.182705 0.441089 0.441089 +0.151711 0.446925 0.446925 +0.121002 0.451585 0.451585 +0.090533 0.455139 0.455139 +0.060250 0.457641 0.457641 +0.030093 0.459127 0.459127 +0.000000 0.459619 0.459619 +0.488696 0.000000 0.428575 +0.488104 0.031992 0.428055 +0.486319 0.064025 0.426491 +0.483321 0.096139 0.423861 +0.479071 0.128367 0.420134 +0.473518 0.160738 0.415264 +0.466593 0.193269 0.409191 +0.458215 0.225967 0.401844 +0.448284 0.258817 0.393135 +0.436689 0.291786 0.382966 +0.423304 0.324813 0.371228 +0.407993 0.357800 0.357800 +0.390611 0.390611 0.342557 +0.357800 0.407993 0.357800 +0.324813 0.423304 0.371228 +0.291786 0.436689 0.382966 +0.258817 0.448284 0.393135 +0.225967 0.458215 0.401844 +0.193269 0.466593 0.409191 +0.160738 0.473518 0.415264 +0.128367 0.479071 0.420134 +0.096139 0.483321 0.423861 +0.064025 0.486319 0.426491 +0.031992 0.488104 0.428055 +0.000000 0.488696 0.428575 +0.515680 0.000000 0.395695 +0.514984 0.033754 0.395161 +0.512890 0.067523 0.393554 +0.509376 0.101321 0.390858 +0.504409 0.135156 0.387046 +0.497939 0.169027 0.382082 +0.489905 0.202925 0.375918 +0.480234 0.236825 0.368496 +0.468838 0.270684 0.359752 +0.455621 0.304436 0.349611 +0.440480 0.337992 0.337992 +0.423304 0.371228 0.324813 +0.403985 0.403985 0.309988 +0.371228 0.423304 0.324813 +0.337992 0.440480 0.337992 +0.304436 0.455621 0.349611 +0.270684 0.468838 0.359752 +0.236825 0.480234 0.368496 +0.202925 0.489905 0.375918 +0.169027 0.497939 0.382082 +0.135156 0.504409 0.387046 +0.101321 0.509376 0.390858 +0.067523 0.512890 0.393554 +0.033754 0.514984 0.395161 +0.000000 0.515680 0.395695 +0.540455 0.000000 0.361121 +0.539654 0.035371 0.360586 +0.537246 0.070730 0.358976 +0.533212 0.106062 0.356281 +0.527522 0.141349 0.352479 +0.520135 0.176562 0.347543 +0.510998 0.211662 0.341438 +0.500051 0.246598 0.334123 +0.487224 0.281299 0.325552 +0.472440 0.315674 0.315674 +0.455621 0.349611 0.304436 +0.436689 0.382966 0.291786 +0.415570 0.415570 0.277675 +0.382966 0.436689 0.291786 +0.349611 0.455621 0.304436 +0.315674 0.472440 0.315674 +0.281299 0.487224 0.325552 +0.246598 0.500051 0.334123 +0.211662 0.510998 0.341438 +0.176562 0.520135 0.347543 +0.141349 0.527522 0.352479 +0.106062 0.533212 0.356281 +0.070730 0.537246 0.358976 +0.035371 0.539654 0.360586 +0.000000 0.540455 0.361121 +0.562917 0.000000 0.325000 +0.562012 0.036836 0.324478 +0.559293 0.073632 0.322908 +0.554746 0.110346 0.320283 +0.548347 0.146929 0.316588 +0.540063 0.183327 0.311806 +0.529857 0.219474 0.305913 +0.517682 0.255292 0.298884 +0.503488 0.290689 0.290689 +0.487224 0.325552 0.281299 +0.468838 0.359752 0.270684 +0.448284 0.393135 0.258817 +0.425525 0.425525 0.245677 +0.393135 0.448284 0.258817 +0.359752 0.468838 0.270684 +0.325552 0.487224 0.281299 +0.290689 0.503488 0.290689 +0.255292 0.517682 0.298884 +0.219474 0.529857 0.305913 +0.183327 0.540063 0.311806 +0.146929 0.548347 0.316588 +0.110346 0.554746 0.320283 +0.073632 0.559293 0.322908 +0.036836 0.562012 0.324478 +0.000000 0.562917 0.325000 +0.582967 0.000000 0.287488 +0.581963 0.038144 0.286992 +0.578945 0.076220 0.285504 +0.573906 0.114157 0.283019 +0.566829 0.151881 0.279529 +0.557694 0.189312 0.275024 +0.546476 0.226358 0.269492 +0.533148 0.262919 0.262919 +0.517682 0.298884 0.255292 +0.500051 0.334123 0.246598 +0.480234 0.368496 0.236825 +0.458215 0.401844 0.225967 +0.433990 0.433990 0.214020 +0.401844 0.458215 0.225967 +0.368496 0.480234 0.236825 +0.334123 0.500051 0.246598 +0.298884 0.517682 0.255292 +0.262919 0.533148 0.262919 +0.226358 0.546476 0.269492 +0.189312 0.557694 0.275024 +0.151881 0.566829 0.279529 +0.114157 0.573906 0.283019 +0.076220 0.578945 0.285504 +0.038144 0.581963 0.286992 +0.000000 0.582967 0.287488 +0.600522 0.000000 0.248744 +0.599424 0.039288 0.248289 +0.596128 0.078482 0.246924 +0.590631 0.117484 0.244647 +0.582926 0.156194 0.241456 +0.573004 0.194509 0.237346 +0.560857 0.232314 0.232314 +0.546476 0.269492 0.226358 +0.529857 0.305913 0.219474 +0.510998 0.341438 0.211662 +0.489905 0.375918 0.202925 +0.466593 0.409191 0.193269 +0.441089 0.441089 0.182705 +0.409191 0.466593 0.193269 +0.375918 0.489905 0.202925 +0.341438 0.510998 0.211662 +0.305913 0.529857 0.219474 +0.269492 0.546476 0.226358 +0.232314 0.560857 0.232314 +0.194509 0.573004 0.237346 +0.156194 0.582926 0.241456 +0.117484 0.590631 0.244647 +0.078482 0.596128 0.246924 +0.039288 0.599424 0.248289 +0.000000 0.600522 0.248744 +0.615505 0.000000 0.208936 +0.614323 0.040265 0.208534 +0.610777 0.080410 0.207331 +0.604868 0.120316 0.205325 +0.596600 0.159858 0.202518 +0.585976 0.198912 0.198912 +0.573004 0.237346 0.194509 +0.557694 0.275024 0.189312 +0.540063 0.311806 0.183327 +0.520135 0.347543 0.176562 +0.497939 0.382082 0.169027 +0.473518 0.415264 0.160738 +0.446925 0.446925 0.151711 +0.415264 0.473518 0.160738 +0.382082 0.497939 0.169027 +0.347543 0.520135 0.176562 +0.311806 0.540063 0.183327 +0.275024 0.557694 0.189312 +0.237346 0.573004 0.194509 +0.198912 0.585976 0.198912 +0.159858 0.596600 0.202518 +0.120316 0.604868 0.205325 +0.080410 0.610777 0.207331 +0.040265 0.614323 0.208534 +0.000000 0.615505 0.208936 +0.627852 0.000000 0.168232 +0.626597 0.041069 0.167896 +0.622836 0.081998 0.166888 +0.616574 0.122644 0.165211 +0.607824 0.162866 0.162866 +0.596600 0.202518 0.159858 +0.582926 0.241456 0.156194 +0.566829 0.279529 0.151881 +0.548347 0.316588 0.146929 +0.527522 0.352479 0.141349 +0.504409 0.387046 0.135156 +0.479071 0.420134 0.128367 +0.451585 0.451585 0.121002 +0.420134 0.479071 0.128367 +0.387046 0.504409 0.135156 +0.352479 0.527522 0.141349 +0.316588 0.548347 0.146929 +0.279529 0.566829 0.151881 +0.241456 0.582926 0.156194 +0.202518 0.596600 0.159858 +0.162866 0.607824 0.162866 +0.122644 0.616574 0.165211 +0.081998 0.622836 0.166888 +0.041069 0.626597 0.167896 +0.000000 0.627852 0.168232 +0.637510 0.000000 0.126809 +0.636197 0.041699 0.126548 +0.632261 0.083239 0.125765 +0.625714 0.124462 0.124462 +0.616574 0.165211 0.122644 +0.604868 0.205325 0.120316 +0.590631 0.244647 0.117484 +0.573906 0.283019 0.114157 +0.554746 0.320283 0.110346 +0.533212 0.356281 0.106062 +0.509376 0.390858 0.101321 +0.483321 0.423861 0.096139 +0.455139 0.455139 0.090533 +0.423861 0.483321 0.096139 +0.390858 0.509376 0.101321 +0.356281 0.533212 0.106062 +0.320283 0.554746 0.110346 +0.283019 0.573906 0.114157 +0.244647 0.590631 0.117484 +0.205325 0.604868 0.120316 +0.165211 0.616574 0.122644 +0.124462 0.625714 0.124462 +0.083239 0.632261 0.125765 +0.041699 0.636197 0.126548 +0.000000 0.637510 0.126809 +0.644439 0.000000 0.084842 +0.643083 0.042150 0.084663 +0.639019 0.084128 0.084128 +0.632261 0.125765 0.083239 +0.622836 0.166888 0.081998 +0.610777 0.207331 0.080410 +0.596128 0.246924 0.078482 +0.578945 0.285504 0.076220 +0.559293 0.322908 0.073632 +0.537246 0.358976 0.070730 +0.512890 0.393554 0.067523 +0.486319 0.426491 0.064025 +0.457641 0.457641 0.060250 +0.426491 0.486319 0.064025 +0.393554 0.512890 0.067523 +0.358976 0.537246 0.070730 +0.322908 0.559293 0.073632 +0.285504 0.578945 0.076220 +0.246924 0.596128 0.078482 +0.207331 0.610777 0.080410 +0.166888 0.622836 0.081998 +0.125765 0.632261 0.083239 +0.084128 0.639019 0.084128 +0.042150 0.643083 0.084663 +0.000000 0.644439 0.084842 +0.648608 0.000000 0.042512 +0.647226 0.042421 0.042421 +0.643083 0.084663 0.042150 +0.636197 0.126548 0.041699 +0.626597 0.167896 0.041069 +0.614323 0.208534 0.040265 +0.599424 0.248289 0.039288 +0.581963 0.286992 0.038144 +0.562012 0.324478 0.036836 +0.539654 0.360586 0.035371 +0.514984 0.395161 0.033754 +0.488104 0.428055 0.031992 +0.459127 0.459127 0.030093 +0.428055 0.488104 0.031992 +0.395161 0.514984 0.033754 +0.360586 0.539654 0.035371 +0.324478 0.562012 0.036836 +0.286992 0.581963 0.038144 +0.248289 0.599424 0.039288 +0.208534 0.614323 0.040265 +0.167896 0.626597 0.041069 +0.126548 0.636197 0.041699 +0.084663 0.643083 0.042150 +0.042421 0.647226 0.042421 +0.000000 0.648608 0.042512 +0.650000 0.000000 0.000000 +0.648608 0.042512 0.000000 +0.644439 0.084842 0.000000 +0.637510 0.126809 0.000000 +0.627852 0.168232 0.000000 +0.615505 0.208936 0.000000 +0.600522 0.248744 0.000000 +0.582967 0.287488 0.000000 +0.562917 0.325000 0.000000 +0.540455 0.361121 0.000000 +0.515680 0.395695 0.000000 +0.488696 0.428575 0.000000 +0.459619 0.459619 0.000000 +0.428575 0.488696 0.000000 +0.395695 0.515680 0.000000 +0.361121 0.540455 0.000000 +0.325000 0.562917 0.000000 +0.287488 0.582967 0.000000 +0.248744 0.600522 0.000000 +0.208936 0.615505 0.000000 +0.168232 0.627852 0.000000 +0.126809 0.637510 0.000000 +0.084842 0.644439 0.000000 +0.042512 0.648608 0.000000 +0.000000 0.650000 0.000000 +0.000000 0.000000 0.725000 +0.047417 0.000000 0.723448 +0.047316 0.047316 0.721905 +0.000000 0.047417 0.723448 +0.094631 0.000000 0.718798 +0.094432 0.047013 0.717285 +0.093836 0.093836 0.712752 +0.047013 0.094432 0.717285 +0.000000 0.094631 0.718798 +0.141440 0.000000 0.711069 +0.141149 0.046510 0.709605 +0.140276 0.092843 0.705215 +0.138823 0.138823 0.697912 +0.092843 0.140276 0.705215 +0.046510 0.141149 0.709605 +0.000000 0.141440 0.711069 +0.187644 0.000000 0.700296 +0.187269 0.045808 0.698897 +0.186145 0.091459 0.694702 +0.184273 0.136796 0.687717 +0.181658 0.181658 0.677957 +0.136796 0.184273 0.687717 +0.091459 0.186145 0.694702 +0.045808 0.187269 0.698897 +0.000000 0.187644 0.700296 +0.233044 0.000000 0.686524 +0.232596 0.044911 0.685206 +0.231254 0.089688 0.681251 +0.229016 0.134198 0.674661 +0.225886 0.178304 0.665438 +0.221863 0.221863 0.653589 +0.178304 0.225886 0.665438 +0.134198 0.229016 0.674661 +0.089688 0.231254 0.681251 +0.044911 0.232596 0.685206 +0.000000 0.233044 0.686524 +0.277445 0.000000 0.669813 +0.276938 0.043822 0.668588 +0.275416 0.087537 0.664912 +0.272876 0.131040 0.658781 +0.269316 0.174217 0.650186 +0.264732 0.216952 0.639120 +0.259120 0.259120 0.625571 +0.216952 0.264732 0.639120 +0.174217 0.269316 0.650186 +0.131040 0.272876 0.658781 +0.087537 0.275416 0.664912 +0.043822 0.276938 0.668588 +0.000000 0.277445 0.669813 +0.320659 0.000000 0.650233 +0.320107 0.042545 0.649112 +0.318447 0.085014 0.645747 +0.315675 0.127329 0.640126 +0.311783 0.169406 0.632233 +0.306758 0.211155 0.622043 +0.300587 0.252476 0.609531 +0.293256 0.293256 0.594665 +0.252476 0.300587 0.609531 +0.211155 0.306758 0.622043 +0.169406 0.311783 0.632233 +0.127329 0.315675 0.640126 +0.085014 0.318447 0.645747 +0.042545 0.320107 0.649112 +0.000000 0.320659 0.650233 +0.362500 0.000000 0.627868 +0.361917 0.041087 0.626859 +0.360167 0.082128 0.623827 +0.357238 0.123078 0.618755 +0.353117 0.163882 0.611617 +0.347783 0.204480 0.602378 +0.341211 0.244798 0.590994 +0.333370 0.284749 0.577414 +0.324230 0.324230 0.561583 +0.284749 0.333370 0.577414 +0.244798 0.341211 0.590994 +0.204480 0.347783 0.602378 +0.163882 0.353117 0.611617 +0.123078 0.357238 0.618755 +0.082128 0.360167 0.623827 +0.041087 0.361917 0.626859 +0.000000 0.362500 0.627868 +0.402788 0.000000 0.602815 +0.402192 0.039452 0.601922 +0.400397 0.078891 0.599236 +0.397390 0.118300 0.594736 +0.393149 0.157659 0.588390 +0.387644 0.196934 0.580150 +0.380835 0.236085 0.569959 +0.372676 0.275051 0.557749 +0.363116 0.313756 0.543442 +0.352098 0.352098 0.526952 +0.313756 0.363116 0.543442 +0.275051 0.372676 0.557749 +0.236085 0.380835 0.569959 +0.196934 0.387644 0.580150 +0.157659 0.393149 0.588390 +0.118300 0.397390 0.594736 +0.078891 0.400397 0.599236 +0.039452 0.402192 0.601922 +0.000000 0.402788 0.602815 +0.441352 0.000000 0.575181 +0.440757 0.037649 0.574405 +0.438964 0.075314 0.572069 +0.435957 0.113012 0.568150 +0.431706 0.150751 0.562610 +0.426168 0.188531 0.555393 +0.419293 0.226340 0.546433 +0.411015 0.264151 0.535645 +0.401262 0.301916 0.522935 +0.389950 0.339564 0.508193 +0.376991 0.376991 0.491305 +0.339564 0.389950 0.508193 +0.301916 0.401262 0.522935 +0.264151 0.411015 0.535645 +0.226340 0.419293 0.546433 +0.188531 0.426168 0.555393 +0.150751 0.431706 0.562610 +0.113012 0.435957 0.568150 +0.075314 0.438964 0.572069 +0.037649 0.440757 0.574405 +0.000000 0.441352 0.575181 +0.478026 0.000000 0.545084 +0.477446 0.035683 0.544423 +0.475701 0.071413 0.542433 +0.472768 0.107231 0.539089 +0.468611 0.143178 0.534349 +0.463179 0.179284 0.528155 +0.456406 0.215570 0.520431 +0.448210 0.252040 0.511086 +0.438496 0.288681 0.500009 +0.427155 0.325454 0.487077 +0.414062 0.362291 0.472147 +0.399085 0.399085 0.455069 +0.362291 0.414062 0.472147 +0.325454 0.427155 0.487077 +0.288681 0.438496 0.500009 +0.252040 0.448210 0.511086 +0.215570 0.456406 0.520431 +0.179284 0.463179 0.528155 +0.143178 0.468611 0.534349 +0.107231 0.472768 0.539089 +0.071413 0.475701 0.542433 +0.035683 0.477446 0.544423 +0.000000 0.478026 0.545084 +0.512652 0.000000 0.512652 +0.512103 0.033565 0.512103 +0.510445 0.067201 0.510445 +0.507656 0.100979 0.507656 +0.503691 0.134964 0.503691 +0.498493 0.169216 0.498493 +0.491984 0.203786 0.491984 +0.484066 0.238715 0.484066 +0.474624 0.274024 0.474624 +0.463520 0.309714 0.463520 +0.450598 0.345756 0.450598 +0.435682 0.382083 0.435682 +0.418579 0.418579 0.418579 +0.382083 0.435682 0.435682 +0.345756 0.450598 0.450598 +0.309714 0.463520 0.463520 +0.274024 0.474624 0.474624 +0.238715 0.484066 0.484066 +0.203786 0.491984 0.491984 +0.169216 0.498493 0.498493 +0.134964 0.503691 0.503691 +0.100979 0.507656 0.507656 +0.067201 0.510445 0.510445 +0.033565 0.512103 0.512103 +0.000000 0.512652 0.512652 +0.545084 0.000000 0.478026 +0.544423 0.035683 0.477446 +0.542433 0.071413 0.475701 +0.539089 0.107231 0.472768 +0.534349 0.143178 0.468611 +0.528155 0.179284 0.463179 +0.520431 0.215570 0.456406 +0.511086 0.252040 0.448210 +0.500009 0.288681 0.438496 +0.487077 0.325454 0.427155 +0.472147 0.362291 0.414062 +0.455069 0.399085 0.399085 +0.435682 0.435682 0.382083 +0.399085 0.455069 0.399085 +0.362291 0.472147 0.414062 +0.325454 0.487077 0.427155 +0.288681 0.500009 0.438496 +0.252040 0.511086 0.448210 +0.215570 0.520431 0.456406 +0.179284 0.528155 0.463179 +0.143178 0.534349 0.468611 +0.107231 0.539089 0.472768 +0.071413 0.542433 0.475701 +0.035683 0.544423 0.477446 +0.000000 0.545084 0.478026 +0.575181 0.000000 0.441352 +0.574405 0.037649 0.440757 +0.572069 0.075314 0.438964 +0.568150 0.113012 0.435957 +0.562610 0.150751 0.431706 +0.555393 0.188531 0.426168 +0.546433 0.226340 0.419293 +0.535645 0.264151 0.411015 +0.522935 0.301916 0.401262 +0.508193 0.339564 0.389950 +0.491305 0.376991 0.376991 +0.472147 0.414062 0.362291 +0.450598 0.450598 0.345756 +0.414062 0.472147 0.362291 +0.376991 0.491305 0.376991 +0.339564 0.508193 0.389950 +0.301916 0.522935 0.401262 +0.264151 0.535645 0.411015 +0.226340 0.546433 0.419293 +0.188531 0.555393 0.426168 +0.150751 0.562610 0.431706 +0.113012 0.568150 0.435957 +0.075314 0.572069 0.438964 +0.037649 0.574405 0.440757 +0.000000 0.575181 0.441352 +0.602815 0.000000 0.402788 +0.601922 0.039452 0.402192 +0.599236 0.078891 0.400397 +0.594736 0.118300 0.397390 +0.588390 0.157659 0.393149 +0.580150 0.196934 0.387644 +0.569959 0.236085 0.380835 +0.557749 0.275051 0.372676 +0.543442 0.313756 0.363116 +0.526952 0.352098 0.352098 +0.508193 0.389950 0.339564 +0.487077 0.427155 0.325454 +0.463520 0.463520 0.309714 +0.427155 0.487077 0.325454 +0.389950 0.508193 0.339564 +0.352098 0.526952 0.352098 +0.313756 0.543442 0.363116 +0.275051 0.557749 0.372676 +0.236085 0.569959 0.380835 +0.196934 0.580150 0.387644 +0.157659 0.588390 0.393149 +0.118300 0.594736 0.397390 +0.078891 0.599236 0.400397 +0.039452 0.601922 0.402192 +0.000000 0.602815 0.402788 +0.627868 0.000000 0.362500 +0.626859 0.041087 0.361917 +0.623827 0.082128 0.360167 +0.618755 0.123078 0.357238 +0.611617 0.163882 0.353117 +0.602378 0.204480 0.347783 +0.590994 0.244798 0.341211 +0.577414 0.284749 0.333370 +0.561583 0.324230 0.324230 +0.543442 0.363116 0.313756 +0.522935 0.401262 0.301916 +0.500009 0.438496 0.288681 +0.474624 0.474624 0.274024 +0.438496 0.500009 0.288681 +0.401262 0.522935 0.301916 +0.363116 0.543442 0.313756 +0.324230 0.561583 0.324230 +0.284749 0.577414 0.333370 +0.244798 0.590994 0.341211 +0.204480 0.602378 0.347783 +0.163882 0.611617 0.353117 +0.123078 0.618755 0.357238 +0.082128 0.623827 0.360167 +0.041087 0.626859 0.361917 +0.000000 0.627868 0.362500 +0.650233 0.000000 0.320659 +0.649112 0.042545 0.320107 +0.645747 0.085014 0.318447 +0.640126 0.127329 0.315675 +0.632233 0.169406 0.311783 +0.622043 0.211155 0.306758 +0.609531 0.252476 0.300587 +0.594665 0.293256 0.293256 +0.577414 0.333370 0.284749 +0.557749 0.372676 0.275051 +0.535645 0.411015 0.264151 +0.511086 0.448210 0.252040 +0.484066 0.484066 0.238715 +0.448210 0.511086 0.252040 +0.411015 0.535645 0.264151 +0.372676 0.557749 0.275051 +0.333370 0.577414 0.284749 +0.293256 0.594665 0.293256 +0.252476 0.609531 0.300587 +0.211155 0.622043 0.306758 +0.169406 0.632233 0.311783 +0.127329 0.640126 0.315675 +0.085014 0.645747 0.318447 +0.042545 0.649112 0.320107 +0.000000 0.650233 0.320659 +0.669813 0.000000 0.277445 +0.668588 0.043822 0.276938 +0.664912 0.087537 0.275416 +0.658781 0.131040 0.272876 +0.650186 0.174217 0.269316 +0.639120 0.216952 0.264732 +0.625571 0.259120 0.259120 +0.609531 0.300587 0.252476 +0.590994 0.341211 0.244798 +0.569959 0.380835 0.236085 +0.546433 0.419293 0.226340 +0.520431 0.456406 0.215570 +0.491984 0.491984 0.203786 +0.456406 0.520431 0.215570 +0.419293 0.546433 0.226340 +0.380835 0.569959 0.236085 +0.341211 0.590994 0.244798 +0.300587 0.609531 0.252476 +0.259120 0.625571 0.259120 +0.216952 0.639120 0.264732 +0.174217 0.650186 0.269316 +0.131040 0.658781 0.272876 +0.087537 0.664912 0.275416 +0.043822 0.668588 0.276938 +0.000000 0.669813 0.277445 +0.686524 0.000000 0.233044 +0.685206 0.044911 0.232596 +0.681251 0.089688 0.231254 +0.674661 0.134198 0.229016 +0.665438 0.178304 0.225886 +0.653589 0.221863 0.221863 +0.639120 0.264732 0.216952 +0.622043 0.306758 0.211155 +0.602378 0.347783 0.204480 +0.580150 0.387644 0.196934 +0.555393 0.426168 0.188531 +0.528155 0.463179 0.179284 +0.498493 0.498493 0.169216 +0.463179 0.528155 0.179284 +0.426168 0.555393 0.188531 +0.387644 0.580150 0.196934 +0.347783 0.602378 0.204480 +0.306758 0.622043 0.211155 +0.264732 0.639120 0.216952 +0.221863 0.653589 0.221863 +0.178304 0.665438 0.225886 +0.134198 0.674661 0.229016 +0.089688 0.681251 0.231254 +0.044911 0.685206 0.232596 +0.000000 0.686524 0.233044 +0.700296 0.000000 0.187644 +0.698897 0.045808 0.187269 +0.694702 0.091459 0.186145 +0.687717 0.136796 0.184273 +0.677957 0.181658 0.181658 +0.665438 0.225886 0.178304 +0.650186 0.269316 0.174217 +0.632233 0.311783 0.169406 +0.611617 0.353117 0.163882 +0.588390 0.393149 0.157659 +0.562610 0.431706 0.150751 +0.534349 0.468611 0.143178 +0.503691 0.503691 0.134964 +0.468611 0.534349 0.143178 +0.431706 0.562610 0.150751 +0.393149 0.588390 0.157659 +0.353117 0.611617 0.163882 +0.311783 0.632233 0.169406 +0.269316 0.650186 0.174217 +0.225886 0.665438 0.178304 +0.181658 0.677957 0.181658 +0.136796 0.687717 0.184273 +0.091459 0.694702 0.186145 +0.045808 0.698897 0.187269 +0.000000 0.700296 0.187644 +0.711069 0.000000 0.141440 +0.709605 0.046510 0.141149 +0.705215 0.092843 0.140276 +0.697912 0.138823 0.138823 +0.687717 0.184273 0.136796 +0.674661 0.229016 0.134198 +0.658781 0.272876 0.131040 +0.640126 0.315675 0.127329 +0.618755 0.357238 0.123078 +0.594736 0.397390 0.118300 +0.568150 0.435957 0.113012 +0.539089 0.472768 0.107231 +0.507656 0.507656 0.100979 +0.472768 0.539089 0.107231 +0.435957 0.568150 0.113012 +0.397390 0.594736 0.118300 +0.357238 0.618755 0.123078 +0.315675 0.640126 0.127329 +0.272876 0.658781 0.131040 +0.229016 0.674661 0.134198 +0.184273 0.687717 0.136796 +0.138823 0.697912 0.138823 +0.092843 0.705215 0.140276 +0.046510 0.709605 0.141149 +0.000000 0.711069 0.141440 +0.718798 0.000000 0.094631 +0.717285 0.047013 0.094432 +0.712752 0.093836 0.093836 +0.705215 0.140276 0.092843 +0.694702 0.186145 0.091459 +0.681251 0.231254 0.089688 +0.664912 0.275416 0.087537 +0.645747 0.318447 0.085014 +0.623827 0.360167 0.082128 +0.599236 0.400397 0.078891 +0.572069 0.438964 0.075314 +0.542433 0.475701 0.071413 +0.510445 0.510445 0.067201 +0.475701 0.542433 0.071413 +0.438964 0.572069 0.075314 +0.400397 0.599236 0.078891 +0.360167 0.623827 0.082128 +0.318447 0.645747 0.085014 +0.275416 0.664912 0.087537 +0.231254 0.681251 0.089688 +0.186145 0.694702 0.091459 +0.140276 0.705215 0.092843 +0.093836 0.712752 0.093836 +0.047013 0.717285 0.094432 +0.000000 0.718798 0.094631 +0.723448 0.000000 0.047417 +0.721905 0.047316 0.047316 +0.717285 0.094432 0.047013 +0.709605 0.141149 0.046510 +0.698897 0.187269 0.045808 +0.685206 0.232596 0.044911 +0.668588 0.276938 0.043822 +0.649112 0.320107 0.042545 +0.626859 0.361917 0.041087 +0.601922 0.402192 0.039452 +0.574405 0.440757 0.037649 +0.544423 0.477446 0.035683 +0.512103 0.512103 0.033565 +0.477446 0.544423 0.035683 +0.440757 0.574405 0.037649 +0.402192 0.601922 0.039452 +0.361917 0.626859 0.041087 +0.320107 0.649112 0.042545 +0.276938 0.668588 0.043822 +0.232596 0.685206 0.044911 +0.187269 0.698897 0.045808 +0.141149 0.709605 0.046510 +0.094432 0.717285 0.047013 +0.047316 0.721905 0.047316 +0.000000 0.723448 0.047417 +0.725000 0.000000 0.000000 +0.723448 0.047417 0.000000 +0.718798 0.094631 0.000000 +0.711069 0.141440 0.000000 +0.700296 0.187644 0.000000 +0.686524 0.233044 0.000000 +0.669813 0.277445 0.000000 +0.650233 0.320659 0.000000 +0.627868 0.362500 0.000000 +0.602815 0.402788 0.000000 +0.575181 0.441352 0.000000 +0.545084 0.478026 0.000000 +0.512652 0.512652 0.000000 +0.478026 0.545084 0.000000 +0.441352 0.575181 0.000000 +0.402788 0.602815 0.000000 +0.362500 0.627868 0.000000 +0.320659 0.650233 0.000000 +0.277445 0.669813 0.000000 +0.233044 0.686524 0.000000 +0.187644 0.700296 0.000000 +0.141440 0.711069 0.000000 +0.094631 0.718798 0.000000 +0.047417 0.723448 0.000000 +0.000000 0.725000 0.000000 +0.000000 0.000000 0.800000 +0.052323 0.000000 0.798287 +0.052211 0.052211 0.796585 +0.000000 0.052323 0.798287 +0.104421 0.000000 0.793156 +0.104201 0.051877 0.791487 +0.103543 0.103543 0.786484 +0.051877 0.104201 0.791487 +0.000000 0.104421 0.793156 +0.156072 0.000000 0.784628 +0.155751 0.051321 0.783012 +0.154787 0.102448 0.778168 +0.153184 0.153184 0.770110 +0.102448 0.154787 0.778168 +0.051321 0.155751 0.783012 +0.000000 0.156072 0.784628 +0.207055 0.000000 0.772741 +0.206642 0.050547 0.771197 +0.205401 0.100921 0.766567 +0.203336 0.150947 0.758861 +0.200450 0.200450 0.748091 +0.150947 0.203336 0.758861 +0.100921 0.205401 0.766567 +0.050547 0.206642 0.771197 +0.000000 0.207055 0.772741 +0.257152 0.000000 0.757544 +0.256658 0.049557 0.756089 +0.255176 0.098966 0.751725 +0.252708 0.148081 0.744453 +0.249253 0.196749 0.734277 +0.244815 0.244815 0.721201 +0.196749 0.249253 0.734277 +0.148081 0.252708 0.744453 +0.098966 0.255176 0.751725 +0.049557 0.256658 0.756089 +0.000000 0.257152 0.757544 +0.306147 0.000000 0.739104 +0.305587 0.048355 0.737752 +0.303907 0.096593 0.733696 +0.301105 0.144596 0.726931 +0.297176 0.192239 0.717447 +0.292118 0.239395 0.705235 +0.285925 0.285925 0.690285 +0.239395 0.292118 0.705235 +0.192239 0.297176 0.717447 +0.144596 0.301105 0.726931 +0.096593 0.303907 0.733696 +0.048355 0.305587 0.737752 +0.000000 0.306147 0.739104 +0.353831 0.000000 0.717498 +0.353221 0.046946 0.716262 +0.351390 0.093809 0.712548 +0.348331 0.140501 0.706346 +0.344036 0.186931 0.697636 +0.338491 0.232999 0.686393 +0.331683 0.278594 0.672586 +0.323593 0.323593 0.656182 +0.278594 0.331683 0.672586 +0.232999 0.338491 0.686393 +0.186931 0.344036 0.697636 +0.140501 0.348331 0.706346 +0.093809 0.351390 0.712548 +0.046946 0.353221 0.716262 +0.000000 0.353831 0.717498 +0.400000 0.000000 0.692820 +0.399357 0.045337 0.691707 +0.397425 0.090624 0.688361 +0.394194 0.135810 0.682764 +0.389647 0.180836 0.674888 +0.383761 0.225633 0.664693 +0.376508 0.270122 0.652132 +0.367857 0.314206 0.637147 +0.357771 0.357771 0.619677 +0.314206 0.367857 0.637147 +0.270122 0.376508 0.652132 +0.225633 0.383761 0.664693 +0.180836 0.389647 0.674888 +0.135810 0.394194 0.682764 +0.090624 0.397425 0.688361 +0.045337 0.399357 0.691707 +0.000000 0.400000 0.692820 +0.444456 0.000000 0.665176 +0.443798 0.043533 0.664190 +0.441817 0.087052 0.661226 +0.438499 0.130538 0.656261 +0.433820 0.173968 0.649258 +0.427745 0.217307 0.640166 +0.420231 0.260508 0.628921 +0.411229 0.303505 0.615447 +0.400680 0.346214 0.599660 +0.388522 0.388522 0.581465 +0.346214 0.400680 0.599660 +0.303505 0.411229 0.615447 +0.260508 0.420231 0.628921 +0.217307 0.427745 0.640166 +0.173968 0.433820 0.649258 +0.130538 0.438499 0.656261 +0.087052 0.441817 0.661226 +0.043533 0.443798 0.664190 +0.000000 0.444456 0.665176 +0.487009 0.000000 0.634683 +0.486352 0.041543 0.633826 +0.484374 0.083105 0.631249 +0.481056 0.124703 0.626924 +0.476365 0.166346 0.620811 +0.470255 0.208034 0.612848 +0.462668 0.249754 0.602960 +0.453534 0.291477 0.591057 +0.442772 0.333149 0.577031 +0.430290 0.374691 0.560765 +0.415990 0.415990 0.542129 +0.374691 0.430290 0.560765 +0.333149 0.442772 0.577031 +0.291477 0.453534 0.591057 +0.249754 0.462668 0.602960 +0.208034 0.470255 0.612848 +0.166346 0.476365 0.620811 +0.124703 0.481056 0.626924 +0.083105 0.484374 0.631249 +0.041543 0.486352 0.633826 +0.000000 0.487009 0.634683 +0.527477 0.000000 0.601472 +0.526837 0.039375 0.600743 +0.524912 0.078800 0.598547 +0.521675 0.118324 0.594857 +0.517088 0.157990 0.589626 +0.511094 0.197831 0.582791 +0.503620 0.237870 0.574269 +0.494577 0.278113 0.563957 +0.483858 0.318544 0.551734 +0.471343 0.359122 0.537464 +0.456896 0.399770 0.520990 +0.440369 0.440369 0.502145 +0.399770 0.456896 0.520990 +0.359122 0.471343 0.537464 +0.318544 0.483858 0.551734 +0.278113 0.494577 0.563957 +0.237870 0.503620 0.574269 +0.197831 0.511094 0.582791 +0.157990 0.517088 0.589626 +0.118324 0.521675 0.594857 +0.078800 0.524912 0.598547 +0.039375 0.526837 0.600743 +0.000000 0.527477 0.601472 +0.565685 0.000000 0.565685 +0.565079 0.037037 0.565079 +0.563250 0.074153 0.563250 +0.560172 0.111425 0.560172 +0.555797 0.148925 0.555797 +0.550062 0.186721 0.550062 +0.542879 0.224868 0.542879 +0.534142 0.263410 0.534142 +0.523723 0.302372 0.523723 +0.511471 0.341754 0.511471 +0.497212 0.381524 0.497212 +0.480753 0.421609 0.480753 +0.461880 0.461880 0.461880 +0.421609 0.480753 0.480753 +0.381524 0.497212 0.497212 +0.341754 0.511471 0.511471 +0.302372 0.523723 0.523723 +0.263410 0.534142 0.534142 +0.224868 0.542879 0.542879 +0.186721 0.550062 0.550062 +0.148925 0.555797 0.555797 +0.111425 0.560172 0.560172 +0.074153 0.563250 0.563250 +0.037037 0.565079 0.565079 +0.000000 0.565685 0.565685 +0.601472 0.000000 0.527477 +0.600743 0.039375 0.526837 +0.598547 0.078800 0.524912 +0.594857 0.118324 0.521675 +0.589626 0.157990 0.517088 +0.582791 0.197831 0.511094 +0.574269 0.237870 0.503620 +0.563957 0.278113 0.494577 +0.551734 0.318544 0.483858 +0.537464 0.359122 0.471343 +0.520990 0.399770 0.456896 +0.502145 0.440369 0.440369 +0.480753 0.480753 0.421609 +0.440369 0.502145 0.440369 +0.399770 0.520990 0.456896 +0.359122 0.537464 0.471343 +0.318544 0.551734 0.483858 +0.278113 0.563957 0.494577 +0.237870 0.574269 0.503620 +0.197831 0.582791 0.511094 +0.157990 0.589626 0.517088 +0.118324 0.594857 0.521675 +0.078800 0.598547 0.524912 +0.039375 0.600743 0.526837 +0.000000 0.601472 0.527477 +0.634683 0.000000 0.487009 +0.633826 0.041543 0.486352 +0.631249 0.083105 0.484374 +0.626924 0.124703 0.481056 +0.620811 0.166346 0.476365 +0.612848 0.208034 0.470255 +0.602960 0.249754 0.462668 +0.591057 0.291477 0.453534 +0.577031 0.333149 0.442772 +0.560765 0.374691 0.430290 +0.542129 0.415990 0.415990 +0.520990 0.456896 0.399770 +0.497212 0.497212 0.381524 +0.456896 0.520990 0.399770 +0.415990 0.542129 0.415990 +0.374691 0.560765 0.430290 +0.333149 0.577031 0.442772 +0.291477 0.591057 0.453534 +0.249754 0.602960 0.462668 +0.208034 0.612848 0.470255 +0.166346 0.620811 0.476365 +0.124703 0.626924 0.481056 +0.083105 0.631249 0.484374 +0.041543 0.633826 0.486352 +0.000000 0.634683 0.487009 +0.665176 0.000000 0.444456 +0.664190 0.043533 0.443798 +0.661226 0.087052 0.441817 +0.656261 0.130538 0.438499 +0.649258 0.173968 0.433820 +0.640166 0.217307 0.427745 +0.628921 0.260508 0.420231 +0.615447 0.303505 0.411229 +0.599660 0.346214 0.400680 +0.581465 0.388522 0.388522 +0.560765 0.430290 0.374691 +0.537464 0.471343 0.359122 +0.511471 0.511471 0.341754 +0.471343 0.537464 0.359122 +0.430290 0.560765 0.374691 +0.388522 0.581465 0.388522 +0.346214 0.599660 0.400680 +0.303505 0.615447 0.411229 +0.260508 0.628921 0.420231 +0.217307 0.640166 0.427745 +0.173968 0.649258 0.433820 +0.130538 0.656261 0.438499 +0.087052 0.661226 0.441817 +0.043533 0.664190 0.443798 +0.000000 0.665176 0.444456 +0.692820 0.000000 0.400000 +0.691707 0.045337 0.399357 +0.688361 0.090624 0.397425 +0.682764 0.135810 0.394194 +0.674888 0.180836 0.389647 +0.664693 0.225633 0.383761 +0.652132 0.270122 0.376508 +0.637147 0.314206 0.367857 +0.619677 0.357771 0.357771 +0.599660 0.400680 0.346214 +0.577031 0.442772 0.333149 +0.551734 0.483858 0.318544 +0.523723 0.523723 0.302372 +0.483858 0.551734 0.318544 +0.442772 0.577031 0.333149 +0.400680 0.599660 0.346214 +0.357771 0.619677 0.357771 +0.314206 0.637147 0.367857 +0.270122 0.652132 0.376508 +0.225633 0.664693 0.383761 +0.180836 0.674888 0.389647 +0.135810 0.682764 0.394194 +0.090624 0.688361 0.397425 +0.045337 0.691707 0.399357 +0.000000 0.692820 0.400000 +0.717498 0.000000 0.353831 +0.716262 0.046946 0.353221 +0.712548 0.093809 0.351390 +0.706346 0.140501 0.348331 +0.697636 0.186931 0.344036 +0.686393 0.232999 0.338491 +0.672586 0.278594 0.331683 +0.656182 0.323593 0.323593 +0.637147 0.367857 0.314206 +0.615447 0.411229 0.303505 +0.591057 0.453534 0.291477 +0.563957 0.494577 0.278113 +0.534142 0.534142 0.263410 +0.494577 0.563957 0.278113 +0.453534 0.591057 0.291477 +0.411229 0.615447 0.303505 +0.367857 0.637147 0.314206 +0.323593 0.656182 0.323593 +0.278594 0.672586 0.331683 +0.232999 0.686393 0.338491 +0.186931 0.697636 0.344036 +0.140501 0.706346 0.348331 +0.093809 0.712548 0.351390 +0.046946 0.716262 0.353221 +0.000000 0.717498 0.353831 +0.739104 0.000000 0.306147 +0.737752 0.048355 0.305587 +0.733696 0.096593 0.303907 +0.726931 0.144596 0.301105 +0.717447 0.192239 0.297176 +0.705235 0.239395 0.292118 +0.690285 0.285925 0.285925 +0.672586 0.331683 0.278594 +0.652132 0.376508 0.270122 +0.628921 0.420231 0.260508 +0.602960 0.462668 0.249754 +0.574269 0.503620 0.237870 +0.542879 0.542879 0.224868 +0.503620 0.574269 0.237870 +0.462668 0.602960 0.249754 +0.420231 0.628921 0.260508 +0.376508 0.652132 0.270122 +0.331683 0.672586 0.278594 +0.285925 0.690285 0.285925 +0.239395 0.705235 0.292118 +0.192239 0.717447 0.297176 +0.144596 0.726931 0.301105 +0.096593 0.733696 0.303907 +0.048355 0.737752 0.305587 +0.000000 0.739104 0.306147 +0.757544 0.000000 0.257152 +0.756089 0.049557 0.256658 +0.751725 0.098966 0.255176 +0.744453 0.148081 0.252708 +0.734277 0.196749 0.249253 +0.721201 0.244815 0.244815 +0.705235 0.292118 0.239395 +0.686393 0.338491 0.232999 +0.664693 0.383761 0.225633 +0.640166 0.427745 0.217307 +0.612848 0.470255 0.208034 +0.582791 0.511094 0.197831 +0.550062 0.550062 0.186721 +0.511094 0.582791 0.197831 +0.470255 0.612848 0.208034 +0.427745 0.640166 0.217307 +0.383761 0.664693 0.225633 +0.338491 0.686393 0.232999 +0.292118 0.705235 0.239395 +0.244815 0.721201 0.244815 +0.196749 0.734277 0.249253 +0.148081 0.744453 0.252708 +0.098966 0.751725 0.255176 +0.049557 0.756089 0.256658 +0.000000 0.757544 0.257152 +0.772741 0.000000 0.207055 +0.771197 0.050547 0.206642 +0.766567 0.100921 0.205401 +0.758861 0.150947 0.203336 +0.748091 0.200450 0.200450 +0.734277 0.249253 0.196749 +0.717447 0.297176 0.192239 +0.697636 0.344036 0.186931 +0.674888 0.389647 0.180836 +0.649258 0.433820 0.173968 +0.620811 0.476365 0.166346 +0.589626 0.517088 0.157990 +0.555797 0.555797 0.148925 +0.517088 0.589626 0.157990 +0.476365 0.620811 0.166346 +0.433820 0.649258 0.173968 +0.389647 0.674888 0.180836 +0.344036 0.697636 0.186931 +0.297176 0.717447 0.192239 +0.249253 0.734277 0.196749 +0.200450 0.748091 0.200450 +0.150947 0.758861 0.203336 +0.100921 0.766567 0.205401 +0.050547 0.771197 0.206642 +0.000000 0.772741 0.207055 +0.784628 0.000000 0.156072 +0.783012 0.051321 0.155751 +0.778168 0.102448 0.154787 +0.770110 0.153184 0.153184 +0.758861 0.203336 0.150947 +0.744453 0.252708 0.148081 +0.726931 0.301105 0.144596 +0.706346 0.348331 0.140501 +0.682764 0.394194 0.135810 +0.656261 0.438499 0.130538 +0.626924 0.481056 0.124703 +0.594857 0.521675 0.118324 +0.560172 0.560172 0.111425 +0.521675 0.594857 0.118324 +0.481056 0.626924 0.124703 +0.438499 0.656261 0.130538 +0.394194 0.682764 0.135810 +0.348331 0.706346 0.140501 +0.301105 0.726931 0.144596 +0.252708 0.744453 0.148081 +0.203336 0.758861 0.150947 +0.153184 0.770110 0.153184 +0.102448 0.778168 0.154787 +0.051321 0.783012 0.155751 +0.000000 0.784628 0.156072 +0.793156 0.000000 0.104421 +0.791487 0.051877 0.104201 +0.786484 0.103543 0.103543 +0.778168 0.154787 0.102448 +0.766567 0.205401 0.100921 +0.751725 0.255176 0.098966 +0.733696 0.303907 0.096593 +0.712548 0.351390 0.093809 +0.688361 0.397425 0.090624 +0.661226 0.441817 0.087052 +0.631249 0.484374 0.083105 +0.598547 0.524912 0.078800 +0.563250 0.563250 0.074153 +0.524912 0.598547 0.078800 +0.484374 0.631249 0.083105 +0.441817 0.661226 0.087052 +0.397425 0.688361 0.090624 +0.351390 0.712548 0.093809 +0.303907 0.733696 0.096593 +0.255176 0.751725 0.098966 +0.205401 0.766567 0.100921 +0.154787 0.778168 0.102448 +0.103543 0.786484 0.103543 +0.051877 0.791487 0.104201 +0.000000 0.793156 0.104421 +0.798287 0.000000 0.052323 +0.796585 0.052211 0.052211 +0.791487 0.104201 0.051877 +0.783012 0.155751 0.051321 +0.771197 0.206642 0.050547 +0.756089 0.256658 0.049557 +0.737752 0.305587 0.048355 +0.716262 0.353221 0.046946 +0.691707 0.399357 0.045337 +0.664190 0.443798 0.043533 +0.633826 0.486352 0.041543 +0.600743 0.526837 0.039375 +0.565079 0.565079 0.037037 +0.526837 0.600743 0.039375 +0.486352 0.633826 0.041543 +0.443798 0.664190 0.043533 +0.399357 0.691707 0.045337 +0.353221 0.716262 0.046946 +0.305587 0.737752 0.048355 +0.256658 0.756089 0.049557 +0.206642 0.771197 0.050547 +0.155751 0.783012 0.051321 +0.104201 0.791487 0.051877 +0.052211 0.796585 0.052211 +0.000000 0.798287 0.052323 +0.800000 0.000000 0.000000 +0.798287 0.052323 0.000000 +0.793156 0.104421 0.000000 +0.784628 0.156072 0.000000 +0.772741 0.207055 0.000000 +0.757544 0.257152 0.000000 +0.739104 0.306147 0.000000 +0.717498 0.353831 0.000000 +0.692820 0.400000 0.000000 +0.665176 0.444456 0.000000 +0.634683 0.487009 0.000000 +0.601472 0.527477 0.000000 +0.565685 0.565685 0.000000 +0.527477 0.601472 0.000000 +0.487009 0.634683 0.000000 +0.444456 0.665176 0.000000 +0.400000 0.692820 0.000000 +0.353831 0.717498 0.000000 +0.306147 0.739104 0.000000 +0.257152 0.757544 0.000000 +0.207055 0.772741 0.000000 +0.156072 0.784628 0.000000 +0.104421 0.793156 0.000000 +0.052323 0.798287 0.000000 +0.000000 0.800000 0.000000 +0.018179 0.000000 0.833135 +0.018902 0.018902 0.866254 +0.000000 0.018179 0.833135 +0.036349 0.000000 0.832540 +0.037794 0.018888 0.865636 +0.037768 0.037768 0.865019 +0.018888 0.037794 0.865636 +0.000000 0.036349 0.832540 +0.054490 0.018140 0.831352 +0.054451 0.036272 0.830761 +0.036272 0.054451 0.830761 +0.018140 0.054490 0.831352 +0.072630 0.000000 0.830162 +0.075517 0.018834 0.863165 +0.075464 0.037660 0.862553 +0.072475 0.054296 0.828398 +0.075250 0.075250 0.860108 +0.054296 0.072475 0.828398 +0.037660 0.075464 0.862553 +0.018834 0.075517 0.863165 +0.000000 0.072630 0.830162 +0.090722 0.000000 0.828380 +0.094329 0.018794 0.861313 +0.094263 0.037579 0.860705 +0.090530 0.054180 0.826628 +0.093996 0.075089 0.858276 +0.093797 0.093797 0.856455 +0.075089 0.093996 0.858276 +0.054180 0.090530 0.826628 +0.037579 0.094263 0.860705 +0.018794 0.094329 0.861313 +0.000000 0.090722 0.828380 +0.108746 0.018024 0.826011 +0.108670 0.036039 0.825431 +0.108365 0.072013 0.823113 +0.108136 0.089955 0.821376 +0.089955 0.108136 0.821376 +0.072013 0.108365 0.823113 +0.036039 0.108670 0.825431 +0.018024 0.108746 0.826011 +0.126769 0.000000 0.823635 +0.131810 0.018686 0.856381 +0.131718 0.037364 0.855784 +0.126504 0.053871 0.821912 +0.131350 0.074662 0.853395 +0.131075 0.093266 0.851606 +0.125710 0.107527 0.816749 +0.130341 0.130341 0.846837 +0.107527 0.125710 0.816749 +0.093266 0.131075 0.851606 +0.074662 0.131350 0.853395 +0.053871 0.126504 0.821912 +0.037364 0.131718 0.855784 +0.018686 0.131810 0.856381 +0.000000 0.126769 0.823635 +0.144707 0.000000 0.820673 +0.150460 0.018619 0.853303 +0.150356 0.037230 0.852712 +0.144406 0.053678 0.818969 +0.149940 0.074396 0.850350 +0.149627 0.092934 0.848579 +0.143506 0.107147 0.813861 +0.148795 0.129883 0.843861 +0.148276 0.148276 0.840916 +0.129883 0.148795 0.843861 +0.107147 0.143506 0.813861 +0.092934 0.149627 0.848579 +0.074396 0.149940 0.850350 +0.053678 0.144406 0.818969 +0.037230 0.150356 0.852712 +0.018619 0.150460 0.853303 +0.000000 0.144707 0.820673 +0.162538 0.017830 0.817134 +0.162426 0.035652 0.816573 +0.161980 0.071245 0.814329 +0.161645 0.088999 0.812646 +0.160754 0.124388 0.808165 +0.160197 0.142008 0.805366 +0.142008 0.160197 0.805366 +0.124388 0.160754 0.808165 +0.088999 0.161645 0.812646 +0.071245 0.161980 0.814329 +0.035652 0.162426 0.816573 +0.017830 0.162538 0.817134 +0.180366 0.000000 0.813580 +0.187538 0.018458 0.845931 +0.187411 0.036909 0.845356 +0.179998 0.053216 0.811919 +0.186900 0.073758 0.843053 +0.186518 0.092140 0.841328 +0.178895 0.106236 0.806942 +0.185498 0.128785 0.836729 +0.184862 0.147032 0.833858 +0.177059 0.158863 0.798660 +0.183336 0.183336 0.826975 +0.158863 0.177059 0.798660 +0.147032 0.184862 0.833858 +0.128785 0.185498 0.836729 +0.106236 0.178895 0.806942 +0.092140 0.186518 0.841328 +0.073758 0.186900 0.843053 +0.053216 0.179998 0.811919 +0.036909 0.187411 0.845356 +0.018458 0.187538 0.845931 +0.000000 0.180366 0.813580 +0.198072 0.000000 0.809452 +0.205948 0.018365 0.841641 +0.205809 0.036722 0.841074 +0.197671 0.052947 0.807816 +0.205255 0.073386 0.838806 +0.204839 0.091678 0.837107 +0.196472 0.105706 0.802913 +0.203730 0.128146 0.832577 +0.203038 0.146307 0.829748 +0.194475 0.158086 0.794753 +0.201378 0.182447 0.822965 +0.200411 0.200411 0.819013 +0.182447 0.201378 0.822965 +0.158086 0.194475 0.794753 +0.146307 0.203038 0.829748 +0.128146 0.203730 0.832577 +0.105706 0.196472 0.802913 +0.091678 0.204839 0.837107 +0.073386 0.205255 0.838806 +0.052947 0.197671 0.807816 +0.036722 0.205809 0.841074 +0.018365 0.205948 0.841641 +0.000000 0.198072 0.809452 +0.215635 0.017560 0.804759 +0.215491 0.035113 0.804223 +0.214916 0.070173 0.802079 +0.214486 0.087666 0.800472 +0.213338 0.122545 0.796187 +0.212621 0.139917 0.793511 +0.210901 0.174495 0.787094 +0.209899 0.191686 0.783354 +0.191686 0.209899 0.783354 +0.174495 0.210901 0.787094 +0.139917 0.212621 0.793511 +0.122545 0.213338 0.796187 +0.087666 0.214486 0.800472 +0.070173 0.214916 0.802079 +0.035113 0.215491 0.804223 +0.017560 0.215635 0.804759 +0.233191 0.000000 0.800042 +0.242465 0.018151 0.831861 +0.242306 0.036296 0.831313 +0.232731 0.052334 0.798462 +0.241668 0.072539 0.829124 +0.241189 0.090624 0.827482 +0.231350 0.104496 0.793727 +0.239913 0.126688 0.823106 +0.239117 0.144654 0.820372 +0.229052 0.156313 0.785841 +0.237205 0.180418 0.813814 +0.236091 0.198204 0.809992 +0.225838 0.207611 0.774816 +0.233547 0.233547 0.801263 +0.207611 0.225838 0.774816 +0.198204 0.236091 0.809992 +0.180418 0.237205 0.813814 +0.156313 0.229052 0.785841 +0.144654 0.239117 0.820372 +0.126688 0.239913 0.823106 +0.104496 0.231350 0.793727 +0.090624 0.241189 0.827482 +0.072539 0.241668 0.829124 +0.052334 0.232731 0.798462 +0.036296 0.242306 0.831313 +0.018151 0.242465 0.831861 +0.000000 0.233191 0.800042 +0.250588 0.000000 0.794764 +0.260555 0.018032 0.826376 +0.260386 0.036057 0.825839 +0.250100 0.051990 0.793216 +0.259709 0.072064 0.823692 +0.259202 0.090033 0.822083 +0.248636 0.103818 0.788572 +0.257848 0.125870 0.817791 +0.257003 0.143726 0.815109 +0.246197 0.155318 0.780838 +0.254975 0.179279 0.808677 +0.253792 0.196964 0.804926 +0.242786 0.206326 0.770019 +0.251091 0.232117 0.796358 +0.249572 0.249572 0.791542 +0.232117 0.251091 0.796358 +0.206326 0.242786 0.770019 +0.196964 0.253792 0.804926 +0.179279 0.254975 0.808677 +0.155318 0.246197 0.780838 +0.143726 0.257003 0.815109 +0.125870 0.257848 0.817791 +0.103818 0.248636 0.788572 +0.090033 0.259202 0.822083 +0.072064 0.259709 0.823692 +0.051990 0.250100 0.793216 +0.036057 0.260386 0.825839 +0.018032 0.260555 0.826376 +0.000000 0.250588 0.794764 +0.267809 0.017215 0.788940 +0.267638 0.034424 0.788435 +0.266952 0.068802 0.786414 +0.266437 0.085960 0.784899 +0.265066 0.120186 0.780859 +0.264209 0.137241 0.778334 +0.262152 0.171209 0.772275 +0.260952 0.188110 0.768741 +0.258212 0.221714 0.760667 +0.256670 0.238406 0.756127 +0.238406 0.256670 0.756127 +0.221714 0.258212 0.760667 +0.188110 0.260952 0.768741 +0.171209 0.262152 0.772275 +0.137241 0.264209 0.778334 +0.120186 0.265066 0.780859 +0.085960 0.266437 0.784899 +0.068802 0.266952 0.786414 +0.034424 0.267638 0.788435 +0.017215 0.267809 0.788940 +0.285017 0.000000 0.783077 +0.296355 0.017767 0.814229 +0.296168 0.035528 0.813716 +0.284478 0.051229 0.781596 +0.295421 0.071011 0.811662 +0.294860 0.088723 0.810122 +0.282860 0.102314 0.777153 +0.293365 0.124057 0.806014 +0.292430 0.141669 0.803446 +0.280165 0.153112 0.769746 +0.290187 0.176753 0.797283 +0.288879 0.194214 0.793688 +0.276390 0.203474 0.759376 +0.285888 0.228944 0.785471 +0.284205 0.246200 0.780848 +0.271537 0.253247 0.746042 +0.280467 0.280467 0.770576 +0.253247 0.271537 0.746042 +0.246200 0.284205 0.780848 +0.228944 0.285888 0.785471 +0.203474 0.276390 0.759376 +0.194214 0.288879 0.793688 +0.176753 0.290187 0.797283 +0.153112 0.280165 0.769746 +0.141669 0.292430 0.803446 +0.124057 0.293365 0.806014 +0.102314 0.282860 0.777153 +0.088723 0.294860 0.810122 +0.071011 0.295421 0.811662 +0.051229 0.284478 0.781596 +0.035528 0.296168 0.813716 +0.017767 0.296355 0.814229 +0.000000 0.285017 0.783077 +0.302032 0.000000 0.776673 +0.314048 0.017621 0.807573 +0.313853 0.035238 0.807072 +0.301470 0.050811 0.775228 +0.313074 0.070434 0.805068 +0.312489 0.088005 0.803565 +0.299783 0.101490 0.770892 +0.310930 0.123063 0.799555 +0.309955 0.140541 0.797049 +0.296972 0.151902 0.763661 +0.307615 0.175367 0.791031 +0.306250 0.192705 0.787520 +0.293032 0.201908 0.753531 +0.303127 0.227201 0.779490 +0.301370 0.244348 0.774972 +0.287964 0.251365 0.740498 +0.297464 0.278411 0.764927 +0.295315 0.295315 0.759401 +0.278411 0.297464 0.764927 +0.251365 0.287964 0.740498 +0.244348 0.301370 0.774972 +0.227201 0.303127 0.779490 +0.201908 0.293032 0.753531 +0.192705 0.306250 0.787520 +0.175367 0.307615 0.791031 +0.151902 0.296972 0.763661 +0.140541 0.309955 0.797049 +0.123063 0.310930 0.799555 +0.101490 0.299783 0.770892 +0.088005 0.312489 0.803565 +0.070434 0.313074 0.805068 +0.050811 0.301470 0.775228 +0.035238 0.313853 0.807072 +0.017621 0.314048 0.807573 +0.000000 0.302032 0.776673 +0.318838 0.016796 0.769743 +0.318644 0.033587 0.769274 +0.317866 0.067139 0.767397 +0.317283 0.083889 0.765989 +0.315727 0.117319 0.762232 +0.314754 0.133988 0.759883 +0.312417 0.167211 0.754242 +0.311053 0.183756 0.750949 +0.307933 0.216686 0.743417 +0.306177 0.233062 0.739177 +0.302271 0.265606 0.729747 +0.300121 0.281764 0.724556 +0.281764 0.300121 0.724556 +0.265606 0.302271 0.729747 +0.233062 0.306177 0.739177 +0.216686 0.307933 0.743417 +0.183756 0.311053 0.750949 +0.167211 0.312417 0.754242 +0.133988 0.314754 0.759883 +0.117319 0.315727 0.762232 +0.083889 0.317283 0.765989 +0.067139 0.317866 0.767397 +0.033587 0.318644 0.769274 +0.016796 0.318838 0.769743 +0.335622 0.000000 0.762760 +0.348978 0.017306 0.793112 +0.348769 0.034607 0.792637 +0.335020 0.049904 0.761391 +0.347933 0.069181 0.790739 +0.347307 0.086444 0.789314 +0.333212 0.099698 0.757281 +0.345634 0.120902 0.785513 +0.344588 0.138088 0.783136 +0.330194 0.149268 0.750423 +0.342075 0.172351 0.777426 +0.340608 0.189419 0.774091 +0.325962 0.198498 0.740805 +0.337251 0.223403 0.766462 +0.335361 0.240310 0.762165 +0.320508 0.247262 0.728410 +0.331154 0.273926 0.752604 +0.328837 0.290624 0.747339 +0.313824 0.295425 0.713220 +0.323775 0.323775 0.735834 +0.295425 0.313824 0.713220 +0.290624 0.328837 0.747339 +0.273926 0.331154 0.752604 +0.247262 0.320508 0.728410 +0.240310 0.335361 0.762165 +0.223403 0.337251 0.766462 +0.198498 0.325962 0.740805 +0.189419 0.340608 0.774091 +0.172351 0.342075 0.777426 +0.149268 0.330194 0.750423 +0.138088 0.344588 0.783136 +0.120902 0.345634 0.785513 +0.099698 0.333212 0.757281 +0.086444 0.347307 0.789314 +0.069181 0.347933 0.790739 +0.049904 0.335020 0.761391 +0.034607 0.348769 0.792637 +0.017306 0.348978 0.793112 +0.000000 0.335622 0.762760 +0.352182 0.000000 0.755256 +0.366198 0.017136 0.785313 +0.365983 0.034267 0.784853 +0.351562 0.049415 0.753927 +0.365123 0.068504 0.783009 +0.364478 0.085602 0.781626 +0.349701 0.098731 0.749937 +0.362757 0.119736 0.777934 +0.361680 0.136764 0.775625 +0.346595 0.147847 0.743275 +0.359093 0.170722 0.770076 +0.357581 0.187643 0.766835 +0.342235 0.196655 0.733925 +0.354122 0.221350 0.759416 +0.352173 0.238125 0.755236 +0.336612 0.245041 0.721867 +0.347833 0.271497 0.745931 +0.345442 0.288083 0.740803 +0.329714 0.292880 0.707075 +0.340215 0.321029 0.729593 +0.337377 0.337377 0.723508 +0.321029 0.340215 0.729593 +0.292880 0.329714 0.707075 +0.288083 0.345442 0.740803 +0.271497 0.347833 0.745931 +0.245041 0.336612 0.721867 +0.238125 0.352173 0.755236 +0.221350 0.354122 0.759416 +0.196655 0.342235 0.733925 +0.187643 0.357581 0.766835 +0.170722 0.359093 0.770076 +0.147847 0.346595 0.743275 +0.136764 0.361680 0.775625 +0.119736 0.362757 0.777934 +0.098731 0.349701 0.749937 +0.085602 0.364478 0.781626 +0.068504 0.365123 0.783009 +0.049415 0.351562 0.753927 +0.034267 0.365983 0.784853 +0.017136 0.366198 0.785313 +0.000000 0.352182 0.755256 +0.368503 0.016305 0.747251 +0.368292 0.032607 0.746822 +0.367444 0.065188 0.745104 +0.366809 0.081461 0.743814 +0.365112 0.113954 0.740373 +0.364050 0.130168 0.738220 +0.361497 0.162512 0.733044 +0.360006 0.178635 0.730020 +0.356591 0.210763 0.723095 +0.354666 0.226760 0.719191 +0.350378 0.258600 0.710497 +0.348014 0.274433 0.705703 +0.342843 0.305903 0.695217 +0.340034 0.321529 0.689522 +0.321529 0.340034 0.689522 +0.305903 0.342843 0.695217 +0.274433 0.348014 0.705703 +0.258600 0.350378 0.710497 +0.226760 0.354666 0.719191 +0.210763 0.356591 0.723095 +0.178635 0.360006 0.730020 +0.162512 0.361497 0.733044 +0.130168 0.364050 0.738220 +0.113954 0.365112 0.740373 +0.081461 0.366809 0.743814 +0.065188 0.367444 0.745104 +0.032607 0.368292 0.746822 +0.016305 0.368503 0.747251 +0.384791 0.000000 0.739176 +0.400107 0.016771 0.768599 +0.399882 0.033539 0.768167 +0.384142 0.048366 0.737930 +0.398983 0.067055 0.766438 +0.398307 0.083797 0.765141 +0.382193 0.096658 0.734187 +0.396504 0.117233 0.761677 +0.395375 0.133922 0.759509 +0.378938 0.144795 0.727932 +0.392662 0.167224 0.754297 +0.391076 0.183830 0.751250 +0.374362 0.192694 0.719143 +0.387443 0.216935 0.744270 +0.385394 0.233427 0.740334 +0.368451 0.240261 0.707787 +0.380827 0.266267 0.731562 +0.378308 0.282607 0.726723 +0.361184 0.287393 0.693827 +0.372794 0.315105 0.716131 +0.369798 0.331253 0.710375 +0.352538 0.333968 0.677220 +0.363320 0.363320 0.697931 +0.333968 0.352538 0.677220 +0.331253 0.369798 0.710375 +0.315105 0.372794 0.716131 +0.287393 0.361184 0.693827 +0.282607 0.378308 0.726723 +0.266267 0.380827 0.731562 +0.240261 0.368451 0.707787 +0.233427 0.385394 0.740334 +0.216935 0.387443 0.744270 +0.192694 0.374362 0.719143 +0.183830 0.391076 0.751250 +0.167224 0.392662 0.754297 +0.144795 0.378938 0.727932 +0.133922 0.395375 0.759509 +0.117233 0.396504 0.761677 +0.096658 0.382193 0.734187 +0.083797 0.398307 0.765141 +0.067055 0.398983 0.766438 +0.048366 0.384142 0.737930 +0.033539 0.399882 0.768167 +0.016771 0.400107 0.768599 +0.000000 0.384791 0.739176 +0.400824 0.000000 0.730606 +0.416781 0.016577 0.759691 +0.416552 0.033151 0.759274 +0.400164 0.047808 0.729402 +0.415636 0.066282 0.757604 +0.414949 0.082834 0.756351 +0.398180 0.095552 0.725787 +0.413113 0.115899 0.753005 +0.411963 0.132406 0.750910 +0.394865 0.143166 0.719743 +0.409199 0.165356 0.745872 +0.407583 0.181793 0.742926 +0.390202 0.190577 0.711244 +0.403878 0.214575 0.736173 +0.401788 0.230913 0.732363 +0.384172 0.237704 0.700252 +0.397128 0.263467 0.723869 +0.394556 0.279674 0.719180 +0.376750 0.284451 0.686725 +0.388921 0.311928 0.708909 +0.385857 0.327965 0.703324 +0.367910 0.330709 0.670611 +0.379228 0.359837 0.691241 +0.375661 0.375661 0.684740 +0.359837 0.379228 0.691241 +0.330709 0.367910 0.670611 +0.327965 0.385857 0.703324 +0.311928 0.388921 0.708909 +0.284451 0.376750 0.686725 +0.279674 0.394556 0.719180 +0.263467 0.397128 0.723869 +0.237704 0.384172 0.700252 +0.230913 0.401788 0.732363 +0.214575 0.403878 0.736173 +0.190577 0.390202 0.711244 +0.181793 0.407583 0.742926 +0.165356 0.409199 0.745872 +0.143166 0.394865 0.719743 +0.132406 0.411963 0.750910 +0.115899 0.413113 0.753005 +0.095552 0.398180 0.725787 +0.082834 0.414949 0.756351 +0.066282 0.415636 0.757604 +0.047808 0.400164 0.729402 +0.033151 0.416552 0.759274 +0.016577 0.416781 0.759691 +0.000000 0.400824 0.730606 +0.416592 0.015744 0.721559 +0.416369 0.031487 0.721172 +0.415476 0.062959 0.719625 +0.414805 0.078685 0.718464 +0.413014 0.110105 0.715361 +0.411892 0.125795 0.713418 +0.409193 0.157125 0.708743 +0.407615 0.172759 0.706009 +0.403995 0.203955 0.699739 +0.401951 0.219511 0.696200 +0.397392 0.250522 0.688304 +0.394875 0.265971 0.683943 +0.389356 0.296736 0.674384 +0.386352 0.312045 0.669182 +0.379850 0.342491 0.657920 +0.376348 0.357620 0.651855 +0.357620 0.376348 0.651855 +0.342491 0.379850 0.657920 +0.312045 0.386352 0.669182 +0.296736 0.389356 0.674384 +0.265971 0.394875 0.683943 +0.250522 0.397392 0.688304 +0.219511 0.401951 0.696200 +0.203955 0.403995 0.699739 +0.172759 0.407615 0.706009 +0.157125 0.409193 0.708743 +0.125795 0.411892 0.713418 +0.110105 0.413014 0.715361 +0.078685 0.414805 0.718464 +0.062959 0.415476 0.719625 +0.031487 0.416369 0.721172 +0.015744 0.416592 0.721559 +0.432311 0.000000 0.712427 +0.449525 0.016164 0.740795 +0.449291 0.032327 0.740408 +0.431634 0.046622 0.711311 +0.448351 0.064642 0.738860 +0.447646 0.080791 0.737697 +0.429599 0.093204 0.707957 +0.445761 0.113064 0.734591 +0.444581 0.129185 0.732646 +0.426193 0.139705 0.702344 +0.441740 0.161386 0.727964 +0.440077 0.177461 0.725225 +0.421396 0.186074 0.694439 +0.436263 0.209552 0.718939 +0.434109 0.225562 0.715390 +0.415182 0.232254 0.684198 +0.429301 0.257496 0.707466 +0.426643 0.273415 0.703086 +0.407515 0.278171 0.671563 +0.420815 0.305139 0.693481 +0.417640 0.320936 0.688250 +0.398356 0.323735 0.656470 +0.410762 0.352380 0.676915 +0.407055 0.368017 0.670806 +0.387661 0.368837 0.638845 +0.399096 0.399096 0.657690 +0.368837 0.387661 0.638845 +0.368017 0.407055 0.670806 +0.352380 0.410762 0.676915 +0.323735 0.398356 0.656470 +0.320936 0.417640 0.688250 +0.305139 0.420815 0.693481 +0.278171 0.407515 0.671563 +0.273415 0.426643 0.703086 +0.257496 0.429301 0.707466 +0.232254 0.415182 0.684198 +0.225562 0.434109 0.715390 +0.209552 0.436263 0.718939 +0.186074 0.421396 0.694439 +0.177461 0.440077 0.725225 +0.161386 0.441740 0.727964 +0.139705 0.426193 0.702344 +0.129185 0.444581 0.732646 +0.113064 0.445761 0.734591 +0.093204 0.429599 0.707957 +0.080791 0.447646 0.737697 +0.064642 0.448351 0.738860 +0.046622 0.431634 0.711311 +0.032327 0.449291 0.740408 +0.016164 0.449525 0.740795 +0.000000 0.432311 0.712427 +0.447750 0.000000 0.702826 +0.465581 0.015946 0.730816 +0.465344 0.031892 0.730444 +0.447067 0.045995 0.701755 +0.464397 0.063776 0.728958 +0.463686 0.079712 0.727841 +0.445015 0.091964 0.698533 +0.461785 0.111566 0.724858 +0.460594 0.127482 0.722988 +0.441579 0.137874 0.693140 +0.457727 0.159285 0.718488 +0.456049 0.175168 0.715854 +0.436737 0.183690 0.685539 +0.452197 0.206890 0.709807 +0.450020 0.222724 0.706390 +0.430456 0.229363 0.675681 +0.445158 0.254327 0.698758 +0.442469 0.270091 0.694538 +0.422699 0.274832 0.663504 +0.436568 0.301528 0.685274 +0.433351 0.317194 0.680225 +0.413418 0.320020 0.648936 +0.426376 0.348403 0.669276 +0.422613 0.363937 0.663370 +0.402562 0.364825 0.631895 +0.414527 0.394840 0.650677 +0.410199 0.410199 0.643883 +0.394840 0.414527 0.650677 +0.364825 0.402562 0.631895 +0.363937 0.422613 0.663370 +0.348403 0.426376 0.669276 +0.320020 0.413418 0.648936 +0.317194 0.433351 0.680225 +0.301528 0.436568 0.685274 +0.274832 0.422699 0.663504 +0.270091 0.442469 0.694538 +0.254327 0.445158 0.698758 +0.229363 0.430456 0.675681 +0.222724 0.450020 0.706390 +0.206890 0.452197 0.709807 +0.183690 0.436737 0.685539 +0.175168 0.456049 0.715854 +0.159285 0.457727 0.718488 +0.137874 0.441579 0.693140 +0.127482 0.460594 0.722988 +0.111566 0.461785 0.724858 +0.091964 0.445015 0.698533 +0.079712 0.463686 0.727841 +0.063776 0.464397 0.728958 +0.045995 0.447067 0.701755 +0.031892 0.465344 0.730444 +0.015946 0.465581 0.730816 +0.000000 0.447750 0.702826 +0.462899 0.015116 0.692777 +0.462670 0.030232 0.692435 +0.461755 0.060460 0.691065 +0.461068 0.075571 0.690036 +0.459230 0.105783 0.687286 +0.458078 0.120883 0.685563 +0.455305 0.151065 0.681411 +0.453680 0.166145 0.678980 +0.449950 0.196278 0.673398 +0.447841 0.211326 0.670242 +0.443128 0.241381 0.663188 +0.440520 0.256382 0.659284 +0.434790 0.286319 0.650710 +0.431665 0.301250 0.646033 +0.424883 0.331019 0.635882 +0.421221 0.345850 0.630401 +0.413343 0.375383 0.618611 +0.409122 0.390075 0.612295 +0.390075 0.409122 0.612295 +0.375383 0.413343 0.618611 +0.345850 0.421221 0.630401 +0.331019 0.424883 0.635882 +0.301250 0.431665 0.646033 +0.286319 0.434790 0.650710 +0.256382 0.440520 0.659284 +0.241381 0.443128 0.663188 +0.211326 0.447841 0.670242 +0.196278 0.449950 0.673398 +0.166145 0.453680 0.678980 +0.151065 0.455305 0.681411 +0.120883 0.458078 0.685563 +0.105783 0.459230 0.687286 +0.075571 0.461068 0.690036 +0.060460 0.461755 0.691065 +0.030232 0.462670 0.692435 +0.015116 0.462899 0.692777 +0.477980 0.000000 0.682627 +0.497020 0.015488 0.709818 +0.496782 0.030976 0.709478 +0.477293 0.044677 0.681645 +0.495828 0.061952 0.708116 +0.495111 0.077439 0.707092 +0.475225 0.089351 0.678691 +0.493195 0.108411 0.704356 +0.491994 0.123894 0.702640 +0.471759 0.134016 0.673742 +0.489100 0.154855 0.698507 +0.487404 0.170331 0.696086 +0.466867 0.178656 0.666755 +0.483509 0.201269 0.690522 +0.481305 0.216729 0.687375 +0.460509 0.223250 0.657674 +0.476377 0.247623 0.680337 +0.473648 0.263053 0.676440 +0.452635 0.267760 0.646429 +0.467650 0.293871 0.667873 +0.464375 0.309253 0.663196 +0.443186 0.312129 0.632935 +0.457261 0.339950 0.653037 +0.453417 0.355256 0.647547 +0.432094 0.356279 0.617094 +0.445139 0.385767 0.635725 +0.440700 0.400962 0.629384 +0.419284 0.400105 0.598800 +0.431204 0.431204 0.615823 +0.400105 0.419284 0.598800 +0.400962 0.440700 0.629384 +0.385767 0.445139 0.635725 +0.356279 0.432094 0.617094 +0.355256 0.453417 0.647547 +0.339950 0.457261 0.653037 +0.312129 0.443186 0.632935 +0.309253 0.464375 0.663196 +0.293871 0.467650 0.667873 +0.267760 0.452635 0.646429 +0.263053 0.473648 0.676440 +0.247623 0.476377 0.680337 +0.223250 0.460509 0.657674 +0.216729 0.481305 0.687375 +0.201269 0.483509 0.690522 +0.178656 0.466867 0.666755 +0.170331 0.487404 0.696086 +0.154855 0.489100 0.698507 +0.134016 0.471759 0.673742 +0.123894 0.491994 0.702640 +0.108411 0.493195 0.704356 +0.089351 0.475225 0.678691 +0.077439 0.495111 0.707092 +0.061952 0.495828 0.708116 +0.044677 0.477293 0.681645 +0.030976 0.496782 0.709478 +0.015488 0.497020 0.709818 +0.000000 0.477980 0.682627 +0.492758 0.000000 0.672037 +0.512389 0.015248 0.698810 +0.512151 0.030497 0.698486 +0.492071 0.043986 0.671100 +0.511198 0.060996 0.697186 +0.510481 0.076247 0.696209 +0.490004 0.087981 0.668281 +0.508566 0.106755 0.693596 +0.507365 0.122011 0.691958 +0.486538 0.131989 0.663554 +0.504469 0.152528 0.688009 +0.502773 0.167789 0.685695 +0.481642 0.176009 0.656876 +0.498872 0.198311 0.680375 +0.496664 0.213572 0.677365 +0.475271 0.220030 0.648188 +0.491724 0.244088 0.670627 +0.488986 0.259340 0.666893 +0.467372 0.264026 0.637415 +0.482964 0.289826 0.658679 +0.479673 0.305055 0.654192 +0.457877 0.307953 0.624466 +0.472519 0.335471 0.644435 +0.468649 0.350653 0.639157 +0.446711 0.351743 0.609237 +0.460307 0.380946 0.627780 +0.455829 0.396049 0.621672 +0.433789 0.395304 0.591614 +0.446239 0.426141 0.608593 +0.441120 0.441120 0.601612 +0.426141 0.446239 0.608593 +0.395304 0.433789 0.591614 +0.396049 0.455829 0.621672 +0.380946 0.460307 0.627780 +0.351743 0.446711 0.609237 +0.350653 0.468649 0.639157 +0.335471 0.472519 0.644435 +0.307953 0.457877 0.624466 +0.305055 0.479673 0.654192 +0.289826 0.482964 0.658679 +0.264026 0.467372 0.637415 +0.259340 0.488986 0.666893 +0.244088 0.491724 0.670627 +0.220030 0.475271 0.648188 +0.213572 0.496664 0.677365 +0.198311 0.498872 0.680375 +0.176009 0.481642 0.656876 +0.167789 0.502773 0.685695 +0.152528 0.504469 0.688009 +0.131989 0.486538 0.663554 +0.122011 0.507365 0.691958 +0.106755 0.508566 0.693596 +0.087981 0.490004 0.668281 +0.076247 0.510481 0.696209 +0.060996 0.511198 0.697186 +0.043986 0.492071 0.671100 +0.030497 0.512151 0.698486 +0.015248 0.512389 0.698810 +0.000000 0.492758 0.672037 +0.507225 0.014424 0.661029 +0.506997 0.028848 0.660732 +0.506084 0.057702 0.659541 +0.505397 0.072134 0.658646 +0.503561 0.101007 0.656253 +0.502409 0.115451 0.654752 +0.499632 0.144353 0.651133 +0.498004 0.158812 0.649011 +0.494259 0.187747 0.644130 +0.492138 0.202222 0.641367 +0.487389 0.231186 0.635177 +0.484755 0.245672 0.631745 +0.478957 0.274650 0.624189 +0.475787 0.289137 0.620057 +0.468887 0.318101 0.611066 +0.465151 0.332571 0.606197 +0.457090 0.361475 0.595692 +0.452758 0.375900 0.590045 +0.443469 0.404678 0.577940 +0.438505 0.419020 0.571471 +0.419020 0.438505 0.571471 +0.404678 0.443469 0.577940 +0.375900 0.452758 0.590045 +0.361475 0.457090 0.595692 +0.332571 0.465151 0.606197 +0.318101 0.468887 0.611066 +0.289137 0.475787 0.620057 +0.274650 0.478957 0.624189 +0.245672 0.484755 0.631745 +0.231186 0.487389 0.635177 +0.202222 0.492138 0.641367 +0.187747 0.494259 0.644130 +0.158812 0.498004 0.649011 +0.144353 0.499632 0.651133 +0.115451 0.502409 0.654752 +0.101007 0.503561 0.656253 +0.072134 0.505397 0.658646 +0.057702 0.506084 0.659541 +0.028848 0.506997 0.660732 +0.014424 0.507225 0.661029 +0.521603 0.000000 0.649904 +0.542388 0.014746 0.675802 +0.542153 0.029493 0.675508 +0.520923 0.042541 0.649056 +0.541209 0.058996 0.674332 +0.540499 0.073755 0.673448 +0.518875 0.085114 0.646505 +0.538601 0.103289 0.671083 +0.537410 0.118068 0.669598 +0.515438 0.127746 0.642222 +0.534536 0.147653 0.666019 +0.532851 0.162460 0.663919 +0.510574 0.170459 0.636162 +0.528973 0.192106 0.659086 +0.526775 0.206946 0.656348 +0.504233 0.213266 0.628261 +0.521851 0.236658 0.650212 +0.519118 0.251530 0.646808 +0.496347 0.256165 0.618436 +0.513097 0.281301 0.639306 +0.509802 0.296199 0.635200 +0.486839 0.299136 0.606589 +0.502624 0.326009 0.626257 +0.498734 0.340917 0.621410 +0.475613 0.342139 0.592602 +0.490331 0.370727 0.610940 +0.485810 0.385623 0.605306 +0.462566 0.385102 0.576345 +0.476104 0.415372 0.593213 +0.470911 0.430218 0.586743 +0.447581 0.427919 0.557675 +0.459820 0.459820 0.572924 +0.427919 0.447581 0.557675 +0.430218 0.470911 0.586743 +0.415372 0.476104 0.593213 +0.385102 0.462566 0.576345 +0.385623 0.485810 0.605306 +0.370727 0.490331 0.610940 +0.342139 0.475613 0.592602 +0.340917 0.498734 0.621410 +0.326009 0.502624 0.626257 +0.299136 0.486839 0.606589 +0.296199 0.509802 0.635200 +0.281301 0.513097 0.639306 +0.256165 0.496347 0.618436 +0.251530 0.519118 0.646808 +0.236658 0.521851 0.650212 +0.213266 0.504233 0.628261 +0.206946 0.526775 0.656348 +0.192106 0.528973 0.659086 +0.170459 0.510574 0.636162 +0.162460 0.532851 0.663919 +0.147653 0.534536 0.666019 +0.127746 0.515438 0.642222 +0.118068 0.537410 0.669598 +0.103289 0.538601 0.671083 +0.085114 0.518875 0.646505 +0.073755 0.540499 0.673448 +0.058996 0.541209 0.674332 +0.042541 0.520923 0.649056 +0.029493 0.542153 0.675508 +0.014746 0.542388 0.675802 +0.000000 0.521603 0.649904 +0.535656 0.000000 0.638370 +0.557005 0.014484 0.663812 +0.556771 0.028971 0.663534 +0.534982 0.041788 0.637567 +0.555836 0.057954 0.662419 +0.555132 0.072455 0.661581 +0.532953 0.083619 0.635148 +0.553250 0.101482 0.659338 +0.552069 0.116011 0.657930 +0.529544 0.125531 0.631086 +0.549219 0.145107 0.654533 +0.547546 0.159675 0.652540 +0.524717 0.167557 0.625333 +0.543695 0.188860 0.647950 +0.541511 0.203477 0.645348 +0.518416 0.209723 0.617824 +0.536615 0.232764 0.639513 +0.533896 0.247433 0.636273 +0.510570 0.252038 0.608473 +0.527901 0.276823 0.629127 +0.524616 0.291542 0.625214 +0.501093 0.294496 0.597179 +0.517456 0.321023 0.616680 +0.513571 0.335782 0.612050 +0.489882 0.337068 0.583819 +0.505171 0.365326 0.602039 +0.500645 0.380105 0.596645 +0.476823 0.379696 0.568256 +0.490919 0.409660 0.585054 +0.485708 0.424426 0.578844 +0.461787 0.422288 0.550336 +0.474565 0.453913 0.565564 +0.468621 0.468621 0.558480 +0.453913 0.474565 0.565564 +0.422288 0.461787 0.550336 +0.424426 0.485708 0.578844 +0.409660 0.490919 0.585054 +0.379696 0.476823 0.568256 +0.380105 0.500645 0.596645 +0.365326 0.505171 0.602039 +0.337068 0.489882 0.583819 +0.335782 0.513571 0.612050 +0.321023 0.517456 0.616680 +0.294496 0.501093 0.597179 +0.291542 0.524616 0.625214 +0.276823 0.527901 0.629127 +0.252038 0.510570 0.608473 +0.247433 0.533896 0.636273 +0.232764 0.536615 0.639513 +0.209723 0.518416 0.617824 +0.203477 0.541511 0.645348 +0.188860 0.543695 0.647950 +0.167557 0.524717 0.625333 +0.159675 0.547546 0.652540 +0.145107 0.549219 0.654533 +0.125531 0.529544 0.631086 +0.116011 0.552069 0.657930 +0.101482 0.553250 0.659338 +0.083619 0.532953 0.635148 +0.072455 0.555132 0.661581 +0.057954 0.555836 0.662419 +0.041788 0.534982 0.637567 +0.028971 0.556771 0.663534 +0.014484 0.557005 0.663812 +0.000000 0.535656 0.638370 +0.549381 0.013669 0.626449 +0.549159 0.027340 0.626196 +0.548270 0.054696 0.625182 +0.547602 0.068385 0.624420 +0.545813 0.095793 0.622380 +0.544689 0.109517 0.621099 +0.541978 0.137009 0.618007 +0.540386 0.150781 0.616192 +0.536719 0.178385 0.612010 +0.534638 0.192218 0.609638 +0.529970 0.219953 0.604315 +0.527376 0.233855 0.601357 +0.521651 0.261731 0.594829 +0.518512 0.275704 0.591250 +0.511662 0.303719 0.583439 +0.507942 0.317758 0.579197 +0.499888 0.345892 0.570013 +0.495544 0.359983 0.565060 +0.486197 0.388196 0.554401 +0.481182 0.402311 0.548683 +0.470443 0.430537 0.536438 +0.464707 0.444636 0.529897 +0.444636 0.464707 0.529897 +0.430537 0.470443 0.536438 +0.402311 0.481182 0.548683 +0.388196 0.486197 0.554401 +0.359983 0.495544 0.565060 +0.345892 0.499888 0.570013 +0.317758 0.507942 0.579197 +0.303719 0.511662 0.583439 +0.275704 0.518512 0.591250 +0.261731 0.521651 0.594829 +0.233855 0.527376 0.601357 +0.219953 0.529970 0.604315 +0.192218 0.534638 0.609638 +0.178385 0.536719 0.612010 +0.150781 0.540386 0.616192 +0.137009 0.541978 0.618007 +0.109517 0.544689 0.621099 +0.095793 0.545813 0.622380 +0.068385 0.547602 0.624420 +0.054696 0.548270 0.625182 +0.027340 0.549159 0.626196 +0.013669 0.549381 0.626449 +0.562992 0.000000 0.614398 +0.585436 0.013941 0.638891 +0.585208 0.027884 0.638643 +0.562336 0.040223 0.613682 +0.584297 0.055787 0.637649 +0.583612 0.069752 0.636901 +0.560358 0.080509 0.611524 +0.581778 0.097720 0.634899 +0.580626 0.111728 0.633642 +0.557034 0.120918 0.607895 +0.577844 0.139802 0.630606 +0.576209 0.153872 0.628822 +0.552317 0.161506 0.602749 +0.572443 0.182087 0.624712 +0.570305 0.196235 0.622379 +0.546147 0.202320 0.596015 +0.565504 0.224621 0.617140 +0.562835 0.238860 0.614226 +0.538443 0.243395 0.587607 +0.556938 0.267434 0.607791 +0.553702 0.281771 0.604260 +0.529105 0.284750 0.577417 +0.546633 0.310542 0.596546 +0.542790 0.324975 0.592352 +0.518014 0.326384 0.565313 +0.534461 0.353932 0.583262 +0.529964 0.368452 0.578354 +0.505035 0.368266 0.551149 +0.520273 0.397562 0.567778 +0.515067 0.412146 0.562097 +0.490012 0.410331 0.534754 +0.503902 0.441351 0.549912 +0.497929 0.455962 0.543394 +0.472775 0.452471 0.515944 +0.485168 0.485168 0.529468 +0.452471 0.472775 0.515944 +0.455962 0.497929 0.543394 +0.441351 0.503902 0.549912 +0.410331 0.490012 0.534754 +0.412146 0.515067 0.562097 +0.397562 0.520273 0.567778 +0.368266 0.505035 0.551149 +0.368452 0.529964 0.578354 +0.353932 0.534461 0.583262 +0.326384 0.518014 0.565313 +0.324975 0.542790 0.592352 +0.310542 0.546633 0.596546 +0.284750 0.529105 0.577417 +0.281771 0.553702 0.604260 +0.267434 0.556938 0.607791 +0.243395 0.538443 0.587607 +0.238860 0.562835 0.614226 +0.224621 0.565504 0.617140 +0.202320 0.546147 0.596015 +0.196235 0.570305 0.622379 +0.182087 0.572443 0.624712 +0.161506 0.552317 0.602749 +0.153872 0.576209 0.628822 +0.139802 0.577844 0.630606 +0.120918 0.557034 0.607895 +0.111728 0.580626 0.633642 +0.097720 0.581778 0.634899 +0.080509 0.560358 0.611524 +0.069752 0.583612 0.636901 +0.055787 0.584297 0.637649 +0.040223 0.562336 0.613682 +0.027884 0.585208 0.638643 +0.013941 0.585436 0.638891 +0.000000 0.562992 0.614398 +0.576261 0.000000 0.601970 +0.599237 0.013659 0.625971 +0.599013 0.027320 0.625738 +0.575616 0.039411 0.601296 +0.598118 0.054663 0.624802 +0.597445 0.068350 0.624099 +0.573673 0.078895 0.599266 +0.595641 0.095768 0.622215 +0.594508 0.109505 0.621031 +0.570403 0.118522 0.595850 +0.591771 0.137045 0.618172 +0.590163 0.150855 0.616492 +0.565760 0.158358 0.591001 +0.586453 0.178562 0.612617 +0.584346 0.192464 0.610416 +0.559680 0.198462 0.584650 +0.579613 0.220374 0.605471 +0.576978 0.234385 0.602720 +0.552077 0.238880 0.576707 +0.571154 0.262526 0.596636 +0.567956 0.276658 0.593294 +0.542846 0.279645 0.567064 +0.560961 0.305046 0.585987 +0.557154 0.319302 0.582011 +0.531859 0.320769 0.555588 +0.548894 0.347937 0.573382 +0.544428 0.362313 0.568717 +0.518971 0.362236 0.542124 +0.534793 0.391172 0.558652 +0.529610 0.405651 0.553238 +0.504013 0.403997 0.526499 +0.518477 0.434687 0.541608 +0.512513 0.449235 0.535378 +0.486800 0.445959 0.508518 +0.499748 0.478365 0.522044 +0.492932 0.492932 0.514924 +0.478365 0.499748 0.522044 +0.445959 0.486800 0.508518 +0.449235 0.512513 0.535378 +0.434687 0.518477 0.541608 +0.403997 0.504013 0.526499 +0.405651 0.529610 0.553238 +0.391172 0.534793 0.558652 +0.362236 0.518971 0.542124 +0.362313 0.544428 0.568717 +0.347937 0.548894 0.573382 +0.320769 0.531859 0.555588 +0.319302 0.557154 0.582011 +0.305046 0.560961 0.585987 +0.279645 0.542846 0.567064 +0.276658 0.567956 0.593294 +0.262526 0.571154 0.596636 +0.238880 0.552077 0.576707 +0.234385 0.576978 0.602720 +0.220374 0.579613 0.605471 +0.198462 0.559680 0.584650 +0.192464 0.584346 0.610416 +0.178562 0.586453 0.612617 +0.158358 0.565760 0.591001 +0.150855 0.590163 0.616492 +0.137045 0.591771 0.618172 +0.118522 0.570403 0.595850 +0.109505 0.594508 0.621031 +0.095768 0.595641 0.622215 +0.078895 0.573673 0.599266 +0.068350 0.597445 0.624099 +0.054663 0.598118 0.624802 +0.039411 0.575616 0.601296 +0.027320 0.599013 0.625738 +0.013659 0.599237 0.625971 +0.000000 0.576261 0.601970 +0.589186 0.012856 0.589186 +0.588975 0.025715 0.588975 +0.588131 0.051455 0.588131 +0.587497 0.064341 0.587497 +0.585797 0.090163 0.585797 +0.584728 0.103103 0.584728 +0.582146 0.129059 0.582146 +0.580628 0.142079 0.580628 +0.577125 0.168217 0.577125 +0.575135 0.181339 0.575135 +0.570659 0.207703 0.570659 +0.568167 0.220948 0.568167 +0.562651 0.247572 0.562651 +0.559619 0.260955 0.559619 +0.552982 0.287864 0.552982 +0.549366 0.301393 0.549366 +0.541511 0.328597 0.541511 +0.537259 0.342272 0.537259 +0.528073 0.369761 0.528073 +0.523124 0.383571 0.523124 +0.512479 0.411308 0.512479 +0.506767 0.425228 0.506767 +0.494522 0.453146 0.494522 +0.487972 0.467131 0.487972 +0.467131 0.487972 0.487972 +0.453146 0.494522 0.494522 +0.425228 0.506767 0.506767 +0.411308 0.512479 0.512479 +0.383571 0.523124 0.523124 +0.369761 0.528073 0.528073 +0.342272 0.537259 0.537259 +0.328597 0.541511 0.541511 +0.301393 0.549366 0.549366 +0.287864 0.552982 0.552982 +0.260955 0.559619 0.559619 +0.247572 0.562651 0.562651 +0.220948 0.568167 0.568167 +0.207703 0.570659 0.570659 +0.181339 0.575135 0.575135 +0.168217 0.577125 0.577125 +0.142079 0.580628 0.580628 +0.129059 0.582146 0.582146 +0.103103 0.584728 0.584728 +0.090163 0.585797 0.585797 +0.064341 0.587497 0.587497 +0.051455 0.588131 0.588131 +0.025715 0.588975 0.588975 +0.012856 0.589186 0.589186 +0.601970 0.000000 0.576261 +0.625971 0.013659 0.599237 +0.625738 0.027320 0.599013 +0.601296 0.039411 0.575616 +0.624802 0.054663 0.598118 +0.624099 0.068350 0.597445 +0.599266 0.078895 0.573673 +0.622215 0.095768 0.595641 +0.621031 0.109505 0.594508 +0.595850 0.118522 0.570403 +0.618172 0.137045 0.591771 +0.616492 0.150855 0.590163 +0.591001 0.158358 0.565760 +0.612617 0.178562 0.586453 +0.610416 0.192464 0.584346 +0.584650 0.198462 0.559680 +0.605471 0.220374 0.579613 +0.602720 0.234385 0.576978 +0.576707 0.238880 0.552077 +0.596636 0.262526 0.571154 +0.593294 0.276658 0.567956 +0.567064 0.279645 0.542846 +0.585987 0.305046 0.560961 +0.582011 0.319302 0.557154 +0.555588 0.320769 0.531859 +0.573382 0.347937 0.548894 +0.568717 0.362313 0.544428 +0.542124 0.362236 0.518971 +0.558652 0.391172 0.534793 +0.553238 0.405651 0.529610 +0.526499 0.403997 0.504013 +0.541608 0.434687 0.518477 +0.535378 0.449235 0.512513 +0.508518 0.445959 0.486800 +0.522044 0.478365 0.499748 +0.514924 0.492932 0.492932 +0.487972 0.487972 0.467131 +0.492932 0.514924 0.492932 +0.478365 0.522044 0.499748 +0.445959 0.508518 0.486800 +0.449235 0.535378 0.512513 +0.434687 0.541608 0.518477 +0.403997 0.526499 0.504013 +0.405651 0.553238 0.529610 +0.391172 0.558652 0.534793 +0.362236 0.542124 0.518971 +0.362313 0.568717 0.544428 +0.347937 0.573382 0.548894 +0.320769 0.555588 0.531859 +0.319302 0.582011 0.557154 +0.305046 0.585987 0.560961 +0.279645 0.567064 0.542846 +0.276658 0.593294 0.567956 +0.262526 0.596636 0.571154 +0.238880 0.576707 0.552077 +0.234385 0.602720 0.576978 +0.220374 0.605471 0.579613 +0.198462 0.584650 0.559680 +0.192464 0.610416 0.584346 +0.178562 0.612617 0.586453 +0.158358 0.591001 0.565760 +0.150855 0.616492 0.590163 +0.137045 0.618172 0.591771 +0.118522 0.595850 0.570403 +0.109505 0.621031 0.594508 +0.095768 0.622215 0.595641 +0.078895 0.599266 0.573673 +0.068350 0.624099 0.597445 +0.054663 0.624802 0.598118 +0.039411 0.601296 0.575616 +0.027320 0.625738 0.599013 +0.013659 0.625971 0.599237 +0.000000 0.601970 0.576261 +0.614398 0.000000 0.562992 +0.638891 0.013941 0.585436 +0.638643 0.027884 0.585208 +0.613682 0.040223 0.562336 +0.637649 0.055787 0.584297 +0.636901 0.069752 0.583612 +0.611524 0.080509 0.560358 +0.634899 0.097720 0.581778 +0.633642 0.111728 0.580626 +0.607895 0.120918 0.557034 +0.630606 0.139802 0.577844 +0.628822 0.153872 0.576209 +0.602749 0.161506 0.552317 +0.624712 0.182087 0.572443 +0.622379 0.196235 0.570305 +0.596015 0.202320 0.546147 +0.617140 0.224621 0.565504 +0.614226 0.238860 0.562835 +0.587607 0.243395 0.538443 +0.607791 0.267434 0.556938 +0.604260 0.281771 0.553702 +0.577417 0.284750 0.529105 +0.596546 0.310542 0.546633 +0.592352 0.324975 0.542790 +0.565313 0.326384 0.518014 +0.583262 0.353932 0.534461 +0.578354 0.368452 0.529964 +0.551149 0.368266 0.505035 +0.567778 0.397562 0.520273 +0.562097 0.412146 0.515067 +0.534754 0.410331 0.490012 +0.549912 0.441351 0.503902 +0.543394 0.455962 0.497929 +0.515944 0.452471 0.472775 +0.529468 0.485168 0.485168 +0.522044 0.499748 0.478365 +0.494522 0.494522 0.453146 +0.499748 0.522044 0.478365 +0.485168 0.529468 0.485168 +0.452471 0.515944 0.472775 +0.455962 0.543394 0.497929 +0.441351 0.549912 0.503902 +0.410331 0.534754 0.490012 +0.412146 0.562097 0.515067 +0.397562 0.567778 0.520273 +0.368266 0.551149 0.505035 +0.368452 0.578354 0.529964 +0.353932 0.583262 0.534461 +0.326384 0.565313 0.518014 +0.324975 0.592352 0.542790 +0.310542 0.596546 0.546633 +0.284750 0.577417 0.529105 +0.281771 0.604260 0.553702 +0.267434 0.607791 0.556938 +0.243395 0.587607 0.538443 +0.238860 0.614226 0.562835 +0.224621 0.617140 0.565504 +0.202320 0.596015 0.546147 +0.196235 0.622379 0.570305 +0.182087 0.624712 0.572443 +0.161506 0.602749 0.552317 +0.153872 0.628822 0.576209 +0.139802 0.630606 0.577844 +0.120918 0.607895 0.557034 +0.111728 0.633642 0.580626 +0.097720 0.634899 0.581778 +0.080509 0.611524 0.560358 +0.069752 0.636901 0.583612 +0.055787 0.637649 0.584297 +0.040223 0.613682 0.562336 +0.027884 0.638643 0.585208 +0.013941 0.638891 0.585436 +0.000000 0.614398 0.562992 +0.626449 0.013669 0.549381 +0.626196 0.027340 0.549159 +0.625182 0.054696 0.548270 +0.624420 0.068385 0.547602 +0.622380 0.095793 0.545813 +0.621099 0.109517 0.544689 +0.618007 0.137009 0.541978 +0.616192 0.150781 0.540386 +0.612010 0.178385 0.536719 +0.609638 0.192218 0.534638 +0.604315 0.219953 0.529970 +0.601357 0.233855 0.527376 +0.594829 0.261731 0.521651 +0.591250 0.275704 0.518512 +0.583439 0.303719 0.511662 +0.579197 0.317758 0.507942 +0.570013 0.345892 0.499888 +0.565060 0.359983 0.495544 +0.554401 0.388196 0.486197 +0.548683 0.402311 0.481182 +0.536438 0.430537 0.470443 +0.529897 0.444636 0.464707 +0.515944 0.472775 0.452471 +0.508518 0.486800 0.445959 +0.486800 0.508518 0.445959 +0.472775 0.515944 0.452471 +0.444636 0.529897 0.464707 +0.430537 0.536438 0.470443 +0.402311 0.548683 0.481182 +0.388196 0.554401 0.486197 +0.359983 0.565060 0.495544 +0.345892 0.570013 0.499888 +0.317758 0.579197 0.507942 +0.303719 0.583439 0.511662 +0.275704 0.591250 0.518512 +0.261731 0.594829 0.521651 +0.233855 0.601357 0.527376 +0.219953 0.604315 0.529970 +0.192218 0.609638 0.534638 +0.178385 0.612010 0.536719 +0.150781 0.616192 0.540386 +0.137009 0.618007 0.541978 +0.109517 0.621099 0.544689 +0.095793 0.622380 0.545813 +0.068385 0.624420 0.547602 +0.054696 0.625182 0.548270 +0.027340 0.626196 0.549159 +0.013669 0.626449 0.549381 +0.638370 0.000000 0.535656 +0.663812 0.014484 0.557005 +0.663534 0.028971 0.556771 +0.637567 0.041788 0.534982 +0.662419 0.057954 0.555836 +0.661581 0.072455 0.555132 +0.635148 0.083619 0.532953 +0.659338 0.101482 0.553250 +0.657930 0.116011 0.552069 +0.631086 0.125531 0.529544 +0.654533 0.145107 0.549219 +0.652540 0.159675 0.547546 +0.625333 0.167557 0.524717 +0.647950 0.188860 0.543695 +0.645348 0.203477 0.541511 +0.617824 0.209723 0.518416 +0.639513 0.232764 0.536615 +0.636273 0.247433 0.533896 +0.608473 0.252038 0.510570 +0.629127 0.276823 0.527901 +0.625214 0.291542 0.524616 +0.597179 0.294496 0.501093 +0.616680 0.321023 0.517456 +0.612050 0.335782 0.513571 +0.583819 0.337068 0.489882 +0.602039 0.365326 0.505171 +0.596645 0.380105 0.500645 +0.568256 0.379696 0.476823 +0.585054 0.409660 0.490919 +0.578844 0.424426 0.485708 +0.550336 0.422288 0.461787 +0.565564 0.453913 0.474565 +0.558480 0.468621 0.468621 +0.529897 0.464707 0.444636 +0.543394 0.497929 0.455962 +0.535378 0.512513 0.449235 +0.506767 0.506767 0.425228 +0.512513 0.535378 0.449235 +0.497929 0.543394 0.455962 +0.464707 0.529897 0.444636 +0.468621 0.558480 0.468621 +0.453913 0.565564 0.474565 +0.422288 0.550336 0.461787 +0.424426 0.578844 0.485708 +0.409660 0.585054 0.490919 +0.379696 0.568256 0.476823 +0.380105 0.596645 0.500645 +0.365326 0.602039 0.505171 +0.337068 0.583819 0.489882 +0.335782 0.612050 0.513571 +0.321023 0.616680 0.517456 +0.294496 0.597179 0.501093 +0.291542 0.625214 0.524616 +0.276823 0.629127 0.527901 +0.252038 0.608473 0.510570 +0.247433 0.636273 0.533896 +0.232764 0.639513 0.536615 +0.209723 0.617824 0.518416 +0.203477 0.645348 0.541511 +0.188860 0.647950 0.543695 +0.167557 0.625333 0.524717 +0.159675 0.652540 0.547546 +0.145107 0.654533 0.549219 +0.125531 0.631086 0.529544 +0.116011 0.657930 0.552069 +0.101482 0.659338 0.553250 +0.083619 0.635148 0.532953 +0.072455 0.661581 0.555132 +0.057954 0.662419 0.555836 +0.041788 0.637567 0.534982 +0.028971 0.663534 0.556771 +0.014484 0.663812 0.557005 +0.000000 0.638370 0.535656 +0.649904 0.000000 0.521603 +0.675802 0.014746 0.542388 +0.675508 0.029493 0.542153 +0.649056 0.042541 0.520923 +0.674332 0.058996 0.541209 +0.673448 0.073755 0.540499 +0.646505 0.085114 0.518875 +0.671083 0.103289 0.538601 +0.669598 0.118068 0.537410 +0.642222 0.127746 0.515438 +0.666019 0.147653 0.534536 +0.663919 0.162460 0.532851 +0.636162 0.170459 0.510574 +0.659086 0.192106 0.528973 +0.656348 0.206946 0.526775 +0.628261 0.213266 0.504233 +0.650212 0.236658 0.521851 +0.646808 0.251530 0.519118 +0.618436 0.256165 0.496347 +0.639306 0.281301 0.513097 +0.635200 0.296199 0.509802 +0.606589 0.299136 0.486839 +0.626257 0.326009 0.502624 +0.621410 0.340917 0.498734 +0.592602 0.342139 0.475613 +0.610940 0.370727 0.490331 +0.605306 0.385623 0.485810 +0.576345 0.385102 0.462566 +0.593213 0.415372 0.476104 +0.586743 0.430218 0.470911 +0.557675 0.427919 0.447581 +0.572924 0.459820 0.459820 +0.565564 0.474565 0.453913 +0.536438 0.470443 0.430537 +0.549912 0.503902 0.441351 +0.541608 0.518477 0.434687 +0.512479 0.512479 0.411308 +0.518477 0.541608 0.434687 +0.503902 0.549912 0.441351 +0.470443 0.536438 0.430537 +0.474565 0.565564 0.453913 +0.459820 0.572924 0.459820 +0.427919 0.557675 0.447581 +0.430218 0.586743 0.470911 +0.415372 0.593213 0.476104 +0.385102 0.576345 0.462566 +0.385623 0.605306 0.485810 +0.370727 0.610940 0.490331 +0.342139 0.592602 0.475613 +0.340917 0.621410 0.498734 +0.326009 0.626257 0.502624 +0.299136 0.606589 0.486839 +0.296199 0.635200 0.509802 +0.281301 0.639306 0.513097 +0.256165 0.618436 0.496347 +0.251530 0.646808 0.519118 +0.236658 0.650212 0.521851 +0.213266 0.628261 0.504233 +0.206946 0.656348 0.526775 +0.192106 0.659086 0.528973 +0.170459 0.636162 0.510574 +0.162460 0.663919 0.532851 +0.147653 0.666019 0.534536 +0.127746 0.642222 0.515438 +0.118068 0.669598 0.537410 +0.103289 0.671083 0.538601 +0.085114 0.646505 0.518875 +0.073755 0.673448 0.540499 +0.058996 0.674332 0.541209 +0.042541 0.649056 0.520923 +0.029493 0.675508 0.542153 +0.014746 0.675802 0.542388 +0.000000 0.649904 0.521603 +0.661029 0.014424 0.507225 +0.660732 0.028848 0.506997 +0.659541 0.057702 0.506084 +0.658646 0.072134 0.505397 +0.656253 0.101007 0.503561 +0.654752 0.115451 0.502409 +0.651133 0.144353 0.499632 +0.649011 0.158812 0.498004 +0.644130 0.187747 0.494259 +0.641367 0.202222 0.492138 +0.635177 0.231186 0.487389 +0.631745 0.245672 0.484755 +0.624189 0.274650 0.478957 +0.620057 0.289137 0.475787 +0.611066 0.318101 0.468887 +0.606197 0.332571 0.465151 +0.595692 0.361475 0.457090 +0.590045 0.375900 0.452758 +0.577940 0.404678 0.443469 +0.571471 0.419020 0.438505 +0.557675 0.447581 0.427919 +0.550336 0.461787 0.422288 +0.534754 0.490012 0.410331 +0.526499 0.504013 0.403997 +0.504013 0.526499 0.403997 +0.490012 0.534754 0.410331 +0.461787 0.550336 0.422288 +0.447581 0.557675 0.427919 +0.419020 0.571471 0.438505 +0.404678 0.577940 0.443469 +0.375900 0.590045 0.452758 +0.361475 0.595692 0.457090 +0.332571 0.606197 0.465151 +0.318101 0.611066 0.468887 +0.289137 0.620057 0.475787 +0.274650 0.624189 0.478957 +0.245672 0.631745 0.484755 +0.231186 0.635177 0.487389 +0.202222 0.641367 0.492138 +0.187747 0.644130 0.494259 +0.158812 0.649011 0.498004 +0.144353 0.651133 0.499632 +0.115451 0.654752 0.502409 +0.101007 0.656253 0.503561 +0.072134 0.658646 0.505397 +0.057702 0.659541 0.506084 +0.028848 0.660732 0.506997 +0.014424 0.661029 0.507225 +0.672037 0.000000 0.492758 +0.698810 0.015248 0.512389 +0.698486 0.030497 0.512151 +0.671100 0.043986 0.492071 +0.697186 0.060996 0.511198 +0.696209 0.076247 0.510481 +0.668281 0.087981 0.490004 +0.693596 0.106755 0.508566 +0.691958 0.122011 0.507365 +0.663554 0.131989 0.486538 +0.688009 0.152528 0.504469 +0.685695 0.167789 0.502773 +0.656876 0.176009 0.481642 +0.680375 0.198311 0.498872 +0.677365 0.213572 0.496664 +0.648188 0.220030 0.475271 +0.670627 0.244088 0.491724 +0.666893 0.259340 0.488986 +0.637415 0.264026 0.467372 +0.658679 0.289826 0.482964 +0.654192 0.305055 0.479673 +0.624466 0.307953 0.457877 +0.644435 0.335471 0.472519 +0.639157 0.350653 0.468649 +0.609237 0.351743 0.446711 +0.627780 0.380946 0.460307 +0.621672 0.396049 0.455829 +0.591614 0.395304 0.433789 +0.608593 0.426141 0.446239 +0.601612 0.441120 0.441120 +0.571471 0.438505 0.419020 +0.586743 0.470911 0.430218 +0.578844 0.485708 0.424426 +0.548683 0.481182 0.402311 +0.562097 0.515067 0.412146 +0.553238 0.529610 0.405651 +0.523124 0.523124 0.383571 +0.529610 0.553238 0.405651 +0.515067 0.562097 0.412146 +0.481182 0.548683 0.402311 +0.485708 0.578844 0.424426 +0.470911 0.586743 0.430218 +0.438505 0.571471 0.419020 +0.441120 0.601612 0.441120 +0.426141 0.608593 0.446239 +0.395304 0.591614 0.433789 +0.396049 0.621672 0.455829 +0.380946 0.627780 0.460307 +0.351743 0.609237 0.446711 +0.350653 0.639157 0.468649 +0.335471 0.644435 0.472519 +0.307953 0.624466 0.457877 +0.305055 0.654192 0.479673 +0.289826 0.658679 0.482964 +0.264026 0.637415 0.467372 +0.259340 0.666893 0.488986 +0.244088 0.670627 0.491724 +0.220030 0.648188 0.475271 +0.213572 0.677365 0.496664 +0.198311 0.680375 0.498872 +0.176009 0.656876 0.481642 +0.167789 0.685695 0.502773 +0.152528 0.688009 0.504469 +0.131989 0.663554 0.486538 +0.122011 0.691958 0.507365 +0.106755 0.693596 0.508566 +0.087981 0.668281 0.490004 +0.076247 0.696209 0.510481 +0.060996 0.697186 0.511198 +0.043986 0.671100 0.492071 +0.030497 0.698486 0.512151 +0.015248 0.698810 0.512389 +0.000000 0.672037 0.492758 +0.682627 0.000000 0.477980 +0.709818 0.015488 0.497020 +0.709478 0.030976 0.496782 +0.681645 0.044677 0.477293 +0.708116 0.061952 0.495828 +0.707092 0.077439 0.495111 +0.678691 0.089351 0.475225 +0.704356 0.108411 0.493195 +0.702640 0.123894 0.491994 +0.673742 0.134016 0.471759 +0.698507 0.154855 0.489100 +0.696086 0.170331 0.487404 +0.666755 0.178656 0.466867 +0.690522 0.201269 0.483509 +0.687375 0.216729 0.481305 +0.657674 0.223250 0.460509 +0.680337 0.247623 0.476377 +0.676440 0.263053 0.473648 +0.646429 0.267760 0.452635 +0.667873 0.293871 0.467650 +0.663196 0.309253 0.464375 +0.632935 0.312129 0.443186 +0.653037 0.339950 0.457261 +0.647547 0.355256 0.453417 +0.617094 0.356279 0.432094 +0.635725 0.385767 0.445139 +0.629384 0.400962 0.440700 +0.598800 0.400105 0.419284 +0.615823 0.431204 0.431204 +0.608593 0.446239 0.426141 +0.577940 0.443469 0.404678 +0.593213 0.476104 0.415372 +0.585054 0.490919 0.409660 +0.554401 0.486197 0.388196 +0.567778 0.520273 0.397562 +0.558652 0.534793 0.391172 +0.528073 0.528073 0.369761 +0.534793 0.558652 0.391172 +0.520273 0.567778 0.397562 +0.486197 0.554401 0.388196 +0.490919 0.585054 0.409660 +0.476104 0.593213 0.415372 +0.443469 0.577940 0.404678 +0.446239 0.608593 0.426141 +0.431204 0.615823 0.431204 +0.400105 0.598800 0.419284 +0.400962 0.629384 0.440700 +0.385767 0.635725 0.445139 +0.356279 0.617094 0.432094 +0.355256 0.647547 0.453417 +0.339950 0.653037 0.457261 +0.312129 0.632935 0.443186 +0.309253 0.663196 0.464375 +0.293871 0.667873 0.467650 +0.267760 0.646429 0.452635 +0.263053 0.676440 0.473648 +0.247623 0.680337 0.476377 +0.223250 0.657674 0.460509 +0.216729 0.687375 0.481305 +0.201269 0.690522 0.483509 +0.178656 0.666755 0.466867 +0.170331 0.696086 0.487404 +0.154855 0.698507 0.489100 +0.134016 0.673742 0.471759 +0.123894 0.702640 0.491994 +0.108411 0.704356 0.493195 +0.089351 0.678691 0.475225 +0.077439 0.707092 0.495111 +0.061952 0.708116 0.495828 +0.044677 0.681645 0.477293 +0.030976 0.709478 0.496782 +0.015488 0.709818 0.497020 +0.000000 0.682627 0.477980 +0.692777 0.015116 0.462899 +0.692435 0.030232 0.462670 +0.691065 0.060460 0.461755 +0.690036 0.075571 0.461068 +0.687286 0.105783 0.459230 +0.685563 0.120883 0.458078 +0.681411 0.151065 0.455305 +0.678980 0.166145 0.453680 +0.673398 0.196278 0.449950 +0.670242 0.211326 0.447841 +0.663188 0.241381 0.443128 +0.659284 0.256382 0.440520 +0.650710 0.286319 0.434790 +0.646033 0.301250 0.431665 +0.635882 0.331019 0.424883 +0.630401 0.345850 0.421221 +0.618611 0.375383 0.413343 +0.612295 0.390075 0.409122 +0.598800 0.419284 0.400105 +0.591614 0.433789 0.395304 +0.576345 0.462566 0.385102 +0.568256 0.476823 0.379696 +0.551149 0.505035 0.368266 +0.542124 0.518971 0.362236 +0.518971 0.542124 0.362236 +0.505035 0.551149 0.368266 +0.476823 0.568256 0.379696 +0.462566 0.576345 0.385102 +0.433789 0.591614 0.395304 +0.419284 0.598800 0.400105 +0.390075 0.612295 0.409122 +0.375383 0.618611 0.413343 +0.345850 0.630401 0.421221 +0.331019 0.635882 0.424883 +0.301250 0.646033 0.431665 +0.286319 0.650710 0.434790 +0.256382 0.659284 0.440520 +0.241381 0.663188 0.443128 +0.211326 0.670242 0.447841 +0.196278 0.673398 0.449950 +0.166145 0.678980 0.453680 +0.151065 0.681411 0.455305 +0.120883 0.685563 0.458078 +0.105783 0.687286 0.459230 +0.075571 0.690036 0.461068 +0.060460 0.691065 0.461755 +0.030232 0.692435 0.462670 +0.015116 0.692777 0.462899 +0.702826 0.000000 0.447750 +0.730816 0.015946 0.465581 +0.730444 0.031892 0.465344 +0.701755 0.045995 0.447067 +0.728958 0.063776 0.464397 +0.727841 0.079712 0.463686 +0.698533 0.091964 0.445015 +0.724858 0.111566 0.461785 +0.722988 0.127482 0.460594 +0.693140 0.137874 0.441579 +0.718488 0.159285 0.457727 +0.715854 0.175168 0.456049 +0.685539 0.183690 0.436737 +0.709807 0.206890 0.452197 +0.706390 0.222724 0.450020 +0.675681 0.229363 0.430456 +0.698758 0.254327 0.445158 +0.694538 0.270091 0.442469 +0.663504 0.274832 0.422699 +0.685274 0.301528 0.436568 +0.680225 0.317194 0.433351 +0.648936 0.320020 0.413418 +0.669276 0.348403 0.426376 +0.663370 0.363937 0.422613 +0.631895 0.364825 0.402562 +0.650677 0.394840 0.414527 +0.643883 0.410199 0.410199 +0.612295 0.409122 0.390075 +0.629384 0.440700 0.400962 +0.621672 0.455829 0.396049 +0.590045 0.452758 0.375900 +0.605306 0.485810 0.385623 +0.596645 0.500645 0.380105 +0.565060 0.495544 0.359983 +0.578354 0.529964 0.368452 +0.568717 0.544428 0.362313 +0.537259 0.537259 0.342272 +0.544428 0.568717 0.362313 +0.529964 0.578354 0.368452 +0.495544 0.565060 0.359983 +0.500645 0.596645 0.380105 +0.485810 0.605306 0.385623 +0.452758 0.590045 0.375900 +0.455829 0.621672 0.396049 +0.440700 0.629384 0.400962 +0.409122 0.612295 0.390075 +0.410199 0.643883 0.410199 +0.394840 0.650677 0.414527 +0.364825 0.631895 0.402562 +0.363937 0.663370 0.422613 +0.348403 0.669276 0.426376 +0.320020 0.648936 0.413418 +0.317194 0.680225 0.433351 +0.301528 0.685274 0.436568 +0.274832 0.663504 0.422699 +0.270091 0.694538 0.442469 +0.254327 0.698758 0.445158 +0.229363 0.675681 0.430456 +0.222724 0.706390 0.450020 +0.206890 0.709807 0.452197 +0.183690 0.685539 0.436737 +0.175168 0.715854 0.456049 +0.159285 0.718488 0.457727 +0.137874 0.693140 0.441579 +0.127482 0.722988 0.460594 +0.111566 0.724858 0.461785 +0.091964 0.698533 0.445015 +0.079712 0.727841 0.463686 +0.063776 0.728958 0.464397 +0.045995 0.701755 0.447067 +0.031892 0.730444 0.465344 +0.015946 0.730816 0.465581 +0.000000 0.702826 0.447750 +0.712427 0.000000 0.432311 +0.740795 0.016164 0.449525 +0.740408 0.032327 0.449291 +0.711311 0.046622 0.431634 +0.738860 0.064642 0.448351 +0.737697 0.080791 0.447646 +0.707957 0.093204 0.429599 +0.734591 0.113064 0.445761 +0.732646 0.129185 0.444581 +0.702344 0.139705 0.426193 +0.727964 0.161386 0.441740 +0.725225 0.177461 0.440077 +0.694439 0.186074 0.421396 +0.718939 0.209552 0.436263 +0.715390 0.225562 0.434109 +0.684198 0.232254 0.415182 +0.707466 0.257496 0.429301 +0.703086 0.273415 0.426643 +0.671563 0.278171 0.407515 +0.693481 0.305139 0.420815 +0.688250 0.320936 0.417640 +0.656470 0.323735 0.398356 +0.676915 0.352380 0.410762 +0.670806 0.368017 0.407055 +0.638845 0.368837 0.387661 +0.657690 0.399096 0.399096 +0.650677 0.414527 0.394840 +0.618611 0.413343 0.375383 +0.635725 0.445139 0.385767 +0.627780 0.460307 0.380946 +0.595692 0.457090 0.361475 +0.610940 0.490331 0.370727 +0.602039 0.505171 0.365326 +0.570013 0.499888 0.345892 +0.583262 0.534461 0.353932 +0.573382 0.548894 0.347937 +0.541511 0.541511 0.328597 +0.548894 0.573382 0.347937 +0.534461 0.583262 0.353932 +0.499888 0.570013 0.345892 +0.505171 0.602039 0.365326 +0.490331 0.610940 0.370727 +0.457090 0.595692 0.361475 +0.460307 0.627780 0.380946 +0.445139 0.635725 0.385767 +0.413343 0.618611 0.375383 +0.414527 0.650677 0.394840 +0.399096 0.657690 0.399096 +0.368837 0.638845 0.387661 +0.368017 0.670806 0.407055 +0.352380 0.676915 0.410762 +0.323735 0.656470 0.398356 +0.320936 0.688250 0.417640 +0.305139 0.693481 0.420815 +0.278171 0.671563 0.407515 +0.273415 0.703086 0.426643 +0.257496 0.707466 0.429301 +0.232254 0.684198 0.415182 +0.225562 0.715390 0.434109 +0.209552 0.718939 0.436263 +0.186074 0.694439 0.421396 +0.177461 0.725225 0.440077 +0.161386 0.727964 0.441740 +0.139705 0.702344 0.426193 +0.129185 0.732646 0.444581 +0.113064 0.734591 0.445761 +0.093204 0.707957 0.429599 +0.080791 0.737697 0.447646 +0.064642 0.738860 0.448351 +0.046622 0.711311 0.431634 +0.032327 0.740408 0.449291 +0.016164 0.740795 0.449525 +0.000000 0.712427 0.432311 +0.721559 0.015744 0.416592 +0.721172 0.031487 0.416369 +0.719625 0.062959 0.415476 +0.718464 0.078685 0.414805 +0.715361 0.110105 0.413014 +0.713418 0.125795 0.411892 +0.708743 0.157125 0.409193 +0.706009 0.172759 0.407615 +0.699739 0.203955 0.403995 +0.696200 0.219511 0.401951 +0.688304 0.250522 0.397392 +0.683943 0.265971 0.394875 +0.674384 0.296736 0.389356 +0.669182 0.312045 0.386352 +0.657920 0.342491 0.379850 +0.651855 0.357620 0.376348 +0.638845 0.387661 0.368837 +0.631895 0.402562 0.364825 +0.617094 0.432094 0.356279 +0.609237 0.446711 0.351743 +0.592602 0.475613 0.342139 +0.583819 0.489882 0.337068 +0.565313 0.518014 0.326384 +0.555588 0.531859 0.320769 +0.531859 0.555588 0.320769 +0.518014 0.565313 0.326384 +0.489882 0.583819 0.337068 +0.475613 0.592602 0.342139 +0.446711 0.609237 0.351743 +0.432094 0.617094 0.356279 +0.402562 0.631895 0.364825 +0.387661 0.638845 0.368837 +0.357620 0.651855 0.376348 +0.342491 0.657920 0.379850 +0.312045 0.669182 0.386352 +0.296736 0.674384 0.389356 +0.265971 0.683943 0.394875 +0.250522 0.688304 0.397392 +0.219511 0.696200 0.401951 +0.203955 0.699739 0.403995 +0.172759 0.706009 0.407615 +0.157125 0.708743 0.409193 +0.125795 0.713418 0.411892 +0.110105 0.715361 0.413014 +0.078685 0.718464 0.414805 +0.062959 0.719625 0.415476 +0.031487 0.721172 0.416369 +0.015744 0.721559 0.416592 +0.730606 0.000000 0.400824 +0.759691 0.016577 0.416781 +0.759274 0.033151 0.416552 +0.729402 0.047808 0.400164 +0.757604 0.066282 0.415636 +0.756351 0.082834 0.414949 +0.725787 0.095552 0.398180 +0.753005 0.115899 0.413113 +0.750910 0.132406 0.411963 +0.719743 0.143166 0.394865 +0.745872 0.165356 0.409199 +0.742926 0.181793 0.407583 +0.711244 0.190577 0.390202 +0.736173 0.214575 0.403878 +0.732363 0.230913 0.401788 +0.700252 0.237704 0.384172 +0.723869 0.263467 0.397128 +0.719180 0.279674 0.394556 +0.686725 0.284451 0.376750 +0.708909 0.311928 0.388921 +0.703324 0.327965 0.385857 +0.670611 0.330709 0.367910 +0.691241 0.359837 0.379228 +0.684740 0.375661 0.375661 +0.651855 0.376348 0.357620 +0.670806 0.407055 0.368017 +0.663370 0.422613 0.363937 +0.630401 0.421221 0.345850 +0.647547 0.453417 0.355256 +0.639157 0.468649 0.350653 +0.606197 0.465151 0.332571 +0.621410 0.498734 0.340917 +0.612050 0.513571 0.335782 +0.579197 0.507942 0.317758 +0.592352 0.542790 0.324975 +0.582011 0.557154 0.319302 +0.549366 0.549366 0.301393 +0.557154 0.582011 0.319302 +0.542790 0.592352 0.324975 +0.507942 0.579197 0.317758 +0.513571 0.612050 0.335782 +0.498734 0.621410 0.340917 +0.465151 0.606197 0.332571 +0.468649 0.639157 0.350653 +0.453417 0.647547 0.355256 +0.421221 0.630401 0.345850 +0.422613 0.663370 0.363937 +0.407055 0.670806 0.368017 +0.376348 0.651855 0.357620 +0.375661 0.684740 0.375661 +0.359837 0.691241 0.379228 +0.330709 0.670611 0.367910 +0.327965 0.703324 0.385857 +0.311928 0.708909 0.388921 +0.284451 0.686725 0.376750 +0.279674 0.719180 0.394556 +0.263467 0.723869 0.397128 +0.237704 0.700252 0.384172 +0.230913 0.732363 0.401788 +0.214575 0.736173 0.403878 +0.190577 0.711244 0.390202 +0.181793 0.742926 0.407583 +0.165356 0.745872 0.409199 +0.143166 0.719743 0.394865 +0.132406 0.750910 0.411963 +0.115899 0.753005 0.413113 +0.095552 0.725787 0.398180 +0.082834 0.756351 0.414949 +0.066282 0.757604 0.415636 +0.047808 0.729402 0.400164 +0.033151 0.759274 0.416552 +0.016577 0.759691 0.416781 +0.000000 0.730606 0.400824 +0.739176 0.000000 0.384791 +0.768599 0.016771 0.400107 +0.768167 0.033539 0.399882 +0.737930 0.048366 0.384142 +0.766438 0.067055 0.398983 +0.765141 0.083797 0.398307 +0.734187 0.096658 0.382193 +0.761677 0.117233 0.396504 +0.759509 0.133922 0.395375 +0.727932 0.144795 0.378938 +0.754297 0.167224 0.392662 +0.751250 0.183830 0.391076 +0.719143 0.192694 0.374362 +0.744270 0.216935 0.387443 +0.740334 0.233427 0.385394 +0.707787 0.240261 0.368451 +0.731562 0.266267 0.380827 +0.726723 0.282607 0.378308 +0.693827 0.287393 0.361184 +0.716131 0.315105 0.372794 +0.710375 0.331253 0.369798 +0.677220 0.333968 0.352538 +0.697931 0.363320 0.363320 +0.691241 0.379228 0.359837 +0.657920 0.379850 0.342491 +0.676915 0.410762 0.352380 +0.669276 0.426376 0.348403 +0.635882 0.424883 0.331019 +0.653037 0.457261 0.339950 +0.644435 0.472519 0.335471 +0.611066 0.468887 0.318101 +0.626257 0.502624 0.326009 +0.616680 0.517456 0.321023 +0.583439 0.511662 0.303719 +0.596546 0.546633 0.310542 +0.585987 0.560961 0.305046 +0.552982 0.552982 0.287864 +0.560961 0.585987 0.305046 +0.546633 0.596546 0.310542 +0.511662 0.583439 0.303719 +0.517456 0.616680 0.321023 +0.502624 0.626257 0.326009 +0.468887 0.611066 0.318101 +0.472519 0.644435 0.335471 +0.457261 0.653037 0.339950 +0.424883 0.635882 0.331019 +0.426376 0.669276 0.348403 +0.410762 0.676915 0.352380 +0.379850 0.657920 0.342491 +0.379228 0.691241 0.359837 +0.363320 0.697931 0.363320 +0.333968 0.677220 0.352538 +0.331253 0.710375 0.369798 +0.315105 0.716131 0.372794 +0.287393 0.693827 0.361184 +0.282607 0.726723 0.378308 +0.266267 0.731562 0.380827 +0.240261 0.707787 0.368451 +0.233427 0.740334 0.385394 +0.216935 0.744270 0.387443 +0.192694 0.719143 0.374362 +0.183830 0.751250 0.391076 +0.167224 0.754297 0.392662 +0.144795 0.727932 0.378938 +0.133922 0.759509 0.395375 +0.117233 0.761677 0.396504 +0.096658 0.734187 0.382193 +0.083797 0.765141 0.398307 +0.067055 0.766438 0.398983 +0.048366 0.737930 0.384142 +0.033539 0.768167 0.399882 +0.016771 0.768599 0.400107 +0.000000 0.739176 0.384791 +0.747251 0.016305 0.368503 +0.746822 0.032607 0.368292 +0.745104 0.065188 0.367444 +0.743814 0.081461 0.366809 +0.740373 0.113954 0.365112 +0.738220 0.130168 0.364050 +0.733044 0.162512 0.361497 +0.730020 0.178635 0.360006 +0.723095 0.210763 0.356591 +0.719191 0.226760 0.354666 +0.710497 0.258600 0.350378 +0.705703 0.274433 0.348014 +0.695217 0.305903 0.342843 +0.689522 0.321529 0.340034 +0.677220 0.352538 0.333968 +0.670611 0.367910 0.330709 +0.656470 0.398356 0.323735 +0.648936 0.413418 0.320020 +0.632935 0.443186 0.312129 +0.624466 0.457877 0.307953 +0.606589 0.486839 0.299136 +0.597179 0.501093 0.294496 +0.577417 0.529105 0.284750 +0.567064 0.542846 0.279645 +0.542846 0.567064 0.279645 +0.529105 0.577417 0.284750 +0.501093 0.597179 0.294496 +0.486839 0.606589 0.299136 +0.457877 0.624466 0.307953 +0.443186 0.632935 0.312129 +0.413418 0.648936 0.320020 +0.398356 0.656470 0.323735 +0.367910 0.670611 0.330709 +0.352538 0.677220 0.333968 +0.321529 0.689522 0.340034 +0.305903 0.695217 0.342843 +0.274433 0.705703 0.348014 +0.258600 0.710497 0.350378 +0.226760 0.719191 0.354666 +0.210763 0.723095 0.356591 +0.178635 0.730020 0.360006 +0.162512 0.733044 0.361497 +0.130168 0.738220 0.364050 +0.113954 0.740373 0.365112 +0.081461 0.743814 0.366809 +0.065188 0.745104 0.367444 +0.032607 0.746822 0.368292 +0.016305 0.747251 0.368503 +0.755256 0.000000 0.352182 +0.785313 0.017136 0.366198 +0.784853 0.034267 0.365983 +0.753927 0.049415 0.351562 +0.783009 0.068504 0.365123 +0.781626 0.085602 0.364478 +0.749937 0.098731 0.349701 +0.777934 0.119736 0.362757 +0.775625 0.136764 0.361680 +0.743275 0.147847 0.346595 +0.770076 0.170722 0.359093 +0.766835 0.187643 0.357581 +0.733925 0.196655 0.342235 +0.759416 0.221350 0.354122 +0.755236 0.238125 0.352173 +0.721867 0.245041 0.336612 +0.745931 0.271497 0.347833 +0.740803 0.288083 0.345442 +0.707075 0.292880 0.329714 +0.729593 0.321029 0.340215 +0.723508 0.337377 0.337377 +0.689522 0.340034 0.321529 +0.710375 0.369798 0.331253 +0.703324 0.385857 0.327965 +0.669182 0.386352 0.312045 +0.688250 0.417640 0.320936 +0.680225 0.433351 0.317194 +0.646033 0.431665 0.301250 +0.663196 0.464375 0.309253 +0.654192 0.479673 0.305055 +0.620057 0.475787 0.289137 +0.635200 0.509802 0.296199 +0.625214 0.524616 0.291542 +0.591250 0.518512 0.275704 +0.604260 0.553702 0.281771 +0.593294 0.567956 0.276658 +0.559619 0.559619 0.260955 +0.567956 0.593294 0.276658 +0.553702 0.604260 0.281771 +0.518512 0.591250 0.275704 +0.524616 0.625214 0.291542 +0.509802 0.635200 0.296199 +0.475787 0.620057 0.289137 +0.479673 0.654192 0.305055 +0.464375 0.663196 0.309253 +0.431665 0.646033 0.301250 +0.433351 0.680225 0.317194 +0.417640 0.688250 0.320936 +0.386352 0.669182 0.312045 +0.385857 0.703324 0.327965 +0.369798 0.710375 0.331253 +0.340034 0.689522 0.321529 +0.337377 0.723508 0.337377 +0.321029 0.729593 0.340215 +0.292880 0.707075 0.329714 +0.288083 0.740803 0.345442 +0.271497 0.745931 0.347833 +0.245041 0.721867 0.336612 +0.238125 0.755236 0.352173 +0.221350 0.759416 0.354122 +0.196655 0.733925 0.342235 +0.187643 0.766835 0.357581 +0.170722 0.770076 0.359093 +0.147847 0.743275 0.346595 +0.136764 0.775625 0.361680 +0.119736 0.777934 0.362757 +0.098731 0.749937 0.349701 +0.085602 0.781626 0.364478 +0.068504 0.783009 0.365123 +0.049415 0.753927 0.351562 +0.034267 0.784853 0.365983 +0.017136 0.785313 0.366198 +0.000000 0.755256 0.352182 +0.762760 0.000000 0.335622 +0.793112 0.017306 0.348978 +0.792637 0.034607 0.348769 +0.761391 0.049904 0.335020 +0.790739 0.069181 0.347933 +0.789314 0.086444 0.347307 +0.757281 0.099698 0.333212 +0.785513 0.120902 0.345634 +0.783136 0.138088 0.344588 +0.750423 0.149268 0.330194 +0.777426 0.172351 0.342075 +0.774091 0.189419 0.340608 +0.740805 0.198498 0.325962 +0.766462 0.223403 0.337251 +0.762165 0.240310 0.335361 +0.728410 0.247262 0.320508 +0.752604 0.273926 0.331154 +0.747339 0.290624 0.328837 +0.713220 0.295425 0.313824 +0.735834 0.323775 0.323775 +0.729593 0.340215 0.321029 +0.695217 0.342843 0.305903 +0.716131 0.372794 0.315105 +0.708909 0.388921 0.311928 +0.674384 0.389356 0.296736 +0.693481 0.420815 0.305139 +0.685274 0.436568 0.301528 +0.650710 0.434790 0.286319 +0.667873 0.467650 0.293871 +0.658679 0.482964 0.289826 +0.624189 0.478957 0.274650 +0.639306 0.513097 0.281301 +0.629127 0.527901 0.276823 +0.594829 0.521651 0.261731 +0.607791 0.556938 0.267434 +0.596636 0.571154 0.262526 +0.562651 0.562651 0.247572 +0.571154 0.596636 0.262526 +0.556938 0.607791 0.267434 +0.521651 0.594829 0.261731 +0.527901 0.629127 0.276823 +0.513097 0.639306 0.281301 +0.478957 0.624189 0.274650 +0.482964 0.658679 0.289826 +0.467650 0.667873 0.293871 +0.434790 0.650710 0.286319 +0.436568 0.685274 0.301528 +0.420815 0.693481 0.305139 +0.389356 0.674384 0.296736 +0.388921 0.708909 0.311928 +0.372794 0.716131 0.315105 +0.342843 0.695217 0.305903 +0.340215 0.729593 0.321029 +0.323775 0.735834 0.323775 +0.295425 0.713220 0.313824 +0.290624 0.747339 0.328837 +0.273926 0.752604 0.331154 +0.247262 0.728410 0.320508 +0.240310 0.762165 0.335361 +0.223403 0.766462 0.337251 +0.198498 0.740805 0.325962 +0.189419 0.774091 0.340608 +0.172351 0.777426 0.342075 +0.149268 0.750423 0.330194 +0.138088 0.783136 0.344588 +0.120902 0.785513 0.345634 +0.099698 0.757281 0.333212 +0.086444 0.789314 0.347307 +0.069181 0.790739 0.347933 +0.049904 0.761391 0.335020 +0.034607 0.792637 0.348769 +0.017306 0.793112 0.348978 +0.000000 0.762760 0.335622 +0.769743 0.016796 0.318838 +0.769274 0.033587 0.318644 +0.767397 0.067139 0.317866 +0.765989 0.083889 0.317283 +0.762232 0.117319 0.315727 +0.759883 0.133988 0.314754 +0.754242 0.167211 0.312417 +0.750949 0.183756 0.311053 +0.743417 0.216686 0.307933 +0.739177 0.233062 0.306177 +0.729747 0.265606 0.302271 +0.724556 0.281764 0.300121 +0.713220 0.313824 0.295425 +0.707075 0.329714 0.292880 +0.693827 0.361184 0.287393 +0.686725 0.376750 0.284451 +0.671563 0.407515 0.278171 +0.663504 0.422699 0.274832 +0.646429 0.452635 0.267760 +0.637415 0.467372 0.264026 +0.618436 0.496347 0.256165 +0.608473 0.510570 0.252038 +0.587607 0.538443 0.243395 +0.576707 0.552077 0.238880 +0.552077 0.576707 0.238880 +0.538443 0.587607 0.243395 +0.510570 0.608473 0.252038 +0.496347 0.618436 0.256165 +0.467372 0.637415 0.264026 +0.452635 0.646429 0.267760 +0.422699 0.663504 0.274832 +0.407515 0.671563 0.278171 +0.376750 0.686725 0.284451 +0.361184 0.693827 0.287393 +0.329714 0.707075 0.292880 +0.313824 0.713220 0.295425 +0.281764 0.724556 0.300121 +0.265606 0.729747 0.302271 +0.233062 0.739177 0.306177 +0.216686 0.743417 0.307933 +0.183756 0.750949 0.311053 +0.167211 0.754242 0.312417 +0.133988 0.759883 0.314754 +0.117319 0.762232 0.315727 +0.083889 0.765989 0.317283 +0.067139 0.767397 0.317866 +0.033587 0.769274 0.318644 +0.016796 0.769743 0.318838 +0.776673 0.000000 0.302032 +0.807573 0.017621 0.314048 +0.807072 0.035238 0.313853 +0.775228 0.050811 0.301470 +0.805068 0.070434 0.313074 +0.803565 0.088005 0.312489 +0.770892 0.101490 0.299783 +0.799555 0.123063 0.310930 +0.797049 0.140541 0.309955 +0.763661 0.151902 0.296972 +0.791031 0.175367 0.307615 +0.787520 0.192705 0.306250 +0.753531 0.201908 0.293032 +0.779490 0.227201 0.303127 +0.774972 0.244348 0.301370 +0.740498 0.251365 0.287964 +0.764927 0.278411 0.297464 +0.759401 0.295315 0.295315 +0.724556 0.300121 0.281764 +0.747339 0.328837 0.290624 +0.740803 0.345442 0.288083 +0.705703 0.348014 0.274433 +0.726723 0.378308 0.282607 +0.719180 0.394556 0.279674 +0.683943 0.394875 0.265971 +0.703086 0.426643 0.273415 +0.694538 0.442469 0.270091 +0.659284 0.440520 0.256382 +0.676440 0.473648 0.263053 +0.666893 0.488986 0.259340 +0.631745 0.484755 0.245672 +0.646808 0.519118 0.251530 +0.636273 0.533896 0.247433 +0.601357 0.527376 0.233855 +0.614226 0.562835 0.238860 +0.602720 0.576978 0.234385 +0.568167 0.568167 0.220948 +0.576978 0.602720 0.234385 +0.562835 0.614226 0.238860 +0.527376 0.601357 0.233855 +0.533896 0.636273 0.247433 +0.519118 0.646808 0.251530 +0.484755 0.631745 0.245672 +0.488986 0.666893 0.259340 +0.473648 0.676440 0.263053 +0.440520 0.659284 0.256382 +0.442469 0.694538 0.270091 +0.426643 0.703086 0.273415 +0.394875 0.683943 0.265971 +0.394556 0.719180 0.279674 +0.378308 0.726723 0.282607 +0.348014 0.705703 0.274433 +0.345442 0.740803 0.288083 +0.328837 0.747339 0.290624 +0.300121 0.724556 0.281764 +0.295315 0.759401 0.295315 +0.278411 0.764927 0.297464 +0.251365 0.740498 0.287964 +0.244348 0.774972 0.301370 +0.227201 0.779490 0.303127 +0.201908 0.753531 0.293032 +0.192705 0.787520 0.306250 +0.175367 0.791031 0.307615 +0.151902 0.763661 0.296972 +0.140541 0.797049 0.309955 +0.123063 0.799555 0.310930 +0.101490 0.770892 0.299783 +0.088005 0.803565 0.312489 +0.070434 0.805068 0.313074 +0.050811 0.775228 0.301470 +0.035238 0.807072 0.313853 +0.017621 0.807573 0.314048 +0.000000 0.776673 0.302032 +0.783077 0.000000 0.285017 +0.814229 0.017767 0.296355 +0.813716 0.035528 0.296168 +0.781596 0.051229 0.284478 +0.811662 0.071011 0.295421 +0.810122 0.088723 0.294860 +0.777153 0.102314 0.282860 +0.806014 0.124057 0.293365 +0.803446 0.141669 0.292430 +0.769746 0.153112 0.280165 +0.797283 0.176753 0.290187 +0.793688 0.194214 0.288879 +0.759376 0.203474 0.276390 +0.785471 0.228944 0.285888 +0.780848 0.246200 0.284205 +0.746042 0.253247 0.271537 +0.770576 0.280467 0.280467 +0.764927 0.297464 0.278411 +0.729747 0.302271 0.265606 +0.752604 0.331154 0.273926 +0.745931 0.347833 0.271497 +0.710497 0.350378 0.258600 +0.731562 0.380827 0.266267 +0.723869 0.397128 0.263467 +0.688304 0.397392 0.250522 +0.707466 0.429301 0.257496 +0.698758 0.445158 0.254327 +0.663188 0.443128 0.241381 +0.680337 0.476377 0.247623 +0.670627 0.491724 0.244088 +0.635177 0.487389 0.231186 +0.650212 0.521851 0.236658 +0.639513 0.536615 0.232764 +0.604315 0.529970 0.219953 +0.617140 0.565504 0.224621 +0.605471 0.579613 0.220374 +0.570659 0.570659 0.207703 +0.579613 0.605471 0.220374 +0.565504 0.617140 0.224621 +0.529970 0.604315 0.219953 +0.536615 0.639513 0.232764 +0.521851 0.650212 0.236658 +0.487389 0.635177 0.231186 +0.491724 0.670627 0.244088 +0.476377 0.680337 0.247623 +0.443128 0.663188 0.241381 +0.445158 0.698758 0.254327 +0.429301 0.707466 0.257496 +0.397392 0.688304 0.250522 +0.397128 0.723869 0.263467 +0.380827 0.731562 0.266267 +0.350378 0.710497 0.258600 +0.347833 0.745931 0.271497 +0.331154 0.752604 0.273926 +0.302271 0.729747 0.265606 +0.297464 0.764927 0.278411 +0.280467 0.770576 0.280467 +0.253247 0.746042 0.271537 +0.246200 0.780848 0.284205 +0.228944 0.785471 0.285888 +0.203474 0.759376 0.276390 +0.194214 0.793688 0.288879 +0.176753 0.797283 0.290187 +0.153112 0.769746 0.280165 +0.141669 0.803446 0.292430 +0.124057 0.806014 0.293365 +0.102314 0.777153 0.282860 +0.088723 0.810122 0.294860 +0.071011 0.811662 0.295421 +0.051229 0.781596 0.284478 +0.035528 0.813716 0.296168 +0.017767 0.814229 0.296355 +0.000000 0.783077 0.285017 +0.788940 0.017215 0.267809 +0.788435 0.034424 0.267638 +0.786414 0.068802 0.266952 +0.784899 0.085960 0.266437 +0.780859 0.120186 0.265066 +0.778334 0.137241 0.264209 +0.772275 0.171209 0.262152 +0.768741 0.188110 0.260952 +0.760667 0.221714 0.258212 +0.756127 0.238406 0.256670 +0.746042 0.271537 0.253247 +0.740498 0.287964 0.251365 +0.728410 0.320508 0.247262 +0.721867 0.336612 0.245041 +0.707787 0.368451 0.240261 +0.700252 0.384172 0.237704 +0.684198 0.415182 0.232254 +0.675681 0.430456 0.229363 +0.657674 0.460509 0.223250 +0.648188 0.475271 0.220030 +0.628261 0.504233 0.213266 +0.617824 0.518416 0.209723 +0.596015 0.546147 0.202320 +0.584650 0.559680 0.198462 +0.559680 0.584650 0.198462 +0.546147 0.596015 0.202320 +0.518416 0.617824 0.209723 +0.504233 0.628261 0.213266 +0.475271 0.648188 0.220030 +0.460509 0.657674 0.223250 +0.430456 0.675681 0.229363 +0.415182 0.684198 0.232254 +0.384172 0.700252 0.237704 +0.368451 0.707787 0.240261 +0.336612 0.721867 0.245041 +0.320508 0.728410 0.247262 +0.287964 0.740498 0.251365 +0.271537 0.746042 0.253247 +0.238406 0.756127 0.256670 +0.221714 0.760667 0.258212 +0.188110 0.768741 0.260952 +0.171209 0.772275 0.262152 +0.137241 0.778334 0.264209 +0.120186 0.780859 0.265066 +0.085960 0.784899 0.266437 +0.068802 0.786414 0.266952 +0.034424 0.788435 0.267638 +0.017215 0.788940 0.267809 +0.794764 0.000000 0.250588 +0.826376 0.018032 0.260555 +0.825839 0.036057 0.260386 +0.793216 0.051990 0.250100 +0.823692 0.072064 0.259709 +0.822083 0.090033 0.259202 +0.788572 0.103818 0.248636 +0.817791 0.125870 0.257848 +0.815109 0.143726 0.257003 +0.780838 0.155318 0.246197 +0.808677 0.179279 0.254975 +0.804926 0.196964 0.253792 +0.770019 0.206326 0.242786 +0.796358 0.232117 0.251091 +0.791542 0.249572 0.249572 +0.756127 0.256670 0.238406 +0.780848 0.284205 0.246200 +0.774972 0.301370 0.244348 +0.739177 0.306177 0.233062 +0.762165 0.335361 0.240310 +0.755236 0.352173 0.238125 +0.719191 0.354666 0.226760 +0.740334 0.385394 0.233427 +0.732363 0.401788 0.230913 +0.696200 0.401951 0.219511 +0.715390 0.434109 0.225562 +0.706390 0.450020 0.222724 +0.670242 0.447841 0.211326 +0.687375 0.481305 0.216729 +0.677365 0.496664 0.213572 +0.641367 0.492138 0.202222 +0.656348 0.526775 0.206946 +0.645348 0.541511 0.203477 +0.609638 0.534638 0.192218 +0.622379 0.570305 0.196235 +0.610416 0.584346 0.192464 +0.575135 0.575135 0.181339 +0.584346 0.610416 0.192464 +0.570305 0.622379 0.196235 +0.534638 0.609638 0.192218 +0.541511 0.645348 0.203477 +0.526775 0.656348 0.206946 +0.492138 0.641367 0.202222 +0.496664 0.677365 0.213572 +0.481305 0.687375 0.216729 +0.447841 0.670242 0.211326 +0.450020 0.706390 0.222724 +0.434109 0.715390 0.225562 +0.401951 0.696200 0.219511 +0.401788 0.732363 0.230913 +0.385394 0.740334 0.233427 +0.354666 0.719191 0.226760 +0.352173 0.755236 0.238125 +0.335361 0.762165 0.240310 +0.306177 0.739177 0.233062 +0.301370 0.774972 0.244348 +0.284205 0.780848 0.246200 +0.256670 0.756127 0.238406 +0.249572 0.791542 0.249572 +0.232117 0.796358 0.251091 +0.206326 0.770019 0.242786 +0.196964 0.804926 0.253792 +0.179279 0.808677 0.254975 +0.155318 0.780838 0.246197 +0.143726 0.815109 0.257003 +0.125870 0.817791 0.257848 +0.103818 0.788572 0.248636 +0.090033 0.822083 0.259202 +0.072064 0.823692 0.259709 +0.051990 0.793216 0.250100 +0.036057 0.825839 0.260386 +0.018032 0.826376 0.260555 +0.000000 0.794764 0.250588 +0.800042 0.000000 0.233191 +0.831861 0.018151 0.242465 +0.831313 0.036296 0.242306 +0.798462 0.052334 0.232731 +0.829124 0.072539 0.241668 +0.827482 0.090624 0.241189 +0.793727 0.104496 0.231350 +0.823106 0.126688 0.239913 +0.820372 0.144654 0.239117 +0.785841 0.156313 0.229052 +0.813814 0.180418 0.237205 +0.809992 0.198204 0.236091 +0.774816 0.207611 0.225838 +0.801263 0.233547 0.233547 +0.796358 0.251091 0.232117 +0.760667 0.258212 0.221714 +0.785471 0.285888 0.228944 +0.779490 0.303127 0.227201 +0.743417 0.307933 0.216686 +0.766462 0.337251 0.223403 +0.759416 0.354122 0.221350 +0.723095 0.356591 0.210763 +0.744270 0.387443 0.216935 +0.736173 0.403878 0.214575 +0.699739 0.403995 0.203955 +0.718939 0.436263 0.209552 +0.709807 0.452197 0.206890 +0.673398 0.449950 0.196278 +0.690522 0.483509 0.201269 +0.680375 0.498872 0.198311 +0.644130 0.494259 0.187747 +0.659086 0.528973 0.192106 +0.647950 0.543695 0.188860 +0.612010 0.536719 0.178385 +0.624712 0.572443 0.182087 +0.612617 0.586453 0.178562 +0.577125 0.577125 0.168217 +0.586453 0.612617 0.178562 +0.572443 0.624712 0.182087 +0.536719 0.612010 0.178385 +0.543695 0.647950 0.188860 +0.528973 0.659086 0.192106 +0.494259 0.644130 0.187747 +0.498872 0.680375 0.198311 +0.483509 0.690522 0.201269 +0.449950 0.673398 0.196278 +0.452197 0.709807 0.206890 +0.436263 0.718939 0.209552 +0.403995 0.699739 0.203955 +0.403878 0.736173 0.214575 +0.387443 0.744270 0.216935 +0.356591 0.723095 0.210763 +0.354122 0.759416 0.221350 +0.337251 0.766462 0.223403 +0.307933 0.743417 0.216686 +0.303127 0.779490 0.227201 +0.285888 0.785471 0.228944 +0.258212 0.760667 0.221714 +0.251091 0.796358 0.232117 +0.233547 0.801263 0.233547 +0.207611 0.774816 0.225838 +0.198204 0.809992 0.236091 +0.180418 0.813814 0.237205 +0.156313 0.785841 0.229052 +0.144654 0.820372 0.239117 +0.126688 0.823106 0.239913 +0.104496 0.793727 0.231350 +0.090624 0.827482 0.241189 +0.072539 0.829124 0.241668 +0.052334 0.798462 0.232731 +0.036296 0.831313 0.242306 +0.018151 0.831861 0.242465 +0.000000 0.800042 0.233191 +0.804759 0.017560 0.215635 +0.804223 0.035113 0.215491 +0.802079 0.070173 0.214916 +0.800472 0.087666 0.214486 +0.796187 0.122545 0.213338 +0.793511 0.139917 0.212621 +0.787094 0.174495 0.210901 +0.783354 0.191686 0.209899 +0.774816 0.225838 0.207611 +0.770019 0.242786 0.206326 +0.759376 0.276390 0.203474 +0.753531 0.293032 0.201908 +0.740805 0.325962 0.198498 +0.733925 0.342235 0.196655 +0.719143 0.374362 0.192694 +0.711244 0.390202 0.190577 +0.694439 0.421396 0.186074 +0.685539 0.436737 0.183690 +0.666755 0.466867 0.178656 +0.656876 0.481642 0.176009 +0.636162 0.510574 0.170459 +0.625333 0.524717 0.167557 +0.602749 0.552317 0.161506 +0.591001 0.565760 0.158358 +0.565760 0.591001 0.158358 +0.552317 0.602749 0.161506 +0.524717 0.625333 0.167557 +0.510574 0.636162 0.170459 +0.481642 0.656876 0.176009 +0.466867 0.666755 0.178656 +0.436737 0.685539 0.183690 +0.421396 0.694439 0.186074 +0.390202 0.711244 0.190577 +0.374362 0.719143 0.192694 +0.342235 0.733925 0.196655 +0.325962 0.740805 0.198498 +0.293032 0.753531 0.201908 +0.276390 0.759376 0.203474 +0.242786 0.770019 0.206326 +0.225838 0.774816 0.207611 +0.191686 0.783354 0.209899 +0.174495 0.787094 0.210901 +0.139917 0.793511 0.212621 +0.122545 0.796187 0.213338 +0.087666 0.800472 0.214486 +0.070173 0.802079 0.214916 +0.035113 0.804223 0.215491 +0.017560 0.804759 0.215635 +0.809452 0.000000 0.198072 +0.841641 0.018365 0.205948 +0.841074 0.036722 0.205809 +0.807816 0.052947 0.197671 +0.838806 0.073386 0.205255 +0.837107 0.091678 0.204839 +0.802913 0.105706 0.196472 +0.832577 0.128146 0.203730 +0.829748 0.146307 0.203038 +0.794753 0.158086 0.194475 +0.822965 0.182447 0.201378 +0.819013 0.200411 0.200411 +0.783354 0.209899 0.191686 +0.809992 0.236091 0.198204 +0.804926 0.253792 0.196964 +0.768741 0.260952 0.188110 +0.793688 0.288879 0.194214 +0.787520 0.306250 0.192705 +0.750949 0.311053 0.183756 +0.774091 0.340608 0.189419 +0.766835 0.357581 0.187643 +0.730020 0.360006 0.178635 +0.751250 0.391076 0.183830 +0.742926 0.407583 0.181793 +0.706009 0.407615 0.172759 +0.725225 0.440077 0.177461 +0.715854 0.456049 0.175168 +0.678980 0.453680 0.166145 +0.696086 0.487404 0.170331 +0.685695 0.502773 0.167789 +0.649011 0.498004 0.158812 +0.663919 0.532851 0.162460 +0.652540 0.547546 0.159675 +0.616192 0.540386 0.150781 +0.628822 0.576209 0.153872 +0.616492 0.590163 0.150855 +0.580628 0.580628 0.142079 +0.590163 0.616492 0.150855 +0.576209 0.628822 0.153872 +0.540386 0.616192 0.150781 +0.547546 0.652540 0.159675 +0.532851 0.663919 0.162460 +0.498004 0.649011 0.158812 +0.502773 0.685695 0.167789 +0.487404 0.696086 0.170331 +0.453680 0.678980 0.166145 +0.456049 0.715854 0.175168 +0.440077 0.725225 0.177461 +0.407615 0.706009 0.172759 +0.407583 0.742926 0.181793 +0.391076 0.751250 0.183830 +0.360006 0.730020 0.178635 +0.357581 0.766835 0.187643 +0.340608 0.774091 0.189419 +0.311053 0.750949 0.183756 +0.306250 0.787520 0.192705 +0.288879 0.793688 0.194214 +0.260952 0.768741 0.188110 +0.253792 0.804926 0.196964 +0.236091 0.809992 0.198204 +0.209899 0.783354 0.191686 +0.200411 0.819013 0.200411 +0.182447 0.822965 0.201378 +0.158086 0.794753 0.194475 +0.146307 0.829748 0.203038 +0.128146 0.832577 0.203730 +0.105706 0.802913 0.196472 +0.091678 0.837107 0.204839 +0.073386 0.838806 0.205255 +0.052947 0.807816 0.197671 +0.036722 0.841074 0.205809 +0.018365 0.841641 0.205948 +0.000000 0.809452 0.198072 +0.813580 0.000000 0.180366 +0.845931 0.018458 0.187538 +0.845356 0.036909 0.187411 +0.811919 0.053216 0.179998 +0.843053 0.073758 0.186900 +0.841328 0.092140 0.186518 +0.806942 0.106236 0.178895 +0.836729 0.128785 0.185498 +0.833858 0.147032 0.184862 +0.798660 0.158863 0.177059 +0.826975 0.183336 0.183336 +0.822965 0.201378 0.182447 +0.787094 0.210901 0.174495 +0.813814 0.237205 0.180418 +0.808677 0.254975 0.179279 +0.772275 0.262152 0.171209 +0.797283 0.290187 0.176753 +0.791031 0.307615 0.175367 +0.754242 0.312417 0.167211 +0.777426 0.342075 0.172351 +0.770076 0.359093 0.170722 +0.733044 0.361497 0.162512 +0.754297 0.392662 0.167224 +0.745872 0.409199 0.165356 +0.708743 0.409193 0.157125 +0.727964 0.441740 0.161386 +0.718488 0.457727 0.159285 +0.681411 0.455305 0.151065 +0.698507 0.489100 0.154855 +0.688009 0.504469 0.152528 +0.651133 0.499632 0.144353 +0.666019 0.534536 0.147653 +0.654533 0.549219 0.145107 +0.618007 0.541978 0.137009 +0.630606 0.577844 0.139802 +0.618172 0.591771 0.137045 +0.582146 0.582146 0.129059 +0.591771 0.618172 0.137045 +0.577844 0.630606 0.139802 +0.541978 0.618007 0.137009 +0.549219 0.654533 0.145107 +0.534536 0.666019 0.147653 +0.499632 0.651133 0.144353 +0.504469 0.688009 0.152528 +0.489100 0.698507 0.154855 +0.455305 0.681411 0.151065 +0.457727 0.718488 0.159285 +0.441740 0.727964 0.161386 +0.409193 0.708743 0.157125 +0.409199 0.745872 0.165356 +0.392662 0.754297 0.167224 +0.361497 0.733044 0.162512 +0.359093 0.770076 0.170722 +0.342075 0.777426 0.172351 +0.312417 0.754242 0.167211 +0.307615 0.791031 0.175367 +0.290187 0.797283 0.176753 +0.262152 0.772275 0.171209 +0.254975 0.808677 0.179279 +0.237205 0.813814 0.180418 +0.210901 0.787094 0.174495 +0.201378 0.822965 0.182447 +0.183336 0.826975 0.183336 +0.158863 0.798660 0.177059 +0.147032 0.833858 0.184862 +0.128785 0.836729 0.185498 +0.106236 0.806942 0.178895 +0.092140 0.841328 0.186518 +0.073758 0.843053 0.186900 +0.053216 0.811919 0.179998 +0.036909 0.845356 0.187411 +0.018458 0.845931 0.187538 +0.000000 0.813580 0.180366 +0.817134 0.017830 0.162538 +0.816573 0.035652 0.162426 +0.814329 0.071245 0.161980 +0.812646 0.088999 0.161645 +0.808165 0.124388 0.160754 +0.805366 0.142008 0.160197 +0.798660 0.177059 0.158863 +0.794753 0.194475 0.158086 +0.785841 0.229052 0.156313 +0.780838 0.246197 0.155318 +0.769746 0.280165 0.153112 +0.763661 0.296972 0.151902 +0.750423 0.330194 0.149268 +0.743275 0.346595 0.147847 +0.727932 0.378938 0.144795 +0.719743 0.394865 0.143166 +0.702344 0.426193 0.139705 +0.693140 0.441579 0.137874 +0.673742 0.471759 0.134016 +0.663554 0.486538 0.131989 +0.642222 0.515438 0.127746 +0.631086 0.529544 0.125531 +0.607895 0.557034 0.120918 +0.595850 0.570403 0.118522 +0.570403 0.595850 0.118522 +0.557034 0.607895 0.120918 +0.529544 0.631086 0.125531 +0.515438 0.642222 0.127746 +0.486538 0.663554 0.131989 +0.471759 0.673742 0.134016 +0.441579 0.693140 0.137874 +0.426193 0.702344 0.139705 +0.394865 0.719743 0.143166 +0.378938 0.727932 0.144795 +0.346595 0.743275 0.147847 +0.330194 0.750423 0.149268 +0.296972 0.763661 0.151902 +0.280165 0.769746 0.153112 +0.246197 0.780838 0.155318 +0.229052 0.785841 0.156313 +0.194475 0.794753 0.158086 +0.177059 0.798660 0.158863 +0.142008 0.805366 0.160197 +0.124388 0.808165 0.160754 +0.088999 0.812646 0.161645 +0.071245 0.814329 0.161980 +0.035652 0.816573 0.162426 +0.017830 0.817134 0.162538 +0.820673 0.000000 0.144707 +0.853303 0.018619 0.150460 +0.852712 0.037230 0.150356 +0.818969 0.053678 0.144406 +0.850350 0.074396 0.149940 +0.848579 0.092934 0.149627 +0.813861 0.107147 0.143506 +0.843861 0.129883 0.148795 +0.840916 0.148276 0.148276 +0.805366 0.160197 0.142008 +0.833858 0.184862 0.147032 +0.829748 0.203038 0.146307 +0.793511 0.212621 0.139917 +0.820372 0.239117 0.144654 +0.815109 0.257003 0.143726 +0.778334 0.264209 0.137241 +0.803446 0.292430 0.141669 +0.797049 0.309955 0.140541 +0.759883 0.314754 0.133988 +0.783136 0.344588 0.138088 +0.775625 0.361680 0.136764 +0.738220 0.364050 0.130168 +0.759509 0.395375 0.133922 +0.750910 0.411963 0.132406 +0.713418 0.411892 0.125795 +0.732646 0.444581 0.129185 +0.722988 0.460594 0.127482 +0.685563 0.458078 0.120883 +0.702640 0.491994 0.123894 +0.691958 0.507365 0.122011 +0.654752 0.502409 0.115451 +0.669598 0.537410 0.118068 +0.657930 0.552069 0.116011 +0.621099 0.544689 0.109517 +0.633642 0.580626 0.111728 +0.621031 0.594508 0.109505 +0.584728 0.584728 0.103103 +0.594508 0.621031 0.109505 +0.580626 0.633642 0.111728 +0.544689 0.621099 0.109517 +0.552069 0.657930 0.116011 +0.537410 0.669598 0.118068 +0.502409 0.654752 0.115451 +0.507365 0.691958 0.122011 +0.491994 0.702640 0.123894 +0.458078 0.685563 0.120883 +0.460594 0.722988 0.127482 +0.444581 0.732646 0.129185 +0.411892 0.713418 0.125795 +0.411963 0.750910 0.132406 +0.395375 0.759509 0.133922 +0.364050 0.738220 0.130168 +0.361680 0.775625 0.136764 +0.344588 0.783136 0.138088 +0.314754 0.759883 0.133988 +0.309955 0.797049 0.140541 +0.292430 0.803446 0.141669 +0.264209 0.778334 0.137241 +0.257003 0.815109 0.143726 +0.239117 0.820372 0.144654 +0.212621 0.793511 0.139917 +0.203038 0.829748 0.146307 +0.184862 0.833858 0.147032 +0.160197 0.805366 0.142008 +0.148276 0.840916 0.148276 +0.129883 0.843861 0.148795 +0.107147 0.813861 0.143506 +0.092934 0.848579 0.149627 +0.074396 0.850350 0.149940 +0.053678 0.818969 0.144406 +0.037230 0.852712 0.150356 +0.018619 0.853303 0.150460 +0.000000 0.820673 0.144707 +0.823635 0.000000 0.126769 +0.856381 0.018686 0.131810 +0.855784 0.037364 0.131718 +0.821912 0.053871 0.126504 +0.853395 0.074662 0.131350 +0.851606 0.093266 0.131075 +0.816749 0.107527 0.125710 +0.846837 0.130341 0.130341 +0.843861 0.148795 0.129883 +0.808165 0.160754 0.124388 +0.836729 0.185498 0.128785 +0.832577 0.203730 0.128146 +0.796187 0.213338 0.122545 +0.823106 0.239913 0.126688 +0.817791 0.257848 0.125870 +0.780859 0.265066 0.120186 +0.806014 0.293365 0.124057 +0.799555 0.310930 0.123063 +0.762232 0.315727 0.117319 +0.785513 0.345634 0.120902 +0.777934 0.362757 0.119736 +0.740373 0.365112 0.113954 +0.761677 0.396504 0.117233 +0.753005 0.413113 0.115899 +0.715361 0.413014 0.110105 +0.734591 0.445761 0.113064 +0.724858 0.461785 0.111566 +0.687286 0.459230 0.105783 +0.704356 0.493195 0.108411 +0.693596 0.508566 0.106755 +0.656253 0.503561 0.101007 +0.671083 0.538601 0.103289 +0.659338 0.553250 0.101482 +0.622380 0.545813 0.095793 +0.634899 0.581778 0.097720 +0.622215 0.595641 0.095768 +0.585797 0.585797 0.090163 +0.595641 0.622215 0.095768 +0.581778 0.634899 0.097720 +0.545813 0.622380 0.095793 +0.553250 0.659338 0.101482 +0.538601 0.671083 0.103289 +0.503561 0.656253 0.101007 +0.508566 0.693596 0.106755 +0.493195 0.704356 0.108411 +0.459230 0.687286 0.105783 +0.461785 0.724858 0.111566 +0.445761 0.734591 0.113064 +0.413014 0.715361 0.110105 +0.413113 0.753005 0.115899 +0.396504 0.761677 0.117233 +0.365112 0.740373 0.113954 +0.362757 0.777934 0.119736 +0.345634 0.785513 0.120902 +0.315727 0.762232 0.117319 +0.310930 0.799555 0.123063 +0.293365 0.806014 0.124057 +0.265066 0.780859 0.120186 +0.257848 0.817791 0.125870 +0.239913 0.823106 0.126688 +0.213338 0.796187 0.122545 +0.203730 0.832577 0.128146 +0.185498 0.836729 0.128785 +0.160754 0.808165 0.124388 +0.148795 0.843861 0.129883 +0.130341 0.846837 0.130341 +0.107527 0.816749 0.125710 +0.093266 0.851606 0.131075 +0.074662 0.853395 0.131350 +0.053871 0.821912 0.126504 +0.037364 0.855784 0.131718 +0.018686 0.856381 0.131810 +0.000000 0.823635 0.126769 +0.826011 0.018024 0.108746 +0.825431 0.036039 0.108670 +0.823113 0.072013 0.108365 +0.821376 0.089955 0.108136 +0.816749 0.125710 0.107527 +0.813861 0.143506 0.107147 +0.806942 0.178895 0.106236 +0.802913 0.196472 0.105706 +0.793727 0.231350 0.104496 +0.788572 0.248636 0.103818 +0.777153 0.282860 0.102314 +0.770892 0.299783 0.101490 +0.757281 0.333212 0.099698 +0.749937 0.349701 0.098731 +0.734187 0.382193 0.096658 +0.725787 0.398180 0.095552 +0.707957 0.429599 0.093204 +0.698533 0.445015 0.091964 +0.678691 0.475225 0.089351 +0.668281 0.490004 0.087981 +0.646505 0.518875 0.085114 +0.635148 0.532953 0.083619 +0.611524 0.560358 0.080509 +0.599266 0.573673 0.078895 +0.573673 0.599266 0.078895 +0.560358 0.611524 0.080509 +0.532953 0.635148 0.083619 +0.518875 0.646505 0.085114 +0.490004 0.668281 0.087981 +0.475225 0.678691 0.089351 +0.445015 0.698533 0.091964 +0.429599 0.707957 0.093204 +0.398180 0.725787 0.095552 +0.382193 0.734187 0.096658 +0.349701 0.749937 0.098731 +0.333212 0.757281 0.099698 +0.299783 0.770892 0.101490 +0.282860 0.777153 0.102314 +0.248636 0.788572 0.103818 +0.231350 0.793727 0.104496 +0.196472 0.802913 0.105706 +0.178895 0.806942 0.106236 +0.143506 0.813861 0.107147 +0.125710 0.816749 0.107527 +0.089955 0.821376 0.108136 +0.072013 0.823113 0.108365 +0.036039 0.825431 0.108670 +0.018024 0.826011 0.108746 +0.828380 0.000000 0.090722 +0.861313 0.018794 0.094329 +0.860705 0.037579 0.094263 +0.826628 0.054180 0.090530 +0.858276 0.075089 0.093996 +0.856455 0.093797 0.093797 +0.821376 0.108136 0.089955 +0.851606 0.131075 0.093266 +0.848579 0.149627 0.092934 +0.812646 0.161645 0.088999 +0.841328 0.186518 0.092140 +0.837107 0.204839 0.091678 +0.800472 0.214486 0.087666 +0.827482 0.241189 0.090624 +0.822083 0.259202 0.090033 +0.784899 0.266437 0.085960 +0.810122 0.294860 0.088723 +0.803565 0.312489 0.088005 +0.765989 0.317283 0.083889 +0.789314 0.347307 0.086444 +0.781626 0.364478 0.085602 +0.743814 0.366809 0.081461 +0.765141 0.398307 0.083797 +0.756351 0.414949 0.082834 +0.718464 0.414805 0.078685 +0.737697 0.447646 0.080791 +0.727841 0.463686 0.079712 +0.690036 0.461068 0.075571 +0.707092 0.495111 0.077439 +0.696209 0.510481 0.076247 +0.658646 0.505397 0.072134 +0.673448 0.540499 0.073755 +0.661581 0.555132 0.072455 +0.624420 0.547602 0.068385 +0.636901 0.583612 0.069752 +0.624099 0.597445 0.068350 +0.587497 0.587497 0.064341 +0.597445 0.624099 0.068350 +0.583612 0.636901 0.069752 +0.547602 0.624420 0.068385 +0.555132 0.661581 0.072455 +0.540499 0.673448 0.073755 +0.505397 0.658646 0.072134 +0.510481 0.696209 0.076247 +0.495111 0.707092 0.077439 +0.461068 0.690036 0.075571 +0.463686 0.727841 0.079712 +0.447646 0.737697 0.080791 +0.414805 0.718464 0.078685 +0.414949 0.756351 0.082834 +0.398307 0.765141 0.083797 +0.366809 0.743814 0.081461 +0.364478 0.781626 0.085602 +0.347307 0.789314 0.086444 +0.317283 0.765989 0.083889 +0.312489 0.803565 0.088005 +0.294860 0.810122 0.088723 +0.266437 0.784899 0.085960 +0.259202 0.822083 0.090033 +0.241189 0.827482 0.090624 +0.214486 0.800472 0.087666 +0.204839 0.837107 0.091678 +0.186518 0.841328 0.092140 +0.161645 0.812646 0.088999 +0.149627 0.848579 0.092934 +0.131075 0.851606 0.093266 +0.108136 0.821376 0.089955 +0.093797 0.856455 0.093797 +0.075089 0.858276 0.093996 +0.054180 0.826628 0.090530 +0.037579 0.860705 0.094263 +0.018794 0.861313 0.094329 +0.000000 0.828380 0.090722 +0.830162 0.000000 0.072630 +0.863165 0.018834 0.075517 +0.862553 0.037660 0.075464 +0.828398 0.054296 0.072475 +0.860108 0.075250 0.075250 +0.858276 0.093996 0.075089 +0.823113 0.108365 0.072013 +0.853395 0.131350 0.074662 +0.850350 0.149940 0.074396 +0.814329 0.161980 0.071245 +0.843053 0.186900 0.073758 +0.838806 0.205255 0.073386 +0.802079 0.214916 0.070173 +0.829124 0.241668 0.072539 +0.823692 0.259709 0.072064 +0.786414 0.266952 0.068802 +0.811662 0.295421 0.071011 +0.805068 0.313074 0.070434 +0.767397 0.317866 0.067139 +0.790739 0.347933 0.069181 +0.783009 0.365123 0.068504 +0.745104 0.367444 0.065188 +0.766438 0.398983 0.067055 +0.757604 0.415636 0.066282 +0.719625 0.415476 0.062959 +0.738860 0.448351 0.064642 +0.728958 0.464397 0.063776 +0.691065 0.461755 0.060460 +0.708116 0.495828 0.061952 +0.697186 0.511198 0.060996 +0.659541 0.506084 0.057702 +0.674332 0.541209 0.058996 +0.662419 0.555836 0.057954 +0.625182 0.548270 0.054696 +0.637649 0.584297 0.055787 +0.624802 0.598118 0.054663 +0.588131 0.588131 0.051455 +0.598118 0.624802 0.054663 +0.584297 0.637649 0.055787 +0.548270 0.625182 0.054696 +0.555836 0.662419 0.057954 +0.541209 0.674332 0.058996 +0.506084 0.659541 0.057702 +0.511198 0.697186 0.060996 +0.495828 0.708116 0.061952 +0.461755 0.691065 0.060460 +0.464397 0.728958 0.063776 +0.448351 0.738860 0.064642 +0.415476 0.719625 0.062959 +0.415636 0.757604 0.066282 +0.398983 0.766438 0.067055 +0.367444 0.745104 0.065188 +0.365123 0.783009 0.068504 +0.347933 0.790739 0.069181 +0.317866 0.767397 0.067139 +0.313074 0.805068 0.070434 +0.295421 0.811662 0.071011 +0.266952 0.786414 0.068802 +0.259709 0.823692 0.072064 +0.241668 0.829124 0.072539 +0.214916 0.802079 0.070173 +0.205255 0.838806 0.073386 +0.186900 0.843053 0.073758 +0.161980 0.814329 0.071245 +0.149940 0.850350 0.074396 +0.131350 0.853395 0.074662 +0.108365 0.823113 0.072013 +0.093996 0.858276 0.075089 +0.075250 0.860108 0.075250 +0.054296 0.828398 0.072475 +0.037660 0.862553 0.075464 +0.018834 0.863165 0.075517 +0.000000 0.830162 0.072630 +0.831352 0.018140 0.054490 +0.830761 0.036272 0.054451 +0.828398 0.072475 0.054296 +0.826628 0.090530 0.054180 +0.821912 0.126504 0.053871 +0.818969 0.144406 0.053678 +0.811919 0.179998 0.053216 +0.807816 0.197671 0.052947 +0.798462 0.232731 0.052334 +0.793216 0.250100 0.051990 +0.781596 0.284478 0.051229 +0.775228 0.301470 0.050811 +0.761391 0.335020 0.049904 +0.753927 0.351562 0.049415 +0.737930 0.384142 0.048366 +0.729402 0.400164 0.047808 +0.711311 0.431634 0.046622 +0.701755 0.447067 0.045995 +0.681645 0.477293 0.044677 +0.671100 0.492071 0.043986 +0.649056 0.520923 0.042541 +0.637567 0.534982 0.041788 +0.613682 0.562336 0.040223 +0.601296 0.575616 0.039411 +0.575616 0.601296 0.039411 +0.562336 0.613682 0.040223 +0.534982 0.637567 0.041788 +0.520923 0.649056 0.042541 +0.492071 0.671100 0.043986 +0.477293 0.681645 0.044677 +0.447067 0.701755 0.045995 +0.431634 0.711311 0.046622 +0.400164 0.729402 0.047808 +0.384142 0.737930 0.048366 +0.351562 0.753927 0.049415 +0.335020 0.761391 0.049904 +0.301470 0.775228 0.050811 +0.284478 0.781596 0.051229 +0.250100 0.793216 0.051990 +0.232731 0.798462 0.052334 +0.197671 0.807816 0.052947 +0.179998 0.811919 0.053216 +0.144406 0.818969 0.053678 +0.126504 0.821912 0.053871 +0.090530 0.826628 0.054180 +0.072475 0.828398 0.054296 +0.036272 0.830761 0.054451 +0.018140 0.831352 0.054490 +0.832540 0.000000 0.036349 +0.865636 0.018888 0.037794 +0.865019 0.037768 0.037768 +0.830761 0.054451 0.036272 +0.862553 0.075464 0.037660 +0.860705 0.094263 0.037579 +0.825431 0.108670 0.036039 +0.855784 0.131718 0.037364 +0.852712 0.150356 0.037230 +0.816573 0.162426 0.035652 +0.845356 0.187411 0.036909 +0.841074 0.205809 0.036722 +0.804223 0.215491 0.035113 +0.831313 0.242306 0.036296 +0.825839 0.260386 0.036057 +0.788435 0.267638 0.034424 +0.813716 0.296168 0.035528 +0.807072 0.313853 0.035238 +0.769274 0.318644 0.033587 +0.792637 0.348769 0.034607 +0.784853 0.365983 0.034267 +0.746822 0.368292 0.032607 +0.768167 0.399882 0.033539 +0.759274 0.416552 0.033151 +0.721172 0.416369 0.031487 +0.740408 0.449291 0.032327 +0.730444 0.465344 0.031892 +0.692435 0.462670 0.030232 +0.709478 0.496782 0.030976 +0.698486 0.512151 0.030497 +0.660732 0.506997 0.028848 +0.675508 0.542153 0.029493 +0.663534 0.556771 0.028971 +0.626196 0.549159 0.027340 +0.638643 0.585208 0.027884 +0.625738 0.599013 0.027320 +0.588975 0.588975 0.025715 +0.599013 0.625738 0.027320 +0.585208 0.638643 0.027884 +0.549159 0.626196 0.027340 +0.556771 0.663534 0.028971 +0.542153 0.675508 0.029493 +0.506997 0.660732 0.028848 +0.512151 0.698486 0.030497 +0.496782 0.709478 0.030976 +0.462670 0.692435 0.030232 +0.465344 0.730444 0.031892 +0.449291 0.740408 0.032327 +0.416369 0.721172 0.031487 +0.416552 0.759274 0.033151 +0.399882 0.768167 0.033539 +0.368292 0.746822 0.032607 +0.365983 0.784853 0.034267 +0.348769 0.792637 0.034607 +0.318644 0.769274 0.033587 +0.313853 0.807072 0.035238 +0.296168 0.813716 0.035528 +0.267638 0.788435 0.034424 +0.260386 0.825839 0.036057 +0.242306 0.831313 0.036296 +0.215491 0.804223 0.035113 +0.205809 0.841074 0.036722 +0.187411 0.845356 0.036909 +0.162426 0.816573 0.035652 +0.150356 0.852712 0.037230 +0.131718 0.855784 0.037364 +0.108670 0.825431 0.036039 +0.094263 0.860705 0.037579 +0.075464 0.862553 0.037660 +0.054451 0.830761 0.036272 +0.037768 0.865019 0.037768 +0.018888 0.865636 0.037794 +0.000000 0.832540 0.036349 +0.833135 0.000000 0.018179 +0.866254 0.018902 0.018902 +0.865636 0.037794 0.018888 +0.831352 0.054490 0.018140 +0.863165 0.075517 0.018834 +0.861313 0.094329 0.018794 +0.826011 0.108746 0.018024 +0.856381 0.131810 0.018686 +0.853303 0.150460 0.018619 +0.817134 0.162538 0.017830 +0.845931 0.187538 0.018458 +0.841641 0.205948 0.018365 +0.804759 0.215635 0.017560 +0.831861 0.242465 0.018151 +0.826376 0.260555 0.018032 +0.788940 0.267809 0.017215 +0.814229 0.296355 0.017767 +0.807573 0.314048 0.017621 +0.769743 0.318838 0.016796 +0.793112 0.348978 0.017306 +0.785313 0.366198 0.017136 +0.747251 0.368503 0.016305 +0.768599 0.400107 0.016771 +0.759691 0.416781 0.016577 +0.721559 0.416592 0.015744 +0.740795 0.449525 0.016164 +0.730816 0.465581 0.015946 +0.692777 0.462899 0.015116 +0.709818 0.497020 0.015488 +0.698810 0.512389 0.015248 +0.661029 0.507225 0.014424 +0.675802 0.542388 0.014746 +0.663812 0.557005 0.014484 +0.626449 0.549381 0.013669 +0.638891 0.585436 0.013941 +0.625971 0.599237 0.013659 +0.589186 0.589186 0.012856 +0.599237 0.625971 0.013659 +0.585436 0.638891 0.013941 +0.549381 0.626449 0.013669 +0.557005 0.663812 0.014484 +0.542388 0.675802 0.014746 +0.507225 0.661029 0.014424 +0.512389 0.698810 0.015248 +0.497020 0.709818 0.015488 +0.462899 0.692777 0.015116 +0.465581 0.730816 0.015946 +0.449525 0.740795 0.016164 +0.416592 0.721559 0.015744 +0.416781 0.759691 0.016577 +0.400107 0.768599 0.016771 +0.368503 0.747251 0.016305 +0.366198 0.785313 0.017136 +0.348978 0.793112 0.017306 +0.318838 0.769743 0.016796 +0.314048 0.807573 0.017621 +0.296355 0.814229 0.017767 +0.267809 0.788940 0.017215 +0.260555 0.826376 0.018032 +0.242465 0.831861 0.018151 +0.215635 0.804759 0.017560 +0.205948 0.841641 0.018365 +0.187538 0.845931 0.018458 +0.162538 0.817134 0.017830 +0.150460 0.853303 0.018619 +0.131810 0.856381 0.018686 +0.108746 0.826011 0.018024 +0.094329 0.861313 0.018794 +0.075517 0.863165 0.018834 +0.054490 0.831352 0.018140 +0.037794 0.865636 0.018888 +0.018902 0.866254 0.018902 +0.000000 0.833135 0.018179 +0.833135 0.018179 0.000000 +0.832540 0.036349 0.000000 +0.830162 0.072630 0.000000 +0.828380 0.090722 0.000000 +0.823635 0.126769 0.000000 +0.820673 0.144707 0.000000 +0.813580 0.180366 0.000000 +0.809452 0.198072 0.000000 +0.800042 0.233191 0.000000 +0.794764 0.250588 0.000000 +0.783077 0.285017 0.000000 +0.776673 0.302032 0.000000 +0.762760 0.335622 0.000000 +0.755256 0.352182 0.000000 +0.739176 0.384791 0.000000 +0.730606 0.400824 0.000000 +0.712427 0.432311 0.000000 +0.702826 0.447750 0.000000 +0.682627 0.477980 0.000000 +0.672037 0.492758 0.000000 +0.649904 0.521603 0.000000 +0.638370 0.535656 0.000000 +0.614398 0.562992 0.000000 +0.601970 0.576261 0.000000 +0.576261 0.601970 0.000000 +0.562992 0.614398 0.000000 +0.535656 0.638370 0.000000 +0.521603 0.649904 0.000000 +0.492758 0.672037 0.000000 +0.477980 0.682627 0.000000 +0.447750 0.702826 0.000000 +0.432311 0.712427 0.000000 +0.400824 0.730606 0.000000 +0.384791 0.739176 0.000000 +0.352182 0.755256 0.000000 +0.335622 0.762760 0.000000 +0.302032 0.776673 0.000000 +0.285017 0.783077 0.000000 +0.250588 0.794764 0.000000 +0.233191 0.800042 0.000000 +0.198072 0.809452 0.000000 +0.180366 0.813580 0.000000 +0.144707 0.820673 0.000000 +0.126769 0.823635 0.000000 +0.090722 0.828380 0.000000 +0.072630 0.830162 0.000000 +0.036349 0.832540 0.000000 +0.018179 0.833135 0.000000 +0.000000 0.000000 0.900000 +0.019633 0.000000 0.899786 +0.019629 0.019629 0.899572 +0.000000 0.019633 0.899786 +0.039257 0.000000 0.899143 +0.039248 0.019615 0.898930 +0.039220 0.039220 0.898289 +0.019615 0.039248 0.898930 +0.000000 0.039257 0.899143 +0.058863 0.000000 0.898073 +0.058849 0.019591 0.897860 +0.058807 0.039174 0.897222 +0.058737 0.058737 0.896158 +0.039174 0.058807 0.897222 +0.019591 0.058849 0.897860 +0.000000 0.058863 0.898073 +0.078440 0.000000 0.896575 +0.078422 0.019559 0.896363 +0.078366 0.039108 0.895728 +0.078273 0.058640 0.894670 +0.078144 0.078144 0.893189 +0.058640 0.078273 0.894670 +0.039108 0.078366 0.895728 +0.019559 0.078422 0.896363 +0.000000 0.078440 0.896575 +0.097980 0.000000 0.894651 +0.097957 0.019517 0.894440 +0.097888 0.039025 0.893809 +0.097773 0.058514 0.892758 +0.097612 0.077977 0.891286 +0.097405 0.097405 0.889396 +0.077977 0.097612 0.891286 +0.058514 0.097773 0.892758 +0.039025 0.097888 0.893809 +0.019517 0.097957 0.894440 +0.000000 0.097980 0.894651 +0.117474 0.000000 0.892300 +0.117446 0.019466 0.892092 +0.117364 0.038922 0.891466 +0.117226 0.058361 0.890422 +0.117034 0.077774 0.888962 +0.116787 0.097152 0.887086 +0.116485 0.116485 0.884795 +0.097152 0.116787 0.887086 +0.077774 0.117034 0.888962 +0.058361 0.117226 0.890422 +0.038922 0.117364 0.891466 +0.019466 0.117446 0.892092 +0.000000 0.117474 0.892300 +0.136911 0.000000 0.889525 +0.136879 0.019405 0.889319 +0.136784 0.038801 0.888698 +0.136625 0.058181 0.887665 +0.136402 0.077534 0.886218 +0.136116 0.096853 0.884360 +0.135767 0.116129 0.882089 +0.135354 0.135354 0.879408 +0.116129 0.135767 0.882089 +0.096853 0.136116 0.884360 +0.077534 0.136402 0.886218 +0.058181 0.136625 0.887665 +0.038801 0.136784 0.888698 +0.019405 0.136879 0.889319 +0.000000 0.136911 0.889525 +0.156283 0.000000 0.886327 +0.156247 0.019335 0.886122 +0.156139 0.038662 0.885509 +0.155959 0.057972 0.884486 +0.155706 0.077257 0.883055 +0.155382 0.096509 0.881216 +0.154986 0.115719 0.878970 +0.154518 0.134878 0.876317 +0.153979 0.153979 0.873259 +0.134878 0.154518 0.876317 +0.115719 0.154986 0.878970 +0.096509 0.155382 0.881216 +0.077257 0.155706 0.883055 +0.057972 0.155959 0.884486 +0.038662 0.156139 0.885509 +0.019335 0.156247 0.886122 +0.000000 0.156283 0.886327 +0.175581 0.000000 0.882707 +0.175541 0.019256 0.882505 +0.175421 0.038505 0.881899 +0.175220 0.057736 0.880889 +0.174938 0.076944 0.879475 +0.174577 0.096119 0.877658 +0.174136 0.115254 0.875439 +0.173614 0.134340 0.872818 +0.173013 0.153368 0.869796 +0.172332 0.172332 0.866374 +0.153368 0.173013 0.869796 +0.134340 0.173614 0.872818 +0.115254 0.174136 0.875439 +0.096119 0.174577 0.877658 +0.076944 0.174938 0.879475 +0.057736 0.175220 0.880889 +0.038505 0.175421 0.881899 +0.019256 0.175541 0.882505 +0.000000 0.175581 0.882707 +0.194796 0.000000 0.878666 +0.194751 0.019168 0.878467 +0.194619 0.038329 0.877869 +0.194398 0.057473 0.876873 +0.194089 0.076594 0.875479 +0.193692 0.095684 0.873686 +0.193206 0.114735 0.871497 +0.192633 0.133738 0.868911 +0.191972 0.152687 0.865929 +0.191223 0.171572 0.862552 +0.190387 0.190387 0.858781 +0.171572 0.191223 0.862552 +0.152687 0.191972 0.865929 +0.133738 0.192633 0.868911 +0.114735 0.193206 0.871497 +0.095684 0.193692 0.873686 +0.076594 0.194089 0.875479 +0.057473 0.194398 0.876873 +0.038329 0.194619 0.877869 +0.019168 0.194751 0.878467 +0.000000 0.194796 0.878666 +0.213917 0.000000 0.874208 +0.213869 0.019071 0.874012 +0.213725 0.038134 0.873423 +0.213485 0.057183 0.872442 +0.213149 0.076209 0.871068 +0.212717 0.095204 0.869303 +0.212189 0.114162 0.867146 +0.211566 0.133074 0.864599 +0.210847 0.151934 0.861661 +0.210033 0.170733 0.858333 +0.209124 0.189464 0.854617 +0.208119 0.208119 0.850513 +0.189464 0.209124 0.854617 +0.170733 0.210033 0.858333 +0.151934 0.210847 0.861661 +0.133074 0.211566 0.864599 +0.114162 0.212189 0.867146 +0.095204 0.212717 0.869303 +0.076209 0.213149 0.871068 +0.057183 0.213485 0.872442 +0.038134 0.213725 0.873423 +0.019071 0.213869 0.874012 +0.000000 0.213917 0.874208 +0.232937 0.000000 0.869333 +0.232885 0.018965 0.869140 +0.232730 0.037922 0.868561 +0.232472 0.056865 0.867596 +0.232110 0.075787 0.866246 +0.231645 0.094679 0.864509 +0.231076 0.113536 0.862388 +0.230405 0.132349 0.859882 +0.229630 0.151111 0.856992 +0.228753 0.169815 0.853718 +0.227773 0.188454 0.850061 +0.226691 0.207020 0.846022 +0.225507 0.225507 0.841602 +0.207020 0.226691 0.846022 +0.188454 0.227773 0.850061 +0.169815 0.228753 0.853718 +0.151111 0.229630 0.856992 +0.132349 0.230405 0.859882 +0.113536 0.231076 0.862388 +0.094679 0.231645 0.864509 +0.075787 0.232110 0.866246 +0.056865 0.232472 0.867596 +0.037922 0.232730 0.868561 +0.018965 0.232885 0.869140 +0.000000 0.232937 0.869333 +0.251846 0.000000 0.864045 +0.251791 0.018849 0.863855 +0.251625 0.037692 0.863287 +0.251349 0.056521 0.862339 +0.250962 0.075329 0.861013 +0.250465 0.094110 0.859308 +0.249858 0.112856 0.857225 +0.249141 0.131561 0.854763 +0.248313 0.150217 0.851924 +0.247376 0.168819 0.848708 +0.246329 0.187357 0.845115 +0.245172 0.205827 0.841146 +0.243905 0.224220 0.836801 +0.242530 0.242530 0.832081 +0.224220 0.243905 0.836801 +0.205827 0.245172 0.841146 +0.187357 0.246329 0.845115 +0.168819 0.247376 0.848708 +0.150217 0.248313 0.851924 +0.131561 0.249141 0.854763 +0.112856 0.249858 0.857225 +0.094110 0.250465 0.859308 +0.075329 0.250962 0.861013 +0.056521 0.251349 0.862339 +0.037692 0.251625 0.863287 +0.018849 0.251791 0.863855 +0.000000 0.251846 0.864045 +0.270635 0.000000 0.858345 +0.270577 0.018725 0.858159 +0.270401 0.037444 0.857602 +0.270108 0.056149 0.856673 +0.269698 0.074835 0.855373 +0.269171 0.093495 0.853701 +0.268527 0.112123 0.851658 +0.267766 0.130711 0.849244 +0.266888 0.149254 0.846460 +0.265893 0.167744 0.843305 +0.264781 0.186175 0.839780 +0.263553 0.204540 0.835885 +0.262209 0.222832 0.831620 +0.260748 0.241045 0.826987 +0.259171 0.259171 0.821986 +0.241045 0.260748 0.826987 +0.222832 0.262209 0.831620 +0.204540 0.263553 0.835885 +0.186175 0.264781 0.839780 +0.167744 0.265893 0.843305 +0.149254 0.266888 0.846460 +0.130711 0.267766 0.849244 +0.112123 0.268527 0.851658 +0.093495 0.269171 0.853701 +0.074835 0.269698 0.855373 +0.056149 0.270108 0.856673 +0.037444 0.270401 0.857602 +0.018725 0.270577 0.858159 +0.000000 0.270635 0.858345 +0.289296 0.000000 0.852237 +0.289234 0.018592 0.852055 +0.289049 0.037178 0.851510 +0.288740 0.055751 0.850600 +0.288308 0.074307 0.849327 +0.287752 0.092837 0.847691 +0.287073 0.111337 0.845691 +0.286271 0.129800 0.843327 +0.285345 0.148220 0.840600 +0.284296 0.166591 0.837510 +0.283124 0.184906 0.834057 +0.281829 0.203159 0.830240 +0.280410 0.221343 0.826062 +0.278869 0.239451 0.821520 +0.277204 0.257478 0.816617 +0.275417 0.275417 0.811352 +0.257478 0.277204 0.816617 +0.239451 0.278869 0.821520 +0.221343 0.280410 0.826062 +0.203159 0.281829 0.830240 +0.184906 0.283124 0.834057 +0.166591 0.284296 0.837510 +0.148220 0.285345 0.840600 +0.129800 0.286271 0.843327 +0.111337 0.287073 0.845691 +0.092837 0.287752 0.847691 +0.074307 0.288308 0.849327 +0.055751 0.288740 0.850600 +0.037178 0.289049 0.851510 +0.018592 0.289234 0.852055 +0.000000 0.289296 0.852237 +0.307818 0.000000 0.845723 +0.307753 0.018450 0.845546 +0.307559 0.036894 0.845012 +0.307236 0.055327 0.844124 +0.306783 0.073742 0.842880 +0.306201 0.092135 0.841280 +0.305489 0.110499 0.839325 +0.304648 0.128829 0.837014 +0.303678 0.147118 0.834348 +0.302578 0.165361 0.831326 +0.301348 0.183552 0.827948 +0.299990 0.201684 0.824215 +0.298501 0.219752 0.820126 +0.296884 0.237749 0.815681 +0.295136 0.255670 0.810881 +0.293260 0.273507 0.805725 +0.291254 0.291254 0.800214 +0.273507 0.293260 0.805725 +0.255670 0.295136 0.810881 +0.237749 0.296884 0.815681 +0.219752 0.298501 0.820126 +0.201684 0.299990 0.824215 +0.183552 0.301348 0.827948 +0.165361 0.302578 0.831326 +0.147118 0.303678 0.834348 +0.128829 0.304648 0.837014 +0.110499 0.305489 0.839325 +0.092135 0.306201 0.841280 +0.073742 0.306783 0.842880 +0.055327 0.307236 0.844124 +0.036894 0.307559 0.845012 +0.018450 0.307753 0.845546 +0.000000 0.307818 0.845723 +0.326194 0.000000 0.838807 +0.326127 0.018299 0.838634 +0.325925 0.036593 0.838113 +0.325587 0.054876 0.837246 +0.325115 0.073143 0.836032 +0.324508 0.091389 0.834471 +0.323766 0.109609 0.832563 +0.322889 0.127797 0.830308 +0.321877 0.145947 0.827705 +0.320729 0.164054 0.824754 +0.319447 0.182112 0.821455 +0.318028 0.200117 0.817809 +0.316475 0.218061 0.813814 +0.314786 0.235939 0.809471 +0.312961 0.253746 0.804778 +0.311001 0.271474 0.799738 +0.308905 0.289119 0.794348 +0.306673 0.306673 0.788608 +0.289119 0.308905 0.794348 +0.271474 0.311001 0.799738 +0.253746 0.312961 0.804778 +0.235939 0.314786 0.809471 +0.218061 0.316475 0.813814 +0.200117 0.318028 0.817809 +0.182112 0.319447 0.821455 +0.164054 0.320729 0.824754 +0.145947 0.321877 0.827705 +0.127797 0.322889 0.830308 +0.109609 0.323766 0.832563 +0.091389 0.324508 0.834471 +0.073143 0.325115 0.836032 +0.054876 0.325587 0.837246 +0.036593 0.325925 0.838113 +0.018299 0.326127 0.838634 +0.000000 0.326194 0.838807 +0.344415 0.000000 0.831492 +0.344345 0.018140 0.831323 +0.344135 0.036274 0.830816 +0.343785 0.054399 0.829971 +0.343295 0.072510 0.828789 +0.342666 0.090601 0.827268 +0.341895 0.108667 0.825408 +0.340985 0.126704 0.823210 +0.339934 0.144707 0.820673 +0.338743 0.162670 0.817797 +0.337410 0.180588 0.814581 +0.335937 0.198456 0.811025 +0.334323 0.216269 0.807128 +0.332568 0.234021 0.802890 +0.330671 0.251706 0.798311 +0.328633 0.269320 0.793390 +0.326453 0.286855 0.788126 +0.324130 0.304305 0.782520 +0.321666 0.321666 0.776571 +0.304305 0.324130 0.782520 +0.286855 0.326453 0.788126 +0.269320 0.328633 0.793390 +0.251706 0.330671 0.798311 +0.234021 0.332568 0.802890 +0.216269 0.334323 0.807128 +0.198456 0.335937 0.811025 +0.180588 0.337410 0.814581 +0.162670 0.338743 0.817797 +0.144707 0.339934 0.820673 +0.126704 0.340985 0.823210 +0.108667 0.341895 0.825408 +0.090601 0.342666 0.827268 +0.072510 0.343295 0.828789 +0.054399 0.343785 0.829971 +0.036274 0.344135 0.830816 +0.018140 0.344345 0.831323 +0.000000 0.344415 0.831492 +0.362472 0.000000 0.823780 +0.362400 0.017971 0.823616 +0.362183 0.035938 0.823123 +0.361821 0.053897 0.822302 +0.361315 0.071841 0.821152 +0.360664 0.089769 0.819672 +0.359869 0.107674 0.817864 +0.358928 0.125552 0.815725 +0.357841 0.143399 0.813257 +0.356610 0.161210 0.810457 +0.355232 0.178980 0.807327 +0.353709 0.196704 0.803864 +0.352039 0.214378 0.800069 +0.350222 0.231996 0.795941 +0.348259 0.249552 0.791479 +0.346149 0.267043 0.786682 +0.343890 0.284461 0.781551 +0.341484 0.301802 0.776082 +0.338930 0.319059 0.770277 +0.336227 0.336227 0.764135 +0.319059 0.338930 0.770277 +0.301802 0.341484 0.776082 +0.284461 0.343890 0.781551 +0.267043 0.346149 0.786682 +0.249552 0.348259 0.791479 +0.231996 0.350222 0.795941 +0.214378 0.352039 0.800069 +0.196704 0.353709 0.803864 +0.178980 0.355232 0.807327 +0.161210 0.356610 0.810457 +0.143399 0.357841 0.813257 +0.125552 0.358928 0.815725 +0.107674 0.359869 0.817864 +0.089769 0.360664 0.819672 +0.071841 0.361315 0.821152 +0.053897 0.361821 0.822302 +0.035938 0.362183 0.823123 +0.017971 0.362400 0.823616 +0.000000 0.362472 0.823780 +0.380356 0.000000 0.815677 +0.380282 0.017795 0.815518 +0.380059 0.035585 0.815039 +0.379687 0.053368 0.814242 +0.379166 0.071139 0.813125 +0.378497 0.088894 0.811688 +0.377677 0.106630 0.809932 +0.376709 0.124341 0.807855 +0.375591 0.142024 0.805457 +0.374322 0.159674 0.802737 +0.372904 0.177288 0.799695 +0.371334 0.194861 0.796329 +0.369614 0.212387 0.792639 +0.367742 0.229863 0.788625 +0.365718 0.247284 0.784284 +0.363541 0.264644 0.779616 +0.361211 0.281939 0.774620 +0.358728 0.299163 0.769296 +0.356091 0.316310 0.763640 +0.353300 0.333376 0.757654 +0.350353 0.350353 0.751335 +0.333376 0.353300 0.757654 +0.316310 0.356091 0.763640 +0.299163 0.358728 0.769296 +0.281939 0.361211 0.774620 +0.264644 0.363541 0.779616 +0.247284 0.365718 0.784284 +0.229863 0.367742 0.788625 +0.212387 0.369614 0.792639 +0.194861 0.371334 0.796329 +0.177288 0.372904 0.799695 +0.159674 0.374322 0.802737 +0.142024 0.375591 0.805457 +0.124341 0.376709 0.807855 +0.106630 0.377677 0.809932 +0.088894 0.378497 0.811688 +0.071139 0.379166 0.813125 +0.053368 0.379687 0.814242 +0.035585 0.380059 0.815039 +0.017795 0.380282 0.815518 +0.000000 0.380356 0.815677 +0.398060 0.000000 0.807185 +0.397984 0.017609 0.807031 +0.397755 0.035215 0.806567 +0.397374 0.052815 0.805794 +0.396840 0.070403 0.804712 +0.396153 0.087978 0.803320 +0.395314 0.105535 0.801617 +0.394321 0.123071 0.799603 +0.393174 0.140582 0.797277 +0.391873 0.158064 0.794639 +0.390417 0.175513 0.791688 +0.388807 0.192926 0.788422 +0.387041 0.210297 0.784841 +0.385118 0.227624 0.780943 +0.383039 0.244901 0.776727 +0.380803 0.262124 0.772192 +0.378409 0.279288 0.767337 +0.375855 0.296388 0.762159 +0.373143 0.313418 0.756659 +0.370270 0.330375 0.750834 +0.367237 0.347252 0.744683 +0.364042 0.364042 0.738205 +0.347252 0.367237 0.744683 +0.330375 0.370270 0.750834 +0.313418 0.373143 0.756659 +0.296388 0.375855 0.762159 +0.279288 0.378409 0.767337 +0.262124 0.380803 0.772192 +0.244901 0.383039 0.776727 +0.227624 0.385118 0.780943 +0.210297 0.387041 0.784841 +0.192926 0.388807 0.788422 +0.175513 0.390417 0.791688 +0.158064 0.391873 0.794639 +0.140582 0.393174 0.797277 +0.123071 0.394321 0.799603 +0.105535 0.395314 0.801617 +0.087978 0.396153 0.803320 +0.070403 0.396840 0.804712 +0.052815 0.397374 0.805794 +0.035215 0.397755 0.806567 +0.017609 0.397984 0.807031 +0.000000 0.398060 0.807185 +0.415574 0.000000 0.798310 +0.415496 0.017416 0.798160 +0.415262 0.034829 0.797712 +0.414873 0.052236 0.796964 +0.414328 0.069634 0.795917 +0.413627 0.087020 0.794569 +0.412769 0.104390 0.792922 +0.411754 0.121742 0.790972 +0.410582 0.139073 0.788721 +0.409253 0.156378 0.786167 +0.407765 0.173655 0.783308 +0.406118 0.190900 0.780145 +0.404311 0.208109 0.776674 +0.402344 0.225279 0.772896 +0.400216 0.242404 0.768809 +0.397927 0.259482 0.764410 +0.395475 0.276508 0.759699 +0.392859 0.293477 0.754674 +0.390078 0.310384 0.749333 +0.387133 0.327225 0.743675 +0.384021 0.343994 0.737697 +0.380741 0.360685 0.731397 +0.377294 0.377294 0.724775 +0.360685 0.380741 0.731397 +0.343994 0.384021 0.737697 +0.327225 0.387133 0.743675 +0.310384 0.390078 0.749333 +0.293477 0.392859 0.754674 +0.276508 0.395475 0.759699 +0.259482 0.397927 0.764410 +0.242404 0.400216 0.768809 +0.225279 0.402344 0.772896 +0.208109 0.404311 0.776674 +0.190900 0.406118 0.780145 +0.173655 0.407765 0.783308 +0.156378 0.409253 0.786167 +0.139073 0.410582 0.788721 +0.121742 0.411754 0.790972 +0.104390 0.412769 0.792922 +0.087020 0.413627 0.794569 +0.069634 0.414328 0.795917 +0.052236 0.414873 0.796964 +0.034829 0.415262 0.797712 +0.017416 0.415496 0.798160 +0.000000 0.415574 0.798310 +0.432890 0.000000 0.789054 +0.432811 0.017214 0.788910 +0.432573 0.034426 0.788477 +0.432177 0.051632 0.787755 +0.431622 0.068831 0.786743 +0.430908 0.086020 0.785442 +0.430035 0.103196 0.783850 +0.429002 0.120356 0.781967 +0.427808 0.137498 0.779791 +0.426454 0.154619 0.777322 +0.424938 0.171716 0.774559 +0.423259 0.188785 0.771500 +0.421418 0.205823 0.768143 +0.419412 0.222828 0.764488 +0.417242 0.239795 0.760531 +0.414905 0.256720 0.756273 +0.412402 0.273600 0.751710 +0.409731 0.290430 0.746841 +0.406890 0.307207 0.741663 +0.403880 0.323925 0.736175 +0.400697 0.340579 0.730375 +0.397342 0.357165 0.724260 +0.393814 0.373677 0.717827 +0.390110 0.390110 0.711076 +0.373677 0.393814 0.717827 +0.357165 0.397342 0.724260 +0.340579 0.400697 0.730375 +0.323925 0.403880 0.736175 +0.307207 0.406890 0.741663 +0.290430 0.409731 0.746841 +0.273600 0.412402 0.751710 +0.256720 0.414905 0.756273 +0.239795 0.417242 0.760531 +0.222828 0.419412 0.764488 +0.205823 0.421418 0.768143 +0.188785 0.423259 0.771500 +0.171716 0.424938 0.774559 +0.154619 0.426454 0.777322 +0.137498 0.427808 0.779791 +0.120356 0.429002 0.781967 +0.103196 0.430035 0.783850 +0.086020 0.430908 0.785442 +0.068831 0.431622 0.786743 +0.051632 0.432177 0.787755 +0.034426 0.432573 0.788477 +0.017214 0.432811 0.788910 +0.000000 0.432890 0.789054 +0.450000 0.000000 0.779423 +0.449920 0.017004 0.779284 +0.449679 0.034006 0.778866 +0.449277 0.051004 0.778170 +0.448714 0.067996 0.777195 +0.447990 0.084979 0.775941 +0.447103 0.101952 0.774406 +0.446055 0.118913 0.772590 +0.444843 0.135858 0.770491 +0.443468 0.152786 0.768110 +0.441929 0.169695 0.765443 +0.440224 0.186580 0.762490 +0.438353 0.203440 0.759249 +0.436314 0.220272 0.755718 +0.434107 0.237072 0.751896 +0.431731 0.253837 0.747780 +0.429184 0.270564 0.743368 +0.426465 0.287249 0.738658 +0.423572 0.303887 0.733648 +0.420504 0.320475 0.728335 +0.417261 0.337008 0.722716 +0.413839 0.353482 0.716790 +0.410238 0.369891 0.710553 +0.406456 0.386229 0.704003 +0.402492 0.402492 0.697137 +0.386229 0.406456 0.704003 +0.369891 0.410238 0.710553 +0.353482 0.413839 0.716790 +0.337008 0.417261 0.722716 +0.320475 0.420504 0.728335 +0.303887 0.423572 0.733648 +0.287249 0.426465 0.738658 +0.270564 0.429184 0.743368 +0.253837 0.431731 0.747780 +0.237072 0.434107 0.751896 +0.220272 0.436314 0.755718 +0.203440 0.438353 0.759249 +0.186580 0.440224 0.762490 +0.169695 0.441929 0.765443 +0.152786 0.443468 0.768110 +0.135858 0.444843 0.770491 +0.118913 0.446055 0.772590 +0.101952 0.447103 0.774406 +0.084979 0.447990 0.775941 +0.067996 0.448714 0.777195 +0.051004 0.449277 0.778170 +0.034006 0.449679 0.778866 +0.017004 0.449920 0.779284 +0.000000 0.450000 0.779423 +0.466896 0.000000 0.769421 +0.466815 0.016786 0.769287 +0.466571 0.033570 0.768885 +0.466165 0.050352 0.768216 +0.465595 0.067128 0.767277 +0.464863 0.083898 0.766070 +0.463966 0.100661 0.764593 +0.462906 0.117413 0.762845 +0.461680 0.134154 0.760825 +0.460288 0.150881 0.758531 +0.458730 0.167593 0.755963 +0.457003 0.184287 0.753118 +0.455108 0.200960 0.749995 +0.453042 0.217611 0.746591 +0.450806 0.234237 0.742905 +0.448396 0.250834 0.738934 +0.445812 0.267400 0.734676 +0.443053 0.283931 0.730128 +0.440116 0.300424 0.725288 +0.437000 0.316875 0.720154 +0.433703 0.333280 0.714721 +0.430224 0.349634 0.708987 +0.426561 0.365933 0.702950 +0.422711 0.382171 0.696606 +0.418673 0.398344 0.689952 +0.414446 0.414446 0.682986 +0.398344 0.418673 0.689952 +0.382171 0.422711 0.696606 +0.365933 0.426561 0.702950 +0.349634 0.430224 0.708987 +0.333280 0.433703 0.714721 +0.316875 0.437000 0.720154 +0.300424 0.440116 0.725288 +0.283931 0.443053 0.730128 +0.267400 0.445812 0.734676 +0.250834 0.448396 0.738934 +0.234237 0.450806 0.742905 +0.217611 0.453042 0.746591 +0.200960 0.455108 0.749995 +0.184287 0.457003 0.753118 +0.167593 0.458730 0.755963 +0.150881 0.460288 0.758531 +0.134154 0.461680 0.760825 +0.117413 0.462906 0.762845 +0.100661 0.463966 0.764593 +0.083898 0.464863 0.766070 +0.067128 0.465595 0.767277 +0.050352 0.466165 0.768216 +0.033570 0.466571 0.768885 +0.016786 0.466815 0.769287 +0.000000 0.466896 0.769421 +0.483570 0.000000 0.759052 +0.483488 0.016560 0.758924 +0.483242 0.033118 0.758538 +0.482833 0.049675 0.757895 +0.482259 0.066228 0.756994 +0.481520 0.082777 0.755835 +0.480616 0.099321 0.754416 +0.479546 0.115857 0.752737 +0.478310 0.132386 0.750796 +0.476905 0.148904 0.748591 +0.475332 0.165411 0.746122 +0.473589 0.181906 0.743386 +0.471675 0.198385 0.740382 +0.469589 0.214847 0.737107 +0.467329 0.231290 0.733559 +0.464893 0.247712 0.729735 +0.462280 0.264109 0.725634 +0.459487 0.280479 0.721251 +0.456515 0.296819 0.716584 +0.453359 0.313125 0.711631 +0.450018 0.329394 0.706387 +0.446491 0.345621 0.700851 +0.442775 0.361803 0.695017 +0.438867 0.377935 0.688884 +0.434767 0.394011 0.682447 +0.430470 0.410026 0.675703 +0.425976 0.425976 0.668648 +0.410026 0.430470 0.675703 +0.394011 0.434767 0.682447 +0.377935 0.438867 0.688884 +0.361803 0.442775 0.695017 +0.345621 0.446491 0.700851 +0.329394 0.450018 0.706387 +0.313125 0.453359 0.711631 +0.296819 0.456515 0.716584 +0.280479 0.459487 0.721251 +0.264109 0.462280 0.725634 +0.247712 0.464893 0.729735 +0.231290 0.467329 0.733559 +0.214847 0.469589 0.737107 +0.198385 0.471675 0.740382 +0.181906 0.473589 0.743386 +0.165411 0.475332 0.746122 +0.148904 0.476905 0.748591 +0.132386 0.478310 0.750796 +0.115857 0.479546 0.752737 +0.099321 0.480616 0.754416 +0.082777 0.481520 0.755835 +0.066228 0.482259 0.756994 +0.049675 0.482833 0.757895 +0.033118 0.483242 0.758538 +0.016560 0.483488 0.758924 +0.000000 0.483570 0.759052 +0.500013 0.000000 0.748323 +0.499931 0.016326 0.748200 +0.499684 0.032651 0.747830 +0.499272 0.048975 0.747214 +0.498695 0.065297 0.746351 +0.497953 0.081617 0.745239 +0.497044 0.097934 0.743879 +0.495968 0.114246 0.742269 +0.494725 0.130554 0.740408 +0.493312 0.146856 0.738293 +0.491729 0.163150 0.735924 +0.489975 0.179437 0.733299 +0.488048 0.195714 0.730415 +0.485946 0.211980 0.727270 +0.483668 0.228232 0.723861 +0.481213 0.244470 0.720186 +0.478578 0.260691 0.716243 +0.475761 0.276892 0.712027 +0.472760 0.293071 0.707536 +0.469574 0.309225 0.702767 +0.466198 0.325350 0.697715 +0.462632 0.341443 0.692378 +0.458873 0.357501 0.686752 +0.454918 0.373518 0.680833 +0.450765 0.389490 0.674617 +0.446410 0.405413 0.668100 +0.441852 0.421281 0.661278 +0.437087 0.437087 0.654148 +0.421281 0.441852 0.661278 +0.405413 0.446410 0.668100 +0.389490 0.450765 0.674617 +0.373518 0.454918 0.680833 +0.357501 0.458873 0.686752 +0.341443 0.462632 0.692378 +0.325350 0.466198 0.697715 +0.309225 0.469574 0.702767 +0.293071 0.472760 0.707536 +0.276892 0.475761 0.712027 +0.260691 0.478578 0.716243 +0.244470 0.481213 0.720186 +0.228232 0.483668 0.723861 +0.211980 0.485946 0.727270 +0.195714 0.488048 0.730415 +0.179437 0.489975 0.733299 +0.163150 0.491729 0.735924 +0.146856 0.493312 0.738293 +0.130554 0.494725 0.740408 +0.114246 0.495968 0.742269 +0.097934 0.497044 0.743879 +0.081617 0.497953 0.745239 +0.065297 0.498695 0.746351 +0.048975 0.499272 0.747214 +0.032651 0.499684 0.747830 +0.016326 0.499931 0.748200 +0.000000 0.500013 0.748323 +0.516219 0.000000 0.737237 +0.516136 0.016084 0.737119 +0.515889 0.032168 0.736766 +0.515476 0.048252 0.736177 +0.514898 0.064335 0.735351 +0.514154 0.080418 0.734288 +0.513243 0.096500 0.732987 +0.512164 0.112580 0.731446 +0.510917 0.128660 0.729665 +0.509500 0.144737 0.727641 +0.507911 0.160811 0.725373 +0.506151 0.176882 0.722858 +0.504216 0.192949 0.720095 +0.502105 0.209010 0.717081 +0.499817 0.225064 0.713813 +0.497349 0.241110 0.710288 +0.494700 0.257146 0.706504 +0.491866 0.273171 0.702457 +0.488845 0.289181 0.698144 +0.485636 0.305174 0.693561 +0.482236 0.321148 0.688704 +0.478641 0.337099 0.683570 +0.474848 0.353025 0.678154 +0.470856 0.368920 0.672452 +0.466661 0.384782 0.666461 +0.462260 0.400604 0.660176 +0.457650 0.416384 0.653591 +0.452827 0.432114 0.646704 +0.447789 0.447789 0.639508 +0.432114 0.452827 0.646704 +0.416384 0.457650 0.653591 +0.400604 0.462260 0.660176 +0.384782 0.466661 0.666461 +0.368920 0.470856 0.672452 +0.353025 0.474848 0.678154 +0.337099 0.478641 0.683570 +0.321148 0.482236 0.688704 +0.305174 0.485636 0.693561 +0.289181 0.488845 0.698144 +0.273171 0.491866 0.702457 +0.257146 0.494700 0.706504 +0.241110 0.497349 0.710288 +0.225064 0.499817 0.713813 +0.209010 0.502105 0.717081 +0.192949 0.504216 0.720095 +0.176882 0.506151 0.722858 +0.160811 0.507911 0.725373 +0.144737 0.509500 0.727641 +0.128660 0.510917 0.729665 +0.112580 0.512164 0.731446 +0.096500 0.513243 0.732987 +0.080418 0.514154 0.734288 +0.064335 0.514898 0.735351 +0.048252 0.515476 0.736177 +0.032168 0.515889 0.736766 +0.016084 0.516136 0.737119 +0.000000 0.516219 0.737237 +0.532179 0.000000 0.725800 +0.532096 0.015835 0.725688 +0.531849 0.031669 0.725351 +0.531437 0.047505 0.724788 +0.530859 0.063342 0.724000 +0.530115 0.079180 0.722986 +0.529204 0.095019 0.721744 +0.528126 0.110861 0.720273 +0.526879 0.126704 0.718572 +0.525461 0.142548 0.716638 +0.523872 0.158394 0.714471 +0.522110 0.174242 0.712068 +0.520173 0.190090 0.709426 +0.518059 0.205939 0.706544 +0.515767 0.221787 0.703417 +0.513293 0.237633 0.700043 +0.510636 0.253476 0.696420 +0.507793 0.269315 0.692543 +0.504762 0.285148 0.688408 +0.501539 0.300973 0.684013 +0.498122 0.316787 0.679353 +0.494508 0.332589 0.674423 +0.490693 0.348374 0.669220 +0.486674 0.364140 0.663740 +0.482448 0.379883 0.657976 +0.478012 0.395598 0.651926 +0.473361 0.411282 0.645583 +0.468492 0.426928 0.638943 +0.463402 0.442531 0.632000 +0.458086 0.458086 0.624751 +0.442531 0.463402 0.632000 +0.426928 0.468492 0.638943 +0.411282 0.473361 0.645583 +0.395598 0.478012 0.651926 +0.379883 0.482448 0.657976 +0.364140 0.486674 0.663740 +0.348374 0.490693 0.669220 +0.332589 0.494508 0.674423 +0.316787 0.498122 0.679353 +0.300973 0.501539 0.684013 +0.285148 0.504762 0.688408 +0.269315 0.507793 0.692543 +0.253476 0.510636 0.696420 +0.237633 0.513293 0.700043 +0.221787 0.515767 0.703417 +0.205939 0.518059 0.706544 +0.190090 0.520173 0.709426 +0.174242 0.522110 0.712068 +0.158394 0.523872 0.714471 +0.142548 0.525461 0.716638 +0.126704 0.526879 0.718572 +0.110861 0.528126 0.720273 +0.095019 0.529204 0.721744 +0.079180 0.530115 0.722986 +0.063342 0.530859 0.724000 +0.047505 0.531437 0.724788 +0.031669 0.531849 0.725351 +0.015835 0.532096 0.725688 +0.000000 0.532179 0.725800 +0.547885 0.000000 0.714018 +0.547803 0.015578 0.713911 +0.547557 0.031156 0.713590 +0.547146 0.046736 0.713055 +0.546570 0.062319 0.712304 +0.545829 0.077904 0.711338 +0.544921 0.093494 0.710155 +0.543846 0.109088 0.708754 +0.542602 0.124687 0.707133 +0.541188 0.140291 0.705290 +0.539603 0.155901 0.703224 +0.537844 0.171517 0.700932 +0.535910 0.187139 0.698412 +0.533799 0.202767 0.695661 +0.531509 0.218400 0.692676 +0.529037 0.234038 0.689454 +0.526380 0.249680 0.685991 +0.523536 0.265326 0.682285 +0.520501 0.280974 0.678330 +0.517274 0.296622 0.674124 +0.513850 0.312268 0.669662 +0.510226 0.327912 0.664939 +0.506398 0.343549 0.659951 +0.502364 0.359177 0.654693 +0.498118 0.374793 0.649160 +0.493658 0.390393 0.643347 +0.488978 0.405972 0.637249 +0.484076 0.421527 0.630860 +0.478947 0.437052 0.624176 +0.473586 0.452542 0.617189 +0.467989 0.467989 0.609895 +0.452542 0.473586 0.617189 +0.437052 0.478947 0.624176 +0.421527 0.484076 0.630860 +0.405972 0.488978 0.637249 +0.390393 0.493658 0.643347 +0.374793 0.498118 0.649160 +0.359177 0.502364 0.654693 +0.343549 0.506398 0.659951 +0.327912 0.510226 0.664939 +0.312268 0.513850 0.669662 +0.296622 0.517274 0.674124 +0.280974 0.520501 0.678330 +0.265326 0.523536 0.682285 +0.249680 0.526380 0.685991 +0.234038 0.529037 0.689454 +0.218400 0.531509 0.692676 +0.202767 0.533799 0.695661 +0.187139 0.535910 0.698412 +0.171517 0.537844 0.700932 +0.155901 0.539603 0.703224 +0.140291 0.541188 0.705290 +0.124687 0.542602 0.707133 +0.109088 0.543846 0.708754 +0.093494 0.544921 0.710155 +0.077904 0.545829 0.711338 +0.062319 0.546570 0.712304 +0.046736 0.547146 0.713055 +0.031156 0.547557 0.713590 +0.015578 0.547803 0.713911 +0.000000 0.547885 0.714018 +0.563331 0.000000 0.701896 +0.563250 0.015313 0.701794 +0.563005 0.030628 0.701489 +0.562597 0.045945 0.700981 +0.562024 0.061266 0.700268 +0.561288 0.076591 0.699350 +0.560385 0.091923 0.698225 +0.559316 0.107262 0.696893 +0.558079 0.122609 0.695352 +0.556673 0.137966 0.693600 +0.555095 0.153332 0.691635 +0.553345 0.168708 0.689454 +0.551420 0.184096 0.687055 +0.549318 0.199495 0.684436 +0.547036 0.214905 0.681592 +0.544571 0.230327 0.678522 +0.541922 0.245760 0.675221 +0.539084 0.261204 0.671685 +0.536055 0.276658 0.667911 +0.532832 0.292121 0.663895 +0.529410 0.307591 0.659631 +0.525786 0.323067 0.655116 +0.521956 0.338548 0.650344 +0.517916 0.354029 0.645311 +0.513663 0.369510 0.640010 +0.509190 0.384986 0.634438 +0.504494 0.400454 0.628587 +0.499571 0.415910 0.622453 +0.494416 0.431348 0.616029 +0.489023 0.446764 0.609310 +0.483388 0.462152 0.602289 +0.477506 0.477506 0.594960 +0.462152 0.483388 0.602289 +0.446764 0.489023 0.609310 +0.431348 0.494416 0.616029 +0.415910 0.499571 0.622453 +0.400454 0.504494 0.628587 +0.384986 0.509190 0.634438 +0.369510 0.513663 0.640010 +0.354029 0.517916 0.645311 +0.338548 0.521956 0.650344 +0.323067 0.525786 0.655116 +0.307591 0.529410 0.659631 +0.292121 0.532832 0.663895 +0.276658 0.536055 0.667911 +0.261204 0.539084 0.671685 +0.245760 0.541922 0.675221 +0.230327 0.544571 0.678522 +0.214905 0.547036 0.681592 +0.199495 0.549318 0.684436 +0.184096 0.551420 0.687055 +0.168708 0.553345 0.689454 +0.153332 0.555095 0.691635 +0.137966 0.556673 0.693600 +0.122609 0.558079 0.695352 +0.107262 0.559316 0.696893 +0.091923 0.560385 0.698225 +0.076591 0.561288 0.699350 +0.061266 0.562024 0.700268 +0.045945 0.562597 0.700981 +0.030628 0.563005 0.701489 +0.015313 0.563250 0.701794 +0.000000 0.563331 0.701896 +0.578509 0.000000 0.689440 +0.578428 0.015042 0.689344 +0.578186 0.030085 0.689055 +0.577781 0.045131 0.688573 +0.577214 0.060183 0.687897 +0.576484 0.075242 0.687026 +0.575589 0.090308 0.685960 +0.574529 0.105385 0.684697 +0.573303 0.120473 0.683235 +0.571908 0.135573 0.681573 +0.570343 0.150688 0.679708 +0.568605 0.165817 0.677638 +0.566694 0.180962 0.675360 +0.564606 0.196124 0.672871 +0.562338 0.211303 0.670169 +0.559889 0.226501 0.667250 +0.557254 0.241716 0.664109 +0.554431 0.256950 0.660745 +0.551415 0.272201 0.657151 +0.548204 0.287470 0.653325 +0.544794 0.302755 0.649260 +0.541180 0.318056 0.644953 +0.537358 0.333370 0.640399 +0.533324 0.348697 0.635591 +0.529073 0.364034 0.630525 +0.524600 0.379377 0.625194 +0.519901 0.394725 0.619593 +0.514969 0.410072 0.613716 +0.509800 0.425416 0.607557 +0.504389 0.440750 0.601108 +0.498730 0.456071 0.594363 +0.492817 0.471371 0.587316 +0.486645 0.486645 0.579960 +0.471371 0.492817 0.587316 +0.456071 0.498730 0.594363 +0.440750 0.504389 0.601108 +0.425416 0.509800 0.607557 +0.410072 0.514969 0.613716 +0.394725 0.519901 0.619593 +0.379377 0.524600 0.625194 +0.364034 0.529073 0.630525 +0.348697 0.533324 0.635591 +0.333370 0.537358 0.640399 +0.318056 0.541180 0.644953 +0.302755 0.544794 0.649260 +0.287470 0.548204 0.653325 +0.272201 0.551415 0.657151 +0.256950 0.554431 0.660745 +0.241716 0.557254 0.664109 +0.226501 0.559889 0.667250 +0.211303 0.562338 0.670169 +0.196124 0.564606 0.672871 +0.180962 0.566694 0.675360 +0.165817 0.568605 0.677638 +0.150688 0.570343 0.679708 +0.135573 0.571908 0.681573 +0.120473 0.573303 0.683235 +0.105385 0.574529 0.684697 +0.090308 0.575589 0.685960 +0.075242 0.576484 0.687026 +0.060183 0.577214 0.687897 +0.045131 0.577781 0.688573 +0.030085 0.578186 0.689055 +0.015042 0.578428 0.689344 +0.000000 0.578509 0.689440 +0.593411 0.000000 0.676656 +0.593331 0.014763 0.676565 +0.593092 0.029528 0.676292 +0.592692 0.044297 0.675836 +0.592132 0.059072 0.675197 +0.591410 0.073856 0.674374 +0.590525 0.088650 0.673365 +0.589478 0.103457 0.672170 +0.588264 0.118278 0.670787 +0.586885 0.133115 0.669214 +0.585336 0.147970 0.667448 +0.583617 0.162844 0.665487 +0.581724 0.177739 0.663329 +0.579656 0.192655 0.660971 +0.577409 0.207596 0.658409 +0.574981 0.222560 0.655640 +0.572368 0.237549 0.652660 +0.569566 0.252563 0.649466 +0.566573 0.267604 0.646052 +0.563383 0.282670 0.642415 +0.559993 0.297761 0.638550 +0.556399 0.312877 0.634451 +0.552595 0.328017 0.630114 +0.548577 0.343179 0.625533 +0.544340 0.358362 0.620701 +0.539879 0.373564 0.615614 +0.535188 0.388781 0.610265 +0.530261 0.404012 0.604647 +0.525093 0.419252 0.598753 +0.519677 0.434496 0.592578 +0.514008 0.449741 0.586114 +0.508079 0.464980 0.579353 +0.501884 0.480207 0.572288 +0.495416 0.495416 0.564913 +0.480207 0.501884 0.572288 +0.464980 0.508079 0.579353 +0.449741 0.514008 0.586114 +0.434496 0.519677 0.592578 +0.419252 0.525093 0.598753 +0.404012 0.530261 0.604647 +0.388781 0.535188 0.610265 +0.373564 0.539879 0.615614 +0.358362 0.544340 0.620701 +0.343179 0.548577 0.625533 +0.328017 0.552595 0.630114 +0.312877 0.556399 0.634451 +0.297761 0.559993 0.638550 +0.282670 0.563383 0.642415 +0.267604 0.566573 0.646052 +0.252563 0.569566 0.649466 +0.237549 0.572368 0.652660 +0.222560 0.574981 0.655640 +0.207596 0.577409 0.658409 +0.192655 0.579656 0.660971 +0.177739 0.581724 0.663329 +0.162844 0.583617 0.665487 +0.147970 0.585336 0.667448 +0.133115 0.586885 0.669214 +0.118278 0.588264 0.670787 +0.103457 0.589478 0.672170 +0.088650 0.590525 0.673365 +0.073856 0.591410 0.674374 +0.059072 0.592132 0.675197 +0.044297 0.592692 0.675836 +0.029528 0.593092 0.676292 +0.014763 0.593331 0.676565 +0.000000 0.593411 0.676656 +0.608031 0.000000 0.663550 +0.607953 0.014477 0.663464 +0.607716 0.028956 0.663206 +0.607322 0.043441 0.662776 +0.606770 0.057933 0.662173 +0.606059 0.072435 0.661397 +0.605187 0.086949 0.660446 +0.604154 0.101479 0.659318 +0.602957 0.116025 0.658013 +0.601596 0.130591 0.656527 +0.600068 0.145179 0.654860 +0.598371 0.159790 0.653008 +0.596503 0.174426 0.650968 +0.594460 0.189090 0.648739 +0.592240 0.203783 0.646316 +0.589839 0.218506 0.643696 +0.587255 0.233260 0.640876 +0.584482 0.248047 0.637851 +0.581518 0.262867 0.634616 +0.578359 0.277720 0.631168 +0.574998 0.292608 0.627501 +0.571433 0.307530 0.623610 +0.567658 0.322486 0.619490 +0.563667 0.337474 0.615135 +0.559455 0.352495 0.610538 +0.555017 0.367545 0.605695 +0.550347 0.382623 0.600598 +0.545437 0.397727 0.595241 +0.540283 0.412853 0.589615 +0.534877 0.427998 0.583716 +0.529212 0.443157 0.577534 +0.523282 0.458326 0.571063 +0.517080 0.473499 0.564294 +0.510598 0.488668 0.557219 +0.503828 0.503828 0.549832 +0.488668 0.510598 0.557219 +0.473499 0.517080 0.564294 +0.458326 0.523282 0.571063 +0.443157 0.529212 0.577534 +0.427998 0.534877 0.583716 +0.412853 0.540283 0.589615 +0.397727 0.545437 0.595241 +0.382623 0.550347 0.600598 +0.367545 0.555017 0.605695 +0.352495 0.559455 0.610538 +0.337474 0.563667 0.615135 +0.322486 0.567658 0.619490 +0.307530 0.571433 0.623610 +0.292608 0.574998 0.627501 +0.277720 0.578359 0.631168 +0.262867 0.581518 0.634616 +0.248047 0.584482 0.637851 +0.233260 0.587255 0.640876 +0.218506 0.589839 0.643696 +0.203783 0.592240 0.646316 +0.189090 0.594460 0.648739 +0.174426 0.596503 0.650968 +0.159790 0.598371 0.653008 +0.145179 0.600068 0.654860 +0.130591 0.601596 0.656527 +0.116025 0.602957 0.658013 +0.101479 0.604154 0.659318 +0.086949 0.605187 0.660446 +0.072435 0.606059 0.661397 +0.057933 0.606770 0.662173 +0.043441 0.607322 0.662776 +0.028956 0.607716 0.663206 +0.014477 0.607953 0.663464 +0.000000 0.608031 0.663550 +0.622362 0.000000 0.650128 +0.622284 0.014184 0.650047 +0.622052 0.028371 0.649804 +0.621665 0.042564 0.649400 +0.621123 0.056766 0.648833 +0.620423 0.070979 0.648103 +0.619566 0.085206 0.647207 +0.618550 0.099451 0.646146 +0.617374 0.113716 0.644917 +0.616035 0.128004 0.643518 +0.614531 0.142316 0.641948 +0.612861 0.156657 0.640203 +0.611021 0.171027 0.638281 +0.609009 0.185429 0.636179 +0.606821 0.199866 0.633894 +0.604455 0.214339 0.631422 +0.601906 0.228849 0.628759 +0.599170 0.243400 0.625901 +0.596243 0.257990 0.622844 +0.593122 0.272623 0.619583 +0.589800 0.287298 0.616113 +0.586273 0.302017 0.612429 +0.582536 0.316778 0.608525 +0.578583 0.331583 0.604396 +0.574408 0.346430 0.600035 +0.570005 0.361319 0.595435 +0.565368 0.376248 0.590591 +0.560489 0.391215 0.585494 +0.555362 0.406217 0.580139 +0.549980 0.421253 0.574516 +0.544334 0.436317 0.568619 +0.538419 0.451405 0.562440 +0.532225 0.466514 0.555969 +0.525744 0.481635 0.549200 +0.518969 0.496764 0.542122 +0.511891 0.511891 0.534729 +0.496764 0.518969 0.542122 +0.481635 0.525744 0.549200 +0.466514 0.532225 0.555969 +0.451405 0.538419 0.562440 +0.436317 0.544334 0.568619 +0.421253 0.549980 0.574516 +0.406217 0.555362 0.580139 +0.391215 0.560489 0.585494 +0.376248 0.565368 0.590591 +0.361319 0.570005 0.595435 +0.346430 0.574408 0.600035 +0.331583 0.578583 0.604396 +0.316778 0.582536 0.608525 +0.302017 0.586273 0.612429 +0.287298 0.589800 0.616113 +0.272623 0.593122 0.619583 +0.257990 0.596243 0.622844 +0.243400 0.599170 0.625901 +0.228849 0.601906 0.628759 +0.214339 0.604455 0.631422 +0.199866 0.606821 0.633894 +0.185429 0.609009 0.636179 +0.171027 0.611021 0.638281 +0.156657 0.612861 0.640203 +0.142316 0.614531 0.641948 +0.128004 0.616035 0.643518 +0.113716 0.617374 0.644917 +0.099451 0.618550 0.646146 +0.085206 0.619566 0.647207 +0.070979 0.620423 0.648103 +0.056766 0.621123 0.648833 +0.042564 0.621665 0.649400 +0.028371 0.622052 0.649804 +0.014184 0.622284 0.650047 +0.000000 0.622362 0.650128 +0.636396 0.000000 0.636396 +0.636320 0.013885 0.636320 +0.636093 0.027772 0.636093 +0.635714 0.041667 0.635714 +0.635182 0.055571 0.635182 +0.634496 0.069489 0.634496 +0.633656 0.083422 0.633656 +0.632660 0.097376 0.632660 +0.631506 0.111352 0.631506 +0.630193 0.125353 0.630193 +0.628718 0.139383 0.628718 +0.627078 0.153445 0.627078 +0.625272 0.167541 0.625272 +0.623295 0.181674 0.623295 +0.621146 0.195847 0.621146 +0.618819 0.210061 0.618819 +0.616312 0.224319 0.616312 +0.613620 0.238624 0.613620 +0.610739 0.252976 0.610739 +0.607663 0.267378 0.607663 +0.604389 0.281831 0.604389 +0.600910 0.296336 0.600910 +0.597221 0.310893 0.597221 +0.593316 0.325504 0.593316 +0.589188 0.340168 0.589188 +0.584832 0.354885 0.584832 +0.580240 0.369653 0.580240 +0.575404 0.384473 0.575404 +0.570319 0.399341 0.570319 +0.564974 0.414256 0.564974 +0.559363 0.429215 0.559363 +0.553478 0.444213 0.553478 +0.547308 0.459246 0.547308 +0.540847 0.474310 0.540847 +0.534083 0.489397 0.534083 +0.527009 0.504502 0.527009 +0.519615 0.519615 0.519615 +0.504502 0.527009 0.527009 +0.489397 0.534083 0.534083 +0.474310 0.540847 0.540847 +0.459246 0.547308 0.547308 +0.444213 0.553478 0.553478 +0.429215 0.559363 0.559363 +0.414256 0.564974 0.564974 +0.399341 0.570319 0.570319 +0.384473 0.575404 0.575404 +0.369653 0.580240 0.580240 +0.354885 0.584832 0.584832 +0.340168 0.589188 0.589188 +0.325504 0.593316 0.593316 +0.310893 0.597221 0.597221 +0.296336 0.600910 0.600910 +0.281831 0.604389 0.604389 +0.267378 0.607663 0.607663 +0.252976 0.610739 0.610739 +0.238624 0.613620 0.613620 +0.224319 0.616312 0.616312 +0.210061 0.618819 0.618819 +0.195847 0.621146 0.621146 +0.181674 0.623295 0.623295 +0.167541 0.625272 0.625272 +0.153445 0.627078 0.627078 +0.139383 0.628718 0.628718 +0.125353 0.630193 0.630193 +0.111352 0.631506 0.631506 +0.097376 0.632660 0.632660 +0.083422 0.633656 0.633656 +0.069489 0.634496 0.634496 +0.055571 0.635182 0.635182 +0.041667 0.635714 0.635714 +0.027772 0.636093 0.636093 +0.013885 0.636320 0.636320 +0.000000 0.636396 0.636396 +0.650128 0.000000 0.622362 +0.650047 0.014184 0.622284 +0.649804 0.028371 0.622052 +0.649400 0.042564 0.621665 +0.648833 0.056766 0.621123 +0.648103 0.070979 0.620423 +0.647207 0.085206 0.619566 +0.646146 0.099451 0.618550 +0.644917 0.113716 0.617374 +0.643518 0.128004 0.616035 +0.641948 0.142316 0.614531 +0.640203 0.156657 0.612861 +0.638281 0.171027 0.611021 +0.636179 0.185429 0.609009 +0.633894 0.199866 0.606821 +0.631422 0.214339 0.604455 +0.628759 0.228849 0.601906 +0.625901 0.243400 0.599170 +0.622844 0.257990 0.596243 +0.619583 0.272623 0.593122 +0.616113 0.287298 0.589800 +0.612429 0.302017 0.586273 +0.608525 0.316778 0.582536 +0.604396 0.331583 0.578583 +0.600035 0.346430 0.574408 +0.595435 0.361319 0.570005 +0.590591 0.376248 0.565368 +0.585494 0.391215 0.560489 +0.580139 0.406217 0.555362 +0.574516 0.421253 0.549980 +0.568619 0.436317 0.544334 +0.562440 0.451405 0.538419 +0.555969 0.466514 0.532225 +0.549200 0.481635 0.525744 +0.542122 0.496764 0.518969 +0.534729 0.511891 0.511891 +0.527009 0.527009 0.504502 +0.511891 0.534729 0.511891 +0.496764 0.542122 0.518969 +0.481635 0.549200 0.525744 +0.466514 0.555969 0.532225 +0.451405 0.562440 0.538419 +0.436317 0.568619 0.544334 +0.421253 0.574516 0.549980 +0.406217 0.580139 0.555362 +0.391215 0.585494 0.560489 +0.376248 0.590591 0.565368 +0.361319 0.595435 0.570005 +0.346430 0.600035 0.574408 +0.331583 0.604396 0.578583 +0.316778 0.608525 0.582536 +0.302017 0.612429 0.586273 +0.287298 0.616113 0.589800 +0.272623 0.619583 0.593122 +0.257990 0.622844 0.596243 +0.243400 0.625901 0.599170 +0.228849 0.628759 0.601906 +0.214339 0.631422 0.604455 +0.199866 0.633894 0.606821 +0.185429 0.636179 0.609009 +0.171027 0.638281 0.611021 +0.156657 0.640203 0.612861 +0.142316 0.641948 0.614531 +0.128004 0.643518 0.616035 +0.113716 0.644917 0.617374 +0.099451 0.646146 0.618550 +0.085206 0.647207 0.619566 +0.070979 0.648103 0.620423 +0.056766 0.648833 0.621123 +0.042564 0.649400 0.621665 +0.028371 0.649804 0.622052 +0.014184 0.650047 0.622284 +0.000000 0.650128 0.622362 +0.663550 0.000000 0.608031 +0.663464 0.014477 0.607953 +0.663206 0.028956 0.607716 +0.662776 0.043441 0.607322 +0.662173 0.057933 0.606770 +0.661397 0.072435 0.606059 +0.660446 0.086949 0.605187 +0.659318 0.101479 0.604154 +0.658013 0.116025 0.602957 +0.656527 0.130591 0.601596 +0.654860 0.145179 0.600068 +0.653008 0.159790 0.598371 +0.650968 0.174426 0.596503 +0.648739 0.189090 0.594460 +0.646316 0.203783 0.592240 +0.643696 0.218506 0.589839 +0.640876 0.233260 0.587255 +0.637851 0.248047 0.584482 +0.634616 0.262867 0.581518 +0.631168 0.277720 0.578359 +0.627501 0.292608 0.574998 +0.623610 0.307530 0.571433 +0.619490 0.322486 0.567658 +0.615135 0.337474 0.563667 +0.610538 0.352495 0.559455 +0.605695 0.367545 0.555017 +0.600598 0.382623 0.550347 +0.595241 0.397727 0.545437 +0.589615 0.412853 0.540283 +0.583716 0.427998 0.534877 +0.577534 0.443157 0.529212 +0.571063 0.458326 0.523282 +0.564294 0.473499 0.517080 +0.557219 0.488668 0.510598 +0.549832 0.503828 0.503828 +0.542122 0.518969 0.496764 +0.534083 0.534083 0.489397 +0.518969 0.542122 0.496764 +0.503828 0.549832 0.503828 +0.488668 0.557219 0.510598 +0.473499 0.564294 0.517080 +0.458326 0.571063 0.523282 +0.443157 0.577534 0.529212 +0.427998 0.583716 0.534877 +0.412853 0.589615 0.540283 +0.397727 0.595241 0.545437 +0.382623 0.600598 0.550347 +0.367545 0.605695 0.555017 +0.352495 0.610538 0.559455 +0.337474 0.615135 0.563667 +0.322486 0.619490 0.567658 +0.307530 0.623610 0.571433 +0.292608 0.627501 0.574998 +0.277720 0.631168 0.578359 +0.262867 0.634616 0.581518 +0.248047 0.637851 0.584482 +0.233260 0.640876 0.587255 +0.218506 0.643696 0.589839 +0.203783 0.646316 0.592240 +0.189090 0.648739 0.594460 +0.174426 0.650968 0.596503 +0.159790 0.653008 0.598371 +0.145179 0.654860 0.600068 +0.130591 0.656527 0.601596 +0.116025 0.658013 0.602957 +0.101479 0.659318 0.604154 +0.086949 0.660446 0.605187 +0.072435 0.661397 0.606059 +0.057933 0.662173 0.606770 +0.043441 0.662776 0.607322 +0.028956 0.663206 0.607716 +0.014477 0.663464 0.607953 +0.000000 0.663550 0.608031 +0.676656 0.000000 0.593411 +0.676565 0.014763 0.593331 +0.676292 0.029528 0.593092 +0.675836 0.044297 0.592692 +0.675197 0.059072 0.592132 +0.674374 0.073856 0.591410 +0.673365 0.088650 0.590525 +0.672170 0.103457 0.589478 +0.670787 0.118278 0.588264 +0.669214 0.133115 0.586885 +0.667448 0.147970 0.585336 +0.665487 0.162844 0.583617 +0.663329 0.177739 0.581724 +0.660971 0.192655 0.579656 +0.658409 0.207596 0.577409 +0.655640 0.222560 0.574981 +0.652660 0.237549 0.572368 +0.649466 0.252563 0.569566 +0.646052 0.267604 0.566573 +0.642415 0.282670 0.563383 +0.638550 0.297761 0.559993 +0.634451 0.312877 0.556399 +0.630114 0.328017 0.552595 +0.625533 0.343179 0.548577 +0.620701 0.358362 0.544340 +0.615614 0.373564 0.539879 +0.610265 0.388781 0.535188 +0.604647 0.404012 0.530261 +0.598753 0.419252 0.525093 +0.592578 0.434496 0.519677 +0.586114 0.449741 0.514008 +0.579353 0.464980 0.508079 +0.572288 0.480207 0.501884 +0.564913 0.495416 0.495416 +0.557219 0.510598 0.488668 +0.549200 0.525744 0.481635 +0.540847 0.540847 0.474310 +0.525744 0.549200 0.481635 +0.510598 0.557219 0.488668 +0.495416 0.564913 0.495416 +0.480207 0.572288 0.501884 +0.464980 0.579353 0.508079 +0.449741 0.586114 0.514008 +0.434496 0.592578 0.519677 +0.419252 0.598753 0.525093 +0.404012 0.604647 0.530261 +0.388781 0.610265 0.535188 +0.373564 0.615614 0.539879 +0.358362 0.620701 0.544340 +0.343179 0.625533 0.548577 +0.328017 0.630114 0.552595 +0.312877 0.634451 0.556399 +0.297761 0.638550 0.559993 +0.282670 0.642415 0.563383 +0.267604 0.646052 0.566573 +0.252563 0.649466 0.569566 +0.237549 0.652660 0.572368 +0.222560 0.655640 0.574981 +0.207596 0.658409 0.577409 +0.192655 0.660971 0.579656 +0.177739 0.663329 0.581724 +0.162844 0.665487 0.583617 +0.147970 0.667448 0.585336 +0.133115 0.669214 0.586885 +0.118278 0.670787 0.588264 +0.103457 0.672170 0.589478 +0.088650 0.673365 0.590525 +0.073856 0.674374 0.591410 +0.059072 0.675197 0.592132 +0.044297 0.675836 0.592692 +0.029528 0.676292 0.593092 +0.014763 0.676565 0.593331 +0.000000 0.676656 0.593411 +0.689440 0.000000 0.578509 +0.689344 0.015042 0.578428 +0.689055 0.030085 0.578186 +0.688573 0.045131 0.577781 +0.687897 0.060183 0.577214 +0.687026 0.075242 0.576484 +0.685960 0.090308 0.575589 +0.684697 0.105385 0.574529 +0.683235 0.120473 0.573303 +0.681573 0.135573 0.571908 +0.679708 0.150688 0.570343 +0.677638 0.165817 0.568605 +0.675360 0.180962 0.566694 +0.672871 0.196124 0.564606 +0.670169 0.211303 0.562338 +0.667250 0.226501 0.559889 +0.664109 0.241716 0.557254 +0.660745 0.256950 0.554431 +0.657151 0.272201 0.551415 +0.653325 0.287470 0.548204 +0.649260 0.302755 0.544794 +0.644953 0.318056 0.541180 +0.640399 0.333370 0.537358 +0.635591 0.348697 0.533324 +0.630525 0.364034 0.529073 +0.625194 0.379377 0.524600 +0.619593 0.394725 0.519901 +0.613716 0.410072 0.514969 +0.607557 0.425416 0.509800 +0.601108 0.440750 0.504389 +0.594363 0.456071 0.498730 +0.587316 0.471371 0.492817 +0.579960 0.486645 0.486645 +0.572288 0.501884 0.480207 +0.564294 0.517080 0.473499 +0.555969 0.532225 0.466514 +0.547308 0.547308 0.459246 +0.532225 0.555969 0.466514 +0.517080 0.564294 0.473499 +0.501884 0.572288 0.480207 +0.486645 0.579960 0.486645 +0.471371 0.587316 0.492817 +0.456071 0.594363 0.498730 +0.440750 0.601108 0.504389 +0.425416 0.607557 0.509800 +0.410072 0.613716 0.514969 +0.394725 0.619593 0.519901 +0.379377 0.625194 0.524600 +0.364034 0.630525 0.529073 +0.348697 0.635591 0.533324 +0.333370 0.640399 0.537358 +0.318056 0.644953 0.541180 +0.302755 0.649260 0.544794 +0.287470 0.653325 0.548204 +0.272201 0.657151 0.551415 +0.256950 0.660745 0.554431 +0.241716 0.664109 0.557254 +0.226501 0.667250 0.559889 +0.211303 0.670169 0.562338 +0.196124 0.672871 0.564606 +0.180962 0.675360 0.566694 +0.165817 0.677638 0.568605 +0.150688 0.679708 0.570343 +0.135573 0.681573 0.571908 +0.120473 0.683235 0.573303 +0.105385 0.684697 0.574529 +0.090308 0.685960 0.575589 +0.075242 0.687026 0.576484 +0.060183 0.687897 0.577214 +0.045131 0.688573 0.577781 +0.030085 0.689055 0.578186 +0.015042 0.689344 0.578428 +0.000000 0.689440 0.578509 +0.701896 0.000000 0.563331 +0.701794 0.015313 0.563250 +0.701489 0.030628 0.563005 +0.700981 0.045945 0.562597 +0.700268 0.061266 0.562024 +0.699350 0.076591 0.561288 +0.698225 0.091923 0.560385 +0.696893 0.107262 0.559316 +0.695352 0.122609 0.558079 +0.693600 0.137966 0.556673 +0.691635 0.153332 0.555095 +0.689454 0.168708 0.553345 +0.687055 0.184096 0.551420 +0.684436 0.199495 0.549318 +0.681592 0.214905 0.547036 +0.678522 0.230327 0.544571 +0.675221 0.245760 0.541922 +0.671685 0.261204 0.539084 +0.667911 0.276658 0.536055 +0.663895 0.292121 0.532832 +0.659631 0.307591 0.529410 +0.655116 0.323067 0.525786 +0.650344 0.338548 0.521956 +0.645311 0.354029 0.517916 +0.640010 0.369510 0.513663 +0.634438 0.384986 0.509190 +0.628587 0.400454 0.504494 +0.622453 0.415910 0.499571 +0.616029 0.431348 0.494416 +0.609310 0.446764 0.489023 +0.602289 0.462152 0.483388 +0.594960 0.477506 0.477506 +0.587316 0.492817 0.471371 +0.579353 0.508079 0.464980 +0.571063 0.523282 0.458326 +0.562440 0.538419 0.451405 +0.553478 0.553478 0.444213 +0.538419 0.562440 0.451405 +0.523282 0.571063 0.458326 +0.508079 0.579353 0.464980 +0.492817 0.587316 0.471371 +0.477506 0.594960 0.477506 +0.462152 0.602289 0.483388 +0.446764 0.609310 0.489023 +0.431348 0.616029 0.494416 +0.415910 0.622453 0.499571 +0.400454 0.628587 0.504494 +0.384986 0.634438 0.509190 +0.369510 0.640010 0.513663 +0.354029 0.645311 0.517916 +0.338548 0.650344 0.521956 +0.323067 0.655116 0.525786 +0.307591 0.659631 0.529410 +0.292121 0.663895 0.532832 +0.276658 0.667911 0.536055 +0.261204 0.671685 0.539084 +0.245760 0.675221 0.541922 +0.230327 0.678522 0.544571 +0.214905 0.681592 0.547036 +0.199495 0.684436 0.549318 +0.184096 0.687055 0.551420 +0.168708 0.689454 0.553345 +0.153332 0.691635 0.555095 +0.137966 0.693600 0.556673 +0.122609 0.695352 0.558079 +0.107262 0.696893 0.559316 +0.091923 0.698225 0.560385 +0.076591 0.699350 0.561288 +0.061266 0.700268 0.562024 +0.045945 0.700981 0.562597 +0.030628 0.701489 0.563005 +0.015313 0.701794 0.563250 +0.000000 0.701896 0.563331 +0.714018 0.000000 0.547885 +0.713911 0.015578 0.547803 +0.713590 0.031156 0.547557 +0.713055 0.046736 0.547146 +0.712304 0.062319 0.546570 +0.711338 0.077904 0.545829 +0.710155 0.093494 0.544921 +0.708754 0.109088 0.543846 +0.707133 0.124687 0.542602 +0.705290 0.140291 0.541188 +0.703224 0.155901 0.539603 +0.700932 0.171517 0.537844 +0.698412 0.187139 0.535910 +0.695661 0.202767 0.533799 +0.692676 0.218400 0.531509 +0.689454 0.234038 0.529037 +0.685991 0.249680 0.526380 +0.682285 0.265326 0.523536 +0.678330 0.280974 0.520501 +0.674124 0.296622 0.517274 +0.669662 0.312268 0.513850 +0.664939 0.327912 0.510226 +0.659951 0.343549 0.506398 +0.654693 0.359177 0.502364 +0.649160 0.374793 0.498118 +0.643347 0.390393 0.493658 +0.637249 0.405972 0.488978 +0.630860 0.421527 0.484076 +0.624176 0.437052 0.478947 +0.617189 0.452542 0.473586 +0.609895 0.467989 0.467989 +0.602289 0.483388 0.462152 +0.594363 0.498730 0.456071 +0.586114 0.514008 0.449741 +0.577534 0.529212 0.443157 +0.568619 0.544334 0.436317 +0.559363 0.559363 0.429215 +0.544334 0.568619 0.436317 +0.529212 0.577534 0.443157 +0.514008 0.586114 0.449741 +0.498730 0.594363 0.456071 +0.483388 0.602289 0.462152 +0.467989 0.609895 0.467989 +0.452542 0.617189 0.473586 +0.437052 0.624176 0.478947 +0.421527 0.630860 0.484076 +0.405972 0.637249 0.488978 +0.390393 0.643347 0.493658 +0.374793 0.649160 0.498118 +0.359177 0.654693 0.502364 +0.343549 0.659951 0.506398 +0.327912 0.664939 0.510226 +0.312268 0.669662 0.513850 +0.296622 0.674124 0.517274 +0.280974 0.678330 0.520501 +0.265326 0.682285 0.523536 +0.249680 0.685991 0.526380 +0.234038 0.689454 0.529037 +0.218400 0.692676 0.531509 +0.202767 0.695661 0.533799 +0.187139 0.698412 0.535910 +0.171517 0.700932 0.537844 +0.155901 0.703224 0.539603 +0.140291 0.705290 0.541188 +0.124687 0.707133 0.542602 +0.109088 0.708754 0.543846 +0.093494 0.710155 0.544921 +0.077904 0.711338 0.545829 +0.062319 0.712304 0.546570 +0.046736 0.713055 0.547146 +0.031156 0.713590 0.547557 +0.015578 0.713911 0.547803 +0.000000 0.714018 0.547885 +0.725800 0.000000 0.532179 +0.725688 0.015835 0.532096 +0.725351 0.031669 0.531849 +0.724788 0.047505 0.531437 +0.724000 0.063342 0.530859 +0.722986 0.079180 0.530115 +0.721744 0.095019 0.529204 +0.720273 0.110861 0.528126 +0.718572 0.126704 0.526879 +0.716638 0.142548 0.525461 +0.714471 0.158394 0.523872 +0.712068 0.174242 0.522110 +0.709426 0.190090 0.520173 +0.706544 0.205939 0.518059 +0.703417 0.221787 0.515767 +0.700043 0.237633 0.513293 +0.696420 0.253476 0.510636 +0.692543 0.269315 0.507793 +0.688408 0.285148 0.504762 +0.684013 0.300973 0.501539 +0.679353 0.316787 0.498122 +0.674423 0.332589 0.494508 +0.669220 0.348374 0.490693 +0.663740 0.364140 0.486674 +0.657976 0.379883 0.482448 +0.651926 0.395598 0.478012 +0.645583 0.411282 0.473361 +0.638943 0.426928 0.468492 +0.632000 0.442531 0.463402 +0.624751 0.458086 0.458086 +0.617189 0.473586 0.452542 +0.609310 0.489023 0.446764 +0.601108 0.504389 0.440750 +0.592578 0.519677 0.434496 +0.583716 0.534877 0.427998 +0.574516 0.549980 0.421253 +0.564974 0.564974 0.414256 +0.549980 0.574516 0.421253 +0.534877 0.583716 0.427998 +0.519677 0.592578 0.434496 +0.504389 0.601108 0.440750 +0.489023 0.609310 0.446764 +0.473586 0.617189 0.452542 +0.458086 0.624751 0.458086 +0.442531 0.632000 0.463402 +0.426928 0.638943 0.468492 +0.411282 0.645583 0.473361 +0.395598 0.651926 0.478012 +0.379883 0.657976 0.482448 +0.364140 0.663740 0.486674 +0.348374 0.669220 0.490693 +0.332589 0.674423 0.494508 +0.316787 0.679353 0.498122 +0.300973 0.684013 0.501539 +0.285148 0.688408 0.504762 +0.269315 0.692543 0.507793 +0.253476 0.696420 0.510636 +0.237633 0.700043 0.513293 +0.221787 0.703417 0.515767 +0.205939 0.706544 0.518059 +0.190090 0.709426 0.520173 +0.174242 0.712068 0.522110 +0.158394 0.714471 0.523872 +0.142548 0.716638 0.525461 +0.126704 0.718572 0.526879 +0.110861 0.720273 0.528126 +0.095019 0.721744 0.529204 +0.079180 0.722986 0.530115 +0.063342 0.724000 0.530859 +0.047505 0.724788 0.531437 +0.031669 0.725351 0.531849 +0.015835 0.725688 0.532096 +0.000000 0.725800 0.532179 +0.737237 0.000000 0.516219 +0.737119 0.016084 0.516136 +0.736766 0.032168 0.515889 +0.736177 0.048252 0.515476 +0.735351 0.064335 0.514898 +0.734288 0.080418 0.514154 +0.732987 0.096500 0.513243 +0.731446 0.112580 0.512164 +0.729665 0.128660 0.510917 +0.727641 0.144737 0.509500 +0.725373 0.160811 0.507911 +0.722858 0.176882 0.506151 +0.720095 0.192949 0.504216 +0.717081 0.209010 0.502105 +0.713813 0.225064 0.499817 +0.710288 0.241110 0.497349 +0.706504 0.257146 0.494700 +0.702457 0.273171 0.491866 +0.698144 0.289181 0.488845 +0.693561 0.305174 0.485636 +0.688704 0.321148 0.482236 +0.683570 0.337099 0.478641 +0.678154 0.353025 0.474848 +0.672452 0.368920 0.470856 +0.666461 0.384782 0.466661 +0.660176 0.400604 0.462260 +0.653591 0.416384 0.457650 +0.646704 0.432114 0.452827 +0.639508 0.447789 0.447789 +0.632000 0.463402 0.442531 +0.624176 0.478947 0.437052 +0.616029 0.494416 0.431348 +0.607557 0.509800 0.425416 +0.598753 0.525093 0.419252 +0.589615 0.540283 0.412853 +0.580139 0.555362 0.406217 +0.570319 0.570319 0.399341 +0.555362 0.580139 0.406217 +0.540283 0.589615 0.412853 +0.525093 0.598753 0.419252 +0.509800 0.607557 0.425416 +0.494416 0.616029 0.431348 +0.478947 0.624176 0.437052 +0.463402 0.632000 0.442531 +0.447789 0.639508 0.447789 +0.432114 0.646704 0.452827 +0.416384 0.653591 0.457650 +0.400604 0.660176 0.462260 +0.384782 0.666461 0.466661 +0.368920 0.672452 0.470856 +0.353025 0.678154 0.474848 +0.337099 0.683570 0.478641 +0.321148 0.688704 0.482236 +0.305174 0.693561 0.485636 +0.289181 0.698144 0.488845 +0.273171 0.702457 0.491866 +0.257146 0.706504 0.494700 +0.241110 0.710288 0.497349 +0.225064 0.713813 0.499817 +0.209010 0.717081 0.502105 +0.192949 0.720095 0.504216 +0.176882 0.722858 0.506151 +0.160811 0.725373 0.507911 +0.144737 0.727641 0.509500 +0.128660 0.729665 0.510917 +0.112580 0.731446 0.512164 +0.096500 0.732987 0.513243 +0.080418 0.734288 0.514154 +0.064335 0.735351 0.514898 +0.048252 0.736177 0.515476 +0.032168 0.736766 0.515889 +0.016084 0.737119 0.516136 +0.000000 0.737237 0.516219 +0.748323 0.000000 0.500013 +0.748200 0.016326 0.499931 +0.747830 0.032651 0.499684 +0.747214 0.048975 0.499272 +0.746351 0.065297 0.498695 +0.745239 0.081617 0.497953 +0.743879 0.097934 0.497044 +0.742269 0.114246 0.495968 +0.740408 0.130554 0.494725 +0.738293 0.146856 0.493312 +0.735924 0.163150 0.491729 +0.733299 0.179437 0.489975 +0.730415 0.195714 0.488048 +0.727270 0.211980 0.485946 +0.723861 0.228232 0.483668 +0.720186 0.244470 0.481213 +0.716243 0.260691 0.478578 +0.712027 0.276892 0.475761 +0.707536 0.293071 0.472760 +0.702767 0.309225 0.469574 +0.697715 0.325350 0.466198 +0.692378 0.341443 0.462632 +0.686752 0.357501 0.458873 +0.680833 0.373518 0.454918 +0.674617 0.389490 0.450765 +0.668100 0.405413 0.446410 +0.661278 0.421281 0.441852 +0.654148 0.437087 0.437087 +0.646704 0.452827 0.432114 +0.638943 0.468492 0.426928 +0.630860 0.484076 0.421527 +0.622453 0.499571 0.415910 +0.613716 0.514969 0.410072 +0.604647 0.530261 0.404012 +0.595241 0.545437 0.397727 +0.585494 0.560489 0.391215 +0.575404 0.575404 0.384473 +0.560489 0.585494 0.391215 +0.545437 0.595241 0.397727 +0.530261 0.604647 0.404012 +0.514969 0.613716 0.410072 +0.499571 0.622453 0.415910 +0.484076 0.630860 0.421527 +0.468492 0.638943 0.426928 +0.452827 0.646704 0.432114 +0.437087 0.654148 0.437087 +0.421281 0.661278 0.441852 +0.405413 0.668100 0.446410 +0.389490 0.674617 0.450765 +0.373518 0.680833 0.454918 +0.357501 0.686752 0.458873 +0.341443 0.692378 0.462632 +0.325350 0.697715 0.466198 +0.309225 0.702767 0.469574 +0.293071 0.707536 0.472760 +0.276892 0.712027 0.475761 +0.260691 0.716243 0.478578 +0.244470 0.720186 0.481213 +0.228232 0.723861 0.483668 +0.211980 0.727270 0.485946 +0.195714 0.730415 0.488048 +0.179437 0.733299 0.489975 +0.163150 0.735924 0.491729 +0.146856 0.738293 0.493312 +0.130554 0.740408 0.494725 +0.114246 0.742269 0.495968 +0.097934 0.743879 0.497044 +0.081617 0.745239 0.497953 +0.065297 0.746351 0.498695 +0.048975 0.747214 0.499272 +0.032651 0.747830 0.499684 +0.016326 0.748200 0.499931 +0.000000 0.748323 0.500013 +0.759052 0.000000 0.483570 +0.758924 0.016560 0.483488 +0.758538 0.033118 0.483242 +0.757895 0.049675 0.482833 +0.756994 0.066228 0.482259 +0.755835 0.082777 0.481520 +0.754416 0.099321 0.480616 +0.752737 0.115857 0.479546 +0.750796 0.132386 0.478310 +0.748591 0.148904 0.476905 +0.746122 0.165411 0.475332 +0.743386 0.181906 0.473589 +0.740382 0.198385 0.471675 +0.737107 0.214847 0.469589 +0.733559 0.231290 0.467329 +0.729735 0.247712 0.464893 +0.725634 0.264109 0.462280 +0.721251 0.280479 0.459487 +0.716584 0.296819 0.456515 +0.711631 0.313125 0.453359 +0.706387 0.329394 0.450018 +0.700851 0.345621 0.446491 +0.695017 0.361803 0.442775 +0.688884 0.377935 0.438867 +0.682447 0.394011 0.434767 +0.675703 0.410026 0.430470 +0.668648 0.425976 0.425976 +0.661278 0.441852 0.421281 +0.653591 0.457650 0.416384 +0.645583 0.473361 0.411282 +0.637249 0.488978 0.405972 +0.628587 0.504494 0.400454 +0.619593 0.519901 0.394725 +0.610265 0.535188 0.388781 +0.600598 0.550347 0.382623 +0.590591 0.565368 0.376248 +0.580240 0.580240 0.369653 +0.565368 0.590591 0.376248 +0.550347 0.600598 0.382623 +0.535188 0.610265 0.388781 +0.519901 0.619593 0.394725 +0.504494 0.628587 0.400454 +0.488978 0.637249 0.405972 +0.473361 0.645583 0.411282 +0.457650 0.653591 0.416384 +0.441852 0.661278 0.421281 +0.425976 0.668648 0.425976 +0.410026 0.675703 0.430470 +0.394011 0.682447 0.434767 +0.377935 0.688884 0.438867 +0.361803 0.695017 0.442775 +0.345621 0.700851 0.446491 +0.329394 0.706387 0.450018 +0.313125 0.711631 0.453359 +0.296819 0.716584 0.456515 +0.280479 0.721251 0.459487 +0.264109 0.725634 0.462280 +0.247712 0.729735 0.464893 +0.231290 0.733559 0.467329 +0.214847 0.737107 0.469589 +0.198385 0.740382 0.471675 +0.181906 0.743386 0.473589 +0.165411 0.746122 0.475332 +0.148904 0.748591 0.476905 +0.132386 0.750796 0.478310 +0.115857 0.752737 0.479546 +0.099321 0.754416 0.480616 +0.082777 0.755835 0.481520 +0.066228 0.756994 0.482259 +0.049675 0.757895 0.482833 +0.033118 0.758538 0.483242 +0.016560 0.758924 0.483488 +0.000000 0.759052 0.483570 +0.769421 0.000000 0.466896 +0.769287 0.016786 0.466815 +0.768885 0.033570 0.466571 +0.768216 0.050352 0.466165 +0.767277 0.067128 0.465595 +0.766070 0.083898 0.464863 +0.764593 0.100661 0.463966 +0.762845 0.117413 0.462906 +0.760825 0.134154 0.461680 +0.758531 0.150881 0.460288 +0.755963 0.167593 0.458730 +0.753118 0.184287 0.457003 +0.749995 0.200960 0.455108 +0.746591 0.217611 0.453042 +0.742905 0.234237 0.450806 +0.738934 0.250834 0.448396 +0.734676 0.267400 0.445812 +0.730128 0.283931 0.443053 +0.725288 0.300424 0.440116 +0.720154 0.316875 0.437000 +0.714721 0.333280 0.433703 +0.708987 0.349634 0.430224 +0.702950 0.365933 0.426561 +0.696606 0.382171 0.422711 +0.689952 0.398344 0.418673 +0.682986 0.414446 0.414446 +0.675703 0.430470 0.410026 +0.668100 0.446410 0.405413 +0.660176 0.462260 0.400604 +0.651926 0.478012 0.395598 +0.643347 0.493658 0.390393 +0.634438 0.509190 0.384986 +0.625194 0.524600 0.379377 +0.615614 0.539879 0.373564 +0.605695 0.555017 0.367545 +0.595435 0.570005 0.361319 +0.584832 0.584832 0.354885 +0.570005 0.595435 0.361319 +0.555017 0.605695 0.367545 +0.539879 0.615614 0.373564 +0.524600 0.625194 0.379377 +0.509190 0.634438 0.384986 +0.493658 0.643347 0.390393 +0.478012 0.651926 0.395598 +0.462260 0.660176 0.400604 +0.446410 0.668100 0.405413 +0.430470 0.675703 0.410026 +0.414446 0.682986 0.414446 +0.398344 0.689952 0.418673 +0.382171 0.696606 0.422711 +0.365933 0.702950 0.426561 +0.349634 0.708987 0.430224 +0.333280 0.714721 0.433703 +0.316875 0.720154 0.437000 +0.300424 0.725288 0.440116 +0.283931 0.730128 0.443053 +0.267400 0.734676 0.445812 +0.250834 0.738934 0.448396 +0.234237 0.742905 0.450806 +0.217611 0.746591 0.453042 +0.200960 0.749995 0.455108 +0.184287 0.753118 0.457003 +0.167593 0.755963 0.458730 +0.150881 0.758531 0.460288 +0.134154 0.760825 0.461680 +0.117413 0.762845 0.462906 +0.100661 0.764593 0.463966 +0.083898 0.766070 0.464863 +0.067128 0.767277 0.465595 +0.050352 0.768216 0.466165 +0.033570 0.768885 0.466571 +0.016786 0.769287 0.466815 +0.000000 0.769421 0.466896 +0.779423 0.000000 0.450000 +0.779284 0.017004 0.449920 +0.778866 0.034006 0.449679 +0.778170 0.051004 0.449277 +0.777195 0.067996 0.448714 +0.775941 0.084979 0.447990 +0.774406 0.101952 0.447103 +0.772590 0.118913 0.446055 +0.770491 0.135858 0.444843 +0.768110 0.152786 0.443468 +0.765443 0.169695 0.441929 +0.762490 0.186580 0.440224 +0.759249 0.203440 0.438353 +0.755718 0.220272 0.436314 +0.751896 0.237072 0.434107 +0.747780 0.253837 0.431731 +0.743368 0.270564 0.429184 +0.738658 0.287249 0.426465 +0.733648 0.303887 0.423572 +0.728335 0.320475 0.420504 +0.722716 0.337008 0.417261 +0.716790 0.353482 0.413839 +0.710553 0.369891 0.410238 +0.704003 0.386229 0.406456 +0.697137 0.402492 0.402492 +0.689952 0.418673 0.398344 +0.682447 0.434767 0.394011 +0.674617 0.450765 0.389490 +0.666461 0.466661 0.384782 +0.657976 0.482448 0.379883 +0.649160 0.498118 0.374793 +0.640010 0.513663 0.369510 +0.630525 0.529073 0.364034 +0.620701 0.544340 0.358362 +0.610538 0.559455 0.352495 +0.600035 0.574408 0.346430 +0.589188 0.589188 0.340168 +0.574408 0.600035 0.346430 +0.559455 0.610538 0.352495 +0.544340 0.620701 0.358362 +0.529073 0.630525 0.364034 +0.513663 0.640010 0.369510 +0.498118 0.649160 0.374793 +0.482448 0.657976 0.379883 +0.466661 0.666461 0.384782 +0.450765 0.674617 0.389490 +0.434767 0.682447 0.394011 +0.418673 0.689952 0.398344 +0.402492 0.697137 0.402492 +0.386229 0.704003 0.406456 +0.369891 0.710553 0.410238 +0.353482 0.716790 0.413839 +0.337008 0.722716 0.417261 +0.320475 0.728335 0.420504 +0.303887 0.733648 0.423572 +0.287249 0.738658 0.426465 +0.270564 0.743368 0.429184 +0.253837 0.747780 0.431731 +0.237072 0.751896 0.434107 +0.220272 0.755718 0.436314 +0.203440 0.759249 0.438353 +0.186580 0.762490 0.440224 +0.169695 0.765443 0.441929 +0.152786 0.768110 0.443468 +0.135858 0.770491 0.444843 +0.118913 0.772590 0.446055 +0.101952 0.774406 0.447103 +0.084979 0.775941 0.447990 +0.067996 0.777195 0.448714 +0.051004 0.778170 0.449277 +0.034006 0.778866 0.449679 +0.017004 0.779284 0.449920 +0.000000 0.779423 0.450000 +0.789054 0.000000 0.432890 +0.788910 0.017214 0.432811 +0.788477 0.034426 0.432573 +0.787755 0.051632 0.432177 +0.786743 0.068831 0.431622 +0.785442 0.086020 0.430908 +0.783850 0.103196 0.430035 +0.781967 0.120356 0.429002 +0.779791 0.137498 0.427808 +0.777322 0.154619 0.426454 +0.774559 0.171716 0.424938 +0.771500 0.188785 0.423259 +0.768143 0.205823 0.421418 +0.764488 0.222828 0.419412 +0.760531 0.239795 0.417242 +0.756273 0.256720 0.414905 +0.751710 0.273600 0.412402 +0.746841 0.290430 0.409731 +0.741663 0.307207 0.406890 +0.736175 0.323925 0.403880 +0.730375 0.340579 0.400697 +0.724260 0.357165 0.397342 +0.717827 0.373677 0.393814 +0.711076 0.390110 0.390110 +0.704003 0.406456 0.386229 +0.696606 0.422711 0.382171 +0.688884 0.438867 0.377935 +0.680833 0.454918 0.373518 +0.672452 0.470856 0.368920 +0.663740 0.486674 0.364140 +0.654693 0.502364 0.359177 +0.645311 0.517916 0.354029 +0.635591 0.533324 0.348697 +0.625533 0.548577 0.343179 +0.615135 0.563667 0.337474 +0.604396 0.578583 0.331583 +0.593316 0.593316 0.325504 +0.578583 0.604396 0.331583 +0.563667 0.615135 0.337474 +0.548577 0.625533 0.343179 +0.533324 0.635591 0.348697 +0.517916 0.645311 0.354029 +0.502364 0.654693 0.359177 +0.486674 0.663740 0.364140 +0.470856 0.672452 0.368920 +0.454918 0.680833 0.373518 +0.438867 0.688884 0.377935 +0.422711 0.696606 0.382171 +0.406456 0.704003 0.386229 +0.390110 0.711076 0.390110 +0.373677 0.717827 0.393814 +0.357165 0.724260 0.397342 +0.340579 0.730375 0.400697 +0.323925 0.736175 0.403880 +0.307207 0.741663 0.406890 +0.290430 0.746841 0.409731 +0.273600 0.751710 0.412402 +0.256720 0.756273 0.414905 +0.239795 0.760531 0.417242 +0.222828 0.764488 0.419412 +0.205823 0.768143 0.421418 +0.188785 0.771500 0.423259 +0.171716 0.774559 0.424938 +0.154619 0.777322 0.426454 +0.137498 0.779791 0.427808 +0.120356 0.781967 0.429002 +0.103196 0.783850 0.430035 +0.086020 0.785442 0.430908 +0.068831 0.786743 0.431622 +0.051632 0.787755 0.432177 +0.034426 0.788477 0.432573 +0.017214 0.788910 0.432811 +0.000000 0.789054 0.432890 +0.798310 0.000000 0.415574 +0.798160 0.017416 0.415496 +0.797712 0.034829 0.415262 +0.796964 0.052236 0.414873 +0.795917 0.069634 0.414328 +0.794569 0.087020 0.413627 +0.792922 0.104390 0.412769 +0.790972 0.121742 0.411754 +0.788721 0.139073 0.410582 +0.786167 0.156378 0.409253 +0.783308 0.173655 0.407765 +0.780145 0.190900 0.406118 +0.776674 0.208109 0.404311 +0.772896 0.225279 0.402344 +0.768809 0.242404 0.400216 +0.764410 0.259482 0.397927 +0.759699 0.276508 0.395475 +0.754674 0.293477 0.392859 +0.749333 0.310384 0.390078 +0.743675 0.327225 0.387133 +0.737697 0.343994 0.384021 +0.731397 0.360685 0.380741 +0.724775 0.377294 0.377294 +0.717827 0.393814 0.373677 +0.710553 0.410238 0.369891 +0.702950 0.426561 0.365933 +0.695017 0.442775 0.361803 +0.686752 0.458873 0.357501 +0.678154 0.474848 0.353025 +0.669220 0.490693 0.348374 +0.659951 0.506398 0.343549 +0.650344 0.521956 0.338548 +0.640399 0.537358 0.333370 +0.630114 0.552595 0.328017 +0.619490 0.567658 0.322486 +0.608525 0.582536 0.316778 +0.597221 0.597221 0.310893 +0.582536 0.608525 0.316778 +0.567658 0.619490 0.322486 +0.552595 0.630114 0.328017 +0.537358 0.640399 0.333370 +0.521956 0.650344 0.338548 +0.506398 0.659951 0.343549 +0.490693 0.669220 0.348374 +0.474848 0.678154 0.353025 +0.458873 0.686752 0.357501 +0.442775 0.695017 0.361803 +0.426561 0.702950 0.365933 +0.410238 0.710553 0.369891 +0.393814 0.717827 0.373677 +0.377294 0.724775 0.377294 +0.360685 0.731397 0.380741 +0.343994 0.737697 0.384021 +0.327225 0.743675 0.387133 +0.310384 0.749333 0.390078 +0.293477 0.754674 0.392859 +0.276508 0.759699 0.395475 +0.259482 0.764410 0.397927 +0.242404 0.768809 0.400216 +0.225279 0.772896 0.402344 +0.208109 0.776674 0.404311 +0.190900 0.780145 0.406118 +0.173655 0.783308 0.407765 +0.156378 0.786167 0.409253 +0.139073 0.788721 0.410582 +0.121742 0.790972 0.411754 +0.104390 0.792922 0.412769 +0.087020 0.794569 0.413627 +0.069634 0.795917 0.414328 +0.052236 0.796964 0.414873 +0.034829 0.797712 0.415262 +0.017416 0.798160 0.415496 +0.000000 0.798310 0.415574 +0.807185 0.000000 0.398060 +0.807031 0.017609 0.397984 +0.806567 0.035215 0.397755 +0.805794 0.052815 0.397374 +0.804712 0.070403 0.396840 +0.803320 0.087978 0.396153 +0.801617 0.105535 0.395314 +0.799603 0.123071 0.394321 +0.797277 0.140582 0.393174 +0.794639 0.158064 0.391873 +0.791688 0.175513 0.390417 +0.788422 0.192926 0.388807 +0.784841 0.210297 0.387041 +0.780943 0.227624 0.385118 +0.776727 0.244901 0.383039 +0.772192 0.262124 0.380803 +0.767337 0.279288 0.378409 +0.762159 0.296388 0.375855 +0.756659 0.313418 0.373143 +0.750834 0.330375 0.370270 +0.744683 0.347252 0.367237 +0.738205 0.364042 0.364042 +0.731397 0.380741 0.360685 +0.724260 0.397342 0.357165 +0.716790 0.413839 0.353482 +0.708987 0.430224 0.349634 +0.700851 0.446491 0.345621 +0.692378 0.462632 0.341443 +0.683570 0.478641 0.337099 +0.674423 0.494508 0.332589 +0.664939 0.510226 0.327912 +0.655116 0.525786 0.323067 +0.644953 0.541180 0.318056 +0.634451 0.556399 0.312877 +0.623610 0.571433 0.307530 +0.612429 0.586273 0.302017 +0.600910 0.600910 0.296336 +0.586273 0.612429 0.302017 +0.571433 0.623610 0.307530 +0.556399 0.634451 0.312877 +0.541180 0.644953 0.318056 +0.525786 0.655116 0.323067 +0.510226 0.664939 0.327912 +0.494508 0.674423 0.332589 +0.478641 0.683570 0.337099 +0.462632 0.692378 0.341443 +0.446491 0.700851 0.345621 +0.430224 0.708987 0.349634 +0.413839 0.716790 0.353482 +0.397342 0.724260 0.357165 +0.380741 0.731397 0.360685 +0.364042 0.738205 0.364042 +0.347252 0.744683 0.367237 +0.330375 0.750834 0.370270 +0.313418 0.756659 0.373143 +0.296388 0.762159 0.375855 +0.279288 0.767337 0.378409 +0.262124 0.772192 0.380803 +0.244901 0.776727 0.383039 +0.227624 0.780943 0.385118 +0.210297 0.784841 0.387041 +0.192926 0.788422 0.388807 +0.175513 0.791688 0.390417 +0.158064 0.794639 0.391873 +0.140582 0.797277 0.393174 +0.123071 0.799603 0.394321 +0.105535 0.801617 0.395314 +0.087978 0.803320 0.396153 +0.070403 0.804712 0.396840 +0.052815 0.805794 0.397374 +0.035215 0.806567 0.397755 +0.017609 0.807031 0.397984 +0.000000 0.807185 0.398060 +0.815677 0.000000 0.380356 +0.815518 0.017795 0.380282 +0.815039 0.035585 0.380059 +0.814242 0.053368 0.379687 +0.813125 0.071139 0.379166 +0.811688 0.088894 0.378497 +0.809932 0.106630 0.377677 +0.807855 0.124341 0.376709 +0.805457 0.142024 0.375591 +0.802737 0.159674 0.374322 +0.799695 0.177288 0.372904 +0.796329 0.194861 0.371334 +0.792639 0.212387 0.369614 +0.788625 0.229863 0.367742 +0.784284 0.247284 0.365718 +0.779616 0.264644 0.363541 +0.774620 0.281939 0.361211 +0.769296 0.299163 0.358728 +0.763640 0.316310 0.356091 +0.757654 0.333376 0.353300 +0.751335 0.350353 0.350353 +0.744683 0.367237 0.347252 +0.737697 0.384021 0.343994 +0.730375 0.400697 0.340579 +0.722716 0.417261 0.337008 +0.714721 0.433703 0.333280 +0.706387 0.450018 0.329394 +0.697715 0.466198 0.325350 +0.688704 0.482236 0.321148 +0.679353 0.498122 0.316787 +0.669662 0.513850 0.312268 +0.659631 0.529410 0.307591 +0.649260 0.544794 0.302755 +0.638550 0.559993 0.297761 +0.627501 0.574998 0.292608 +0.616113 0.589800 0.287298 +0.604389 0.604389 0.281831 +0.589800 0.616113 0.287298 +0.574998 0.627501 0.292608 +0.559993 0.638550 0.297761 +0.544794 0.649260 0.302755 +0.529410 0.659631 0.307591 +0.513850 0.669662 0.312268 +0.498122 0.679353 0.316787 +0.482236 0.688704 0.321148 +0.466198 0.697715 0.325350 +0.450018 0.706387 0.329394 +0.433703 0.714721 0.333280 +0.417261 0.722716 0.337008 +0.400697 0.730375 0.340579 +0.384021 0.737697 0.343994 +0.367237 0.744683 0.347252 +0.350353 0.751335 0.350353 +0.333376 0.757654 0.353300 +0.316310 0.763640 0.356091 +0.299163 0.769296 0.358728 +0.281939 0.774620 0.361211 +0.264644 0.779616 0.363541 +0.247284 0.784284 0.365718 +0.229863 0.788625 0.367742 +0.212387 0.792639 0.369614 +0.194861 0.796329 0.371334 +0.177288 0.799695 0.372904 +0.159674 0.802737 0.374322 +0.142024 0.805457 0.375591 +0.124341 0.807855 0.376709 +0.106630 0.809932 0.377677 +0.088894 0.811688 0.378497 +0.071139 0.813125 0.379166 +0.053368 0.814242 0.379687 +0.035585 0.815039 0.380059 +0.017795 0.815518 0.380282 +0.000000 0.815677 0.380356 +0.823780 0.000000 0.362472 +0.823616 0.017971 0.362400 +0.823123 0.035938 0.362183 +0.822302 0.053897 0.361821 +0.821152 0.071841 0.361315 +0.819672 0.089769 0.360664 +0.817864 0.107674 0.359869 +0.815725 0.125552 0.358928 +0.813257 0.143399 0.357841 +0.810457 0.161210 0.356610 +0.807327 0.178980 0.355232 +0.803864 0.196704 0.353709 +0.800069 0.214378 0.352039 +0.795941 0.231996 0.350222 +0.791479 0.249552 0.348259 +0.786682 0.267043 0.346149 +0.781551 0.284461 0.343890 +0.776082 0.301802 0.341484 +0.770277 0.319059 0.338930 +0.764135 0.336227 0.336227 +0.757654 0.353300 0.333376 +0.750834 0.370270 0.330375 +0.743675 0.387133 0.327225 +0.736175 0.403880 0.323925 +0.728335 0.420504 0.320475 +0.720154 0.437000 0.316875 +0.711631 0.453359 0.313125 +0.702767 0.469574 0.309225 +0.693561 0.485636 0.305174 +0.684013 0.501539 0.300973 +0.674124 0.517274 0.296622 +0.663895 0.532832 0.292121 +0.653325 0.548204 0.287470 +0.642415 0.563383 0.282670 +0.631168 0.578359 0.277720 +0.619583 0.593122 0.272623 +0.607663 0.607663 0.267378 +0.593122 0.619583 0.272623 +0.578359 0.631168 0.277720 +0.563383 0.642415 0.282670 +0.548204 0.653325 0.287470 +0.532832 0.663895 0.292121 +0.517274 0.674124 0.296622 +0.501539 0.684013 0.300973 +0.485636 0.693561 0.305174 +0.469574 0.702767 0.309225 +0.453359 0.711631 0.313125 +0.437000 0.720154 0.316875 +0.420504 0.728335 0.320475 +0.403880 0.736175 0.323925 +0.387133 0.743675 0.327225 +0.370270 0.750834 0.330375 +0.353300 0.757654 0.333376 +0.336227 0.764135 0.336227 +0.319059 0.770277 0.338930 +0.301802 0.776082 0.341484 +0.284461 0.781551 0.343890 +0.267043 0.786682 0.346149 +0.249552 0.791479 0.348259 +0.231996 0.795941 0.350222 +0.214378 0.800069 0.352039 +0.196704 0.803864 0.353709 +0.178980 0.807327 0.355232 +0.161210 0.810457 0.356610 +0.143399 0.813257 0.357841 +0.125552 0.815725 0.358928 +0.107674 0.817864 0.359869 +0.089769 0.819672 0.360664 +0.071841 0.821152 0.361315 +0.053897 0.822302 0.361821 +0.035938 0.823123 0.362183 +0.017971 0.823616 0.362400 +0.000000 0.823780 0.362472 +0.831492 0.000000 0.344415 +0.831323 0.018140 0.344345 +0.830816 0.036274 0.344135 +0.829971 0.054399 0.343785 +0.828789 0.072510 0.343295 +0.827268 0.090601 0.342666 +0.825408 0.108667 0.341895 +0.823210 0.126704 0.340985 +0.820673 0.144707 0.339934 +0.817797 0.162670 0.338743 +0.814581 0.180588 0.337410 +0.811025 0.198456 0.335937 +0.807128 0.216269 0.334323 +0.802890 0.234021 0.332568 +0.798311 0.251706 0.330671 +0.793390 0.269320 0.328633 +0.788126 0.286855 0.326453 +0.782520 0.304305 0.324130 +0.776571 0.321666 0.321666 +0.770277 0.338930 0.319059 +0.763640 0.356091 0.316310 +0.756659 0.373143 0.313418 +0.749333 0.390078 0.310384 +0.741663 0.406890 0.307207 +0.733648 0.423572 0.303887 +0.725288 0.440116 0.300424 +0.716584 0.456515 0.296819 +0.707536 0.472760 0.293071 +0.698144 0.488845 0.289181 +0.688408 0.504762 0.285148 +0.678330 0.520501 0.280974 +0.667911 0.536055 0.276658 +0.657151 0.551415 0.272201 +0.646052 0.566573 0.267604 +0.634616 0.581518 0.262867 +0.622844 0.596243 0.257990 +0.610739 0.610739 0.252976 +0.596243 0.622844 0.257990 +0.581518 0.634616 0.262867 +0.566573 0.646052 0.267604 +0.551415 0.657151 0.272201 +0.536055 0.667911 0.276658 +0.520501 0.678330 0.280974 +0.504762 0.688408 0.285148 +0.488845 0.698144 0.289181 +0.472760 0.707536 0.293071 +0.456515 0.716584 0.296819 +0.440116 0.725288 0.300424 +0.423572 0.733648 0.303887 +0.406890 0.741663 0.307207 +0.390078 0.749333 0.310384 +0.373143 0.756659 0.313418 +0.356091 0.763640 0.316310 +0.338930 0.770277 0.319059 +0.321666 0.776571 0.321666 +0.304305 0.782520 0.324130 +0.286855 0.788126 0.326453 +0.269320 0.793390 0.328633 +0.251706 0.798311 0.330671 +0.234021 0.802890 0.332568 +0.216269 0.807128 0.334323 +0.198456 0.811025 0.335937 +0.180588 0.814581 0.337410 +0.162670 0.817797 0.338743 +0.144707 0.820673 0.339934 +0.126704 0.823210 0.340985 +0.108667 0.825408 0.341895 +0.090601 0.827268 0.342666 +0.072510 0.828789 0.343295 +0.054399 0.829971 0.343785 +0.036274 0.830816 0.344135 +0.018140 0.831323 0.344345 +0.000000 0.831492 0.344415 +0.838807 0.000000 0.326194 +0.838634 0.018299 0.326127 +0.838113 0.036593 0.325925 +0.837246 0.054876 0.325587 +0.836032 0.073143 0.325115 +0.834471 0.091389 0.324508 +0.832563 0.109609 0.323766 +0.830308 0.127797 0.322889 +0.827705 0.145947 0.321877 +0.824754 0.164054 0.320729 +0.821455 0.182112 0.319447 +0.817809 0.200117 0.318028 +0.813814 0.218061 0.316475 +0.809471 0.235939 0.314786 +0.804778 0.253746 0.312961 +0.799738 0.271474 0.311001 +0.794348 0.289119 0.308905 +0.788608 0.306673 0.306673 +0.782520 0.324130 0.304305 +0.776082 0.341484 0.301802 +0.769296 0.358728 0.299163 +0.762159 0.375855 0.296388 +0.754674 0.392859 0.293477 +0.746841 0.409731 0.290430 +0.738658 0.426465 0.287249 +0.730128 0.443053 0.283931 +0.721251 0.459487 0.280479 +0.712027 0.475761 0.276892 +0.702457 0.491866 0.273171 +0.692543 0.507793 0.269315 +0.682285 0.523536 0.265326 +0.671685 0.539084 0.261204 +0.660745 0.554431 0.256950 +0.649466 0.569566 0.252563 +0.637851 0.584482 0.248047 +0.625901 0.599170 0.243400 +0.613620 0.613620 0.238624 +0.599170 0.625901 0.243400 +0.584482 0.637851 0.248047 +0.569566 0.649466 0.252563 +0.554431 0.660745 0.256950 +0.539084 0.671685 0.261204 +0.523536 0.682285 0.265326 +0.507793 0.692543 0.269315 +0.491866 0.702457 0.273171 +0.475761 0.712027 0.276892 +0.459487 0.721251 0.280479 +0.443053 0.730128 0.283931 +0.426465 0.738658 0.287249 +0.409731 0.746841 0.290430 +0.392859 0.754674 0.293477 +0.375855 0.762159 0.296388 +0.358728 0.769296 0.299163 +0.341484 0.776082 0.301802 +0.324130 0.782520 0.304305 +0.306673 0.788608 0.306673 +0.289119 0.794348 0.308905 +0.271474 0.799738 0.311001 +0.253746 0.804778 0.312961 +0.235939 0.809471 0.314786 +0.218061 0.813814 0.316475 +0.200117 0.817809 0.318028 +0.182112 0.821455 0.319447 +0.164054 0.824754 0.320729 +0.145947 0.827705 0.321877 +0.127797 0.830308 0.322889 +0.109609 0.832563 0.323766 +0.091389 0.834471 0.324508 +0.073143 0.836032 0.325115 +0.054876 0.837246 0.325587 +0.036593 0.838113 0.325925 +0.018299 0.838634 0.326127 +0.000000 0.838807 0.326194 +0.845723 0.000000 0.307818 +0.845546 0.018450 0.307753 +0.845012 0.036894 0.307559 +0.844124 0.055327 0.307236 +0.842880 0.073742 0.306783 +0.841280 0.092135 0.306201 +0.839325 0.110499 0.305489 +0.837014 0.128829 0.304648 +0.834348 0.147118 0.303678 +0.831326 0.165361 0.302578 +0.827948 0.183552 0.301348 +0.824215 0.201684 0.299990 +0.820126 0.219752 0.298501 +0.815681 0.237749 0.296884 +0.810881 0.255670 0.295136 +0.805725 0.273507 0.293260 +0.800214 0.291254 0.291254 +0.794348 0.308905 0.289119 +0.788126 0.326453 0.286855 +0.781551 0.343890 0.284461 +0.774620 0.361211 0.281939 +0.767337 0.378409 0.279288 +0.759699 0.395475 0.276508 +0.751710 0.412402 0.273600 +0.743368 0.429184 0.270564 +0.734676 0.445812 0.267400 +0.725634 0.462280 0.264109 +0.716243 0.478578 0.260691 +0.706504 0.494700 0.257146 +0.696420 0.510636 0.253476 +0.685991 0.526380 0.249680 +0.675221 0.541922 0.245760 +0.664109 0.557254 0.241716 +0.652660 0.572368 0.237549 +0.640876 0.587255 0.233260 +0.628759 0.601906 0.228849 +0.616312 0.616312 0.224319 +0.601906 0.628759 0.228849 +0.587255 0.640876 0.233260 +0.572368 0.652660 0.237549 +0.557254 0.664109 0.241716 +0.541922 0.675221 0.245760 +0.526380 0.685991 0.249680 +0.510636 0.696420 0.253476 +0.494700 0.706504 0.257146 +0.478578 0.716243 0.260691 +0.462280 0.725634 0.264109 +0.445812 0.734676 0.267400 +0.429184 0.743368 0.270564 +0.412402 0.751710 0.273600 +0.395475 0.759699 0.276508 +0.378409 0.767337 0.279288 +0.361211 0.774620 0.281939 +0.343890 0.781551 0.284461 +0.326453 0.788126 0.286855 +0.308905 0.794348 0.289119 +0.291254 0.800214 0.291254 +0.273507 0.805725 0.293260 +0.255670 0.810881 0.295136 +0.237749 0.815681 0.296884 +0.219752 0.820126 0.298501 +0.201684 0.824215 0.299990 +0.183552 0.827948 0.301348 +0.165361 0.831326 0.302578 +0.147118 0.834348 0.303678 +0.128829 0.837014 0.304648 +0.110499 0.839325 0.305489 +0.092135 0.841280 0.306201 +0.073742 0.842880 0.306783 +0.055327 0.844124 0.307236 +0.036894 0.845012 0.307559 +0.018450 0.845546 0.307753 +0.000000 0.845723 0.307818 +0.852237 0.000000 0.289296 +0.852055 0.018592 0.289234 +0.851510 0.037178 0.289049 +0.850600 0.055751 0.288740 +0.849327 0.074307 0.288308 +0.847691 0.092837 0.287752 +0.845691 0.111337 0.287073 +0.843327 0.129800 0.286271 +0.840600 0.148220 0.285345 +0.837510 0.166591 0.284296 +0.834057 0.184906 0.283124 +0.830240 0.203159 0.281829 +0.826062 0.221343 0.280410 +0.821520 0.239451 0.278869 +0.816617 0.257478 0.277204 +0.811352 0.275417 0.275417 +0.805725 0.293260 0.273507 +0.799738 0.311001 0.271474 +0.793390 0.328633 0.269320 +0.786682 0.346149 0.267043 +0.779616 0.363541 0.264644 +0.772192 0.380803 0.262124 +0.764410 0.397927 0.259482 +0.756273 0.414905 0.256720 +0.747780 0.431731 0.253837 +0.738934 0.448396 0.250834 +0.729735 0.464893 0.247712 +0.720186 0.481213 0.244470 +0.710288 0.497349 0.241110 +0.700043 0.513293 0.237633 +0.689454 0.529037 0.234038 +0.678522 0.544571 0.230327 +0.667250 0.559889 0.226501 +0.655640 0.574981 0.222560 +0.643696 0.589839 0.218506 +0.631422 0.604455 0.214339 +0.618819 0.618819 0.210061 +0.604455 0.631422 0.214339 +0.589839 0.643696 0.218506 +0.574981 0.655640 0.222560 +0.559889 0.667250 0.226501 +0.544571 0.678522 0.230327 +0.529037 0.689454 0.234038 +0.513293 0.700043 0.237633 +0.497349 0.710288 0.241110 +0.481213 0.720186 0.244470 +0.464893 0.729735 0.247712 +0.448396 0.738934 0.250834 +0.431731 0.747780 0.253837 +0.414905 0.756273 0.256720 +0.397927 0.764410 0.259482 +0.380803 0.772192 0.262124 +0.363541 0.779616 0.264644 +0.346149 0.786682 0.267043 +0.328633 0.793390 0.269320 +0.311001 0.799738 0.271474 +0.293260 0.805725 0.273507 +0.275417 0.811352 0.275417 +0.257478 0.816617 0.277204 +0.239451 0.821520 0.278869 +0.221343 0.826062 0.280410 +0.203159 0.830240 0.281829 +0.184906 0.834057 0.283124 +0.166591 0.837510 0.284296 +0.148220 0.840600 0.285345 +0.129800 0.843327 0.286271 +0.111337 0.845691 0.287073 +0.092837 0.847691 0.287752 +0.074307 0.849327 0.288308 +0.055751 0.850600 0.288740 +0.037178 0.851510 0.289049 +0.018592 0.852055 0.289234 +0.000000 0.852237 0.289296 +0.858345 0.000000 0.270635 +0.858159 0.018725 0.270577 +0.857602 0.037444 0.270401 +0.856673 0.056149 0.270108 +0.855373 0.074835 0.269698 +0.853701 0.093495 0.269171 +0.851658 0.112123 0.268527 +0.849244 0.130711 0.267766 +0.846460 0.149254 0.266888 +0.843305 0.167744 0.265893 +0.839780 0.186175 0.264781 +0.835885 0.204540 0.263553 +0.831620 0.222832 0.262209 +0.826987 0.241045 0.260748 +0.821986 0.259171 0.259171 +0.816617 0.277204 0.257478 +0.810881 0.295136 0.255670 +0.804778 0.312961 0.253746 +0.798311 0.330671 0.251706 +0.791479 0.348259 0.249552 +0.784284 0.365718 0.247284 +0.776727 0.383039 0.244901 +0.768809 0.400216 0.242404 +0.760531 0.417242 0.239795 +0.751896 0.434107 0.237072 +0.742905 0.450806 0.234237 +0.733559 0.467329 0.231290 +0.723861 0.483668 0.228232 +0.713813 0.499817 0.225064 +0.703417 0.515767 0.221787 +0.692676 0.531509 0.218400 +0.681592 0.547036 0.214905 +0.670169 0.562338 0.211303 +0.658409 0.577409 0.207596 +0.646316 0.592240 0.203783 +0.633894 0.606821 0.199866 +0.621146 0.621146 0.195847 +0.606821 0.633894 0.199866 +0.592240 0.646316 0.203783 +0.577409 0.658409 0.207596 +0.562338 0.670169 0.211303 +0.547036 0.681592 0.214905 +0.531509 0.692676 0.218400 +0.515767 0.703417 0.221787 +0.499817 0.713813 0.225064 +0.483668 0.723861 0.228232 +0.467329 0.733559 0.231290 +0.450806 0.742905 0.234237 +0.434107 0.751896 0.237072 +0.417242 0.760531 0.239795 +0.400216 0.768809 0.242404 +0.383039 0.776727 0.244901 +0.365718 0.784284 0.247284 +0.348259 0.791479 0.249552 +0.330671 0.798311 0.251706 +0.312961 0.804778 0.253746 +0.295136 0.810881 0.255670 +0.277204 0.816617 0.257478 +0.259171 0.821986 0.259171 +0.241045 0.826987 0.260748 +0.222832 0.831620 0.262209 +0.204540 0.835885 0.263553 +0.186175 0.839780 0.264781 +0.167744 0.843305 0.265893 +0.149254 0.846460 0.266888 +0.130711 0.849244 0.267766 +0.112123 0.851658 0.268527 +0.093495 0.853701 0.269171 +0.074835 0.855373 0.269698 +0.056149 0.856673 0.270108 +0.037444 0.857602 0.270401 +0.018725 0.858159 0.270577 +0.000000 0.858345 0.270635 +0.864045 0.000000 0.251846 +0.863855 0.018849 0.251791 +0.863287 0.037692 0.251625 +0.862339 0.056521 0.251349 +0.861013 0.075329 0.250962 +0.859308 0.094110 0.250465 +0.857225 0.112856 0.249858 +0.854763 0.131561 0.249141 +0.851924 0.150217 0.248313 +0.848708 0.168819 0.247376 +0.845115 0.187357 0.246329 +0.841146 0.205827 0.245172 +0.836801 0.224220 0.243905 +0.832081 0.242530 0.242530 +0.826987 0.260748 0.241045 +0.821520 0.278869 0.239451 +0.815681 0.296884 0.237749 +0.809471 0.314786 0.235939 +0.802890 0.332568 0.234021 +0.795941 0.350222 0.231996 +0.788625 0.367742 0.229863 +0.780943 0.385118 0.227624 +0.772896 0.402344 0.225279 +0.764488 0.419412 0.222828 +0.755718 0.436314 0.220272 +0.746591 0.453042 0.217611 +0.737107 0.469589 0.214847 +0.727270 0.485946 0.211980 +0.717081 0.502105 0.209010 +0.706544 0.518059 0.205939 +0.695661 0.533799 0.202767 +0.684436 0.549318 0.199495 +0.672871 0.564606 0.196124 +0.660971 0.579656 0.192655 +0.648739 0.594460 0.189090 +0.636179 0.609009 0.185429 +0.623295 0.623295 0.181674 +0.609009 0.636179 0.185429 +0.594460 0.648739 0.189090 +0.579656 0.660971 0.192655 +0.564606 0.672871 0.196124 +0.549318 0.684436 0.199495 +0.533799 0.695661 0.202767 +0.518059 0.706544 0.205939 +0.502105 0.717081 0.209010 +0.485946 0.727270 0.211980 +0.469589 0.737107 0.214847 +0.453042 0.746591 0.217611 +0.436314 0.755718 0.220272 +0.419412 0.764488 0.222828 +0.402344 0.772896 0.225279 +0.385118 0.780943 0.227624 +0.367742 0.788625 0.229863 +0.350222 0.795941 0.231996 +0.332568 0.802890 0.234021 +0.314786 0.809471 0.235939 +0.296884 0.815681 0.237749 +0.278869 0.821520 0.239451 +0.260748 0.826987 0.241045 +0.242530 0.832081 0.242530 +0.224220 0.836801 0.243905 +0.205827 0.841146 0.245172 +0.187357 0.845115 0.246329 +0.168819 0.848708 0.247376 +0.150217 0.851924 0.248313 +0.131561 0.854763 0.249141 +0.112856 0.857225 0.249858 +0.094110 0.859308 0.250465 +0.075329 0.861013 0.250962 +0.056521 0.862339 0.251349 +0.037692 0.863287 0.251625 +0.018849 0.863855 0.251791 +0.000000 0.864045 0.251846 +0.869333 0.000000 0.232937 +0.869140 0.018965 0.232885 +0.868561 0.037922 0.232730 +0.867596 0.056865 0.232472 +0.866246 0.075787 0.232110 +0.864509 0.094679 0.231645 +0.862388 0.113536 0.231076 +0.859882 0.132349 0.230405 +0.856992 0.151111 0.229630 +0.853718 0.169815 0.228753 +0.850061 0.188454 0.227773 +0.846022 0.207020 0.226691 +0.841602 0.225507 0.225507 +0.836801 0.243905 0.224220 +0.831620 0.262209 0.222832 +0.826062 0.280410 0.221343 +0.820126 0.298501 0.219752 +0.813814 0.316475 0.218061 +0.807128 0.334323 0.216269 +0.800069 0.352039 0.214378 +0.792639 0.369614 0.212387 +0.784841 0.387041 0.210297 +0.776674 0.404311 0.208109 +0.768143 0.421418 0.205823 +0.759249 0.438353 0.203440 +0.749995 0.455108 0.200960 +0.740382 0.471675 0.198385 +0.730415 0.488048 0.195714 +0.720095 0.504216 0.192949 +0.709426 0.520173 0.190090 +0.698412 0.535910 0.187139 +0.687055 0.551420 0.184096 +0.675360 0.566694 0.180962 +0.663329 0.581724 0.177739 +0.650968 0.596503 0.174426 +0.638281 0.611021 0.171027 +0.625272 0.625272 0.167541 +0.611021 0.638281 0.171027 +0.596503 0.650968 0.174426 +0.581724 0.663329 0.177739 +0.566694 0.675360 0.180962 +0.551420 0.687055 0.184096 +0.535910 0.698412 0.187139 +0.520173 0.709426 0.190090 +0.504216 0.720095 0.192949 +0.488048 0.730415 0.195714 +0.471675 0.740382 0.198385 +0.455108 0.749995 0.200960 +0.438353 0.759249 0.203440 +0.421418 0.768143 0.205823 +0.404311 0.776674 0.208109 +0.387041 0.784841 0.210297 +0.369614 0.792639 0.212387 +0.352039 0.800069 0.214378 +0.334323 0.807128 0.216269 +0.316475 0.813814 0.218061 +0.298501 0.820126 0.219752 +0.280410 0.826062 0.221343 +0.262209 0.831620 0.222832 +0.243905 0.836801 0.224220 +0.225507 0.841602 0.225507 +0.207020 0.846022 0.226691 +0.188454 0.850061 0.227773 +0.169815 0.853718 0.228753 +0.151111 0.856992 0.229630 +0.132349 0.859882 0.230405 +0.113536 0.862388 0.231076 +0.094679 0.864509 0.231645 +0.075787 0.866246 0.232110 +0.056865 0.867596 0.232472 +0.037922 0.868561 0.232730 +0.018965 0.869140 0.232885 +0.000000 0.869333 0.232937 +0.874208 0.000000 0.213917 +0.874012 0.019071 0.213869 +0.873423 0.038134 0.213725 +0.872442 0.057183 0.213485 +0.871068 0.076209 0.213149 +0.869303 0.095204 0.212717 +0.867146 0.114162 0.212189 +0.864599 0.133074 0.211566 +0.861661 0.151934 0.210847 +0.858333 0.170733 0.210033 +0.854617 0.189464 0.209124 +0.850513 0.208119 0.208119 +0.846022 0.226691 0.207020 +0.841146 0.245172 0.205827 +0.835885 0.263553 0.204540 +0.830240 0.281829 0.203159 +0.824215 0.299990 0.201684 +0.817809 0.318028 0.200117 +0.811025 0.335937 0.198456 +0.803864 0.353709 0.196704 +0.796329 0.371334 0.194861 +0.788422 0.388807 0.192926 +0.780145 0.406118 0.190900 +0.771500 0.423259 0.188785 +0.762490 0.440224 0.186580 +0.753118 0.457003 0.184287 +0.743386 0.473589 0.181906 +0.733299 0.489975 0.179437 +0.722858 0.506151 0.176882 +0.712068 0.522110 0.174242 +0.700932 0.537844 0.171517 +0.689454 0.553345 0.168708 +0.677638 0.568605 0.165817 +0.665487 0.583617 0.162844 +0.653008 0.598371 0.159790 +0.640203 0.612861 0.156657 +0.627078 0.627078 0.153445 +0.612861 0.640203 0.156657 +0.598371 0.653008 0.159790 +0.583617 0.665487 0.162844 +0.568605 0.677638 0.165817 +0.553345 0.689454 0.168708 +0.537844 0.700932 0.171517 +0.522110 0.712068 0.174242 +0.506151 0.722858 0.176882 +0.489975 0.733299 0.179437 +0.473589 0.743386 0.181906 +0.457003 0.753118 0.184287 +0.440224 0.762490 0.186580 +0.423259 0.771500 0.188785 +0.406118 0.780145 0.190900 +0.388807 0.788422 0.192926 +0.371334 0.796329 0.194861 +0.353709 0.803864 0.196704 +0.335937 0.811025 0.198456 +0.318028 0.817809 0.200117 +0.299990 0.824215 0.201684 +0.281829 0.830240 0.203159 +0.263553 0.835885 0.204540 +0.245172 0.841146 0.205827 +0.226691 0.846022 0.207020 +0.208119 0.850513 0.208119 +0.189464 0.854617 0.209124 +0.170733 0.858333 0.210033 +0.151934 0.861661 0.210847 +0.133074 0.864599 0.211566 +0.114162 0.867146 0.212189 +0.095204 0.869303 0.212717 +0.076209 0.871068 0.213149 +0.057183 0.872442 0.213485 +0.038134 0.873423 0.213725 +0.019071 0.874012 0.213869 +0.000000 0.874208 0.213917 +0.878666 0.000000 0.194796 +0.878467 0.019168 0.194751 +0.877869 0.038329 0.194619 +0.876873 0.057473 0.194398 +0.875479 0.076594 0.194089 +0.873686 0.095684 0.193692 +0.871497 0.114735 0.193206 +0.868911 0.133738 0.192633 +0.865929 0.152687 0.191972 +0.862552 0.171572 0.191223 +0.858781 0.190387 0.190387 +0.854617 0.209124 0.189464 +0.850061 0.227773 0.188454 +0.845115 0.246329 0.187357 +0.839780 0.264781 0.186175 +0.834057 0.283124 0.184906 +0.827948 0.301348 0.183552 +0.821455 0.319447 0.182112 +0.814581 0.337410 0.180588 +0.807327 0.355232 0.178980 +0.799695 0.372904 0.177288 +0.791688 0.390417 0.175513 +0.783308 0.407765 0.173655 +0.774559 0.424938 0.171716 +0.765443 0.441929 0.169695 +0.755963 0.458730 0.167593 +0.746122 0.475332 0.165411 +0.735924 0.491729 0.163150 +0.725373 0.507911 0.160811 +0.714471 0.523872 0.158394 +0.703224 0.539603 0.155901 +0.691635 0.555095 0.153332 +0.679708 0.570343 0.150688 +0.667448 0.585336 0.147970 +0.654860 0.600068 0.145179 +0.641948 0.614531 0.142316 +0.628718 0.628718 0.139383 +0.614531 0.641948 0.142316 +0.600068 0.654860 0.145179 +0.585336 0.667448 0.147970 +0.570343 0.679708 0.150688 +0.555095 0.691635 0.153332 +0.539603 0.703224 0.155901 +0.523872 0.714471 0.158394 +0.507911 0.725373 0.160811 +0.491729 0.735924 0.163150 +0.475332 0.746122 0.165411 +0.458730 0.755963 0.167593 +0.441929 0.765443 0.169695 +0.424938 0.774559 0.171716 +0.407765 0.783308 0.173655 +0.390417 0.791688 0.175513 +0.372904 0.799695 0.177288 +0.355232 0.807327 0.178980 +0.337410 0.814581 0.180588 +0.319447 0.821455 0.182112 +0.301348 0.827948 0.183552 +0.283124 0.834057 0.184906 +0.264781 0.839780 0.186175 +0.246329 0.845115 0.187357 +0.227773 0.850061 0.188454 +0.209124 0.854617 0.189464 +0.190387 0.858781 0.190387 +0.171572 0.862552 0.191223 +0.152687 0.865929 0.191972 +0.133738 0.868911 0.192633 +0.114735 0.871497 0.193206 +0.095684 0.873686 0.193692 +0.076594 0.875479 0.194089 +0.057473 0.876873 0.194398 +0.038329 0.877869 0.194619 +0.019168 0.878467 0.194751 +0.000000 0.878666 0.194796 +0.882707 0.000000 0.175581 +0.882505 0.019256 0.175541 +0.881899 0.038505 0.175421 +0.880889 0.057736 0.175220 +0.879475 0.076944 0.174938 +0.877658 0.096119 0.174577 +0.875439 0.115254 0.174136 +0.872818 0.134340 0.173614 +0.869796 0.153368 0.173013 +0.866374 0.172332 0.172332 +0.862552 0.191223 0.171572 +0.858333 0.210033 0.170733 +0.853718 0.228753 0.169815 +0.848708 0.247376 0.168819 +0.843305 0.265893 0.167744 +0.837510 0.284296 0.166591 +0.831326 0.302578 0.165361 +0.824754 0.320729 0.164054 +0.817797 0.338743 0.162670 +0.810457 0.356610 0.161210 +0.802737 0.374322 0.159674 +0.794639 0.391873 0.158064 +0.786167 0.409253 0.156378 +0.777322 0.426454 0.154619 +0.768110 0.443468 0.152786 +0.758531 0.460288 0.150881 +0.748591 0.476905 0.148904 +0.738293 0.493312 0.146856 +0.727641 0.509500 0.144737 +0.716638 0.525461 0.142548 +0.705290 0.541188 0.140291 +0.693600 0.556673 0.137966 +0.681573 0.571908 0.135573 +0.669214 0.586885 0.133115 +0.656527 0.601596 0.130591 +0.643518 0.616035 0.128004 +0.630193 0.630193 0.125353 +0.616035 0.643518 0.128004 +0.601596 0.656527 0.130591 +0.586885 0.669214 0.133115 +0.571908 0.681573 0.135573 +0.556673 0.693600 0.137966 +0.541188 0.705290 0.140291 +0.525461 0.716638 0.142548 +0.509500 0.727641 0.144737 +0.493312 0.738293 0.146856 +0.476905 0.748591 0.148904 +0.460288 0.758531 0.150881 +0.443468 0.768110 0.152786 +0.426454 0.777322 0.154619 +0.409253 0.786167 0.156378 +0.391873 0.794639 0.158064 +0.374322 0.802737 0.159674 +0.356610 0.810457 0.161210 +0.338743 0.817797 0.162670 +0.320729 0.824754 0.164054 +0.302578 0.831326 0.165361 +0.284296 0.837510 0.166591 +0.265893 0.843305 0.167744 +0.247376 0.848708 0.168819 +0.228753 0.853718 0.169815 +0.210033 0.858333 0.170733 +0.191223 0.862552 0.171572 +0.172332 0.866374 0.172332 +0.153368 0.869796 0.173013 +0.134340 0.872818 0.173614 +0.115254 0.875439 0.174136 +0.096119 0.877658 0.174577 +0.076944 0.879475 0.174938 +0.057736 0.880889 0.175220 +0.038505 0.881899 0.175421 +0.019256 0.882505 0.175541 +0.000000 0.882707 0.175581 +0.886327 0.000000 0.156283 +0.886122 0.019335 0.156247 +0.885509 0.038662 0.156139 +0.884486 0.057972 0.155959 +0.883055 0.077257 0.155706 +0.881216 0.096509 0.155382 +0.878970 0.115719 0.154986 +0.876317 0.134878 0.154518 +0.873259 0.153979 0.153979 +0.869796 0.173013 0.153368 +0.865929 0.191972 0.152687 +0.861661 0.210847 0.151934 +0.856992 0.229630 0.151111 +0.851924 0.248313 0.150217 +0.846460 0.266888 0.149254 +0.840600 0.285345 0.148220 +0.834348 0.303678 0.147118 +0.827705 0.321877 0.145947 +0.820673 0.339934 0.144707 +0.813257 0.357841 0.143399 +0.805457 0.375591 0.142024 +0.797277 0.393174 0.140582 +0.788721 0.410582 0.139073 +0.779791 0.427808 0.137498 +0.770491 0.444843 0.135858 +0.760825 0.461680 0.134154 +0.750796 0.478310 0.132386 +0.740408 0.494725 0.130554 +0.729665 0.510917 0.128660 +0.718572 0.526879 0.126704 +0.707133 0.542602 0.124687 +0.695352 0.558079 0.122609 +0.683235 0.573303 0.120473 +0.670787 0.588264 0.118278 +0.658013 0.602957 0.116025 +0.644917 0.617374 0.113716 +0.631506 0.631506 0.111352 +0.617374 0.644917 0.113716 +0.602957 0.658013 0.116025 +0.588264 0.670787 0.118278 +0.573303 0.683235 0.120473 +0.558079 0.695352 0.122609 +0.542602 0.707133 0.124687 +0.526879 0.718572 0.126704 +0.510917 0.729665 0.128660 +0.494725 0.740408 0.130554 +0.478310 0.750796 0.132386 +0.461680 0.760825 0.134154 +0.444843 0.770491 0.135858 +0.427808 0.779791 0.137498 +0.410582 0.788721 0.139073 +0.393174 0.797277 0.140582 +0.375591 0.805457 0.142024 +0.357841 0.813257 0.143399 +0.339934 0.820673 0.144707 +0.321877 0.827705 0.145947 +0.303678 0.834348 0.147118 +0.285345 0.840600 0.148220 +0.266888 0.846460 0.149254 +0.248313 0.851924 0.150217 +0.229630 0.856992 0.151111 +0.210847 0.861661 0.151934 +0.191972 0.865929 0.152687 +0.173013 0.869796 0.153368 +0.153979 0.873259 0.153979 +0.134878 0.876317 0.154518 +0.115719 0.878970 0.154986 +0.096509 0.881216 0.155382 +0.077257 0.883055 0.155706 +0.057972 0.884486 0.155959 +0.038662 0.885509 0.156139 +0.019335 0.886122 0.156247 +0.000000 0.886327 0.156283 +0.889525 0.000000 0.136911 +0.889319 0.019405 0.136879 +0.888698 0.038801 0.136784 +0.887665 0.058181 0.136625 +0.886218 0.077534 0.136402 +0.884360 0.096853 0.136116 +0.882089 0.116129 0.135767 +0.879408 0.135354 0.135354 +0.876317 0.154518 0.134878 +0.872818 0.173614 0.134340 +0.868911 0.192633 0.133738 +0.864599 0.211566 0.133074 +0.859882 0.230405 0.132349 +0.854763 0.249141 0.131561 +0.849244 0.267766 0.130711 +0.843327 0.286271 0.129800 +0.837014 0.304648 0.128829 +0.830308 0.322889 0.127797 +0.823210 0.340985 0.126704 +0.815725 0.358928 0.125552 +0.807855 0.376709 0.124341 +0.799603 0.394321 0.123071 +0.790972 0.411754 0.121742 +0.781967 0.429002 0.120356 +0.772590 0.446055 0.118913 +0.762845 0.462906 0.117413 +0.752737 0.479546 0.115857 +0.742269 0.495968 0.114246 +0.731446 0.512164 0.112580 +0.720273 0.528126 0.110861 +0.708754 0.543846 0.109088 +0.696893 0.559316 0.107262 +0.684697 0.574529 0.105385 +0.672170 0.589478 0.103457 +0.659318 0.604154 0.101479 +0.646146 0.618550 0.099451 +0.632660 0.632660 0.097376 +0.618550 0.646146 0.099451 +0.604154 0.659318 0.101479 +0.589478 0.672170 0.103457 +0.574529 0.684697 0.105385 +0.559316 0.696893 0.107262 +0.543846 0.708754 0.109088 +0.528126 0.720273 0.110861 +0.512164 0.731446 0.112580 +0.495968 0.742269 0.114246 +0.479546 0.752737 0.115857 +0.462906 0.762845 0.117413 +0.446055 0.772590 0.118913 +0.429002 0.781967 0.120356 +0.411754 0.790972 0.121742 +0.394321 0.799603 0.123071 +0.376709 0.807855 0.124341 +0.358928 0.815725 0.125552 +0.340985 0.823210 0.126704 +0.322889 0.830308 0.127797 +0.304648 0.837014 0.128829 +0.286271 0.843327 0.129800 +0.267766 0.849244 0.130711 +0.249141 0.854763 0.131561 +0.230405 0.859882 0.132349 +0.211566 0.864599 0.133074 +0.192633 0.868911 0.133738 +0.173614 0.872818 0.134340 +0.154518 0.876317 0.134878 +0.135354 0.879408 0.135354 +0.116129 0.882089 0.135767 +0.096853 0.884360 0.136116 +0.077534 0.886218 0.136402 +0.058181 0.887665 0.136625 +0.038801 0.888698 0.136784 +0.019405 0.889319 0.136879 +0.000000 0.889525 0.136911 +0.892300 0.000000 0.117474 +0.892092 0.019466 0.117446 +0.891466 0.038922 0.117364 +0.890422 0.058361 0.117226 +0.888962 0.077774 0.117034 +0.887086 0.097152 0.116787 +0.884795 0.116485 0.116485 +0.882089 0.135767 0.116129 +0.878970 0.154986 0.115719 +0.875439 0.174136 0.115254 +0.871497 0.193206 0.114735 +0.867146 0.212189 0.114162 +0.862388 0.231076 0.113536 +0.857225 0.249858 0.112856 +0.851658 0.268527 0.112123 +0.845691 0.287073 0.111337 +0.839325 0.305489 0.110499 +0.832563 0.323766 0.109609 +0.825408 0.341895 0.108667 +0.817864 0.359869 0.107674 +0.809932 0.377677 0.106630 +0.801617 0.395314 0.105535 +0.792922 0.412769 0.104390 +0.783850 0.430035 0.103196 +0.774406 0.447103 0.101952 +0.764593 0.463966 0.100661 +0.754416 0.480616 0.099321 +0.743879 0.497044 0.097934 +0.732987 0.513243 0.096500 +0.721744 0.529204 0.095019 +0.710155 0.544921 0.093494 +0.698225 0.560385 0.091923 +0.685960 0.575589 0.090308 +0.673365 0.590525 0.088650 +0.660446 0.605187 0.086949 +0.647207 0.619566 0.085206 +0.633656 0.633656 0.083422 +0.619566 0.647207 0.085206 +0.605187 0.660446 0.086949 +0.590525 0.673365 0.088650 +0.575589 0.685960 0.090308 +0.560385 0.698225 0.091923 +0.544921 0.710155 0.093494 +0.529204 0.721744 0.095019 +0.513243 0.732987 0.096500 +0.497044 0.743879 0.097934 +0.480616 0.754416 0.099321 +0.463966 0.764593 0.100661 +0.447103 0.774406 0.101952 +0.430035 0.783850 0.103196 +0.412769 0.792922 0.104390 +0.395314 0.801617 0.105535 +0.377677 0.809932 0.106630 +0.359869 0.817864 0.107674 +0.341895 0.825408 0.108667 +0.323766 0.832563 0.109609 +0.305489 0.839325 0.110499 +0.287073 0.845691 0.111337 +0.268527 0.851658 0.112123 +0.249858 0.857225 0.112856 +0.231076 0.862388 0.113536 +0.212189 0.867146 0.114162 +0.193206 0.871497 0.114735 +0.174136 0.875439 0.115254 +0.154986 0.878970 0.115719 +0.135767 0.882089 0.116129 +0.116485 0.884795 0.116485 +0.097152 0.887086 0.116787 +0.077774 0.888962 0.117034 +0.058361 0.890422 0.117226 +0.038922 0.891466 0.117364 +0.019466 0.892092 0.117446 +0.000000 0.892300 0.117474 +0.894651 0.000000 0.097980 +0.894440 0.019517 0.097957 +0.893809 0.039025 0.097888 +0.892758 0.058514 0.097773 +0.891286 0.077977 0.097612 +0.889396 0.097405 0.097405 +0.887086 0.116787 0.097152 +0.884360 0.136116 0.096853 +0.881216 0.155382 0.096509 +0.877658 0.174577 0.096119 +0.873686 0.193692 0.095684 +0.869303 0.212717 0.095204 +0.864509 0.231645 0.094679 +0.859308 0.250465 0.094110 +0.853701 0.269171 0.093495 +0.847691 0.287752 0.092837 +0.841280 0.306201 0.092135 +0.834471 0.324508 0.091389 +0.827268 0.342666 0.090601 +0.819672 0.360664 0.089769 +0.811688 0.378497 0.088894 +0.803320 0.396153 0.087978 +0.794569 0.413627 0.087020 +0.785442 0.430908 0.086020 +0.775941 0.447990 0.084979 +0.766070 0.464863 0.083898 +0.755835 0.481520 0.082777 +0.745239 0.497953 0.081617 +0.734288 0.514154 0.080418 +0.722986 0.530115 0.079180 +0.711338 0.545829 0.077904 +0.699350 0.561288 0.076591 +0.687026 0.576484 0.075242 +0.674374 0.591410 0.073856 +0.661397 0.606059 0.072435 +0.648103 0.620423 0.070979 +0.634496 0.634496 0.069489 +0.620423 0.648103 0.070979 +0.606059 0.661397 0.072435 +0.591410 0.674374 0.073856 +0.576484 0.687026 0.075242 +0.561288 0.699350 0.076591 +0.545829 0.711338 0.077904 +0.530115 0.722986 0.079180 +0.514154 0.734288 0.080418 +0.497953 0.745239 0.081617 +0.481520 0.755835 0.082777 +0.464863 0.766070 0.083898 +0.447990 0.775941 0.084979 +0.430908 0.785442 0.086020 +0.413627 0.794569 0.087020 +0.396153 0.803320 0.087978 +0.378497 0.811688 0.088894 +0.360664 0.819672 0.089769 +0.342666 0.827268 0.090601 +0.324508 0.834471 0.091389 +0.306201 0.841280 0.092135 +0.287752 0.847691 0.092837 +0.269171 0.853701 0.093495 +0.250465 0.859308 0.094110 +0.231645 0.864509 0.094679 +0.212717 0.869303 0.095204 +0.193692 0.873686 0.095684 +0.174577 0.877658 0.096119 +0.155382 0.881216 0.096509 +0.136116 0.884360 0.096853 +0.116787 0.887086 0.097152 +0.097405 0.889396 0.097405 +0.077977 0.891286 0.097612 +0.058514 0.892758 0.097773 +0.039025 0.893809 0.097888 +0.019517 0.894440 0.097957 +0.000000 0.894651 0.097980 +0.896575 0.000000 0.078440 +0.896363 0.019559 0.078422 +0.895728 0.039108 0.078366 +0.894670 0.058640 0.078273 +0.893189 0.078144 0.078144 +0.891286 0.097612 0.077977 +0.888962 0.117034 0.077774 +0.886218 0.136402 0.077534 +0.883055 0.155706 0.077257 +0.879475 0.174938 0.076944 +0.875479 0.194089 0.076594 +0.871068 0.213149 0.076209 +0.866246 0.232110 0.075787 +0.861013 0.250962 0.075329 +0.855373 0.269698 0.074835 +0.849327 0.288308 0.074307 +0.842880 0.306783 0.073742 +0.836032 0.325115 0.073143 +0.828789 0.343295 0.072510 +0.821152 0.361315 0.071841 +0.813125 0.379166 0.071139 +0.804712 0.396840 0.070403 +0.795917 0.414328 0.069634 +0.786743 0.431622 0.068831 +0.777195 0.448714 0.067996 +0.767277 0.465595 0.067128 +0.756994 0.482259 0.066228 +0.746351 0.498695 0.065297 +0.735351 0.514898 0.064335 +0.724000 0.530859 0.063342 +0.712304 0.546570 0.062319 +0.700268 0.562024 0.061266 +0.687897 0.577214 0.060183 +0.675197 0.592132 0.059072 +0.662173 0.606770 0.057933 +0.648833 0.621123 0.056766 +0.635182 0.635182 0.055571 +0.621123 0.648833 0.056766 +0.606770 0.662173 0.057933 +0.592132 0.675197 0.059072 +0.577214 0.687897 0.060183 +0.562024 0.700268 0.061266 +0.546570 0.712304 0.062319 +0.530859 0.724000 0.063342 +0.514898 0.735351 0.064335 +0.498695 0.746351 0.065297 +0.482259 0.756994 0.066228 +0.465595 0.767277 0.067128 +0.448714 0.777195 0.067996 +0.431622 0.786743 0.068831 +0.414328 0.795917 0.069634 +0.396840 0.804712 0.070403 +0.379166 0.813125 0.071139 +0.361315 0.821152 0.071841 +0.343295 0.828789 0.072510 +0.325115 0.836032 0.073143 +0.306783 0.842880 0.073742 +0.288308 0.849327 0.074307 +0.269698 0.855373 0.074835 +0.250962 0.861013 0.075329 +0.232110 0.866246 0.075787 +0.213149 0.871068 0.076209 +0.194089 0.875479 0.076594 +0.174938 0.879475 0.076944 +0.155706 0.883055 0.077257 +0.136402 0.886218 0.077534 +0.117034 0.888962 0.077774 +0.097612 0.891286 0.077977 +0.078144 0.893189 0.078144 +0.058640 0.894670 0.078273 +0.039108 0.895728 0.078366 +0.019559 0.896363 0.078422 +0.000000 0.896575 0.078440 +0.898073 0.000000 0.058863 +0.897860 0.019591 0.058849 +0.897222 0.039174 0.058807 +0.896158 0.058737 0.058737 +0.894670 0.078273 0.058640 +0.892758 0.097773 0.058514 +0.890422 0.117226 0.058361 +0.887665 0.136625 0.058181 +0.884486 0.155959 0.057972 +0.880889 0.175220 0.057736 +0.876873 0.194398 0.057473 +0.872442 0.213485 0.057183 +0.867596 0.232472 0.056865 +0.862339 0.251349 0.056521 +0.856673 0.270108 0.056149 +0.850600 0.288740 0.055751 +0.844124 0.307236 0.055327 +0.837246 0.325587 0.054876 +0.829971 0.343785 0.054399 +0.822302 0.361821 0.053897 +0.814242 0.379687 0.053368 +0.805794 0.397374 0.052815 +0.796964 0.414873 0.052236 +0.787755 0.432177 0.051632 +0.778170 0.449277 0.051004 +0.768216 0.466165 0.050352 +0.757895 0.482833 0.049675 +0.747214 0.499272 0.048975 +0.736177 0.515476 0.048252 +0.724788 0.531437 0.047505 +0.713055 0.547146 0.046736 +0.700981 0.562597 0.045945 +0.688573 0.577781 0.045131 +0.675836 0.592692 0.044297 +0.662776 0.607322 0.043441 +0.649400 0.621665 0.042564 +0.635714 0.635714 0.041667 +0.621665 0.649400 0.042564 +0.607322 0.662776 0.043441 +0.592692 0.675836 0.044297 +0.577781 0.688573 0.045131 +0.562597 0.700981 0.045945 +0.547146 0.713055 0.046736 +0.531437 0.724788 0.047505 +0.515476 0.736177 0.048252 +0.499272 0.747214 0.048975 +0.482833 0.757895 0.049675 +0.466165 0.768216 0.050352 +0.449277 0.778170 0.051004 +0.432177 0.787755 0.051632 +0.414873 0.796964 0.052236 +0.397374 0.805794 0.052815 +0.379687 0.814242 0.053368 +0.361821 0.822302 0.053897 +0.343785 0.829971 0.054399 +0.325587 0.837246 0.054876 +0.307236 0.844124 0.055327 +0.288740 0.850600 0.055751 +0.270108 0.856673 0.056149 +0.251349 0.862339 0.056521 +0.232472 0.867596 0.056865 +0.213485 0.872442 0.057183 +0.194398 0.876873 0.057473 +0.175220 0.880889 0.057736 +0.155959 0.884486 0.057972 +0.136625 0.887665 0.058181 +0.117226 0.890422 0.058361 +0.097773 0.892758 0.058514 +0.078273 0.894670 0.058640 +0.058737 0.896158 0.058737 +0.039174 0.897222 0.058807 +0.019591 0.897860 0.058849 +0.000000 0.898073 0.058863 +0.899143 0.000000 0.039257 +0.898930 0.019615 0.039248 +0.898289 0.039220 0.039220 +0.897222 0.058807 0.039174 +0.895728 0.078366 0.039108 +0.893809 0.097888 0.039025 +0.891466 0.117364 0.038922 +0.888698 0.136784 0.038801 +0.885509 0.156139 0.038662 +0.881899 0.175421 0.038505 +0.877869 0.194619 0.038329 +0.873423 0.213725 0.038134 +0.868561 0.232730 0.037922 +0.863287 0.251625 0.037692 +0.857602 0.270401 0.037444 +0.851510 0.289049 0.037178 +0.845012 0.307559 0.036894 +0.838113 0.325925 0.036593 +0.830816 0.344135 0.036274 +0.823123 0.362183 0.035938 +0.815039 0.380059 0.035585 +0.806567 0.397755 0.035215 +0.797712 0.415262 0.034829 +0.788477 0.432573 0.034426 +0.778866 0.449679 0.034006 +0.768885 0.466571 0.033570 +0.758538 0.483242 0.033118 +0.747830 0.499684 0.032651 +0.736766 0.515889 0.032168 +0.725351 0.531849 0.031669 +0.713590 0.547557 0.031156 +0.701489 0.563005 0.030628 +0.689055 0.578186 0.030085 +0.676292 0.593092 0.029528 +0.663206 0.607716 0.028956 +0.649804 0.622052 0.028371 +0.636093 0.636093 0.027772 +0.622052 0.649804 0.028371 +0.607716 0.663206 0.028956 +0.593092 0.676292 0.029528 +0.578186 0.689055 0.030085 +0.563005 0.701489 0.030628 +0.547557 0.713590 0.031156 +0.531849 0.725351 0.031669 +0.515889 0.736766 0.032168 +0.499684 0.747830 0.032651 +0.483242 0.758538 0.033118 +0.466571 0.768885 0.033570 +0.449679 0.778866 0.034006 +0.432573 0.788477 0.034426 +0.415262 0.797712 0.034829 +0.397755 0.806567 0.035215 +0.380059 0.815039 0.035585 +0.362183 0.823123 0.035938 +0.344135 0.830816 0.036274 +0.325925 0.838113 0.036593 +0.307559 0.845012 0.036894 +0.289049 0.851510 0.037178 +0.270401 0.857602 0.037444 +0.251625 0.863287 0.037692 +0.232730 0.868561 0.037922 +0.213725 0.873423 0.038134 +0.194619 0.877869 0.038329 +0.175421 0.881899 0.038505 +0.156139 0.885509 0.038662 +0.136784 0.888698 0.038801 +0.117364 0.891466 0.038922 +0.097888 0.893809 0.039025 +0.078366 0.895728 0.039108 +0.058807 0.897222 0.039174 +0.039220 0.898289 0.039220 +0.019615 0.898930 0.039248 +0.000000 0.899143 0.039257 +0.899786 0.000000 0.019633 +0.899572 0.019629 0.019629 +0.898930 0.039248 0.019615 +0.897860 0.058849 0.019591 +0.896363 0.078422 0.019559 +0.894440 0.097957 0.019517 +0.892092 0.117446 0.019466 +0.889319 0.136879 0.019405 +0.886122 0.156247 0.019335 +0.882505 0.175541 0.019256 +0.878467 0.194751 0.019168 +0.874012 0.213869 0.019071 +0.869140 0.232885 0.018965 +0.863855 0.251791 0.018849 +0.858159 0.270577 0.018725 +0.852055 0.289234 0.018592 +0.845546 0.307753 0.018450 +0.838634 0.326127 0.018299 +0.831323 0.344345 0.018140 +0.823616 0.362400 0.017971 +0.815518 0.380282 0.017795 +0.807031 0.397984 0.017609 +0.798160 0.415496 0.017416 +0.788910 0.432811 0.017214 +0.779284 0.449920 0.017004 +0.769287 0.466815 0.016786 +0.758924 0.483488 0.016560 +0.748200 0.499931 0.016326 +0.737119 0.516136 0.016084 +0.725688 0.532096 0.015835 +0.713911 0.547803 0.015578 +0.701794 0.563250 0.015313 +0.689344 0.578428 0.015042 +0.676565 0.593331 0.014763 +0.663464 0.607953 0.014477 +0.650047 0.622284 0.014184 +0.636320 0.636320 0.013885 +0.622284 0.650047 0.014184 +0.607953 0.663464 0.014477 +0.593331 0.676565 0.014763 +0.578428 0.689344 0.015042 +0.563250 0.701794 0.015313 +0.547803 0.713911 0.015578 +0.532096 0.725688 0.015835 +0.516136 0.737119 0.016084 +0.499931 0.748200 0.016326 +0.483488 0.758924 0.016560 +0.466815 0.769287 0.016786 +0.449920 0.779284 0.017004 +0.432811 0.788910 0.017214 +0.415496 0.798160 0.017416 +0.397984 0.807031 0.017609 +0.380282 0.815518 0.017795 +0.362400 0.823616 0.017971 +0.344345 0.831323 0.018140 +0.326127 0.838634 0.018299 +0.307753 0.845546 0.018450 +0.289234 0.852055 0.018592 +0.270577 0.858159 0.018725 +0.251791 0.863855 0.018849 +0.232885 0.869140 0.018965 +0.213869 0.874012 0.019071 +0.194751 0.878467 0.019168 +0.175541 0.882505 0.019256 +0.156247 0.886122 0.019335 +0.136879 0.889319 0.019405 +0.117446 0.892092 0.019466 +0.097957 0.894440 0.019517 +0.078422 0.896363 0.019559 +0.058849 0.897860 0.019591 +0.039248 0.898930 0.019615 +0.019629 0.899572 0.019629 +0.000000 0.899786 0.019633 +0.900000 0.000000 0.000000 +0.899786 0.019633 0.000000 +0.899143 0.039257 0.000000 +0.898073 0.058863 0.000000 +0.896575 0.078440 0.000000 +0.894651 0.097980 0.000000 +0.892300 0.117474 0.000000 +0.889525 0.136911 0.000000 +0.886327 0.156283 0.000000 +0.882707 0.175581 0.000000 +0.878666 0.194796 0.000000 +0.874208 0.213917 0.000000 +0.869333 0.232937 0.000000 +0.864045 0.251846 0.000000 +0.858345 0.270635 0.000000 +0.852237 0.289296 0.000000 +0.845723 0.307818 0.000000 +0.838807 0.326194 0.000000 +0.831492 0.344415 0.000000 +0.823780 0.362472 0.000000 +0.815677 0.380356 0.000000 +0.807185 0.398060 0.000000 +0.798310 0.415574 0.000000 +0.789054 0.432890 0.000000 +0.779423 0.450000 0.000000 +0.769421 0.466896 0.000000 +0.759052 0.483570 0.000000 +0.748323 0.500013 0.000000 +0.737237 0.516219 0.000000 +0.725800 0.532179 0.000000 +0.714018 0.547885 0.000000 +0.701896 0.563331 0.000000 +0.689440 0.578509 0.000000 +0.676656 0.593411 0.000000 +0.663550 0.608031 0.000000 +0.650128 0.622362 0.000000 +0.636396 0.636396 0.000000 +0.622362 0.650128 0.000000 +0.608031 0.663550 0.000000 +0.593411 0.676656 0.000000 +0.578509 0.689440 0.000000 +0.563331 0.701896 0.000000 +0.547885 0.714018 0.000000 +0.532179 0.725800 0.000000 +0.516219 0.737237 0.000000 +0.500013 0.748323 0.000000 +0.483570 0.759052 0.000000 +0.466896 0.769421 0.000000 +0.450000 0.779423 0.000000 +0.432890 0.789054 0.000000 +0.415574 0.798310 0.000000 +0.398060 0.807185 0.000000 +0.380356 0.815677 0.000000 +0.362472 0.823780 0.000000 +0.344415 0.831492 0.000000 +0.326194 0.838807 0.000000 +0.307818 0.845723 0.000000 +0.289296 0.852237 0.000000 +0.270635 0.858345 0.000000 +0.251846 0.864045 0.000000 +0.232937 0.869333 0.000000 +0.213917 0.874208 0.000000 +0.194796 0.878666 0.000000 +0.175581 0.882707 0.000000 +0.156283 0.886327 0.000000 +0.136911 0.889525 0.000000 +0.117474 0.892300 0.000000 +0.097980 0.894651 0.000000 +0.078440 0.896575 0.000000 +0.058863 0.898073 0.000000 +0.039257 0.899143 0.000000 +0.019633 0.899786 0.000000 +0.000000 0.900000 0.000000 +0.000000 0.000000 0.958333 +0.020906 0.000000 0.958105 +0.020901 0.020901 0.957877 +0.000000 0.020906 0.958105 +0.041802 0.000000 0.957421 +0.041792 0.020886 0.957194 +0.041762 0.041762 0.956512 +0.020886 0.041792 0.957194 +0.000000 0.041802 0.957421 +0.062678 0.000000 0.956281 +0.062663 0.020861 0.956055 +0.062619 0.041713 0.955375 +0.062544 0.062544 0.954243 +0.041713 0.062619 0.955375 +0.020861 0.062663 0.956055 +0.000000 0.062678 0.956281 +0.083524 0.000000 0.954687 +0.083505 0.020826 0.954461 +0.083445 0.041643 0.953785 +0.083347 0.062441 0.952658 +0.083209 0.083209 0.951081 +0.062441 0.083347 0.952658 +0.041643 0.083445 0.953785 +0.020826 0.083505 0.954461 +0.000000 0.083524 0.954687 +0.104331 0.000000 0.952637 +0.104306 0.020782 0.952413 +0.104233 0.041554 0.951741 +0.104110 0.062307 0.950622 +0.103938 0.083032 0.949055 +0.103718 0.103718 0.947042 +0.083032 0.103938 0.949055 +0.062307 0.104110 0.950622 +0.041554 0.104233 0.951741 +0.020782 0.104306 0.952413 +0.000000 0.104331 0.952637 +0.125088 0.000000 0.950135 +0.125058 0.020727 0.949912 +0.124971 0.041445 0.949246 +0.124824 0.062144 0.948135 +0.124620 0.082815 0.946580 +0.124357 0.103449 0.944583 +0.124035 0.124035 0.942143 +0.103449 0.124357 0.944583 +0.082815 0.124620 0.946580 +0.062144 0.124824 0.948135 +0.041445 0.124971 0.949246 +0.020727 0.125058 0.949912 +0.000000 0.125088 0.950135 +0.145785 0.000000 0.947180 +0.145751 0.020663 0.946960 +0.145649 0.041316 0.946299 +0.145480 0.061952 0.945199 +0.145243 0.082559 0.943658 +0.144938 0.103131 0.941679 +0.144566 0.123656 0.939262 +0.144127 0.144127 0.936407 +0.123656 0.144566 0.939262 +0.103131 0.144938 0.941679 +0.082559 0.145243 0.943658 +0.061952 0.145480 0.945199 +0.041316 0.145649 0.946299 +0.020663 0.145751 0.946960 +0.000000 0.145785 0.947180 +0.166413 0.000000 0.943774 +0.166374 0.020588 0.943556 +0.166259 0.041168 0.942903 +0.166067 0.061730 0.941814 +0.165799 0.082265 0.940290 +0.165453 0.102764 0.938332 +0.165032 0.123219 0.935940 +0.164533 0.143620 0.933116 +0.163959 0.163959 0.929859 +0.143620 0.164533 0.933116 +0.123219 0.165032 0.935940 +0.102764 0.165453 0.938332 +0.082265 0.165799 0.940290 +0.061730 0.166067 0.941814 +0.041168 0.166259 0.942903 +0.020588 0.166374 0.943556 +0.000000 0.166413 0.943774 +0.186962 0.000000 0.939919 +0.186919 0.020504 0.939704 +0.186790 0.041000 0.939059 +0.186576 0.061479 0.937983 +0.186277 0.081931 0.936478 +0.185892 0.102349 0.934543 +0.185422 0.122724 0.932180 +0.184867 0.143047 0.929389 +0.184227 0.163309 0.926171 +0.183502 0.183502 0.922527 +0.163309 0.184227 0.926171 +0.143047 0.184867 0.929389 +0.122724 0.185422 0.932180 +0.102349 0.185892 0.934543 +0.081931 0.186277 0.936478 +0.061479 0.186576 0.937983 +0.041000 0.186790 0.939059 +0.020504 0.186919 0.939704 +0.000000 0.186962 0.939919 +0.207421 0.000000 0.935617 +0.207374 0.020411 0.935405 +0.207233 0.040813 0.934768 +0.206998 0.061198 0.933707 +0.206669 0.081559 0.932223 +0.206246 0.101886 0.930314 +0.205729 0.122171 0.927983 +0.205118 0.142406 0.925229 +0.204415 0.162583 0.922054 +0.203617 0.182693 0.918459 +0.202727 0.202727 0.914443 +0.182693 0.203617 0.918459 +0.162583 0.204415 0.922054 +0.142406 0.205118 0.925229 +0.122171 0.205729 0.927983 +0.101886 0.206246 0.930314 +0.081559 0.206669 0.932223 +0.061198 0.206998 0.933707 +0.040813 0.207233 0.934768 +0.020411 0.207374 0.935405 +0.000000 0.207421 0.935617 +0.227782 0.000000 0.930869 +0.227731 0.020307 0.930660 +0.227578 0.040606 0.930033 +0.227322 0.060889 0.928989 +0.226964 0.081148 0.927526 +0.226504 0.101375 0.925647 +0.225942 0.121561 0.923350 +0.225279 0.141700 0.920638 +0.224513 0.161782 0.917509 +0.223646 0.181799 0.913966 +0.222678 0.201744 0.910009 +0.221608 0.221608 0.905639 +0.201744 0.222678 0.910009 +0.181799 0.223646 0.913966 +0.161782 0.224513 0.917509 +0.141700 0.225279 0.920638 +0.121561 0.225942 0.923350 +0.101375 0.226504 0.925647 +0.081148 0.226964 0.927526 +0.060889 0.227322 0.928989 +0.040606 0.227578 0.930033 +0.020307 0.227731 0.930660 +0.000000 0.227782 0.930869 +0.248035 0.000000 0.925679 +0.247980 0.020194 0.925473 +0.247815 0.040380 0.924857 +0.247539 0.060551 0.923829 +0.247154 0.080699 0.922391 +0.246659 0.100816 0.920542 +0.246053 0.120894 0.918284 +0.245338 0.140927 0.915615 +0.244514 0.160905 0.912538 +0.243580 0.180822 0.909052 +0.242536 0.200669 0.905158 +0.241384 0.220438 0.900857 +0.240123 0.240123 0.896150 +0.220438 0.241384 0.900857 +0.200669 0.242536 0.905158 +0.180822 0.243580 0.909052 +0.160905 0.244514 0.912538 +0.140927 0.245338 0.915615 +0.120894 0.246053 0.918284 +0.100816 0.246659 0.920542 +0.080699 0.247154 0.922391 +0.060551 0.247539 0.923829 +0.040380 0.247815 0.924857 +0.020194 0.247980 0.925473 +0.000000 0.248035 0.925679 +0.268169 0.000000 0.920048 +0.268111 0.020071 0.919846 +0.267934 0.040135 0.919241 +0.267640 0.060184 0.918232 +0.267228 0.080211 0.916819 +0.266699 0.100209 0.915004 +0.266053 0.120171 0.912786 +0.265289 0.140088 0.910165 +0.264408 0.159954 0.907142 +0.263409 0.179760 0.903717 +0.262294 0.199501 0.899891 +0.261062 0.219168 0.895664 +0.259714 0.238753 0.891038 +0.258249 0.258249 0.886012 +0.238753 0.259714 0.891038 +0.219168 0.261062 0.895664 +0.199501 0.262294 0.899891 +0.179760 0.263409 0.903717 +0.159954 0.264408 0.907142 +0.140088 0.265289 0.910165 +0.120171 0.266053 0.912786 +0.100209 0.266699 0.915004 +0.080211 0.267228 0.916819 +0.060184 0.267640 0.918232 +0.040135 0.267934 0.919241 +0.020071 0.268111 0.919846 +0.000000 0.268169 0.920048 +0.288176 0.000000 0.913979 +0.288114 0.019939 0.913781 +0.287927 0.039871 0.913187 +0.287615 0.059789 0.912198 +0.287178 0.079686 0.910814 +0.286617 0.099555 0.909034 +0.285931 0.119390 0.906858 +0.285121 0.139183 0.904288 +0.284186 0.158928 0.901323 +0.283127 0.178616 0.897963 +0.281943 0.198242 0.894210 +0.280636 0.217797 0.890062 +0.279204 0.237275 0.885522 +0.277648 0.256668 0.880588 +0.275969 0.275969 0.875263 +0.256668 0.277648 0.880588 +0.237275 0.279204 0.885522 +0.217797 0.280636 0.890062 +0.198242 0.281943 0.894210 +0.178616 0.283127 0.897963 +0.158928 0.284186 0.901323 +0.139183 0.285121 0.904288 +0.119390 0.285931 0.906858 +0.099555 0.286617 0.909034 +0.079686 0.287178 0.910814 +0.059789 0.287615 0.912198 +0.039871 0.287927 0.913187 +0.019939 0.288114 0.913781 +0.000000 0.288176 0.913979 +0.308046 0.000000 0.907475 +0.307980 0.019797 0.907281 +0.307783 0.039587 0.906700 +0.307455 0.059365 0.905732 +0.306994 0.079123 0.904376 +0.306403 0.098854 0.902634 +0.305680 0.118554 0.900504 +0.304826 0.138213 0.897987 +0.303840 0.157827 0.895084 +0.302723 0.177389 0.891793 +0.301475 0.196891 0.888116 +0.300095 0.216326 0.884052 +0.298585 0.235689 0.879603 +0.296943 0.254971 0.874767 +0.295171 0.274167 0.869546 +0.293268 0.293268 0.863939 +0.274167 0.295171 0.869546 +0.254971 0.296943 0.874767 +0.235689 0.298585 0.879603 +0.216326 0.300095 0.884052 +0.196891 0.301475 0.888116 +0.177389 0.302723 0.891793 +0.157827 0.303840 0.895084 +0.138213 0.304826 0.897987 +0.118554 0.305680 0.900504 +0.098854 0.306403 0.902634 +0.079123 0.306994 0.904376 +0.059365 0.307455 0.905732 +0.039587 0.307783 0.906700 +0.019797 0.307980 0.907281 +0.000000 0.308046 0.907475 +0.327769 0.000000 0.900539 +0.327700 0.019646 0.900350 +0.327494 0.039285 0.899782 +0.327149 0.058913 0.898836 +0.326667 0.078522 0.897511 +0.326047 0.098107 0.895807 +0.325289 0.117661 0.893726 +0.324394 0.137179 0.891265 +0.323361 0.156653 0.888426 +0.322189 0.176079 0.885208 +0.320880 0.195449 0.881611 +0.319433 0.214756 0.877636 +0.317849 0.233995 0.873282 +0.316126 0.253159 0.868549 +0.314266 0.272241 0.863438 +0.312267 0.291234 0.857948 +0.310132 0.310132 0.852080 +0.291234 0.312267 0.857948 +0.272241 0.314266 0.863438 +0.253159 0.316126 0.868549 +0.233995 0.317849 0.873282 +0.214756 0.319433 0.877636 +0.195449 0.320880 0.881611 +0.176079 0.322189 0.885208 +0.156653 0.323361 0.888426 +0.137179 0.324394 0.891265 +0.117661 0.325289 0.893726 +0.098107 0.326047 0.895807 +0.078522 0.326667 0.897511 +0.058913 0.327149 0.898836 +0.039285 0.327494 0.899782 +0.019646 0.327700 0.900350 +0.000000 0.327769 0.900539 +0.347336 0.000000 0.893174 +0.347265 0.019485 0.892990 +0.347049 0.038965 0.892436 +0.346690 0.058433 0.891512 +0.346187 0.077884 0.890220 +0.345541 0.097313 0.888557 +0.344751 0.116713 0.886526 +0.343817 0.136080 0.884124 +0.342739 0.155406 0.881352 +0.341517 0.174687 0.878210 +0.340151 0.193916 0.874698 +0.338641 0.213087 0.870815 +0.336987 0.232194 0.866561 +0.335189 0.251232 0.861936 +0.333246 0.270192 0.856940 +0.331158 0.289070 0.851572 +0.328926 0.307858 0.845833 +0.326550 0.326550 0.839722 +0.307858 0.328926 0.845833 +0.289070 0.331158 0.851572 +0.270192 0.333246 0.856940 +0.251232 0.335189 0.861936 +0.232194 0.336987 0.866561 +0.213087 0.338641 0.870815 +0.193916 0.340151 0.874698 +0.174687 0.341517 0.878210 +0.155406 0.342739 0.881352 +0.136080 0.343817 0.884124 +0.116713 0.344751 0.886526 +0.097313 0.345541 0.888557 +0.077884 0.346187 0.890220 +0.058433 0.346690 0.891512 +0.038965 0.347049 0.892436 +0.019485 0.347265 0.892990 +0.000000 0.347336 0.893174 +0.366738 0.000000 0.885385 +0.366664 0.019315 0.885205 +0.366440 0.038625 0.884665 +0.366068 0.057925 0.883766 +0.365546 0.077209 0.882506 +0.364875 0.096473 0.880887 +0.364055 0.115710 0.878907 +0.363086 0.134917 0.876567 +0.361967 0.154086 0.873865 +0.360698 0.173213 0.870802 +0.359280 0.192293 0.867378 +0.357711 0.211319 0.863591 +0.355992 0.230287 0.859442 +0.354123 0.249189 0.854929 +0.352104 0.268021 0.850053 +0.349933 0.286775 0.844813 +0.347612 0.305447 0.839209 +0.345139 0.324029 0.833239 +0.342515 0.342515 0.826904 +0.324029 0.345139 0.833239 +0.305447 0.347612 0.839209 +0.286775 0.349933 0.844813 +0.268021 0.352104 0.850053 +0.249189 0.354123 0.854929 +0.230287 0.355992 0.859442 +0.211319 0.357711 0.863591 +0.192293 0.359280 0.867378 +0.173213 0.360698 0.870802 +0.154086 0.361967 0.873865 +0.134917 0.363086 0.876567 +0.115710 0.364055 0.878907 +0.096473 0.364875 0.880887 +0.077209 0.365546 0.882506 +0.057925 0.366068 0.883766 +0.038625 0.366440 0.884665 +0.019315 0.366664 0.885205 +0.000000 0.366738 0.885385 +0.385966 0.000000 0.877174 +0.385889 0.019136 0.876999 +0.385658 0.038268 0.876474 +0.385273 0.057390 0.875599 +0.384734 0.076498 0.874374 +0.384041 0.095587 0.872799 +0.383193 0.114653 0.870873 +0.382192 0.133690 0.868596 +0.381035 0.152693 0.865968 +0.379723 0.171659 0.862987 +0.378257 0.190581 0.859653 +0.376634 0.209454 0.855966 +0.374856 0.228273 0.851926 +0.372922 0.247032 0.847530 +0.370831 0.265727 0.842779 +0.368584 0.284351 0.837671 +0.366180 0.302898 0.832207 +0.363618 0.321363 0.826384 +0.360898 0.339739 0.820203 +0.358020 0.358020 0.813662 +0.339739 0.360898 0.820203 +0.321363 0.363618 0.826384 +0.302898 0.366180 0.832207 +0.284351 0.368584 0.837671 +0.265727 0.370831 0.842779 +0.247032 0.372922 0.847530 +0.228273 0.374856 0.851926 +0.209454 0.376634 0.855966 +0.190581 0.378257 0.859653 +0.171659 0.379723 0.862987 +0.152693 0.381035 0.865968 +0.133690 0.382192 0.868596 +0.114653 0.383193 0.870873 +0.095587 0.384041 0.872799 +0.076498 0.384734 0.874374 +0.057390 0.385273 0.875599 +0.038268 0.385658 0.876474 +0.019136 0.385889 0.876999 +0.000000 0.385966 0.877174 +0.405009 0.000000 0.868545 +0.404930 0.018948 0.868375 +0.404692 0.037892 0.867866 +0.404296 0.056827 0.867017 +0.403742 0.075750 0.865827 +0.403029 0.094656 0.864298 +0.402157 0.113541 0.862428 +0.401125 0.132400 0.860216 +0.399935 0.151229 0.857662 +0.398584 0.170024 0.854766 +0.397073 0.188779 0.851527 +0.395402 0.207490 0.847943 +0.393570 0.226153 0.844014 +0.391577 0.244762 0.839739 +0.389422 0.263311 0.835117 +0.387104 0.281797 0.830147 +0.384623 0.300213 0.824827 +0.381979 0.318553 0.819157 +0.379171 0.336812 0.813136 +0.376199 0.354983 0.806761 +0.373062 0.373062 0.800033 +0.354983 0.376199 0.806761 +0.336812 0.379171 0.813136 +0.318553 0.381979 0.819157 +0.300213 0.384623 0.824827 +0.281797 0.387104 0.830147 +0.263311 0.389422 0.835117 +0.244762 0.391577 0.839739 +0.226153 0.393570 0.844014 +0.207490 0.395402 0.847943 +0.188779 0.397073 0.851527 +0.170024 0.398584 0.854766 +0.151229 0.399935 0.857662 +0.132400 0.401125 0.860216 +0.113541 0.402157 0.862428 +0.094656 0.403029 0.864298 +0.075750 0.403742 0.865827 +0.056827 0.404296 0.867017 +0.037892 0.404692 0.867866 +0.018948 0.404930 0.868375 +0.000000 0.405009 0.868545 +0.423860 0.000000 0.859503 +0.423779 0.018751 0.859339 +0.423535 0.037498 0.858845 +0.423130 0.056238 0.858022 +0.422561 0.074966 0.856869 +0.421830 0.093680 0.855387 +0.420936 0.112375 0.853573 +0.419878 0.131047 0.851429 +0.418657 0.149693 0.848953 +0.417272 0.168308 0.846144 +0.415722 0.186889 0.843001 +0.414007 0.205430 0.839523 +0.412126 0.223928 0.835710 +0.410080 0.242377 0.831559 +0.407866 0.260774 0.827070 +0.405485 0.279113 0.822241 +0.402935 0.297390 0.817071 +0.400216 0.315598 0.811559 +0.397328 0.333733 0.805702 +0.394270 0.351788 0.799499 +0.391040 0.369759 0.792950 +0.387638 0.387638 0.786051 +0.369759 0.391040 0.792950 +0.351788 0.394270 0.799499 +0.333733 0.397328 0.805702 +0.315598 0.400216 0.811559 +0.297390 0.402935 0.817071 +0.279113 0.405485 0.822241 +0.260774 0.407866 0.827070 +0.242377 0.410080 0.831559 +0.223928 0.412126 0.835710 +0.205430 0.414007 0.839523 +0.186889 0.415722 0.843001 +0.168308 0.417272 0.846144 +0.149693 0.418657 0.848953 +0.131047 0.419878 0.851429 +0.112375 0.420936 0.853573 +0.093680 0.421830 0.855387 +0.074966 0.422561 0.856869 +0.056238 0.423130 0.858022 +0.037498 0.423535 0.858845 +0.018751 0.423779 0.859339 +0.000000 0.423860 0.859503 +0.442509 0.000000 0.850052 +0.442426 0.018545 0.849893 +0.442178 0.037086 0.849415 +0.441763 0.055621 0.848619 +0.441183 0.074147 0.847504 +0.440436 0.092660 0.846069 +0.439522 0.111156 0.844315 +0.438442 0.129633 0.842239 +0.437194 0.148087 0.839842 +0.435778 0.166514 0.837122 +0.434194 0.184911 0.834078 +0.432440 0.203273 0.830710 +0.430516 0.221598 0.827014 +0.428422 0.239880 0.822991 +0.426156 0.258116 0.818639 +0.423718 0.276301 0.813955 +0.421107 0.294430 0.808939 +0.418322 0.312498 0.803588 +0.415361 0.330502 0.797901 +0.412225 0.348434 0.791876 +0.408911 0.366290 0.785510 +0.405419 0.384063 0.778803 +0.401748 0.401748 0.771751 +0.384063 0.405419 0.778803 +0.366290 0.408911 0.785510 +0.348434 0.412225 0.791876 +0.330502 0.415361 0.797901 +0.312498 0.418322 0.803588 +0.294430 0.421107 0.808939 +0.276301 0.423718 0.813955 +0.258116 0.426156 0.818639 +0.239880 0.428422 0.822991 +0.221598 0.430516 0.827014 +0.203273 0.432440 0.830710 +0.184911 0.434194 0.834078 +0.166514 0.435778 0.837122 +0.148087 0.437194 0.839842 +0.129633 0.438442 0.842239 +0.111156 0.439522 0.844315 +0.092660 0.440436 0.846069 +0.074147 0.441183 0.847504 +0.055621 0.441763 0.848619 +0.037086 0.442178 0.849415 +0.018545 0.442426 0.849893 +0.000000 0.442509 0.850052 +0.460948 0.000000 0.840196 +0.460863 0.018330 0.840043 +0.460610 0.036657 0.839582 +0.460188 0.054979 0.838813 +0.459598 0.073292 0.837736 +0.458837 0.091595 0.836350 +0.457907 0.109884 0.834655 +0.456807 0.128157 0.832650 +0.455536 0.146410 0.830333 +0.454094 0.164641 0.827704 +0.452480 0.182845 0.824762 +0.450693 0.201021 0.821504 +0.448732 0.219164 0.817930 +0.446596 0.237270 0.814038 +0.444285 0.255337 0.809825 +0.441797 0.273359 0.805290 +0.439132 0.291333 0.800432 +0.436287 0.309255 0.795247 +0.433263 0.327118 0.789734 +0.430057 0.344920 0.783890 +0.426668 0.362654 0.777714 +0.423096 0.380315 0.771202 +0.419339 0.397897 0.764353 +0.415394 0.415394 0.757164 +0.397897 0.419339 0.764353 +0.380315 0.423096 0.771202 +0.362654 0.426668 0.777714 +0.344920 0.430057 0.783890 +0.327118 0.433263 0.789734 +0.309255 0.436287 0.795247 +0.291333 0.439132 0.800432 +0.273359 0.441797 0.805290 +0.255337 0.444285 0.809825 +0.237270 0.446596 0.814038 +0.219164 0.448732 0.817930 +0.201021 0.450693 0.821504 +0.182845 0.452480 0.824762 +0.164641 0.454094 0.827704 +0.146410 0.455536 0.830333 +0.128157 0.456807 0.832650 +0.109884 0.457907 0.834655 +0.091595 0.458837 0.836350 +0.073292 0.459598 0.837736 +0.054979 0.460188 0.838813 +0.036657 0.460610 0.839582 +0.018330 0.460863 0.840043 +0.000000 0.460948 0.840196 +0.479167 0.000000 0.829941 +0.479081 0.018106 0.829793 +0.478824 0.036210 0.829348 +0.478397 0.054310 0.828607 +0.477797 0.072403 0.827569 +0.477026 0.090487 0.826233 +0.476082 0.108560 0.824599 +0.474966 0.126620 0.822665 +0.473676 0.144664 0.820431 +0.472212 0.162689 0.817894 +0.470572 0.180693 0.815055 +0.468757 0.198673 0.811911 +0.466764 0.216626 0.808460 +0.464594 0.234549 0.804700 +0.462244 0.252438 0.800630 +0.459714 0.270290 0.796247 +0.457001 0.288100 0.791550 +0.454106 0.305866 0.786534 +0.451026 0.323583 0.781199 +0.447759 0.341247 0.775542 +0.444305 0.358851 0.769559 +0.440662 0.376393 0.763249 +0.436828 0.393865 0.756607 +0.432801 0.411263 0.749633 +0.428580 0.428580 0.742322 +0.411263 0.432801 0.749633 +0.393865 0.436828 0.756607 +0.376393 0.440662 0.763249 +0.358851 0.444305 0.769559 +0.341247 0.447759 0.775542 +0.323583 0.451026 0.781199 +0.305866 0.454106 0.786534 +0.288100 0.457001 0.791550 +0.270290 0.459714 0.796247 +0.252438 0.462244 0.800630 +0.234549 0.464594 0.804700 +0.216626 0.466764 0.808460 +0.198673 0.468757 0.811911 +0.180693 0.470572 0.815055 +0.162689 0.472212 0.817894 +0.144664 0.473676 0.820431 +0.126620 0.474966 0.822665 +0.108560 0.476082 0.824599 +0.090487 0.477026 0.826233 +0.072403 0.477797 0.827569 +0.054310 0.478397 0.828607 +0.036210 0.478824 0.829348 +0.018106 0.479081 0.829793 +0.000000 0.479167 0.829941 +0.497158 0.000000 0.819291 +0.497071 0.017874 0.819148 +0.496812 0.035746 0.818720 +0.496379 0.053615 0.818007 +0.495773 0.071479 0.817008 +0.494993 0.089336 0.815723 +0.494038 0.107185 0.814150 +0.492909 0.125023 0.812289 +0.491604 0.142849 0.810138 +0.490122 0.160661 0.807695 +0.488462 0.178455 0.804960 +0.486624 0.196231 0.801931 +0.484606 0.213986 0.798605 +0.482406 0.231716 0.794981 +0.480025 0.249419 0.791056 +0.477459 0.267092 0.786828 +0.474707 0.284732 0.782294 +0.471769 0.302334 0.777451 +0.468642 0.319896 0.772298 +0.465324 0.337413 0.766830 +0.461814 0.354881 0.761045 +0.458109 0.372295 0.754940 +0.454208 0.389651 0.748512 +0.450109 0.406942 0.741757 +0.445810 0.424163 0.734672 +0.441308 0.441308 0.727253 +0.424163 0.445810 0.734672 +0.406942 0.450109 0.741757 +0.389651 0.454208 0.748512 +0.372295 0.458109 0.754940 +0.354881 0.461814 0.761045 +0.337413 0.465324 0.766830 +0.319896 0.468642 0.772298 +0.302334 0.471769 0.777451 +0.284732 0.474707 0.782294 +0.267092 0.477459 0.786828 +0.249419 0.480025 0.791056 +0.231716 0.482406 0.794981 +0.213986 0.484606 0.798605 +0.196231 0.486624 0.801931 +0.178455 0.488462 0.804960 +0.160661 0.490122 0.807695 +0.142849 0.491604 0.810138 +0.125023 0.492909 0.812289 +0.107185 0.494038 0.814150 +0.089336 0.494993 0.815723 +0.071479 0.495773 0.817008 +0.053615 0.496379 0.818007 +0.035746 0.496812 0.818720 +0.017874 0.497071 0.819148 +0.000000 0.497158 0.819291 +0.514912 0.000000 0.808250 +0.514825 0.017633 0.808113 +0.514563 0.035265 0.807703 +0.514127 0.052895 0.807018 +0.513516 0.070521 0.806059 +0.512730 0.088143 0.804824 +0.511767 0.105758 0.803313 +0.510628 0.123367 0.801525 +0.509311 0.140966 0.799458 +0.507816 0.158555 0.797111 +0.506141 0.176132 0.794482 +0.504285 0.193696 0.791569 +0.502247 0.211243 0.788370 +0.500025 0.228772 0.784883 +0.497618 0.246281 0.781104 +0.495025 0.263767 0.777033 +0.492242 0.281227 0.772665 +0.489269 0.298658 0.767999 +0.486103 0.316057 0.763030 +0.482743 0.333420 0.757755 +0.479186 0.350743 0.752172 +0.475430 0.368023 0.746276 +0.471473 0.385253 0.740065 +0.467312 0.402430 0.733534 +0.462946 0.419549 0.726679 +0.458371 0.436602 0.719498 +0.453585 0.453585 0.711986 +0.436602 0.458371 0.719498 +0.419549 0.462946 0.726679 +0.402430 0.467312 0.733534 +0.385253 0.471473 0.740065 +0.368023 0.475430 0.746276 +0.350743 0.479186 0.752172 +0.333420 0.482743 0.757755 +0.316057 0.486103 0.763030 +0.298658 0.489269 0.767999 +0.281227 0.492242 0.772665 +0.263767 0.495025 0.777033 +0.246281 0.497618 0.781104 +0.228772 0.500025 0.784883 +0.211243 0.502247 0.788370 +0.193696 0.504285 0.791569 +0.176132 0.506141 0.794482 +0.158555 0.507816 0.797111 +0.140966 0.509311 0.799458 +0.123367 0.510628 0.801525 +0.105758 0.511767 0.803313 +0.088143 0.512730 0.804824 +0.070521 0.513516 0.806059 +0.052895 0.514127 0.807018 +0.035265 0.514563 0.807703 +0.017633 0.514825 0.808113 +0.000000 0.514912 0.808250 +0.532421 0.000000 0.796825 +0.532334 0.017384 0.796694 +0.532071 0.034767 0.796300 +0.531633 0.052149 0.795644 +0.531018 0.069529 0.794725 +0.530228 0.086907 0.793542 +0.529260 0.104281 0.792094 +0.528114 0.121651 0.790379 +0.526790 0.139016 0.788397 +0.525286 0.156374 0.786146 +0.523600 0.173725 0.783623 +0.521732 0.191067 0.780827 +0.519680 0.208399 0.777756 +0.517443 0.225719 0.774407 +0.515017 0.243025 0.770778 +0.512403 0.260316 0.766865 +0.509597 0.277588 0.762666 +0.506597 0.294839 0.758177 +0.503402 0.312066 0.753395 +0.500009 0.329267 0.748316 +0.496415 0.346437 0.742937 +0.492618 0.363574 0.737255 +0.488615 0.380672 0.731264 +0.484404 0.397727 0.724961 +0.479981 0.414735 0.718342 +0.475344 0.431690 0.711403 +0.470491 0.448586 0.704139 +0.465417 0.465417 0.696546 +0.448586 0.470491 0.704139 +0.431690 0.475344 0.711403 +0.414735 0.479981 0.718342 +0.397727 0.484404 0.724961 +0.380672 0.488615 0.731264 +0.363574 0.492618 0.737255 +0.346437 0.496415 0.742937 +0.329267 0.500009 0.748316 +0.312066 0.503402 0.753395 +0.294839 0.506597 0.758177 +0.277588 0.509597 0.762666 +0.260316 0.512403 0.766865 +0.243025 0.515017 0.770778 +0.225719 0.517443 0.774407 +0.208399 0.519680 0.777756 +0.191067 0.521732 0.780827 +0.173725 0.523600 0.783623 +0.156374 0.525286 0.786146 +0.139016 0.526790 0.788397 +0.121651 0.528114 0.790379 +0.104281 0.529260 0.792094 +0.086907 0.530228 0.793542 +0.069529 0.531018 0.794725 +0.052149 0.531633 0.795644 +0.034767 0.532071 0.796300 +0.017384 0.532334 0.796694 +0.000000 0.532421 0.796825 +0.549677 0.000000 0.785021 +0.549590 0.017126 0.784895 +0.549326 0.034253 0.784519 +0.548887 0.051379 0.783892 +0.548271 0.068505 0.783012 +0.547479 0.085630 0.781881 +0.546509 0.102754 0.780495 +0.545360 0.119877 0.778855 +0.544032 0.136999 0.776958 +0.542523 0.154118 0.774803 +0.540832 0.171234 0.772388 +0.538957 0.188347 0.769710 +0.536897 0.205455 0.766768 +0.534649 0.222557 0.763558 +0.532213 0.239652 0.760079 +0.529585 0.256738 0.756326 +0.526763 0.273813 0.752296 +0.523746 0.290876 0.747987 +0.520530 0.307924 0.743394 +0.517113 0.324954 0.738514 +0.513492 0.341963 0.733342 +0.509664 0.358948 0.727875 +0.505626 0.375906 0.722108 +0.501375 0.392832 0.716037 +0.496908 0.409721 0.709658 +0.492221 0.426570 0.702965 +0.487312 0.443371 0.695954 +0.482177 0.460121 0.688620 +0.476812 0.476812 0.680958 +0.460121 0.482177 0.688620 +0.443371 0.487312 0.695954 +0.426570 0.492221 0.702965 +0.409721 0.496908 0.709658 +0.392832 0.501375 0.716037 +0.375906 0.505626 0.722108 +0.358948 0.509664 0.727875 +0.341963 0.513492 0.733342 +0.324954 0.517113 0.738514 +0.307924 0.520530 0.743394 +0.290876 0.523746 0.747987 +0.273813 0.526763 0.752296 +0.256738 0.529585 0.756326 +0.239652 0.532213 0.760079 +0.222557 0.534649 0.763558 +0.205455 0.536897 0.766768 +0.188347 0.538957 0.769710 +0.171234 0.540832 0.772388 +0.154118 0.542523 0.774803 +0.136999 0.544032 0.776958 +0.119877 0.545360 0.778855 +0.102754 0.546509 0.780495 +0.085630 0.547479 0.781881 +0.068505 0.548271 0.783012 +0.051379 0.548887 0.783892 +0.034253 0.549326 0.784519 +0.017126 0.549590 0.784895 +0.000000 0.549677 0.785021 +0.566672 0.000000 0.772843 +0.566584 0.016861 0.772723 +0.566321 0.033722 0.772364 +0.565882 0.050584 0.771765 +0.565267 0.067447 0.770926 +0.564474 0.084312 0.769846 +0.563505 0.101178 0.768523 +0.562356 0.118046 0.766957 +0.561028 0.134916 0.765146 +0.559519 0.151787 0.763087 +0.557827 0.168661 0.760780 +0.555950 0.185535 0.758221 +0.553888 0.202411 0.755408 +0.551637 0.219287 0.752338 +0.549196 0.236162 0.749009 +0.546562 0.253035 0.745417 +0.543733 0.269905 0.741558 +0.540706 0.286771 0.737430 +0.537478 0.303630 0.733027 +0.534046 0.320480 0.728347 +0.530408 0.337320 0.723385 +0.526559 0.354145 0.718136 +0.522497 0.370954 0.712596 +0.518218 0.387742 0.706760 +0.513718 0.404505 0.700623 +0.508994 0.421239 0.694180 +0.504042 0.437939 0.687426 +0.498857 0.454599 0.680356 +0.493437 0.471214 0.672963 +0.487777 0.487777 0.665244 +0.471214 0.493437 0.672963 +0.454599 0.498857 0.680356 +0.437939 0.504042 0.687426 +0.421239 0.508994 0.694180 +0.404505 0.513718 0.700623 +0.387742 0.518218 0.706760 +0.370954 0.522497 0.712596 +0.354145 0.526559 0.718136 +0.337320 0.530408 0.723385 +0.320480 0.534046 0.728347 +0.303630 0.537478 0.733027 +0.286771 0.540706 0.737430 +0.269905 0.543733 0.741558 +0.253035 0.546562 0.745417 +0.236162 0.549196 0.749009 +0.219287 0.551637 0.752338 +0.202411 0.553888 0.755408 +0.185535 0.555950 0.758221 +0.168661 0.557827 0.760780 +0.151787 0.559519 0.763087 +0.134916 0.561028 0.765146 +0.118046 0.562356 0.766957 +0.101178 0.563505 0.768523 +0.084312 0.564474 0.769846 +0.067447 0.565267 0.770926 +0.050584 0.565882 0.771765 +0.033722 0.566321 0.772364 +0.016861 0.566584 0.772723 +0.000000 0.566672 0.772843 +0.583396 0.000000 0.760297 +0.583309 0.016587 0.760183 +0.583047 0.033175 0.759841 +0.582609 0.049765 0.759271 +0.581996 0.066358 0.758472 +0.581207 0.082954 0.757443 +0.580240 0.099553 0.756183 +0.579095 0.116158 0.754691 +0.577771 0.132768 0.752965 +0.576265 0.149384 0.751003 +0.574577 0.166006 0.748803 +0.572704 0.182634 0.746363 +0.570645 0.199268 0.743679 +0.568397 0.215909 0.740750 +0.565959 0.232555 0.737572 +0.563326 0.249207 0.734141 +0.560497 0.265863 0.730454 +0.557468 0.282523 0.726507 +0.554237 0.299185 0.722296 +0.550801 0.315847 0.717817 +0.547155 0.332508 0.713066 +0.543296 0.349165 0.708037 +0.539220 0.365816 0.702726 +0.534924 0.382457 0.697127 +0.530403 0.399085 0.691235 +0.525654 0.415696 0.685046 +0.520671 0.432285 0.678552 +0.515452 0.448849 0.671749 +0.509990 0.465380 0.664631 +0.504281 0.481873 0.657192 +0.498322 0.498322 0.649426 +0.481873 0.504281 0.657192 +0.465380 0.509990 0.664631 +0.448849 0.515452 0.671749 +0.432285 0.520671 0.678552 +0.415696 0.525654 0.685046 +0.399085 0.530403 0.691235 +0.382457 0.534924 0.697127 +0.365816 0.539220 0.702726 +0.349165 0.543296 0.708037 +0.332508 0.547155 0.713066 +0.315847 0.550801 0.717817 +0.299185 0.554237 0.722296 +0.282523 0.557468 0.726507 +0.265863 0.560497 0.730454 +0.249207 0.563326 0.734141 +0.232555 0.565959 0.737572 +0.215909 0.568397 0.740750 +0.199268 0.570645 0.743679 +0.182634 0.572704 0.746363 +0.166006 0.574577 0.748803 +0.149384 0.576265 0.751003 +0.132768 0.577771 0.752965 +0.116158 0.579095 0.754691 +0.099553 0.580240 0.756183 +0.082954 0.581207 0.757443 +0.066358 0.581996 0.758472 +0.049765 0.582609 0.759271 +0.033175 0.583047 0.759841 +0.016587 0.583309 0.760183 +0.000000 0.583396 0.760297 +0.599843 0.000000 0.747389 +0.599756 0.016306 0.747281 +0.599496 0.032613 0.746956 +0.599061 0.048923 0.746415 +0.598452 0.065236 0.745656 +0.597667 0.081556 0.744678 +0.596706 0.097881 0.743481 +0.595568 0.114214 0.742062 +0.594251 0.130556 0.740421 +0.592753 0.146908 0.738555 +0.591074 0.163270 0.736463 +0.589210 0.179643 0.734141 +0.587160 0.196028 0.731586 +0.584922 0.212425 0.728797 +0.582492 0.228834 0.725769 +0.579867 0.245256 0.722500 +0.577046 0.261689 0.718985 +0.574025 0.278134 0.715220 +0.570800 0.294589 0.711202 +0.567367 0.311054 0.706925 +0.563723 0.327527 0.702385 +0.559865 0.344007 0.697577 +0.555787 0.360491 0.692496 +0.551485 0.376976 0.687136 +0.546955 0.393460 0.681492 +0.542193 0.409939 0.675559 +0.537193 0.426410 0.669329 +0.531951 0.442867 0.662797 +0.526461 0.459306 0.655957 +0.520719 0.475721 0.648802 +0.514718 0.492107 0.641326 +0.508455 0.508455 0.633522 +0.492107 0.514718 0.641326 +0.475721 0.520719 0.648802 +0.459306 0.526461 0.655957 +0.442867 0.531951 0.662797 +0.426410 0.537193 0.669329 +0.409939 0.542193 0.675559 +0.393460 0.546955 0.681492 +0.376976 0.551485 0.687136 +0.360491 0.555787 0.692496 +0.344007 0.559865 0.697577 +0.327527 0.563723 0.702385 +0.311054 0.567367 0.706925 +0.294589 0.570800 0.711202 +0.278134 0.574025 0.715220 +0.261689 0.577046 0.718985 +0.245256 0.579867 0.722500 +0.228834 0.582492 0.725769 +0.212425 0.584922 0.728797 +0.196028 0.587160 0.731586 +0.179643 0.589210 0.734141 +0.163270 0.591074 0.736463 +0.146908 0.592753 0.738555 +0.130556 0.594251 0.740421 +0.114214 0.595568 0.742062 +0.097881 0.596706 0.743481 +0.081556 0.597667 0.744678 +0.065236 0.598452 0.745656 +0.048923 0.599061 0.746415 +0.032613 0.599496 0.746956 +0.016306 0.599756 0.747281 +0.000000 0.599843 0.747389 +0.616005 0.000000 0.734126 +0.615919 0.016016 0.734023 +0.615661 0.032035 0.733716 +0.615230 0.048057 0.733202 +0.614626 0.064084 0.732483 +0.613848 0.080118 0.731556 +0.612896 0.096162 0.730421 +0.611767 0.112215 0.729076 +0.610461 0.128281 0.727519 +0.608976 0.144360 0.725749 +0.607309 0.160454 0.723763 +0.605459 0.176564 0.721559 +0.603424 0.192691 0.719133 +0.601201 0.208836 0.716483 +0.598786 0.224999 0.713606 +0.596178 0.241181 0.710497 +0.593372 0.257383 0.707154 +0.590366 0.273604 0.703571 +0.587155 0.289844 0.699744 +0.583736 0.306102 0.695670 +0.580105 0.322378 0.691342 +0.576257 0.338670 0.686756 +0.572187 0.354978 0.681906 +0.567891 0.371298 0.676787 +0.563365 0.387628 0.671392 +0.558602 0.403966 0.665716 +0.553598 0.420309 0.659752 +0.548347 0.436651 0.653494 +0.542843 0.452989 0.646935 +0.537081 0.469318 0.640068 +0.531055 0.485631 0.632887 +0.524759 0.501923 0.625383 +0.518186 0.518186 0.617550 +0.501923 0.524759 0.625383 +0.485631 0.531055 0.632887 +0.469318 0.537081 0.640068 +0.452989 0.542843 0.646935 +0.436651 0.548347 0.653494 +0.420309 0.553598 0.659752 +0.403966 0.558602 0.665716 +0.387628 0.563365 0.671392 +0.371298 0.567891 0.676787 +0.354978 0.572187 0.681906 +0.338670 0.576257 0.686756 +0.322378 0.580105 0.691342 +0.306102 0.583736 0.695670 +0.289844 0.587155 0.699744 +0.273604 0.590366 0.703571 +0.257383 0.593372 0.707154 +0.241181 0.596178 0.710497 +0.224999 0.598786 0.713606 +0.208836 0.601201 0.716483 +0.192691 0.603424 0.719133 +0.176564 0.605459 0.721559 +0.160454 0.607309 0.723763 +0.144360 0.608976 0.725749 +0.128281 0.610461 0.727519 +0.112215 0.611767 0.729076 +0.096162 0.612896 0.730421 +0.080118 0.613848 0.731556 +0.064084 0.614626 0.732483 +0.048057 0.615230 0.733202 +0.032035 0.615661 0.733716 +0.016016 0.615919 0.734023 +0.000000 0.616005 0.734126 +0.631873 0.000000 0.720513 +0.631788 0.015720 0.720416 +0.631533 0.031441 0.720125 +0.631107 0.047168 0.719640 +0.630511 0.062901 0.718959 +0.629742 0.078643 0.718083 +0.628800 0.094396 0.717009 +0.627684 0.110162 0.715737 +0.626393 0.125944 0.714264 +0.624923 0.141743 0.712589 +0.623275 0.157560 0.710708 +0.621444 0.173398 0.708621 +0.619429 0.189259 0.706323 +0.617226 0.205142 0.703812 +0.614834 0.221051 0.701084 +0.612248 0.236985 0.698135 +0.609466 0.252946 0.694962 +0.606483 0.268933 0.691561 +0.603295 0.284948 0.687926 +0.599899 0.300991 0.684053 +0.596289 0.317060 0.679937 +0.592462 0.333156 0.675573 +0.588412 0.349277 0.670955 +0.584133 0.365422 0.666076 +0.579622 0.381589 0.660932 +0.574871 0.397776 0.655515 +0.569876 0.413980 0.649819 +0.564630 0.430198 0.643837 +0.559126 0.446425 0.637562 +0.553360 0.462658 0.630986 +0.547323 0.478891 0.624102 +0.541010 0.495117 0.616903 +0.534413 0.511332 0.609381 +0.527526 0.527526 0.601528 +0.511332 0.534413 0.609381 +0.495117 0.541010 0.616903 +0.478891 0.547323 0.624102 +0.462658 0.553360 0.630986 +0.446425 0.559126 0.637562 +0.430198 0.564630 0.643837 +0.413980 0.569876 0.649819 +0.397776 0.574871 0.655515 +0.381589 0.579622 0.660932 +0.365422 0.584133 0.666076 +0.349277 0.588412 0.670955 +0.333156 0.592462 0.675573 +0.317060 0.596289 0.679937 +0.300991 0.599899 0.684053 +0.284948 0.603295 0.687926 +0.268933 0.606483 0.691561 +0.252946 0.609466 0.694962 +0.236985 0.612248 0.698135 +0.221051 0.614834 0.701084 +0.205142 0.617226 0.703812 +0.189259 0.619429 0.706323 +0.173398 0.621444 0.708621 +0.157560 0.623275 0.710708 +0.141743 0.624923 0.712589 +0.125944 0.626393 0.714264 +0.110162 0.627684 0.715737 +0.094396 0.628800 0.717009 +0.078643 0.629742 0.718083 +0.062901 0.630511 0.718959 +0.047168 0.631107 0.719640 +0.031441 0.631533 0.720125 +0.015720 0.631788 0.720416 +0.000000 0.631873 0.720513 +0.647441 0.000000 0.706557 +0.647357 0.015415 0.706466 +0.647105 0.030833 0.706192 +0.646686 0.046256 0.705734 +0.646098 0.061688 0.705092 +0.645340 0.077130 0.704265 +0.644412 0.092585 0.703252 +0.643312 0.108056 0.702052 +0.642038 0.123546 0.700661 +0.640589 0.139056 0.699080 +0.638962 0.154589 0.697304 +0.637155 0.170147 0.695332 +0.635165 0.185732 0.693161 +0.632990 0.201346 0.690787 +0.630626 0.216991 0.688207 +0.628069 0.232668 0.685418 +0.625317 0.248378 0.682414 +0.622365 0.264124 0.679193 +0.619209 0.279904 0.675749 +0.615845 0.295721 0.672077 +0.612267 0.311574 0.668172 +0.608470 0.327463 0.664029 +0.604450 0.343388 0.659642 +0.600201 0.359348 0.655004 +0.595716 0.375341 0.650110 +0.590991 0.391367 0.644953 +0.586017 0.407423 0.639526 +0.580790 0.423506 0.633821 +0.575301 0.439612 0.627831 +0.569545 0.455739 0.621549 +0.563513 0.471881 0.614967 +0.557199 0.488033 0.608076 +0.550594 0.504188 0.600868 +0.543692 0.520341 0.593335 +0.536483 0.536483 0.585469 +0.520341 0.543692 0.593335 +0.504188 0.550594 0.600868 +0.488033 0.557199 0.608076 +0.471881 0.563513 0.614967 +0.455739 0.569545 0.621549 +0.439612 0.575301 0.627831 +0.423506 0.580790 0.633821 +0.407423 0.586017 0.639526 +0.391367 0.590991 0.644953 +0.375341 0.595716 0.650110 +0.359348 0.600201 0.655004 +0.343388 0.604450 0.659642 +0.327463 0.608470 0.664029 +0.311574 0.612267 0.668172 +0.295721 0.615845 0.672077 +0.279904 0.619209 0.675749 +0.264124 0.622365 0.679193 +0.248378 0.625317 0.682414 +0.232668 0.628069 0.685418 +0.216991 0.630626 0.688207 +0.201346 0.632990 0.690787 +0.185732 0.635165 0.693161 +0.170147 0.637155 0.695332 +0.154589 0.638962 0.697304 +0.139056 0.640589 0.699080 +0.123546 0.642038 0.700661 +0.108056 0.643312 0.702052 +0.092585 0.644412 0.703252 +0.077130 0.645340 0.704265 +0.061688 0.646098 0.705092 +0.046256 0.646686 0.705734 +0.030833 0.647105 0.706192 +0.015415 0.647357 0.706466 +0.000000 0.647441 0.706557 +0.662700 0.000000 0.692265 +0.662618 0.015103 0.692179 +0.662371 0.030210 0.691921 +0.661958 0.045323 0.691491 +0.661381 0.060445 0.690887 +0.660636 0.075579 0.690109 +0.659723 0.090729 0.689156 +0.658642 0.105897 0.688026 +0.657389 0.121087 0.686717 +0.655963 0.136300 0.685228 +0.654362 0.151541 0.683556 +0.652584 0.166810 0.681698 +0.650624 0.182112 0.679651 +0.648482 0.197448 0.677413 +0.646152 0.212820 0.674980 +0.643632 0.228231 0.672347 +0.640918 0.243682 0.669512 +0.638005 0.259175 0.666469 +0.634889 0.274712 0.663214 +0.631565 0.290293 0.659741 +0.628028 0.305920 0.656046 +0.624273 0.321592 0.652124 +0.620293 0.337310 0.647967 +0.616084 0.353074 0.643570 +0.611638 0.368884 0.638926 +0.606950 0.384738 0.634028 +0.602012 0.400634 0.628870 +0.596817 0.416571 0.623443 +0.591357 0.432546 0.617740 +0.585626 0.448556 0.611753 +0.579615 0.464597 0.605474 +0.573316 0.480663 0.598894 +0.566721 0.496751 0.592004 +0.559820 0.512852 0.584796 +0.552606 0.528961 0.577260 +0.545069 0.545069 0.569387 +0.528961 0.552606 0.577260 +0.512852 0.559820 0.584796 +0.496751 0.566721 0.592004 +0.480663 0.573316 0.598894 +0.464597 0.579615 0.605474 +0.448556 0.585626 0.611753 +0.432546 0.591357 0.617740 +0.416571 0.596817 0.623443 +0.400634 0.602012 0.628870 +0.384738 0.606950 0.634028 +0.368884 0.611638 0.638926 +0.353074 0.616084 0.643570 +0.337310 0.620293 0.647967 +0.321592 0.624273 0.652124 +0.305920 0.628028 0.656046 +0.290293 0.631565 0.659741 +0.274712 0.634889 0.663214 +0.259175 0.638005 0.666469 +0.243682 0.640918 0.669512 +0.228231 0.643632 0.672347 +0.212820 0.646152 0.674980 +0.197448 0.648482 0.677413 +0.182112 0.650624 0.679651 +0.166810 0.652584 0.681698 +0.151541 0.654362 0.683556 +0.136300 0.655963 0.685228 +0.121087 0.657389 0.686717 +0.105897 0.658642 0.688026 +0.090729 0.659723 0.689156 +0.075579 0.660636 0.690109 +0.060445 0.661381 0.690887 +0.045323 0.661958 0.691491 +0.030210 0.662371 0.691921 +0.015103 0.662618 0.692179 +0.000000 0.662700 0.692265 +0.677644 0.000000 0.677644 +0.677563 0.014784 0.677563 +0.677321 0.029572 0.677321 +0.676917 0.044368 0.676917 +0.676351 0.059173 0.676351 +0.675621 0.073993 0.675621 +0.674727 0.088829 0.674727 +0.673666 0.103687 0.673666 +0.672437 0.118569 0.672437 +0.671039 0.133478 0.671039 +0.669468 0.148418 0.669468 +0.667722 0.163391 0.667722 +0.665799 0.178400 0.665799 +0.663694 0.193449 0.663694 +0.661405 0.208540 0.661405 +0.658928 0.223676 0.658928 +0.656258 0.238858 0.656258 +0.653392 0.254090 0.653392 +0.650323 0.269373 0.650323 +0.647049 0.284708 0.647049 +0.643562 0.300098 0.643562 +0.639858 0.315543 0.639858 +0.635930 0.331044 0.635930 +0.631771 0.346602 0.631771 +0.627376 0.362216 0.627376 +0.622738 0.377887 0.622738 +0.617848 0.393613 0.617848 +0.612699 0.409393 0.612699 +0.607284 0.425225 0.607284 +0.601593 0.441106 0.601593 +0.595618 0.457034 0.595618 +0.589351 0.473004 0.589351 +0.582782 0.489012 0.582782 +0.575902 0.505052 0.575902 +0.568700 0.521118 0.568700 +0.561167 0.537201 0.561167 +0.553294 0.553294 0.553294 +0.537201 0.561167 0.561167 +0.521118 0.568700 0.568700 +0.505052 0.575902 0.575902 +0.489012 0.582782 0.582782 +0.473004 0.589351 0.589351 +0.457034 0.595618 0.595618 +0.441106 0.601593 0.601593 +0.425225 0.607284 0.607284 +0.409393 0.612699 0.612699 +0.393613 0.617848 0.617848 +0.377887 0.622738 0.622738 +0.362216 0.627376 0.627376 +0.346602 0.631771 0.631771 +0.331044 0.635930 0.635930 +0.315543 0.639858 0.639858 +0.300098 0.643562 0.643562 +0.284708 0.647049 0.647049 +0.269373 0.650323 0.650323 +0.254090 0.653392 0.653392 +0.238858 0.656258 0.656258 +0.223676 0.658928 0.658928 +0.208540 0.661405 0.661405 +0.193449 0.663694 0.663694 +0.178400 0.665799 0.665799 +0.163391 0.667722 0.667722 +0.148418 0.669468 0.669468 +0.133478 0.671039 0.671039 +0.118569 0.672437 0.672437 +0.103687 0.673666 0.673666 +0.088829 0.674727 0.674727 +0.073993 0.675621 0.675621 +0.059173 0.676351 0.676351 +0.044368 0.676917 0.676917 +0.029572 0.677321 0.677321 +0.014784 0.677563 0.677563 +0.000000 0.677644 0.677644 +0.692265 0.000000 0.662700 +0.692179 0.015103 0.662618 +0.691921 0.030210 0.662371 +0.691491 0.045323 0.661958 +0.690887 0.060445 0.661381 +0.690109 0.075579 0.660636 +0.689156 0.090729 0.659723 +0.688026 0.105897 0.658642 +0.686717 0.121087 0.657389 +0.685228 0.136300 0.655963 +0.683556 0.151541 0.654362 +0.681698 0.166810 0.652584 +0.679651 0.182112 0.650624 +0.677413 0.197448 0.648482 +0.674980 0.212820 0.646152 +0.672347 0.228231 0.643632 +0.669512 0.243682 0.640918 +0.666469 0.259175 0.638005 +0.663214 0.274712 0.634889 +0.659741 0.290293 0.631565 +0.656046 0.305920 0.628028 +0.652124 0.321592 0.624273 +0.647967 0.337310 0.620293 +0.643570 0.353074 0.616084 +0.638926 0.368884 0.611638 +0.634028 0.384738 0.606950 +0.628870 0.400634 0.602012 +0.623443 0.416571 0.596817 +0.617740 0.432546 0.591357 +0.611753 0.448556 0.585626 +0.605474 0.464597 0.579615 +0.598894 0.480663 0.573316 +0.592004 0.496751 0.566721 +0.584796 0.512852 0.559820 +0.577260 0.528961 0.552606 +0.569387 0.545069 0.545069 +0.561167 0.561167 0.537201 +0.545069 0.569387 0.545069 +0.528961 0.577260 0.552606 +0.512852 0.584796 0.559820 +0.496751 0.592004 0.566721 +0.480663 0.598894 0.573316 +0.464597 0.605474 0.579615 +0.448556 0.611753 0.585626 +0.432546 0.617740 0.591357 +0.416571 0.623443 0.596817 +0.400634 0.628870 0.602012 +0.384738 0.634028 0.606950 +0.368884 0.638926 0.611638 +0.353074 0.643570 0.616084 +0.337310 0.647967 0.620293 +0.321592 0.652124 0.624273 +0.305920 0.656046 0.628028 +0.290293 0.659741 0.631565 +0.274712 0.663214 0.634889 +0.259175 0.666469 0.638005 +0.243682 0.669512 0.640918 +0.228231 0.672347 0.643632 +0.212820 0.674980 0.646152 +0.197448 0.677413 0.648482 +0.182112 0.679651 0.650624 +0.166810 0.681698 0.652584 +0.151541 0.683556 0.654362 +0.136300 0.685228 0.655963 +0.121087 0.686717 0.657389 +0.105897 0.688026 0.658642 +0.090729 0.689156 0.659723 +0.075579 0.690109 0.660636 +0.060445 0.690887 0.661381 +0.045323 0.691491 0.661958 +0.030210 0.691921 0.662371 +0.015103 0.692179 0.662618 +0.000000 0.692265 0.662700 +0.706557 0.000000 0.647441 +0.706466 0.015415 0.647357 +0.706192 0.030833 0.647105 +0.705734 0.046256 0.646686 +0.705092 0.061688 0.646098 +0.704265 0.077130 0.645340 +0.703252 0.092585 0.644412 +0.702052 0.108056 0.643312 +0.700661 0.123546 0.642038 +0.699080 0.139056 0.640589 +0.697304 0.154589 0.638962 +0.695332 0.170147 0.637155 +0.693161 0.185732 0.635165 +0.690787 0.201346 0.632990 +0.688207 0.216991 0.630626 +0.685418 0.232668 0.628069 +0.682414 0.248378 0.625317 +0.679193 0.264124 0.622365 +0.675749 0.279904 0.619209 +0.672077 0.295721 0.615845 +0.668172 0.311574 0.612267 +0.664029 0.327463 0.608470 +0.659642 0.343388 0.604450 +0.655004 0.359348 0.600201 +0.650110 0.375341 0.595716 +0.644953 0.391367 0.590991 +0.639526 0.407423 0.586017 +0.633821 0.423506 0.580790 +0.627831 0.439612 0.575301 +0.621549 0.455739 0.569545 +0.614967 0.471881 0.563513 +0.608076 0.488033 0.557199 +0.600868 0.504188 0.550594 +0.593335 0.520341 0.543692 +0.585469 0.536483 0.536483 +0.577260 0.552606 0.528961 +0.568700 0.568700 0.521118 +0.552606 0.577260 0.528961 +0.536483 0.585469 0.536483 +0.520341 0.593335 0.543692 +0.504188 0.600868 0.550594 +0.488033 0.608076 0.557199 +0.471881 0.614967 0.563513 +0.455739 0.621549 0.569545 +0.439612 0.627831 0.575301 +0.423506 0.633821 0.580790 +0.407423 0.639526 0.586017 +0.391367 0.644953 0.590991 +0.375341 0.650110 0.595716 +0.359348 0.655004 0.600201 +0.343388 0.659642 0.604450 +0.327463 0.664029 0.608470 +0.311574 0.668172 0.612267 +0.295721 0.672077 0.615845 +0.279904 0.675749 0.619209 +0.264124 0.679193 0.622365 +0.248378 0.682414 0.625317 +0.232668 0.685418 0.628069 +0.216991 0.688207 0.630626 +0.201346 0.690787 0.632990 +0.185732 0.693161 0.635165 +0.170147 0.695332 0.637155 +0.154589 0.697304 0.638962 +0.139056 0.699080 0.640589 +0.123546 0.700661 0.642038 +0.108056 0.702052 0.643312 +0.092585 0.703252 0.644412 +0.077130 0.704265 0.645340 +0.061688 0.705092 0.646098 +0.046256 0.705734 0.646686 +0.030833 0.706192 0.647105 +0.015415 0.706466 0.647357 +0.000000 0.706557 0.647441 +0.720513 0.000000 0.631873 +0.720416 0.015720 0.631788 +0.720125 0.031441 0.631533 +0.719640 0.047168 0.631107 +0.718959 0.062901 0.630511 +0.718083 0.078643 0.629742 +0.717009 0.094396 0.628800 +0.715737 0.110162 0.627684 +0.714264 0.125944 0.626393 +0.712589 0.141743 0.624923 +0.710708 0.157560 0.623275 +0.708621 0.173398 0.621444 +0.706323 0.189259 0.619429 +0.703812 0.205142 0.617226 +0.701084 0.221051 0.614834 +0.698135 0.236985 0.612248 +0.694962 0.252946 0.609466 +0.691561 0.268933 0.606483 +0.687926 0.284948 0.603295 +0.684053 0.300991 0.599899 +0.679937 0.317060 0.596289 +0.675573 0.333156 0.592462 +0.670955 0.349277 0.588412 +0.666076 0.365422 0.584133 +0.660932 0.381589 0.579622 +0.655515 0.397776 0.574871 +0.649819 0.413980 0.569876 +0.643837 0.430198 0.564630 +0.637562 0.446425 0.559126 +0.630986 0.462658 0.553360 +0.624102 0.478891 0.547323 +0.616903 0.495117 0.541010 +0.609381 0.511332 0.534413 +0.601528 0.527526 0.527526 +0.593335 0.543692 0.520341 +0.584796 0.559820 0.512852 +0.575902 0.575902 0.505052 +0.559820 0.584796 0.512852 +0.543692 0.593335 0.520341 +0.527526 0.601528 0.527526 +0.511332 0.609381 0.534413 +0.495117 0.616903 0.541010 +0.478891 0.624102 0.547323 +0.462658 0.630986 0.553360 +0.446425 0.637562 0.559126 +0.430198 0.643837 0.564630 +0.413980 0.649819 0.569876 +0.397776 0.655515 0.574871 +0.381589 0.660932 0.579622 +0.365422 0.666076 0.584133 +0.349277 0.670955 0.588412 +0.333156 0.675573 0.592462 +0.317060 0.679937 0.596289 +0.300991 0.684053 0.599899 +0.284948 0.687926 0.603295 +0.268933 0.691561 0.606483 +0.252946 0.694962 0.609466 +0.236985 0.698135 0.612248 +0.221051 0.701084 0.614834 +0.205142 0.703812 0.617226 +0.189259 0.706323 0.619429 +0.173398 0.708621 0.621444 +0.157560 0.710708 0.623275 +0.141743 0.712589 0.624923 +0.125944 0.714264 0.626393 +0.110162 0.715737 0.627684 +0.094396 0.717009 0.628800 +0.078643 0.718083 0.629742 +0.062901 0.718959 0.630511 +0.047168 0.719640 0.631107 +0.031441 0.720125 0.631533 +0.015720 0.720416 0.631788 +0.000000 0.720513 0.631873 +0.734126 0.000000 0.616005 +0.734023 0.016016 0.615919 +0.733716 0.032035 0.615661 +0.733202 0.048057 0.615230 +0.732483 0.064084 0.614626 +0.731556 0.080118 0.613848 +0.730421 0.096162 0.612896 +0.729076 0.112215 0.611767 +0.727519 0.128281 0.610461 +0.725749 0.144360 0.608976 +0.723763 0.160454 0.607309 +0.721559 0.176564 0.605459 +0.719133 0.192691 0.603424 +0.716483 0.208836 0.601201 +0.713606 0.224999 0.598786 +0.710497 0.241181 0.596178 +0.707154 0.257383 0.593372 +0.703571 0.273604 0.590366 +0.699744 0.289844 0.587155 +0.695670 0.306102 0.583736 +0.691342 0.322378 0.580105 +0.686756 0.338670 0.576257 +0.681906 0.354978 0.572187 +0.676787 0.371298 0.567891 +0.671392 0.387628 0.563365 +0.665716 0.403966 0.558602 +0.659752 0.420309 0.553598 +0.653494 0.436651 0.548347 +0.646935 0.452989 0.542843 +0.640068 0.469318 0.537081 +0.632887 0.485631 0.531055 +0.625383 0.501923 0.524759 +0.617550 0.518186 0.518186 +0.609381 0.534413 0.511332 +0.600868 0.550594 0.504188 +0.592004 0.566721 0.496751 +0.582782 0.582782 0.489012 +0.566721 0.592004 0.496751 +0.550594 0.600868 0.504188 +0.534413 0.609381 0.511332 +0.518186 0.617550 0.518186 +0.501923 0.625383 0.524759 +0.485631 0.632887 0.531055 +0.469318 0.640068 0.537081 +0.452989 0.646935 0.542843 +0.436651 0.653494 0.548347 +0.420309 0.659752 0.553598 +0.403966 0.665716 0.558602 +0.387628 0.671392 0.563365 +0.371298 0.676787 0.567891 +0.354978 0.681906 0.572187 +0.338670 0.686756 0.576257 +0.322378 0.691342 0.580105 +0.306102 0.695670 0.583736 +0.289844 0.699744 0.587155 +0.273604 0.703571 0.590366 +0.257383 0.707154 0.593372 +0.241181 0.710497 0.596178 +0.224999 0.713606 0.598786 +0.208836 0.716483 0.601201 +0.192691 0.719133 0.603424 +0.176564 0.721559 0.605459 +0.160454 0.723763 0.607309 +0.144360 0.725749 0.608976 +0.128281 0.727519 0.610461 +0.112215 0.729076 0.611767 +0.096162 0.730421 0.612896 +0.080118 0.731556 0.613848 +0.064084 0.732483 0.614626 +0.048057 0.733202 0.615230 +0.032035 0.733716 0.615661 +0.016016 0.734023 0.615919 +0.000000 0.734126 0.616005 +0.747389 0.000000 0.599843 +0.747281 0.016306 0.599756 +0.746956 0.032613 0.599496 +0.746415 0.048923 0.599061 +0.745656 0.065236 0.598452 +0.744678 0.081556 0.597667 +0.743481 0.097881 0.596706 +0.742062 0.114214 0.595568 +0.740421 0.130556 0.594251 +0.738555 0.146908 0.592753 +0.736463 0.163270 0.591074 +0.734141 0.179643 0.589210 +0.731586 0.196028 0.587160 +0.728797 0.212425 0.584922 +0.725769 0.228834 0.582492 +0.722500 0.245256 0.579867 +0.718985 0.261689 0.577046 +0.715220 0.278134 0.574025 +0.711202 0.294589 0.570800 +0.706925 0.311054 0.567367 +0.702385 0.327527 0.563723 +0.697577 0.344007 0.559865 +0.692496 0.360491 0.555787 +0.687136 0.376976 0.551485 +0.681492 0.393460 0.546955 +0.675559 0.409939 0.542193 +0.669329 0.426410 0.537193 +0.662797 0.442867 0.531951 +0.655957 0.459306 0.526461 +0.648802 0.475721 0.520719 +0.641326 0.492107 0.514718 +0.633522 0.508455 0.508455 +0.625383 0.524759 0.501923 +0.616903 0.541010 0.495117 +0.608076 0.557199 0.488033 +0.598894 0.573316 0.480663 +0.589351 0.589351 0.473004 +0.573316 0.598894 0.480663 +0.557199 0.608076 0.488033 +0.541010 0.616903 0.495117 +0.524759 0.625383 0.501923 +0.508455 0.633522 0.508455 +0.492107 0.641326 0.514718 +0.475721 0.648802 0.520719 +0.459306 0.655957 0.526461 +0.442867 0.662797 0.531951 +0.426410 0.669329 0.537193 +0.409939 0.675559 0.542193 +0.393460 0.681492 0.546955 +0.376976 0.687136 0.551485 +0.360491 0.692496 0.555787 +0.344007 0.697577 0.559865 +0.327527 0.702385 0.563723 +0.311054 0.706925 0.567367 +0.294589 0.711202 0.570800 +0.278134 0.715220 0.574025 +0.261689 0.718985 0.577046 +0.245256 0.722500 0.579867 +0.228834 0.725769 0.582492 +0.212425 0.728797 0.584922 +0.196028 0.731586 0.587160 +0.179643 0.734141 0.589210 +0.163270 0.736463 0.591074 +0.146908 0.738555 0.592753 +0.130556 0.740421 0.594251 +0.114214 0.742062 0.595568 +0.097881 0.743481 0.596706 +0.081556 0.744678 0.597667 +0.065236 0.745656 0.598452 +0.048923 0.746415 0.599061 +0.032613 0.746956 0.599496 +0.016306 0.747281 0.599756 +0.000000 0.747389 0.599843 +0.760297 0.000000 0.583396 +0.760183 0.016587 0.583309 +0.759841 0.033175 0.583047 +0.759271 0.049765 0.582609 +0.758472 0.066358 0.581996 +0.757443 0.082954 0.581207 +0.756183 0.099553 0.580240 +0.754691 0.116158 0.579095 +0.752965 0.132768 0.577771 +0.751003 0.149384 0.576265 +0.748803 0.166006 0.574577 +0.746363 0.182634 0.572704 +0.743679 0.199268 0.570645 +0.740750 0.215909 0.568397 +0.737572 0.232555 0.565959 +0.734141 0.249207 0.563326 +0.730454 0.265863 0.560497 +0.726507 0.282523 0.557468 +0.722296 0.299185 0.554237 +0.717817 0.315847 0.550801 +0.713066 0.332508 0.547155 +0.708037 0.349165 0.543296 +0.702726 0.365816 0.539220 +0.697127 0.382457 0.534924 +0.691235 0.399085 0.530403 +0.685046 0.415696 0.525654 +0.678552 0.432285 0.520671 +0.671749 0.448849 0.515452 +0.664631 0.465380 0.509990 +0.657192 0.481873 0.504281 +0.649426 0.498322 0.498322 +0.641326 0.514718 0.492107 +0.632887 0.531055 0.485631 +0.624102 0.547323 0.478891 +0.614967 0.563513 0.471881 +0.605474 0.579615 0.464597 +0.595618 0.595618 0.457034 +0.579615 0.605474 0.464597 +0.563513 0.614967 0.471881 +0.547323 0.624102 0.478891 +0.531055 0.632887 0.485631 +0.514718 0.641326 0.492107 +0.498322 0.649426 0.498322 +0.481873 0.657192 0.504281 +0.465380 0.664631 0.509990 +0.448849 0.671749 0.515452 +0.432285 0.678552 0.520671 +0.415696 0.685046 0.525654 +0.399085 0.691235 0.530403 +0.382457 0.697127 0.534924 +0.365816 0.702726 0.539220 +0.349165 0.708037 0.543296 +0.332508 0.713066 0.547155 +0.315847 0.717817 0.550801 +0.299185 0.722296 0.554237 +0.282523 0.726507 0.557468 +0.265863 0.730454 0.560497 +0.249207 0.734141 0.563326 +0.232555 0.737572 0.565959 +0.215909 0.740750 0.568397 +0.199268 0.743679 0.570645 +0.182634 0.746363 0.572704 +0.166006 0.748803 0.574577 +0.149384 0.751003 0.576265 +0.132768 0.752965 0.577771 +0.116158 0.754691 0.579095 +0.099553 0.756183 0.580240 +0.082954 0.757443 0.581207 +0.066358 0.758472 0.581996 +0.049765 0.759271 0.582609 +0.033175 0.759841 0.583047 +0.016587 0.760183 0.583309 +0.000000 0.760297 0.583396 +0.772843 0.000000 0.566672 +0.772723 0.016861 0.566584 +0.772364 0.033722 0.566321 +0.771765 0.050584 0.565882 +0.770926 0.067447 0.565267 +0.769846 0.084312 0.564474 +0.768523 0.101178 0.563505 +0.766957 0.118046 0.562356 +0.765146 0.134916 0.561028 +0.763087 0.151787 0.559519 +0.760780 0.168661 0.557827 +0.758221 0.185535 0.555950 +0.755408 0.202411 0.553888 +0.752338 0.219287 0.551637 +0.749009 0.236162 0.549196 +0.745417 0.253035 0.546562 +0.741558 0.269905 0.543733 +0.737430 0.286771 0.540706 +0.733027 0.303630 0.537478 +0.728347 0.320480 0.534046 +0.723385 0.337320 0.530408 +0.718136 0.354145 0.526559 +0.712596 0.370954 0.522497 +0.706760 0.387742 0.518218 +0.700623 0.404505 0.513718 +0.694180 0.421239 0.508994 +0.687426 0.437939 0.504042 +0.680356 0.454599 0.498857 +0.672963 0.471214 0.493437 +0.665244 0.487777 0.487777 +0.657192 0.504281 0.481873 +0.648802 0.520719 0.475721 +0.640068 0.537081 0.469318 +0.630986 0.553360 0.462658 +0.621549 0.569545 0.455739 +0.611753 0.585626 0.448556 +0.601593 0.601593 0.441106 +0.585626 0.611753 0.448556 +0.569545 0.621549 0.455739 +0.553360 0.630986 0.462658 +0.537081 0.640068 0.469318 +0.520719 0.648802 0.475721 +0.504281 0.657192 0.481873 +0.487777 0.665244 0.487777 +0.471214 0.672963 0.493437 +0.454599 0.680356 0.498857 +0.437939 0.687426 0.504042 +0.421239 0.694180 0.508994 +0.404505 0.700623 0.513718 +0.387742 0.706760 0.518218 +0.370954 0.712596 0.522497 +0.354145 0.718136 0.526559 +0.337320 0.723385 0.530408 +0.320480 0.728347 0.534046 +0.303630 0.733027 0.537478 +0.286771 0.737430 0.540706 +0.269905 0.741558 0.543733 +0.253035 0.745417 0.546562 +0.236162 0.749009 0.549196 +0.219287 0.752338 0.551637 +0.202411 0.755408 0.553888 +0.185535 0.758221 0.555950 +0.168661 0.760780 0.557827 +0.151787 0.763087 0.559519 +0.134916 0.765146 0.561028 +0.118046 0.766957 0.562356 +0.101178 0.768523 0.563505 +0.084312 0.769846 0.564474 +0.067447 0.770926 0.565267 +0.050584 0.771765 0.565882 +0.033722 0.772364 0.566321 +0.016861 0.772723 0.566584 +0.000000 0.772843 0.566672 +0.785021 0.000000 0.549677 +0.784895 0.017126 0.549590 +0.784519 0.034253 0.549326 +0.783892 0.051379 0.548887 +0.783012 0.068505 0.548271 +0.781881 0.085630 0.547479 +0.780495 0.102754 0.546509 +0.778855 0.119877 0.545360 +0.776958 0.136999 0.544032 +0.774803 0.154118 0.542523 +0.772388 0.171234 0.540832 +0.769710 0.188347 0.538957 +0.766768 0.205455 0.536897 +0.763558 0.222557 0.534649 +0.760079 0.239652 0.532213 +0.756326 0.256738 0.529585 +0.752296 0.273813 0.526763 +0.747987 0.290876 0.523746 +0.743394 0.307924 0.520530 +0.738514 0.324954 0.517113 +0.733342 0.341963 0.513492 +0.727875 0.358948 0.509664 +0.722108 0.375906 0.505626 +0.716037 0.392832 0.501375 +0.709658 0.409721 0.496908 +0.702965 0.426570 0.492221 +0.695954 0.443371 0.487312 +0.688620 0.460121 0.482177 +0.680958 0.476812 0.476812 +0.672963 0.493437 0.471214 +0.664631 0.509990 0.465380 +0.655957 0.526461 0.459306 +0.646935 0.542843 0.452989 +0.637562 0.559126 0.446425 +0.627831 0.575301 0.439612 +0.617740 0.591357 0.432546 +0.607284 0.607284 0.425225 +0.591357 0.617740 0.432546 +0.575301 0.627831 0.439612 +0.559126 0.637562 0.446425 +0.542843 0.646935 0.452989 +0.526461 0.655957 0.459306 +0.509990 0.664631 0.465380 +0.493437 0.672963 0.471214 +0.476812 0.680958 0.476812 +0.460121 0.688620 0.482177 +0.443371 0.695954 0.487312 +0.426570 0.702965 0.492221 +0.409721 0.709658 0.496908 +0.392832 0.716037 0.501375 +0.375906 0.722108 0.505626 +0.358948 0.727875 0.509664 +0.341963 0.733342 0.513492 +0.324954 0.738514 0.517113 +0.307924 0.743394 0.520530 +0.290876 0.747987 0.523746 +0.273813 0.752296 0.526763 +0.256738 0.756326 0.529585 +0.239652 0.760079 0.532213 +0.222557 0.763558 0.534649 +0.205455 0.766768 0.536897 +0.188347 0.769710 0.538957 +0.171234 0.772388 0.540832 +0.154118 0.774803 0.542523 +0.136999 0.776958 0.544032 +0.119877 0.778855 0.545360 +0.102754 0.780495 0.546509 +0.085630 0.781881 0.547479 +0.068505 0.783012 0.548271 +0.051379 0.783892 0.548887 +0.034253 0.784519 0.549326 +0.017126 0.784895 0.549590 +0.000000 0.785021 0.549677 +0.796825 0.000000 0.532421 +0.796694 0.017384 0.532334 +0.796300 0.034767 0.532071 +0.795644 0.052149 0.531633 +0.794725 0.069529 0.531018 +0.793542 0.086907 0.530228 +0.792094 0.104281 0.529260 +0.790379 0.121651 0.528114 +0.788397 0.139016 0.526790 +0.786146 0.156374 0.525286 +0.783623 0.173725 0.523600 +0.780827 0.191067 0.521732 +0.777756 0.208399 0.519680 +0.774407 0.225719 0.517443 +0.770778 0.243025 0.515017 +0.766865 0.260316 0.512403 +0.762666 0.277588 0.509597 +0.758177 0.294839 0.506597 +0.753395 0.312066 0.503402 +0.748316 0.329267 0.500009 +0.742937 0.346437 0.496415 +0.737255 0.363574 0.492618 +0.731264 0.380672 0.488615 +0.724961 0.397727 0.484404 +0.718342 0.414735 0.479981 +0.711403 0.431690 0.475344 +0.704139 0.448586 0.470491 +0.696546 0.465417 0.465417 +0.688620 0.482177 0.460121 +0.680356 0.498857 0.454599 +0.671749 0.515452 0.448849 +0.662797 0.531951 0.442867 +0.653494 0.548347 0.436651 +0.643837 0.564630 0.430198 +0.633821 0.580790 0.423506 +0.623443 0.596817 0.416571 +0.612699 0.612699 0.409393 +0.596817 0.623443 0.416571 +0.580790 0.633821 0.423506 +0.564630 0.643837 0.430198 +0.548347 0.653494 0.436651 +0.531951 0.662797 0.442867 +0.515452 0.671749 0.448849 +0.498857 0.680356 0.454599 +0.482177 0.688620 0.460121 +0.465417 0.696546 0.465417 +0.448586 0.704139 0.470491 +0.431690 0.711403 0.475344 +0.414735 0.718342 0.479981 +0.397727 0.724961 0.484404 +0.380672 0.731264 0.488615 +0.363574 0.737255 0.492618 +0.346437 0.742937 0.496415 +0.329267 0.748316 0.500009 +0.312066 0.753395 0.503402 +0.294839 0.758177 0.506597 +0.277588 0.762666 0.509597 +0.260316 0.766865 0.512403 +0.243025 0.770778 0.515017 +0.225719 0.774407 0.517443 +0.208399 0.777756 0.519680 +0.191067 0.780827 0.521732 +0.173725 0.783623 0.523600 +0.156374 0.786146 0.525286 +0.139016 0.788397 0.526790 +0.121651 0.790379 0.528114 +0.104281 0.792094 0.529260 +0.086907 0.793542 0.530228 +0.069529 0.794725 0.531018 +0.052149 0.795644 0.531633 +0.034767 0.796300 0.532071 +0.017384 0.796694 0.532334 +0.000000 0.796825 0.532421 +0.808250 0.000000 0.514912 +0.808113 0.017633 0.514825 +0.807703 0.035265 0.514563 +0.807018 0.052895 0.514127 +0.806059 0.070521 0.513516 +0.804824 0.088143 0.512730 +0.803313 0.105758 0.511767 +0.801525 0.123367 0.510628 +0.799458 0.140966 0.509311 +0.797111 0.158555 0.507816 +0.794482 0.176132 0.506141 +0.791569 0.193696 0.504285 +0.788370 0.211243 0.502247 +0.784883 0.228772 0.500025 +0.781104 0.246281 0.497618 +0.777033 0.263767 0.495025 +0.772665 0.281227 0.492242 +0.767999 0.298658 0.489269 +0.763030 0.316057 0.486103 +0.757755 0.333420 0.482743 +0.752172 0.350743 0.479186 +0.746276 0.368023 0.475430 +0.740065 0.385253 0.471473 +0.733534 0.402430 0.467312 +0.726679 0.419549 0.462946 +0.719498 0.436602 0.458371 +0.711986 0.453585 0.453585 +0.704139 0.470491 0.448586 +0.695954 0.487312 0.443371 +0.687426 0.504042 0.437939 +0.678552 0.520671 0.432285 +0.669329 0.537193 0.426410 +0.659752 0.553598 0.420309 +0.649819 0.569876 0.413980 +0.639526 0.586017 0.407423 +0.628870 0.602012 0.400634 +0.617848 0.617848 0.393613 +0.602012 0.628870 0.400634 +0.586017 0.639526 0.407423 +0.569876 0.649819 0.413980 +0.553598 0.659752 0.420309 +0.537193 0.669329 0.426410 +0.520671 0.678552 0.432285 +0.504042 0.687426 0.437939 +0.487312 0.695954 0.443371 +0.470491 0.704139 0.448586 +0.453585 0.711986 0.453585 +0.436602 0.719498 0.458371 +0.419549 0.726679 0.462946 +0.402430 0.733534 0.467312 +0.385253 0.740065 0.471473 +0.368023 0.746276 0.475430 +0.350743 0.752172 0.479186 +0.333420 0.757755 0.482743 +0.316057 0.763030 0.486103 +0.298658 0.767999 0.489269 +0.281227 0.772665 0.492242 +0.263767 0.777033 0.495025 +0.246281 0.781104 0.497618 +0.228772 0.784883 0.500025 +0.211243 0.788370 0.502247 +0.193696 0.791569 0.504285 +0.176132 0.794482 0.506141 +0.158555 0.797111 0.507816 +0.140966 0.799458 0.509311 +0.123367 0.801525 0.510628 +0.105758 0.803313 0.511767 +0.088143 0.804824 0.512730 +0.070521 0.806059 0.513516 +0.052895 0.807018 0.514127 +0.035265 0.807703 0.514563 +0.017633 0.808113 0.514825 +0.000000 0.808250 0.514912 +0.819291 0.000000 0.497158 +0.819148 0.017874 0.497071 +0.818720 0.035746 0.496812 +0.818007 0.053615 0.496379 +0.817008 0.071479 0.495773 +0.815723 0.089336 0.494993 +0.814150 0.107185 0.494038 +0.812289 0.125023 0.492909 +0.810138 0.142849 0.491604 +0.807695 0.160661 0.490122 +0.804960 0.178455 0.488462 +0.801931 0.196231 0.486624 +0.798605 0.213986 0.484606 +0.794981 0.231716 0.482406 +0.791056 0.249419 0.480025 +0.786828 0.267092 0.477459 +0.782294 0.284732 0.474707 +0.777451 0.302334 0.471769 +0.772298 0.319896 0.468642 +0.766830 0.337413 0.465324 +0.761045 0.354881 0.461814 +0.754940 0.372295 0.458109 +0.748512 0.389651 0.454208 +0.741757 0.406942 0.450109 +0.734672 0.424163 0.445810 +0.727253 0.441308 0.441308 +0.719498 0.458371 0.436602 +0.711403 0.475344 0.431690 +0.702965 0.492221 0.426570 +0.694180 0.508994 0.421239 +0.685046 0.525654 0.415696 +0.675559 0.542193 0.409939 +0.665716 0.558602 0.403966 +0.655515 0.574871 0.397776 +0.644953 0.590991 0.391367 +0.634028 0.606950 0.384738 +0.622738 0.622738 0.377887 +0.606950 0.634028 0.384738 +0.590991 0.644953 0.391367 +0.574871 0.655515 0.397776 +0.558602 0.665716 0.403966 +0.542193 0.675559 0.409939 +0.525654 0.685046 0.415696 +0.508994 0.694180 0.421239 +0.492221 0.702965 0.426570 +0.475344 0.711403 0.431690 +0.458371 0.719498 0.436602 +0.441308 0.727253 0.441308 +0.424163 0.734672 0.445810 +0.406942 0.741757 0.450109 +0.389651 0.748512 0.454208 +0.372295 0.754940 0.458109 +0.354881 0.761045 0.461814 +0.337413 0.766830 0.465324 +0.319896 0.772298 0.468642 +0.302334 0.777451 0.471769 +0.284732 0.782294 0.474707 +0.267092 0.786828 0.477459 +0.249419 0.791056 0.480025 +0.231716 0.794981 0.482406 +0.213986 0.798605 0.484606 +0.196231 0.801931 0.486624 +0.178455 0.804960 0.488462 +0.160661 0.807695 0.490122 +0.142849 0.810138 0.491604 +0.125023 0.812289 0.492909 +0.107185 0.814150 0.494038 +0.089336 0.815723 0.494993 +0.071479 0.817008 0.495773 +0.053615 0.818007 0.496379 +0.035746 0.818720 0.496812 +0.017874 0.819148 0.497071 +0.000000 0.819291 0.497158 +0.829941 0.000000 0.479167 +0.829793 0.018106 0.479081 +0.829348 0.036210 0.478824 +0.828607 0.054310 0.478397 +0.827569 0.072403 0.477797 +0.826233 0.090487 0.477026 +0.824599 0.108560 0.476082 +0.822665 0.126620 0.474966 +0.820431 0.144664 0.473676 +0.817894 0.162689 0.472212 +0.815055 0.180693 0.470572 +0.811911 0.198673 0.468757 +0.808460 0.216626 0.466764 +0.804700 0.234549 0.464594 +0.800630 0.252438 0.462244 +0.796247 0.270290 0.459714 +0.791550 0.288100 0.457001 +0.786534 0.305866 0.454106 +0.781199 0.323583 0.451026 +0.775542 0.341247 0.447759 +0.769559 0.358851 0.444305 +0.763249 0.376393 0.440662 +0.756607 0.393865 0.436828 +0.749633 0.411263 0.432801 +0.742322 0.428580 0.428580 +0.734672 0.445810 0.424163 +0.726679 0.462946 0.419549 +0.718342 0.479981 0.414735 +0.709658 0.496908 0.409721 +0.700623 0.513718 0.404505 +0.691235 0.530403 0.399085 +0.681492 0.546955 0.393460 +0.671392 0.563365 0.387628 +0.660932 0.579622 0.381589 +0.650110 0.595716 0.375341 +0.638926 0.611638 0.368884 +0.627376 0.627376 0.362216 +0.611638 0.638926 0.368884 +0.595716 0.650110 0.375341 +0.579622 0.660932 0.381589 +0.563365 0.671392 0.387628 +0.546955 0.681492 0.393460 +0.530403 0.691235 0.399085 +0.513718 0.700623 0.404505 +0.496908 0.709658 0.409721 +0.479981 0.718342 0.414735 +0.462946 0.726679 0.419549 +0.445810 0.734672 0.424163 +0.428580 0.742322 0.428580 +0.411263 0.749633 0.432801 +0.393865 0.756607 0.436828 +0.376393 0.763249 0.440662 +0.358851 0.769559 0.444305 +0.341247 0.775542 0.447759 +0.323583 0.781199 0.451026 +0.305866 0.786534 0.454106 +0.288100 0.791550 0.457001 +0.270290 0.796247 0.459714 +0.252438 0.800630 0.462244 +0.234549 0.804700 0.464594 +0.216626 0.808460 0.466764 +0.198673 0.811911 0.468757 +0.180693 0.815055 0.470572 +0.162689 0.817894 0.472212 +0.144664 0.820431 0.473676 +0.126620 0.822665 0.474966 +0.108560 0.824599 0.476082 +0.090487 0.826233 0.477026 +0.072403 0.827569 0.477797 +0.054310 0.828607 0.478397 +0.036210 0.829348 0.478824 +0.018106 0.829793 0.479081 +0.000000 0.829941 0.479167 +0.840196 0.000000 0.460948 +0.840043 0.018330 0.460863 +0.839582 0.036657 0.460610 +0.838813 0.054979 0.460188 +0.837736 0.073292 0.459598 +0.836350 0.091595 0.458837 +0.834655 0.109884 0.457907 +0.832650 0.128157 0.456807 +0.830333 0.146410 0.455536 +0.827704 0.164641 0.454094 +0.824762 0.182845 0.452480 +0.821504 0.201021 0.450693 +0.817930 0.219164 0.448732 +0.814038 0.237270 0.446596 +0.809825 0.255337 0.444285 +0.805290 0.273359 0.441797 +0.800432 0.291333 0.439132 +0.795247 0.309255 0.436287 +0.789734 0.327118 0.433263 +0.783890 0.344920 0.430057 +0.777714 0.362654 0.426668 +0.771202 0.380315 0.423096 +0.764353 0.397897 0.419339 +0.757164 0.415394 0.415394 +0.749633 0.432801 0.411263 +0.741757 0.450109 0.406942 +0.733534 0.467312 0.402430 +0.724961 0.484404 0.397727 +0.716037 0.501375 0.392832 +0.706760 0.518218 0.387742 +0.697127 0.534924 0.382457 +0.687136 0.551485 0.376976 +0.676787 0.567891 0.371298 +0.666076 0.584133 0.365422 +0.655004 0.600201 0.359348 +0.643570 0.616084 0.353074 +0.631771 0.631771 0.346602 +0.616084 0.643570 0.353074 +0.600201 0.655004 0.359348 +0.584133 0.666076 0.365422 +0.567891 0.676787 0.371298 +0.551485 0.687136 0.376976 +0.534924 0.697127 0.382457 +0.518218 0.706760 0.387742 +0.501375 0.716037 0.392832 +0.484404 0.724961 0.397727 +0.467312 0.733534 0.402430 +0.450109 0.741757 0.406942 +0.432801 0.749633 0.411263 +0.415394 0.757164 0.415394 +0.397897 0.764353 0.419339 +0.380315 0.771202 0.423096 +0.362654 0.777714 0.426668 +0.344920 0.783890 0.430057 +0.327118 0.789734 0.433263 +0.309255 0.795247 0.436287 +0.291333 0.800432 0.439132 +0.273359 0.805290 0.441797 +0.255337 0.809825 0.444285 +0.237270 0.814038 0.446596 +0.219164 0.817930 0.448732 +0.201021 0.821504 0.450693 +0.182845 0.824762 0.452480 +0.164641 0.827704 0.454094 +0.146410 0.830333 0.455536 +0.128157 0.832650 0.456807 +0.109884 0.834655 0.457907 +0.091595 0.836350 0.458837 +0.073292 0.837736 0.459598 +0.054979 0.838813 0.460188 +0.036657 0.839582 0.460610 +0.018330 0.840043 0.460863 +0.000000 0.840196 0.460948 +0.850052 0.000000 0.442509 +0.849893 0.018545 0.442426 +0.849415 0.037086 0.442178 +0.848619 0.055621 0.441763 +0.847504 0.074147 0.441183 +0.846069 0.092660 0.440436 +0.844315 0.111156 0.439522 +0.842239 0.129633 0.438442 +0.839842 0.148087 0.437194 +0.837122 0.166514 0.435778 +0.834078 0.184911 0.434194 +0.830710 0.203273 0.432440 +0.827014 0.221598 0.430516 +0.822991 0.239880 0.428422 +0.818639 0.258116 0.426156 +0.813955 0.276301 0.423718 +0.808939 0.294430 0.421107 +0.803588 0.312498 0.418322 +0.797901 0.330502 0.415361 +0.791876 0.348434 0.412225 +0.785510 0.366290 0.408911 +0.778803 0.384063 0.405419 +0.771751 0.401748 0.401748 +0.764353 0.419339 0.397897 +0.756607 0.436828 0.393865 +0.748512 0.454208 0.389651 +0.740065 0.471473 0.385253 +0.731264 0.488615 0.380672 +0.722108 0.505626 0.375906 +0.712596 0.522497 0.370954 +0.702726 0.539220 0.365816 +0.692496 0.555787 0.360491 +0.681906 0.572187 0.354978 +0.670955 0.588412 0.349277 +0.659642 0.604450 0.343388 +0.647967 0.620293 0.337310 +0.635930 0.635930 0.331044 +0.620293 0.647967 0.337310 +0.604450 0.659642 0.343388 +0.588412 0.670955 0.349277 +0.572187 0.681906 0.354978 +0.555787 0.692496 0.360491 +0.539220 0.702726 0.365816 +0.522497 0.712596 0.370954 +0.505626 0.722108 0.375906 +0.488615 0.731264 0.380672 +0.471473 0.740065 0.385253 +0.454208 0.748512 0.389651 +0.436828 0.756607 0.393865 +0.419339 0.764353 0.397897 +0.401748 0.771751 0.401748 +0.384063 0.778803 0.405419 +0.366290 0.785510 0.408911 +0.348434 0.791876 0.412225 +0.330502 0.797901 0.415361 +0.312498 0.803588 0.418322 +0.294430 0.808939 0.421107 +0.276301 0.813955 0.423718 +0.258116 0.818639 0.426156 +0.239880 0.822991 0.428422 +0.221598 0.827014 0.430516 +0.203273 0.830710 0.432440 +0.184911 0.834078 0.434194 +0.166514 0.837122 0.435778 +0.148087 0.839842 0.437194 +0.129633 0.842239 0.438442 +0.111156 0.844315 0.439522 +0.092660 0.846069 0.440436 +0.074147 0.847504 0.441183 +0.055621 0.848619 0.441763 +0.037086 0.849415 0.442178 +0.018545 0.849893 0.442426 +0.000000 0.850052 0.442509 +0.859503 0.000000 0.423860 +0.859339 0.018751 0.423779 +0.858845 0.037498 0.423535 +0.858022 0.056238 0.423130 +0.856869 0.074966 0.422561 +0.855387 0.093680 0.421830 +0.853573 0.112375 0.420936 +0.851429 0.131047 0.419878 +0.848953 0.149693 0.418657 +0.846144 0.168308 0.417272 +0.843001 0.186889 0.415722 +0.839523 0.205430 0.414007 +0.835710 0.223928 0.412126 +0.831559 0.242377 0.410080 +0.827070 0.260774 0.407866 +0.822241 0.279113 0.405485 +0.817071 0.297390 0.402935 +0.811559 0.315598 0.400216 +0.805702 0.333733 0.397328 +0.799499 0.351788 0.394270 +0.792950 0.369759 0.391040 +0.786051 0.387638 0.387638 +0.778803 0.405419 0.384063 +0.771202 0.423096 0.380315 +0.763249 0.440662 0.376393 +0.754940 0.458109 0.372295 +0.746276 0.475430 0.368023 +0.737255 0.492618 0.363574 +0.727875 0.509664 0.358948 +0.718136 0.526559 0.354145 +0.708037 0.543296 0.349165 +0.697577 0.559865 0.344007 +0.686756 0.576257 0.338670 +0.675573 0.592462 0.333156 +0.664029 0.608470 0.327463 +0.652124 0.624273 0.321592 +0.639858 0.639858 0.315543 +0.624273 0.652124 0.321592 +0.608470 0.664029 0.327463 +0.592462 0.675573 0.333156 +0.576257 0.686756 0.338670 +0.559865 0.697577 0.344007 +0.543296 0.708037 0.349165 +0.526559 0.718136 0.354145 +0.509664 0.727875 0.358948 +0.492618 0.737255 0.363574 +0.475430 0.746276 0.368023 +0.458109 0.754940 0.372295 +0.440662 0.763249 0.376393 +0.423096 0.771202 0.380315 +0.405419 0.778803 0.384063 +0.387638 0.786051 0.387638 +0.369759 0.792950 0.391040 +0.351788 0.799499 0.394270 +0.333733 0.805702 0.397328 +0.315598 0.811559 0.400216 +0.297390 0.817071 0.402935 +0.279113 0.822241 0.405485 +0.260774 0.827070 0.407866 +0.242377 0.831559 0.410080 +0.223928 0.835710 0.412126 +0.205430 0.839523 0.414007 +0.186889 0.843001 0.415722 +0.168308 0.846144 0.417272 +0.149693 0.848953 0.418657 +0.131047 0.851429 0.419878 +0.112375 0.853573 0.420936 +0.093680 0.855387 0.421830 +0.074966 0.856869 0.422561 +0.056238 0.858022 0.423130 +0.037498 0.858845 0.423535 +0.018751 0.859339 0.423779 +0.000000 0.859503 0.423860 +0.868545 0.000000 0.405009 +0.868375 0.018948 0.404930 +0.867866 0.037892 0.404692 +0.867017 0.056827 0.404296 +0.865827 0.075750 0.403742 +0.864298 0.094656 0.403029 +0.862428 0.113541 0.402157 +0.860216 0.132400 0.401125 +0.857662 0.151229 0.399935 +0.854766 0.170024 0.398584 +0.851527 0.188779 0.397073 +0.847943 0.207490 0.395402 +0.844014 0.226153 0.393570 +0.839739 0.244762 0.391577 +0.835117 0.263311 0.389422 +0.830147 0.281797 0.387104 +0.824827 0.300213 0.384623 +0.819157 0.318553 0.381979 +0.813136 0.336812 0.379171 +0.806761 0.354983 0.376199 +0.800033 0.373062 0.373062 +0.792950 0.391040 0.369759 +0.785510 0.408911 0.366290 +0.777714 0.426668 0.362654 +0.769559 0.444305 0.358851 +0.761045 0.461814 0.354881 +0.752172 0.479186 0.350743 +0.742937 0.496415 0.346437 +0.733342 0.513492 0.341963 +0.723385 0.530408 0.337320 +0.713066 0.547155 0.332508 +0.702385 0.563723 0.327527 +0.691342 0.580105 0.322378 +0.679937 0.596289 0.317060 +0.668172 0.612267 0.311574 +0.656046 0.628028 0.305920 +0.643562 0.643562 0.300098 +0.628028 0.656046 0.305920 +0.612267 0.668172 0.311574 +0.596289 0.679937 0.317060 +0.580105 0.691342 0.322378 +0.563723 0.702385 0.327527 +0.547155 0.713066 0.332508 +0.530408 0.723385 0.337320 +0.513492 0.733342 0.341963 +0.496415 0.742937 0.346437 +0.479186 0.752172 0.350743 +0.461814 0.761045 0.354881 +0.444305 0.769559 0.358851 +0.426668 0.777714 0.362654 +0.408911 0.785510 0.366290 +0.391040 0.792950 0.369759 +0.373062 0.800033 0.373062 +0.354983 0.806761 0.376199 +0.336812 0.813136 0.379171 +0.318553 0.819157 0.381979 +0.300213 0.824827 0.384623 +0.281797 0.830147 0.387104 +0.263311 0.835117 0.389422 +0.244762 0.839739 0.391577 +0.226153 0.844014 0.393570 +0.207490 0.847943 0.395402 +0.188779 0.851527 0.397073 +0.170024 0.854766 0.398584 +0.151229 0.857662 0.399935 +0.132400 0.860216 0.401125 +0.113541 0.862428 0.402157 +0.094656 0.864298 0.403029 +0.075750 0.865827 0.403742 +0.056827 0.867017 0.404296 +0.037892 0.867866 0.404692 +0.018948 0.868375 0.404930 +0.000000 0.868545 0.405009 +0.877174 0.000000 0.385966 +0.876999 0.019136 0.385889 +0.876474 0.038268 0.385658 +0.875599 0.057390 0.385273 +0.874374 0.076498 0.384734 +0.872799 0.095587 0.384041 +0.870873 0.114653 0.383193 +0.868596 0.133690 0.382192 +0.865968 0.152693 0.381035 +0.862987 0.171659 0.379723 +0.859653 0.190581 0.378257 +0.855966 0.209454 0.376634 +0.851926 0.228273 0.374856 +0.847530 0.247032 0.372922 +0.842779 0.265727 0.370831 +0.837671 0.284351 0.368584 +0.832207 0.302898 0.366180 +0.826384 0.321363 0.363618 +0.820203 0.339739 0.360898 +0.813662 0.358020 0.358020 +0.806761 0.376199 0.354983 +0.799499 0.394270 0.351788 +0.791876 0.412225 0.348434 +0.783890 0.430057 0.344920 +0.775542 0.447759 0.341247 +0.766830 0.465324 0.337413 +0.757755 0.482743 0.333420 +0.748316 0.500009 0.329267 +0.738514 0.517113 0.324954 +0.728347 0.534046 0.320480 +0.717817 0.550801 0.315847 +0.706925 0.567367 0.311054 +0.695670 0.583736 0.306102 +0.684053 0.599899 0.300991 +0.672077 0.615845 0.295721 +0.659741 0.631565 0.290293 +0.647049 0.647049 0.284708 +0.631565 0.659741 0.290293 +0.615845 0.672077 0.295721 +0.599899 0.684053 0.300991 +0.583736 0.695670 0.306102 +0.567367 0.706925 0.311054 +0.550801 0.717817 0.315847 +0.534046 0.728347 0.320480 +0.517113 0.738514 0.324954 +0.500009 0.748316 0.329267 +0.482743 0.757755 0.333420 +0.465324 0.766830 0.337413 +0.447759 0.775542 0.341247 +0.430057 0.783890 0.344920 +0.412225 0.791876 0.348434 +0.394270 0.799499 0.351788 +0.376199 0.806761 0.354983 +0.358020 0.813662 0.358020 +0.339739 0.820203 0.360898 +0.321363 0.826384 0.363618 +0.302898 0.832207 0.366180 +0.284351 0.837671 0.368584 +0.265727 0.842779 0.370831 +0.247032 0.847530 0.372922 +0.228273 0.851926 0.374856 +0.209454 0.855966 0.376634 +0.190581 0.859653 0.378257 +0.171659 0.862987 0.379723 +0.152693 0.865968 0.381035 +0.133690 0.868596 0.382192 +0.114653 0.870873 0.383193 +0.095587 0.872799 0.384041 +0.076498 0.874374 0.384734 +0.057390 0.875599 0.385273 +0.038268 0.876474 0.385658 +0.019136 0.876999 0.385889 +0.000000 0.877174 0.385966 +0.885385 0.000000 0.366738 +0.885205 0.019315 0.366664 +0.884665 0.038625 0.366440 +0.883766 0.057925 0.366068 +0.882506 0.077209 0.365546 +0.880887 0.096473 0.364875 +0.878907 0.115710 0.364055 +0.876567 0.134917 0.363086 +0.873865 0.154086 0.361967 +0.870802 0.173213 0.360698 +0.867378 0.192293 0.359280 +0.863591 0.211319 0.357711 +0.859442 0.230287 0.355992 +0.854929 0.249189 0.354123 +0.850053 0.268021 0.352104 +0.844813 0.286775 0.349933 +0.839209 0.305447 0.347612 +0.833239 0.324029 0.345139 +0.826904 0.342515 0.342515 +0.820203 0.360898 0.339739 +0.813136 0.379171 0.336812 +0.805702 0.397328 0.333733 +0.797901 0.415361 0.330502 +0.789734 0.433263 0.327118 +0.781199 0.451026 0.323583 +0.772298 0.468642 0.319896 +0.763030 0.486103 0.316057 +0.753395 0.503402 0.312066 +0.743394 0.520530 0.307924 +0.733027 0.537478 0.303630 +0.722296 0.554237 0.299185 +0.711202 0.570800 0.294589 +0.699744 0.587155 0.289844 +0.687926 0.603295 0.284948 +0.675749 0.619209 0.279904 +0.663214 0.634889 0.274712 +0.650323 0.650323 0.269373 +0.634889 0.663214 0.274712 +0.619209 0.675749 0.279904 +0.603295 0.687926 0.284948 +0.587155 0.699744 0.289844 +0.570800 0.711202 0.294589 +0.554237 0.722296 0.299185 +0.537478 0.733027 0.303630 +0.520530 0.743394 0.307924 +0.503402 0.753395 0.312066 +0.486103 0.763030 0.316057 +0.468642 0.772298 0.319896 +0.451026 0.781199 0.323583 +0.433263 0.789734 0.327118 +0.415361 0.797901 0.330502 +0.397328 0.805702 0.333733 +0.379171 0.813136 0.336812 +0.360898 0.820203 0.339739 +0.342515 0.826904 0.342515 +0.324029 0.833239 0.345139 +0.305447 0.839209 0.347612 +0.286775 0.844813 0.349933 +0.268021 0.850053 0.352104 +0.249189 0.854929 0.354123 +0.230287 0.859442 0.355992 +0.211319 0.863591 0.357711 +0.192293 0.867378 0.359280 +0.173213 0.870802 0.360698 +0.154086 0.873865 0.361967 +0.134917 0.876567 0.363086 +0.115710 0.878907 0.364055 +0.096473 0.880887 0.364875 +0.077209 0.882506 0.365546 +0.057925 0.883766 0.366068 +0.038625 0.884665 0.366440 +0.019315 0.885205 0.366664 +0.000000 0.885385 0.366738 +0.893174 0.000000 0.347336 +0.892990 0.019485 0.347265 +0.892436 0.038965 0.347049 +0.891512 0.058433 0.346690 +0.890220 0.077884 0.346187 +0.888557 0.097313 0.345541 +0.886526 0.116713 0.344751 +0.884124 0.136080 0.343817 +0.881352 0.155406 0.342739 +0.878210 0.174687 0.341517 +0.874698 0.193916 0.340151 +0.870815 0.213087 0.338641 +0.866561 0.232194 0.336987 +0.861936 0.251232 0.335189 +0.856940 0.270192 0.333246 +0.851572 0.289070 0.331158 +0.845833 0.307858 0.328926 +0.839722 0.326550 0.326550 +0.833239 0.345139 0.324029 +0.826384 0.363618 0.321363 +0.819157 0.381979 0.318553 +0.811559 0.400216 0.315598 +0.803588 0.418322 0.312498 +0.795247 0.436287 0.309255 +0.786534 0.454106 0.305866 +0.777451 0.471769 0.302334 +0.767999 0.489269 0.298658 +0.758177 0.506597 0.294839 +0.747987 0.523746 0.290876 +0.737430 0.540706 0.286771 +0.726507 0.557468 0.282523 +0.715220 0.574025 0.278134 +0.703571 0.590366 0.273604 +0.691561 0.606483 0.268933 +0.679193 0.622365 0.264124 +0.666469 0.638005 0.259175 +0.653392 0.653392 0.254090 +0.638005 0.666469 0.259175 +0.622365 0.679193 0.264124 +0.606483 0.691561 0.268933 +0.590366 0.703571 0.273604 +0.574025 0.715220 0.278134 +0.557468 0.726507 0.282523 +0.540706 0.737430 0.286771 +0.523746 0.747987 0.290876 +0.506597 0.758177 0.294839 +0.489269 0.767999 0.298658 +0.471769 0.777451 0.302334 +0.454106 0.786534 0.305866 +0.436287 0.795247 0.309255 +0.418322 0.803588 0.312498 +0.400216 0.811559 0.315598 +0.381979 0.819157 0.318553 +0.363618 0.826384 0.321363 +0.345139 0.833239 0.324029 +0.326550 0.839722 0.326550 +0.307858 0.845833 0.328926 +0.289070 0.851572 0.331158 +0.270192 0.856940 0.333246 +0.251232 0.861936 0.335189 +0.232194 0.866561 0.336987 +0.213087 0.870815 0.338641 +0.193916 0.874698 0.340151 +0.174687 0.878210 0.341517 +0.155406 0.881352 0.342739 +0.136080 0.884124 0.343817 +0.116713 0.886526 0.344751 +0.097313 0.888557 0.345541 +0.077884 0.890220 0.346187 +0.058433 0.891512 0.346690 +0.038965 0.892436 0.347049 +0.019485 0.892990 0.347265 +0.000000 0.893174 0.347336 +0.900539 0.000000 0.327769 +0.900350 0.019646 0.327700 +0.899782 0.039285 0.327494 +0.898836 0.058913 0.327149 +0.897511 0.078522 0.326667 +0.895807 0.098107 0.326047 +0.893726 0.117661 0.325289 +0.891265 0.137179 0.324394 +0.888426 0.156653 0.323361 +0.885208 0.176079 0.322189 +0.881611 0.195449 0.320880 +0.877636 0.214756 0.319433 +0.873282 0.233995 0.317849 +0.868549 0.253159 0.316126 +0.863438 0.272241 0.314266 +0.857948 0.291234 0.312267 +0.852080 0.310132 0.310132 +0.845833 0.328926 0.307858 +0.839209 0.347612 0.305447 +0.832207 0.366180 0.302898 +0.824827 0.384623 0.300213 +0.817071 0.402935 0.297390 +0.808939 0.421107 0.294430 +0.800432 0.439132 0.291333 +0.791550 0.457001 0.288100 +0.782294 0.474707 0.284732 +0.772665 0.492242 0.281227 +0.762666 0.509597 0.277588 +0.752296 0.526763 0.273813 +0.741558 0.543733 0.269905 +0.730454 0.560497 0.265863 +0.718985 0.577046 0.261689 +0.707154 0.593372 0.257383 +0.694962 0.609466 0.252946 +0.682414 0.625317 0.248378 +0.669512 0.640918 0.243682 +0.656258 0.656258 0.238858 +0.640918 0.669512 0.243682 +0.625317 0.682414 0.248378 +0.609466 0.694962 0.252946 +0.593372 0.707154 0.257383 +0.577046 0.718985 0.261689 +0.560497 0.730454 0.265863 +0.543733 0.741558 0.269905 +0.526763 0.752296 0.273813 +0.509597 0.762666 0.277588 +0.492242 0.772665 0.281227 +0.474707 0.782294 0.284732 +0.457001 0.791550 0.288100 +0.439132 0.800432 0.291333 +0.421107 0.808939 0.294430 +0.402935 0.817071 0.297390 +0.384623 0.824827 0.300213 +0.366180 0.832207 0.302898 +0.347612 0.839209 0.305447 +0.328926 0.845833 0.307858 +0.310132 0.852080 0.310132 +0.291234 0.857948 0.312267 +0.272241 0.863438 0.314266 +0.253159 0.868549 0.316126 +0.233995 0.873282 0.317849 +0.214756 0.877636 0.319433 +0.195449 0.881611 0.320880 +0.176079 0.885208 0.322189 +0.156653 0.888426 0.323361 +0.137179 0.891265 0.324394 +0.117661 0.893726 0.325289 +0.098107 0.895807 0.326047 +0.078522 0.897511 0.326667 +0.058913 0.898836 0.327149 +0.039285 0.899782 0.327494 +0.019646 0.900350 0.327700 +0.000000 0.900539 0.327769 +0.907475 0.000000 0.308046 +0.907281 0.019797 0.307980 +0.906700 0.039587 0.307783 +0.905732 0.059365 0.307455 +0.904376 0.079123 0.306994 +0.902634 0.098854 0.306403 +0.900504 0.118554 0.305680 +0.897987 0.138213 0.304826 +0.895084 0.157827 0.303840 +0.891793 0.177389 0.302723 +0.888116 0.196891 0.301475 +0.884052 0.216326 0.300095 +0.879603 0.235689 0.298585 +0.874767 0.254971 0.296943 +0.869546 0.274167 0.295171 +0.863939 0.293268 0.293268 +0.857948 0.312267 0.291234 +0.851572 0.331158 0.289070 +0.844813 0.349933 0.286775 +0.837671 0.368584 0.284351 +0.830147 0.387104 0.281797 +0.822241 0.405485 0.279113 +0.813955 0.423718 0.276301 +0.805290 0.441797 0.273359 +0.796247 0.459714 0.270290 +0.786828 0.477459 0.267092 +0.777033 0.495025 0.263767 +0.766865 0.512403 0.260316 +0.756326 0.529585 0.256738 +0.745417 0.546562 0.253035 +0.734141 0.563326 0.249207 +0.722500 0.579867 0.245256 +0.710497 0.596178 0.241181 +0.698135 0.612248 0.236985 +0.685418 0.628069 0.232668 +0.672347 0.643632 0.228231 +0.658928 0.658928 0.223676 +0.643632 0.672347 0.228231 +0.628069 0.685418 0.232668 +0.612248 0.698135 0.236985 +0.596178 0.710497 0.241181 +0.579867 0.722500 0.245256 +0.563326 0.734141 0.249207 +0.546562 0.745417 0.253035 +0.529585 0.756326 0.256738 +0.512403 0.766865 0.260316 +0.495025 0.777033 0.263767 +0.477459 0.786828 0.267092 +0.459714 0.796247 0.270290 +0.441797 0.805290 0.273359 +0.423718 0.813955 0.276301 +0.405485 0.822241 0.279113 +0.387104 0.830147 0.281797 +0.368584 0.837671 0.284351 +0.349933 0.844813 0.286775 +0.331158 0.851572 0.289070 +0.312267 0.857948 0.291234 +0.293268 0.863939 0.293268 +0.274167 0.869546 0.295171 +0.254971 0.874767 0.296943 +0.235689 0.879603 0.298585 +0.216326 0.884052 0.300095 +0.196891 0.888116 0.301475 +0.177389 0.891793 0.302723 +0.157827 0.895084 0.303840 +0.138213 0.897987 0.304826 +0.118554 0.900504 0.305680 +0.098854 0.902634 0.306403 +0.079123 0.904376 0.306994 +0.059365 0.905732 0.307455 +0.039587 0.906700 0.307783 +0.019797 0.907281 0.307980 +0.000000 0.907475 0.308046 +0.913979 0.000000 0.288176 +0.913781 0.019939 0.288114 +0.913187 0.039871 0.287927 +0.912198 0.059789 0.287615 +0.910814 0.079686 0.287178 +0.909034 0.099555 0.286617 +0.906858 0.119390 0.285931 +0.904288 0.139183 0.285121 +0.901323 0.158928 0.284186 +0.897963 0.178616 0.283127 +0.894210 0.198242 0.281943 +0.890062 0.217797 0.280636 +0.885522 0.237275 0.279204 +0.880588 0.256668 0.277648 +0.875263 0.275969 0.275969 +0.869546 0.295171 0.274167 +0.863438 0.314266 0.272241 +0.856940 0.333246 0.270192 +0.850053 0.352104 0.268021 +0.842779 0.370831 0.265727 +0.835117 0.389422 0.263311 +0.827070 0.407866 0.260774 +0.818639 0.426156 0.258116 +0.809825 0.444285 0.255337 +0.800630 0.462244 0.252438 +0.791056 0.480025 0.249419 +0.781104 0.497618 0.246281 +0.770778 0.515017 0.243025 +0.760079 0.532213 0.239652 +0.749009 0.549196 0.236162 +0.737572 0.565959 0.232555 +0.725769 0.582492 0.228834 +0.713606 0.598786 0.224999 +0.701084 0.614834 0.221051 +0.688207 0.630626 0.216991 +0.674980 0.646152 0.212820 +0.661405 0.661405 0.208540 +0.646152 0.674980 0.212820 +0.630626 0.688207 0.216991 +0.614834 0.701084 0.221051 +0.598786 0.713606 0.224999 +0.582492 0.725769 0.228834 +0.565959 0.737572 0.232555 +0.549196 0.749009 0.236162 +0.532213 0.760079 0.239652 +0.515017 0.770778 0.243025 +0.497618 0.781104 0.246281 +0.480025 0.791056 0.249419 +0.462244 0.800630 0.252438 +0.444285 0.809825 0.255337 +0.426156 0.818639 0.258116 +0.407866 0.827070 0.260774 +0.389422 0.835117 0.263311 +0.370831 0.842779 0.265727 +0.352104 0.850053 0.268021 +0.333246 0.856940 0.270192 +0.314266 0.863438 0.272241 +0.295171 0.869546 0.274167 +0.275969 0.875263 0.275969 +0.256668 0.880588 0.277648 +0.237275 0.885522 0.279204 +0.217797 0.890062 0.280636 +0.198242 0.894210 0.281943 +0.178616 0.897963 0.283127 +0.158928 0.901323 0.284186 +0.139183 0.904288 0.285121 +0.119390 0.906858 0.285931 +0.099555 0.909034 0.286617 +0.079686 0.910814 0.287178 +0.059789 0.912198 0.287615 +0.039871 0.913187 0.287927 +0.019939 0.913781 0.288114 +0.000000 0.913979 0.288176 +0.920048 0.000000 0.268169 +0.919846 0.020071 0.268111 +0.919241 0.040135 0.267934 +0.918232 0.060184 0.267640 +0.916819 0.080211 0.267228 +0.915004 0.100209 0.266699 +0.912786 0.120171 0.266053 +0.910165 0.140088 0.265289 +0.907142 0.159954 0.264408 +0.903717 0.179760 0.263409 +0.899891 0.199501 0.262294 +0.895664 0.219168 0.261062 +0.891038 0.238753 0.259714 +0.886012 0.258249 0.258249 +0.880588 0.277648 0.256668 +0.874767 0.296943 0.254971 +0.868549 0.316126 0.253159 +0.861936 0.335189 0.251232 +0.854929 0.354123 0.249189 +0.847530 0.372922 0.247032 +0.839739 0.391577 0.244762 +0.831559 0.410080 0.242377 +0.822991 0.428422 0.239880 +0.814038 0.446596 0.237270 +0.804700 0.464594 0.234549 +0.794981 0.482406 0.231716 +0.784883 0.500025 0.228772 +0.774407 0.517443 0.225719 +0.763558 0.534649 0.222557 +0.752338 0.551637 0.219287 +0.740750 0.568397 0.215909 +0.728797 0.584922 0.212425 +0.716483 0.601201 0.208836 +0.703812 0.617226 0.205142 +0.690787 0.632990 0.201346 +0.677413 0.648482 0.197448 +0.663694 0.663694 0.193449 +0.648482 0.677413 0.197448 +0.632990 0.690787 0.201346 +0.617226 0.703812 0.205142 +0.601201 0.716483 0.208836 +0.584922 0.728797 0.212425 +0.568397 0.740750 0.215909 +0.551637 0.752338 0.219287 +0.534649 0.763558 0.222557 +0.517443 0.774407 0.225719 +0.500025 0.784883 0.228772 +0.482406 0.794981 0.231716 +0.464594 0.804700 0.234549 +0.446596 0.814038 0.237270 +0.428422 0.822991 0.239880 +0.410080 0.831559 0.242377 +0.391577 0.839739 0.244762 +0.372922 0.847530 0.247032 +0.354123 0.854929 0.249189 +0.335189 0.861936 0.251232 +0.316126 0.868549 0.253159 +0.296943 0.874767 0.254971 +0.277648 0.880588 0.256668 +0.258249 0.886012 0.258249 +0.238753 0.891038 0.259714 +0.219168 0.895664 0.261062 +0.199501 0.899891 0.262294 +0.179760 0.903717 0.263409 +0.159954 0.907142 0.264408 +0.140088 0.910165 0.265289 +0.120171 0.912786 0.266053 +0.100209 0.915004 0.266699 +0.080211 0.916819 0.267228 +0.060184 0.918232 0.267640 +0.040135 0.919241 0.267934 +0.020071 0.919846 0.268111 +0.000000 0.920048 0.268169 +0.925679 0.000000 0.248035 +0.925473 0.020194 0.247980 +0.924857 0.040380 0.247815 +0.923829 0.060551 0.247539 +0.922391 0.080699 0.247154 +0.920542 0.100816 0.246659 +0.918284 0.120894 0.246053 +0.915615 0.140927 0.245338 +0.912538 0.160905 0.244514 +0.909052 0.180822 0.243580 +0.905158 0.200669 0.242536 +0.900857 0.220438 0.241384 +0.896150 0.240123 0.240123 +0.891038 0.259714 0.238753 +0.885522 0.279204 0.237275 +0.879603 0.298585 0.235689 +0.873282 0.317849 0.233995 +0.866561 0.336987 0.232194 +0.859442 0.355992 0.230287 +0.851926 0.374856 0.228273 +0.844014 0.393570 0.226153 +0.835710 0.412126 0.223928 +0.827014 0.430516 0.221598 +0.817930 0.448732 0.219164 +0.808460 0.466764 0.216626 +0.798605 0.484606 0.213986 +0.788370 0.502247 0.211243 +0.777756 0.519680 0.208399 +0.766768 0.536897 0.205455 +0.755408 0.553888 0.202411 +0.743679 0.570645 0.199268 +0.731586 0.587160 0.196028 +0.719133 0.603424 0.192691 +0.706323 0.619429 0.189259 +0.693161 0.635165 0.185732 +0.679651 0.650624 0.182112 +0.665799 0.665799 0.178400 +0.650624 0.679651 0.182112 +0.635165 0.693161 0.185732 +0.619429 0.706323 0.189259 +0.603424 0.719133 0.192691 +0.587160 0.731586 0.196028 +0.570645 0.743679 0.199268 +0.553888 0.755408 0.202411 +0.536897 0.766768 0.205455 +0.519680 0.777756 0.208399 +0.502247 0.788370 0.211243 +0.484606 0.798605 0.213986 +0.466764 0.808460 0.216626 +0.448732 0.817930 0.219164 +0.430516 0.827014 0.221598 +0.412126 0.835710 0.223928 +0.393570 0.844014 0.226153 +0.374856 0.851926 0.228273 +0.355992 0.859442 0.230287 +0.336987 0.866561 0.232194 +0.317849 0.873282 0.233995 +0.298585 0.879603 0.235689 +0.279204 0.885522 0.237275 +0.259714 0.891038 0.238753 +0.240123 0.896150 0.240123 +0.220438 0.900857 0.241384 +0.200669 0.905158 0.242536 +0.180822 0.909052 0.243580 +0.160905 0.912538 0.244514 +0.140927 0.915615 0.245338 +0.120894 0.918284 0.246053 +0.100816 0.920542 0.246659 +0.080699 0.922391 0.247154 +0.060551 0.923829 0.247539 +0.040380 0.924857 0.247815 +0.020194 0.925473 0.247980 +0.000000 0.925679 0.248035 +0.930869 0.000000 0.227782 +0.930660 0.020307 0.227731 +0.930033 0.040606 0.227578 +0.928989 0.060889 0.227322 +0.927526 0.081148 0.226964 +0.925647 0.101375 0.226504 +0.923350 0.121561 0.225942 +0.920638 0.141700 0.225279 +0.917509 0.161782 0.224513 +0.913966 0.181799 0.223646 +0.910009 0.201744 0.222678 +0.905639 0.221608 0.221608 +0.900857 0.241384 0.220438 +0.895664 0.261062 0.219168 +0.890062 0.280636 0.217797 +0.884052 0.300095 0.216326 +0.877636 0.319433 0.214756 +0.870815 0.338641 0.213087 +0.863591 0.357711 0.211319 +0.855966 0.376634 0.209454 +0.847943 0.395402 0.207490 +0.839523 0.414007 0.205430 +0.830710 0.432440 0.203273 +0.821504 0.450693 0.201021 +0.811911 0.468757 0.198673 +0.801931 0.486624 0.196231 +0.791569 0.504285 0.193696 +0.780827 0.521732 0.191067 +0.769710 0.538957 0.188347 +0.758221 0.555950 0.185535 +0.746363 0.572704 0.182634 +0.734141 0.589210 0.179643 +0.721559 0.605459 0.176564 +0.708621 0.621444 0.173398 +0.695332 0.637155 0.170147 +0.681698 0.652584 0.166810 +0.667722 0.667722 0.163391 +0.652584 0.681698 0.166810 +0.637155 0.695332 0.170147 +0.621444 0.708621 0.173398 +0.605459 0.721559 0.176564 +0.589210 0.734141 0.179643 +0.572704 0.746363 0.182634 +0.555950 0.758221 0.185535 +0.538957 0.769710 0.188347 +0.521732 0.780827 0.191067 +0.504285 0.791569 0.193696 +0.486624 0.801931 0.196231 +0.468757 0.811911 0.198673 +0.450693 0.821504 0.201021 +0.432440 0.830710 0.203273 +0.414007 0.839523 0.205430 +0.395402 0.847943 0.207490 +0.376634 0.855966 0.209454 +0.357711 0.863591 0.211319 +0.338641 0.870815 0.213087 +0.319433 0.877636 0.214756 +0.300095 0.884052 0.216326 +0.280636 0.890062 0.217797 +0.261062 0.895664 0.219168 +0.241384 0.900857 0.220438 +0.221608 0.905639 0.221608 +0.201744 0.910009 0.222678 +0.181799 0.913966 0.223646 +0.161782 0.917509 0.224513 +0.141700 0.920638 0.225279 +0.121561 0.923350 0.225942 +0.101375 0.925647 0.226504 +0.081148 0.927526 0.226964 +0.060889 0.928989 0.227322 +0.040606 0.930033 0.227578 +0.020307 0.930660 0.227731 +0.000000 0.930869 0.227782 +0.935617 0.000000 0.207421 +0.935405 0.020411 0.207374 +0.934768 0.040813 0.207233 +0.933707 0.061198 0.206998 +0.932223 0.081559 0.206669 +0.930314 0.101886 0.206246 +0.927983 0.122171 0.205729 +0.925229 0.142406 0.205118 +0.922054 0.162583 0.204415 +0.918459 0.182693 0.203617 +0.914443 0.202727 0.202727 +0.910009 0.222678 0.201744 +0.905158 0.242536 0.200669 +0.899891 0.262294 0.199501 +0.894210 0.281943 0.198242 +0.888116 0.301475 0.196891 +0.881611 0.320880 0.195449 +0.874698 0.340151 0.193916 +0.867378 0.359280 0.192293 +0.859653 0.378257 0.190581 +0.851527 0.397073 0.188779 +0.843001 0.415722 0.186889 +0.834078 0.434194 0.184911 +0.824762 0.452480 0.182845 +0.815055 0.470572 0.180693 +0.804960 0.488462 0.178455 +0.794482 0.506141 0.176132 +0.783623 0.523600 0.173725 +0.772388 0.540832 0.171234 +0.760780 0.557827 0.168661 +0.748803 0.574577 0.166006 +0.736463 0.591074 0.163270 +0.723763 0.607309 0.160454 +0.710708 0.623275 0.157560 +0.697304 0.638962 0.154589 +0.683556 0.654362 0.151541 +0.669468 0.669468 0.148418 +0.654362 0.683556 0.151541 +0.638962 0.697304 0.154589 +0.623275 0.710708 0.157560 +0.607309 0.723763 0.160454 +0.591074 0.736463 0.163270 +0.574577 0.748803 0.166006 +0.557827 0.760780 0.168661 +0.540832 0.772388 0.171234 +0.523600 0.783623 0.173725 +0.506141 0.794482 0.176132 +0.488462 0.804960 0.178455 +0.470572 0.815055 0.180693 +0.452480 0.824762 0.182845 +0.434194 0.834078 0.184911 +0.415722 0.843001 0.186889 +0.397073 0.851527 0.188779 +0.378257 0.859653 0.190581 +0.359280 0.867378 0.192293 +0.340151 0.874698 0.193916 +0.320880 0.881611 0.195449 +0.301475 0.888116 0.196891 +0.281943 0.894210 0.198242 +0.262294 0.899891 0.199501 +0.242536 0.905158 0.200669 +0.222678 0.910009 0.201744 +0.202727 0.914443 0.202727 +0.182693 0.918459 0.203617 +0.162583 0.922054 0.204415 +0.142406 0.925229 0.205118 +0.122171 0.927983 0.205729 +0.101886 0.930314 0.206246 +0.081559 0.932223 0.206669 +0.061198 0.933707 0.206998 +0.040813 0.934768 0.207233 +0.020411 0.935405 0.207374 +0.000000 0.935617 0.207421 +0.939919 0.000000 0.186962 +0.939704 0.020504 0.186919 +0.939059 0.041000 0.186790 +0.937983 0.061479 0.186576 +0.936478 0.081931 0.186277 +0.934543 0.102349 0.185892 +0.932180 0.122724 0.185422 +0.929389 0.143047 0.184867 +0.926171 0.163309 0.184227 +0.922527 0.183502 0.183502 +0.918459 0.203617 0.182693 +0.913966 0.223646 0.181799 +0.909052 0.243580 0.180822 +0.903717 0.263409 0.179760 +0.897963 0.283127 0.178616 +0.891793 0.302723 0.177389 +0.885208 0.322189 0.176079 +0.878210 0.341517 0.174687 +0.870802 0.360698 0.173213 +0.862987 0.379723 0.171659 +0.854766 0.398584 0.170024 +0.846144 0.417272 0.168308 +0.837122 0.435778 0.166514 +0.827704 0.454094 0.164641 +0.817894 0.472212 0.162689 +0.807695 0.490122 0.160661 +0.797111 0.507816 0.158555 +0.786146 0.525286 0.156374 +0.774803 0.542523 0.154118 +0.763087 0.559519 0.151787 +0.751003 0.576265 0.149384 +0.738555 0.592753 0.146908 +0.725749 0.608976 0.144360 +0.712589 0.624923 0.141743 +0.699080 0.640589 0.139056 +0.685228 0.655963 0.136300 +0.671039 0.671039 0.133478 +0.655963 0.685228 0.136300 +0.640589 0.699080 0.139056 +0.624923 0.712589 0.141743 +0.608976 0.725749 0.144360 +0.592753 0.738555 0.146908 +0.576265 0.751003 0.149384 +0.559519 0.763087 0.151787 +0.542523 0.774803 0.154118 +0.525286 0.786146 0.156374 +0.507816 0.797111 0.158555 +0.490122 0.807695 0.160661 +0.472212 0.817894 0.162689 +0.454094 0.827704 0.164641 +0.435778 0.837122 0.166514 +0.417272 0.846144 0.168308 +0.398584 0.854766 0.170024 +0.379723 0.862987 0.171659 +0.360698 0.870802 0.173213 +0.341517 0.878210 0.174687 +0.322189 0.885208 0.176079 +0.302723 0.891793 0.177389 +0.283127 0.897963 0.178616 +0.263409 0.903717 0.179760 +0.243580 0.909052 0.180822 +0.223646 0.913966 0.181799 +0.203617 0.918459 0.182693 +0.183502 0.922527 0.183502 +0.163309 0.926171 0.184227 +0.143047 0.929389 0.184867 +0.122724 0.932180 0.185422 +0.102349 0.934543 0.185892 +0.081931 0.936478 0.186277 +0.061479 0.937983 0.186576 +0.041000 0.939059 0.186790 +0.020504 0.939704 0.186919 +0.000000 0.939919 0.186962 +0.943774 0.000000 0.166413 +0.943556 0.020588 0.166374 +0.942903 0.041168 0.166259 +0.941814 0.061730 0.166067 +0.940290 0.082265 0.165799 +0.938332 0.102764 0.165453 +0.935940 0.123219 0.165032 +0.933116 0.143620 0.164533 +0.929859 0.163959 0.163959 +0.926171 0.184227 0.163309 +0.922054 0.204415 0.162583 +0.917509 0.224513 0.161782 +0.912538 0.244514 0.160905 +0.907142 0.264408 0.159954 +0.901323 0.284186 0.158928 +0.895084 0.303840 0.157827 +0.888426 0.323361 0.156653 +0.881352 0.342739 0.155406 +0.873865 0.361967 0.154086 +0.865968 0.381035 0.152693 +0.857662 0.399935 0.151229 +0.848953 0.418657 0.149693 +0.839842 0.437194 0.148087 +0.830333 0.455536 0.146410 +0.820431 0.473676 0.144664 +0.810138 0.491604 0.142849 +0.799458 0.509311 0.140966 +0.788397 0.526790 0.139016 +0.776958 0.544032 0.136999 +0.765146 0.561028 0.134916 +0.752965 0.577771 0.132768 +0.740421 0.594251 0.130556 +0.727519 0.610461 0.128281 +0.714264 0.626393 0.125944 +0.700661 0.642038 0.123546 +0.686717 0.657389 0.121087 +0.672437 0.672437 0.118569 +0.657389 0.686717 0.121087 +0.642038 0.700661 0.123546 +0.626393 0.714264 0.125944 +0.610461 0.727519 0.128281 +0.594251 0.740421 0.130556 +0.577771 0.752965 0.132768 +0.561028 0.765146 0.134916 +0.544032 0.776958 0.136999 +0.526790 0.788397 0.139016 +0.509311 0.799458 0.140966 +0.491604 0.810138 0.142849 +0.473676 0.820431 0.144664 +0.455536 0.830333 0.146410 +0.437194 0.839842 0.148087 +0.418657 0.848953 0.149693 +0.399935 0.857662 0.151229 +0.381035 0.865968 0.152693 +0.361967 0.873865 0.154086 +0.342739 0.881352 0.155406 +0.323361 0.888426 0.156653 +0.303840 0.895084 0.157827 +0.284186 0.901323 0.158928 +0.264408 0.907142 0.159954 +0.244514 0.912538 0.160905 +0.224513 0.917509 0.161782 +0.204415 0.922054 0.162583 +0.184227 0.926171 0.163309 +0.163959 0.929859 0.163959 +0.143620 0.933116 0.164533 +0.123219 0.935940 0.165032 +0.102764 0.938332 0.165453 +0.082265 0.940290 0.165799 +0.061730 0.941814 0.166067 +0.041168 0.942903 0.166259 +0.020588 0.943556 0.166374 +0.000000 0.943774 0.166413 +0.947180 0.000000 0.145785 +0.946960 0.020663 0.145751 +0.946299 0.041316 0.145649 +0.945199 0.061952 0.145480 +0.943658 0.082559 0.145243 +0.941679 0.103131 0.144938 +0.939262 0.123656 0.144566 +0.936407 0.144127 0.144127 +0.933116 0.164533 0.143620 +0.929389 0.184867 0.143047 +0.925229 0.205118 0.142406 +0.920638 0.225279 0.141700 +0.915615 0.245338 0.140927 +0.910165 0.265289 0.140088 +0.904288 0.285121 0.139183 +0.897987 0.304826 0.138213 +0.891265 0.324394 0.137179 +0.884124 0.343817 0.136080 +0.876567 0.363086 0.134917 +0.868596 0.382192 0.133690 +0.860216 0.401125 0.132400 +0.851429 0.419878 0.131047 +0.842239 0.438442 0.129633 +0.832650 0.456807 0.128157 +0.822665 0.474966 0.126620 +0.812289 0.492909 0.125023 +0.801525 0.510628 0.123367 +0.790379 0.528114 0.121651 +0.778855 0.545360 0.119877 +0.766957 0.562356 0.118046 +0.754691 0.579095 0.116158 +0.742062 0.595568 0.114214 +0.729076 0.611767 0.112215 +0.715737 0.627684 0.110162 +0.702052 0.643312 0.108056 +0.688026 0.658642 0.105897 +0.673666 0.673666 0.103687 +0.658642 0.688026 0.105897 +0.643312 0.702052 0.108056 +0.627684 0.715737 0.110162 +0.611767 0.729076 0.112215 +0.595568 0.742062 0.114214 +0.579095 0.754691 0.116158 +0.562356 0.766957 0.118046 +0.545360 0.778855 0.119877 +0.528114 0.790379 0.121651 +0.510628 0.801525 0.123367 +0.492909 0.812289 0.125023 +0.474966 0.822665 0.126620 +0.456807 0.832650 0.128157 +0.438442 0.842239 0.129633 +0.419878 0.851429 0.131047 +0.401125 0.860216 0.132400 +0.382192 0.868596 0.133690 +0.363086 0.876567 0.134917 +0.343817 0.884124 0.136080 +0.324394 0.891265 0.137179 +0.304826 0.897987 0.138213 +0.285121 0.904288 0.139183 +0.265289 0.910165 0.140088 +0.245338 0.915615 0.140927 +0.225279 0.920638 0.141700 +0.205118 0.925229 0.142406 +0.184867 0.929389 0.143047 +0.164533 0.933116 0.143620 +0.144127 0.936407 0.144127 +0.123656 0.939262 0.144566 +0.103131 0.941679 0.144938 +0.082559 0.943658 0.145243 +0.061952 0.945199 0.145480 +0.041316 0.946299 0.145649 +0.020663 0.946960 0.145751 +0.000000 0.947180 0.145785 +0.950135 0.000000 0.125088 +0.949912 0.020727 0.125058 +0.949246 0.041445 0.124971 +0.948135 0.062144 0.124824 +0.946580 0.082815 0.124620 +0.944583 0.103449 0.124357 +0.942143 0.124035 0.124035 +0.939262 0.144566 0.123656 +0.935940 0.165032 0.123219 +0.932180 0.185422 0.122724 +0.927983 0.205729 0.122171 +0.923350 0.225942 0.121561 +0.918284 0.246053 0.120894 +0.912786 0.266053 0.120171 +0.906858 0.285931 0.119390 +0.900504 0.305680 0.118554 +0.893726 0.325289 0.117661 +0.886526 0.344751 0.116713 +0.878907 0.364055 0.115710 +0.870873 0.383193 0.114653 +0.862428 0.402157 0.113541 +0.853573 0.420936 0.112375 +0.844315 0.439522 0.111156 +0.834655 0.457907 0.109884 +0.824599 0.476082 0.108560 +0.814150 0.494038 0.107185 +0.803313 0.511767 0.105758 +0.792094 0.529260 0.104281 +0.780495 0.546509 0.102754 +0.768523 0.563505 0.101178 +0.756183 0.580240 0.099553 +0.743481 0.596706 0.097881 +0.730421 0.612896 0.096162 +0.717009 0.628800 0.094396 +0.703252 0.644412 0.092585 +0.689156 0.659723 0.090729 +0.674727 0.674727 0.088829 +0.659723 0.689156 0.090729 +0.644412 0.703252 0.092585 +0.628800 0.717009 0.094396 +0.612896 0.730421 0.096162 +0.596706 0.743481 0.097881 +0.580240 0.756183 0.099553 +0.563505 0.768523 0.101178 +0.546509 0.780495 0.102754 +0.529260 0.792094 0.104281 +0.511767 0.803313 0.105758 +0.494038 0.814150 0.107185 +0.476082 0.824599 0.108560 +0.457907 0.834655 0.109884 +0.439522 0.844315 0.111156 +0.420936 0.853573 0.112375 +0.402157 0.862428 0.113541 +0.383193 0.870873 0.114653 +0.364055 0.878907 0.115710 +0.344751 0.886526 0.116713 +0.325289 0.893726 0.117661 +0.305680 0.900504 0.118554 +0.285931 0.906858 0.119390 +0.266053 0.912786 0.120171 +0.246053 0.918284 0.120894 +0.225942 0.923350 0.121561 +0.205729 0.927983 0.122171 +0.185422 0.932180 0.122724 +0.165032 0.935940 0.123219 +0.144566 0.939262 0.123656 +0.124035 0.942143 0.124035 +0.103449 0.944583 0.124357 +0.082815 0.946580 0.124620 +0.062144 0.948135 0.124824 +0.041445 0.949246 0.124971 +0.020727 0.949912 0.125058 +0.000000 0.950135 0.125088 +0.952637 0.000000 0.104331 +0.952413 0.020782 0.104306 +0.951741 0.041554 0.104233 +0.950622 0.062307 0.104110 +0.949055 0.083032 0.103938 +0.947042 0.103718 0.103718 +0.944583 0.124357 0.103449 +0.941679 0.144938 0.103131 +0.938332 0.165453 0.102764 +0.934543 0.185892 0.102349 +0.930314 0.206246 0.101886 +0.925647 0.226504 0.101375 +0.920542 0.246659 0.100816 +0.915004 0.266699 0.100209 +0.909034 0.286617 0.099555 +0.902634 0.306403 0.098854 +0.895807 0.326047 0.098107 +0.888557 0.345541 0.097313 +0.880887 0.364875 0.096473 +0.872799 0.384041 0.095587 +0.864298 0.403029 0.094656 +0.855387 0.421830 0.093680 +0.846069 0.440436 0.092660 +0.836350 0.458837 0.091595 +0.826233 0.477026 0.090487 +0.815723 0.494993 0.089336 +0.804824 0.512730 0.088143 +0.793542 0.530228 0.086907 +0.781881 0.547479 0.085630 +0.769846 0.564474 0.084312 +0.757443 0.581207 0.082954 +0.744678 0.597667 0.081556 +0.731556 0.613848 0.080118 +0.718083 0.629742 0.078643 +0.704265 0.645340 0.077130 +0.690109 0.660636 0.075579 +0.675621 0.675621 0.073993 +0.660636 0.690109 0.075579 +0.645340 0.704265 0.077130 +0.629742 0.718083 0.078643 +0.613848 0.731556 0.080118 +0.597667 0.744678 0.081556 +0.581207 0.757443 0.082954 +0.564474 0.769846 0.084312 +0.547479 0.781881 0.085630 +0.530228 0.793542 0.086907 +0.512730 0.804824 0.088143 +0.494993 0.815723 0.089336 +0.477026 0.826233 0.090487 +0.458837 0.836350 0.091595 +0.440436 0.846069 0.092660 +0.421830 0.855387 0.093680 +0.403029 0.864298 0.094656 +0.384041 0.872799 0.095587 +0.364875 0.880887 0.096473 +0.345541 0.888557 0.097313 +0.326047 0.895807 0.098107 +0.306403 0.902634 0.098854 +0.286617 0.909034 0.099555 +0.266699 0.915004 0.100209 +0.246659 0.920542 0.100816 +0.226504 0.925647 0.101375 +0.206246 0.930314 0.101886 +0.185892 0.934543 0.102349 +0.165453 0.938332 0.102764 +0.144938 0.941679 0.103131 +0.124357 0.944583 0.103449 +0.103718 0.947042 0.103718 +0.083032 0.949055 0.103938 +0.062307 0.950622 0.104110 +0.041554 0.951741 0.104233 +0.020782 0.952413 0.104306 +0.000000 0.952637 0.104331 +0.954687 0.000000 0.083524 +0.954461 0.020826 0.083505 +0.953785 0.041643 0.083445 +0.952658 0.062441 0.083347 +0.951081 0.083209 0.083209 +0.949055 0.103938 0.083032 +0.946580 0.124620 0.082815 +0.943658 0.145243 0.082559 +0.940290 0.165799 0.082265 +0.936478 0.186277 0.081931 +0.932223 0.206669 0.081559 +0.927526 0.226964 0.081148 +0.922391 0.247154 0.080699 +0.916819 0.267228 0.080211 +0.910814 0.287178 0.079686 +0.904376 0.306994 0.079123 +0.897511 0.326667 0.078522 +0.890220 0.346187 0.077884 +0.882506 0.365546 0.077209 +0.874374 0.384734 0.076498 +0.865827 0.403742 0.075750 +0.856869 0.422561 0.074966 +0.847504 0.441183 0.074147 +0.837736 0.459598 0.073292 +0.827569 0.477797 0.072403 +0.817008 0.495773 0.071479 +0.806059 0.513516 0.070521 +0.794725 0.531018 0.069529 +0.783012 0.548271 0.068505 +0.770926 0.565267 0.067447 +0.758472 0.581996 0.066358 +0.745656 0.598452 0.065236 +0.732483 0.614626 0.064084 +0.718959 0.630511 0.062901 +0.705092 0.646098 0.061688 +0.690887 0.661381 0.060445 +0.676351 0.676351 0.059173 +0.661381 0.690887 0.060445 +0.646098 0.705092 0.061688 +0.630511 0.718959 0.062901 +0.614626 0.732483 0.064084 +0.598452 0.745656 0.065236 +0.581996 0.758472 0.066358 +0.565267 0.770926 0.067447 +0.548271 0.783012 0.068505 +0.531018 0.794725 0.069529 +0.513516 0.806059 0.070521 +0.495773 0.817008 0.071479 +0.477797 0.827569 0.072403 +0.459598 0.837736 0.073292 +0.441183 0.847504 0.074147 +0.422561 0.856869 0.074966 +0.403742 0.865827 0.075750 +0.384734 0.874374 0.076498 +0.365546 0.882506 0.077209 +0.346187 0.890220 0.077884 +0.326667 0.897511 0.078522 +0.306994 0.904376 0.079123 +0.287178 0.910814 0.079686 +0.267228 0.916819 0.080211 +0.247154 0.922391 0.080699 +0.226964 0.927526 0.081148 +0.206669 0.932223 0.081559 +0.186277 0.936478 0.081931 +0.165799 0.940290 0.082265 +0.145243 0.943658 0.082559 +0.124620 0.946580 0.082815 +0.103938 0.949055 0.083032 +0.083209 0.951081 0.083209 +0.062441 0.952658 0.083347 +0.041643 0.953785 0.083445 +0.020826 0.954461 0.083505 +0.000000 0.954687 0.083524 +0.956281 0.000000 0.062678 +0.956055 0.020861 0.062663 +0.955375 0.041713 0.062619 +0.954243 0.062544 0.062544 +0.952658 0.083347 0.062441 +0.950622 0.104110 0.062307 +0.948135 0.124824 0.062144 +0.945199 0.145480 0.061952 +0.941814 0.166067 0.061730 +0.937983 0.186576 0.061479 +0.933707 0.206998 0.061198 +0.928989 0.227322 0.060889 +0.923829 0.247539 0.060551 +0.918232 0.267640 0.060184 +0.912198 0.287615 0.059789 +0.905732 0.307455 0.059365 +0.898836 0.327149 0.058913 +0.891512 0.346690 0.058433 +0.883766 0.366068 0.057925 +0.875599 0.385273 0.057390 +0.867017 0.404296 0.056827 +0.858022 0.423130 0.056238 +0.848619 0.441763 0.055621 +0.838813 0.460188 0.054979 +0.828607 0.478397 0.054310 +0.818007 0.496379 0.053615 +0.807018 0.514127 0.052895 +0.795644 0.531633 0.052149 +0.783892 0.548887 0.051379 +0.771765 0.565882 0.050584 +0.759271 0.582609 0.049765 +0.746415 0.599061 0.048923 +0.733202 0.615230 0.048057 +0.719640 0.631107 0.047168 +0.705734 0.646686 0.046256 +0.691491 0.661958 0.045323 +0.676917 0.676917 0.044368 +0.661958 0.691491 0.045323 +0.646686 0.705734 0.046256 +0.631107 0.719640 0.047168 +0.615230 0.733202 0.048057 +0.599061 0.746415 0.048923 +0.582609 0.759271 0.049765 +0.565882 0.771765 0.050584 +0.548887 0.783892 0.051379 +0.531633 0.795644 0.052149 +0.514127 0.807018 0.052895 +0.496379 0.818007 0.053615 +0.478397 0.828607 0.054310 +0.460188 0.838813 0.054979 +0.441763 0.848619 0.055621 +0.423130 0.858022 0.056238 +0.404296 0.867017 0.056827 +0.385273 0.875599 0.057390 +0.366068 0.883766 0.057925 +0.346690 0.891512 0.058433 +0.327149 0.898836 0.058913 +0.307455 0.905732 0.059365 +0.287615 0.912198 0.059789 +0.267640 0.918232 0.060184 +0.247539 0.923829 0.060551 +0.227322 0.928989 0.060889 +0.206998 0.933707 0.061198 +0.186576 0.937983 0.061479 +0.166067 0.941814 0.061730 +0.145480 0.945199 0.061952 +0.124824 0.948135 0.062144 +0.104110 0.950622 0.062307 +0.083347 0.952658 0.062441 +0.062544 0.954243 0.062544 +0.041713 0.955375 0.062619 +0.020861 0.956055 0.062663 +0.000000 0.956281 0.062678 +0.957421 0.000000 0.041802 +0.957194 0.020886 0.041792 +0.956512 0.041762 0.041762 +0.955375 0.062619 0.041713 +0.953785 0.083445 0.041643 +0.951741 0.104233 0.041554 +0.949246 0.124971 0.041445 +0.946299 0.145649 0.041316 +0.942903 0.166259 0.041168 +0.939059 0.186790 0.041000 +0.934768 0.207233 0.040813 +0.930033 0.227578 0.040606 +0.924857 0.247815 0.040380 +0.919241 0.267934 0.040135 +0.913187 0.287927 0.039871 +0.906700 0.307783 0.039587 +0.899782 0.327494 0.039285 +0.892436 0.347049 0.038965 +0.884665 0.366440 0.038625 +0.876474 0.385658 0.038268 +0.867866 0.404692 0.037892 +0.858845 0.423535 0.037498 +0.849415 0.442178 0.037086 +0.839582 0.460610 0.036657 +0.829348 0.478824 0.036210 +0.818720 0.496812 0.035746 +0.807703 0.514563 0.035265 +0.796300 0.532071 0.034767 +0.784519 0.549326 0.034253 +0.772364 0.566321 0.033722 +0.759841 0.583047 0.033175 +0.746956 0.599496 0.032613 +0.733716 0.615661 0.032035 +0.720125 0.631533 0.031441 +0.706192 0.647105 0.030833 +0.691921 0.662371 0.030210 +0.677321 0.677321 0.029572 +0.662371 0.691921 0.030210 +0.647105 0.706192 0.030833 +0.631533 0.720125 0.031441 +0.615661 0.733716 0.032035 +0.599496 0.746956 0.032613 +0.583047 0.759841 0.033175 +0.566321 0.772364 0.033722 +0.549326 0.784519 0.034253 +0.532071 0.796300 0.034767 +0.514563 0.807703 0.035265 +0.496812 0.818720 0.035746 +0.478824 0.829348 0.036210 +0.460610 0.839582 0.036657 +0.442178 0.849415 0.037086 +0.423535 0.858845 0.037498 +0.404692 0.867866 0.037892 +0.385658 0.876474 0.038268 +0.366440 0.884665 0.038625 +0.347049 0.892436 0.038965 +0.327494 0.899782 0.039285 +0.307783 0.906700 0.039587 +0.287927 0.913187 0.039871 +0.267934 0.919241 0.040135 +0.247815 0.924857 0.040380 +0.227578 0.930033 0.040606 +0.207233 0.934768 0.040813 +0.186790 0.939059 0.041000 +0.166259 0.942903 0.041168 +0.145649 0.946299 0.041316 +0.124971 0.949246 0.041445 +0.104233 0.951741 0.041554 +0.083445 0.953785 0.041643 +0.062619 0.955375 0.041713 +0.041762 0.956512 0.041762 +0.020886 0.957194 0.041792 +0.000000 0.957421 0.041802 +0.958105 0.000000 0.020906 +0.957877 0.020901 0.020901 +0.957194 0.041792 0.020886 +0.956055 0.062663 0.020861 +0.954461 0.083505 0.020826 +0.952413 0.104306 0.020782 +0.949912 0.125058 0.020727 +0.946960 0.145751 0.020663 +0.943556 0.166374 0.020588 +0.939704 0.186919 0.020504 +0.935405 0.207374 0.020411 +0.930660 0.227731 0.020307 +0.925473 0.247980 0.020194 +0.919846 0.268111 0.020071 +0.913781 0.288114 0.019939 +0.907281 0.307980 0.019797 +0.900350 0.327700 0.019646 +0.892990 0.347265 0.019485 +0.885205 0.366664 0.019315 +0.876999 0.385889 0.019136 +0.868375 0.404930 0.018948 +0.859339 0.423779 0.018751 +0.849893 0.442426 0.018545 +0.840043 0.460863 0.018330 +0.829793 0.479081 0.018106 +0.819148 0.497071 0.017874 +0.808113 0.514825 0.017633 +0.796694 0.532334 0.017384 +0.784895 0.549590 0.017126 +0.772723 0.566584 0.016861 +0.760183 0.583309 0.016587 +0.747281 0.599756 0.016306 +0.734023 0.615919 0.016016 +0.720416 0.631788 0.015720 +0.706466 0.647357 0.015415 +0.692179 0.662618 0.015103 +0.677563 0.677563 0.014784 +0.662618 0.692179 0.015103 +0.647357 0.706466 0.015415 +0.631788 0.720416 0.015720 +0.615919 0.734023 0.016016 +0.599756 0.747281 0.016306 +0.583309 0.760183 0.016587 +0.566584 0.772723 0.016861 +0.549590 0.784895 0.017126 +0.532334 0.796694 0.017384 +0.514825 0.808113 0.017633 +0.497071 0.819148 0.017874 +0.479081 0.829793 0.018106 +0.460863 0.840043 0.018330 +0.442426 0.849893 0.018545 +0.423779 0.859339 0.018751 +0.404930 0.868375 0.018948 +0.385889 0.876999 0.019136 +0.366664 0.885205 0.019315 +0.347265 0.892990 0.019485 +0.327700 0.900350 0.019646 +0.307980 0.907281 0.019797 +0.288114 0.913781 0.019939 +0.268111 0.919846 0.020071 +0.247980 0.925473 0.020194 +0.227731 0.930660 0.020307 +0.207374 0.935405 0.020411 +0.186919 0.939704 0.020504 +0.166374 0.943556 0.020588 +0.145751 0.946960 0.020663 +0.125058 0.949912 0.020727 +0.104306 0.952413 0.020782 +0.083505 0.954461 0.020826 +0.062663 0.956055 0.020861 +0.041792 0.957194 0.020886 +0.020901 0.957877 0.020901 +0.000000 0.958105 0.020906 +0.958333 0.000000 0.000000 +0.958105 0.020906 0.000000 +0.957421 0.041802 0.000000 +0.956281 0.062678 0.000000 +0.954687 0.083524 0.000000 +0.952637 0.104331 0.000000 +0.950135 0.125088 0.000000 +0.947180 0.145785 0.000000 +0.943774 0.166413 0.000000 +0.939919 0.186962 0.000000 +0.935617 0.207421 0.000000 +0.930869 0.227782 0.000000 +0.925679 0.248035 0.000000 +0.920048 0.268169 0.000000 +0.913979 0.288176 0.000000 +0.907475 0.308046 0.000000 +0.900539 0.327769 0.000000 +0.893174 0.347336 0.000000 +0.885385 0.366738 0.000000 +0.877174 0.385966 0.000000 +0.868545 0.405009 0.000000 +0.859503 0.423860 0.000000 +0.850052 0.442509 0.000000 +0.840196 0.460948 0.000000 +0.829941 0.479167 0.000000 +0.819291 0.497158 0.000000 +0.808250 0.514912 0.000000 +0.796825 0.532421 0.000000 +0.785021 0.549677 0.000000 +0.772843 0.566672 0.000000 +0.760297 0.583396 0.000000 +0.747389 0.599843 0.000000 +0.734126 0.616005 0.000000 +0.720513 0.631873 0.000000 +0.706557 0.647441 0.000000 +0.692265 0.662700 0.000000 +0.677644 0.677644 0.000000 +0.662700 0.692265 0.000000 +0.647441 0.706557 0.000000 +0.631873 0.720513 0.000000 +0.616005 0.734126 0.000000 +0.599843 0.747389 0.000000 +0.583396 0.760297 0.000000 +0.566672 0.772843 0.000000 +0.549677 0.785021 0.000000 +0.532421 0.796825 0.000000 +0.514912 0.808250 0.000000 +0.497158 0.819291 0.000000 +0.479167 0.829941 0.000000 +0.460948 0.840196 0.000000 +0.442509 0.850052 0.000000 +0.423860 0.859503 0.000000 +0.405009 0.868545 0.000000 +0.385966 0.877174 0.000000 +0.366738 0.885385 0.000000 +0.347336 0.893174 0.000000 +0.327769 0.900539 0.000000 +0.308046 0.907475 0.000000 +0.288176 0.913979 0.000000 +0.268169 0.920048 0.000000 +0.248035 0.925679 0.000000 +0.227782 0.930869 0.000000 +0.207421 0.935617 0.000000 +0.186962 0.939919 0.000000 +0.166413 0.943774 0.000000 +0.145785 0.947180 0.000000 +0.125088 0.950135 0.000000 +0.104331 0.952637 0.000000 +0.083524 0.954687 0.000000 +0.062678 0.956281 0.000000 +0.041802 0.957421 0.000000 +0.020906 0.958105 0.000000 +0.000000 0.958333 0.000000 +0.000000 0.000000 1.016667 +0.022178 0.000000 1.016425 +0.022173 0.022173 1.016183 +0.000000 0.022178 1.016425 +0.044346 0.000000 1.015699 +0.044336 0.022157 1.015458 +0.044304 0.044304 1.014734 +0.022157 0.044336 1.015458 +0.000000 0.044346 1.015699 +0.066493 0.000000 1.014490 +0.066477 0.022131 1.014250 +0.066430 0.044252 1.013528 +0.066351 0.066351 1.012327 +0.044252 0.066430 1.013528 +0.022131 0.066477 1.014250 +0.000000 0.066493 1.014490 +0.088608 0.000000 1.012798 +0.088587 0.022094 1.012559 +0.088525 0.044178 1.011841 +0.088420 0.066241 1.010646 +0.088274 0.088274 1.008973 +0.066241 0.088420 1.010646 +0.044178 0.088525 1.011841 +0.022094 0.088587 1.012559 +0.000000 0.088608 1.012798 +0.110681 0.000000 1.010624 +0.110655 0.022047 1.010386 +0.110577 0.044083 1.009673 +0.110447 0.066100 1.008486 +0.110265 0.088086 1.006824 +0.110031 0.110031 1.004688 +0.088086 0.110265 1.006824 +0.066100 0.110447 1.008486 +0.044083 0.110577 1.009673 +0.022047 0.110655 1.010386 +0.000000 0.110681 1.010624 +0.132702 0.000000 1.007969 +0.132671 0.021989 1.007733 +0.132577 0.043968 1.007026 +0.132422 0.065927 1.005847 +0.132205 0.087856 1.004198 +0.131926 0.109746 1.002079 +0.131585 0.131585 0.999491 +0.109746 0.131926 1.002079 +0.087856 0.132205 1.004198 +0.065927 0.132422 1.005847 +0.043968 0.132577 1.007026 +0.021989 0.132671 1.007733 +0.000000 0.132702 1.007969 +0.154659 0.000000 1.004834 +0.154623 0.021920 1.004601 +0.154515 0.043831 1.003900 +0.154335 0.065723 1.002732 +0.154084 0.087585 1.001098 +0.153761 0.109408 0.998999 +0.153366 0.131183 0.996434 +0.152900 0.152900 0.993405 +0.131183 0.153366 0.996434 +0.109408 0.153761 0.998999 +0.087585 0.154084 1.001098 +0.065723 0.154335 1.002732 +0.043831 0.154515 1.003900 +0.021920 0.154623 1.004601 +0.000000 0.154659 1.004834 +0.176542 0.000000 1.001221 +0.176502 0.021842 1.000990 +0.176379 0.043674 1.000297 +0.176176 0.065487 0.999142 +0.175891 0.087272 0.997526 +0.175524 0.109019 0.995448 +0.175077 0.130719 0.992911 +0.174549 0.152362 0.989914 +0.173939 0.173939 0.986459 +0.152362 0.174549 0.989914 +0.130719 0.175077 0.992911 +0.109019 0.175524 0.995448 +0.087272 0.175891 0.997526 +0.065487 0.176176 0.999142 +0.043674 0.176379 1.000297 +0.021842 0.176502 1.000990 +0.000000 0.176542 1.001221 +0.198342 0.000000 0.997132 +0.198296 0.021753 0.996903 +0.198160 0.043496 0.996219 +0.197933 0.065221 0.995078 +0.197616 0.086918 0.993481 +0.197207 0.108579 0.991429 +0.196709 0.130194 0.988922 +0.196120 0.151754 0.985961 +0.195441 0.173250 0.982547 +0.194672 0.194672 0.978681 +0.173250 0.195441 0.982547 +0.151754 0.196120 0.985961 +0.130194 0.196709 0.988922 +0.108579 0.197207 0.991429 +0.086918 0.197616 0.993481 +0.065221 0.197933 0.995078 +0.043496 0.198160 0.996219 +0.021753 0.198296 0.996903 +0.000000 0.198342 0.997132 +0.220047 0.000000 0.992568 +0.219997 0.021653 0.992342 +0.219847 0.043297 0.991667 +0.219598 0.064924 0.990542 +0.219249 0.086523 0.988967 +0.218800 0.108088 0.986942 +0.218252 0.129608 0.984469 +0.217604 0.151075 0.981548 +0.216857 0.172479 0.978179 +0.216011 0.193813 0.974365 +0.215067 0.215067 0.970105 +0.193813 0.216011 0.974365 +0.172479 0.216857 0.978179 +0.151075 0.217604 0.981548 +0.129608 0.218252 0.984469 +0.108088 0.218800 0.986942 +0.086523 0.219249 0.988967 +0.064924 0.219598 0.990542 +0.043297 0.219847 0.991667 +0.021653 0.219997 0.992342 +0.000000 0.220047 0.992568 +0.241647 0.000000 0.987531 +0.241593 0.021543 0.987309 +0.241430 0.043078 0.986644 +0.241159 0.064595 0.985536 +0.240779 0.086087 0.983984 +0.240292 0.107545 0.981990 +0.239695 0.128961 0.979554 +0.238991 0.150325 0.976676 +0.238179 0.171629 0.973358 +0.237259 0.192865 0.969599 +0.236232 0.214024 0.965401 +0.235098 0.235098 0.960765 +0.214024 0.236232 0.965401 +0.192865 0.237259 0.969599 +0.171629 0.238179 0.973358 +0.150325 0.238991 0.976676 +0.128961 0.239695 0.979554 +0.107545 0.240292 0.981990 +0.086087 0.240779 0.983984 +0.064595 0.241159 0.985536 +0.043078 0.241430 0.986644 +0.021543 0.241593 0.987309 +0.000000 0.241647 0.987531 +0.263133 0.000000 0.982025 +0.263074 0.021423 0.981807 +0.262899 0.042838 0.981152 +0.262607 0.064237 0.980062 +0.262198 0.085611 0.978537 +0.261673 0.106952 0.976576 +0.261031 0.128253 0.974179 +0.260272 0.149505 0.971348 +0.259397 0.170699 0.968084 +0.258406 0.191828 0.964385 +0.257299 0.212883 0.960255 +0.256077 0.233856 0.955692 +0.254739 0.254739 0.950698 +0.233856 0.256077 0.955692 +0.212883 0.257299 0.960255 +0.191828 0.258406 0.964385 +0.170699 0.259397 0.968084 +0.149505 0.260272 0.971348 +0.128253 0.261031 0.974179 +0.106952 0.261673 0.976576 +0.085611 0.262198 0.978537 +0.064237 0.262607 0.980062 +0.042838 0.262899 0.981152 +0.021423 0.263074 0.981807 +0.000000 0.263133 0.982025 +0.284493 0.000000 0.976051 +0.284430 0.021293 0.975837 +0.284243 0.042578 0.975194 +0.283931 0.063847 0.974124 +0.283495 0.085094 0.972626 +0.282933 0.106309 0.970700 +0.282247 0.127485 0.968347 +0.281437 0.148615 0.965566 +0.280502 0.169690 0.962359 +0.279443 0.190702 0.958726 +0.278260 0.211645 0.954667 +0.276953 0.232508 0.950183 +0.275523 0.253286 0.945275 +0.273969 0.273969 0.939943 +0.253286 0.275523 0.945275 +0.232508 0.276953 0.950183 +0.211645 0.278260 0.954667 +0.190702 0.279443 0.958726 +0.169690 0.280502 0.962359 +0.148615 0.281437 0.965566 +0.127485 0.282247 0.968347 +0.106309 0.282933 0.970700 +0.085094 0.283495 0.972626 +0.063847 0.283931 0.974124 +0.042578 0.284243 0.975194 +0.021293 0.284430 0.975837 +0.000000 0.284493 0.976051 +0.305718 0.000000 0.969612 +0.305651 0.021152 0.969402 +0.305453 0.042298 0.968773 +0.305122 0.063428 0.967723 +0.304659 0.084536 0.966254 +0.304063 0.105615 0.964366 +0.303336 0.126657 0.962058 +0.302476 0.147655 0.959332 +0.301484 0.168601 0.956186 +0.300361 0.189488 0.952622 +0.299105 0.210308 0.948640 +0.297718 0.231054 0.944240 +0.296199 0.251718 0.939423 +0.294549 0.272291 0.934189 +0.292767 0.292767 0.928540 +0.272291 0.294549 0.934189 +0.251718 0.296199 0.939423 +0.231054 0.297718 0.944240 +0.210308 0.299105 0.948640 +0.189488 0.300361 0.952622 +0.168601 0.301484 0.956186 +0.147655 0.302476 0.959332 +0.126657 0.303336 0.962058 +0.105615 0.304063 0.964366 +0.084536 0.304659 0.966254 +0.063428 0.305122 0.967723 +0.042298 0.305453 0.968773 +0.021152 0.305651 0.969402 +0.000000 0.305718 0.969612 +0.326797 0.000000 0.962712 +0.326727 0.021002 0.962507 +0.326518 0.041997 0.961891 +0.326169 0.062978 0.960863 +0.325681 0.083939 0.959425 +0.325054 0.104872 0.957577 +0.324287 0.125770 0.955317 +0.323380 0.146626 0.952647 +0.322335 0.167434 0.949567 +0.321150 0.188186 0.946076 +0.319825 0.208875 0.942175 +0.318362 0.229494 0.937864 +0.316760 0.250035 0.933144 +0.315018 0.270491 0.928014 +0.313138 0.290855 0.922474 +0.311119 0.311119 0.916527 +0.290855 0.313138 0.922474 +0.270491 0.315018 0.928014 +0.250035 0.316760 0.933144 +0.229494 0.318362 0.937864 +0.208875 0.319825 0.942175 +0.188186 0.321150 0.946076 +0.167434 0.322335 0.949567 +0.146626 0.323380 0.952647 +0.125770 0.324287 0.955317 +0.104872 0.325054 0.957577 +0.083939 0.325681 0.959425 +0.062978 0.326169 0.960863 +0.041997 0.326518 0.961891 +0.021002 0.326727 0.962507 +0.000000 0.326797 0.962712 +0.347720 0.000000 0.955354 +0.347647 0.020842 0.955153 +0.347428 0.041677 0.954551 +0.347063 0.062499 0.953547 +0.346551 0.083302 0.952142 +0.345894 0.104079 0.950335 +0.345090 0.124823 0.948126 +0.344140 0.145529 0.945516 +0.343043 0.166189 0.942504 +0.341801 0.186797 0.939090 +0.340412 0.207345 0.935275 +0.338877 0.227828 0.931057 +0.337196 0.248238 0.926438 +0.335368 0.268569 0.921417 +0.333395 0.288812 0.915995 +0.331275 0.308961 0.910171 +0.329009 0.329009 0.903945 +0.308961 0.331275 0.910171 +0.288812 0.333395 0.915995 +0.268569 0.335368 0.921417 +0.248238 0.337196 0.926438 +0.227828 0.338877 0.931057 +0.207345 0.340412 0.935275 +0.186797 0.341801 0.939090 +0.166189 0.343043 0.942504 +0.145529 0.344140 0.945516 +0.124823 0.345090 0.948126 +0.104079 0.345894 0.950335 +0.083302 0.346551 0.952142 +0.062499 0.347063 0.953547 +0.041677 0.347428 0.954551 +0.020842 0.347647 0.955153 +0.000000 0.347720 0.955354 +0.368479 0.000000 0.947541 +0.368402 0.020671 0.947345 +0.368174 0.041336 0.946758 +0.367793 0.061990 0.945778 +0.367260 0.082625 0.944407 +0.366574 0.103236 0.942644 +0.365736 0.123818 0.940488 +0.364745 0.144363 0.937940 +0.363601 0.164866 0.935000 +0.362305 0.185320 0.931667 +0.360856 0.205719 0.927940 +0.359254 0.226058 0.923821 +0.357499 0.246328 0.919308 +0.355591 0.266524 0.914402 +0.353530 0.286639 0.909102 +0.351316 0.306665 0.903407 +0.348948 0.326597 0.897319 +0.346427 0.346427 0.890835 +0.326597 0.348948 0.897319 +0.306665 0.351316 0.903407 +0.286639 0.353530 0.909102 +0.266524 0.355591 0.914402 +0.246328 0.357499 0.919308 +0.226058 0.359254 0.923821 +0.205719 0.360856 0.927940 +0.185320 0.362305 0.931667 +0.164866 0.363601 0.935000 +0.144363 0.364745 0.937940 +0.123818 0.365736 0.940488 +0.103236 0.366574 0.942644 +0.082625 0.367260 0.944407 +0.061990 0.367793 0.945778 +0.041336 0.368174 0.946758 +0.020671 0.368402 0.947345 +0.000000 0.368479 0.947541 +0.389061 0.000000 0.939278 +0.388982 0.020491 0.939087 +0.388745 0.040976 0.938514 +0.388350 0.061451 0.937560 +0.387797 0.081909 0.936224 +0.387085 0.102345 0.934506 +0.386215 0.122754 0.932406 +0.385187 0.143129 0.929923 +0.384000 0.163465 0.927057 +0.382654 0.183757 0.923808 +0.381149 0.203998 0.920175 +0.379485 0.224182 0.916158 +0.377662 0.244304 0.911756 +0.375679 0.264357 0.906969 +0.373536 0.284335 0.901796 +0.371233 0.304231 0.896237 +0.368771 0.324039 0.890291 +0.366147 0.343752 0.883958 +0.363364 0.363364 0.877237 +0.343752 0.366147 0.883958 +0.324039 0.368771 0.890291 +0.304231 0.371233 0.896237 +0.284335 0.373536 0.901796 +0.264357 0.375679 0.906969 +0.244304 0.377662 0.911756 +0.224182 0.379485 0.916158 +0.203998 0.381149 0.920175 +0.183757 0.382654 0.923808 +0.163465 0.384000 0.927057 +0.143129 0.385187 0.929923 +0.122754 0.386215 0.932406 +0.102345 0.387085 0.934506 +0.081909 0.387797 0.936224 +0.061451 0.388350 0.937560 +0.040976 0.388745 0.938514 +0.020491 0.388982 0.939087 +0.000000 0.389061 0.939278 +0.409459 0.000000 0.930567 +0.409377 0.020301 0.930381 +0.409133 0.040597 0.929824 +0.408724 0.060883 0.928897 +0.408153 0.081154 0.927597 +0.407417 0.101405 0.925926 +0.406518 0.121632 0.923883 +0.405455 0.141827 0.921467 +0.404228 0.161988 0.918679 +0.402837 0.182108 0.915516 +0.401281 0.202181 0.911980 +0.399560 0.222203 0.908069 +0.397674 0.242168 0.903782 +0.395622 0.262069 0.899119 +0.393404 0.281902 0.894078 +0.391020 0.301659 0.888660 +0.388469 0.321336 0.882863 +0.385751 0.340924 0.876686 +0.382866 0.360419 0.870128 +0.379812 0.379812 0.863189 +0.360419 0.382866 0.870128 +0.340924 0.385751 0.876686 +0.321336 0.388469 0.882863 +0.301659 0.391020 0.888660 +0.281902 0.393404 0.894078 +0.262069 0.395622 0.899119 +0.242168 0.397674 0.903782 +0.222203 0.399560 0.908069 +0.202181 0.401281 0.911980 +0.182108 0.402837 0.915516 +0.161988 0.404228 0.918679 +0.141827 0.405455 0.921467 +0.121632 0.406518 0.923883 +0.101405 0.407417 0.925926 +0.081154 0.408153 0.927597 +0.060883 0.408724 0.928897 +0.040597 0.409133 0.929824 +0.020301 0.409377 0.930381 +0.000000 0.409459 0.930567 +0.429662 0.000000 0.921413 +0.429578 0.020101 0.921233 +0.429326 0.040198 0.920692 +0.428906 0.060286 0.919792 +0.428318 0.080361 0.918530 +0.427561 0.100418 0.916907 +0.426636 0.120452 0.914923 +0.425542 0.140459 0.912577 +0.424278 0.160434 0.909868 +0.422846 0.180373 0.906796 +0.421243 0.200270 0.903359 +0.419470 0.220120 0.899557 +0.417527 0.239919 0.895389 +0.415412 0.259660 0.890854 +0.413125 0.279339 0.885950 +0.410667 0.298950 0.880678 +0.408035 0.318486 0.875034 +0.405230 0.337943 0.869019 +0.402251 0.357313 0.862631 +0.399098 0.376591 0.855869 +0.395770 0.395770 0.848731 +0.376591 0.399098 0.855869 +0.357313 0.402251 0.862631 +0.337943 0.405230 0.869019 +0.318486 0.408035 0.875034 +0.298950 0.410667 0.880678 +0.279339 0.413125 0.885950 +0.259660 0.415412 0.890854 +0.239919 0.417527 0.895389 +0.220120 0.419470 0.899557 +0.200270 0.421243 0.903359 +0.180373 0.422846 0.906796 +0.160434 0.424278 0.909868 +0.140459 0.425542 0.912577 +0.120452 0.426636 0.914923 +0.100418 0.427561 0.916907 +0.080361 0.428318 0.918530 +0.060286 0.428906 0.919792 +0.040198 0.429326 0.920692 +0.020101 0.429578 0.921233 +0.000000 0.429662 0.921413 +0.449660 0.000000 0.911821 +0.449574 0.019892 0.911646 +0.449316 0.039780 0.911122 +0.448885 0.059661 0.910249 +0.448282 0.079530 0.909027 +0.447507 0.099382 0.907454 +0.446558 0.119215 0.905530 +0.445436 0.139024 0.903255 +0.444141 0.158805 0.900628 +0.442671 0.178553 0.897648 +0.441027 0.198265 0.894314 +0.439208 0.217934 0.890625 +0.437212 0.237558 0.886579 +0.435041 0.257131 0.882176 +0.432692 0.276647 0.877414 +0.430166 0.296103 0.872291 +0.427461 0.315492 0.866806 +0.424577 0.334808 0.860958 +0.421513 0.354047 0.854745 +0.418269 0.373201 0.848165 +0.414842 0.392266 0.841216 +0.411233 0.411233 0.833898 +0.392266 0.414842 0.841216 +0.373201 0.418269 0.848165 +0.354047 0.421513 0.854745 +0.334808 0.424577 0.860958 +0.315492 0.427461 0.866806 +0.296103 0.430166 0.872291 +0.276647 0.432692 0.877414 +0.257131 0.435041 0.882176 +0.237558 0.437212 0.886579 +0.217934 0.439208 0.890625 +0.198265 0.441027 0.894314 +0.178553 0.442671 0.897648 +0.158805 0.444141 0.900628 +0.139024 0.445436 0.903255 +0.119215 0.446558 0.905530 +0.099382 0.447507 0.907454 +0.079530 0.448282 0.909027 +0.059661 0.448885 0.910249 +0.039780 0.449316 0.911122 +0.019892 0.449574 0.911646 +0.000000 0.449660 0.911821 +0.469444 0.000000 0.901794 +0.469357 0.019674 0.901625 +0.469093 0.039344 0.901119 +0.468653 0.059007 0.900274 +0.468037 0.078660 0.899091 +0.467245 0.098300 0.897569 +0.466276 0.117922 0.895708 +0.465130 0.137524 0.893506 +0.463806 0.157101 0.890963 +0.462304 0.176650 0.888077 +0.460623 0.196166 0.884848 +0.458762 0.215646 0.881274 +0.456722 0.235086 0.877354 +0.454500 0.254481 0.873086 +0.452096 0.273827 0.868469 +0.449510 0.293119 0.863501 +0.446740 0.312352 0.858179 +0.443785 0.331520 0.852503 +0.440644 0.350619 0.846469 +0.437316 0.369643 0.840077 +0.433801 0.388585 0.833324 +0.430097 0.407441 0.826208 +0.426202 0.426202 0.818727 +0.407441 0.430097 0.826208 +0.388585 0.433801 0.833324 +0.369643 0.437316 0.840077 +0.350619 0.440644 0.846469 +0.331520 0.443785 0.852503 +0.312352 0.446740 0.858179 +0.293119 0.449510 0.863501 +0.273827 0.452096 0.868469 +0.254481 0.454500 0.873086 +0.235086 0.456722 0.877354 +0.215646 0.458762 0.881274 +0.196166 0.460623 0.884848 +0.176650 0.462304 0.888077 +0.157101 0.463806 0.890963 +0.137524 0.465130 0.893506 +0.117922 0.466276 0.895708 +0.098300 0.467245 0.897569 +0.078660 0.468037 0.899091 +0.059007 0.468653 0.900274 +0.039344 0.469093 0.901119 +0.019674 0.469357 0.901625 +0.000000 0.469444 0.901794 +0.489005 0.000000 0.891339 +0.488916 0.019446 0.891176 +0.488647 0.038888 0.890687 +0.488200 0.058325 0.889871 +0.487573 0.077754 0.888728 +0.486767 0.097171 0.887258 +0.485780 0.116573 0.885460 +0.484613 0.135958 0.883333 +0.483265 0.155322 0.880875 +0.481735 0.174662 0.878086 +0.480022 0.193975 0.874965 +0.478126 0.213257 0.871509 +0.476046 0.232504 0.867717 +0.473780 0.251713 0.863588 +0.471329 0.270879 0.859119 +0.468689 0.289998 0.854308 +0.465862 0.309067 0.849154 +0.462844 0.328079 0.843653 +0.459635 0.347030 0.837805 +0.456234 0.365915 0.831605 +0.452640 0.384729 0.825053 +0.448850 0.403465 0.818145 +0.444863 0.422117 0.810879 +0.440679 0.440679 0.803252 +0.422117 0.444863 0.810879 +0.403465 0.448850 0.818145 +0.384729 0.452640 0.825053 +0.365915 0.456234 0.831605 +0.347030 0.459635 0.837805 +0.328079 0.462844 0.843653 +0.309067 0.465862 0.849154 +0.289998 0.468689 0.854308 +0.270879 0.471329 0.859119 +0.251713 0.473780 0.863588 +0.232504 0.476046 0.867717 +0.213257 0.478126 0.871509 +0.193975 0.480022 0.874965 +0.174662 0.481735 0.878086 +0.155322 0.483265 0.880875 +0.135958 0.484613 0.883333 +0.116573 0.485780 0.885460 +0.097171 0.486767 0.887258 +0.077754 0.487573 0.888728 +0.058325 0.488200 0.889871 +0.038888 0.488647 0.890687 +0.019446 0.488916 0.891176 +0.000000 0.489005 0.891339 +0.508333 0.000000 0.880459 +0.508243 0.019208 0.880302 +0.507970 0.038414 0.879830 +0.507516 0.057616 0.879044 +0.506880 0.076810 0.877943 +0.506062 0.095995 0.876526 +0.505061 0.115169 0.874792 +0.503877 0.134328 0.872740 +0.502508 0.153470 0.870370 +0.500955 0.172592 0.867679 +0.499216 0.191692 0.864667 +0.497290 0.210766 0.861331 +0.495176 0.229812 0.857670 +0.492873 0.248826 0.853682 +0.490381 0.267803 0.849364 +0.487696 0.286742 0.844715 +0.484819 0.305637 0.839731 +0.481747 0.324484 0.834410 +0.478479 0.343280 0.828751 +0.475014 0.362018 0.822749 +0.471350 0.380694 0.816402 +0.467485 0.399303 0.809707 +0.463417 0.417839 0.802662 +0.459145 0.436296 0.795263 +0.454667 0.454667 0.787507 +0.436296 0.459145 0.795263 +0.417839 0.463417 0.802662 +0.399303 0.467485 0.809707 +0.380694 0.471350 0.816402 +0.362018 0.475014 0.822749 +0.343280 0.478479 0.828751 +0.324484 0.481747 0.834410 +0.305637 0.484819 0.839731 +0.286742 0.487696 0.844715 +0.267803 0.490381 0.849364 +0.248826 0.492873 0.853682 +0.229812 0.495176 0.857670 +0.210766 0.497290 0.861331 +0.191692 0.499216 0.864667 +0.172592 0.500955 0.867679 +0.153470 0.502508 0.870370 +0.134328 0.503877 0.872740 +0.115169 0.505061 0.874792 +0.095995 0.506062 0.876526 +0.076810 0.506880 0.877943 +0.057616 0.507516 0.879044 +0.038414 0.507970 0.879830 +0.019208 0.508243 0.880302 +0.000000 0.508333 0.880459 +0.527419 0.000000 0.869160 +0.527328 0.018962 0.869009 +0.527052 0.037922 0.868556 +0.526593 0.056879 0.867799 +0.525950 0.075830 0.866739 +0.525123 0.094774 0.865376 +0.524110 0.113709 0.863707 +0.522912 0.132633 0.861732 +0.521527 0.151544 0.859450 +0.519955 0.170440 0.856859 +0.518194 0.189318 0.853958 +0.516244 0.208176 0.850744 +0.514103 0.227011 0.847216 +0.511770 0.245820 0.843371 +0.509243 0.264601 0.839207 +0.506521 0.283350 0.834722 +0.503603 0.302063 0.829912 +0.500485 0.320737 0.824775 +0.497168 0.339368 0.819307 +0.493648 0.357952 0.813507 +0.489924 0.376483 0.807370 +0.485994 0.394957 0.800893 +0.481856 0.413369 0.794074 +0.477507 0.431712 0.786907 +0.472946 0.449981 0.779391 +0.468170 0.468170 0.771521 +0.449981 0.472946 0.779391 +0.431712 0.477507 0.786907 +0.413369 0.481856 0.794074 +0.394957 0.485994 0.800893 +0.376483 0.489924 0.807370 +0.357952 0.493648 0.813507 +0.339368 0.497168 0.819307 +0.320737 0.500485 0.824775 +0.302063 0.503603 0.829912 +0.283350 0.506521 0.834722 +0.264601 0.509243 0.839207 +0.245820 0.511770 0.843371 +0.227011 0.514103 0.847216 +0.208176 0.516244 0.850744 +0.189318 0.518194 0.853958 +0.170440 0.519955 0.856859 +0.151544 0.521527 0.859450 +0.132633 0.522912 0.861732 +0.113709 0.524110 0.863707 +0.094774 0.525123 0.865376 +0.075830 0.525950 0.866739 +0.056879 0.526593 0.867799 +0.037922 0.527052 0.868556 +0.018962 0.527328 0.869009 +0.000000 0.527419 0.869160 +0.546255 0.000000 0.857448 +0.546162 0.018706 0.857303 +0.545885 0.037412 0.856867 +0.545422 0.056114 0.856141 +0.544774 0.074814 0.855123 +0.543939 0.093508 0.853814 +0.542918 0.112196 0.852211 +0.541710 0.130876 0.850314 +0.540313 0.149547 0.848121 +0.538726 0.168206 0.845631 +0.536949 0.186854 0.842842 +0.534981 0.205486 0.839751 +0.532819 0.224101 0.836358 +0.530462 0.242698 0.832658 +0.527908 0.261272 0.828650 +0.525157 0.279823 0.824331 +0.522205 0.298345 0.819697 +0.519051 0.316838 0.814746 +0.515692 0.335295 0.809475 +0.512128 0.353715 0.803879 +0.508354 0.372093 0.797956 +0.504370 0.390424 0.791702 +0.500172 0.408703 0.785112 +0.495758 0.426926 0.778184 +0.491125 0.445086 0.770912 +0.486272 0.463178 0.763294 +0.481195 0.481195 0.755324 +0.463178 0.486272 0.763294 +0.445086 0.491125 0.770912 +0.426926 0.495758 0.778184 +0.408703 0.500172 0.785112 +0.390424 0.504370 0.791702 +0.372093 0.508354 0.797956 +0.353715 0.512128 0.803879 +0.335295 0.515692 0.809475 +0.316838 0.519051 0.814746 +0.298345 0.522205 0.819697 +0.279823 0.525157 0.824331 +0.261272 0.527908 0.828650 +0.242698 0.530462 0.832658 +0.224101 0.532819 0.836358 +0.205486 0.534981 0.839751 +0.186854 0.536949 0.842842 +0.168206 0.538726 0.845631 +0.149547 0.540313 0.848121 +0.130876 0.541710 0.850314 +0.112196 0.542918 0.852211 +0.093508 0.543939 0.853814 +0.074814 0.544774 0.855123 +0.056114 0.545422 0.856141 +0.037412 0.545885 0.856867 +0.018706 0.546162 0.857303 +0.000000 0.546255 0.857448 +0.564830 0.000000 0.845327 +0.564737 0.018442 0.845188 +0.564458 0.036883 0.844771 +0.563993 0.055324 0.844075 +0.563341 0.073762 0.843100 +0.562502 0.092197 0.841844 +0.561476 0.110629 0.840308 +0.560260 0.129056 0.838489 +0.558855 0.147477 0.836386 +0.557260 0.165893 0.833998 +0.555472 0.184300 0.831322 +0.553490 0.202697 0.828356 +0.551313 0.221084 0.825098 +0.548939 0.239459 0.821545 +0.546366 0.257818 0.817695 +0.543593 0.276161 0.813544 +0.540616 0.294484 0.809089 +0.537434 0.312785 0.804327 +0.534044 0.331062 0.799254 +0.530444 0.349309 0.793866 +0.526632 0.367525 0.788160 +0.522603 0.385704 0.782131 +0.518357 0.403843 0.775776 +0.513889 0.421937 0.769089 +0.509197 0.439980 0.762068 +0.504278 0.457967 0.754706 +0.499129 0.475891 0.747000 +0.493747 0.493747 0.738945 +0.475891 0.499129 0.747000 +0.457967 0.504278 0.754706 +0.439980 0.509197 0.762068 +0.421937 0.513889 0.769089 +0.403843 0.518357 0.775776 +0.385704 0.522603 0.782131 +0.367525 0.526632 0.788160 +0.349309 0.530444 0.793866 +0.331062 0.534044 0.799254 +0.312785 0.537434 0.804327 +0.294484 0.540616 0.809089 +0.276161 0.543593 0.813544 +0.257818 0.546366 0.817695 +0.239459 0.548939 0.821545 +0.221084 0.551313 0.825098 +0.202697 0.553490 0.828356 +0.184300 0.555472 0.831322 +0.165893 0.557260 0.833998 +0.147477 0.558855 0.836386 +0.129056 0.560260 0.838489 +0.110629 0.561476 0.840308 +0.092197 0.562502 0.841844 +0.073762 0.563341 0.843100 +0.055324 0.563993 0.844075 +0.036883 0.564458 0.844771 +0.018442 0.564737 0.845188 +0.000000 0.564830 0.845327 +0.583136 0.000000 0.832805 +0.583043 0.018169 0.832672 +0.582763 0.036338 0.832272 +0.582297 0.054506 0.831607 +0.581644 0.072675 0.830674 +0.580804 0.090842 0.829473 +0.579774 0.109009 0.828004 +0.578556 0.127174 0.826263 +0.577147 0.145338 0.824251 +0.575546 0.163499 0.821965 +0.573752 0.181657 0.819403 +0.571763 0.199811 0.816562 +0.569577 0.217961 0.813441 +0.567193 0.236104 0.810036 +0.564608 0.254239 0.806344 +0.561820 0.272365 0.802363 +0.558827 0.290480 0.798088 +0.555626 0.308582 0.793516 +0.552214 0.326667 0.788644 +0.548589 0.344734 0.783467 +0.544748 0.362778 0.777980 +0.540687 0.380797 0.772180 +0.536403 0.398787 0.766063 +0.531893 0.416743 0.759622 +0.527154 0.434661 0.752854 +0.522183 0.452535 0.745754 +0.516975 0.470359 0.738316 +0.511527 0.488128 0.730536 +0.505835 0.505835 0.722408 +0.488128 0.511527 0.730536 +0.470359 0.516975 0.738316 +0.452535 0.522183 0.745754 +0.434661 0.527154 0.752854 +0.416743 0.531893 0.759622 +0.398787 0.536403 0.766063 +0.380797 0.540687 0.772180 +0.362778 0.544748 0.777980 +0.344734 0.548589 0.783467 +0.326667 0.552214 0.788644 +0.308582 0.555626 0.793516 +0.290480 0.558827 0.798088 +0.272365 0.561820 0.802363 +0.254239 0.564608 0.806344 +0.236104 0.567193 0.810036 +0.217961 0.569577 0.813441 +0.199811 0.571763 0.816562 +0.181657 0.573752 0.819403 +0.163499 0.575546 0.821965 +0.145338 0.577147 0.824251 +0.127174 0.578556 0.826263 +0.109009 0.579774 0.828004 +0.090842 0.580804 0.829473 +0.072675 0.581644 0.830674 +0.054506 0.582297 0.831607 +0.036338 0.582763 0.832272 +0.018169 0.583043 0.832672 +0.000000 0.583136 0.832805 +0.601165 0.000000 0.819885 +0.601072 0.017887 0.819758 +0.600793 0.035775 0.819378 +0.600327 0.053663 0.818742 +0.599674 0.071553 0.817852 +0.598834 0.089444 0.816706 +0.597805 0.107337 0.815303 +0.596587 0.125231 0.813642 +0.595178 0.143128 0.811720 +0.593576 0.161027 0.809536 +0.591781 0.178927 0.807088 +0.589791 0.196829 0.804373 +0.587603 0.214732 0.801389 +0.585215 0.232634 0.798133 +0.582625 0.250537 0.794601 +0.579831 0.268437 0.790790 +0.576830 0.286334 0.786696 +0.573618 0.304226 0.782317 +0.570194 0.322112 0.777646 +0.566553 0.339988 0.772681 +0.562693 0.357852 0.767417 +0.558611 0.375702 0.761849 +0.554301 0.393534 0.755971 +0.549761 0.411343 0.749780 +0.544988 0.429127 0.743270 +0.539976 0.446879 0.736434 +0.534722 0.464596 0.729269 +0.529223 0.482270 0.721769 +0.523473 0.499897 0.713926 +0.517468 0.517468 0.705737 +0.499897 0.523473 0.713926 +0.482270 0.529223 0.721769 +0.464596 0.534722 0.729269 +0.446879 0.539976 0.736434 +0.429127 0.544988 0.743270 +0.411343 0.549761 0.749780 +0.393534 0.554301 0.755971 +0.375702 0.558611 0.761849 +0.357852 0.562693 0.767417 +0.339988 0.566553 0.772681 +0.322112 0.570194 0.777646 +0.304226 0.573618 0.782317 +0.286334 0.576830 0.786696 +0.268437 0.579831 0.790790 +0.250537 0.582625 0.794601 +0.232634 0.585215 0.798133 +0.214732 0.587603 0.801389 +0.196829 0.589791 0.804373 +0.178927 0.591781 0.807088 +0.161027 0.593576 0.809536 +0.143128 0.595178 0.811720 +0.125231 0.596587 0.813642 +0.107337 0.597805 0.815303 +0.089444 0.598834 0.816706 +0.071553 0.599674 0.817852 +0.053663 0.600327 0.818742 +0.035775 0.600793 0.819378 +0.017887 0.601072 0.819758 +0.000000 0.601165 0.819885 +0.618907 0.000000 0.806576 +0.618815 0.017597 0.806455 +0.618536 0.035195 0.806092 +0.618072 0.052794 0.805488 +0.617422 0.070397 0.804640 +0.616584 0.088003 0.803549 +0.615559 0.105613 0.802212 +0.614344 0.123229 0.800629 +0.612939 0.140850 0.798798 +0.611342 0.158477 0.796716 +0.609551 0.176110 0.794383 +0.607565 0.193751 0.791794 +0.605380 0.211398 0.788947 +0.602996 0.229051 0.785839 +0.600408 0.246711 0.782467 +0.597615 0.264376 0.778827 +0.594614 0.282046 0.774916 +0.591401 0.299720 0.770729 +0.587974 0.317396 0.766262 +0.584328 0.335073 0.761511 +0.580460 0.352748 0.756470 +0.576366 0.370419 0.751135 +0.572042 0.388083 0.745500 +0.567485 0.405737 0.739561 +0.562689 0.423377 0.733310 +0.557650 0.440999 0.726744 +0.552365 0.458599 0.719855 +0.546827 0.476170 0.712639 +0.541032 0.493707 0.705087 +0.534977 0.511205 0.697195 +0.528654 0.528654 0.688956 +0.511205 0.534977 0.697195 +0.493707 0.541032 0.705087 +0.476170 0.546827 0.712639 +0.458599 0.552365 0.719855 +0.440999 0.557650 0.726744 +0.423377 0.562689 0.733310 +0.405737 0.567485 0.739561 +0.388083 0.572042 0.745500 +0.370419 0.576366 0.751135 +0.352748 0.580460 0.756470 +0.335073 0.584328 0.761511 +0.317396 0.587974 0.766262 +0.299720 0.591401 0.770729 +0.282046 0.594614 0.774916 +0.264376 0.597615 0.778827 +0.246711 0.600408 0.782467 +0.229051 0.602996 0.785839 +0.211398 0.605380 0.788947 +0.193751 0.607565 0.791794 +0.176110 0.609551 0.794383 +0.158477 0.611342 0.796716 +0.140850 0.612939 0.798798 +0.123229 0.614344 0.800629 +0.105613 0.615559 0.802212 +0.088003 0.616584 0.803549 +0.070397 0.617422 0.804640 +0.052794 0.618072 0.805488 +0.035195 0.618536 0.806092 +0.017597 0.618815 0.806455 +0.000000 0.618907 0.806576 +0.636356 0.000000 0.792883 +0.636263 0.017298 0.792768 +0.635987 0.034598 0.792423 +0.635526 0.051901 0.791849 +0.634879 0.069207 0.791043 +0.634047 0.086520 0.790006 +0.633028 0.103839 0.788736 +0.631820 0.121167 0.787231 +0.630423 0.138503 0.785490 +0.628834 0.155850 0.783511 +0.627052 0.173208 0.781291 +0.625075 0.190578 0.778827 +0.622900 0.207960 0.776118 +0.620525 0.225355 0.773159 +0.617948 0.242763 0.769947 +0.615164 0.260184 0.766478 +0.612171 0.277618 0.762749 +0.608965 0.295064 0.758755 +0.605544 0.312521 0.754492 +0.601902 0.329988 0.749955 +0.598037 0.347464 0.745139 +0.593943 0.364946 0.740038 +0.589617 0.382433 0.734648 +0.585054 0.399922 0.728962 +0.580248 0.417410 0.722975 +0.575196 0.434892 0.716680 +0.569892 0.452365 0.710071 +0.564331 0.469824 0.703141 +0.558507 0.487264 0.695885 +0.552415 0.504678 0.688294 +0.546049 0.522061 0.680363 +0.539404 0.539404 0.672084 +0.522061 0.546049 0.680363 +0.504678 0.552415 0.688294 +0.487264 0.558507 0.695885 +0.469824 0.564331 0.703141 +0.452365 0.569892 0.710071 +0.434892 0.575196 0.716680 +0.417410 0.580248 0.722975 +0.399922 0.585054 0.728962 +0.382433 0.589617 0.734648 +0.364946 0.593943 0.740038 +0.347464 0.598037 0.745139 +0.329988 0.601902 0.749955 +0.312521 0.605544 0.754492 +0.295064 0.608965 0.758755 +0.277618 0.612171 0.762749 +0.260184 0.615164 0.766478 +0.242763 0.617948 0.769947 +0.225355 0.620525 0.773159 +0.207960 0.622900 0.776118 +0.190578 0.625075 0.778827 +0.173208 0.627052 0.781291 +0.155850 0.628834 0.783511 +0.138503 0.630423 0.785490 +0.121167 0.631820 0.787231 +0.103839 0.633028 0.788736 +0.086520 0.634047 0.790006 +0.069207 0.634879 0.791043 +0.051901 0.635526 0.791849 +0.034598 0.635987 0.792423 +0.017298 0.636263 0.792768 +0.000000 0.636356 0.792883 +0.653501 0.000000 0.778812 +0.653409 0.016991 0.778703 +0.653136 0.033985 0.778377 +0.652679 0.050982 0.777832 +0.652038 0.067985 0.777069 +0.651213 0.084995 0.776085 +0.650202 0.102015 0.774881 +0.649005 0.119046 0.773454 +0.647620 0.136090 0.771803 +0.646044 0.153148 0.769925 +0.644276 0.170221 0.767818 +0.642314 0.187312 0.765479 +0.640154 0.204420 0.762906 +0.637796 0.221548 0.760095 +0.635234 0.238695 0.757043 +0.632467 0.255862 0.753745 +0.629491 0.273050 0.750198 +0.626301 0.290258 0.746397 +0.622895 0.307486 0.742338 +0.619268 0.324734 0.738015 +0.615415 0.342001 0.733424 +0.611333 0.359285 0.728558 +0.607016 0.376585 0.723413 +0.602459 0.393899 0.717982 +0.597657 0.411223 0.712259 +0.592604 0.428556 0.706238 +0.587295 0.445893 0.699911 +0.581724 0.463230 0.693272 +0.575886 0.480562 0.686314 +0.569773 0.497885 0.679029 +0.563380 0.515191 0.671410 +0.556701 0.532475 0.663450 +0.549728 0.549728 0.655140 +0.532475 0.556701 0.663450 +0.515191 0.563380 0.671410 +0.497885 0.569773 0.679029 +0.480562 0.575886 0.686314 +0.463230 0.581724 0.693272 +0.445893 0.587295 0.699911 +0.428556 0.592604 0.706238 +0.411223 0.597657 0.712259 +0.393899 0.602459 0.717982 +0.376585 0.607016 0.723413 +0.359285 0.611333 0.728558 +0.342001 0.615415 0.733424 +0.324734 0.619268 0.738015 +0.307486 0.622895 0.742338 +0.290258 0.626301 0.746397 +0.273050 0.629491 0.750198 +0.255862 0.632467 0.753745 +0.238695 0.635234 0.757043 +0.221548 0.637796 0.760095 +0.204420 0.640154 0.762906 +0.187312 0.642314 0.765479 +0.170221 0.644276 0.767818 +0.153148 0.646044 0.769925 +0.136090 0.647620 0.771803 +0.119046 0.649005 0.773454 +0.102015 0.650202 0.774881 +0.084995 0.651213 0.776085 +0.067985 0.652038 0.777069 +0.050982 0.652679 0.777832 +0.033985 0.653136 0.778377 +0.016991 0.653409 0.778703 +0.000000 0.653501 0.778812 +0.670335 0.000000 0.764370 +0.670245 0.016676 0.764268 +0.669974 0.033355 0.763959 +0.669522 0.050039 0.763444 +0.668889 0.066730 0.762722 +0.668074 0.083430 0.761792 +0.667075 0.100142 0.760653 +0.665891 0.116868 0.759303 +0.664521 0.133610 0.757741 +0.662962 0.150370 0.755964 +0.661213 0.167151 0.753969 +0.659271 0.183953 0.751754 +0.657133 0.200779 0.749317 +0.654797 0.217629 0.746652 +0.652259 0.234506 0.743758 +0.649516 0.251410 0.740631 +0.646564 0.268342 0.737265 +0.643399 0.285303 0.733656 +0.640017 0.302293 0.729800 +0.636414 0.319312 0.725691 +0.632585 0.336359 0.721325 +0.628525 0.353435 0.716695 +0.624228 0.370537 0.711795 +0.619689 0.387665 0.706620 +0.614903 0.404816 0.701163 +0.609863 0.421989 0.695416 +0.604564 0.439179 0.689373 +0.598998 0.456384 0.683027 +0.593160 0.473599 0.676370 +0.587043 0.490820 0.669394 +0.580638 0.508041 0.662091 +0.573941 0.525255 0.654454 +0.566943 0.542456 0.646474 +0.559636 0.559636 0.638143 +0.542456 0.566943 0.646474 +0.525255 0.573941 0.654454 +0.508041 0.580638 0.662091 +0.490820 0.587043 0.669394 +0.473599 0.593160 0.676370 +0.456384 0.598998 0.683027 +0.439179 0.604564 0.689373 +0.421989 0.609863 0.695416 +0.404816 0.614903 0.701163 +0.387665 0.619689 0.706620 +0.370537 0.624228 0.711795 +0.353435 0.628525 0.716695 +0.336359 0.632585 0.721325 +0.319312 0.636414 0.725691 +0.302293 0.640017 0.729800 +0.285303 0.643399 0.733656 +0.268342 0.646564 0.737265 +0.251410 0.649516 0.740631 +0.234506 0.652259 0.743758 +0.217629 0.654797 0.746652 +0.200779 0.657133 0.749317 +0.183953 0.659271 0.751754 +0.167151 0.661213 0.753969 +0.150370 0.662962 0.755964 +0.133610 0.664521 0.757741 +0.116868 0.665891 0.759303 +0.100142 0.667075 0.760653 +0.083430 0.668074 0.761792 +0.066730 0.668889 0.762722 +0.050039 0.669522 0.763444 +0.033355 0.669974 0.763959 +0.016676 0.670245 0.764268 +0.000000 0.670335 0.764370 +0.686850 0.000000 0.749565 +0.686761 0.016353 0.749468 +0.686494 0.032710 0.749177 +0.686049 0.049072 0.748692 +0.685426 0.065442 0.748011 +0.684622 0.081824 0.747134 +0.683637 0.098221 0.746059 +0.682470 0.114633 0.744785 +0.681119 0.131066 0.743310 +0.679581 0.147520 0.741632 +0.677855 0.163998 0.739749 +0.675938 0.180503 0.737657 +0.673827 0.197037 0.735353 +0.671519 0.213602 0.732835 +0.669012 0.230199 0.730098 +0.666300 0.246830 0.727139 +0.663380 0.263497 0.723952 +0.660249 0.280201 0.720535 +0.656900 0.296942 0.716881 +0.653331 0.313721 0.712986 +0.649535 0.330539 0.708843 +0.645508 0.347395 0.704448 +0.641243 0.364290 0.699794 +0.636735 0.381221 0.694874 +0.631977 0.398188 0.689682 +0.626964 0.415190 0.684211 +0.621688 0.432222 0.678453 +0.616142 0.449284 0.672401 +0.610320 0.466371 0.666047 +0.604213 0.483479 0.659383 +0.597814 0.500604 0.652400 +0.591115 0.517739 0.645089 +0.584109 0.534878 0.637443 +0.576786 0.552014 0.629452 +0.569139 0.569139 0.621106 +0.552014 0.576786 0.629452 +0.534878 0.584109 0.637443 +0.517739 0.591115 0.645089 +0.500604 0.597814 0.652400 +0.483479 0.604213 0.659383 +0.466371 0.610320 0.666047 +0.449284 0.616142 0.672401 +0.432222 0.621688 0.678453 +0.415190 0.626964 0.684211 +0.398188 0.631977 0.689682 +0.381221 0.636735 0.694874 +0.364290 0.641243 0.699794 +0.347395 0.645508 0.704448 +0.330539 0.649535 0.708843 +0.313721 0.653331 0.712986 +0.296942 0.656900 0.716881 +0.280201 0.660249 0.720535 +0.263497 0.663380 0.723952 +0.246830 0.666300 0.727139 +0.230199 0.669012 0.730098 +0.213602 0.671519 0.732835 +0.197037 0.673827 0.735353 +0.180503 0.675938 0.737657 +0.163998 0.677855 0.739749 +0.147520 0.679581 0.741632 +0.131066 0.681119 0.743310 +0.114633 0.682470 0.744785 +0.098221 0.683637 0.746059 +0.081824 0.684622 0.747134 +0.065442 0.685426 0.748011 +0.049072 0.686049 0.748692 +0.032710 0.686494 0.749177 +0.016353 0.686761 0.749468 +0.000000 0.686850 0.749565 +0.703038 0.000000 0.734403 +0.702951 0.016023 0.734312 +0.702689 0.032049 0.734038 +0.702252 0.048081 0.733582 +0.701638 0.064124 0.732941 +0.700849 0.080180 0.732116 +0.699880 0.096252 0.731105 +0.698733 0.112343 0.729906 +0.697404 0.128457 0.728518 +0.695891 0.144597 0.726938 +0.694193 0.160765 0.725163 +0.692306 0.176964 0.723192 +0.690228 0.193197 0.721021 +0.687955 0.209466 0.718647 +0.685483 0.225775 0.716065 +0.682810 0.242123 0.713273 +0.679930 0.258515 0.710265 +0.676840 0.274951 0.707036 +0.673534 0.291434 0.703583 +0.670008 0.307963 0.699899 +0.666256 0.324541 0.695980 +0.662272 0.341167 0.691818 +0.658050 0.357842 0.687408 +0.653585 0.374566 0.682743 +0.648868 0.391338 0.677817 +0.643895 0.408156 0.672621 +0.638656 0.425021 0.667149 +0.633145 0.441928 0.661392 +0.627353 0.458875 0.655342 +0.621273 0.475859 0.648990 +0.614896 0.492876 0.642329 +0.608214 0.509921 0.635348 +0.601217 0.526988 0.628039 +0.593896 0.544069 0.620392 +0.586243 0.561159 0.612398 +0.578248 0.578248 0.604045 +0.561159 0.586243 0.612398 +0.544069 0.593896 0.620392 +0.526988 0.601217 0.628039 +0.509921 0.608214 0.635348 +0.492876 0.614896 0.642329 +0.475859 0.621273 0.648990 +0.458875 0.627353 0.655342 +0.441928 0.633145 0.661392 +0.425021 0.638656 0.667149 +0.408156 0.643895 0.672621 +0.391338 0.648868 0.677817 +0.374566 0.653585 0.682743 +0.357842 0.658050 0.687408 +0.341167 0.662272 0.691818 +0.324541 0.666256 0.695980 +0.307963 0.670008 0.699899 +0.291434 0.673534 0.703583 +0.274951 0.676840 0.707036 +0.258515 0.679930 0.710265 +0.242123 0.682810 0.713273 +0.225775 0.685483 0.716065 +0.209466 0.687955 0.718647 +0.193197 0.690228 0.721021 +0.176964 0.692306 0.723192 +0.160765 0.694193 0.725163 +0.144597 0.695891 0.726938 +0.128457 0.697404 0.728518 +0.112343 0.698733 0.729906 +0.096252 0.699880 0.731105 +0.080180 0.700849 0.732116 +0.064124 0.701638 0.732941 +0.048081 0.702252 0.733582 +0.032049 0.702689 0.734038 +0.016023 0.702951 0.734312 +0.000000 0.703038 0.734403 +0.718892 0.000000 0.718892 +0.718806 0.015684 0.718806 +0.718550 0.031373 0.718550 +0.718121 0.047068 0.718121 +0.717520 0.062775 0.717520 +0.716746 0.078496 0.716746 +0.715797 0.094236 0.715797 +0.714672 0.109999 0.714672 +0.713368 0.125786 0.713368 +0.711885 0.141603 0.711885 +0.710218 0.157452 0.710218 +0.708366 0.173336 0.708366 +0.706326 0.189259 0.706326 +0.704093 0.205224 0.704093 +0.701665 0.221234 0.701665 +0.699037 0.237291 0.699037 +0.696204 0.253398 0.696204 +0.693163 0.269556 0.693163 +0.689908 0.285769 0.689908 +0.686434 0.302038 0.686434 +0.682735 0.318365 0.682735 +0.678805 0.334750 0.678805 +0.674638 0.351194 0.674638 +0.670227 0.367699 0.670227 +0.665565 0.384264 0.665565 +0.660644 0.400888 0.660644 +0.655456 0.417572 0.655456 +0.649994 0.434312 0.649994 +0.644249 0.451108 0.644249 +0.638212 0.467956 0.638212 +0.631873 0.484854 0.631873 +0.625225 0.501796 0.625225 +0.618256 0.518778 0.618256 +0.610956 0.535794 0.610956 +0.603316 0.552838 0.603316 +0.595325 0.569900 0.595325 +0.586973 0.586973 0.586973 +0.569900 0.595325 0.595325 +0.552838 0.603316 0.603316 +0.535794 0.610956 0.610956 +0.518778 0.618256 0.618256 +0.501796 0.625225 0.625225 +0.484854 0.631873 0.631873 +0.467956 0.638212 0.638212 +0.451108 0.644249 0.644249 +0.434312 0.649994 0.649994 +0.417572 0.655456 0.655456 +0.400888 0.660644 0.660644 +0.384264 0.665565 0.665565 +0.367699 0.670227 0.670227 +0.351194 0.674638 0.674638 +0.334750 0.678805 0.678805 +0.318365 0.682735 0.682735 +0.302038 0.686434 0.686434 +0.285769 0.689908 0.689908 +0.269556 0.693163 0.693163 +0.253398 0.696204 0.696204 +0.237291 0.699037 0.699037 +0.221234 0.701665 0.701665 +0.205224 0.704093 0.704093 +0.189259 0.706326 0.706326 +0.173336 0.708366 0.708366 +0.157452 0.710218 0.710218 +0.141603 0.711885 0.711885 +0.125786 0.713368 0.713368 +0.109999 0.714672 0.714672 +0.094236 0.715797 0.715797 +0.078496 0.716746 0.716746 +0.062775 0.717520 0.717520 +0.047068 0.718121 0.718121 +0.031373 0.718550 0.718550 +0.015684 0.718806 0.718806 +0.000000 0.718892 0.718892 +0.734403 0.000000 0.703038 +0.734312 0.016023 0.702951 +0.734038 0.032049 0.702689 +0.733582 0.048081 0.702252 +0.732941 0.064124 0.701638 +0.732116 0.080180 0.700849 +0.731105 0.096252 0.699880 +0.729906 0.112343 0.698733 +0.728518 0.128457 0.697404 +0.726938 0.144597 0.695891 +0.725163 0.160765 0.694193 +0.723192 0.176964 0.692306 +0.721021 0.193197 0.690228 +0.718647 0.209466 0.687955 +0.716065 0.225775 0.685483 +0.713273 0.242123 0.682810 +0.710265 0.258515 0.679930 +0.707036 0.274951 0.676840 +0.703583 0.291434 0.673534 +0.699899 0.307963 0.670008 +0.695980 0.324541 0.666256 +0.691818 0.341167 0.662272 +0.687408 0.357842 0.658050 +0.682743 0.374566 0.653585 +0.677817 0.391338 0.648868 +0.672621 0.408156 0.643895 +0.667149 0.425021 0.638656 +0.661392 0.441928 0.633145 +0.655342 0.458875 0.627353 +0.648990 0.475859 0.621273 +0.642329 0.492876 0.614896 +0.635348 0.509921 0.608214 +0.628039 0.526988 0.601217 +0.620392 0.544069 0.593896 +0.612398 0.561159 0.586243 +0.604045 0.578248 0.578248 +0.595325 0.595325 0.569900 +0.578248 0.604045 0.578248 +0.561159 0.612398 0.586243 +0.544069 0.620392 0.593896 +0.526988 0.628039 0.601217 +0.509921 0.635348 0.608214 +0.492876 0.642329 0.614896 +0.475859 0.648990 0.621273 +0.458875 0.655342 0.627353 +0.441928 0.661392 0.633145 +0.425021 0.667149 0.638656 +0.408156 0.672621 0.643895 +0.391338 0.677817 0.648868 +0.374566 0.682743 0.653585 +0.357842 0.687408 0.658050 +0.341167 0.691818 0.662272 +0.324541 0.695980 0.666256 +0.307963 0.699899 0.670008 +0.291434 0.703583 0.673534 +0.274951 0.707036 0.676840 +0.258515 0.710265 0.679930 +0.242123 0.713273 0.682810 +0.225775 0.716065 0.685483 +0.209466 0.718647 0.687955 +0.193197 0.721021 0.690228 +0.176964 0.723192 0.692306 +0.160765 0.725163 0.694193 +0.144597 0.726938 0.695891 +0.128457 0.728518 0.697404 +0.112343 0.729906 0.698733 +0.096252 0.731105 0.699880 +0.080180 0.732116 0.700849 +0.064124 0.732941 0.701638 +0.048081 0.733582 0.702252 +0.032049 0.734038 0.702689 +0.016023 0.734312 0.702951 +0.000000 0.734403 0.703038 +0.749565 0.000000 0.686850 +0.749468 0.016353 0.686761 +0.749177 0.032710 0.686494 +0.748692 0.049072 0.686049 +0.748011 0.065442 0.685426 +0.747134 0.081824 0.684622 +0.746059 0.098221 0.683637 +0.744785 0.114633 0.682470 +0.743310 0.131066 0.681119 +0.741632 0.147520 0.679581 +0.739749 0.163998 0.677855 +0.737657 0.180503 0.675938 +0.735353 0.197037 0.673827 +0.732835 0.213602 0.671519 +0.730098 0.230199 0.669012 +0.727139 0.246830 0.666300 +0.723952 0.263497 0.663380 +0.720535 0.280201 0.660249 +0.716881 0.296942 0.656900 +0.712986 0.313721 0.653331 +0.708843 0.330539 0.649535 +0.704448 0.347395 0.645508 +0.699794 0.364290 0.641243 +0.694874 0.381221 0.636735 +0.689682 0.398188 0.631977 +0.684211 0.415190 0.626964 +0.678453 0.432222 0.621688 +0.672401 0.449284 0.616142 +0.666047 0.466371 0.610320 +0.659383 0.483479 0.604213 +0.652400 0.500604 0.597814 +0.645089 0.517739 0.591115 +0.637443 0.534878 0.584109 +0.629452 0.552014 0.576786 +0.621106 0.569139 0.569139 +0.612398 0.586243 0.561159 +0.603316 0.603316 0.552838 +0.586243 0.612398 0.561159 +0.569139 0.621106 0.569139 +0.552014 0.629452 0.576786 +0.534878 0.637443 0.584109 +0.517739 0.645089 0.591115 +0.500604 0.652400 0.597814 +0.483479 0.659383 0.604213 +0.466371 0.666047 0.610320 +0.449284 0.672401 0.616142 +0.432222 0.678453 0.621688 +0.415190 0.684211 0.626964 +0.398188 0.689682 0.631977 +0.381221 0.694874 0.636735 +0.364290 0.699794 0.641243 +0.347395 0.704448 0.645508 +0.330539 0.708843 0.649535 +0.313721 0.712986 0.653331 +0.296942 0.716881 0.656900 +0.280201 0.720535 0.660249 +0.263497 0.723952 0.663380 +0.246830 0.727139 0.666300 +0.230199 0.730098 0.669012 +0.213602 0.732835 0.671519 +0.197037 0.735353 0.673827 +0.180503 0.737657 0.675938 +0.163998 0.739749 0.677855 +0.147520 0.741632 0.679581 +0.131066 0.743310 0.681119 +0.114633 0.744785 0.682470 +0.098221 0.746059 0.683637 +0.081824 0.747134 0.684622 +0.065442 0.748011 0.685426 +0.049072 0.748692 0.686049 +0.032710 0.749177 0.686494 +0.016353 0.749468 0.686761 +0.000000 0.749565 0.686850 +0.764370 0.000000 0.670335 +0.764268 0.016676 0.670245 +0.763959 0.033355 0.669974 +0.763444 0.050039 0.669522 +0.762722 0.066730 0.668889 +0.761792 0.083430 0.668074 +0.760653 0.100142 0.667075 +0.759303 0.116868 0.665891 +0.757741 0.133610 0.664521 +0.755964 0.150370 0.662962 +0.753969 0.167151 0.661213 +0.751754 0.183953 0.659271 +0.749317 0.200779 0.657133 +0.746652 0.217629 0.654797 +0.743758 0.234506 0.652259 +0.740631 0.251410 0.649516 +0.737265 0.268342 0.646564 +0.733656 0.285303 0.643399 +0.729800 0.302293 0.640017 +0.725691 0.319312 0.636414 +0.721325 0.336359 0.632585 +0.716695 0.353435 0.628525 +0.711795 0.370537 0.624228 +0.706620 0.387665 0.619689 +0.701163 0.404816 0.614903 +0.695416 0.421989 0.609863 +0.689373 0.439179 0.604564 +0.683027 0.456384 0.598998 +0.676370 0.473599 0.593160 +0.669394 0.490820 0.587043 +0.662091 0.508041 0.580638 +0.654454 0.525255 0.573941 +0.646474 0.542456 0.566943 +0.638143 0.559636 0.559636 +0.629452 0.576786 0.552014 +0.620392 0.593896 0.544069 +0.610956 0.610956 0.535794 +0.593896 0.620392 0.544069 +0.576786 0.629452 0.552014 +0.559636 0.638143 0.559636 +0.542456 0.646474 0.566943 +0.525255 0.654454 0.573941 +0.508041 0.662091 0.580638 +0.490820 0.669394 0.587043 +0.473599 0.676370 0.593160 +0.456384 0.683027 0.598998 +0.439179 0.689373 0.604564 +0.421989 0.695416 0.609863 +0.404816 0.701163 0.614903 +0.387665 0.706620 0.619689 +0.370537 0.711795 0.624228 +0.353435 0.716695 0.628525 +0.336359 0.721325 0.632585 +0.319312 0.725691 0.636414 +0.302293 0.729800 0.640017 +0.285303 0.733656 0.643399 +0.268342 0.737265 0.646564 +0.251410 0.740631 0.649516 +0.234506 0.743758 0.652259 +0.217629 0.746652 0.654797 +0.200779 0.749317 0.657133 +0.183953 0.751754 0.659271 +0.167151 0.753969 0.661213 +0.150370 0.755964 0.662962 +0.133610 0.757741 0.664521 +0.116868 0.759303 0.665891 +0.100142 0.760653 0.667075 +0.083430 0.761792 0.668074 +0.066730 0.762722 0.668889 +0.050039 0.763444 0.669522 +0.033355 0.763959 0.669974 +0.016676 0.764268 0.670245 +0.000000 0.764370 0.670335 +0.778812 0.000000 0.653501 +0.778703 0.016991 0.653409 +0.778377 0.033985 0.653136 +0.777832 0.050982 0.652679 +0.777069 0.067985 0.652038 +0.776085 0.084995 0.651213 +0.774881 0.102015 0.650202 +0.773454 0.119046 0.649005 +0.771803 0.136090 0.647620 +0.769925 0.153148 0.646044 +0.767818 0.170221 0.644276 +0.765479 0.187312 0.642314 +0.762906 0.204420 0.640154 +0.760095 0.221548 0.637796 +0.757043 0.238695 0.635234 +0.753745 0.255862 0.632467 +0.750198 0.273050 0.629491 +0.746397 0.290258 0.626301 +0.742338 0.307486 0.622895 +0.738015 0.324734 0.619268 +0.733424 0.342001 0.615415 +0.728558 0.359285 0.611333 +0.723413 0.376585 0.607016 +0.717982 0.393899 0.602459 +0.712259 0.411223 0.597657 +0.706238 0.428556 0.592604 +0.699911 0.445893 0.587295 +0.693272 0.463230 0.581724 +0.686314 0.480562 0.575886 +0.679029 0.497885 0.569773 +0.671410 0.515191 0.563380 +0.663450 0.532475 0.556701 +0.655140 0.549728 0.549728 +0.646474 0.566943 0.542456 +0.637443 0.584109 0.534878 +0.628039 0.601217 0.526988 +0.618256 0.618256 0.518778 +0.601217 0.628039 0.526988 +0.584109 0.637443 0.534878 +0.566943 0.646474 0.542456 +0.549728 0.655140 0.549728 +0.532475 0.663450 0.556701 +0.515191 0.671410 0.563380 +0.497885 0.679029 0.569773 +0.480562 0.686314 0.575886 +0.463230 0.693272 0.581724 +0.445893 0.699911 0.587295 +0.428556 0.706238 0.592604 +0.411223 0.712259 0.597657 +0.393899 0.717982 0.602459 +0.376585 0.723413 0.607016 +0.359285 0.728558 0.611333 +0.342001 0.733424 0.615415 +0.324734 0.738015 0.619268 +0.307486 0.742338 0.622895 +0.290258 0.746397 0.626301 +0.273050 0.750198 0.629491 +0.255862 0.753745 0.632467 +0.238695 0.757043 0.635234 +0.221548 0.760095 0.637796 +0.204420 0.762906 0.640154 +0.187312 0.765479 0.642314 +0.170221 0.767818 0.644276 +0.153148 0.769925 0.646044 +0.136090 0.771803 0.647620 +0.119046 0.773454 0.649005 +0.102015 0.774881 0.650202 +0.084995 0.776085 0.651213 +0.067985 0.777069 0.652038 +0.050982 0.777832 0.652679 +0.033985 0.778377 0.653136 +0.016991 0.778703 0.653409 +0.000000 0.778812 0.653501 +0.792883 0.000000 0.636356 +0.792768 0.017298 0.636263 +0.792423 0.034598 0.635987 +0.791849 0.051901 0.635526 +0.791043 0.069207 0.634879 +0.790006 0.086520 0.634047 +0.788736 0.103839 0.633028 +0.787231 0.121167 0.631820 +0.785490 0.138503 0.630423 +0.783511 0.155850 0.628834 +0.781291 0.173208 0.627052 +0.778827 0.190578 0.625075 +0.776118 0.207960 0.622900 +0.773159 0.225355 0.620525 +0.769947 0.242763 0.617948 +0.766478 0.260184 0.615164 +0.762749 0.277618 0.612171 +0.758755 0.295064 0.608965 +0.754492 0.312521 0.605544 +0.749955 0.329988 0.601902 +0.745139 0.347464 0.598037 +0.740038 0.364946 0.593943 +0.734648 0.382433 0.589617 +0.728962 0.399922 0.585054 +0.722975 0.417410 0.580248 +0.716680 0.434892 0.575196 +0.710071 0.452365 0.569892 +0.703141 0.469824 0.564331 +0.695885 0.487264 0.558507 +0.688294 0.504678 0.552415 +0.680363 0.522061 0.546049 +0.672084 0.539404 0.539404 +0.663450 0.556701 0.532475 +0.654454 0.573941 0.525255 +0.645089 0.591115 0.517739 +0.635348 0.608214 0.509921 +0.625225 0.625225 0.501796 +0.608214 0.635348 0.509921 +0.591115 0.645089 0.517739 +0.573941 0.654454 0.525255 +0.556701 0.663450 0.532475 +0.539404 0.672084 0.539404 +0.522061 0.680363 0.546049 +0.504678 0.688294 0.552415 +0.487264 0.695885 0.558507 +0.469824 0.703141 0.564331 +0.452365 0.710071 0.569892 +0.434892 0.716680 0.575196 +0.417410 0.722975 0.580248 +0.399922 0.728962 0.585054 +0.382433 0.734648 0.589617 +0.364946 0.740038 0.593943 +0.347464 0.745139 0.598037 +0.329988 0.749955 0.601902 +0.312521 0.754492 0.605544 +0.295064 0.758755 0.608965 +0.277618 0.762749 0.612171 +0.260184 0.766478 0.615164 +0.242763 0.769947 0.617948 +0.225355 0.773159 0.620525 +0.207960 0.776118 0.622900 +0.190578 0.778827 0.625075 +0.173208 0.781291 0.627052 +0.155850 0.783511 0.628834 +0.138503 0.785490 0.630423 +0.121167 0.787231 0.631820 +0.103839 0.788736 0.633028 +0.086520 0.790006 0.634047 +0.069207 0.791043 0.634879 +0.051901 0.791849 0.635526 +0.034598 0.792423 0.635987 +0.017298 0.792768 0.636263 +0.000000 0.792883 0.636356 +0.806576 0.000000 0.618907 +0.806455 0.017597 0.618815 +0.806092 0.035195 0.618536 +0.805488 0.052794 0.618072 +0.804640 0.070397 0.617422 +0.803549 0.088003 0.616584 +0.802212 0.105613 0.615559 +0.800629 0.123229 0.614344 +0.798798 0.140850 0.612939 +0.796716 0.158477 0.611342 +0.794383 0.176110 0.609551 +0.791794 0.193751 0.607565 +0.788947 0.211398 0.605380 +0.785839 0.229051 0.602996 +0.782467 0.246711 0.600408 +0.778827 0.264376 0.597615 +0.774916 0.282046 0.594614 +0.770729 0.299720 0.591401 +0.766262 0.317396 0.587974 +0.761511 0.335073 0.584328 +0.756470 0.352748 0.580460 +0.751135 0.370419 0.576366 +0.745500 0.388083 0.572042 +0.739561 0.405737 0.567485 +0.733310 0.423377 0.562689 +0.726744 0.440999 0.557650 +0.719855 0.458599 0.552365 +0.712639 0.476170 0.546827 +0.705087 0.493707 0.541032 +0.697195 0.511205 0.534977 +0.688956 0.528654 0.528654 +0.680363 0.546049 0.522061 +0.671410 0.563380 0.515191 +0.662091 0.580638 0.508041 +0.652400 0.597814 0.500604 +0.642329 0.614896 0.492876 +0.631873 0.631873 0.484854 +0.614896 0.642329 0.492876 +0.597814 0.652400 0.500604 +0.580638 0.662091 0.508041 +0.563380 0.671410 0.515191 +0.546049 0.680363 0.522061 +0.528654 0.688956 0.528654 +0.511205 0.697195 0.534977 +0.493707 0.705087 0.541032 +0.476170 0.712639 0.546827 +0.458599 0.719855 0.552365 +0.440999 0.726744 0.557650 +0.423377 0.733310 0.562689 +0.405737 0.739561 0.567485 +0.388083 0.745500 0.572042 +0.370419 0.751135 0.576366 +0.352748 0.756470 0.580460 +0.335073 0.761511 0.584328 +0.317396 0.766262 0.587974 +0.299720 0.770729 0.591401 +0.282046 0.774916 0.594614 +0.264376 0.778827 0.597615 +0.246711 0.782467 0.600408 +0.229051 0.785839 0.602996 +0.211398 0.788947 0.605380 +0.193751 0.791794 0.607565 +0.176110 0.794383 0.609551 +0.158477 0.796716 0.611342 +0.140850 0.798798 0.612939 +0.123229 0.800629 0.614344 +0.105613 0.802212 0.615559 +0.088003 0.803549 0.616584 +0.070397 0.804640 0.617422 +0.052794 0.805488 0.618072 +0.035195 0.806092 0.618536 +0.017597 0.806455 0.618815 +0.000000 0.806576 0.618907 +0.819885 0.000000 0.601165 +0.819758 0.017887 0.601072 +0.819378 0.035775 0.600793 +0.818742 0.053663 0.600327 +0.817852 0.071553 0.599674 +0.816706 0.089444 0.598834 +0.815303 0.107337 0.597805 +0.813642 0.125231 0.596587 +0.811720 0.143128 0.595178 +0.809536 0.161027 0.593576 +0.807088 0.178927 0.591781 +0.804373 0.196829 0.589791 +0.801389 0.214732 0.587603 +0.798133 0.232634 0.585215 +0.794601 0.250537 0.582625 +0.790790 0.268437 0.579831 +0.786696 0.286334 0.576830 +0.782317 0.304226 0.573618 +0.777646 0.322112 0.570194 +0.772681 0.339988 0.566553 +0.767417 0.357852 0.562693 +0.761849 0.375702 0.558611 +0.755971 0.393534 0.554301 +0.749780 0.411343 0.549761 +0.743270 0.429127 0.544988 +0.736434 0.446879 0.539976 +0.729269 0.464596 0.534722 +0.721769 0.482270 0.529223 +0.713926 0.499897 0.523473 +0.705737 0.517468 0.517468 +0.697195 0.534977 0.511205 +0.688294 0.552415 0.504678 +0.679029 0.569773 0.497885 +0.669394 0.587043 0.490820 +0.659383 0.604213 0.483479 +0.648990 0.621273 0.475859 +0.638212 0.638212 0.467956 +0.621273 0.648990 0.475859 +0.604213 0.659383 0.483479 +0.587043 0.669394 0.490820 +0.569773 0.679029 0.497885 +0.552415 0.688294 0.504678 +0.534977 0.697195 0.511205 +0.517468 0.705737 0.517468 +0.499897 0.713926 0.523473 +0.482270 0.721769 0.529223 +0.464596 0.729269 0.534722 +0.446879 0.736434 0.539976 +0.429127 0.743270 0.544988 +0.411343 0.749780 0.549761 +0.393534 0.755971 0.554301 +0.375702 0.761849 0.558611 +0.357852 0.767417 0.562693 +0.339988 0.772681 0.566553 +0.322112 0.777646 0.570194 +0.304226 0.782317 0.573618 +0.286334 0.786696 0.576830 +0.268437 0.790790 0.579831 +0.250537 0.794601 0.582625 +0.232634 0.798133 0.585215 +0.214732 0.801389 0.587603 +0.196829 0.804373 0.589791 +0.178927 0.807088 0.591781 +0.161027 0.809536 0.593576 +0.143128 0.811720 0.595178 +0.125231 0.813642 0.596587 +0.107337 0.815303 0.597805 +0.089444 0.816706 0.598834 +0.071553 0.817852 0.599674 +0.053663 0.818742 0.600327 +0.035775 0.819378 0.600793 +0.017887 0.819758 0.601072 +0.000000 0.819885 0.601165 +0.832805 0.000000 0.583136 +0.832672 0.018169 0.583043 +0.832272 0.036338 0.582763 +0.831607 0.054506 0.582297 +0.830674 0.072675 0.581644 +0.829473 0.090842 0.580804 +0.828004 0.109009 0.579774 +0.826263 0.127174 0.578556 +0.824251 0.145338 0.577147 +0.821965 0.163499 0.575546 +0.819403 0.181657 0.573752 +0.816562 0.199811 0.571763 +0.813441 0.217961 0.569577 +0.810036 0.236104 0.567193 +0.806344 0.254239 0.564608 +0.802363 0.272365 0.561820 +0.798088 0.290480 0.558827 +0.793516 0.308582 0.555626 +0.788644 0.326667 0.552214 +0.783467 0.344734 0.548589 +0.777980 0.362778 0.544748 +0.772180 0.380797 0.540687 +0.766063 0.398787 0.536403 +0.759622 0.416743 0.531893 +0.752854 0.434661 0.527154 +0.745754 0.452535 0.522183 +0.738316 0.470359 0.516975 +0.730536 0.488128 0.511527 +0.722408 0.505835 0.505835 +0.713926 0.523473 0.499897 +0.705087 0.541032 0.493707 +0.695885 0.558507 0.487264 +0.686314 0.575886 0.480562 +0.676370 0.593160 0.473599 +0.666047 0.610320 0.466371 +0.655342 0.627353 0.458875 +0.644249 0.644249 0.451108 +0.627353 0.655342 0.458875 +0.610320 0.666047 0.466371 +0.593160 0.676370 0.473599 +0.575886 0.686314 0.480562 +0.558507 0.695885 0.487264 +0.541032 0.705087 0.493707 +0.523473 0.713926 0.499897 +0.505835 0.722408 0.505835 +0.488128 0.730536 0.511527 +0.470359 0.738316 0.516975 +0.452535 0.745754 0.522183 +0.434661 0.752854 0.527154 +0.416743 0.759622 0.531893 +0.398787 0.766063 0.536403 +0.380797 0.772180 0.540687 +0.362778 0.777980 0.544748 +0.344734 0.783467 0.548589 +0.326667 0.788644 0.552214 +0.308582 0.793516 0.555626 +0.290480 0.798088 0.558827 +0.272365 0.802363 0.561820 +0.254239 0.806344 0.564608 +0.236104 0.810036 0.567193 +0.217961 0.813441 0.569577 +0.199811 0.816562 0.571763 +0.181657 0.819403 0.573752 +0.163499 0.821965 0.575546 +0.145338 0.824251 0.577147 +0.127174 0.826263 0.578556 +0.109009 0.828004 0.579774 +0.090842 0.829473 0.580804 +0.072675 0.830674 0.581644 +0.054506 0.831607 0.582297 +0.036338 0.832272 0.582763 +0.018169 0.832672 0.583043 +0.000000 0.832805 0.583136 +0.845327 0.000000 0.564830 +0.845188 0.018442 0.564737 +0.844771 0.036883 0.564458 +0.844075 0.055324 0.563993 +0.843100 0.073762 0.563341 +0.841844 0.092197 0.562502 +0.840308 0.110629 0.561476 +0.838489 0.129056 0.560260 +0.836386 0.147477 0.558855 +0.833998 0.165893 0.557260 +0.831322 0.184300 0.555472 +0.828356 0.202697 0.553490 +0.825098 0.221084 0.551313 +0.821545 0.239459 0.548939 +0.817695 0.257818 0.546366 +0.813544 0.276161 0.543593 +0.809089 0.294484 0.540616 +0.804327 0.312785 0.537434 +0.799254 0.331062 0.534044 +0.793866 0.349309 0.530444 +0.788160 0.367525 0.526632 +0.782131 0.385704 0.522603 +0.775776 0.403843 0.518357 +0.769089 0.421937 0.513889 +0.762068 0.439980 0.509197 +0.754706 0.457967 0.504278 +0.747000 0.475891 0.499129 +0.738945 0.493747 0.493747 +0.730536 0.511527 0.488128 +0.721769 0.529223 0.482270 +0.712639 0.546827 0.476170 +0.703141 0.564331 0.469824 +0.693272 0.581724 0.463230 +0.683027 0.598998 0.456384 +0.672401 0.616142 0.449284 +0.661392 0.633145 0.441928 +0.649994 0.649994 0.434312 +0.633145 0.661392 0.441928 +0.616142 0.672401 0.449284 +0.598998 0.683027 0.456384 +0.581724 0.693272 0.463230 +0.564331 0.703141 0.469824 +0.546827 0.712639 0.476170 +0.529223 0.721769 0.482270 +0.511527 0.730536 0.488128 +0.493747 0.738945 0.493747 +0.475891 0.747000 0.499129 +0.457967 0.754706 0.504278 +0.439980 0.762068 0.509197 +0.421937 0.769089 0.513889 +0.403843 0.775776 0.518357 +0.385704 0.782131 0.522603 +0.367525 0.788160 0.526632 +0.349309 0.793866 0.530444 +0.331062 0.799254 0.534044 +0.312785 0.804327 0.537434 +0.294484 0.809089 0.540616 +0.276161 0.813544 0.543593 +0.257818 0.817695 0.546366 +0.239459 0.821545 0.548939 +0.221084 0.825098 0.551313 +0.202697 0.828356 0.553490 +0.184300 0.831322 0.555472 +0.165893 0.833998 0.557260 +0.147477 0.836386 0.558855 +0.129056 0.838489 0.560260 +0.110629 0.840308 0.561476 +0.092197 0.841844 0.562502 +0.073762 0.843100 0.563341 +0.055324 0.844075 0.563993 +0.036883 0.844771 0.564458 +0.018442 0.845188 0.564737 +0.000000 0.845327 0.564830 +0.857448 0.000000 0.546255 +0.857303 0.018706 0.546162 +0.856867 0.037412 0.545885 +0.856141 0.056114 0.545422 +0.855123 0.074814 0.544774 +0.853814 0.093508 0.543939 +0.852211 0.112196 0.542918 +0.850314 0.130876 0.541710 +0.848121 0.149547 0.540313 +0.845631 0.168206 0.538726 +0.842842 0.186854 0.536949 +0.839751 0.205486 0.534981 +0.836358 0.224101 0.532819 +0.832658 0.242698 0.530462 +0.828650 0.261272 0.527908 +0.824331 0.279823 0.525157 +0.819697 0.298345 0.522205 +0.814746 0.316838 0.519051 +0.809475 0.335295 0.515692 +0.803879 0.353715 0.512128 +0.797956 0.372093 0.508354 +0.791702 0.390424 0.504370 +0.785112 0.408703 0.500172 +0.778184 0.426926 0.495758 +0.770912 0.445086 0.491125 +0.763294 0.463178 0.486272 +0.755324 0.481195 0.481195 +0.747000 0.499129 0.475891 +0.738316 0.516975 0.470359 +0.729269 0.534722 0.464596 +0.719855 0.552365 0.458599 +0.710071 0.569892 0.452365 +0.699911 0.587295 0.445893 +0.689373 0.604564 0.439179 +0.678453 0.621688 0.432222 +0.667149 0.638656 0.425021 +0.655456 0.655456 0.417572 +0.638656 0.667149 0.425021 +0.621688 0.678453 0.432222 +0.604564 0.689373 0.439179 +0.587295 0.699911 0.445893 +0.569892 0.710071 0.452365 +0.552365 0.719855 0.458599 +0.534722 0.729269 0.464596 +0.516975 0.738316 0.470359 +0.499129 0.747000 0.475891 +0.481195 0.755324 0.481195 +0.463178 0.763294 0.486272 +0.445086 0.770912 0.491125 +0.426926 0.778184 0.495758 +0.408703 0.785112 0.500172 +0.390424 0.791702 0.504370 +0.372093 0.797956 0.508354 +0.353715 0.803879 0.512128 +0.335295 0.809475 0.515692 +0.316838 0.814746 0.519051 +0.298345 0.819697 0.522205 +0.279823 0.824331 0.525157 +0.261272 0.828650 0.527908 +0.242698 0.832658 0.530462 +0.224101 0.836358 0.532819 +0.205486 0.839751 0.534981 +0.186854 0.842842 0.536949 +0.168206 0.845631 0.538726 +0.149547 0.848121 0.540313 +0.130876 0.850314 0.541710 +0.112196 0.852211 0.542918 +0.093508 0.853814 0.543939 +0.074814 0.855123 0.544774 +0.056114 0.856141 0.545422 +0.037412 0.856867 0.545885 +0.018706 0.857303 0.546162 +0.000000 0.857448 0.546255 +0.869160 0.000000 0.527419 +0.869009 0.018962 0.527328 +0.868556 0.037922 0.527052 +0.867799 0.056879 0.526593 +0.866739 0.075830 0.525950 +0.865376 0.094774 0.525123 +0.863707 0.113709 0.524110 +0.861732 0.132633 0.522912 +0.859450 0.151544 0.521527 +0.856859 0.170440 0.519955 +0.853958 0.189318 0.518194 +0.850744 0.208176 0.516244 +0.847216 0.227011 0.514103 +0.843371 0.245820 0.511770 +0.839207 0.264601 0.509243 +0.834722 0.283350 0.506521 +0.829912 0.302063 0.503603 +0.824775 0.320737 0.500485 +0.819307 0.339368 0.497168 +0.813507 0.357952 0.493648 +0.807370 0.376483 0.489924 +0.800893 0.394957 0.485994 +0.794074 0.413369 0.481856 +0.786907 0.431712 0.477507 +0.779391 0.449981 0.472946 +0.771521 0.468170 0.468170 +0.763294 0.486272 0.463178 +0.754706 0.504278 0.457967 +0.745754 0.522183 0.452535 +0.736434 0.539976 0.446879 +0.726744 0.557650 0.440999 +0.716680 0.575196 0.434892 +0.706238 0.592604 0.428556 +0.695416 0.609863 0.421989 +0.684211 0.626964 0.415190 +0.672621 0.643895 0.408156 +0.660644 0.660644 0.400888 +0.643895 0.672621 0.408156 +0.626964 0.684211 0.415190 +0.609863 0.695416 0.421989 +0.592604 0.706238 0.428556 +0.575196 0.716680 0.434892 +0.557650 0.726744 0.440999 +0.539976 0.736434 0.446879 +0.522183 0.745754 0.452535 +0.504278 0.754706 0.457967 +0.486272 0.763294 0.463178 +0.468170 0.771521 0.468170 +0.449981 0.779391 0.472946 +0.431712 0.786907 0.477507 +0.413369 0.794074 0.481856 +0.394957 0.800893 0.485994 +0.376483 0.807370 0.489924 +0.357952 0.813507 0.493648 +0.339368 0.819307 0.497168 +0.320737 0.824775 0.500485 +0.302063 0.829912 0.503603 +0.283350 0.834722 0.506521 +0.264601 0.839207 0.509243 +0.245820 0.843371 0.511770 +0.227011 0.847216 0.514103 +0.208176 0.850744 0.516244 +0.189318 0.853958 0.518194 +0.170440 0.856859 0.519955 +0.151544 0.859450 0.521527 +0.132633 0.861732 0.522912 +0.113709 0.863707 0.524110 +0.094774 0.865376 0.525123 +0.075830 0.866739 0.525950 +0.056879 0.867799 0.526593 +0.037922 0.868556 0.527052 +0.018962 0.869009 0.527328 +0.000000 0.869160 0.527419 +0.880459 0.000000 0.508333 +0.880302 0.019208 0.508243 +0.879830 0.038414 0.507970 +0.879044 0.057616 0.507516 +0.877943 0.076810 0.506880 +0.876526 0.095995 0.506062 +0.874792 0.115169 0.505061 +0.872740 0.134328 0.503877 +0.870370 0.153470 0.502508 +0.867679 0.172592 0.500955 +0.864667 0.191692 0.499216 +0.861331 0.210766 0.497290 +0.857670 0.229812 0.495176 +0.853682 0.248826 0.492873 +0.849364 0.267803 0.490381 +0.844715 0.286742 0.487696 +0.839731 0.305637 0.484819 +0.834410 0.324484 0.481747 +0.828751 0.343280 0.478479 +0.822749 0.362018 0.475014 +0.816402 0.380694 0.471350 +0.809707 0.399303 0.467485 +0.802662 0.417839 0.463417 +0.795263 0.436296 0.459145 +0.787507 0.454667 0.454667 +0.779391 0.472946 0.449981 +0.770912 0.491125 0.445086 +0.762068 0.509197 0.439980 +0.752854 0.527154 0.434661 +0.743270 0.544988 0.429127 +0.733310 0.562689 0.423377 +0.722975 0.580248 0.417410 +0.712259 0.597657 0.411223 +0.701163 0.614903 0.404816 +0.689682 0.631977 0.398188 +0.677817 0.648868 0.391338 +0.665565 0.665565 0.384264 +0.648868 0.677817 0.391338 +0.631977 0.689682 0.398188 +0.614903 0.701163 0.404816 +0.597657 0.712259 0.411223 +0.580248 0.722975 0.417410 +0.562689 0.733310 0.423377 +0.544988 0.743270 0.429127 +0.527154 0.752854 0.434661 +0.509197 0.762068 0.439980 +0.491125 0.770912 0.445086 +0.472946 0.779391 0.449981 +0.454667 0.787507 0.454667 +0.436296 0.795263 0.459145 +0.417839 0.802662 0.463417 +0.399303 0.809707 0.467485 +0.380694 0.816402 0.471350 +0.362018 0.822749 0.475014 +0.343280 0.828751 0.478479 +0.324484 0.834410 0.481747 +0.305637 0.839731 0.484819 +0.286742 0.844715 0.487696 +0.267803 0.849364 0.490381 +0.248826 0.853682 0.492873 +0.229812 0.857670 0.495176 +0.210766 0.861331 0.497290 +0.191692 0.864667 0.499216 +0.172592 0.867679 0.500955 +0.153470 0.870370 0.502508 +0.134328 0.872740 0.503877 +0.115169 0.874792 0.505061 +0.095995 0.876526 0.506062 +0.076810 0.877943 0.506880 +0.057616 0.879044 0.507516 +0.038414 0.879830 0.507970 +0.019208 0.880302 0.508243 +0.000000 0.880459 0.508333 +0.891339 0.000000 0.489005 +0.891176 0.019446 0.488916 +0.890687 0.038888 0.488647 +0.889871 0.058325 0.488200 +0.888728 0.077754 0.487573 +0.887258 0.097171 0.486767 +0.885460 0.116573 0.485780 +0.883333 0.135958 0.484613 +0.880875 0.155322 0.483265 +0.878086 0.174662 0.481735 +0.874965 0.193975 0.480022 +0.871509 0.213257 0.478126 +0.867717 0.232504 0.476046 +0.863588 0.251713 0.473780 +0.859119 0.270879 0.471329 +0.854308 0.289998 0.468689 +0.849154 0.309067 0.465862 +0.843653 0.328079 0.462844 +0.837805 0.347030 0.459635 +0.831605 0.365915 0.456234 +0.825053 0.384729 0.452640 +0.818145 0.403465 0.448850 +0.810879 0.422117 0.444863 +0.803252 0.440679 0.440679 +0.795263 0.459145 0.436296 +0.786907 0.477507 0.431712 +0.778184 0.495758 0.426926 +0.769089 0.513889 0.421937 +0.759622 0.531893 0.416743 +0.749780 0.549761 0.411343 +0.739561 0.567485 0.405737 +0.728962 0.585054 0.399922 +0.717982 0.602459 0.393899 +0.706620 0.619689 0.387665 +0.694874 0.636735 0.381221 +0.682743 0.653585 0.374566 +0.670227 0.670227 0.367699 +0.653585 0.682743 0.374566 +0.636735 0.694874 0.381221 +0.619689 0.706620 0.387665 +0.602459 0.717982 0.393899 +0.585054 0.728962 0.399922 +0.567485 0.739561 0.405737 +0.549761 0.749780 0.411343 +0.531893 0.759622 0.416743 +0.513889 0.769089 0.421937 +0.495758 0.778184 0.426926 +0.477507 0.786907 0.431712 +0.459145 0.795263 0.436296 +0.440679 0.803252 0.440679 +0.422117 0.810879 0.444863 +0.403465 0.818145 0.448850 +0.384729 0.825053 0.452640 +0.365915 0.831605 0.456234 +0.347030 0.837805 0.459635 +0.328079 0.843653 0.462844 +0.309067 0.849154 0.465862 +0.289998 0.854308 0.468689 +0.270879 0.859119 0.471329 +0.251713 0.863588 0.473780 +0.232504 0.867717 0.476046 +0.213257 0.871509 0.478126 +0.193975 0.874965 0.480022 +0.174662 0.878086 0.481735 +0.155322 0.880875 0.483265 +0.135958 0.883333 0.484613 +0.116573 0.885460 0.485780 +0.097171 0.887258 0.486767 +0.077754 0.888728 0.487573 +0.058325 0.889871 0.488200 +0.038888 0.890687 0.488647 +0.019446 0.891176 0.488916 +0.000000 0.891339 0.489005 +0.901794 0.000000 0.469444 +0.901625 0.019674 0.469357 +0.901119 0.039344 0.469093 +0.900274 0.059007 0.468653 +0.899091 0.078660 0.468037 +0.897569 0.098300 0.467245 +0.895708 0.117922 0.466276 +0.893506 0.137524 0.465130 +0.890963 0.157101 0.463806 +0.888077 0.176650 0.462304 +0.884848 0.196166 0.460623 +0.881274 0.215646 0.458762 +0.877354 0.235086 0.456722 +0.873086 0.254481 0.454500 +0.868469 0.273827 0.452096 +0.863501 0.293119 0.449510 +0.858179 0.312352 0.446740 +0.852503 0.331520 0.443785 +0.846469 0.350619 0.440644 +0.840077 0.369643 0.437316 +0.833324 0.388585 0.433801 +0.826208 0.407441 0.430097 +0.818727 0.426202 0.426202 +0.810879 0.444863 0.422117 +0.802662 0.463417 0.417839 +0.794074 0.481856 0.413369 +0.785112 0.500172 0.408703 +0.775776 0.518357 0.403843 +0.766063 0.536403 0.398787 +0.755971 0.554301 0.393534 +0.745500 0.572042 0.388083 +0.734648 0.589617 0.382433 +0.723413 0.607016 0.376585 +0.711795 0.624228 0.370537 +0.699794 0.641243 0.364290 +0.687408 0.658050 0.357842 +0.674638 0.674638 0.351194 +0.658050 0.687408 0.357842 +0.641243 0.699794 0.364290 +0.624228 0.711795 0.370537 +0.607016 0.723413 0.376585 +0.589617 0.734648 0.382433 +0.572042 0.745500 0.388083 +0.554301 0.755971 0.393534 +0.536403 0.766063 0.398787 +0.518357 0.775776 0.403843 +0.500172 0.785112 0.408703 +0.481856 0.794074 0.413369 +0.463417 0.802662 0.417839 +0.444863 0.810879 0.422117 +0.426202 0.818727 0.426202 +0.407441 0.826208 0.430097 +0.388585 0.833324 0.433801 +0.369643 0.840077 0.437316 +0.350619 0.846469 0.440644 +0.331520 0.852503 0.443785 +0.312352 0.858179 0.446740 +0.293119 0.863501 0.449510 +0.273827 0.868469 0.452096 +0.254481 0.873086 0.454500 +0.235086 0.877354 0.456722 +0.215646 0.881274 0.458762 +0.196166 0.884848 0.460623 +0.176650 0.888077 0.462304 +0.157101 0.890963 0.463806 +0.137524 0.893506 0.465130 +0.117922 0.895708 0.466276 +0.098300 0.897569 0.467245 +0.078660 0.899091 0.468037 +0.059007 0.900274 0.468653 +0.039344 0.901119 0.469093 +0.019674 0.901625 0.469357 +0.000000 0.901794 0.469444 +0.911821 0.000000 0.449660 +0.911646 0.019892 0.449574 +0.911122 0.039780 0.449316 +0.910249 0.059661 0.448885 +0.909027 0.079530 0.448282 +0.907454 0.099382 0.447507 +0.905530 0.119215 0.446558 +0.903255 0.139024 0.445436 +0.900628 0.158805 0.444141 +0.897648 0.178553 0.442671 +0.894314 0.198265 0.441027 +0.890625 0.217934 0.439208 +0.886579 0.237558 0.437212 +0.882176 0.257131 0.435041 +0.877414 0.276647 0.432692 +0.872291 0.296103 0.430166 +0.866806 0.315492 0.427461 +0.860958 0.334808 0.424577 +0.854745 0.354047 0.421513 +0.848165 0.373201 0.418269 +0.841216 0.392266 0.414842 +0.833898 0.411233 0.411233 +0.826208 0.430097 0.407441 +0.818145 0.448850 0.403465 +0.809707 0.467485 0.399303 +0.800893 0.485994 0.394957 +0.791702 0.504370 0.390424 +0.782131 0.522603 0.385704 +0.772180 0.540687 0.380797 +0.761849 0.558611 0.375702 +0.751135 0.576366 0.370419 +0.740038 0.593943 0.364946 +0.728558 0.611333 0.359285 +0.716695 0.628525 0.353435 +0.704448 0.645508 0.347395 +0.691818 0.662272 0.341167 +0.678805 0.678805 0.334750 +0.662272 0.691818 0.341167 +0.645508 0.704448 0.347395 +0.628525 0.716695 0.353435 +0.611333 0.728558 0.359285 +0.593943 0.740038 0.364946 +0.576366 0.751135 0.370419 +0.558611 0.761849 0.375702 +0.540687 0.772180 0.380797 +0.522603 0.782131 0.385704 +0.504370 0.791702 0.390424 +0.485994 0.800893 0.394957 +0.467485 0.809707 0.399303 +0.448850 0.818145 0.403465 +0.430097 0.826208 0.407441 +0.411233 0.833898 0.411233 +0.392266 0.841216 0.414842 +0.373201 0.848165 0.418269 +0.354047 0.854745 0.421513 +0.334808 0.860958 0.424577 +0.315492 0.866806 0.427461 +0.296103 0.872291 0.430166 +0.276647 0.877414 0.432692 +0.257131 0.882176 0.435041 +0.237558 0.886579 0.437212 +0.217934 0.890625 0.439208 +0.198265 0.894314 0.441027 +0.178553 0.897648 0.442671 +0.158805 0.900628 0.444141 +0.139024 0.903255 0.445436 +0.119215 0.905530 0.446558 +0.099382 0.907454 0.447507 +0.079530 0.909027 0.448282 +0.059661 0.910249 0.448885 +0.039780 0.911122 0.449316 +0.019892 0.911646 0.449574 +0.000000 0.911821 0.449660 +0.921413 0.000000 0.429662 +0.921233 0.020101 0.429578 +0.920692 0.040198 0.429326 +0.919792 0.060286 0.428906 +0.918530 0.080361 0.428318 +0.916907 0.100418 0.427561 +0.914923 0.120452 0.426636 +0.912577 0.140459 0.425542 +0.909868 0.160434 0.424278 +0.906796 0.180373 0.422846 +0.903359 0.200270 0.421243 +0.899557 0.220120 0.419470 +0.895389 0.239919 0.417527 +0.890854 0.259660 0.415412 +0.885950 0.279339 0.413125 +0.880678 0.298950 0.410667 +0.875034 0.318486 0.408035 +0.869019 0.337943 0.405230 +0.862631 0.357313 0.402251 +0.855869 0.376591 0.399098 +0.848731 0.395770 0.395770 +0.841216 0.414842 0.392266 +0.833324 0.433801 0.388585 +0.825053 0.452640 0.384729 +0.816402 0.471350 0.380694 +0.807370 0.489924 0.376483 +0.797956 0.508354 0.372093 +0.788160 0.526632 0.367525 +0.777980 0.544748 0.362778 +0.767417 0.562693 0.357852 +0.756470 0.580460 0.352748 +0.745139 0.598037 0.347464 +0.733424 0.615415 0.342001 +0.721325 0.632585 0.336359 +0.708843 0.649535 0.330539 +0.695980 0.666256 0.324541 +0.682735 0.682735 0.318365 +0.666256 0.695980 0.324541 +0.649535 0.708843 0.330539 +0.632585 0.721325 0.336359 +0.615415 0.733424 0.342001 +0.598037 0.745139 0.347464 +0.580460 0.756470 0.352748 +0.562693 0.767417 0.357852 +0.544748 0.777980 0.362778 +0.526632 0.788160 0.367525 +0.508354 0.797956 0.372093 +0.489924 0.807370 0.376483 +0.471350 0.816402 0.380694 +0.452640 0.825053 0.384729 +0.433801 0.833324 0.388585 +0.414842 0.841216 0.392266 +0.395770 0.848731 0.395770 +0.376591 0.855869 0.399098 +0.357313 0.862631 0.402251 +0.337943 0.869019 0.405230 +0.318486 0.875034 0.408035 +0.298950 0.880678 0.410667 +0.279339 0.885950 0.413125 +0.259660 0.890854 0.415412 +0.239919 0.895389 0.417527 +0.220120 0.899557 0.419470 +0.200270 0.903359 0.421243 +0.180373 0.906796 0.422846 +0.160434 0.909868 0.424278 +0.140459 0.912577 0.425542 +0.120452 0.914923 0.426636 +0.100418 0.916907 0.427561 +0.080361 0.918530 0.428318 +0.060286 0.919792 0.428906 +0.040198 0.920692 0.429326 +0.020101 0.921233 0.429578 +0.000000 0.921413 0.429662 +0.930567 0.000000 0.409459 +0.930381 0.020301 0.409377 +0.929824 0.040597 0.409133 +0.928897 0.060883 0.408724 +0.927597 0.081154 0.408153 +0.925926 0.101405 0.407417 +0.923883 0.121632 0.406518 +0.921467 0.141827 0.405455 +0.918679 0.161988 0.404228 +0.915516 0.182108 0.402837 +0.911980 0.202181 0.401281 +0.908069 0.222203 0.399560 +0.903782 0.242168 0.397674 +0.899119 0.262069 0.395622 +0.894078 0.281902 0.393404 +0.888660 0.301659 0.391020 +0.882863 0.321336 0.388469 +0.876686 0.340924 0.385751 +0.870128 0.360419 0.382866 +0.863189 0.379812 0.379812 +0.855869 0.399098 0.376591 +0.848165 0.418269 0.373201 +0.840077 0.437316 0.369643 +0.831605 0.456234 0.365915 +0.822749 0.475014 0.362018 +0.813507 0.493648 0.357952 +0.803879 0.512128 0.353715 +0.793866 0.530444 0.349309 +0.783467 0.548589 0.344734 +0.772681 0.566553 0.339988 +0.761511 0.584328 0.335073 +0.749955 0.601902 0.329988 +0.738015 0.619268 0.324734 +0.725691 0.636414 0.319312 +0.712986 0.653331 0.313721 +0.699899 0.670008 0.307963 +0.686434 0.686434 0.302038 +0.670008 0.699899 0.307963 +0.653331 0.712986 0.313721 +0.636414 0.725691 0.319312 +0.619268 0.738015 0.324734 +0.601902 0.749955 0.329988 +0.584328 0.761511 0.335073 +0.566553 0.772681 0.339988 +0.548589 0.783467 0.344734 +0.530444 0.793866 0.349309 +0.512128 0.803879 0.353715 +0.493648 0.813507 0.357952 +0.475014 0.822749 0.362018 +0.456234 0.831605 0.365915 +0.437316 0.840077 0.369643 +0.418269 0.848165 0.373201 +0.399098 0.855869 0.376591 +0.379812 0.863189 0.379812 +0.360419 0.870128 0.382866 +0.340924 0.876686 0.385751 +0.321336 0.882863 0.388469 +0.301659 0.888660 0.391020 +0.281902 0.894078 0.393404 +0.262069 0.899119 0.395622 +0.242168 0.903782 0.397674 +0.222203 0.908069 0.399560 +0.202181 0.911980 0.401281 +0.182108 0.915516 0.402837 +0.161988 0.918679 0.404228 +0.141827 0.921467 0.405455 +0.121632 0.923883 0.406518 +0.101405 0.925926 0.407417 +0.081154 0.927597 0.408153 +0.060883 0.928897 0.408724 +0.040597 0.929824 0.409133 +0.020301 0.930381 0.409377 +0.000000 0.930567 0.409459 +0.939278 0.000000 0.389061 +0.939087 0.020491 0.388982 +0.938514 0.040976 0.388745 +0.937560 0.061451 0.388350 +0.936224 0.081909 0.387797 +0.934506 0.102345 0.387085 +0.932406 0.122754 0.386215 +0.929923 0.143129 0.385187 +0.927057 0.163465 0.384000 +0.923808 0.183757 0.382654 +0.920175 0.203998 0.381149 +0.916158 0.224182 0.379485 +0.911756 0.244304 0.377662 +0.906969 0.264357 0.375679 +0.901796 0.284335 0.373536 +0.896237 0.304231 0.371233 +0.890291 0.324039 0.368771 +0.883958 0.343752 0.366147 +0.877237 0.363364 0.363364 +0.870128 0.382866 0.360419 +0.862631 0.402251 0.357313 +0.854745 0.421513 0.354047 +0.846469 0.440644 0.350619 +0.837805 0.459635 0.347030 +0.828751 0.478479 0.343280 +0.819307 0.497168 0.339368 +0.809475 0.515692 0.335295 +0.799254 0.534044 0.331062 +0.788644 0.552214 0.326667 +0.777646 0.570194 0.322112 +0.766262 0.587974 0.317396 +0.754492 0.605544 0.312521 +0.742338 0.622895 0.307486 +0.729800 0.640017 0.302293 +0.716881 0.656900 0.296942 +0.703583 0.673534 0.291434 +0.689908 0.689908 0.285769 +0.673534 0.703583 0.291434 +0.656900 0.716881 0.296942 +0.640017 0.729800 0.302293 +0.622895 0.742338 0.307486 +0.605544 0.754492 0.312521 +0.587974 0.766262 0.317396 +0.570194 0.777646 0.322112 +0.552214 0.788644 0.326667 +0.534044 0.799254 0.331062 +0.515692 0.809475 0.335295 +0.497168 0.819307 0.339368 +0.478479 0.828751 0.343280 +0.459635 0.837805 0.347030 +0.440644 0.846469 0.350619 +0.421513 0.854745 0.354047 +0.402251 0.862631 0.357313 +0.382866 0.870128 0.360419 +0.363364 0.877237 0.363364 +0.343752 0.883958 0.366147 +0.324039 0.890291 0.368771 +0.304231 0.896237 0.371233 +0.284335 0.901796 0.373536 +0.264357 0.906969 0.375679 +0.244304 0.911756 0.377662 +0.224182 0.916158 0.379485 +0.203998 0.920175 0.381149 +0.183757 0.923808 0.382654 +0.163465 0.927057 0.384000 +0.143129 0.929923 0.385187 +0.122754 0.932406 0.386215 +0.102345 0.934506 0.387085 +0.081909 0.936224 0.387797 +0.061451 0.937560 0.388350 +0.040976 0.938514 0.388745 +0.020491 0.939087 0.388982 +0.000000 0.939278 0.389061 +0.947541 0.000000 0.368479 +0.947345 0.020671 0.368402 +0.946758 0.041336 0.368174 +0.945778 0.061990 0.367793 +0.944407 0.082625 0.367260 +0.942644 0.103236 0.366574 +0.940488 0.123818 0.365736 +0.937940 0.144363 0.364745 +0.935000 0.164866 0.363601 +0.931667 0.185320 0.362305 +0.927940 0.205719 0.360856 +0.923821 0.226058 0.359254 +0.919308 0.246328 0.357499 +0.914402 0.266524 0.355591 +0.909102 0.286639 0.353530 +0.903407 0.306665 0.351316 +0.897319 0.326597 0.348948 +0.890835 0.346427 0.346427 +0.883958 0.366147 0.343752 +0.876686 0.385751 0.340924 +0.869019 0.405230 0.337943 +0.860958 0.424577 0.334808 +0.852503 0.443785 0.331520 +0.843653 0.462844 0.328079 +0.834410 0.481747 0.324484 +0.824775 0.500485 0.320737 +0.814746 0.519051 0.316838 +0.804327 0.537434 0.312785 +0.793516 0.555626 0.308582 +0.782317 0.573618 0.304226 +0.770729 0.591401 0.299720 +0.758755 0.608965 0.295064 +0.746397 0.626301 0.290258 +0.733656 0.643399 0.285303 +0.720535 0.660249 0.280201 +0.707036 0.676840 0.274951 +0.693163 0.693163 0.269556 +0.676840 0.707036 0.274951 +0.660249 0.720535 0.280201 +0.643399 0.733656 0.285303 +0.626301 0.746397 0.290258 +0.608965 0.758755 0.295064 +0.591401 0.770729 0.299720 +0.573618 0.782317 0.304226 +0.555626 0.793516 0.308582 +0.537434 0.804327 0.312785 +0.519051 0.814746 0.316838 +0.500485 0.824775 0.320737 +0.481747 0.834410 0.324484 +0.462844 0.843653 0.328079 +0.443785 0.852503 0.331520 +0.424577 0.860958 0.334808 +0.405230 0.869019 0.337943 +0.385751 0.876686 0.340924 +0.366147 0.883958 0.343752 +0.346427 0.890835 0.346427 +0.326597 0.897319 0.348948 +0.306665 0.903407 0.351316 +0.286639 0.909102 0.353530 +0.266524 0.914402 0.355591 +0.246328 0.919308 0.357499 +0.226058 0.923821 0.359254 +0.205719 0.927940 0.360856 +0.185320 0.931667 0.362305 +0.164866 0.935000 0.363601 +0.144363 0.937940 0.364745 +0.123818 0.940488 0.365736 +0.103236 0.942644 0.366574 +0.082625 0.944407 0.367260 +0.061990 0.945778 0.367793 +0.041336 0.946758 0.368174 +0.020671 0.947345 0.368402 +0.000000 0.947541 0.368479 +0.955354 0.000000 0.347720 +0.955153 0.020842 0.347647 +0.954551 0.041677 0.347428 +0.953547 0.062499 0.347063 +0.952142 0.083302 0.346551 +0.950335 0.104079 0.345894 +0.948126 0.124823 0.345090 +0.945516 0.145529 0.344140 +0.942504 0.166189 0.343043 +0.939090 0.186797 0.341801 +0.935275 0.207345 0.340412 +0.931057 0.227828 0.338877 +0.926438 0.248238 0.337196 +0.921417 0.268569 0.335368 +0.915995 0.288812 0.333395 +0.910171 0.308961 0.331275 +0.903945 0.329009 0.329009 +0.897319 0.348948 0.326597 +0.890291 0.368771 0.324039 +0.882863 0.388469 0.321336 +0.875034 0.408035 0.318486 +0.866806 0.427461 0.315492 +0.858179 0.446740 0.312352 +0.849154 0.465862 0.309067 +0.839731 0.484819 0.305637 +0.829912 0.503603 0.302063 +0.819697 0.522205 0.298345 +0.809089 0.540616 0.294484 +0.798088 0.558827 0.290480 +0.786696 0.576830 0.286334 +0.774916 0.594614 0.282046 +0.762749 0.612171 0.277618 +0.750198 0.629491 0.273050 +0.737265 0.646564 0.268342 +0.723952 0.663380 0.263497 +0.710265 0.679930 0.258515 +0.696204 0.696204 0.253398 +0.679930 0.710265 0.258515 +0.663380 0.723952 0.263497 +0.646564 0.737265 0.268342 +0.629491 0.750198 0.273050 +0.612171 0.762749 0.277618 +0.594614 0.774916 0.282046 +0.576830 0.786696 0.286334 +0.558827 0.798088 0.290480 +0.540616 0.809089 0.294484 +0.522205 0.819697 0.298345 +0.503603 0.829912 0.302063 +0.484819 0.839731 0.305637 +0.465862 0.849154 0.309067 +0.446740 0.858179 0.312352 +0.427461 0.866806 0.315492 +0.408035 0.875034 0.318486 +0.388469 0.882863 0.321336 +0.368771 0.890291 0.324039 +0.348948 0.897319 0.326597 +0.329009 0.903945 0.329009 +0.308961 0.910171 0.331275 +0.288812 0.915995 0.333395 +0.268569 0.921417 0.335368 +0.248238 0.926438 0.337196 +0.227828 0.931057 0.338877 +0.207345 0.935275 0.340412 +0.186797 0.939090 0.341801 +0.166189 0.942504 0.343043 +0.145529 0.945516 0.344140 +0.124823 0.948126 0.345090 +0.104079 0.950335 0.345894 +0.083302 0.952142 0.346551 +0.062499 0.953547 0.347063 +0.041677 0.954551 0.347428 +0.020842 0.955153 0.347647 +0.000000 0.955354 0.347720 +0.962712 0.000000 0.326797 +0.962507 0.021002 0.326727 +0.961891 0.041997 0.326518 +0.960863 0.062978 0.326169 +0.959425 0.083939 0.325681 +0.957577 0.104872 0.325054 +0.955317 0.125770 0.324287 +0.952647 0.146626 0.323380 +0.949567 0.167434 0.322335 +0.946076 0.188186 0.321150 +0.942175 0.208875 0.319825 +0.937864 0.229494 0.318362 +0.933144 0.250035 0.316760 +0.928014 0.270491 0.315018 +0.922474 0.290855 0.313138 +0.916527 0.311119 0.311119 +0.910171 0.331275 0.308961 +0.903407 0.351316 0.306665 +0.896237 0.371233 0.304231 +0.888660 0.391020 0.301659 +0.880678 0.410667 0.298950 +0.872291 0.430166 0.296103 +0.863501 0.449510 0.293119 +0.854308 0.468689 0.289998 +0.844715 0.487696 0.286742 +0.834722 0.506521 0.283350 +0.824331 0.525157 0.279823 +0.813544 0.543593 0.276161 +0.802363 0.561820 0.272365 +0.790790 0.579831 0.268437 +0.778827 0.597615 0.264376 +0.766478 0.615164 0.260184 +0.753745 0.632467 0.255862 +0.740631 0.649516 0.251410 +0.727139 0.666300 0.246830 +0.713273 0.682810 0.242123 +0.699037 0.699037 0.237291 +0.682810 0.713273 0.242123 +0.666300 0.727139 0.246830 +0.649516 0.740631 0.251410 +0.632467 0.753745 0.255862 +0.615164 0.766478 0.260184 +0.597615 0.778827 0.264376 +0.579831 0.790790 0.268437 +0.561820 0.802363 0.272365 +0.543593 0.813544 0.276161 +0.525157 0.824331 0.279823 +0.506521 0.834722 0.283350 +0.487696 0.844715 0.286742 +0.468689 0.854308 0.289998 +0.449510 0.863501 0.293119 +0.430166 0.872291 0.296103 +0.410667 0.880678 0.298950 +0.391020 0.888660 0.301659 +0.371233 0.896237 0.304231 +0.351316 0.903407 0.306665 +0.331275 0.910171 0.308961 +0.311119 0.916527 0.311119 +0.290855 0.922474 0.313138 +0.270491 0.928014 0.315018 +0.250035 0.933144 0.316760 +0.229494 0.937864 0.318362 +0.208875 0.942175 0.319825 +0.188186 0.946076 0.321150 +0.167434 0.949567 0.322335 +0.146626 0.952647 0.323380 +0.125770 0.955317 0.324287 +0.104872 0.957577 0.325054 +0.083939 0.959425 0.325681 +0.062978 0.960863 0.326169 +0.041997 0.961891 0.326518 +0.021002 0.962507 0.326727 +0.000000 0.962712 0.326797 +0.969612 0.000000 0.305718 +0.969402 0.021152 0.305651 +0.968773 0.042298 0.305453 +0.967723 0.063428 0.305122 +0.966254 0.084536 0.304659 +0.964366 0.105615 0.304063 +0.962058 0.126657 0.303336 +0.959332 0.147655 0.302476 +0.956186 0.168601 0.301484 +0.952622 0.189488 0.300361 +0.948640 0.210308 0.299105 +0.944240 0.231054 0.297718 +0.939423 0.251718 0.296199 +0.934189 0.272291 0.294549 +0.928540 0.292767 0.292767 +0.922474 0.313138 0.290855 +0.915995 0.333395 0.288812 +0.909102 0.353530 0.286639 +0.901796 0.373536 0.284335 +0.894078 0.393404 0.281902 +0.885950 0.413125 0.279339 +0.877414 0.432692 0.276647 +0.868469 0.452096 0.273827 +0.859119 0.471329 0.270879 +0.849364 0.490381 0.267803 +0.839207 0.509243 0.264601 +0.828650 0.527908 0.261272 +0.817695 0.546366 0.257818 +0.806344 0.564608 0.254239 +0.794601 0.582625 0.250537 +0.782467 0.600408 0.246711 +0.769947 0.617948 0.242763 +0.757043 0.635234 0.238695 +0.743758 0.652259 0.234506 +0.730098 0.669012 0.230199 +0.716065 0.685483 0.225775 +0.701665 0.701665 0.221234 +0.685483 0.716065 0.225775 +0.669012 0.730098 0.230199 +0.652259 0.743758 0.234506 +0.635234 0.757043 0.238695 +0.617948 0.769947 0.242763 +0.600408 0.782467 0.246711 +0.582625 0.794601 0.250537 +0.564608 0.806344 0.254239 +0.546366 0.817695 0.257818 +0.527908 0.828650 0.261272 +0.509243 0.839207 0.264601 +0.490381 0.849364 0.267803 +0.471329 0.859119 0.270879 +0.452096 0.868469 0.273827 +0.432692 0.877414 0.276647 +0.413125 0.885950 0.279339 +0.393404 0.894078 0.281902 +0.373536 0.901796 0.284335 +0.353530 0.909102 0.286639 +0.333395 0.915995 0.288812 +0.313138 0.922474 0.290855 +0.292767 0.928540 0.292767 +0.272291 0.934189 0.294549 +0.251718 0.939423 0.296199 +0.231054 0.944240 0.297718 +0.210308 0.948640 0.299105 +0.189488 0.952622 0.300361 +0.168601 0.956186 0.301484 +0.147655 0.959332 0.302476 +0.126657 0.962058 0.303336 +0.105615 0.964366 0.304063 +0.084536 0.966254 0.304659 +0.063428 0.967723 0.305122 +0.042298 0.968773 0.305453 +0.021152 0.969402 0.305651 +0.000000 0.969612 0.305718 +0.976051 0.000000 0.284493 +0.975837 0.021293 0.284430 +0.975194 0.042578 0.284243 +0.974124 0.063847 0.283931 +0.972626 0.085094 0.283495 +0.970700 0.106309 0.282933 +0.968347 0.127485 0.282247 +0.965566 0.148615 0.281437 +0.962359 0.169690 0.280502 +0.958726 0.190702 0.279443 +0.954667 0.211645 0.278260 +0.950183 0.232508 0.276953 +0.945275 0.253286 0.275523 +0.939943 0.273969 0.273969 +0.934189 0.294549 0.272291 +0.928014 0.315018 0.270491 +0.921417 0.335368 0.268569 +0.914402 0.355591 0.266524 +0.906969 0.375679 0.264357 +0.899119 0.395622 0.262069 +0.890854 0.415412 0.259660 +0.882176 0.435041 0.257131 +0.873086 0.454500 0.254481 +0.863588 0.473780 0.251713 +0.853682 0.492873 0.248826 +0.843371 0.511770 0.245820 +0.832658 0.530462 0.242698 +0.821545 0.548939 0.239459 +0.810036 0.567193 0.236104 +0.798133 0.585215 0.232634 +0.785839 0.602996 0.229051 +0.773159 0.620525 0.225355 +0.760095 0.637796 0.221548 +0.746652 0.654797 0.217629 +0.732835 0.671519 0.213602 +0.718647 0.687955 0.209466 +0.704093 0.704093 0.205224 +0.687955 0.718647 0.209466 +0.671519 0.732835 0.213602 +0.654797 0.746652 0.217629 +0.637796 0.760095 0.221548 +0.620525 0.773159 0.225355 +0.602996 0.785839 0.229051 +0.585215 0.798133 0.232634 +0.567193 0.810036 0.236104 +0.548939 0.821545 0.239459 +0.530462 0.832658 0.242698 +0.511770 0.843371 0.245820 +0.492873 0.853682 0.248826 +0.473780 0.863588 0.251713 +0.454500 0.873086 0.254481 +0.435041 0.882176 0.257131 +0.415412 0.890854 0.259660 +0.395622 0.899119 0.262069 +0.375679 0.906969 0.264357 +0.355591 0.914402 0.266524 +0.335368 0.921417 0.268569 +0.315018 0.928014 0.270491 +0.294549 0.934189 0.272291 +0.273969 0.939943 0.273969 +0.253286 0.945275 0.275523 +0.232508 0.950183 0.276953 +0.211645 0.954667 0.278260 +0.190702 0.958726 0.279443 +0.169690 0.962359 0.280502 +0.148615 0.965566 0.281437 +0.127485 0.968347 0.282247 +0.106309 0.970700 0.282933 +0.085094 0.972626 0.283495 +0.063847 0.974124 0.283931 +0.042578 0.975194 0.284243 +0.021293 0.975837 0.284430 +0.000000 0.976051 0.284493 +0.982025 0.000000 0.263133 +0.981807 0.021423 0.263074 +0.981152 0.042838 0.262899 +0.980062 0.064237 0.262607 +0.978537 0.085611 0.262198 +0.976576 0.106952 0.261673 +0.974179 0.128253 0.261031 +0.971348 0.149505 0.260272 +0.968084 0.170699 0.259397 +0.964385 0.191828 0.258406 +0.960255 0.212883 0.257299 +0.955692 0.233856 0.256077 +0.950698 0.254739 0.254739 +0.945275 0.275523 0.253286 +0.939423 0.296199 0.251718 +0.933144 0.316760 0.250035 +0.926438 0.337196 0.248238 +0.919308 0.357499 0.246328 +0.911756 0.377662 0.244304 +0.903782 0.397674 0.242168 +0.895389 0.417527 0.239919 +0.886579 0.437212 0.237558 +0.877354 0.456722 0.235086 +0.867717 0.476046 0.232504 +0.857670 0.495176 0.229812 +0.847216 0.514103 0.227011 +0.836358 0.532819 0.224101 +0.825098 0.551313 0.221084 +0.813441 0.569577 0.217961 +0.801389 0.587603 0.214732 +0.788947 0.605380 0.211398 +0.776118 0.622900 0.207960 +0.762906 0.640154 0.204420 +0.749317 0.657133 0.200779 +0.735353 0.673827 0.197037 +0.721021 0.690228 0.193197 +0.706326 0.706326 0.189259 +0.690228 0.721021 0.193197 +0.673827 0.735353 0.197037 +0.657133 0.749317 0.200779 +0.640154 0.762906 0.204420 +0.622900 0.776118 0.207960 +0.605380 0.788947 0.211398 +0.587603 0.801389 0.214732 +0.569577 0.813441 0.217961 +0.551313 0.825098 0.221084 +0.532819 0.836358 0.224101 +0.514103 0.847216 0.227011 +0.495176 0.857670 0.229812 +0.476046 0.867717 0.232504 +0.456722 0.877354 0.235086 +0.437212 0.886579 0.237558 +0.417527 0.895389 0.239919 +0.397674 0.903782 0.242168 +0.377662 0.911756 0.244304 +0.357499 0.919308 0.246328 +0.337196 0.926438 0.248238 +0.316760 0.933144 0.250035 +0.296199 0.939423 0.251718 +0.275523 0.945275 0.253286 +0.254739 0.950698 0.254739 +0.233856 0.955692 0.256077 +0.212883 0.960255 0.257299 +0.191828 0.964385 0.258406 +0.170699 0.968084 0.259397 +0.149505 0.971348 0.260272 +0.128253 0.974179 0.261031 +0.106952 0.976576 0.261673 +0.085611 0.978537 0.262198 +0.064237 0.980062 0.262607 +0.042838 0.981152 0.262899 +0.021423 0.981807 0.263074 +0.000000 0.982025 0.263133 +0.987531 0.000000 0.241647 +0.987309 0.021543 0.241593 +0.986644 0.043078 0.241430 +0.985536 0.064595 0.241159 +0.983984 0.086087 0.240779 +0.981990 0.107545 0.240292 +0.979554 0.128961 0.239695 +0.976676 0.150325 0.238991 +0.973358 0.171629 0.238179 +0.969599 0.192865 0.237259 +0.965401 0.214024 0.236232 +0.960765 0.235098 0.235098 +0.955692 0.256077 0.233856 +0.950183 0.276953 0.232508 +0.944240 0.297718 0.231054 +0.937864 0.318362 0.229494 +0.931057 0.338877 0.227828 +0.923821 0.359254 0.226058 +0.916158 0.379485 0.224182 +0.908069 0.399560 0.222203 +0.899557 0.419470 0.220120 +0.890625 0.439208 0.217934 +0.881274 0.458762 0.215646 +0.871509 0.478126 0.213257 +0.861331 0.497290 0.210766 +0.850744 0.516244 0.208176 +0.839751 0.534981 0.205486 +0.828356 0.553490 0.202697 +0.816562 0.571763 0.199811 +0.804373 0.589791 0.196829 +0.791794 0.607565 0.193751 +0.778827 0.625075 0.190578 +0.765479 0.642314 0.187312 +0.751754 0.659271 0.183953 +0.737657 0.675938 0.180503 +0.723192 0.692306 0.176964 +0.708366 0.708366 0.173336 +0.692306 0.723192 0.176964 +0.675938 0.737657 0.180503 +0.659271 0.751754 0.183953 +0.642314 0.765479 0.187312 +0.625075 0.778827 0.190578 +0.607565 0.791794 0.193751 +0.589791 0.804373 0.196829 +0.571763 0.816562 0.199811 +0.553490 0.828356 0.202697 +0.534981 0.839751 0.205486 +0.516244 0.850744 0.208176 +0.497290 0.861331 0.210766 +0.478126 0.871509 0.213257 +0.458762 0.881274 0.215646 +0.439208 0.890625 0.217934 +0.419470 0.899557 0.220120 +0.399560 0.908069 0.222203 +0.379485 0.916158 0.224182 +0.359254 0.923821 0.226058 +0.338877 0.931057 0.227828 +0.318362 0.937864 0.229494 +0.297718 0.944240 0.231054 +0.276953 0.950183 0.232508 +0.256077 0.955692 0.233856 +0.235098 0.960765 0.235098 +0.214024 0.965401 0.236232 +0.192865 0.969599 0.237259 +0.171629 0.973358 0.238179 +0.150325 0.976676 0.238991 +0.128961 0.979554 0.239695 +0.107545 0.981990 0.240292 +0.086087 0.983984 0.240779 +0.064595 0.985536 0.241159 +0.043078 0.986644 0.241430 +0.021543 0.987309 0.241593 +0.000000 0.987531 0.241647 +0.992568 0.000000 0.220047 +0.992342 0.021653 0.219997 +0.991667 0.043297 0.219847 +0.990542 0.064924 0.219598 +0.988967 0.086523 0.219249 +0.986942 0.108088 0.218800 +0.984469 0.129608 0.218252 +0.981548 0.151075 0.217604 +0.978179 0.172479 0.216857 +0.974365 0.193813 0.216011 +0.970105 0.215067 0.215067 +0.965401 0.236232 0.214024 +0.960255 0.257299 0.212883 +0.954667 0.278260 0.211645 +0.948640 0.299105 0.210308 +0.942175 0.319825 0.208875 +0.935275 0.340412 0.207345 +0.927940 0.360856 0.205719 +0.920175 0.381149 0.203998 +0.911980 0.401281 0.202181 +0.903359 0.421243 0.200270 +0.894314 0.441027 0.198265 +0.884848 0.460623 0.196166 +0.874965 0.480022 0.193975 +0.864667 0.499216 0.191692 +0.853958 0.518194 0.189318 +0.842842 0.536949 0.186854 +0.831322 0.555472 0.184300 +0.819403 0.573752 0.181657 +0.807088 0.591781 0.178927 +0.794383 0.609551 0.176110 +0.781291 0.627052 0.173208 +0.767818 0.644276 0.170221 +0.753969 0.661213 0.167151 +0.739749 0.677855 0.163998 +0.725163 0.694193 0.160765 +0.710218 0.710218 0.157452 +0.694193 0.725163 0.160765 +0.677855 0.739749 0.163998 +0.661213 0.753969 0.167151 +0.644276 0.767818 0.170221 +0.627052 0.781291 0.173208 +0.609551 0.794383 0.176110 +0.591781 0.807088 0.178927 +0.573752 0.819403 0.181657 +0.555472 0.831322 0.184300 +0.536949 0.842842 0.186854 +0.518194 0.853958 0.189318 +0.499216 0.864667 0.191692 +0.480022 0.874965 0.193975 +0.460623 0.884848 0.196166 +0.441027 0.894314 0.198265 +0.421243 0.903359 0.200270 +0.401281 0.911980 0.202181 +0.381149 0.920175 0.203998 +0.360856 0.927940 0.205719 +0.340412 0.935275 0.207345 +0.319825 0.942175 0.208875 +0.299105 0.948640 0.210308 +0.278260 0.954667 0.211645 +0.257299 0.960255 0.212883 +0.236232 0.965401 0.214024 +0.215067 0.970105 0.215067 +0.193813 0.974365 0.216011 +0.172479 0.978179 0.216857 +0.151075 0.981548 0.217604 +0.129608 0.984469 0.218252 +0.108088 0.986942 0.218800 +0.086523 0.988967 0.219249 +0.064924 0.990542 0.219598 +0.043297 0.991667 0.219847 +0.021653 0.992342 0.219997 +0.000000 0.992568 0.220047 +0.997132 0.000000 0.198342 +0.996903 0.021753 0.198296 +0.996219 0.043496 0.198160 +0.995078 0.065221 0.197933 +0.993481 0.086918 0.197616 +0.991429 0.108579 0.197207 +0.988922 0.130194 0.196709 +0.985961 0.151754 0.196120 +0.982547 0.173250 0.195441 +0.978681 0.194672 0.194672 +0.974365 0.216011 0.193813 +0.969599 0.237259 0.192865 +0.964385 0.258406 0.191828 +0.958726 0.279443 0.190702 +0.952622 0.300361 0.189488 +0.946076 0.321150 0.188186 +0.939090 0.341801 0.186797 +0.931667 0.362305 0.185320 +0.923808 0.382654 0.183757 +0.915516 0.402837 0.182108 +0.906796 0.422846 0.180373 +0.897648 0.442671 0.178553 +0.888077 0.462304 0.176650 +0.878086 0.481735 0.174662 +0.867679 0.500955 0.172592 +0.856859 0.519955 0.170440 +0.845631 0.538726 0.168206 +0.833998 0.557260 0.165893 +0.821965 0.575546 0.163499 +0.809536 0.593576 0.161027 +0.796716 0.611342 0.158477 +0.783511 0.628834 0.155850 +0.769925 0.646044 0.153148 +0.755964 0.662962 0.150370 +0.741632 0.679581 0.147520 +0.726938 0.695891 0.144597 +0.711885 0.711885 0.141603 +0.695891 0.726938 0.144597 +0.679581 0.741632 0.147520 +0.662962 0.755964 0.150370 +0.646044 0.769925 0.153148 +0.628834 0.783511 0.155850 +0.611342 0.796716 0.158477 +0.593576 0.809536 0.161027 +0.575546 0.821965 0.163499 +0.557260 0.833998 0.165893 +0.538726 0.845631 0.168206 +0.519955 0.856859 0.170440 +0.500955 0.867679 0.172592 +0.481735 0.878086 0.174662 +0.462304 0.888077 0.176650 +0.442671 0.897648 0.178553 +0.422846 0.906796 0.180373 +0.402837 0.915516 0.182108 +0.382654 0.923808 0.183757 +0.362305 0.931667 0.185320 +0.341801 0.939090 0.186797 +0.321150 0.946076 0.188186 +0.300361 0.952622 0.189488 +0.279443 0.958726 0.190702 +0.258406 0.964385 0.191828 +0.237259 0.969599 0.192865 +0.216011 0.974365 0.193813 +0.194672 0.978681 0.194672 +0.173250 0.982547 0.195441 +0.151754 0.985961 0.196120 +0.130194 0.988922 0.196709 +0.108579 0.991429 0.197207 +0.086918 0.993481 0.197616 +0.065221 0.995078 0.197933 +0.043496 0.996219 0.198160 +0.021753 0.996903 0.198296 +0.000000 0.997132 0.198342 +1.001221 0.000000 0.176542 +1.000990 0.021842 0.176502 +1.000297 0.043674 0.176379 +0.999142 0.065487 0.176176 +0.997526 0.087272 0.175891 +0.995448 0.109019 0.175524 +0.992911 0.130719 0.175077 +0.989914 0.152362 0.174549 +0.986459 0.173939 0.173939 +0.982547 0.195441 0.173250 +0.978179 0.216857 0.172479 +0.973358 0.238179 0.171629 +0.968084 0.259397 0.170699 +0.962359 0.280502 0.169690 +0.956186 0.301484 0.168601 +0.949567 0.322335 0.167434 +0.942504 0.343043 0.166189 +0.935000 0.363601 0.164866 +0.927057 0.384000 0.163465 +0.918679 0.404228 0.161988 +0.909868 0.424278 0.160434 +0.900628 0.444141 0.158805 +0.890963 0.463806 0.157101 +0.880875 0.483265 0.155322 +0.870370 0.502508 0.153470 +0.859450 0.521527 0.151544 +0.848121 0.540313 0.149547 +0.836386 0.558855 0.147477 +0.824251 0.577147 0.145338 +0.811720 0.595178 0.143128 +0.798798 0.612939 0.140850 +0.785490 0.630423 0.138503 +0.771803 0.647620 0.136090 +0.757741 0.664521 0.133610 +0.743310 0.681119 0.131066 +0.728518 0.697404 0.128457 +0.713368 0.713368 0.125786 +0.697404 0.728518 0.128457 +0.681119 0.743310 0.131066 +0.664521 0.757741 0.133610 +0.647620 0.771803 0.136090 +0.630423 0.785490 0.138503 +0.612939 0.798798 0.140850 +0.595178 0.811720 0.143128 +0.577147 0.824251 0.145338 +0.558855 0.836386 0.147477 +0.540313 0.848121 0.149547 +0.521527 0.859450 0.151544 +0.502508 0.870370 0.153470 +0.483265 0.880875 0.155322 +0.463806 0.890963 0.157101 +0.444141 0.900628 0.158805 +0.424278 0.909868 0.160434 +0.404228 0.918679 0.161988 +0.384000 0.927057 0.163465 +0.363601 0.935000 0.164866 +0.343043 0.942504 0.166189 +0.322335 0.949567 0.167434 +0.301484 0.956186 0.168601 +0.280502 0.962359 0.169690 +0.259397 0.968084 0.170699 +0.238179 0.973358 0.171629 +0.216857 0.978179 0.172479 +0.195441 0.982547 0.173250 +0.173939 0.986459 0.173939 +0.152362 0.989914 0.174549 +0.130719 0.992911 0.175077 +0.109019 0.995448 0.175524 +0.087272 0.997526 0.175891 +0.065487 0.999142 0.176176 +0.043674 1.000297 0.176379 +0.021842 1.000990 0.176502 +0.000000 1.001221 0.176542 +1.004834 0.000000 0.154659 +1.004601 0.021920 0.154623 +1.003900 0.043831 0.154515 +1.002732 0.065723 0.154335 +1.001098 0.087585 0.154084 +0.998999 0.109408 0.153761 +0.996434 0.131183 0.153366 +0.993405 0.152900 0.152900 +0.989914 0.174549 0.152362 +0.985961 0.196120 0.151754 +0.981548 0.217604 0.151075 +0.976676 0.238991 0.150325 +0.971348 0.260272 0.149505 +0.965566 0.281437 0.148615 +0.959332 0.302476 0.147655 +0.952647 0.323380 0.146626 +0.945516 0.344140 0.145529 +0.937940 0.364745 0.144363 +0.929923 0.385187 0.143129 +0.921467 0.405455 0.141827 +0.912577 0.425542 0.140459 +0.903255 0.445436 0.139024 +0.893506 0.465130 0.137524 +0.883333 0.484613 0.135958 +0.872740 0.503877 0.134328 +0.861732 0.522912 0.132633 +0.850314 0.541710 0.130876 +0.838489 0.560260 0.129056 +0.826263 0.578556 0.127174 +0.813642 0.596587 0.125231 +0.800629 0.614344 0.123229 +0.787231 0.631820 0.121167 +0.773454 0.649005 0.119046 +0.759303 0.665891 0.116868 +0.744785 0.682470 0.114633 +0.729906 0.698733 0.112343 +0.714672 0.714672 0.109999 +0.698733 0.729906 0.112343 +0.682470 0.744785 0.114633 +0.665891 0.759303 0.116868 +0.649005 0.773454 0.119046 +0.631820 0.787231 0.121167 +0.614344 0.800629 0.123229 +0.596587 0.813642 0.125231 +0.578556 0.826263 0.127174 +0.560260 0.838489 0.129056 +0.541710 0.850314 0.130876 +0.522912 0.861732 0.132633 +0.503877 0.872740 0.134328 +0.484613 0.883333 0.135958 +0.465130 0.893506 0.137524 +0.445436 0.903255 0.139024 +0.425542 0.912577 0.140459 +0.405455 0.921467 0.141827 +0.385187 0.929923 0.143129 +0.364745 0.937940 0.144363 +0.344140 0.945516 0.145529 +0.323380 0.952647 0.146626 +0.302476 0.959332 0.147655 +0.281437 0.965566 0.148615 +0.260272 0.971348 0.149505 +0.238991 0.976676 0.150325 +0.217604 0.981548 0.151075 +0.196120 0.985961 0.151754 +0.174549 0.989914 0.152362 +0.152900 0.993405 0.152900 +0.131183 0.996434 0.153366 +0.109408 0.998999 0.153761 +0.087585 1.001098 0.154084 +0.065723 1.002732 0.154335 +0.043831 1.003900 0.154515 +0.021920 1.004601 0.154623 +0.000000 1.004834 0.154659 +1.007969 0.000000 0.132702 +1.007733 0.021989 0.132671 +1.007026 0.043968 0.132577 +1.005847 0.065927 0.132422 +1.004198 0.087856 0.132205 +1.002079 0.109746 0.131926 +0.999491 0.131585 0.131585 +0.996434 0.153366 0.131183 +0.992911 0.175077 0.130719 +0.988922 0.196709 0.130194 +0.984469 0.218252 0.129608 +0.979554 0.239695 0.128961 +0.974179 0.261031 0.128253 +0.968347 0.282247 0.127485 +0.962058 0.303336 0.126657 +0.955317 0.324287 0.125770 +0.948126 0.345090 0.124823 +0.940488 0.365736 0.123818 +0.932406 0.386215 0.122754 +0.923883 0.406518 0.121632 +0.914923 0.426636 0.120452 +0.905530 0.446558 0.119215 +0.895708 0.466276 0.117922 +0.885460 0.485780 0.116573 +0.874792 0.505061 0.115169 +0.863707 0.524110 0.113709 +0.852211 0.542918 0.112196 +0.840308 0.561476 0.110629 +0.828004 0.579774 0.109009 +0.815303 0.597805 0.107337 +0.802212 0.615559 0.105613 +0.788736 0.633028 0.103839 +0.774881 0.650202 0.102015 +0.760653 0.667075 0.100142 +0.746059 0.683637 0.098221 +0.731105 0.699880 0.096252 +0.715797 0.715797 0.094236 +0.699880 0.731105 0.096252 +0.683637 0.746059 0.098221 +0.667075 0.760653 0.100142 +0.650202 0.774881 0.102015 +0.633028 0.788736 0.103839 +0.615559 0.802212 0.105613 +0.597805 0.815303 0.107337 +0.579774 0.828004 0.109009 +0.561476 0.840308 0.110629 +0.542918 0.852211 0.112196 +0.524110 0.863707 0.113709 +0.505061 0.874792 0.115169 +0.485780 0.885460 0.116573 +0.466276 0.895708 0.117922 +0.446558 0.905530 0.119215 +0.426636 0.914923 0.120452 +0.406518 0.923883 0.121632 +0.386215 0.932406 0.122754 +0.365736 0.940488 0.123818 +0.345090 0.948126 0.124823 +0.324287 0.955317 0.125770 +0.303336 0.962058 0.126657 +0.282247 0.968347 0.127485 +0.261031 0.974179 0.128253 +0.239695 0.979554 0.128961 +0.218252 0.984469 0.129608 +0.196709 0.988922 0.130194 +0.175077 0.992911 0.130719 +0.153366 0.996434 0.131183 +0.131585 0.999491 0.131585 +0.109746 1.002079 0.131926 +0.087856 1.004198 0.132205 +0.065927 1.005847 0.132422 +0.043968 1.007026 0.132577 +0.021989 1.007733 0.132671 +0.000000 1.007969 0.132702 +1.010624 0.000000 0.110681 +1.010386 0.022047 0.110655 +1.009673 0.044083 0.110577 +1.008486 0.066100 0.110447 +1.006824 0.088086 0.110265 +1.004688 0.110031 0.110031 +1.002079 0.131926 0.109746 +0.998999 0.153761 0.109408 +0.995448 0.175524 0.109019 +0.991429 0.197207 0.108579 +0.986942 0.218800 0.108088 +0.981990 0.240292 0.107545 +0.976576 0.261673 0.106952 +0.970700 0.282933 0.106309 +0.964366 0.304063 0.105615 +0.957577 0.325054 0.104872 +0.950335 0.345894 0.104079 +0.942644 0.366574 0.103236 +0.934506 0.387085 0.102345 +0.925926 0.407417 0.101405 +0.916907 0.427561 0.100418 +0.907454 0.447507 0.099382 +0.897569 0.467245 0.098300 +0.887258 0.486767 0.097171 +0.876526 0.506062 0.095995 +0.865376 0.525123 0.094774 +0.853814 0.543939 0.093508 +0.841844 0.562502 0.092197 +0.829473 0.580804 0.090842 +0.816706 0.598834 0.089444 +0.803549 0.616584 0.088003 +0.790006 0.634047 0.086520 +0.776085 0.651213 0.084995 +0.761792 0.668074 0.083430 +0.747134 0.684622 0.081824 +0.732116 0.700849 0.080180 +0.716746 0.716746 0.078496 +0.700849 0.732116 0.080180 +0.684622 0.747134 0.081824 +0.668074 0.761792 0.083430 +0.651213 0.776085 0.084995 +0.634047 0.790006 0.086520 +0.616584 0.803549 0.088003 +0.598834 0.816706 0.089444 +0.580804 0.829473 0.090842 +0.562502 0.841844 0.092197 +0.543939 0.853814 0.093508 +0.525123 0.865376 0.094774 +0.506062 0.876526 0.095995 +0.486767 0.887258 0.097171 +0.467245 0.897569 0.098300 +0.447507 0.907454 0.099382 +0.427561 0.916907 0.100418 +0.407417 0.925926 0.101405 +0.387085 0.934506 0.102345 +0.366574 0.942644 0.103236 +0.345894 0.950335 0.104079 +0.325054 0.957577 0.104872 +0.304063 0.964366 0.105615 +0.282933 0.970700 0.106309 +0.261673 0.976576 0.106952 +0.240292 0.981990 0.107545 +0.218800 0.986942 0.108088 +0.197207 0.991429 0.108579 +0.175524 0.995448 0.109019 +0.153761 0.998999 0.109408 +0.131926 1.002079 0.109746 +0.110031 1.004688 0.110031 +0.088086 1.006824 0.110265 +0.066100 1.008486 0.110447 +0.044083 1.009673 0.110577 +0.022047 1.010386 0.110655 +0.000000 1.010624 0.110681 +1.012798 0.000000 0.088608 +1.012559 0.022094 0.088587 +1.011841 0.044178 0.088525 +1.010646 0.066241 0.088420 +1.008973 0.088274 0.088274 +1.006824 0.110265 0.088086 +1.004198 0.132205 0.087856 +1.001098 0.154084 0.087585 +0.997526 0.175891 0.087272 +0.993481 0.197616 0.086918 +0.988967 0.219249 0.086523 +0.983984 0.240779 0.086087 +0.978537 0.262198 0.085611 +0.972626 0.283495 0.085094 +0.966254 0.304659 0.084536 +0.959425 0.325681 0.083939 +0.952142 0.346551 0.083302 +0.944407 0.367260 0.082625 +0.936224 0.387797 0.081909 +0.927597 0.408153 0.081154 +0.918530 0.428318 0.080361 +0.909027 0.448282 0.079530 +0.899091 0.468037 0.078660 +0.888728 0.487573 0.077754 +0.877943 0.506880 0.076810 +0.866739 0.525950 0.075830 +0.855123 0.544774 0.074814 +0.843100 0.563341 0.073762 +0.830674 0.581644 0.072675 +0.817852 0.599674 0.071553 +0.804640 0.617422 0.070397 +0.791043 0.634879 0.069207 +0.777069 0.652038 0.067985 +0.762722 0.668889 0.066730 +0.748011 0.685426 0.065442 +0.732941 0.701638 0.064124 +0.717520 0.717520 0.062775 +0.701638 0.732941 0.064124 +0.685426 0.748011 0.065442 +0.668889 0.762722 0.066730 +0.652038 0.777069 0.067985 +0.634879 0.791043 0.069207 +0.617422 0.804640 0.070397 +0.599674 0.817852 0.071553 +0.581644 0.830674 0.072675 +0.563341 0.843100 0.073762 +0.544774 0.855123 0.074814 +0.525950 0.866739 0.075830 +0.506880 0.877943 0.076810 +0.487573 0.888728 0.077754 +0.468037 0.899091 0.078660 +0.448282 0.909027 0.079530 +0.428318 0.918530 0.080361 +0.408153 0.927597 0.081154 +0.387797 0.936224 0.081909 +0.367260 0.944407 0.082625 +0.346551 0.952142 0.083302 +0.325681 0.959425 0.083939 +0.304659 0.966254 0.084536 +0.283495 0.972626 0.085094 +0.262198 0.978537 0.085611 +0.240779 0.983984 0.086087 +0.219249 0.988967 0.086523 +0.197616 0.993481 0.086918 +0.175891 0.997526 0.087272 +0.154084 1.001098 0.087585 +0.132205 1.004198 0.087856 +0.110265 1.006824 0.088086 +0.088274 1.008973 0.088274 +0.066241 1.010646 0.088420 +0.044178 1.011841 0.088525 +0.022094 1.012559 0.088587 +0.000000 1.012798 0.088608 +1.014490 0.000000 0.066493 +1.014250 0.022131 0.066477 +1.013528 0.044252 0.066430 +1.012327 0.066351 0.066351 +1.010646 0.088420 0.066241 +1.008486 0.110447 0.066100 +1.005847 0.132422 0.065927 +1.002732 0.154335 0.065723 +0.999142 0.176176 0.065487 +0.995078 0.197933 0.065221 +0.990542 0.219598 0.064924 +0.985536 0.241159 0.064595 +0.980062 0.262607 0.064237 +0.974124 0.283931 0.063847 +0.967723 0.305122 0.063428 +0.960863 0.326169 0.062978 +0.953547 0.347063 0.062499 +0.945778 0.367793 0.061990 +0.937560 0.388350 0.061451 +0.928897 0.408724 0.060883 +0.919792 0.428906 0.060286 +0.910249 0.448885 0.059661 +0.900274 0.468653 0.059007 +0.889871 0.488200 0.058325 +0.879044 0.507516 0.057616 +0.867799 0.526593 0.056879 +0.856141 0.545422 0.056114 +0.844075 0.563993 0.055324 +0.831607 0.582297 0.054506 +0.818742 0.600327 0.053663 +0.805488 0.618072 0.052794 +0.791849 0.635526 0.051901 +0.777832 0.652679 0.050982 +0.763444 0.669522 0.050039 +0.748692 0.686049 0.049072 +0.733582 0.702252 0.048081 +0.718121 0.718121 0.047068 +0.702252 0.733582 0.048081 +0.686049 0.748692 0.049072 +0.669522 0.763444 0.050039 +0.652679 0.777832 0.050982 +0.635526 0.791849 0.051901 +0.618072 0.805488 0.052794 +0.600327 0.818742 0.053663 +0.582297 0.831607 0.054506 +0.563993 0.844075 0.055324 +0.545422 0.856141 0.056114 +0.526593 0.867799 0.056879 +0.507516 0.879044 0.057616 +0.488200 0.889871 0.058325 +0.468653 0.900274 0.059007 +0.448885 0.910249 0.059661 +0.428906 0.919792 0.060286 +0.408724 0.928897 0.060883 +0.388350 0.937560 0.061451 +0.367793 0.945778 0.061990 +0.347063 0.953547 0.062499 +0.326169 0.960863 0.062978 +0.305122 0.967723 0.063428 +0.283931 0.974124 0.063847 +0.262607 0.980062 0.064237 +0.241159 0.985536 0.064595 +0.219598 0.990542 0.064924 +0.197933 0.995078 0.065221 +0.176176 0.999142 0.065487 +0.154335 1.002732 0.065723 +0.132422 1.005847 0.065927 +0.110447 1.008486 0.066100 +0.088420 1.010646 0.066241 +0.066351 1.012327 0.066351 +0.044252 1.013528 0.066430 +0.022131 1.014250 0.066477 +0.000000 1.014490 0.066493 +1.015699 0.000000 0.044346 +1.015458 0.022157 0.044336 +1.014734 0.044304 0.044304 +1.013528 0.066430 0.044252 +1.011841 0.088525 0.044178 +1.009673 0.110577 0.044083 +1.007026 0.132577 0.043968 +1.003900 0.154515 0.043831 +1.000297 0.176379 0.043674 +0.996219 0.198160 0.043496 +0.991667 0.219847 0.043297 +0.986644 0.241430 0.043078 +0.981152 0.262899 0.042838 +0.975194 0.284243 0.042578 +0.968773 0.305453 0.042298 +0.961891 0.326518 0.041997 +0.954551 0.347428 0.041677 +0.946758 0.368174 0.041336 +0.938514 0.388745 0.040976 +0.929824 0.409133 0.040597 +0.920692 0.429326 0.040198 +0.911122 0.449316 0.039780 +0.901119 0.469093 0.039344 +0.890687 0.488647 0.038888 +0.879830 0.507970 0.038414 +0.868556 0.527052 0.037922 +0.856867 0.545885 0.037412 +0.844771 0.564458 0.036883 +0.832272 0.582763 0.036338 +0.819378 0.600793 0.035775 +0.806092 0.618536 0.035195 +0.792423 0.635987 0.034598 +0.778377 0.653136 0.033985 +0.763959 0.669974 0.033355 +0.749177 0.686494 0.032710 +0.734038 0.702689 0.032049 +0.718550 0.718550 0.031373 +0.702689 0.734038 0.032049 +0.686494 0.749177 0.032710 +0.669974 0.763959 0.033355 +0.653136 0.778377 0.033985 +0.635987 0.792423 0.034598 +0.618536 0.806092 0.035195 +0.600793 0.819378 0.035775 +0.582763 0.832272 0.036338 +0.564458 0.844771 0.036883 +0.545885 0.856867 0.037412 +0.527052 0.868556 0.037922 +0.507970 0.879830 0.038414 +0.488647 0.890687 0.038888 +0.469093 0.901119 0.039344 +0.449316 0.911122 0.039780 +0.429326 0.920692 0.040198 +0.409133 0.929824 0.040597 +0.388745 0.938514 0.040976 +0.368174 0.946758 0.041336 +0.347428 0.954551 0.041677 +0.326518 0.961891 0.041997 +0.305453 0.968773 0.042298 +0.284243 0.975194 0.042578 +0.262899 0.981152 0.042838 +0.241430 0.986644 0.043078 +0.219847 0.991667 0.043297 +0.198160 0.996219 0.043496 +0.176379 1.000297 0.043674 +0.154515 1.003900 0.043831 +0.132577 1.007026 0.043968 +0.110577 1.009673 0.044083 +0.088525 1.011841 0.044178 +0.066430 1.013528 0.044252 +0.044304 1.014734 0.044304 +0.022157 1.015458 0.044336 +0.000000 1.015699 0.044346 +1.016425 0.000000 0.022178 +1.016183 0.022173 0.022173 +1.015458 0.044336 0.022157 +1.014250 0.066477 0.022131 +1.012559 0.088587 0.022094 +1.010386 0.110655 0.022047 +1.007733 0.132671 0.021989 +1.004601 0.154623 0.021920 +1.000990 0.176502 0.021842 +0.996903 0.198296 0.021753 +0.992342 0.219997 0.021653 +0.987309 0.241593 0.021543 +0.981807 0.263074 0.021423 +0.975837 0.284430 0.021293 +0.969402 0.305651 0.021152 +0.962507 0.326727 0.021002 +0.955153 0.347647 0.020842 +0.947345 0.368402 0.020671 +0.939087 0.388982 0.020491 +0.930381 0.409377 0.020301 +0.921233 0.429578 0.020101 +0.911646 0.449574 0.019892 +0.901625 0.469357 0.019674 +0.891176 0.488916 0.019446 +0.880302 0.508243 0.019208 +0.869009 0.527328 0.018962 +0.857303 0.546162 0.018706 +0.845188 0.564737 0.018442 +0.832672 0.583043 0.018169 +0.819758 0.601072 0.017887 +0.806455 0.618815 0.017597 +0.792768 0.636263 0.017298 +0.778703 0.653409 0.016991 +0.764268 0.670245 0.016676 +0.749468 0.686761 0.016353 +0.734312 0.702951 0.016023 +0.718806 0.718806 0.015684 +0.702951 0.734312 0.016023 +0.686761 0.749468 0.016353 +0.670245 0.764268 0.016676 +0.653409 0.778703 0.016991 +0.636263 0.792768 0.017298 +0.618815 0.806455 0.017597 +0.601072 0.819758 0.017887 +0.583043 0.832672 0.018169 +0.564737 0.845188 0.018442 +0.546162 0.857303 0.018706 +0.527328 0.869009 0.018962 +0.508243 0.880302 0.019208 +0.488916 0.891176 0.019446 +0.469357 0.901625 0.019674 +0.449574 0.911646 0.019892 +0.429578 0.921233 0.020101 +0.409377 0.930381 0.020301 +0.388982 0.939087 0.020491 +0.368402 0.947345 0.020671 +0.347647 0.955153 0.020842 +0.326727 0.962507 0.021002 +0.305651 0.969402 0.021152 +0.284430 0.975837 0.021293 +0.263074 0.981807 0.021423 +0.241593 0.987309 0.021543 +0.219997 0.992342 0.021653 +0.198296 0.996903 0.021753 +0.176502 1.000990 0.021842 +0.154623 1.004601 0.021920 +0.132671 1.007733 0.021989 +0.110655 1.010386 0.022047 +0.088587 1.012559 0.022094 +0.066477 1.014250 0.022131 +0.044336 1.015458 0.022157 +0.022173 1.016183 0.022173 +0.000000 1.016425 0.022178 +1.016667 0.000000 0.000000 +1.016425 0.022178 0.000000 +1.015699 0.044346 0.000000 +1.014490 0.066493 0.000000 +1.012798 0.088608 0.000000 +1.010624 0.110681 0.000000 +1.007969 0.132702 0.000000 +1.004834 0.154659 0.000000 +1.001221 0.176542 0.000000 +0.997132 0.198342 0.000000 +0.992568 0.220047 0.000000 +0.987531 0.241647 0.000000 +0.982025 0.263133 0.000000 +0.976051 0.284493 0.000000 +0.969612 0.305718 0.000000 +0.962712 0.326797 0.000000 +0.955354 0.347720 0.000000 +0.947541 0.368479 0.000000 +0.939278 0.389061 0.000000 +0.930567 0.409459 0.000000 +0.921413 0.429662 0.000000 +0.911821 0.449660 0.000000 +0.901794 0.469444 0.000000 +0.891339 0.489005 0.000000 +0.880459 0.508333 0.000000 +0.869160 0.527419 0.000000 +0.857448 0.546255 0.000000 +0.845327 0.564830 0.000000 +0.832805 0.583136 0.000000 +0.819885 0.601165 0.000000 +0.806576 0.618907 0.000000 +0.792883 0.636356 0.000000 +0.778812 0.653501 0.000000 +0.764370 0.670335 0.000000 +0.749565 0.686850 0.000000 +0.734403 0.703038 0.000000 +0.718892 0.718892 0.000000 +0.703038 0.734403 0.000000 +0.686850 0.749565 0.000000 +0.670335 0.764370 0.000000 +0.653501 0.778812 0.000000 +0.636356 0.792883 0.000000 +0.618907 0.806576 0.000000 +0.601165 0.819885 0.000000 +0.583136 0.832805 0.000000 +0.564830 0.845327 0.000000 +0.546255 0.857448 0.000000 +0.527419 0.869160 0.000000 +0.508333 0.880459 0.000000 +0.489005 0.891339 0.000000 +0.469444 0.901794 0.000000 +0.449660 0.911821 0.000000 +0.429662 0.921413 0.000000 +0.409459 0.930567 0.000000 +0.389061 0.939278 0.000000 +0.368479 0.947541 0.000000 +0.347720 0.955354 0.000000 +0.326797 0.962712 0.000000 +0.305718 0.969612 0.000000 +0.284493 0.976051 0.000000 +0.263133 0.982025 0.000000 +0.241647 0.987531 0.000000 +0.220047 0.992568 0.000000 +0.198342 0.997132 0.000000 +0.176542 1.001221 0.000000 +0.154659 1.004834 0.000000 +0.132702 1.007969 0.000000 +0.110681 1.010624 0.000000 +0.088608 1.012798 0.000000 +0.066493 1.014490 0.000000 +0.044346 1.015699 0.000000 +0.022178 1.016425 0.000000 +0.000000 1.016667 0.000000 +0.000000 0.000000 1.075000 +0.023451 0.000000 1.074744 +0.023445 0.023445 1.074489 +0.000000 0.023451 1.074744 +0.046891 0.000000 1.073977 +0.046880 0.023429 1.073722 +0.046846 0.046846 1.072957 +0.023429 0.046880 1.073722 +0.000000 0.046891 1.073977 +0.070308 0.000000 1.072698 +0.070292 0.023401 1.072444 +0.070242 0.046791 1.071682 +0.070158 0.070158 1.070411 +0.046791 0.070242 1.071682 +0.023401 0.070292 1.072444 +0.000000 0.070308 1.072698 +0.093692 0.000000 1.070909 +0.093670 0.023362 1.070656 +0.093604 0.046713 1.069898 +0.093493 0.070042 1.068634 +0.093339 0.093339 1.066865 +0.070042 0.093493 1.068634 +0.046713 0.093604 1.069898 +0.023362 0.093670 1.070656 +0.000000 0.093692 1.070909 +0.117032 0.000000 1.068611 +0.117004 0.023312 1.068359 +0.116922 0.046613 1.067606 +0.116784 0.069892 1.066350 +0.116592 0.093140 1.064592 +0.116344 0.116344 1.062334 +0.093140 0.116592 1.064592 +0.069892 0.116784 1.066350 +0.046613 0.116922 1.067606 +0.023312 0.117004 1.068359 +0.000000 0.117032 1.068611 +0.140316 0.000000 1.065803 +0.140283 0.023250 1.065554 +0.140184 0.046490 1.064806 +0.140020 0.069709 1.063560 +0.139791 0.092897 1.061816 +0.139496 0.116042 1.059575 +0.139135 0.139135 1.056839 +0.116042 0.139496 1.059575 +0.092897 0.139791 1.061816 +0.069709 0.140020 1.063560 +0.046490 0.140184 1.064806 +0.023250 0.140283 1.065554 +0.000000 0.140316 1.065803 +0.163533 0.000000 1.062489 +0.163495 0.023178 1.062242 +0.163381 0.046346 1.061501 +0.163191 0.069494 1.060266 +0.162925 0.092610 1.058539 +0.162583 0.115686 1.056318 +0.162166 0.138710 1.053607 +0.161673 0.161673 1.050404 +0.138710 0.162166 1.053607 +0.115686 0.162583 1.056318 +0.092610 0.162925 1.058539 +0.069494 0.163191 1.060266 +0.046346 0.163381 1.061501 +0.023178 0.163495 1.062242 +0.000000 0.163533 1.062489 +0.186672 0.000000 1.058668 +0.186629 0.023095 1.058424 +0.186499 0.046180 1.057691 +0.186284 0.069245 1.056470 +0.185983 0.092280 1.054761 +0.185595 0.115275 1.052564 +0.185122 0.138219 1.049881 +0.184564 0.161104 1.046712 +0.183919 0.183919 1.043059 +0.161104 0.184564 1.046712 +0.138219 0.185122 1.049881 +0.115275 0.185595 1.052564 +0.092280 0.185983 1.054761 +0.069245 0.186284 1.056470 +0.046180 0.186499 1.057691 +0.023095 0.186629 1.058424 +0.000000 0.186672 1.058668 +0.209722 0.000000 1.054344 +0.209674 0.023001 1.054103 +0.209530 0.045992 1.053379 +0.209290 0.068963 1.052172 +0.208954 0.091905 1.050484 +0.208523 0.114809 1.048314 +0.207995 0.137664 1.045663 +0.207373 0.160461 1.042532 +0.206655 0.183190 1.038923 +0.205841 0.205841 1.034835 +0.183190 0.206655 1.038923 +0.160461 0.207373 1.042532 +0.137664 0.207995 1.045663 +0.114809 0.208523 1.048314 +0.091905 0.208954 1.050484 +0.068963 0.209290 1.052172 +0.045992 0.209530 1.053379 +0.023001 0.209674 1.054103 +0.000000 0.209722 1.054344 +0.232673 0.000000 1.049518 +0.232620 0.022895 1.049280 +0.232461 0.045781 1.048566 +0.232198 0.068649 1.047376 +0.231828 0.091488 1.045711 +0.231354 0.114289 1.043570 +0.230774 0.137044 1.040955 +0.230089 0.159743 1.037866 +0.229300 0.182376 1.034304 +0.228406 0.204934 1.030271 +0.227407 0.227407 1.025767 +0.204934 0.228406 1.030271 +0.182376 0.229300 1.034304 +0.159743 0.230089 1.037866 +0.137044 0.230774 1.040955 +0.114289 0.231354 1.043570 +0.091488 0.231828 1.045711 +0.068649 0.232198 1.047376 +0.045781 0.232461 1.048566 +0.022895 0.232620 1.049280 +0.000000 0.232673 1.049518 +0.255512 0.000000 1.044193 +0.255455 0.022779 1.043958 +0.255283 0.045549 1.043255 +0.254996 0.068302 1.042083 +0.254595 0.091027 1.040443 +0.254079 0.113716 1.038334 +0.253448 0.136360 1.035758 +0.252704 0.158950 1.032715 +0.251845 0.181477 1.029206 +0.250873 0.203931 1.025232 +0.249786 0.226304 1.020793 +0.248587 0.248587 1.015891 +0.226304 0.249786 1.020793 +0.203931 0.250873 1.025232 +0.181477 0.251845 1.029206 +0.158950 0.252704 1.032715 +0.136360 0.253448 1.035758 +0.113716 0.254079 1.038334 +0.091027 0.254595 1.040443 +0.068302 0.254996 1.042083 +0.045549 0.255283 1.043255 +0.022779 0.255455 1.043958 +0.000000 0.255512 1.044193 +0.278230 0.000000 1.038370 +0.278169 0.022652 1.038140 +0.277983 0.045296 1.037448 +0.277675 0.067922 1.036296 +0.277242 0.090523 1.034682 +0.276687 0.113089 1.032609 +0.276008 0.135612 1.030075 +0.275206 0.158083 1.027082 +0.274281 0.180493 1.023629 +0.273233 0.202835 1.019719 +0.272063 0.225098 1.015351 +0.270770 0.247274 1.010527 +0.269355 0.269355 1.005247 +0.247274 0.270770 1.010527 +0.225098 0.272063 1.015351 +0.202835 0.273233 1.019719 +0.180493 0.274281 1.023629 +0.158083 0.275206 1.027082 +0.135612 0.276008 1.030075 +0.113089 0.276687 1.032609 +0.090523 0.277242 1.034682 +0.067922 0.277675 1.036296 +0.045296 0.277983 1.037448 +0.022652 0.278169 1.038140 +0.000000 0.278230 1.038370 +0.300816 0.000000 1.032054 +0.300750 0.022515 1.031827 +0.300552 0.045021 1.031148 +0.300222 0.067511 1.030016 +0.299761 0.089976 1.028432 +0.299167 0.112409 1.026396 +0.298442 0.134800 1.023907 +0.297585 0.157142 1.020968 +0.296596 0.179426 1.017576 +0.295477 0.201644 1.013735 +0.294226 0.223788 1.009443 +0.292844 0.245849 1.004702 +0.291331 0.267818 0.999512 +0.289688 0.289688 0.993875 +0.267818 0.291331 0.999512 +0.245849 0.292844 1.004702 +0.223788 0.294226 1.009443 +0.201644 0.295477 1.013735 +0.179426 0.296596 1.017576 +0.157142 0.297585 1.020968 +0.134800 0.298442 1.023907 +0.112409 0.299167 1.026396 +0.089976 0.299761 1.028432 +0.067511 0.300222 1.030016 +0.045021 0.300552 1.031148 +0.022515 0.300750 1.031827 +0.000000 0.300816 1.032054 +0.323259 0.000000 1.025246 +0.323189 0.022366 1.025024 +0.322979 0.044724 1.024358 +0.322629 0.067067 1.023249 +0.322139 0.089387 1.021695 +0.321510 0.111675 1.019699 +0.320740 0.133925 1.017258 +0.319831 0.156127 1.014375 +0.318783 0.178275 1.011049 +0.317594 0.200361 1.007281 +0.316267 0.222375 1.003070 +0.314800 0.244311 0.998418 +0.313194 0.266160 0.993324 +0.311449 0.287915 0.987790 +0.309566 0.309566 0.981816 +0.287915 0.311449 0.987790 +0.266160 0.313194 0.993324 +0.244311 0.314800 0.998418 +0.222375 0.316267 1.003070 +0.200361 0.317594 1.007281 +0.178275 0.318783 1.011049 +0.156127 0.319831 1.014375 +0.133925 0.320740 1.017258 +0.111675 0.321510 1.019699 +0.089387 0.322139 1.021695 +0.067067 0.322629 1.023249 +0.044724 0.322979 1.024358 +0.022366 0.323189 1.025024 +0.000000 0.323259 1.025246 +0.345547 0.000000 1.017950 +0.345474 0.022207 1.017733 +0.345252 0.044407 1.017081 +0.344884 0.066592 1.015995 +0.344368 0.088755 1.014474 +0.343704 0.110889 1.012520 +0.342893 0.132986 1.010131 +0.341935 0.155039 1.007307 +0.340829 0.177041 1.004050 +0.339576 0.198984 1.000359 +0.338176 0.220860 0.996234 +0.336629 0.242662 0.991676 +0.334934 0.264381 0.986685 +0.333093 0.286011 0.981260 +0.331105 0.307543 0.975403 +0.328970 0.328970 0.969114 +0.307543 0.331105 0.975403 +0.286011 0.333093 0.981260 +0.264381 0.334934 0.986685 +0.242662 0.336629 0.991676 +0.220860 0.338176 0.996234 +0.198984 0.339576 1.000359 +0.177041 0.340829 1.004050 +0.155039 0.341935 1.007307 +0.132986 0.342893 1.010131 +0.110889 0.343704 1.012520 +0.088755 0.344368 1.014474 +0.066592 0.344884 1.015995 +0.044407 0.345252 1.017081 +0.022207 0.345474 1.017733 +0.000000 0.345547 1.017950 +0.367672 0.000000 1.010170 +0.367594 0.022037 1.009957 +0.367363 0.044068 1.009320 +0.366976 0.066085 1.008259 +0.366435 0.088081 1.006773 +0.365740 0.110050 1.004862 +0.364890 0.131985 1.002527 +0.363885 0.153879 0.999767 +0.362726 0.175724 0.996582 +0.361412 0.197514 0.992972 +0.359944 0.219242 0.988938 +0.358321 0.240900 0.984479 +0.356543 0.262482 0.979594 +0.354611 0.283978 0.974286 +0.352524 0.305383 0.968552 +0.350283 0.326689 0.962394 +0.347887 0.347887 0.955811 +0.326689 0.350283 0.962394 +0.305383 0.352524 0.968552 +0.283978 0.354611 0.974286 +0.262482 0.356543 0.979594 +0.240900 0.358321 0.984479 +0.219242 0.359944 0.988938 +0.197514 0.361412 0.992972 +0.175724 0.362726 0.996582 +0.153879 0.363885 0.999767 +0.131985 0.364890 1.002527 +0.110050 0.365740 1.004862 +0.088081 0.366435 1.006773 +0.066085 0.366976 1.008259 +0.044068 0.367363 1.009320 +0.022037 0.367594 1.009957 +0.000000 0.367672 1.010170 +0.389621 0.000000 1.001908 +0.389540 0.021857 1.001701 +0.389299 0.043708 1.001080 +0.388896 0.065546 1.000044 +0.388332 0.087366 0.998594 +0.387607 0.109160 0.996730 +0.386721 0.130922 0.994450 +0.385673 0.152646 0.991756 +0.384464 0.174325 0.988647 +0.383093 0.195953 0.985123 +0.381561 0.217523 0.981183 +0.379867 0.239028 0.976827 +0.378012 0.260461 0.972056 +0.375994 0.281816 0.966868 +0.373815 0.303085 0.961263 +0.371473 0.324261 0.955242 +0.368970 0.345336 0.948804 +0.366304 0.366304 0.941949 +0.345336 0.368970 0.948804 +0.324261 0.371473 0.955242 +0.303085 0.373815 0.961263 +0.281816 0.375994 0.966868 +0.260461 0.378012 0.972056 +0.239028 0.379867 0.976827 +0.217523 0.381561 0.981183 +0.195953 0.383093 0.985123 +0.174325 0.384464 0.988647 +0.152646 0.385673 0.991756 +0.130922 0.386721 0.994450 +0.109160 0.387607 0.996730 +0.087366 0.388332 0.998594 +0.065546 0.388896 1.000044 +0.043708 0.389299 1.001080 +0.021857 0.389540 1.001701 +0.000000 0.389621 1.001908 +0.411385 0.000000 0.993170 +0.411301 0.021667 0.992969 +0.411050 0.043328 0.992363 +0.410633 0.064977 0.991355 +0.410047 0.086609 0.989942 +0.409295 0.108217 0.988125 +0.408375 0.129797 0.985904 +0.407288 0.151341 0.983279 +0.406032 0.172844 0.980249 +0.404609 0.194300 0.976813 +0.403018 0.215703 0.972972 +0.401259 0.237045 0.968724 +0.399331 0.258322 0.964069 +0.397234 0.279525 0.959008 +0.394968 0.300649 0.953538 +0.392534 0.321687 0.947660 +0.389930 0.342632 0.941373 +0.387156 0.363476 0.934677 +0.384212 0.384212 0.927570 +0.363476 0.387156 0.934677 +0.342632 0.389930 0.941373 +0.321687 0.392534 0.947660 +0.300649 0.394968 0.953538 +0.279525 0.397234 0.959008 +0.258322 0.399331 0.964069 +0.237045 0.401259 0.968724 +0.215703 0.403018 0.972972 +0.194300 0.404609 0.976813 +0.172844 0.406032 0.980249 +0.151341 0.407288 0.983279 +0.129797 0.408375 0.985904 +0.108217 0.409295 0.988125 +0.086609 0.410047 0.989942 +0.064977 0.410633 0.991355 +0.043328 0.411050 0.992363 +0.021667 0.411301 0.992969 +0.000000 0.411385 0.993170 +0.432953 0.000000 0.983960 +0.432866 0.021466 0.983764 +0.432607 0.042926 0.983175 +0.432176 0.064376 0.982194 +0.431571 0.085811 0.980820 +0.430794 0.107224 0.979053 +0.429843 0.128610 0.976893 +0.428719 0.149965 0.974338 +0.427422 0.171282 0.971390 +0.425950 0.192556 0.968046 +0.424305 0.213782 0.964307 +0.422485 0.234952 0.960171 +0.420491 0.256062 0.955638 +0.418321 0.277106 0.950707 +0.415976 0.298076 0.945378 +0.413455 0.318968 0.939649 +0.410758 0.339773 0.933519 +0.407884 0.360486 0.926987 +0.404833 0.381099 0.920054 +0.401605 0.401605 0.912717 +0.381099 0.404833 0.920054 +0.360486 0.407884 0.926987 +0.339773 0.410758 0.933519 +0.318968 0.413455 0.939649 +0.298076 0.415976 0.945378 +0.277106 0.418321 0.950707 +0.256062 0.420491 0.955638 +0.234952 0.422485 0.960171 +0.213782 0.424305 0.964307 +0.192556 0.425950 0.968046 +0.171282 0.427422 0.971390 +0.149965 0.428719 0.974338 +0.128610 0.429843 0.976893 +0.107224 0.430794 0.979053 +0.085811 0.431571 0.980820 +0.064376 0.432176 0.982194 +0.042926 0.432607 0.983175 +0.021466 0.432866 0.983764 +0.000000 0.432953 0.983960 +0.454315 0.000000 0.974281 +0.454226 0.021255 0.974090 +0.453959 0.042505 0.973519 +0.453515 0.063745 0.972566 +0.452893 0.084972 0.971233 +0.452093 0.106179 0.969517 +0.451115 0.127363 0.967419 +0.449958 0.148518 0.964938 +0.448622 0.169640 0.962074 +0.447107 0.190722 0.958825 +0.445413 0.211761 0.955191 +0.443538 0.232750 0.951171 +0.441483 0.253685 0.946764 +0.439247 0.274559 0.941968 +0.436829 0.295367 0.936784 +0.434230 0.316103 0.931208 +0.431447 0.336760 0.925241 +0.428481 0.357333 0.918881 +0.425331 0.377815 0.912126 +0.421997 0.398199 0.904976 +0.418478 0.418478 0.897428 +0.398199 0.421997 0.904976 +0.377815 0.425331 0.912126 +0.357333 0.428481 0.918881 +0.336760 0.431447 0.925241 +0.316103 0.434230 0.931208 +0.295367 0.436829 0.936784 +0.274559 0.439247 0.941968 +0.253685 0.441483 0.946764 +0.232750 0.443538 0.951171 +0.211761 0.445413 0.955191 +0.190722 0.447107 0.958825 +0.169640 0.448622 0.962074 +0.148518 0.449958 0.964938 +0.127363 0.451115 0.967419 +0.106179 0.452093 0.969517 +0.084972 0.452893 0.971233 +0.063745 0.453515 0.972566 +0.042505 0.453959 0.973519 +0.021255 0.454226 0.974090 +0.000000 0.454315 0.974281 +0.475460 0.000000 0.964138 +0.475369 0.021034 0.963954 +0.475096 0.042063 0.963400 +0.474641 0.063084 0.962477 +0.474003 0.084093 0.961184 +0.473183 0.105085 0.959521 +0.472180 0.126056 0.957487 +0.470994 0.147001 0.955081 +0.469624 0.167917 0.952304 +0.468070 0.188798 0.949153 +0.466332 0.209640 0.945627 +0.464408 0.230439 0.941726 +0.462298 0.251189 0.937448 +0.460002 0.271884 0.932792 +0.457519 0.292521 0.927757 +0.454848 0.313092 0.922340 +0.451988 0.333594 0.916541 +0.448938 0.354019 0.910357 +0.445699 0.374361 0.903787 +0.442268 0.394615 0.896830 +0.438644 0.414773 0.889483 +0.434828 0.434828 0.881745 +0.414773 0.438644 0.889483 +0.394615 0.442268 0.896830 +0.374361 0.445699 0.903787 +0.354019 0.448938 0.910357 +0.333594 0.451988 0.916541 +0.313092 0.454848 0.922340 +0.292521 0.457519 0.927757 +0.271884 0.460002 0.932792 +0.251189 0.462298 0.937448 +0.230439 0.464408 0.941726 +0.209640 0.466332 0.945627 +0.188798 0.468070 0.949153 +0.167917 0.469624 0.952304 +0.147001 0.470994 0.955081 +0.126056 0.472180 0.957487 +0.105085 0.473183 0.959521 +0.084093 0.474003 0.961184 +0.063084 0.474641 0.962477 +0.042063 0.475096 0.963400 +0.021034 0.475369 0.963954 +0.000000 0.475460 0.964138 +0.496380 0.000000 0.953537 +0.496287 0.020802 0.953358 +0.496008 0.041601 0.952822 +0.495543 0.062393 0.951929 +0.494892 0.083174 0.950678 +0.494054 0.103940 0.949069 +0.493029 0.124688 0.947101 +0.491817 0.145414 0.944773 +0.490418 0.166115 0.942084 +0.488829 0.186785 0.939033 +0.487052 0.207422 0.935618 +0.485085 0.228020 0.931839 +0.482927 0.248575 0.927694 +0.480578 0.269083 0.923182 +0.478036 0.289539 0.918299 +0.475301 0.309937 0.913046 +0.472372 0.330273 0.907419 +0.469248 0.350542 0.901417 +0.465927 0.370737 0.895037 +0.462408 0.390852 0.888278 +0.458691 0.410881 0.881138 +0.454774 0.430819 0.873614 +0.450657 0.450657 0.865703 +0.430819 0.454774 0.873614 +0.410881 0.458691 0.881138 +0.390852 0.462408 0.888278 +0.370737 0.465927 0.895037 +0.350542 0.469248 0.901417 +0.330273 0.472372 0.907419 +0.309937 0.475301 0.913046 +0.289539 0.478036 0.918299 +0.269083 0.480578 0.923182 +0.248575 0.482927 0.927694 +0.228020 0.485085 0.931839 +0.207422 0.487052 0.935618 +0.186785 0.488829 0.939033 +0.166115 0.490418 0.942084 +0.145414 0.491817 0.944773 +0.124688 0.493029 0.947101 +0.103940 0.494054 0.949069 +0.083174 0.494892 0.950678 +0.062393 0.495543 0.951929 +0.041601 0.496008 0.952822 +0.020802 0.496287 0.953358 +0.000000 0.496380 0.953537 +0.517063 0.000000 0.942481 +0.516968 0.020561 0.942309 +0.516685 0.041120 0.941792 +0.516211 0.061672 0.940929 +0.515549 0.082215 0.939721 +0.514696 0.102746 0.938167 +0.513653 0.123262 0.936265 +0.512419 0.143759 0.934016 +0.510993 0.164234 0.931417 +0.509375 0.184684 0.928468 +0.507564 0.205105 0.925168 +0.505560 0.225493 0.921514 +0.503360 0.245845 0.917504 +0.500965 0.266155 0.913138 +0.498372 0.286421 0.908412 +0.495581 0.306638 0.903326 +0.492591 0.326800 0.897876 +0.489401 0.346903 0.892060 +0.486008 0.366942 0.885875 +0.482412 0.386910 0.879320 +0.478611 0.406803 0.872392 +0.474603 0.426614 0.865088 +0.470388 0.446337 0.857405 +0.465964 0.465964 0.849341 +0.446337 0.470388 0.857405 +0.426614 0.474603 0.865088 +0.406803 0.478611 0.872392 +0.386910 0.482412 0.879320 +0.366942 0.486008 0.885875 +0.346903 0.489401 0.892060 +0.326800 0.492591 0.897876 +0.306638 0.495581 0.903326 +0.286421 0.498372 0.908412 +0.266155 0.500965 0.913138 +0.245845 0.503360 0.917504 +0.225493 0.505560 0.921514 +0.205105 0.507564 0.925168 +0.184684 0.509375 0.928468 +0.164234 0.510993 0.931417 +0.143759 0.512419 0.934016 +0.123262 0.513653 0.936265 +0.102746 0.514696 0.938167 +0.082215 0.515549 0.939721 +0.061672 0.516211 0.940929 +0.041120 0.516685 0.941792 +0.020561 0.516968 0.942309 +0.000000 0.517063 0.942481 +0.537500 0.000000 0.930977 +0.537404 0.020310 0.930811 +0.537116 0.040618 0.930313 +0.536636 0.060921 0.929481 +0.535964 0.081217 0.928317 +0.535099 0.101503 0.926818 +0.534040 0.121777 0.924985 +0.532788 0.142035 0.922815 +0.531341 0.162275 0.920309 +0.529698 0.182495 0.917464 +0.527859 0.202691 0.914279 +0.525823 0.222860 0.910752 +0.523588 0.242998 0.906881 +0.521153 0.263102 0.902664 +0.518517 0.283169 0.898098 +0.515679 0.303194 0.893182 +0.512636 0.323174 0.887912 +0.509388 0.343102 0.882286 +0.505933 0.362976 0.876302 +0.502269 0.382790 0.869956 +0.498395 0.402538 0.863245 +0.494308 0.422214 0.856166 +0.490007 0.441814 0.848716 +0.485489 0.461329 0.840892 +0.480755 0.480755 0.832691 +0.461329 0.485489 0.840892 +0.441814 0.490007 0.848716 +0.422214 0.494308 0.856166 +0.402538 0.498395 0.863245 +0.382790 0.502269 0.869956 +0.362976 0.505933 0.876302 +0.343102 0.509388 0.882286 +0.323174 0.512636 0.887912 +0.303194 0.515679 0.893182 +0.283169 0.518517 0.898098 +0.263102 0.521153 0.902664 +0.242998 0.523588 0.906881 +0.222860 0.525823 0.910752 +0.202691 0.527859 0.914279 +0.182495 0.529698 0.917464 +0.162275 0.531341 0.920309 +0.142035 0.532788 0.922815 +0.121777 0.534040 0.924985 +0.101503 0.535099 0.926818 +0.081217 0.535964 0.928317 +0.060921 0.536636 0.929481 +0.040618 0.537116 0.930313 +0.020310 0.537404 0.930811 +0.000000 0.537500 0.930977 +0.557681 0.000000 0.919030 +0.557584 0.020050 0.918870 +0.557293 0.040098 0.918391 +0.556808 0.060142 0.917591 +0.556128 0.080181 0.916470 +0.555253 0.100212 0.915028 +0.554182 0.120233 0.913264 +0.552915 0.140243 0.911176 +0.551451 0.160239 0.908763 +0.549789 0.180219 0.906023 +0.547927 0.200180 0.902956 +0.545865 0.220120 0.899557 +0.543601 0.240036 0.895827 +0.541134 0.259925 0.891761 +0.538462 0.279783 0.887358 +0.535584 0.299608 0.882615 +0.532498 0.319395 0.877529 +0.529202 0.339140 0.872098 +0.525694 0.358840 0.866317 +0.521972 0.378490 0.860183 +0.518034 0.398084 0.853694 +0.513879 0.417618 0.846846 +0.509503 0.437086 0.839635 +0.504905 0.456482 0.832058 +0.500082 0.475800 0.824110 +0.495033 0.495033 0.815788 +0.475800 0.500082 0.824110 +0.456482 0.504905 0.832058 +0.437086 0.509503 0.839635 +0.417618 0.513879 0.846846 +0.398084 0.518034 0.853694 +0.378490 0.521972 0.860183 +0.358840 0.525694 0.866317 +0.339140 0.529202 0.872098 +0.319395 0.532498 0.877529 +0.299608 0.535584 0.882615 +0.279783 0.538462 0.887358 +0.259925 0.541134 0.891761 +0.240036 0.543601 0.895827 +0.220120 0.545865 0.899557 +0.200180 0.547927 0.902956 +0.180219 0.549789 0.906023 +0.160239 0.551451 0.908763 +0.140243 0.552915 0.911176 +0.120233 0.554182 0.913264 +0.100212 0.555253 0.915028 +0.080181 0.556128 0.916470 +0.060142 0.556808 0.917591 +0.040098 0.557293 0.918391 +0.020050 0.557584 0.918870 +0.000000 0.557681 0.919030 +0.577597 0.000000 0.906646 +0.577499 0.019780 0.906492 +0.577206 0.039558 0.906032 +0.576717 0.059334 0.905264 +0.576031 0.079106 0.904188 +0.575149 0.098873 0.902803 +0.574069 0.118633 0.901108 +0.572791 0.138385 0.899102 +0.571314 0.158127 0.896784 +0.569637 0.177858 0.894151 +0.567758 0.197575 0.891202 +0.565676 0.217276 0.887934 +0.563390 0.236960 0.884345 +0.560898 0.256623 0.880433 +0.558198 0.276263 0.876195 +0.555288 0.295878 0.871628 +0.552167 0.315464 0.866729 +0.548832 0.335017 0.861494 +0.545281 0.354534 0.855920 +0.541512 0.374010 0.850004 +0.537522 0.393443 0.843740 +0.533309 0.412825 0.837127 +0.528870 0.432154 0.830159 +0.524203 0.451422 0.822833 +0.519304 0.470624 0.815145 +0.514173 0.489754 0.807089 +0.508804 0.508804 0.798662 +0.489754 0.514173 0.807089 +0.470624 0.519304 0.815145 +0.451422 0.524203 0.822833 +0.432154 0.528870 0.830159 +0.412825 0.533309 0.837127 +0.393443 0.537522 0.843740 +0.374010 0.541512 0.850004 +0.354534 0.545281 0.855920 +0.335017 0.548832 0.861494 +0.315464 0.552167 0.866729 +0.295878 0.555288 0.871628 +0.276263 0.558198 0.876195 +0.256623 0.560898 0.880433 +0.236960 0.563390 0.884345 +0.217276 0.565676 0.887934 +0.197575 0.567758 0.891202 +0.177858 0.569637 0.894151 +0.158127 0.571314 0.896784 +0.138385 0.572791 0.899102 +0.118633 0.574069 0.901108 +0.098873 0.575149 0.902803 +0.079106 0.576031 0.904188 +0.059334 0.576717 0.905264 +0.039558 0.577206 0.906032 +0.019780 0.577499 0.906492 +0.000000 0.577597 0.906646 +0.597238 0.000000 0.893830 +0.597140 0.019500 0.893683 +0.596845 0.039000 0.893241 +0.596353 0.058498 0.892505 +0.595664 0.077994 0.891474 +0.594777 0.097487 0.890147 +0.593692 0.116976 0.888522 +0.592407 0.136461 0.886599 +0.590921 0.155939 0.884376 +0.589234 0.175411 0.881850 +0.587343 0.194874 0.879021 +0.585247 0.214328 0.875885 +0.582946 0.233770 0.872440 +0.580436 0.253198 0.868683 +0.577715 0.272611 0.864612 +0.574782 0.292006 0.860222 +0.571635 0.311381 0.855512 +0.568270 0.330732 0.850476 +0.564686 0.350057 0.845112 +0.560880 0.369352 0.839416 +0.556848 0.388612 0.833382 +0.552589 0.407835 0.827007 +0.548099 0.427015 0.820287 +0.543375 0.446146 0.813217 +0.538413 0.465225 0.805793 +0.533212 0.484244 0.798009 +0.527768 0.503197 0.789860 +0.522077 0.522077 0.781343 +0.503197 0.527768 0.789860 +0.484244 0.533212 0.798009 +0.465225 0.538413 0.805793 +0.446146 0.543375 0.813217 +0.427015 0.548099 0.820287 +0.407835 0.552589 0.827007 +0.388612 0.556848 0.833382 +0.369352 0.560880 0.839416 +0.350057 0.564686 0.845112 +0.330732 0.568270 0.850476 +0.311381 0.571635 0.855512 +0.292006 0.574782 0.860222 +0.272611 0.577715 0.864612 +0.253198 0.580436 0.868683 +0.233770 0.582946 0.872440 +0.214328 0.585247 0.875885 +0.194874 0.587343 0.879021 +0.175411 0.589234 0.881850 +0.155939 0.590921 0.884376 +0.136461 0.592407 0.886599 +0.116976 0.593692 0.888522 +0.097487 0.594777 0.890147 +0.077994 0.595664 0.891474 +0.058498 0.596353 0.892505 +0.039000 0.596845 0.893241 +0.019500 0.597140 0.893683 +0.000000 0.597238 0.893830 +0.616595 0.000000 0.880588 +0.616496 0.019211 0.880448 +0.616201 0.038423 0.880026 +0.615708 0.057634 0.879322 +0.615017 0.076844 0.878336 +0.614128 0.096054 0.877066 +0.613040 0.115263 0.875512 +0.611752 0.134471 0.873672 +0.610262 0.153677 0.871544 +0.608569 0.172880 0.869127 +0.606672 0.192080 0.866417 +0.604569 0.211276 0.863414 +0.602258 0.230467 0.860114 +0.599737 0.249651 0.856513 +0.597004 0.268827 0.852610 +0.594056 0.287993 0.848400 +0.590891 0.307147 0.843880 +0.587506 0.326287 0.839046 +0.583899 0.345410 0.833894 +0.580066 0.364513 0.828420 +0.576004 0.383593 0.822618 +0.571710 0.402646 0.816486 +0.567180 0.421668 0.810017 +0.562412 0.440655 0.803207 +0.557401 0.459600 0.796051 +0.552144 0.478500 0.788543 +0.546637 0.497347 0.780679 +0.540876 0.516136 0.772452 +0.534859 0.534859 0.763857 +0.516136 0.540876 0.772452 +0.497347 0.546637 0.780679 +0.478500 0.552144 0.788543 +0.459600 0.557401 0.796051 +0.440655 0.562412 0.803207 +0.421668 0.567180 0.810017 +0.402646 0.571710 0.816486 +0.383593 0.576004 0.822618 +0.364513 0.580066 0.828420 +0.345410 0.583899 0.833894 +0.326287 0.587506 0.839046 +0.307147 0.590891 0.843880 +0.287993 0.594056 0.848400 +0.268827 0.597004 0.852610 +0.249651 0.599737 0.856513 +0.230467 0.602258 0.860114 +0.211276 0.604569 0.863414 +0.192080 0.606672 0.866417 +0.172880 0.608569 0.869127 +0.153677 0.610262 0.871544 +0.134471 0.611752 0.873672 +0.115263 0.613040 0.875512 +0.096054 0.614128 0.877066 +0.076844 0.615017 0.878336 +0.057634 0.615708 0.879322 +0.038423 0.616201 0.880026 +0.019211 0.616496 0.880448 +0.000000 0.616595 0.880588 +0.635658 0.000000 0.866928 +0.635559 0.018914 0.866794 +0.635264 0.037827 0.866391 +0.634772 0.056742 0.865719 +0.634082 0.075658 0.864778 +0.633193 0.094576 0.863566 +0.632105 0.113495 0.862083 +0.630817 0.132417 0.860326 +0.629327 0.151340 0.858294 +0.627634 0.170266 0.855985 +0.625736 0.189193 0.853396 +0.623631 0.208122 0.850526 +0.621318 0.227052 0.847370 +0.618793 0.245982 0.843927 +0.616055 0.264912 0.840193 +0.613100 0.283839 0.836163 +0.609927 0.302763 0.831835 +0.606531 0.321682 0.827204 +0.602910 0.340594 0.822266 +0.599061 0.359495 0.817016 +0.594979 0.378385 0.811449 +0.590662 0.397259 0.805561 +0.586105 0.416114 0.799347 +0.581305 0.434945 0.792800 +0.576258 0.453749 0.785916 +0.570958 0.472520 0.778689 +0.565403 0.491253 0.771113 +0.559588 0.509942 0.763182 +0.553508 0.528579 0.754889 +0.547159 0.547159 0.746230 +0.528579 0.553508 0.754889 +0.509942 0.559588 0.763182 +0.491253 0.565403 0.771113 +0.472520 0.570958 0.778689 +0.453749 0.576258 0.785916 +0.434945 0.581305 0.792800 +0.416114 0.586105 0.799347 +0.397259 0.590662 0.805561 +0.378385 0.594979 0.811449 +0.359495 0.599061 0.817016 +0.340594 0.602910 0.822266 +0.321682 0.606531 0.827204 +0.302763 0.609927 0.831835 +0.283839 0.613100 0.836163 +0.264912 0.616055 0.840193 +0.245982 0.618793 0.843927 +0.227052 0.621318 0.847370 +0.208122 0.623631 0.850526 +0.189193 0.625736 0.853396 +0.170266 0.627634 0.855985 +0.151340 0.629327 0.858294 +0.132417 0.630817 0.860326 +0.113495 0.632105 0.862083 +0.094576 0.633193 0.863566 +0.075658 0.634082 0.864778 +0.056742 0.634772 0.865719 +0.037827 0.635264 0.866391 +0.018914 0.635559 0.866794 +0.000000 0.635658 0.866928 +0.654419 0.000000 0.852855 +0.654321 0.018607 0.852727 +0.654026 0.037214 0.852344 +0.653536 0.055824 0.851704 +0.652848 0.074436 0.850808 +0.651962 0.093052 0.849654 +0.650878 0.111673 0.848241 +0.649594 0.130299 0.846567 +0.648108 0.148931 0.844631 +0.646419 0.167570 0.842430 +0.644525 0.186215 0.839962 +0.642425 0.204867 0.837224 +0.640115 0.223527 0.834214 +0.637594 0.242193 0.830928 +0.634858 0.260866 0.827363 +0.631905 0.279545 0.823514 +0.628731 0.298229 0.819379 +0.625334 0.316917 0.814951 +0.621710 0.335607 0.810228 +0.617855 0.354298 0.805204 +0.613765 0.372987 0.799874 +0.609436 0.391672 0.794233 +0.604864 0.410350 0.788275 +0.600045 0.429017 0.781994 +0.594974 0.447669 0.775386 +0.589647 0.466302 0.768443 +0.584058 0.484912 0.761159 +0.578202 0.503491 0.753528 +0.572075 0.522035 0.745543 +0.565672 0.540536 0.737198 +0.558987 0.558987 0.728486 +0.540536 0.565672 0.737198 +0.522035 0.572075 0.745543 +0.503491 0.578202 0.753528 +0.484912 0.584058 0.761159 +0.466302 0.589647 0.768443 +0.447669 0.594974 0.775386 +0.429017 0.600045 0.781994 +0.410350 0.604864 0.788275 +0.391672 0.609436 0.794233 +0.372987 0.613765 0.799874 +0.354298 0.617855 0.805204 +0.335607 0.621710 0.810228 +0.316917 0.625334 0.814951 +0.298229 0.628731 0.819379 +0.279545 0.631905 0.823514 +0.260866 0.634858 0.827363 +0.242193 0.637594 0.830928 +0.223527 0.640115 0.834214 +0.204867 0.642425 0.837224 +0.186215 0.644525 0.839962 +0.167570 0.646419 0.842430 +0.148931 0.648108 0.844631 +0.130299 0.649594 0.846567 +0.111673 0.650878 0.848241 +0.093052 0.651962 0.849654 +0.074436 0.652848 0.850808 +0.055824 0.653536 0.851704 +0.037214 0.654026 0.852344 +0.018607 0.654321 0.852727 +0.000000 0.654419 0.852855 +0.672868 0.000000 0.838376 +0.672770 0.018291 0.838254 +0.672478 0.036583 0.837890 +0.671990 0.054878 0.837283 +0.671307 0.073178 0.836431 +0.670427 0.091484 0.835334 +0.669349 0.109797 0.833991 +0.668072 0.128119 0.832400 +0.666595 0.146450 0.830560 +0.664915 0.164792 0.828467 +0.663031 0.183146 0.826119 +0.660940 0.201513 0.823514 +0.658641 0.219892 0.820649 +0.656129 0.238285 0.817520 +0.653404 0.256692 0.814124 +0.650460 0.275113 0.810456 +0.647295 0.293547 0.806513 +0.643906 0.311994 0.802290 +0.640288 0.330452 0.797783 +0.636438 0.348922 0.792985 +0.632351 0.367400 0.787893 +0.628022 0.385886 0.782499 +0.623448 0.404376 0.776800 +0.618622 0.422869 0.770788 +0.613541 0.441359 0.764457 +0.608199 0.459845 0.757801 +0.602591 0.478320 0.750812 +0.596710 0.496781 0.743485 +0.590552 0.515222 0.735813 +0.584111 0.533635 0.727787 +0.577380 0.552015 0.719400 +0.570354 0.570354 0.710646 +0.552015 0.577380 0.719400 +0.533635 0.584111 0.727787 +0.515222 0.590552 0.735813 +0.496781 0.596710 0.743485 +0.478320 0.602591 0.750812 +0.459845 0.608199 0.757801 +0.441359 0.613541 0.764457 +0.422869 0.618622 0.770788 +0.404376 0.623448 0.776800 +0.385886 0.628022 0.782499 +0.367400 0.632351 0.787893 +0.348922 0.636438 0.792985 +0.330452 0.640288 0.797783 +0.311994 0.643906 0.802290 +0.293547 0.647295 0.806513 +0.275113 0.650460 0.810456 +0.256692 0.653404 0.814124 +0.238285 0.656129 0.817520 +0.219892 0.658641 0.820649 +0.201513 0.660940 0.823514 +0.183146 0.663031 0.826119 +0.164792 0.664915 0.828467 +0.146450 0.666595 0.830560 +0.128119 0.668072 0.832400 +0.109797 0.669349 0.833991 +0.091484 0.670427 0.835334 +0.073178 0.671307 0.836431 +0.054878 0.671990 0.837283 +0.036583 0.672478 0.837890 +0.018291 0.672770 0.838254 +0.000000 0.672868 0.838376 +0.690997 0.000000 0.823498 +0.690900 0.017966 0.823383 +0.690611 0.035935 0.823038 +0.690127 0.053907 0.822462 +0.689450 0.071885 0.821655 +0.688578 0.089872 0.820615 +0.687509 0.107868 0.819342 +0.686243 0.125877 0.817833 +0.684778 0.143898 0.816087 +0.683112 0.161935 0.814101 +0.681242 0.179988 0.811873 +0.679168 0.198059 0.809400 +0.676885 0.216149 0.806680 +0.674390 0.234259 0.803707 +0.671682 0.252390 0.800479 +0.668756 0.270542 0.796992 +0.665609 0.288716 0.793242 +0.662237 0.306912 0.789223 +0.658635 0.325129 0.784931 +0.654800 0.343367 0.780360 +0.650726 0.361624 0.775505 +0.646409 0.379900 0.770361 +0.641845 0.398192 0.764921 +0.637026 0.416499 0.759178 +0.631948 0.434818 0.753127 +0.626606 0.453145 0.746760 +0.620992 0.471477 0.740070 +0.615102 0.489808 0.733050 +0.608928 0.508135 0.725693 +0.602465 0.526452 0.717990 +0.595705 0.544751 0.709934 +0.588643 0.563027 0.701517 +0.581270 0.581270 0.692731 +0.563027 0.588643 0.701517 +0.544751 0.595705 0.709934 +0.526452 0.602465 0.717990 +0.508135 0.608928 0.725693 +0.489808 0.615102 0.733050 +0.471477 0.620992 0.740070 +0.453145 0.626606 0.746760 +0.434818 0.631948 0.753127 +0.416499 0.637026 0.759178 +0.398192 0.641845 0.764921 +0.379900 0.646409 0.770361 +0.361624 0.650726 0.775505 +0.343367 0.654800 0.780360 +0.325129 0.658635 0.784931 +0.306912 0.662237 0.789223 +0.288716 0.665609 0.793242 +0.270542 0.668756 0.796992 +0.252390 0.671682 0.800479 +0.234259 0.674390 0.803707 +0.216149 0.676885 0.806680 +0.198059 0.679168 0.809400 +0.179988 0.681242 0.811873 +0.161935 0.683112 0.814101 +0.143898 0.684778 0.816087 +0.125877 0.686243 0.817833 +0.107868 0.687509 0.819342 +0.089872 0.688578 0.820615 +0.071885 0.689450 0.821655 +0.053907 0.690127 0.822462 +0.035935 0.690611 0.823038 +0.017966 0.690900 0.823383 +0.000000 0.690997 0.823498 +0.708797 0.000000 0.808228 +0.708701 0.017633 0.808119 +0.708415 0.035269 0.807793 +0.707938 0.052910 0.807248 +0.707268 0.070558 0.806485 +0.706406 0.088217 0.805502 +0.705350 0.105888 0.804297 +0.704098 0.123574 0.802870 +0.702649 0.141276 0.801218 +0.701001 0.158998 0.799339 +0.699151 0.176742 0.797229 +0.697098 0.194508 0.794888 +0.694837 0.212299 0.792310 +0.692367 0.230116 0.789493 +0.689683 0.247961 0.786433 +0.686783 0.265835 0.783126 +0.683662 0.283739 0.779567 +0.680315 0.301673 0.775751 +0.676740 0.319638 0.771674 +0.672930 0.337633 0.767329 +0.668881 0.355659 0.762712 +0.664588 0.373714 0.757817 +0.660044 0.391798 0.752636 +0.655245 0.409908 0.747164 +0.650184 0.428044 0.741393 +0.644856 0.446201 0.735317 +0.639252 0.464378 0.728927 +0.633367 0.482570 0.722217 +0.627194 0.500773 0.715178 +0.620725 0.518982 0.707802 +0.613954 0.537190 0.700080 +0.606872 0.555393 0.692005 +0.599472 0.573581 0.683567 +0.591746 0.591746 0.674757 +0.573581 0.599472 0.683567 +0.555393 0.606872 0.692005 +0.537190 0.613954 0.700080 +0.518982 0.620725 0.707802 +0.500773 0.627194 0.715178 +0.482570 0.633367 0.722217 +0.464378 0.639252 0.728927 +0.446201 0.644856 0.735317 +0.428044 0.650184 0.741393 +0.409908 0.655245 0.747164 +0.391798 0.660044 0.752636 +0.373714 0.664588 0.757817 +0.355659 0.668881 0.762712 +0.337633 0.672930 0.767329 +0.319638 0.676740 0.771674 +0.301673 0.680315 0.775751 +0.283739 0.683662 0.779567 +0.265835 0.686783 0.783126 +0.247961 0.689683 0.786433 +0.230116 0.692367 0.789493 +0.212299 0.694837 0.792310 +0.194508 0.697098 0.794888 +0.176742 0.699151 0.797229 +0.158998 0.701001 0.799339 +0.141276 0.702649 0.801218 +0.123574 0.704098 0.802870 +0.105888 0.705350 0.804297 +0.088217 0.706406 0.805502 +0.070558 0.707268 0.806485 +0.052910 0.707938 0.807248 +0.035269 0.708415 0.807793 +0.017633 0.708701 0.808119 +0.000000 0.708797 0.808228 +0.726259 0.000000 0.792573 +0.726166 0.017292 0.792471 +0.725883 0.034587 0.792163 +0.725413 0.051887 0.791649 +0.724753 0.069197 0.790929 +0.723903 0.086519 0.790002 +0.722862 0.103856 0.788866 +0.721628 0.121211 0.787519 +0.720199 0.138586 0.785959 +0.718573 0.155984 0.784185 +0.716748 0.173408 0.782193 +0.714721 0.190860 0.779981 +0.712489 0.208343 0.777546 +0.710049 0.225858 0.774883 +0.707397 0.243407 0.771989 +0.704530 0.260993 0.768860 +0.701443 0.278616 0.765491 +0.698132 0.296278 0.761877 +0.694591 0.313980 0.758014 +0.690817 0.331722 0.753895 +0.686804 0.349504 0.749515 +0.682545 0.367328 0.744867 +0.678036 0.385192 0.739946 +0.673269 0.403094 0.734744 +0.668238 0.421035 0.729254 +0.662937 0.439012 0.723469 +0.657359 0.457022 0.717381 +0.651495 0.475063 0.710982 +0.645338 0.493130 0.704263 +0.638881 0.511220 0.697216 +0.632115 0.529327 0.689832 +0.625032 0.547445 0.682103 +0.617623 0.565568 0.674017 +0.609880 0.583687 0.665568 +0.601794 0.601794 0.656743 +0.583687 0.609880 0.665568 +0.565568 0.617623 0.674017 +0.547445 0.625032 0.682103 +0.529327 0.632115 0.689832 +0.511220 0.638881 0.697216 +0.493130 0.645338 0.704263 +0.475063 0.651495 0.710982 +0.457022 0.657359 0.717381 +0.439012 0.662937 0.723469 +0.421035 0.668238 0.729254 +0.403094 0.673269 0.734744 +0.385192 0.678036 0.739946 +0.367328 0.682545 0.744867 +0.349504 0.686804 0.749515 +0.331722 0.690817 0.753895 +0.313980 0.694591 0.758014 +0.296278 0.698132 0.761877 +0.278616 0.701443 0.765491 +0.260993 0.704530 0.768860 +0.243407 0.707397 0.771989 +0.225858 0.710049 0.774883 +0.208343 0.712489 0.777546 +0.190860 0.714721 0.779981 +0.173408 0.716748 0.782193 +0.155984 0.718573 0.784185 +0.138586 0.720199 0.785959 +0.121211 0.721628 0.787519 +0.103856 0.722862 0.788866 +0.086519 0.723903 0.790002 +0.069197 0.724753 0.790929 +0.051887 0.725413 0.791649 +0.034587 0.725883 0.792163 +0.017292 0.726166 0.792471 +0.000000 0.726259 0.792573 +0.743377 0.000000 0.776541 +0.743284 0.016942 0.776445 +0.743007 0.033888 0.776155 +0.742545 0.050840 0.775672 +0.741896 0.067803 0.774995 +0.741061 0.084780 0.774123 +0.740038 0.101774 0.773053 +0.738824 0.118789 0.771786 +0.737419 0.135828 0.770318 +0.735819 0.152893 0.768647 +0.734024 0.169989 0.766771 +0.732029 0.187118 0.764687 +0.729831 0.204282 0.762391 +0.727427 0.221485 0.759881 +0.724814 0.238729 0.757151 +0.721988 0.256016 0.754198 +0.718943 0.273348 0.751017 +0.715675 0.290727 0.747604 +0.712180 0.308155 0.743953 +0.708451 0.325633 0.740058 +0.704483 0.343162 0.735913 +0.700271 0.360742 0.731513 +0.695807 0.378374 0.726850 +0.691085 0.396057 0.721917 +0.686099 0.413792 0.716708 +0.680839 0.431575 0.711214 +0.675300 0.449407 0.705428 +0.669473 0.467284 0.699340 +0.663349 0.485204 0.692943 +0.656920 0.503163 0.686228 +0.650177 0.521156 0.679184 +0.643111 0.539179 0.671803 +0.635713 0.557225 0.664074 +0.627972 0.575287 0.655989 +0.619880 0.593357 0.647535 +0.611426 0.611426 0.638704 +0.593357 0.619880 0.647535 +0.575287 0.627972 0.655989 +0.557225 0.635713 0.664074 +0.539179 0.643111 0.671803 +0.521156 0.650177 0.679184 +0.503163 0.656920 0.686228 +0.485204 0.663349 0.692943 +0.467284 0.669473 0.699340 +0.449407 0.675300 0.705428 +0.431575 0.680839 0.711214 +0.413792 0.686099 0.716708 +0.396057 0.691085 0.721917 +0.378374 0.695807 0.726850 +0.360742 0.700271 0.731513 +0.343162 0.704483 0.735913 +0.325633 0.708451 0.740058 +0.308155 0.712180 0.743953 +0.290727 0.715675 0.747604 +0.273348 0.718943 0.751017 +0.256016 0.721988 0.754198 +0.238729 0.724814 0.757151 +0.221485 0.727427 0.759881 +0.204282 0.729831 0.762391 +0.187118 0.732029 0.764687 +0.169989 0.734024 0.766771 +0.152893 0.735819 0.768647 +0.135828 0.737419 0.770318 +0.118789 0.738824 0.771786 +0.101774 0.740038 0.773053 +0.084780 0.741061 0.774123 +0.067803 0.741896 0.774995 +0.050840 0.742545 0.775672 +0.033888 0.743007 0.776155 +0.016942 0.743284 0.776445 +0.000000 0.743377 0.776541 +0.760140 0.000000 0.760140 +0.760049 0.016584 0.760049 +0.759778 0.033173 0.759778 +0.759325 0.049769 0.759325 +0.758689 0.066377 0.758689 +0.757871 0.083000 0.757871 +0.756867 0.099643 0.756867 +0.755678 0.116310 0.755678 +0.754299 0.133003 0.754299 +0.752731 0.149727 0.752731 +0.750969 0.166486 0.750969 +0.749010 0.183282 0.749010 +0.746853 0.200119 0.746853 +0.744492 0.217000 0.744492 +0.741924 0.233928 0.741924 +0.739145 0.250906 0.739145 +0.736150 0.267937 0.736150 +0.732935 0.285023 0.732935 +0.729493 0.302166 0.729493 +0.725820 0.319368 0.725820 +0.721909 0.336632 0.721909 +0.717753 0.353957 0.717753 +0.713347 0.371345 0.713347 +0.708683 0.388797 0.708683 +0.703753 0.406312 0.703753 +0.698549 0.423890 0.698549 +0.693064 0.441531 0.693064 +0.687289 0.459232 0.687289 +0.681214 0.476991 0.681214 +0.674830 0.494806 0.674830 +0.668128 0.512673 0.668128 +0.661098 0.530587 0.661098 +0.653729 0.548544 0.653729 +0.646011 0.566537 0.646011 +0.637933 0.584558 0.637933 +0.629484 0.602599 0.629484 +0.620652 0.620652 0.620652 +0.602599 0.629484 0.629484 +0.584558 0.637933 0.637933 +0.566537 0.646011 0.646011 +0.548544 0.653729 0.653729 +0.530587 0.661098 0.661098 +0.512673 0.668128 0.668128 +0.494806 0.674830 0.674830 +0.476991 0.681214 0.681214 +0.459232 0.687289 0.687289 +0.441531 0.693064 0.693064 +0.423890 0.698549 0.698549 +0.406312 0.703753 0.703753 +0.388797 0.708683 0.708683 +0.371345 0.713347 0.713347 +0.353957 0.717753 0.717753 +0.336632 0.721909 0.721909 +0.319368 0.725820 0.725820 +0.302166 0.729493 0.729493 +0.285023 0.732935 0.732935 +0.267937 0.736150 0.736150 +0.250906 0.739145 0.739145 +0.233928 0.741924 0.741924 +0.217000 0.744492 0.744492 +0.200119 0.746853 0.746853 +0.183282 0.749010 0.749010 +0.166486 0.750969 0.750969 +0.149727 0.752731 0.752731 +0.133003 0.754299 0.754299 +0.116310 0.755678 0.755678 +0.099643 0.756867 0.756867 +0.083000 0.757871 0.757871 +0.066377 0.758689 0.758689 +0.049769 0.759325 0.759325 +0.033173 0.759778 0.759778 +0.016584 0.760049 0.760049 +0.000000 0.760140 0.760140 +0.776541 0.000000 0.743377 +0.776445 0.016942 0.743284 +0.776155 0.033888 0.743007 +0.775672 0.050840 0.742545 +0.774995 0.067803 0.741896 +0.774123 0.084780 0.741061 +0.773053 0.101774 0.740038 +0.771786 0.118789 0.738824 +0.770318 0.135828 0.737419 +0.768647 0.152893 0.735819 +0.766771 0.169989 0.734024 +0.764687 0.187118 0.732029 +0.762391 0.204282 0.729831 +0.759881 0.221485 0.727427 +0.757151 0.238729 0.724814 +0.754198 0.256016 0.721988 +0.751017 0.273348 0.718943 +0.747604 0.290727 0.715675 +0.743953 0.308155 0.712180 +0.740058 0.325633 0.708451 +0.735913 0.343162 0.704483 +0.731513 0.360742 0.700271 +0.726850 0.378374 0.695807 +0.721917 0.396057 0.691085 +0.716708 0.413792 0.686099 +0.711214 0.431575 0.680839 +0.705428 0.449407 0.675300 +0.699340 0.467284 0.669473 +0.692943 0.485204 0.663349 +0.686228 0.503163 0.656920 +0.679184 0.521156 0.650177 +0.671803 0.539179 0.643111 +0.664074 0.557225 0.635713 +0.655989 0.575287 0.627972 +0.647535 0.593357 0.619880 +0.638704 0.611426 0.611426 +0.629484 0.629484 0.602599 +0.611426 0.638704 0.611426 +0.593357 0.647535 0.619880 +0.575287 0.655989 0.627972 +0.557225 0.664074 0.635713 +0.539179 0.671803 0.643111 +0.521156 0.679184 0.650177 +0.503163 0.686228 0.656920 +0.485204 0.692943 0.663349 +0.467284 0.699340 0.669473 +0.449407 0.705428 0.675300 +0.431575 0.711214 0.680839 +0.413792 0.716708 0.686099 +0.396057 0.721917 0.691085 +0.378374 0.726850 0.695807 +0.360742 0.731513 0.700271 +0.343162 0.735913 0.704483 +0.325633 0.740058 0.708451 +0.308155 0.743953 0.712180 +0.290727 0.747604 0.715675 +0.273348 0.751017 0.718943 +0.256016 0.754198 0.721988 +0.238729 0.757151 0.724814 +0.221485 0.759881 0.727427 +0.204282 0.762391 0.729831 +0.187118 0.764687 0.732029 +0.169989 0.766771 0.734024 +0.152893 0.768647 0.735819 +0.135828 0.770318 0.737419 +0.118789 0.771786 0.738824 +0.101774 0.773053 0.740038 +0.084780 0.774123 0.741061 +0.067803 0.774995 0.741896 +0.050840 0.775672 0.742545 +0.033888 0.776155 0.743007 +0.016942 0.776445 0.743284 +0.000000 0.776541 0.743377 +0.792573 0.000000 0.726259 +0.792471 0.017292 0.726166 +0.792163 0.034587 0.725883 +0.791649 0.051887 0.725413 +0.790929 0.069197 0.724753 +0.790002 0.086519 0.723903 +0.788866 0.103856 0.722862 +0.787519 0.121211 0.721628 +0.785959 0.138586 0.720199 +0.784185 0.155984 0.718573 +0.782193 0.173408 0.716748 +0.779981 0.190860 0.714721 +0.777546 0.208343 0.712489 +0.774883 0.225858 0.710049 +0.771989 0.243407 0.707397 +0.768860 0.260993 0.704530 +0.765491 0.278616 0.701443 +0.761877 0.296278 0.698132 +0.758014 0.313980 0.694591 +0.753895 0.331722 0.690817 +0.749515 0.349504 0.686804 +0.744867 0.367328 0.682545 +0.739946 0.385192 0.678036 +0.734744 0.403094 0.673269 +0.729254 0.421035 0.668238 +0.723469 0.439012 0.662937 +0.717381 0.457022 0.657359 +0.710982 0.475063 0.651495 +0.704263 0.493130 0.645338 +0.697216 0.511220 0.638881 +0.689832 0.529327 0.632115 +0.682103 0.547445 0.625032 +0.674017 0.565568 0.617623 +0.665568 0.583687 0.609880 +0.656743 0.601794 0.601794 +0.647535 0.619880 0.593357 +0.637933 0.637933 0.584558 +0.619880 0.647535 0.593357 +0.601794 0.656743 0.601794 +0.583687 0.665568 0.609880 +0.565568 0.674017 0.617623 +0.547445 0.682103 0.625032 +0.529327 0.689832 0.632115 +0.511220 0.697216 0.638881 +0.493130 0.704263 0.645338 +0.475063 0.710982 0.651495 +0.457022 0.717381 0.657359 +0.439012 0.723469 0.662937 +0.421035 0.729254 0.668238 +0.403094 0.734744 0.673269 +0.385192 0.739946 0.678036 +0.367328 0.744867 0.682545 +0.349504 0.749515 0.686804 +0.331722 0.753895 0.690817 +0.313980 0.758014 0.694591 +0.296278 0.761877 0.698132 +0.278616 0.765491 0.701443 +0.260993 0.768860 0.704530 +0.243407 0.771989 0.707397 +0.225858 0.774883 0.710049 +0.208343 0.777546 0.712489 +0.190860 0.779981 0.714721 +0.173408 0.782193 0.716748 +0.155984 0.784185 0.718573 +0.138586 0.785959 0.720199 +0.121211 0.787519 0.721628 +0.103856 0.788866 0.722862 +0.086519 0.790002 0.723903 +0.069197 0.790929 0.724753 +0.051887 0.791649 0.725413 +0.034587 0.792163 0.725883 +0.017292 0.792471 0.726166 +0.000000 0.792573 0.726259 +0.808228 0.000000 0.708797 +0.808119 0.017633 0.708701 +0.807793 0.035269 0.708415 +0.807248 0.052910 0.707938 +0.806485 0.070558 0.707268 +0.805502 0.088217 0.706406 +0.804297 0.105888 0.705350 +0.802870 0.123574 0.704098 +0.801218 0.141276 0.702649 +0.799339 0.158998 0.701001 +0.797229 0.176742 0.699151 +0.794888 0.194508 0.697098 +0.792310 0.212299 0.694837 +0.789493 0.230116 0.692367 +0.786433 0.247961 0.689683 +0.783126 0.265835 0.686783 +0.779567 0.283739 0.683662 +0.775751 0.301673 0.680315 +0.771674 0.319638 0.676740 +0.767329 0.337633 0.672930 +0.762712 0.355659 0.668881 +0.757817 0.373714 0.664588 +0.752636 0.391798 0.660044 +0.747164 0.409908 0.655245 +0.741393 0.428044 0.650184 +0.735317 0.446201 0.644856 +0.728927 0.464378 0.639252 +0.722217 0.482570 0.633367 +0.715178 0.500773 0.627194 +0.707802 0.518982 0.620725 +0.700080 0.537190 0.613954 +0.692005 0.555393 0.606872 +0.683567 0.573581 0.599472 +0.674757 0.591746 0.591746 +0.665568 0.609880 0.583687 +0.655989 0.627972 0.575287 +0.646011 0.646011 0.566537 +0.627972 0.655989 0.575287 +0.609880 0.665568 0.583687 +0.591746 0.674757 0.591746 +0.573581 0.683567 0.599472 +0.555393 0.692005 0.606872 +0.537190 0.700080 0.613954 +0.518982 0.707802 0.620725 +0.500773 0.715178 0.627194 +0.482570 0.722217 0.633367 +0.464378 0.728927 0.639252 +0.446201 0.735317 0.644856 +0.428044 0.741393 0.650184 +0.409908 0.747164 0.655245 +0.391798 0.752636 0.660044 +0.373714 0.757817 0.664588 +0.355659 0.762712 0.668881 +0.337633 0.767329 0.672930 +0.319638 0.771674 0.676740 +0.301673 0.775751 0.680315 +0.283739 0.779567 0.683662 +0.265835 0.783126 0.686783 +0.247961 0.786433 0.689683 +0.230116 0.789493 0.692367 +0.212299 0.792310 0.694837 +0.194508 0.794888 0.697098 +0.176742 0.797229 0.699151 +0.158998 0.799339 0.701001 +0.141276 0.801218 0.702649 +0.123574 0.802870 0.704098 +0.105888 0.804297 0.705350 +0.088217 0.805502 0.706406 +0.070558 0.806485 0.707268 +0.052910 0.807248 0.707938 +0.035269 0.807793 0.708415 +0.017633 0.808119 0.708701 +0.000000 0.808228 0.708797 +0.823498 0.000000 0.690997 +0.823383 0.017966 0.690900 +0.823038 0.035935 0.690611 +0.822462 0.053907 0.690127 +0.821655 0.071885 0.689450 +0.820615 0.089872 0.688578 +0.819342 0.107868 0.687509 +0.817833 0.125877 0.686243 +0.816087 0.143898 0.684778 +0.814101 0.161935 0.683112 +0.811873 0.179988 0.681242 +0.809400 0.198059 0.679168 +0.806680 0.216149 0.676885 +0.803707 0.234259 0.674390 +0.800479 0.252390 0.671682 +0.796992 0.270542 0.668756 +0.793242 0.288716 0.665609 +0.789223 0.306912 0.662237 +0.784931 0.325129 0.658635 +0.780360 0.343367 0.654800 +0.775505 0.361624 0.650726 +0.770361 0.379900 0.646409 +0.764921 0.398192 0.641845 +0.759178 0.416499 0.637026 +0.753127 0.434818 0.631948 +0.746760 0.453145 0.626606 +0.740070 0.471477 0.620992 +0.733050 0.489808 0.615102 +0.725693 0.508135 0.608928 +0.717990 0.526452 0.602465 +0.709934 0.544751 0.595705 +0.701517 0.563027 0.588643 +0.692731 0.581270 0.581270 +0.683567 0.599472 0.573581 +0.674017 0.617623 0.565568 +0.664074 0.635713 0.557225 +0.653729 0.653729 0.548544 +0.635713 0.664074 0.557225 +0.617623 0.674017 0.565568 +0.599472 0.683567 0.573581 +0.581270 0.692731 0.581270 +0.563027 0.701517 0.588643 +0.544751 0.709934 0.595705 +0.526452 0.717990 0.602465 +0.508135 0.725693 0.608928 +0.489808 0.733050 0.615102 +0.471477 0.740070 0.620992 +0.453145 0.746760 0.626606 +0.434818 0.753127 0.631948 +0.416499 0.759178 0.637026 +0.398192 0.764921 0.641845 +0.379900 0.770361 0.646409 +0.361624 0.775505 0.650726 +0.343367 0.780360 0.654800 +0.325129 0.784931 0.658635 +0.306912 0.789223 0.662237 +0.288716 0.793242 0.665609 +0.270542 0.796992 0.668756 +0.252390 0.800479 0.671682 +0.234259 0.803707 0.674390 +0.216149 0.806680 0.676885 +0.198059 0.809400 0.679168 +0.179988 0.811873 0.681242 +0.161935 0.814101 0.683112 +0.143898 0.816087 0.684778 +0.125877 0.817833 0.686243 +0.107868 0.819342 0.687509 +0.089872 0.820615 0.688578 +0.071885 0.821655 0.689450 +0.053907 0.822462 0.690127 +0.035935 0.823038 0.690611 +0.017966 0.823383 0.690900 +0.000000 0.823498 0.690997 +0.838376 0.000000 0.672868 +0.838254 0.018291 0.672770 +0.837890 0.036583 0.672478 +0.837283 0.054878 0.671990 +0.836431 0.073178 0.671307 +0.835334 0.091484 0.670427 +0.833991 0.109797 0.669349 +0.832400 0.128119 0.668072 +0.830560 0.146450 0.666595 +0.828467 0.164792 0.664915 +0.826119 0.183146 0.663031 +0.823514 0.201513 0.660940 +0.820649 0.219892 0.658641 +0.817520 0.238285 0.656129 +0.814124 0.256692 0.653404 +0.810456 0.275113 0.650460 +0.806513 0.293547 0.647295 +0.802290 0.311994 0.643906 +0.797783 0.330452 0.640288 +0.792985 0.348922 0.636438 +0.787893 0.367400 0.632351 +0.782499 0.385886 0.628022 +0.776800 0.404376 0.623448 +0.770788 0.422869 0.618622 +0.764457 0.441359 0.613541 +0.757801 0.459845 0.608199 +0.750812 0.478320 0.602591 +0.743485 0.496781 0.596710 +0.735813 0.515222 0.590552 +0.727787 0.533635 0.584111 +0.719400 0.552015 0.577380 +0.710646 0.570354 0.570354 +0.701517 0.588643 0.563027 +0.692005 0.606872 0.555393 +0.682103 0.625032 0.547445 +0.671803 0.643111 0.539179 +0.661098 0.661098 0.530587 +0.643111 0.671803 0.539179 +0.625032 0.682103 0.547445 +0.606872 0.692005 0.555393 +0.588643 0.701517 0.563027 +0.570354 0.710646 0.570354 +0.552015 0.719400 0.577380 +0.533635 0.727787 0.584111 +0.515222 0.735813 0.590552 +0.496781 0.743485 0.596710 +0.478320 0.750812 0.602591 +0.459845 0.757801 0.608199 +0.441359 0.764457 0.613541 +0.422869 0.770788 0.618622 +0.404376 0.776800 0.623448 +0.385886 0.782499 0.628022 +0.367400 0.787893 0.632351 +0.348922 0.792985 0.636438 +0.330452 0.797783 0.640288 +0.311994 0.802290 0.643906 +0.293547 0.806513 0.647295 +0.275113 0.810456 0.650460 +0.256692 0.814124 0.653404 +0.238285 0.817520 0.656129 +0.219892 0.820649 0.658641 +0.201513 0.823514 0.660940 +0.183146 0.826119 0.663031 +0.164792 0.828467 0.664915 +0.146450 0.830560 0.666595 +0.128119 0.832400 0.668072 +0.109797 0.833991 0.669349 +0.091484 0.835334 0.670427 +0.073178 0.836431 0.671307 +0.054878 0.837283 0.671990 +0.036583 0.837890 0.672478 +0.018291 0.838254 0.672770 +0.000000 0.838376 0.672868 +0.852855 0.000000 0.654419 +0.852727 0.018607 0.654321 +0.852344 0.037214 0.654026 +0.851704 0.055824 0.653536 +0.850808 0.074436 0.652848 +0.849654 0.093052 0.651962 +0.848241 0.111673 0.650878 +0.846567 0.130299 0.649594 +0.844631 0.148931 0.648108 +0.842430 0.167570 0.646419 +0.839962 0.186215 0.644525 +0.837224 0.204867 0.642425 +0.834214 0.223527 0.640115 +0.830928 0.242193 0.637594 +0.827363 0.260866 0.634858 +0.823514 0.279545 0.631905 +0.819379 0.298229 0.628731 +0.814951 0.316917 0.625334 +0.810228 0.335607 0.621710 +0.805204 0.354298 0.617855 +0.799874 0.372987 0.613765 +0.794233 0.391672 0.609436 +0.788275 0.410350 0.604864 +0.781994 0.429017 0.600045 +0.775386 0.447669 0.594974 +0.768443 0.466302 0.589647 +0.761159 0.484912 0.584058 +0.753528 0.503491 0.578202 +0.745543 0.522035 0.572075 +0.737198 0.540536 0.565672 +0.728486 0.558987 0.558987 +0.719400 0.577380 0.552015 +0.709934 0.595705 0.544751 +0.700080 0.613954 0.537190 +0.689832 0.632115 0.529327 +0.679184 0.650177 0.521156 +0.668128 0.668128 0.512673 +0.650177 0.679184 0.521156 +0.632115 0.689832 0.529327 +0.613954 0.700080 0.537190 +0.595705 0.709934 0.544751 +0.577380 0.719400 0.552015 +0.558987 0.728486 0.558987 +0.540536 0.737198 0.565672 +0.522035 0.745543 0.572075 +0.503491 0.753528 0.578202 +0.484912 0.761159 0.584058 +0.466302 0.768443 0.589647 +0.447669 0.775386 0.594974 +0.429017 0.781994 0.600045 +0.410350 0.788275 0.604864 +0.391672 0.794233 0.609436 +0.372987 0.799874 0.613765 +0.354298 0.805204 0.617855 +0.335607 0.810228 0.621710 +0.316917 0.814951 0.625334 +0.298229 0.819379 0.628731 +0.279545 0.823514 0.631905 +0.260866 0.827363 0.634858 +0.242193 0.830928 0.637594 +0.223527 0.834214 0.640115 +0.204867 0.837224 0.642425 +0.186215 0.839962 0.644525 +0.167570 0.842430 0.646419 +0.148931 0.844631 0.648108 +0.130299 0.846567 0.649594 +0.111673 0.848241 0.650878 +0.093052 0.849654 0.651962 +0.074436 0.850808 0.652848 +0.055824 0.851704 0.653536 +0.037214 0.852344 0.654026 +0.018607 0.852727 0.654321 +0.000000 0.852855 0.654419 +0.866928 0.000000 0.635658 +0.866794 0.018914 0.635559 +0.866391 0.037827 0.635264 +0.865719 0.056742 0.634772 +0.864778 0.075658 0.634082 +0.863566 0.094576 0.633193 +0.862083 0.113495 0.632105 +0.860326 0.132417 0.630817 +0.858294 0.151340 0.629327 +0.855985 0.170266 0.627634 +0.853396 0.189193 0.625736 +0.850526 0.208122 0.623631 +0.847370 0.227052 0.621318 +0.843927 0.245982 0.618793 +0.840193 0.264912 0.616055 +0.836163 0.283839 0.613100 +0.831835 0.302763 0.609927 +0.827204 0.321682 0.606531 +0.822266 0.340594 0.602910 +0.817016 0.359495 0.599061 +0.811449 0.378385 0.594979 +0.805561 0.397259 0.590662 +0.799347 0.416114 0.586105 +0.792800 0.434945 0.581305 +0.785916 0.453749 0.576258 +0.778689 0.472520 0.570958 +0.771113 0.491253 0.565403 +0.763182 0.509942 0.559588 +0.754889 0.528579 0.553508 +0.746230 0.547159 0.547159 +0.737198 0.565672 0.540536 +0.727787 0.584111 0.533635 +0.717990 0.602465 0.526452 +0.707802 0.620725 0.518982 +0.697216 0.638881 0.511220 +0.686228 0.656920 0.503163 +0.674830 0.674830 0.494806 +0.656920 0.686228 0.503163 +0.638881 0.697216 0.511220 +0.620725 0.707802 0.518982 +0.602465 0.717990 0.526452 +0.584111 0.727787 0.533635 +0.565672 0.737198 0.540536 +0.547159 0.746230 0.547159 +0.528579 0.754889 0.553508 +0.509942 0.763182 0.559588 +0.491253 0.771113 0.565403 +0.472520 0.778689 0.570958 +0.453749 0.785916 0.576258 +0.434945 0.792800 0.581305 +0.416114 0.799347 0.586105 +0.397259 0.805561 0.590662 +0.378385 0.811449 0.594979 +0.359495 0.817016 0.599061 +0.340594 0.822266 0.602910 +0.321682 0.827204 0.606531 +0.302763 0.831835 0.609927 +0.283839 0.836163 0.613100 +0.264912 0.840193 0.616055 +0.245982 0.843927 0.618793 +0.227052 0.847370 0.621318 +0.208122 0.850526 0.623631 +0.189193 0.853396 0.625736 +0.170266 0.855985 0.627634 +0.151340 0.858294 0.629327 +0.132417 0.860326 0.630817 +0.113495 0.862083 0.632105 +0.094576 0.863566 0.633193 +0.075658 0.864778 0.634082 +0.056742 0.865719 0.634772 +0.037827 0.866391 0.635264 +0.018914 0.866794 0.635559 +0.000000 0.866928 0.635658 +0.880588 0.000000 0.616595 +0.880448 0.019211 0.616496 +0.880026 0.038423 0.616201 +0.879322 0.057634 0.615708 +0.878336 0.076844 0.615017 +0.877066 0.096054 0.614128 +0.875512 0.115263 0.613040 +0.873672 0.134471 0.611752 +0.871544 0.153677 0.610262 +0.869127 0.172880 0.608569 +0.866417 0.192080 0.606672 +0.863414 0.211276 0.604569 +0.860114 0.230467 0.602258 +0.856513 0.249651 0.599737 +0.852610 0.268827 0.597004 +0.848400 0.287993 0.594056 +0.843880 0.307147 0.590891 +0.839046 0.326287 0.587506 +0.833894 0.345410 0.583899 +0.828420 0.364513 0.580066 +0.822618 0.383593 0.576004 +0.816486 0.402646 0.571710 +0.810017 0.421668 0.567180 +0.803207 0.440655 0.562412 +0.796051 0.459600 0.557401 +0.788543 0.478500 0.552144 +0.780679 0.497347 0.546637 +0.772452 0.516136 0.540876 +0.763857 0.534859 0.534859 +0.754889 0.553508 0.528579 +0.745543 0.572075 0.522035 +0.735813 0.590552 0.515222 +0.725693 0.608928 0.508135 +0.715178 0.627194 0.500773 +0.704263 0.645338 0.493130 +0.692943 0.663349 0.485204 +0.681214 0.681214 0.476991 +0.663349 0.692943 0.485204 +0.645338 0.704263 0.493130 +0.627194 0.715178 0.500773 +0.608928 0.725693 0.508135 +0.590552 0.735813 0.515222 +0.572075 0.745543 0.522035 +0.553508 0.754889 0.528579 +0.534859 0.763857 0.534859 +0.516136 0.772452 0.540876 +0.497347 0.780679 0.546637 +0.478500 0.788543 0.552144 +0.459600 0.796051 0.557401 +0.440655 0.803207 0.562412 +0.421668 0.810017 0.567180 +0.402646 0.816486 0.571710 +0.383593 0.822618 0.576004 +0.364513 0.828420 0.580066 +0.345410 0.833894 0.583899 +0.326287 0.839046 0.587506 +0.307147 0.843880 0.590891 +0.287993 0.848400 0.594056 +0.268827 0.852610 0.597004 +0.249651 0.856513 0.599737 +0.230467 0.860114 0.602258 +0.211276 0.863414 0.604569 +0.192080 0.866417 0.606672 +0.172880 0.869127 0.608569 +0.153677 0.871544 0.610262 +0.134471 0.873672 0.611752 +0.115263 0.875512 0.613040 +0.096054 0.877066 0.614128 +0.076844 0.878336 0.615017 +0.057634 0.879322 0.615708 +0.038423 0.880026 0.616201 +0.019211 0.880448 0.616496 +0.000000 0.880588 0.616595 +0.893830 0.000000 0.597238 +0.893683 0.019500 0.597140 +0.893241 0.039000 0.596845 +0.892505 0.058498 0.596353 +0.891474 0.077994 0.595664 +0.890147 0.097487 0.594777 +0.888522 0.116976 0.593692 +0.886599 0.136461 0.592407 +0.884376 0.155939 0.590921 +0.881850 0.175411 0.589234 +0.879021 0.194874 0.587343 +0.875885 0.214328 0.585247 +0.872440 0.233770 0.582946 +0.868683 0.253198 0.580436 +0.864612 0.272611 0.577715 +0.860222 0.292006 0.574782 +0.855512 0.311381 0.571635 +0.850476 0.330732 0.568270 +0.845112 0.350057 0.564686 +0.839416 0.369352 0.560880 +0.833382 0.388612 0.556848 +0.827007 0.407835 0.552589 +0.820287 0.427015 0.548099 +0.813217 0.446146 0.543375 +0.805793 0.465225 0.538413 +0.798009 0.484244 0.533212 +0.789860 0.503197 0.527768 +0.781343 0.522077 0.522077 +0.772452 0.540876 0.516136 +0.763182 0.559588 0.509942 +0.753528 0.578202 0.503491 +0.743485 0.596710 0.496781 +0.733050 0.615102 0.489808 +0.722217 0.633367 0.482570 +0.710982 0.651495 0.475063 +0.699340 0.669473 0.467284 +0.687289 0.687289 0.459232 +0.669473 0.699340 0.467284 +0.651495 0.710982 0.475063 +0.633367 0.722217 0.482570 +0.615102 0.733050 0.489808 +0.596710 0.743485 0.496781 +0.578202 0.753528 0.503491 +0.559588 0.763182 0.509942 +0.540876 0.772452 0.516136 +0.522077 0.781343 0.522077 +0.503197 0.789860 0.527768 +0.484244 0.798009 0.533212 +0.465225 0.805793 0.538413 +0.446146 0.813217 0.543375 +0.427015 0.820287 0.548099 +0.407835 0.827007 0.552589 +0.388612 0.833382 0.556848 +0.369352 0.839416 0.560880 +0.350057 0.845112 0.564686 +0.330732 0.850476 0.568270 +0.311381 0.855512 0.571635 +0.292006 0.860222 0.574782 +0.272611 0.864612 0.577715 +0.253198 0.868683 0.580436 +0.233770 0.872440 0.582946 +0.214328 0.875885 0.585247 +0.194874 0.879021 0.587343 +0.175411 0.881850 0.589234 +0.155939 0.884376 0.590921 +0.136461 0.886599 0.592407 +0.116976 0.888522 0.593692 +0.097487 0.890147 0.594777 +0.077994 0.891474 0.595664 +0.058498 0.892505 0.596353 +0.039000 0.893241 0.596845 +0.019500 0.893683 0.597140 +0.000000 0.893830 0.597238 +0.906646 0.000000 0.577597 +0.906492 0.019780 0.577499 +0.906032 0.039558 0.577206 +0.905264 0.059334 0.576717 +0.904188 0.079106 0.576031 +0.902803 0.098873 0.575149 +0.901108 0.118633 0.574069 +0.899102 0.138385 0.572791 +0.896784 0.158127 0.571314 +0.894151 0.177858 0.569637 +0.891202 0.197575 0.567758 +0.887934 0.217276 0.565676 +0.884345 0.236960 0.563390 +0.880433 0.256623 0.560898 +0.876195 0.276263 0.558198 +0.871628 0.295878 0.555288 +0.866729 0.315464 0.552167 +0.861494 0.335017 0.548832 +0.855920 0.354534 0.545281 +0.850004 0.374010 0.541512 +0.843740 0.393443 0.537522 +0.837127 0.412825 0.533309 +0.830159 0.432154 0.528870 +0.822833 0.451422 0.524203 +0.815145 0.470624 0.519304 +0.807089 0.489754 0.514173 +0.798662 0.508804 0.508804 +0.789860 0.527768 0.503197 +0.780679 0.546637 0.497347 +0.771113 0.565403 0.491253 +0.761159 0.584058 0.484912 +0.750812 0.602591 0.478320 +0.740070 0.620992 0.471477 +0.728927 0.639252 0.464378 +0.717381 0.657359 0.457022 +0.705428 0.675300 0.449407 +0.693064 0.693064 0.441531 +0.675300 0.705428 0.449407 +0.657359 0.717381 0.457022 +0.639252 0.728927 0.464378 +0.620992 0.740070 0.471477 +0.602591 0.750812 0.478320 +0.584058 0.761159 0.484912 +0.565403 0.771113 0.491253 +0.546637 0.780679 0.497347 +0.527768 0.789860 0.503197 +0.508804 0.798662 0.508804 +0.489754 0.807089 0.514173 +0.470624 0.815145 0.519304 +0.451422 0.822833 0.524203 +0.432154 0.830159 0.528870 +0.412825 0.837127 0.533309 +0.393443 0.843740 0.537522 +0.374010 0.850004 0.541512 +0.354534 0.855920 0.545281 +0.335017 0.861494 0.548832 +0.315464 0.866729 0.552167 +0.295878 0.871628 0.555288 +0.276263 0.876195 0.558198 +0.256623 0.880433 0.560898 +0.236960 0.884345 0.563390 +0.217276 0.887934 0.565676 +0.197575 0.891202 0.567758 +0.177858 0.894151 0.569637 +0.158127 0.896784 0.571314 +0.138385 0.899102 0.572791 +0.118633 0.901108 0.574069 +0.098873 0.902803 0.575149 +0.079106 0.904188 0.576031 +0.059334 0.905264 0.576717 +0.039558 0.906032 0.577206 +0.019780 0.906492 0.577499 +0.000000 0.906646 0.577597 +0.919030 0.000000 0.557681 +0.918870 0.020050 0.557584 +0.918391 0.040098 0.557293 +0.917591 0.060142 0.556808 +0.916470 0.080181 0.556128 +0.915028 0.100212 0.555253 +0.913264 0.120233 0.554182 +0.911176 0.140243 0.552915 +0.908763 0.160239 0.551451 +0.906023 0.180219 0.549789 +0.902956 0.200180 0.547927 +0.899557 0.220120 0.545865 +0.895827 0.240036 0.543601 +0.891761 0.259925 0.541134 +0.887358 0.279783 0.538462 +0.882615 0.299608 0.535584 +0.877529 0.319395 0.532498 +0.872098 0.339140 0.529202 +0.866317 0.358840 0.525694 +0.860183 0.378490 0.521972 +0.853694 0.398084 0.518034 +0.846846 0.417618 0.513879 +0.839635 0.437086 0.509503 +0.832058 0.456482 0.504905 +0.824110 0.475800 0.500082 +0.815788 0.495033 0.495033 +0.807089 0.514173 0.489754 +0.798009 0.533212 0.484244 +0.788543 0.552144 0.478500 +0.778689 0.570958 0.472520 +0.768443 0.589647 0.466302 +0.757801 0.608199 0.459845 +0.746760 0.626606 0.453145 +0.735317 0.644856 0.446201 +0.723469 0.662937 0.439012 +0.711214 0.680839 0.431575 +0.698549 0.698549 0.423890 +0.680839 0.711214 0.431575 +0.662937 0.723469 0.439012 +0.644856 0.735317 0.446201 +0.626606 0.746760 0.453145 +0.608199 0.757801 0.459845 +0.589647 0.768443 0.466302 +0.570958 0.778689 0.472520 +0.552144 0.788543 0.478500 +0.533212 0.798009 0.484244 +0.514173 0.807089 0.489754 +0.495033 0.815788 0.495033 +0.475800 0.824110 0.500082 +0.456482 0.832058 0.504905 +0.437086 0.839635 0.509503 +0.417618 0.846846 0.513879 +0.398084 0.853694 0.518034 +0.378490 0.860183 0.521972 +0.358840 0.866317 0.525694 +0.339140 0.872098 0.529202 +0.319395 0.877529 0.532498 +0.299608 0.882615 0.535584 +0.279783 0.887358 0.538462 +0.259925 0.891761 0.541134 +0.240036 0.895827 0.543601 +0.220120 0.899557 0.545865 +0.200180 0.902956 0.547927 +0.180219 0.906023 0.549789 +0.160239 0.908763 0.551451 +0.140243 0.911176 0.552915 +0.120233 0.913264 0.554182 +0.100212 0.915028 0.555253 +0.080181 0.916470 0.556128 +0.060142 0.917591 0.556808 +0.040098 0.918391 0.557293 +0.020050 0.918870 0.557584 +0.000000 0.919030 0.557681 +0.930977 0.000000 0.537500 +0.930811 0.020310 0.537404 +0.930313 0.040618 0.537116 +0.929481 0.060921 0.536636 +0.928317 0.081217 0.535964 +0.926818 0.101503 0.535099 +0.924985 0.121777 0.534040 +0.922815 0.142035 0.532788 +0.920309 0.162275 0.531341 +0.917464 0.182495 0.529698 +0.914279 0.202691 0.527859 +0.910752 0.222860 0.525823 +0.906881 0.242998 0.523588 +0.902664 0.263102 0.521153 +0.898098 0.283169 0.518517 +0.893182 0.303194 0.515679 +0.887912 0.323174 0.512636 +0.882286 0.343102 0.509388 +0.876302 0.362976 0.505933 +0.869956 0.382790 0.502269 +0.863245 0.402538 0.498395 +0.856166 0.422214 0.494308 +0.848716 0.441814 0.490007 +0.840892 0.461329 0.485489 +0.832691 0.480755 0.480755 +0.824110 0.500082 0.475800 +0.815145 0.519304 0.470624 +0.805793 0.538413 0.465225 +0.796051 0.557401 0.459600 +0.785916 0.576258 0.453749 +0.775386 0.594974 0.447669 +0.764457 0.613541 0.441359 +0.753127 0.631948 0.434818 +0.741393 0.650184 0.428044 +0.729254 0.668238 0.421035 +0.716708 0.686099 0.413792 +0.703753 0.703753 0.406312 +0.686099 0.716708 0.413792 +0.668238 0.729254 0.421035 +0.650184 0.741393 0.428044 +0.631948 0.753127 0.434818 +0.613541 0.764457 0.441359 +0.594974 0.775386 0.447669 +0.576258 0.785916 0.453749 +0.557401 0.796051 0.459600 +0.538413 0.805793 0.465225 +0.519304 0.815145 0.470624 +0.500082 0.824110 0.475800 +0.480755 0.832691 0.480755 +0.461329 0.840892 0.485489 +0.441814 0.848716 0.490007 +0.422214 0.856166 0.494308 +0.402538 0.863245 0.498395 +0.382790 0.869956 0.502269 +0.362976 0.876302 0.505933 +0.343102 0.882286 0.509388 +0.323174 0.887912 0.512636 +0.303194 0.893182 0.515679 +0.283169 0.898098 0.518517 +0.263102 0.902664 0.521153 +0.242998 0.906881 0.523588 +0.222860 0.910752 0.525823 +0.202691 0.914279 0.527859 +0.182495 0.917464 0.529698 +0.162275 0.920309 0.531341 +0.142035 0.922815 0.532788 +0.121777 0.924985 0.534040 +0.101503 0.926818 0.535099 +0.081217 0.928317 0.535964 +0.060921 0.929481 0.536636 +0.040618 0.930313 0.537116 +0.020310 0.930811 0.537404 +0.000000 0.930977 0.537500 +0.942481 0.000000 0.517063 +0.942309 0.020561 0.516968 +0.941792 0.041120 0.516685 +0.940929 0.061672 0.516211 +0.939721 0.082215 0.515549 +0.938167 0.102746 0.514696 +0.936265 0.123262 0.513653 +0.934016 0.143759 0.512419 +0.931417 0.164234 0.510993 +0.928468 0.184684 0.509375 +0.925168 0.205105 0.507564 +0.921514 0.225493 0.505560 +0.917504 0.245845 0.503360 +0.913138 0.266155 0.500965 +0.908412 0.286421 0.498372 +0.903326 0.306638 0.495581 +0.897876 0.326800 0.492591 +0.892060 0.346903 0.489401 +0.885875 0.366942 0.486008 +0.879320 0.386910 0.482412 +0.872392 0.406803 0.478611 +0.865088 0.426614 0.474603 +0.857405 0.446337 0.470388 +0.849341 0.465964 0.465964 +0.840892 0.485489 0.461329 +0.832058 0.504905 0.456482 +0.822833 0.524203 0.451422 +0.813217 0.543375 0.446146 +0.803207 0.562412 0.440655 +0.792800 0.581305 0.434945 +0.781994 0.600045 0.429017 +0.770788 0.618622 0.422869 +0.759178 0.637026 0.416499 +0.747164 0.655245 0.409908 +0.734744 0.673269 0.403094 +0.721917 0.691085 0.396057 +0.708683 0.708683 0.388797 +0.691085 0.721917 0.396057 +0.673269 0.734744 0.403094 +0.655245 0.747164 0.409908 +0.637026 0.759178 0.416499 +0.618622 0.770788 0.422869 +0.600045 0.781994 0.429017 +0.581305 0.792800 0.434945 +0.562412 0.803207 0.440655 +0.543375 0.813217 0.446146 +0.524203 0.822833 0.451422 +0.504905 0.832058 0.456482 +0.485489 0.840892 0.461329 +0.465964 0.849341 0.465964 +0.446337 0.857405 0.470388 +0.426614 0.865088 0.474603 +0.406803 0.872392 0.478611 +0.386910 0.879320 0.482412 +0.366942 0.885875 0.486008 +0.346903 0.892060 0.489401 +0.326800 0.897876 0.492591 +0.306638 0.903326 0.495581 +0.286421 0.908412 0.498372 +0.266155 0.913138 0.500965 +0.245845 0.917504 0.503360 +0.225493 0.921514 0.505560 +0.205105 0.925168 0.507564 +0.184684 0.928468 0.509375 +0.164234 0.931417 0.510993 +0.143759 0.934016 0.512419 +0.123262 0.936265 0.513653 +0.102746 0.938167 0.514696 +0.082215 0.939721 0.515549 +0.061672 0.940929 0.516211 +0.041120 0.941792 0.516685 +0.020561 0.942309 0.516968 +0.000000 0.942481 0.517063 +0.953537 0.000000 0.496380 +0.953358 0.020802 0.496287 +0.952822 0.041601 0.496008 +0.951929 0.062393 0.495543 +0.950678 0.083174 0.494892 +0.949069 0.103940 0.494054 +0.947101 0.124688 0.493029 +0.944773 0.145414 0.491817 +0.942084 0.166115 0.490418 +0.939033 0.186785 0.488829 +0.935618 0.207422 0.487052 +0.931839 0.228020 0.485085 +0.927694 0.248575 0.482927 +0.923182 0.269083 0.480578 +0.918299 0.289539 0.478036 +0.913046 0.309937 0.475301 +0.907419 0.330273 0.472372 +0.901417 0.350542 0.469248 +0.895037 0.370737 0.465927 +0.888278 0.390852 0.462408 +0.881138 0.410881 0.458691 +0.873614 0.430819 0.454774 +0.865703 0.450657 0.450657 +0.857405 0.470388 0.446337 +0.848716 0.490007 0.441814 +0.839635 0.509503 0.437086 +0.830159 0.528870 0.432154 +0.820287 0.548099 0.427015 +0.810017 0.567180 0.421668 +0.799347 0.586105 0.416114 +0.788275 0.604864 0.410350 +0.776800 0.623448 0.404376 +0.764921 0.641845 0.398192 +0.752636 0.660044 0.391798 +0.739946 0.678036 0.385192 +0.726850 0.695807 0.378374 +0.713347 0.713347 0.371345 +0.695807 0.726850 0.378374 +0.678036 0.739946 0.385192 +0.660044 0.752636 0.391798 +0.641845 0.764921 0.398192 +0.623448 0.776800 0.404376 +0.604864 0.788275 0.410350 +0.586105 0.799347 0.416114 +0.567180 0.810017 0.421668 +0.548099 0.820287 0.427015 +0.528870 0.830159 0.432154 +0.509503 0.839635 0.437086 +0.490007 0.848716 0.441814 +0.470388 0.857405 0.446337 +0.450657 0.865703 0.450657 +0.430819 0.873614 0.454774 +0.410881 0.881138 0.458691 +0.390852 0.888278 0.462408 +0.370737 0.895037 0.465927 +0.350542 0.901417 0.469248 +0.330273 0.907419 0.472372 +0.309937 0.913046 0.475301 +0.289539 0.918299 0.478036 +0.269083 0.923182 0.480578 +0.248575 0.927694 0.482927 +0.228020 0.931839 0.485085 +0.207422 0.935618 0.487052 +0.186785 0.939033 0.488829 +0.166115 0.942084 0.490418 +0.145414 0.944773 0.491817 +0.124688 0.947101 0.493029 +0.103940 0.949069 0.494054 +0.083174 0.950678 0.494892 +0.062393 0.951929 0.495543 +0.041601 0.952822 0.496008 +0.020802 0.953358 0.496287 +0.000000 0.953537 0.496380 +0.964138 0.000000 0.475460 +0.963954 0.021034 0.475369 +0.963400 0.042063 0.475096 +0.962477 0.063084 0.474641 +0.961184 0.084093 0.474003 +0.959521 0.105085 0.473183 +0.957487 0.126056 0.472180 +0.955081 0.147001 0.470994 +0.952304 0.167917 0.469624 +0.949153 0.188798 0.468070 +0.945627 0.209640 0.466332 +0.941726 0.230439 0.464408 +0.937448 0.251189 0.462298 +0.932792 0.271884 0.460002 +0.927757 0.292521 0.457519 +0.922340 0.313092 0.454848 +0.916541 0.333594 0.451988 +0.910357 0.354019 0.448938 +0.903787 0.374361 0.445699 +0.896830 0.394615 0.442268 +0.889483 0.414773 0.438644 +0.881745 0.434828 0.434828 +0.873614 0.454774 0.430819 +0.865088 0.474603 0.426614 +0.856166 0.494308 0.422214 +0.846846 0.513879 0.417618 +0.837127 0.533309 0.412825 +0.827007 0.552589 0.407835 +0.816486 0.571710 0.402646 +0.805561 0.590662 0.397259 +0.794233 0.609436 0.391672 +0.782499 0.628022 0.385886 +0.770361 0.646409 0.379900 +0.757817 0.664588 0.373714 +0.744867 0.682545 0.367328 +0.731513 0.700271 0.360742 +0.717753 0.717753 0.353957 +0.700271 0.731513 0.360742 +0.682545 0.744867 0.367328 +0.664588 0.757817 0.373714 +0.646409 0.770361 0.379900 +0.628022 0.782499 0.385886 +0.609436 0.794233 0.391672 +0.590662 0.805561 0.397259 +0.571710 0.816486 0.402646 +0.552589 0.827007 0.407835 +0.533309 0.837127 0.412825 +0.513879 0.846846 0.417618 +0.494308 0.856166 0.422214 +0.474603 0.865088 0.426614 +0.454774 0.873614 0.430819 +0.434828 0.881745 0.434828 +0.414773 0.889483 0.438644 +0.394615 0.896830 0.442268 +0.374361 0.903787 0.445699 +0.354019 0.910357 0.448938 +0.333594 0.916541 0.451988 +0.313092 0.922340 0.454848 +0.292521 0.927757 0.457519 +0.271884 0.932792 0.460002 +0.251189 0.937448 0.462298 +0.230439 0.941726 0.464408 +0.209640 0.945627 0.466332 +0.188798 0.949153 0.468070 +0.167917 0.952304 0.469624 +0.147001 0.955081 0.470994 +0.126056 0.957487 0.472180 +0.105085 0.959521 0.473183 +0.084093 0.961184 0.474003 +0.063084 0.962477 0.474641 +0.042063 0.963400 0.475096 +0.021034 0.963954 0.475369 +0.000000 0.964138 0.475460 +0.974281 0.000000 0.454315 +0.974090 0.021255 0.454226 +0.973519 0.042505 0.453959 +0.972566 0.063745 0.453515 +0.971233 0.084972 0.452893 +0.969517 0.106179 0.452093 +0.967419 0.127363 0.451115 +0.964938 0.148518 0.449958 +0.962074 0.169640 0.448622 +0.958825 0.190722 0.447107 +0.955191 0.211761 0.445413 +0.951171 0.232750 0.443538 +0.946764 0.253685 0.441483 +0.941968 0.274559 0.439247 +0.936784 0.295367 0.436829 +0.931208 0.316103 0.434230 +0.925241 0.336760 0.431447 +0.918881 0.357333 0.428481 +0.912126 0.377815 0.425331 +0.904976 0.398199 0.421997 +0.897428 0.418478 0.418478 +0.889483 0.438644 0.414773 +0.881138 0.458691 0.410881 +0.872392 0.478611 0.406803 +0.863245 0.498395 0.402538 +0.853694 0.518034 0.398084 +0.843740 0.537522 0.393443 +0.833382 0.556848 0.388612 +0.822618 0.576004 0.383593 +0.811449 0.594979 0.378385 +0.799874 0.613765 0.372987 +0.787893 0.632351 0.367400 +0.775505 0.650726 0.361624 +0.762712 0.668881 0.355659 +0.749515 0.686804 0.349504 +0.735913 0.704483 0.343162 +0.721909 0.721909 0.336632 +0.704483 0.735913 0.343162 +0.686804 0.749515 0.349504 +0.668881 0.762712 0.355659 +0.650726 0.775505 0.361624 +0.632351 0.787893 0.367400 +0.613765 0.799874 0.372987 +0.594979 0.811449 0.378385 +0.576004 0.822618 0.383593 +0.556848 0.833382 0.388612 +0.537522 0.843740 0.393443 +0.518034 0.853694 0.398084 +0.498395 0.863245 0.402538 +0.478611 0.872392 0.406803 +0.458691 0.881138 0.410881 +0.438644 0.889483 0.414773 +0.418478 0.897428 0.418478 +0.398199 0.904976 0.421997 +0.377815 0.912126 0.425331 +0.357333 0.918881 0.428481 +0.336760 0.925241 0.431447 +0.316103 0.931208 0.434230 +0.295367 0.936784 0.436829 +0.274559 0.941968 0.439247 +0.253685 0.946764 0.441483 +0.232750 0.951171 0.443538 +0.211761 0.955191 0.445413 +0.190722 0.958825 0.447107 +0.169640 0.962074 0.448622 +0.148518 0.964938 0.449958 +0.127363 0.967419 0.451115 +0.106179 0.969517 0.452093 +0.084972 0.971233 0.452893 +0.063745 0.972566 0.453515 +0.042505 0.973519 0.453959 +0.021255 0.974090 0.454226 +0.000000 0.974281 0.454315 +0.983960 0.000000 0.432953 +0.983764 0.021466 0.432866 +0.983175 0.042926 0.432607 +0.982194 0.064376 0.432176 +0.980820 0.085811 0.431571 +0.979053 0.107224 0.430794 +0.976893 0.128610 0.429843 +0.974338 0.149965 0.428719 +0.971390 0.171282 0.427422 +0.968046 0.192556 0.425950 +0.964307 0.213782 0.424305 +0.960171 0.234952 0.422485 +0.955638 0.256062 0.420491 +0.950707 0.277106 0.418321 +0.945378 0.298076 0.415976 +0.939649 0.318968 0.413455 +0.933519 0.339773 0.410758 +0.926987 0.360486 0.407884 +0.920054 0.381099 0.404833 +0.912717 0.401605 0.401605 +0.904976 0.421997 0.398199 +0.896830 0.442268 0.394615 +0.888278 0.462408 0.390852 +0.879320 0.482412 0.386910 +0.869956 0.502269 0.382790 +0.860183 0.521972 0.378490 +0.850004 0.541512 0.374010 +0.839416 0.560880 0.369352 +0.828420 0.580066 0.364513 +0.817016 0.599061 0.359495 +0.805204 0.617855 0.354298 +0.792985 0.636438 0.348922 +0.780360 0.654800 0.343367 +0.767329 0.672930 0.337633 +0.753895 0.690817 0.331722 +0.740058 0.708451 0.325633 +0.725820 0.725820 0.319368 +0.708451 0.740058 0.325633 +0.690817 0.753895 0.331722 +0.672930 0.767329 0.337633 +0.654800 0.780360 0.343367 +0.636438 0.792985 0.348922 +0.617855 0.805204 0.354298 +0.599061 0.817016 0.359495 +0.580066 0.828420 0.364513 +0.560880 0.839416 0.369352 +0.541512 0.850004 0.374010 +0.521972 0.860183 0.378490 +0.502269 0.869956 0.382790 +0.482412 0.879320 0.386910 +0.462408 0.888278 0.390852 +0.442268 0.896830 0.394615 +0.421997 0.904976 0.398199 +0.401605 0.912717 0.401605 +0.381099 0.920054 0.404833 +0.360486 0.926987 0.407884 +0.339773 0.933519 0.410758 +0.318968 0.939649 0.413455 +0.298076 0.945378 0.415976 +0.277106 0.950707 0.418321 +0.256062 0.955638 0.420491 +0.234952 0.960171 0.422485 +0.213782 0.964307 0.424305 +0.192556 0.968046 0.425950 +0.171282 0.971390 0.427422 +0.149965 0.974338 0.428719 +0.128610 0.976893 0.429843 +0.107224 0.979053 0.430794 +0.085811 0.980820 0.431571 +0.064376 0.982194 0.432176 +0.042926 0.983175 0.432607 +0.021466 0.983764 0.432866 +0.000000 0.983960 0.432953 +0.993170 0.000000 0.411385 +0.992969 0.021667 0.411301 +0.992363 0.043328 0.411050 +0.991355 0.064977 0.410633 +0.989942 0.086609 0.410047 +0.988125 0.108217 0.409295 +0.985904 0.129797 0.408375 +0.983279 0.151341 0.407288 +0.980249 0.172844 0.406032 +0.976813 0.194300 0.404609 +0.972972 0.215703 0.403018 +0.968724 0.237045 0.401259 +0.964069 0.258322 0.399331 +0.959008 0.279525 0.397234 +0.953538 0.300649 0.394968 +0.947660 0.321687 0.392534 +0.941373 0.342632 0.389930 +0.934677 0.363476 0.387156 +0.927570 0.384212 0.384212 +0.920054 0.404833 0.381099 +0.912126 0.425331 0.377815 +0.903787 0.445699 0.374361 +0.895037 0.465927 0.370737 +0.885875 0.486008 0.366942 +0.876302 0.505933 0.362976 +0.866317 0.525694 0.358840 +0.855920 0.545281 0.354534 +0.845112 0.564686 0.350057 +0.833894 0.583899 0.345410 +0.822266 0.602910 0.340594 +0.810228 0.621710 0.335607 +0.797783 0.640288 0.330452 +0.784931 0.658635 0.325129 +0.771674 0.676740 0.319638 +0.758014 0.694591 0.313980 +0.743953 0.712180 0.308155 +0.729493 0.729493 0.302166 +0.712180 0.743953 0.308155 +0.694591 0.758014 0.313980 +0.676740 0.771674 0.319638 +0.658635 0.784931 0.325129 +0.640288 0.797783 0.330452 +0.621710 0.810228 0.335607 +0.602910 0.822266 0.340594 +0.583899 0.833894 0.345410 +0.564686 0.845112 0.350057 +0.545281 0.855920 0.354534 +0.525694 0.866317 0.358840 +0.505933 0.876302 0.362976 +0.486008 0.885875 0.366942 +0.465927 0.895037 0.370737 +0.445699 0.903787 0.374361 +0.425331 0.912126 0.377815 +0.404833 0.920054 0.381099 +0.384212 0.927570 0.384212 +0.363476 0.934677 0.387156 +0.342632 0.941373 0.389930 +0.321687 0.947660 0.392534 +0.300649 0.953538 0.394968 +0.279525 0.959008 0.397234 +0.258322 0.964069 0.399331 +0.237045 0.968724 0.401259 +0.215703 0.972972 0.403018 +0.194300 0.976813 0.404609 +0.172844 0.980249 0.406032 +0.151341 0.983279 0.407288 +0.129797 0.985904 0.408375 +0.108217 0.988125 0.409295 +0.086609 0.989942 0.410047 +0.064977 0.991355 0.410633 +0.043328 0.992363 0.411050 +0.021667 0.992969 0.411301 +0.000000 0.993170 0.411385 +1.001908 0.000000 0.389621 +1.001701 0.021857 0.389540 +1.001080 0.043708 0.389299 +1.000044 0.065546 0.388896 +0.998594 0.087366 0.388332 +0.996730 0.109160 0.387607 +0.994450 0.130922 0.386721 +0.991756 0.152646 0.385673 +0.988647 0.174325 0.384464 +0.985123 0.195953 0.383093 +0.981183 0.217523 0.381561 +0.976827 0.239028 0.379867 +0.972056 0.260461 0.378012 +0.966868 0.281816 0.375994 +0.961263 0.303085 0.373815 +0.955242 0.324261 0.371473 +0.948804 0.345336 0.368970 +0.941949 0.366304 0.366304 +0.934677 0.387156 0.363476 +0.926987 0.407884 0.360486 +0.918881 0.428481 0.357333 +0.910357 0.448938 0.354019 +0.901417 0.469248 0.350542 +0.892060 0.489401 0.346903 +0.882286 0.509388 0.343102 +0.872098 0.529202 0.339140 +0.861494 0.548832 0.335017 +0.850476 0.568270 0.330732 +0.839046 0.587506 0.326287 +0.827204 0.606531 0.321682 +0.814951 0.625334 0.316917 +0.802290 0.643906 0.311994 +0.789223 0.662237 0.306912 +0.775751 0.680315 0.301673 +0.761877 0.698132 0.296278 +0.747604 0.715675 0.290727 +0.732935 0.732935 0.285023 +0.715675 0.747604 0.290727 +0.698132 0.761877 0.296278 +0.680315 0.775751 0.301673 +0.662237 0.789223 0.306912 +0.643906 0.802290 0.311994 +0.625334 0.814951 0.316917 +0.606531 0.827204 0.321682 +0.587506 0.839046 0.326287 +0.568270 0.850476 0.330732 +0.548832 0.861494 0.335017 +0.529202 0.872098 0.339140 +0.509388 0.882286 0.343102 +0.489401 0.892060 0.346903 +0.469248 0.901417 0.350542 +0.448938 0.910357 0.354019 +0.428481 0.918881 0.357333 +0.407884 0.926987 0.360486 +0.387156 0.934677 0.363476 +0.366304 0.941949 0.366304 +0.345336 0.948804 0.368970 +0.324261 0.955242 0.371473 +0.303085 0.961263 0.373815 +0.281816 0.966868 0.375994 +0.260461 0.972056 0.378012 +0.239028 0.976827 0.379867 +0.217523 0.981183 0.381561 +0.195953 0.985123 0.383093 +0.174325 0.988647 0.384464 +0.152646 0.991756 0.385673 +0.130922 0.994450 0.386721 +0.109160 0.996730 0.387607 +0.087366 0.998594 0.388332 +0.065546 1.000044 0.388896 +0.043708 1.001080 0.389299 +0.021857 1.001701 0.389540 +0.000000 1.001908 0.389621 +1.010170 0.000000 0.367672 +1.009957 0.022037 0.367594 +1.009320 0.044068 0.367363 +1.008259 0.066085 0.366976 +1.006773 0.088081 0.366435 +1.004862 0.110050 0.365740 +1.002527 0.131985 0.364890 +0.999767 0.153879 0.363885 +0.996582 0.175724 0.362726 +0.992972 0.197514 0.361412 +0.988938 0.219242 0.359944 +0.984479 0.240900 0.358321 +0.979594 0.262482 0.356543 +0.974286 0.283978 0.354611 +0.968552 0.305383 0.352524 +0.962394 0.326689 0.350283 +0.955811 0.347887 0.347887 +0.948804 0.368970 0.345336 +0.941373 0.389930 0.342632 +0.933519 0.410758 0.339773 +0.925241 0.431447 0.336760 +0.916541 0.451988 0.333594 +0.907419 0.472372 0.330273 +0.897876 0.492591 0.326800 +0.887912 0.512636 0.323174 +0.877529 0.532498 0.319395 +0.866729 0.552167 0.315464 +0.855512 0.571635 0.311381 +0.843880 0.590891 0.307147 +0.831835 0.609927 0.302763 +0.819379 0.628731 0.298229 +0.806513 0.647295 0.293547 +0.793242 0.665609 0.288716 +0.779567 0.683662 0.283739 +0.765491 0.701443 0.278616 +0.751017 0.718943 0.273348 +0.736150 0.736150 0.267937 +0.718943 0.751017 0.273348 +0.701443 0.765491 0.278616 +0.683662 0.779567 0.283739 +0.665609 0.793242 0.288716 +0.647295 0.806513 0.293547 +0.628731 0.819379 0.298229 +0.609927 0.831835 0.302763 +0.590891 0.843880 0.307147 +0.571635 0.855512 0.311381 +0.552167 0.866729 0.315464 +0.532498 0.877529 0.319395 +0.512636 0.887912 0.323174 +0.492591 0.897876 0.326800 +0.472372 0.907419 0.330273 +0.451988 0.916541 0.333594 +0.431447 0.925241 0.336760 +0.410758 0.933519 0.339773 +0.389930 0.941373 0.342632 +0.368970 0.948804 0.345336 +0.347887 0.955811 0.347887 +0.326689 0.962394 0.350283 +0.305383 0.968552 0.352524 +0.283978 0.974286 0.354611 +0.262482 0.979594 0.356543 +0.240900 0.984479 0.358321 +0.219242 0.988938 0.359944 +0.197514 0.992972 0.361412 +0.175724 0.996582 0.362726 +0.153879 0.999767 0.363885 +0.131985 1.002527 0.364890 +0.110050 1.004862 0.365740 +0.088081 1.006773 0.366435 +0.066085 1.008259 0.366976 +0.044068 1.009320 0.367363 +0.022037 1.009957 0.367594 +0.000000 1.010170 0.367672 +1.017950 0.000000 0.345547 +1.017733 0.022207 0.345474 +1.017081 0.044407 0.345252 +1.015995 0.066592 0.344884 +1.014474 0.088755 0.344368 +1.012520 0.110889 0.343704 +1.010131 0.132986 0.342893 +1.007307 0.155039 0.341935 +1.004050 0.177041 0.340829 +1.000359 0.198984 0.339576 +0.996234 0.220860 0.338176 +0.991676 0.242662 0.336629 +0.986685 0.264381 0.334934 +0.981260 0.286011 0.333093 +0.975403 0.307543 0.331105 +0.969114 0.328970 0.328970 +0.962394 0.350283 0.326689 +0.955242 0.371473 0.324261 +0.947660 0.392534 0.321687 +0.939649 0.413455 0.318968 +0.931208 0.434230 0.316103 +0.922340 0.454848 0.313092 +0.913046 0.475301 0.309937 +0.903326 0.495581 0.306638 +0.893182 0.515679 0.303194 +0.882615 0.535584 0.299608 +0.871628 0.555288 0.295878 +0.860222 0.574782 0.292006 +0.848400 0.594056 0.287993 +0.836163 0.613100 0.283839 +0.823514 0.631905 0.279545 +0.810456 0.650460 0.275113 +0.796992 0.668756 0.270542 +0.783126 0.686783 0.265835 +0.768860 0.704530 0.260993 +0.754198 0.721988 0.256016 +0.739145 0.739145 0.250906 +0.721988 0.754198 0.256016 +0.704530 0.768860 0.260993 +0.686783 0.783126 0.265835 +0.668756 0.796992 0.270542 +0.650460 0.810456 0.275113 +0.631905 0.823514 0.279545 +0.613100 0.836163 0.283839 +0.594056 0.848400 0.287993 +0.574782 0.860222 0.292006 +0.555288 0.871628 0.295878 +0.535584 0.882615 0.299608 +0.515679 0.893182 0.303194 +0.495581 0.903326 0.306638 +0.475301 0.913046 0.309937 +0.454848 0.922340 0.313092 +0.434230 0.931208 0.316103 +0.413455 0.939649 0.318968 +0.392534 0.947660 0.321687 +0.371473 0.955242 0.324261 +0.350283 0.962394 0.326689 +0.328970 0.969114 0.328970 +0.307543 0.975403 0.331105 +0.286011 0.981260 0.333093 +0.264381 0.986685 0.334934 +0.242662 0.991676 0.336629 +0.220860 0.996234 0.338176 +0.198984 1.000359 0.339576 +0.177041 1.004050 0.340829 +0.155039 1.007307 0.341935 +0.132986 1.010131 0.342893 +0.110889 1.012520 0.343704 +0.088755 1.014474 0.344368 +0.066592 1.015995 0.344884 +0.044407 1.017081 0.345252 +0.022207 1.017733 0.345474 +0.000000 1.017950 0.345547 +1.025246 0.000000 0.323259 +1.025024 0.022366 0.323189 +1.024358 0.044724 0.322979 +1.023249 0.067067 0.322629 +1.021695 0.089387 0.322139 +1.019699 0.111675 0.321510 +1.017258 0.133925 0.320740 +1.014375 0.156127 0.319831 +1.011049 0.178275 0.318783 +1.007281 0.200361 0.317594 +1.003070 0.222375 0.316267 +0.998418 0.244311 0.314800 +0.993324 0.266160 0.313194 +0.987790 0.287915 0.311449 +0.981816 0.309566 0.309566 +0.975403 0.331105 0.307543 +0.968552 0.352524 0.305383 +0.961263 0.373815 0.303085 +0.953538 0.394968 0.300649 +0.945378 0.415976 0.298076 +0.936784 0.436829 0.295367 +0.927757 0.457519 0.292521 +0.918299 0.478036 0.289539 +0.908412 0.498372 0.286421 +0.898098 0.518517 0.283169 +0.887358 0.538462 0.279783 +0.876195 0.558198 0.276263 +0.864612 0.577715 0.272611 +0.852610 0.597004 0.268827 +0.840193 0.616055 0.264912 +0.827363 0.634858 0.260866 +0.814124 0.653404 0.256692 +0.800479 0.671682 0.252390 +0.786433 0.689683 0.247961 +0.771989 0.707397 0.243407 +0.757151 0.724814 0.238729 +0.741924 0.741924 0.233928 +0.724814 0.757151 0.238729 +0.707397 0.771989 0.243407 +0.689683 0.786433 0.247961 +0.671682 0.800479 0.252390 +0.653404 0.814124 0.256692 +0.634858 0.827363 0.260866 +0.616055 0.840193 0.264912 +0.597004 0.852610 0.268827 +0.577715 0.864612 0.272611 +0.558198 0.876195 0.276263 +0.538462 0.887358 0.279783 +0.518517 0.898098 0.283169 +0.498372 0.908412 0.286421 +0.478036 0.918299 0.289539 +0.457519 0.927757 0.292521 +0.436829 0.936784 0.295367 +0.415976 0.945378 0.298076 +0.394968 0.953538 0.300649 +0.373815 0.961263 0.303085 +0.352524 0.968552 0.305383 +0.331105 0.975403 0.307543 +0.309566 0.981816 0.309566 +0.287915 0.987790 0.311449 +0.266160 0.993324 0.313194 +0.244311 0.998418 0.314800 +0.222375 1.003070 0.316267 +0.200361 1.007281 0.317594 +0.178275 1.011049 0.318783 +0.156127 1.014375 0.319831 +0.133925 1.017258 0.320740 +0.111675 1.019699 0.321510 +0.089387 1.021695 0.322139 +0.067067 1.023249 0.322629 +0.044724 1.024358 0.322979 +0.022366 1.025024 0.323189 +0.000000 1.025246 0.323259 +1.032054 0.000000 0.300816 +1.031827 0.022515 0.300750 +1.031148 0.045021 0.300552 +1.030016 0.067511 0.300222 +1.028432 0.089976 0.299761 +1.026396 0.112409 0.299167 +1.023907 0.134800 0.298442 +1.020968 0.157142 0.297585 +1.017576 0.179426 0.296596 +1.013735 0.201644 0.295477 +1.009443 0.223788 0.294226 +1.004702 0.245849 0.292844 +0.999512 0.267818 0.291331 +0.993875 0.289688 0.289688 +0.987790 0.311449 0.287915 +0.981260 0.333093 0.286011 +0.974286 0.354611 0.283978 +0.966868 0.375994 0.281816 +0.959008 0.397234 0.279525 +0.950707 0.418321 0.277106 +0.941968 0.439247 0.274559 +0.932792 0.460002 0.271884 +0.923182 0.480578 0.269083 +0.913138 0.500965 0.266155 +0.902664 0.521153 0.263102 +0.891761 0.541134 0.259925 +0.880433 0.560898 0.256623 +0.868683 0.580436 0.253198 +0.856513 0.599737 0.249651 +0.843927 0.618793 0.245982 +0.830928 0.637594 0.242193 +0.817520 0.656129 0.238285 +0.803707 0.674390 0.234259 +0.789493 0.692367 0.230116 +0.774883 0.710049 0.225858 +0.759881 0.727427 0.221485 +0.744492 0.744492 0.217000 +0.727427 0.759881 0.221485 +0.710049 0.774883 0.225858 +0.692367 0.789493 0.230116 +0.674390 0.803707 0.234259 +0.656129 0.817520 0.238285 +0.637594 0.830928 0.242193 +0.618793 0.843927 0.245982 +0.599737 0.856513 0.249651 +0.580436 0.868683 0.253198 +0.560898 0.880433 0.256623 +0.541134 0.891761 0.259925 +0.521153 0.902664 0.263102 +0.500965 0.913138 0.266155 +0.480578 0.923182 0.269083 +0.460002 0.932792 0.271884 +0.439247 0.941968 0.274559 +0.418321 0.950707 0.277106 +0.397234 0.959008 0.279525 +0.375994 0.966868 0.281816 +0.354611 0.974286 0.283978 +0.333093 0.981260 0.286011 +0.311449 0.987790 0.287915 +0.289688 0.993875 0.289688 +0.267818 0.999512 0.291331 +0.245849 1.004702 0.292844 +0.223788 1.009443 0.294226 +0.201644 1.013735 0.295477 +0.179426 1.017576 0.296596 +0.157142 1.020968 0.297585 +0.134800 1.023907 0.298442 +0.112409 1.026396 0.299167 +0.089976 1.028432 0.299761 +0.067511 1.030016 0.300222 +0.045021 1.031148 0.300552 +0.022515 1.031827 0.300750 +0.000000 1.032054 0.300816 +1.038370 0.000000 0.278230 +1.038140 0.022652 0.278169 +1.037448 0.045296 0.277983 +1.036296 0.067922 0.277675 +1.034682 0.090523 0.277242 +1.032609 0.113089 0.276687 +1.030075 0.135612 0.276008 +1.027082 0.158083 0.275206 +1.023629 0.180493 0.274281 +1.019719 0.202835 0.273233 +1.015351 0.225098 0.272063 +1.010527 0.247274 0.270770 +1.005247 0.269355 0.269355 +0.999512 0.291331 0.267818 +0.993324 0.313194 0.266160 +0.986685 0.334934 0.264381 +0.979594 0.356543 0.262482 +0.972056 0.378012 0.260461 +0.964069 0.399331 0.258322 +0.955638 0.420491 0.256062 +0.946764 0.441483 0.253685 +0.937448 0.462298 0.251189 +0.927694 0.482927 0.248575 +0.917504 0.503360 0.245845 +0.906881 0.523588 0.242998 +0.895827 0.543601 0.240036 +0.884345 0.563390 0.236960 +0.872440 0.582946 0.233770 +0.860114 0.602258 0.230467 +0.847370 0.621318 0.227052 +0.834214 0.640115 0.223527 +0.820649 0.658641 0.219892 +0.806680 0.676885 0.216149 +0.792310 0.694837 0.212299 +0.777546 0.712489 0.208343 +0.762391 0.729831 0.204282 +0.746853 0.746853 0.200119 +0.729831 0.762391 0.204282 +0.712489 0.777546 0.208343 +0.694837 0.792310 0.212299 +0.676885 0.806680 0.216149 +0.658641 0.820649 0.219892 +0.640115 0.834214 0.223527 +0.621318 0.847370 0.227052 +0.602258 0.860114 0.230467 +0.582946 0.872440 0.233770 +0.563390 0.884345 0.236960 +0.543601 0.895827 0.240036 +0.523588 0.906881 0.242998 +0.503360 0.917504 0.245845 +0.482927 0.927694 0.248575 +0.462298 0.937448 0.251189 +0.441483 0.946764 0.253685 +0.420491 0.955638 0.256062 +0.399331 0.964069 0.258322 +0.378012 0.972056 0.260461 +0.356543 0.979594 0.262482 +0.334934 0.986685 0.264381 +0.313194 0.993324 0.266160 +0.291331 0.999512 0.267818 +0.269355 1.005247 0.269355 +0.247274 1.010527 0.270770 +0.225098 1.015351 0.272063 +0.202835 1.019719 0.273233 +0.180493 1.023629 0.274281 +0.158083 1.027082 0.275206 +0.135612 1.030075 0.276008 +0.113089 1.032609 0.276687 +0.090523 1.034682 0.277242 +0.067922 1.036296 0.277675 +0.045296 1.037448 0.277983 +0.022652 1.038140 0.278169 +0.000000 1.038370 0.278230 +1.044193 0.000000 0.255512 +1.043958 0.022779 0.255455 +1.043255 0.045549 0.255283 +1.042083 0.068302 0.254996 +1.040443 0.091027 0.254595 +1.038334 0.113716 0.254079 +1.035758 0.136360 0.253448 +1.032715 0.158950 0.252704 +1.029206 0.181477 0.251845 +1.025232 0.203931 0.250873 +1.020793 0.226304 0.249786 +1.015891 0.248587 0.248587 +1.010527 0.270770 0.247274 +1.004702 0.292844 0.245849 +0.998418 0.314800 0.244311 +0.991676 0.336629 0.242662 +0.984479 0.358321 0.240900 +0.976827 0.379867 0.239028 +0.968724 0.401259 0.237045 +0.960171 0.422485 0.234952 +0.951171 0.443538 0.232750 +0.941726 0.464408 0.230439 +0.931839 0.485085 0.228020 +0.921514 0.505560 0.225493 +0.910752 0.525823 0.222860 +0.899557 0.545865 0.220120 +0.887934 0.565676 0.217276 +0.875885 0.585247 0.214328 +0.863414 0.604569 0.211276 +0.850526 0.623631 0.208122 +0.837224 0.642425 0.204867 +0.823514 0.660940 0.201513 +0.809400 0.679168 0.198059 +0.794888 0.697098 0.194508 +0.779981 0.714721 0.190860 +0.764687 0.732029 0.187118 +0.749010 0.749010 0.183282 +0.732029 0.764687 0.187118 +0.714721 0.779981 0.190860 +0.697098 0.794888 0.194508 +0.679168 0.809400 0.198059 +0.660940 0.823514 0.201513 +0.642425 0.837224 0.204867 +0.623631 0.850526 0.208122 +0.604569 0.863414 0.211276 +0.585247 0.875885 0.214328 +0.565676 0.887934 0.217276 +0.545865 0.899557 0.220120 +0.525823 0.910752 0.222860 +0.505560 0.921514 0.225493 +0.485085 0.931839 0.228020 +0.464408 0.941726 0.230439 +0.443538 0.951171 0.232750 +0.422485 0.960171 0.234952 +0.401259 0.968724 0.237045 +0.379867 0.976827 0.239028 +0.358321 0.984479 0.240900 +0.336629 0.991676 0.242662 +0.314800 0.998418 0.244311 +0.292844 1.004702 0.245849 +0.270770 1.010527 0.247274 +0.248587 1.015891 0.248587 +0.226304 1.020793 0.249786 +0.203931 1.025232 0.250873 +0.181477 1.029206 0.251845 +0.158950 1.032715 0.252704 +0.136360 1.035758 0.253448 +0.113716 1.038334 0.254079 +0.091027 1.040443 0.254595 +0.068302 1.042083 0.254996 +0.045549 1.043255 0.255283 +0.022779 1.043958 0.255455 +0.000000 1.044193 0.255512 +1.049518 0.000000 0.232673 +1.049280 0.022895 0.232620 +1.048566 0.045781 0.232461 +1.047376 0.068649 0.232198 +1.045711 0.091488 0.231828 +1.043570 0.114289 0.231354 +1.040955 0.137044 0.230774 +1.037866 0.159743 0.230089 +1.034304 0.182376 0.229300 +1.030271 0.204934 0.228406 +1.025767 0.227407 0.227407 +1.020793 0.249786 0.226304 +1.015351 0.272063 0.225098 +1.009443 0.294226 0.223788 +1.003070 0.316267 0.222375 +0.996234 0.338176 0.220860 +0.988938 0.359944 0.219242 +0.981183 0.381561 0.217523 +0.972972 0.403018 0.215703 +0.964307 0.424305 0.213782 +0.955191 0.445413 0.211761 +0.945627 0.466332 0.209640 +0.935618 0.487052 0.207422 +0.925168 0.507564 0.205105 +0.914279 0.527859 0.202691 +0.902956 0.547927 0.200180 +0.891202 0.567758 0.197575 +0.879021 0.587343 0.194874 +0.866417 0.606672 0.192080 +0.853396 0.625736 0.189193 +0.839962 0.644525 0.186215 +0.826119 0.663031 0.183146 +0.811873 0.681242 0.179988 +0.797229 0.699151 0.176742 +0.782193 0.716748 0.173408 +0.766771 0.734024 0.169989 +0.750969 0.750969 0.166486 +0.734024 0.766771 0.169989 +0.716748 0.782193 0.173408 +0.699151 0.797229 0.176742 +0.681242 0.811873 0.179988 +0.663031 0.826119 0.183146 +0.644525 0.839962 0.186215 +0.625736 0.853396 0.189193 +0.606672 0.866417 0.192080 +0.587343 0.879021 0.194874 +0.567758 0.891202 0.197575 +0.547927 0.902956 0.200180 +0.527859 0.914279 0.202691 +0.507564 0.925168 0.205105 +0.487052 0.935618 0.207422 +0.466332 0.945627 0.209640 +0.445413 0.955191 0.211761 +0.424305 0.964307 0.213782 +0.403018 0.972972 0.215703 +0.381561 0.981183 0.217523 +0.359944 0.988938 0.219242 +0.338176 0.996234 0.220860 +0.316267 1.003070 0.222375 +0.294226 1.009443 0.223788 +0.272063 1.015351 0.225098 +0.249786 1.020793 0.226304 +0.227407 1.025767 0.227407 +0.204934 1.030271 0.228406 +0.182376 1.034304 0.229300 +0.159743 1.037866 0.230089 +0.137044 1.040955 0.230774 +0.114289 1.043570 0.231354 +0.091488 1.045711 0.231828 +0.068649 1.047376 0.232198 +0.045781 1.048566 0.232461 +0.022895 1.049280 0.232620 +0.000000 1.049518 0.232673 +1.054344 0.000000 0.209722 +1.054103 0.023001 0.209674 +1.053379 0.045992 0.209530 +1.052172 0.068963 0.209290 +1.050484 0.091905 0.208954 +1.048314 0.114809 0.208523 +1.045663 0.137664 0.207995 +1.042532 0.160461 0.207373 +1.038923 0.183190 0.206655 +1.034835 0.205841 0.205841 +1.030271 0.228406 0.204934 +1.025232 0.250873 0.203931 +1.019719 0.273233 0.202835 +1.013735 0.295477 0.201644 +1.007281 0.317594 0.200361 +1.000359 0.339576 0.198984 +0.992972 0.361412 0.197514 +0.985123 0.383093 0.195953 +0.976813 0.404609 0.194300 +0.968046 0.425950 0.192556 +0.958825 0.447107 0.190722 +0.949153 0.468070 0.188798 +0.939033 0.488829 0.186785 +0.928468 0.509375 0.184684 +0.917464 0.529698 0.182495 +0.906023 0.549789 0.180219 +0.894151 0.569637 0.177858 +0.881850 0.589234 0.175411 +0.869127 0.608569 0.172880 +0.855985 0.627634 0.170266 +0.842430 0.646419 0.167570 +0.828467 0.664915 0.164792 +0.814101 0.683112 0.161935 +0.799339 0.701001 0.158998 +0.784185 0.718573 0.155984 +0.768647 0.735819 0.152893 +0.752731 0.752731 0.149727 +0.735819 0.768647 0.152893 +0.718573 0.784185 0.155984 +0.701001 0.799339 0.158998 +0.683112 0.814101 0.161935 +0.664915 0.828467 0.164792 +0.646419 0.842430 0.167570 +0.627634 0.855985 0.170266 +0.608569 0.869127 0.172880 +0.589234 0.881850 0.175411 +0.569637 0.894151 0.177858 +0.549789 0.906023 0.180219 +0.529698 0.917464 0.182495 +0.509375 0.928468 0.184684 +0.488829 0.939033 0.186785 +0.468070 0.949153 0.188798 +0.447107 0.958825 0.190722 +0.425950 0.968046 0.192556 +0.404609 0.976813 0.194300 +0.383093 0.985123 0.195953 +0.361412 0.992972 0.197514 +0.339576 1.000359 0.198984 +0.317594 1.007281 0.200361 +0.295477 1.013735 0.201644 +0.273233 1.019719 0.202835 +0.250873 1.025232 0.203931 +0.228406 1.030271 0.204934 +0.205841 1.034835 0.205841 +0.183190 1.038923 0.206655 +0.160461 1.042532 0.207373 +0.137664 1.045663 0.207995 +0.114809 1.048314 0.208523 +0.091905 1.050484 0.208954 +0.068963 1.052172 0.209290 +0.045992 1.053379 0.209530 +0.023001 1.054103 0.209674 +0.000000 1.054344 0.209722 +1.058668 0.000000 0.186672 +1.058424 0.023095 0.186629 +1.057691 0.046180 0.186499 +1.056470 0.069245 0.186284 +1.054761 0.092280 0.185983 +1.052564 0.115275 0.185595 +1.049881 0.138219 0.185122 +1.046712 0.161104 0.184564 +1.043059 0.183919 0.183919 +1.038923 0.206655 0.183190 +1.034304 0.229300 0.182376 +1.029206 0.251845 0.181477 +1.023629 0.274281 0.180493 +1.017576 0.296596 0.179426 +1.011049 0.318783 0.178275 +1.004050 0.340829 0.177041 +0.996582 0.362726 0.175724 +0.988647 0.384464 0.174325 +0.980249 0.406032 0.172844 +0.971390 0.427422 0.171282 +0.962074 0.448622 0.169640 +0.952304 0.469624 0.167917 +0.942084 0.490418 0.166115 +0.931417 0.510993 0.164234 +0.920309 0.531341 0.162275 +0.908763 0.551451 0.160239 +0.896784 0.571314 0.158127 +0.884376 0.590921 0.155939 +0.871544 0.610262 0.153677 +0.858294 0.629327 0.151340 +0.844631 0.648108 0.148931 +0.830560 0.666595 0.146450 +0.816087 0.684778 0.143898 +0.801218 0.702649 0.141276 +0.785959 0.720199 0.138586 +0.770318 0.737419 0.135828 +0.754299 0.754299 0.133003 +0.737419 0.770318 0.135828 +0.720199 0.785959 0.138586 +0.702649 0.801218 0.141276 +0.684778 0.816087 0.143898 +0.666595 0.830560 0.146450 +0.648108 0.844631 0.148931 +0.629327 0.858294 0.151340 +0.610262 0.871544 0.153677 +0.590921 0.884376 0.155939 +0.571314 0.896784 0.158127 +0.551451 0.908763 0.160239 +0.531341 0.920309 0.162275 +0.510993 0.931417 0.164234 +0.490418 0.942084 0.166115 +0.469624 0.952304 0.167917 +0.448622 0.962074 0.169640 +0.427422 0.971390 0.171282 +0.406032 0.980249 0.172844 +0.384464 0.988647 0.174325 +0.362726 0.996582 0.175724 +0.340829 1.004050 0.177041 +0.318783 1.011049 0.178275 +0.296596 1.017576 0.179426 +0.274281 1.023629 0.180493 +0.251845 1.029206 0.181477 +0.229300 1.034304 0.182376 +0.206655 1.038923 0.183190 +0.183919 1.043059 0.183919 +0.161104 1.046712 0.184564 +0.138219 1.049881 0.185122 +0.115275 1.052564 0.185595 +0.092280 1.054761 0.185983 +0.069245 1.056470 0.186284 +0.046180 1.057691 0.186499 +0.023095 1.058424 0.186629 +0.000000 1.058668 0.186672 +1.062489 0.000000 0.163533 +1.062242 0.023178 0.163495 +1.061501 0.046346 0.163381 +1.060266 0.069494 0.163191 +1.058539 0.092610 0.162925 +1.056318 0.115686 0.162583 +1.053607 0.138710 0.162166 +1.050404 0.161673 0.161673 +1.046712 0.184564 0.161104 +1.042532 0.207373 0.160461 +1.037866 0.230089 0.159743 +1.032715 0.252704 0.158950 +1.027082 0.275206 0.158083 +1.020968 0.297585 0.157142 +1.014375 0.319831 0.156127 +1.007307 0.341935 0.155039 +0.999767 0.363885 0.153879 +0.991756 0.385673 0.152646 +0.983279 0.407288 0.151341 +0.974338 0.428719 0.149965 +0.964938 0.449958 0.148518 +0.955081 0.470994 0.147001 +0.944773 0.491817 0.145414 +0.934016 0.512419 0.143759 +0.922815 0.532788 0.142035 +0.911176 0.552915 0.140243 +0.899102 0.572791 0.138385 +0.886599 0.592407 0.136461 +0.873672 0.611752 0.134471 +0.860326 0.630817 0.132417 +0.846567 0.649594 0.130299 +0.832400 0.668072 0.128119 +0.817833 0.686243 0.125877 +0.802870 0.704098 0.123574 +0.787519 0.721628 0.121211 +0.771786 0.738824 0.118789 +0.755678 0.755678 0.116310 +0.738824 0.771786 0.118789 +0.721628 0.787519 0.121211 +0.704098 0.802870 0.123574 +0.686243 0.817833 0.125877 +0.668072 0.832400 0.128119 +0.649594 0.846567 0.130299 +0.630817 0.860326 0.132417 +0.611752 0.873672 0.134471 +0.592407 0.886599 0.136461 +0.572791 0.899102 0.138385 +0.552915 0.911176 0.140243 +0.532788 0.922815 0.142035 +0.512419 0.934016 0.143759 +0.491817 0.944773 0.145414 +0.470994 0.955081 0.147001 +0.449958 0.964938 0.148518 +0.428719 0.974338 0.149965 +0.407288 0.983279 0.151341 +0.385673 0.991756 0.152646 +0.363885 0.999767 0.153879 +0.341935 1.007307 0.155039 +0.319831 1.014375 0.156127 +0.297585 1.020968 0.157142 +0.275206 1.027082 0.158083 +0.252704 1.032715 0.158950 +0.230089 1.037866 0.159743 +0.207373 1.042532 0.160461 +0.184564 1.046712 0.161104 +0.161673 1.050404 0.161673 +0.138710 1.053607 0.162166 +0.115686 1.056318 0.162583 +0.092610 1.058539 0.162925 +0.069494 1.060266 0.163191 +0.046346 1.061501 0.163381 +0.023178 1.062242 0.163495 +0.000000 1.062489 0.163533 +1.065803 0.000000 0.140316 +1.065554 0.023250 0.140283 +1.064806 0.046490 0.140184 +1.063560 0.069709 0.140020 +1.061816 0.092897 0.139791 +1.059575 0.116042 0.139496 +1.056839 0.139135 0.139135 +1.053607 0.162166 0.138710 +1.049881 0.185122 0.138219 +1.045663 0.207995 0.137664 +1.040955 0.230774 0.137044 +1.035758 0.253448 0.136360 +1.030075 0.276008 0.135612 +1.023907 0.298442 0.134800 +1.017258 0.320740 0.133925 +1.010131 0.342893 0.132986 +1.002527 0.364890 0.131985 +0.994450 0.386721 0.130922 +0.985904 0.408375 0.129797 +0.976893 0.429843 0.128610 +0.967419 0.451115 0.127363 +0.957487 0.472180 0.126056 +0.947101 0.493029 0.124688 +0.936265 0.513653 0.123262 +0.924985 0.534040 0.121777 +0.913264 0.554182 0.120233 +0.901108 0.574069 0.118633 +0.888522 0.593692 0.116976 +0.875512 0.613040 0.115263 +0.862083 0.632105 0.113495 +0.848241 0.650878 0.111673 +0.833991 0.669349 0.109797 +0.819342 0.687509 0.107868 +0.804297 0.705350 0.105888 +0.788866 0.722862 0.103856 +0.773053 0.740038 0.101774 +0.756867 0.756867 0.099643 +0.740038 0.773053 0.101774 +0.722862 0.788866 0.103856 +0.705350 0.804297 0.105888 +0.687509 0.819342 0.107868 +0.669349 0.833991 0.109797 +0.650878 0.848241 0.111673 +0.632105 0.862083 0.113495 +0.613040 0.875512 0.115263 +0.593692 0.888522 0.116976 +0.574069 0.901108 0.118633 +0.554182 0.913264 0.120233 +0.534040 0.924985 0.121777 +0.513653 0.936265 0.123262 +0.493029 0.947101 0.124688 +0.472180 0.957487 0.126056 +0.451115 0.967419 0.127363 +0.429843 0.976893 0.128610 +0.408375 0.985904 0.129797 +0.386721 0.994450 0.130922 +0.364890 1.002527 0.131985 +0.342893 1.010131 0.132986 +0.320740 1.017258 0.133925 +0.298442 1.023907 0.134800 +0.276008 1.030075 0.135612 +0.253448 1.035758 0.136360 +0.230774 1.040955 0.137044 +0.207995 1.045663 0.137664 +0.185122 1.049881 0.138219 +0.162166 1.053607 0.138710 +0.139135 1.056839 0.139135 +0.116042 1.059575 0.139496 +0.092897 1.061816 0.139791 +0.069709 1.063560 0.140020 +0.046490 1.064806 0.140184 +0.023250 1.065554 0.140283 +0.000000 1.065803 0.140316 +1.068611 0.000000 0.117032 +1.068359 0.023312 0.117004 +1.067606 0.046613 0.116922 +1.066350 0.069892 0.116784 +1.064592 0.093140 0.116592 +1.062334 0.116344 0.116344 +1.059575 0.139496 0.116042 +1.056318 0.162583 0.115686 +1.052564 0.185595 0.115275 +1.048314 0.208523 0.114809 +1.043570 0.231354 0.114289 +1.038334 0.254079 0.113716 +1.032609 0.276687 0.113089 +1.026396 0.299167 0.112409 +1.019699 0.321510 0.111675 +1.012520 0.343704 0.110889 +1.004862 0.365740 0.110050 +0.996730 0.387607 0.109160 +0.988125 0.409295 0.108217 +0.979053 0.430794 0.107224 +0.969517 0.452093 0.106179 +0.959521 0.473183 0.105085 +0.949069 0.494054 0.103940 +0.938167 0.514696 0.102746 +0.926818 0.535099 0.101503 +0.915028 0.555253 0.100212 +0.902803 0.575149 0.098873 +0.890147 0.594777 0.097487 +0.877066 0.614128 0.096054 +0.863566 0.633193 0.094576 +0.849654 0.651962 0.093052 +0.835334 0.670427 0.091484 +0.820615 0.688578 0.089872 +0.805502 0.706406 0.088217 +0.790002 0.723903 0.086519 +0.774123 0.741061 0.084780 +0.757871 0.757871 0.083000 +0.741061 0.774123 0.084780 +0.723903 0.790002 0.086519 +0.706406 0.805502 0.088217 +0.688578 0.820615 0.089872 +0.670427 0.835334 0.091484 +0.651962 0.849654 0.093052 +0.633193 0.863566 0.094576 +0.614128 0.877066 0.096054 +0.594777 0.890147 0.097487 +0.575149 0.902803 0.098873 +0.555253 0.915028 0.100212 +0.535099 0.926818 0.101503 +0.514696 0.938167 0.102746 +0.494054 0.949069 0.103940 +0.473183 0.959521 0.105085 +0.452093 0.969517 0.106179 +0.430794 0.979053 0.107224 +0.409295 0.988125 0.108217 +0.387607 0.996730 0.109160 +0.365740 1.004862 0.110050 +0.343704 1.012520 0.110889 +0.321510 1.019699 0.111675 +0.299167 1.026396 0.112409 +0.276687 1.032609 0.113089 +0.254079 1.038334 0.113716 +0.231354 1.043570 0.114289 +0.208523 1.048314 0.114809 +0.185595 1.052564 0.115275 +0.162583 1.056318 0.115686 +0.139496 1.059575 0.116042 +0.116344 1.062334 0.116344 +0.093140 1.064592 0.116592 +0.069892 1.066350 0.116784 +0.046613 1.067606 0.116922 +0.023312 1.068359 0.117004 +0.000000 1.068611 0.117032 +1.070909 0.000000 0.093692 +1.070656 0.023362 0.093670 +1.069898 0.046713 0.093604 +1.068634 0.070042 0.093493 +1.066865 0.093339 0.093339 +1.064592 0.116592 0.093140 +1.061816 0.139791 0.092897 +1.058539 0.162925 0.092610 +1.054761 0.185983 0.092280 +1.050484 0.208954 0.091905 +1.045711 0.231828 0.091488 +1.040443 0.254595 0.091027 +1.034682 0.277242 0.090523 +1.028432 0.299761 0.089976 +1.021695 0.322139 0.089387 +1.014474 0.344368 0.088755 +1.006773 0.366435 0.088081 +0.998594 0.388332 0.087366 +0.989942 0.410047 0.086609 +0.980820 0.431571 0.085811 +0.971233 0.452893 0.084972 +0.961184 0.474003 0.084093 +0.950678 0.494892 0.083174 +0.939721 0.515549 0.082215 +0.928317 0.535964 0.081217 +0.916470 0.556128 0.080181 +0.904188 0.576031 0.079106 +0.891474 0.595664 0.077994 +0.878336 0.615017 0.076844 +0.864778 0.634082 0.075658 +0.850808 0.652848 0.074436 +0.836431 0.671307 0.073178 +0.821655 0.689450 0.071885 +0.806485 0.707268 0.070558 +0.790929 0.724753 0.069197 +0.774995 0.741896 0.067803 +0.758689 0.758689 0.066377 +0.741896 0.774995 0.067803 +0.724753 0.790929 0.069197 +0.707268 0.806485 0.070558 +0.689450 0.821655 0.071885 +0.671307 0.836431 0.073178 +0.652848 0.850808 0.074436 +0.634082 0.864778 0.075658 +0.615017 0.878336 0.076844 +0.595664 0.891474 0.077994 +0.576031 0.904188 0.079106 +0.556128 0.916470 0.080181 +0.535964 0.928317 0.081217 +0.515549 0.939721 0.082215 +0.494892 0.950678 0.083174 +0.474003 0.961184 0.084093 +0.452893 0.971233 0.084972 +0.431571 0.980820 0.085811 +0.410047 0.989942 0.086609 +0.388332 0.998594 0.087366 +0.366435 1.006773 0.088081 +0.344368 1.014474 0.088755 +0.322139 1.021695 0.089387 +0.299761 1.028432 0.089976 +0.277242 1.034682 0.090523 +0.254595 1.040443 0.091027 +0.231828 1.045711 0.091488 +0.208954 1.050484 0.091905 +0.185983 1.054761 0.092280 +0.162925 1.058539 0.092610 +0.139791 1.061816 0.092897 +0.116592 1.064592 0.093140 +0.093339 1.066865 0.093339 +0.070042 1.068634 0.093493 +0.046713 1.069898 0.093604 +0.023362 1.070656 0.093670 +0.000000 1.070909 0.093692 +1.072698 0.000000 0.070308 +1.072444 0.023401 0.070292 +1.071682 0.046791 0.070242 +1.070411 0.070158 0.070158 +1.068634 0.093493 0.070042 +1.066350 0.116784 0.069892 +1.063560 0.140020 0.069709 +1.060266 0.163191 0.069494 +1.056470 0.186284 0.069245 +1.052172 0.209290 0.068963 +1.047376 0.232198 0.068649 +1.042083 0.254996 0.068302 +1.036296 0.277675 0.067922 +1.030016 0.300222 0.067511 +1.023249 0.322629 0.067067 +1.015995 0.344884 0.066592 +1.008259 0.366976 0.066085 +1.000044 0.388896 0.065546 +0.991355 0.410633 0.064977 +0.982194 0.432176 0.064376 +0.972566 0.453515 0.063745 +0.962477 0.474641 0.063084 +0.951929 0.495543 0.062393 +0.940929 0.516211 0.061672 +0.929481 0.536636 0.060921 +0.917591 0.556808 0.060142 +0.905264 0.576717 0.059334 +0.892505 0.596353 0.058498 +0.879322 0.615708 0.057634 +0.865719 0.634772 0.056742 +0.851704 0.653536 0.055824 +0.837283 0.671990 0.054878 +0.822462 0.690127 0.053907 +0.807248 0.707938 0.052910 +0.791649 0.725413 0.051887 +0.775672 0.742545 0.050840 +0.759325 0.759325 0.049769 +0.742545 0.775672 0.050840 +0.725413 0.791649 0.051887 +0.707938 0.807248 0.052910 +0.690127 0.822462 0.053907 +0.671990 0.837283 0.054878 +0.653536 0.851704 0.055824 +0.634772 0.865719 0.056742 +0.615708 0.879322 0.057634 +0.596353 0.892505 0.058498 +0.576717 0.905264 0.059334 +0.556808 0.917591 0.060142 +0.536636 0.929481 0.060921 +0.516211 0.940929 0.061672 +0.495543 0.951929 0.062393 +0.474641 0.962477 0.063084 +0.453515 0.972566 0.063745 +0.432176 0.982194 0.064376 +0.410633 0.991355 0.064977 +0.388896 1.000044 0.065546 +0.366976 1.008259 0.066085 +0.344884 1.015995 0.066592 +0.322629 1.023249 0.067067 +0.300222 1.030016 0.067511 +0.277675 1.036296 0.067922 +0.254996 1.042083 0.068302 +0.232198 1.047376 0.068649 +0.209290 1.052172 0.068963 +0.186284 1.056470 0.069245 +0.163191 1.060266 0.069494 +0.140020 1.063560 0.069709 +0.116784 1.066350 0.069892 +0.093493 1.068634 0.070042 +0.070158 1.070411 0.070158 +0.046791 1.071682 0.070242 +0.023401 1.072444 0.070292 +0.000000 1.072698 0.070308 +1.073977 0.000000 0.046891 +1.073722 0.023429 0.046880 +1.072957 0.046846 0.046846 +1.071682 0.070242 0.046791 +1.069898 0.093604 0.046713 +1.067606 0.116922 0.046613 +1.064806 0.140184 0.046490 +1.061501 0.163381 0.046346 +1.057691 0.186499 0.046180 +1.053379 0.209530 0.045992 +1.048566 0.232461 0.045781 +1.043255 0.255283 0.045549 +1.037448 0.277983 0.045296 +1.031148 0.300552 0.045021 +1.024358 0.322979 0.044724 +1.017081 0.345252 0.044407 +1.009320 0.367363 0.044068 +1.001080 0.389299 0.043708 +0.992363 0.411050 0.043328 +0.983175 0.432607 0.042926 +0.973519 0.453959 0.042505 +0.963400 0.475096 0.042063 +0.952822 0.496008 0.041601 +0.941792 0.516685 0.041120 +0.930313 0.537116 0.040618 +0.918391 0.557293 0.040098 +0.906032 0.577206 0.039558 +0.893241 0.596845 0.039000 +0.880026 0.616201 0.038423 +0.866391 0.635264 0.037827 +0.852344 0.654026 0.037214 +0.837890 0.672478 0.036583 +0.823038 0.690611 0.035935 +0.807793 0.708415 0.035269 +0.792163 0.725883 0.034587 +0.776155 0.743007 0.033888 +0.759778 0.759778 0.033173 +0.743007 0.776155 0.033888 +0.725883 0.792163 0.034587 +0.708415 0.807793 0.035269 +0.690611 0.823038 0.035935 +0.672478 0.837890 0.036583 +0.654026 0.852344 0.037214 +0.635264 0.866391 0.037827 +0.616201 0.880026 0.038423 +0.596845 0.893241 0.039000 +0.577206 0.906032 0.039558 +0.557293 0.918391 0.040098 +0.537116 0.930313 0.040618 +0.516685 0.941792 0.041120 +0.496008 0.952822 0.041601 +0.475096 0.963400 0.042063 +0.453959 0.973519 0.042505 +0.432607 0.983175 0.042926 +0.411050 0.992363 0.043328 +0.389299 1.001080 0.043708 +0.367363 1.009320 0.044068 +0.345252 1.017081 0.044407 +0.322979 1.024358 0.044724 +0.300552 1.031148 0.045021 +0.277983 1.037448 0.045296 +0.255283 1.043255 0.045549 +0.232461 1.048566 0.045781 +0.209530 1.053379 0.045992 +0.186499 1.057691 0.046180 +0.163381 1.061501 0.046346 +0.140184 1.064806 0.046490 +0.116922 1.067606 0.046613 +0.093604 1.069898 0.046713 +0.070242 1.071682 0.046791 +0.046846 1.072957 0.046846 +0.023429 1.073722 0.046880 +0.000000 1.073977 0.046891 +1.074744 0.000000 0.023451 +1.074489 0.023445 0.023445 +1.073722 0.046880 0.023429 +1.072444 0.070292 0.023401 +1.070656 0.093670 0.023362 +1.068359 0.117004 0.023312 +1.065554 0.140283 0.023250 +1.062242 0.163495 0.023178 +1.058424 0.186629 0.023095 +1.054103 0.209674 0.023001 +1.049280 0.232620 0.022895 +1.043958 0.255455 0.022779 +1.038140 0.278169 0.022652 +1.031827 0.300750 0.022515 +1.025024 0.323189 0.022366 +1.017733 0.345474 0.022207 +1.009957 0.367594 0.022037 +1.001701 0.389540 0.021857 +0.992969 0.411301 0.021667 +0.983764 0.432866 0.021466 +0.974090 0.454226 0.021255 +0.963954 0.475369 0.021034 +0.953358 0.496287 0.020802 +0.942309 0.516968 0.020561 +0.930811 0.537404 0.020310 +0.918870 0.557584 0.020050 +0.906492 0.577499 0.019780 +0.893683 0.597140 0.019500 +0.880448 0.616496 0.019211 +0.866794 0.635559 0.018914 +0.852727 0.654321 0.018607 +0.838254 0.672770 0.018291 +0.823383 0.690900 0.017966 +0.808119 0.708701 0.017633 +0.792471 0.726166 0.017292 +0.776445 0.743284 0.016942 +0.760049 0.760049 0.016584 +0.743284 0.776445 0.016942 +0.726166 0.792471 0.017292 +0.708701 0.808119 0.017633 +0.690900 0.823383 0.017966 +0.672770 0.838254 0.018291 +0.654321 0.852727 0.018607 +0.635559 0.866794 0.018914 +0.616496 0.880448 0.019211 +0.597140 0.893683 0.019500 +0.577499 0.906492 0.019780 +0.557584 0.918870 0.020050 +0.537404 0.930811 0.020310 +0.516968 0.942309 0.020561 +0.496287 0.953358 0.020802 +0.475369 0.963954 0.021034 +0.454226 0.974090 0.021255 +0.432866 0.983764 0.021466 +0.411301 0.992969 0.021667 +0.389540 1.001701 0.021857 +0.367594 1.009957 0.022037 +0.345474 1.017733 0.022207 +0.323189 1.025024 0.022366 +0.300750 1.031827 0.022515 +0.278169 1.038140 0.022652 +0.255455 1.043958 0.022779 +0.232620 1.049280 0.022895 +0.209674 1.054103 0.023001 +0.186629 1.058424 0.023095 +0.163495 1.062242 0.023178 +0.140283 1.065554 0.023250 +0.117004 1.068359 0.023312 +0.093670 1.070656 0.023362 +0.070292 1.072444 0.023401 +0.046880 1.073722 0.023429 +0.023445 1.074489 0.023445 +0.000000 1.074744 0.023451 +1.075000 0.000000 0.000000 +1.074744 0.023451 0.000000 +1.073977 0.046891 0.000000 +1.072698 0.070308 0.000000 +1.070909 0.093692 0.000000 +1.068611 0.117032 0.000000 +1.065803 0.140316 0.000000 +1.062489 0.163533 0.000000 +1.058668 0.186672 0.000000 +1.054344 0.209722 0.000000 +1.049518 0.232673 0.000000 +1.044193 0.255512 0.000000 +1.038370 0.278230 0.000000 +1.032054 0.300816 0.000000 +1.025246 0.323259 0.000000 +1.017950 0.345547 0.000000 +1.010170 0.367672 0.000000 +1.001908 0.389621 0.000000 +0.993170 0.411385 0.000000 +0.983960 0.432953 0.000000 +0.974281 0.454315 0.000000 +0.964138 0.475460 0.000000 +0.953537 0.496380 0.000000 +0.942481 0.517063 0.000000 +0.930977 0.537500 0.000000 +0.919030 0.557681 0.000000 +0.906646 0.577597 0.000000 +0.893830 0.597238 0.000000 +0.880588 0.616595 0.000000 +0.866928 0.635658 0.000000 +0.852855 0.654419 0.000000 +0.838376 0.672868 0.000000 +0.823498 0.690997 0.000000 +0.808228 0.708797 0.000000 +0.792573 0.726259 0.000000 +0.776541 0.743377 0.000000 +0.760140 0.760140 0.000000 +0.743377 0.776541 0.000000 +0.726259 0.792573 0.000000 +0.708797 0.808228 0.000000 +0.690997 0.823498 0.000000 +0.672868 0.838376 0.000000 +0.654419 0.852855 0.000000 +0.635658 0.866928 0.000000 +0.616595 0.880588 0.000000 +0.597238 0.893830 0.000000 +0.577597 0.906646 0.000000 +0.557681 0.919030 0.000000 +0.537500 0.930977 0.000000 +0.517063 0.942481 0.000000 +0.496380 0.953537 0.000000 +0.475460 0.964138 0.000000 +0.454315 0.974281 0.000000 +0.432953 0.983960 0.000000 +0.411385 0.993170 0.000000 +0.389621 1.001908 0.000000 +0.367672 1.010170 0.000000 +0.345547 1.017950 0.000000 +0.323259 1.025246 0.000000 +0.300816 1.032054 0.000000 +0.278230 1.038370 0.000000 +0.255512 1.044193 0.000000 +0.232673 1.049518 0.000000 +0.209722 1.054344 0.000000 +0.186672 1.058668 0.000000 +0.163533 1.062489 0.000000 +0.140316 1.065803 0.000000 +0.117032 1.068611 0.000000 +0.093692 1.070909 0.000000 +0.070308 1.072698 0.000000 +0.046891 1.073977 0.000000 +0.023451 1.074744 0.000000 +0.000000 1.075000 0.000000 +0.000000 0.000000 1.133333 +0.024724 0.000000 1.133064 +0.024718 0.024718 1.132794 +0.000000 0.024724 1.133064 +0.049435 0.000000 1.132255 +0.049424 0.024700 1.131986 +0.049388 0.049388 1.131179 +0.024700 0.049424 1.131986 +0.000000 0.049435 1.132255 +0.074124 0.000000 1.130907 +0.074106 0.024671 1.130639 +0.074053 0.049330 1.129835 +0.073966 0.073966 1.128496 +0.049330 0.074053 1.129835 +0.024671 0.074106 1.130639 +0.000000 0.074124 1.130907 +0.098777 0.000000 1.129021 +0.098753 0.024630 1.128754 +0.098683 0.049248 1.127954 +0.098567 0.073843 1.126622 +0.098403 0.098403 1.124757 +0.073843 0.098567 1.126622 +0.049248 0.098683 1.127954 +0.024630 0.098753 1.128754 +0.000000 0.098777 1.129021 +0.123382 0.000000 1.126597 +0.123353 0.024577 1.126332 +0.123266 0.049142 1.125538 +0.123121 0.073685 1.124214 +0.122918 0.098194 1.122361 +0.122658 0.122658 1.119980 +0.098194 0.122918 1.122361 +0.073685 0.123121 1.124214 +0.049142 0.123266 1.125538 +0.024577 0.123353 1.126332 +0.000000 0.123382 1.126597 +0.147930 0.000000 1.123638 +0.147895 0.024512 1.123375 +0.147791 0.049013 1.122586 +0.147618 0.073492 1.121273 +0.147376 0.097938 1.119434 +0.147065 0.122339 1.117072 +0.146685 0.146685 1.114186 +0.122339 0.147065 1.117072 +0.097938 0.147376 1.119434 +0.073492 0.147618 1.121273 +0.049013 0.147791 1.122586 +0.024512 0.147895 1.123375 +0.000000 0.147930 1.123638 +0.172407 0.000000 1.120143 +0.172366 0.024436 1.119883 +0.172246 0.048861 1.119102 +0.172046 0.073264 1.117800 +0.171766 0.097635 1.115979 +0.171405 0.121963 1.113638 +0.170965 0.146237 1.110779 +0.170446 0.170446 1.107403 +0.146237 0.170965 1.110779 +0.121963 0.171405 1.113638 +0.097635 0.171766 1.115979 +0.073264 0.172046 1.117800 +0.048861 0.172246 1.119102 +0.024436 0.172366 1.119883 +0.000000 0.172407 1.120143 +0.196801 0.000000 1.116115 +0.196756 0.024348 1.115858 +0.196620 0.048686 1.115085 +0.196393 0.073002 1.113798 +0.196075 0.097287 1.111996 +0.195667 0.121530 1.109680 +0.195168 0.145720 1.106851 +0.194579 0.169847 1.103511 +0.193900 0.193900 1.099659 +0.169847 0.194579 1.103511 +0.145720 0.195168 1.106851 +0.121530 0.195667 1.109680 +0.097287 0.196075 1.111996 +0.073002 0.196393 1.113798 +0.048686 0.196620 1.115085 +0.024348 0.196756 1.115858 +0.000000 0.196801 1.116115 +0.221102 0.000000 1.111557 +0.221052 0.024249 1.111302 +0.220900 0.048487 1.110539 +0.220647 0.072705 1.109267 +0.220293 0.096893 1.107487 +0.219838 0.121039 1.105199 +0.219282 0.145134 1.102405 +0.218625 0.169168 1.099104 +0.217868 0.193131 1.095298 +0.217011 0.217011 1.090989 +0.193131 0.217868 1.095298 +0.169168 0.218625 1.099104 +0.145134 0.219282 1.102405 +0.121039 0.219838 1.105199 +0.096893 0.220293 1.107487 +0.072705 0.220647 1.109267 +0.048487 0.220900 1.110539 +0.024249 0.221052 1.111302 +0.000000 0.221102 1.111557 +0.245298 0.000000 1.106469 +0.245243 0.024138 1.106218 +0.245076 0.048266 1.105465 +0.244798 0.072374 1.104210 +0.244408 0.096452 1.102455 +0.243908 0.120491 1.100198 +0.243297 0.144481 1.097441 +0.242575 0.168411 1.094184 +0.241742 0.192272 1.090429 +0.240800 0.216054 1.086177 +0.239747 0.239747 1.081428 +0.216054 0.240800 1.086177 +0.192272 0.241742 1.090429 +0.168411 0.242575 1.094184 +0.144481 0.243297 1.097441 +0.120491 0.243908 1.100198 +0.096452 0.244408 1.102455 +0.072374 0.244798 1.104210 +0.048266 0.245076 1.105465 +0.024138 0.245243 1.106218 +0.000000 0.245298 1.106469 +0.269377 0.000000 1.100854 +0.269317 0.024015 1.100607 +0.269135 0.048021 1.099866 +0.268833 0.072008 1.098630 +0.268410 0.095966 1.096901 +0.267866 0.119887 1.094678 +0.267201 0.143760 1.091962 +0.266416 0.167575 1.088754 +0.265511 0.191324 1.085054 +0.264486 0.214997 1.080864 +0.263341 0.238584 1.076185 +0.262076 0.262076 1.071017 +0.238584 0.263341 1.076185 +0.214997 0.264486 1.080864 +0.191324 0.265511 1.085054 +0.167575 0.266416 1.088754 +0.143760 0.267201 1.091962 +0.119887 0.267866 1.094678 +0.095966 0.268410 1.096901 +0.072008 0.268833 1.098630 +0.048021 0.269135 1.099866 +0.024015 0.269317 1.100607 +0.000000 0.269377 1.100854 +0.293328 0.000000 1.094716 +0.293263 0.023881 1.094473 +0.293068 0.047754 1.093744 +0.292742 0.071608 1.092529 +0.292286 0.095435 1.090828 +0.291701 0.119226 1.088642 +0.290985 0.142971 1.085970 +0.290139 0.166661 1.082815 +0.289164 0.190288 1.079175 +0.288059 0.213841 1.075053 +0.286826 0.237313 1.070448 +0.285463 0.260692 1.065361 +0.283971 0.283971 1.059795 +0.260692 0.285463 1.065361 +0.237313 0.286826 1.070448 +0.213841 0.288059 1.075053 +0.190288 0.289164 1.079175 +0.166661 0.290139 1.082815 +0.142971 0.290985 1.085970 +0.119226 0.291701 1.088642 +0.095435 0.292286 1.090828 +0.071608 0.292742 1.092529 +0.047754 0.293068 1.093744 +0.023881 0.293263 1.094473 +0.000000 0.293328 1.094716 +0.317140 0.000000 1.088057 +0.317070 0.023736 1.087818 +0.316861 0.047464 1.087102 +0.316514 0.071174 1.085909 +0.316027 0.094859 1.084239 +0.315401 0.118508 1.082092 +0.314636 0.142115 1.079468 +0.313733 0.165669 1.076369 +0.312691 0.189162 1.072794 +0.311510 0.212586 1.068744 +0.310192 0.235932 1.064219 +0.308735 0.259190 1.059221 +0.307140 0.282351 1.053749 +0.305408 0.305408 1.047806 +0.282351 0.307140 1.053749 +0.259190 0.308735 1.059221 +0.235932 0.310192 1.064219 +0.212586 0.311510 1.068744 +0.189162 0.312691 1.072794 +0.165669 0.313733 1.076369 +0.142115 0.314636 1.079468 +0.118508 0.315401 1.082092 +0.094859 0.316027 1.084239 +0.071174 0.316514 1.085909 +0.047464 0.316861 1.087102 +0.023736 0.317070 1.087818 +0.000000 0.317140 1.088057 +0.340800 0.000000 1.080879 +0.340726 0.023580 1.080645 +0.340505 0.047151 1.079943 +0.340136 0.070707 1.078774 +0.339620 0.094237 1.077136 +0.338956 0.117735 1.075031 +0.338145 0.141192 1.072459 +0.337186 0.164599 1.069419 +0.336081 0.187949 1.065912 +0.334828 0.211233 1.061939 +0.333429 0.234442 1.057500 +0.331882 0.257568 1.052595 +0.330189 0.280603 1.047226 +0.328349 0.303538 1.041391 +0.326364 0.326364 1.035093 +0.303538 0.328349 1.041391 +0.280603 0.330189 1.047226 +0.257568 0.331882 1.052595 +0.234442 0.333429 1.057500 +0.211233 0.334828 1.061939 +0.187949 0.336081 1.065912 +0.164599 0.337186 1.069419 +0.141192 0.338145 1.072459 +0.117735 0.338956 1.075031 +0.094237 0.339620 1.077136 +0.070707 0.340136 1.078774 +0.047151 0.340505 1.079943 +0.023580 0.340726 1.080645 +0.000000 0.340800 1.080879 +0.364298 0.000000 1.073187 +0.364220 0.023412 1.072958 +0.363987 0.046816 1.072271 +0.363598 0.070205 1.071126 +0.363054 0.093571 1.069523 +0.362355 0.116906 1.067463 +0.361500 0.140203 1.064944 +0.360489 0.163452 1.061968 +0.359324 0.186648 1.058534 +0.358003 0.209781 1.054642 +0.356527 0.232844 1.050294 +0.354895 0.255829 1.045488 +0.353109 0.278728 1.040226 +0.351168 0.301531 1.034507 +0.349072 0.324232 1.028332 +0.346821 0.346821 1.021702 +0.324232 0.349072 1.028332 +0.301531 0.351168 1.034507 +0.278728 0.353109 1.040226 +0.255829 0.354895 1.045488 +0.232844 0.356527 1.050294 +0.209781 0.358003 1.054642 +0.186648 0.359324 1.058534 +0.163452 0.360489 1.061968 +0.140203 0.361500 1.064944 +0.116906 0.362355 1.067463 +0.093571 0.363054 1.069523 +0.070205 0.363598 1.071126 +0.046816 0.363987 1.072271 +0.023412 0.364220 1.072958 +0.000000 0.364298 1.073187 +0.387623 0.000000 1.064985 +0.387541 0.023233 1.064761 +0.387297 0.046459 1.064090 +0.386890 0.069671 1.062971 +0.386319 0.092861 1.061404 +0.385586 0.116022 1.059390 +0.384690 0.139147 1.056928 +0.383631 0.162229 1.054018 +0.382409 0.185260 1.050660 +0.381024 0.208232 1.046855 +0.379476 0.231139 1.042601 +0.377765 0.253972 1.037900 +0.375891 0.276725 1.032751 +0.373853 0.299388 1.027154 +0.371653 0.321954 1.021109 +0.369290 0.344416 1.014617 +0.366764 0.366764 1.007677 +0.344416 0.369290 1.014617 +0.321954 0.371653 1.021109 +0.299388 0.373853 1.027154 +0.276725 0.375891 1.032751 +0.253972 0.377765 1.037900 +0.231139 0.379476 1.042601 +0.208232 0.381024 1.046855 +0.185260 0.382409 1.050660 +0.162229 0.383631 1.054018 +0.139147 0.384690 1.056928 +0.116022 0.385586 1.059390 +0.092861 0.386319 1.061404 +0.069671 0.386890 1.062971 +0.046459 0.387297 1.064090 +0.023233 0.387541 1.064761 +0.000000 0.387623 1.064985 +0.410763 0.000000 1.056276 +0.410678 0.023043 1.056057 +0.410423 0.046080 1.055402 +0.409999 0.069103 1.054310 +0.409404 0.092106 1.052782 +0.408640 0.115083 1.050816 +0.407705 0.138026 1.048413 +0.406601 0.160929 1.045573 +0.405326 0.183785 1.042295 +0.403881 0.206586 1.038579 +0.402266 0.229327 1.034425 +0.400480 0.251999 1.029833 +0.398524 0.274595 1.024803 +0.396397 0.297109 1.019333 +0.394099 0.319532 1.013425 +0.391631 0.341857 1.007077 +0.388991 0.364076 1.000290 +0.386181 0.386181 0.993062 +0.364076 0.388991 1.000290 +0.341857 0.391631 1.007077 +0.319532 0.394099 1.013425 +0.297109 0.396397 1.019333 +0.274595 0.398524 1.024803 +0.251999 0.400480 1.029833 +0.229327 0.402266 1.034425 +0.206586 0.403881 1.038579 +0.183785 0.405326 1.042295 +0.160929 0.406601 1.045573 +0.138026 0.407705 1.048413 +0.115083 0.408640 1.050816 +0.092106 0.409404 1.052782 +0.069103 0.409999 1.054310 +0.046080 0.410423 1.055402 +0.023043 0.410678 1.056057 +0.000000 0.410763 1.056276 +0.433708 0.000000 1.047063 +0.433620 0.022842 1.046851 +0.433355 0.045679 1.046213 +0.432915 0.068503 1.045149 +0.432298 0.091308 1.043660 +0.431505 0.114090 1.041745 +0.430535 0.136840 1.039403 +0.429388 0.159553 1.036635 +0.428065 0.182223 1.033441 +0.426565 0.204844 1.029818 +0.424887 0.227407 1.025769 +0.423032 0.249908 1.021290 +0.421000 0.272339 1.016383 +0.418789 0.294693 1.011047 +0.416401 0.316964 1.005280 +0.413834 0.339143 0.999084 +0.411088 0.361224 0.992455 +0.408164 0.383199 0.985396 +0.405061 0.405061 0.977904 +0.383199 0.408164 0.985396 +0.361224 0.411088 0.992455 +0.339143 0.413834 0.999084 +0.316964 0.416401 1.005280 +0.294693 0.418789 1.011047 +0.272339 0.421000 1.016383 +0.249908 0.423032 1.021290 +0.227407 0.424887 1.025769 +0.204844 0.426565 1.029818 +0.182223 0.428065 1.033441 +0.159553 0.429388 1.036635 +0.136840 0.430535 1.039403 +0.114090 0.431505 1.041745 +0.091308 0.432298 1.043660 +0.068503 0.432915 1.045149 +0.045679 0.433355 1.046213 +0.022842 0.433620 1.046851 +0.000000 0.433708 1.047063 +0.456446 0.000000 1.037353 +0.456355 0.022631 1.037146 +0.456082 0.045256 1.036526 +0.455627 0.067870 1.035491 +0.454990 0.090467 1.034043 +0.454170 0.113042 1.032180 +0.453168 0.135589 1.029902 +0.451983 0.158103 1.027210 +0.450615 0.180577 1.024101 +0.449064 0.203005 1.020576 +0.447329 0.225382 1.016633 +0.445411 0.247702 1.012273 +0.443308 0.269957 1.007495 +0.441021 0.292143 1.002296 +0.438549 0.314251 0.996677 +0.435891 0.336276 0.990637 +0.433047 0.358210 0.984175 +0.430017 0.380047 0.977289 +0.426801 0.401778 0.969979 +0.423398 0.423398 0.962244 +0.401778 0.426801 0.969979 +0.380047 0.430017 0.977289 +0.358210 0.433047 0.984175 +0.336276 0.435891 0.990637 +0.314251 0.438549 0.996677 +0.292143 0.441021 1.002296 +0.269957 0.443308 1.007495 +0.247702 0.445411 1.012273 +0.225382 0.447329 1.016633 +0.203005 0.449064 1.020576 +0.180577 0.450615 1.024101 +0.158103 0.451983 1.027210 +0.135589 0.453168 1.029902 +0.113042 0.454170 1.032180 +0.090467 0.454990 1.034043 +0.067870 0.455627 1.035491 +0.045256 0.456082 1.036526 +0.022631 0.456355 1.037146 +0.000000 0.456446 1.037353 +0.478967 0.000000 1.027149 +0.478874 0.022408 1.026948 +0.478593 0.044811 1.026346 +0.478125 0.067204 1.025341 +0.477469 0.089583 1.023935 +0.476625 0.111941 1.022126 +0.475594 0.134274 1.019914 +0.474374 0.156577 1.017299 +0.472966 0.178845 1.014279 +0.471369 0.201071 1.010854 +0.469583 0.223252 1.007023 +0.467606 0.245380 1.002785 +0.465440 0.267450 0.998139 +0.463082 0.289457 0.993083 +0.460533 0.311394 0.987617 +0.457792 0.333255 0.981739 +0.454859 0.355034 0.975448 +0.451732 0.376723 0.968743 +0.448411 0.398317 0.961621 +0.444896 0.419807 0.954083 +0.441186 0.441186 0.946126 +0.419807 0.444896 0.954083 +0.398317 0.448411 0.961621 +0.376723 0.451732 0.968743 +0.355034 0.454859 0.975448 +0.333255 0.457792 0.981739 +0.311394 0.460533 0.987617 +0.289457 0.463082 0.993083 +0.267450 0.465440 0.998139 +0.245380 0.467606 1.002785 +0.223252 0.469583 1.007023 +0.201071 0.471369 1.010854 +0.178845 0.472966 1.014279 +0.156577 0.474374 1.017299 +0.134274 0.475594 1.019914 +0.111941 0.476625 1.022126 +0.089583 0.477469 1.023935 +0.067204 0.478125 1.025341 +0.044811 0.478593 1.026346 +0.022408 0.478874 1.026948 +0.000000 0.478967 1.027149 +0.501261 0.000000 1.016456 +0.501165 0.022175 1.016261 +0.500877 0.044345 1.015677 +0.500397 0.066507 1.014704 +0.499724 0.088656 1.013341 +0.498860 0.110787 1.011588 +0.497802 0.132896 1.009443 +0.496552 0.154978 1.006907 +0.495108 0.177029 1.003979 +0.493469 0.199043 1.000657 +0.491637 0.221016 0.996940 +0.489608 0.242943 0.992828 +0.487384 0.264819 0.988318 +0.484964 0.286638 0.983409 +0.482346 0.308394 0.978100 +0.479530 0.330082 0.972390 +0.476514 0.351696 0.966276 +0.473299 0.373229 0.959756 +0.469884 0.394675 0.952830 +0.466267 0.416028 0.945495 +0.462447 0.437280 0.937749 +0.458424 0.458424 0.929591 +0.437280 0.462447 0.937749 +0.416028 0.466267 0.945495 +0.394675 0.469884 0.952830 +0.373229 0.473299 0.959756 +0.351696 0.476514 0.966276 +0.330082 0.479530 0.972390 +0.308394 0.482346 0.978100 +0.286638 0.484964 0.983409 +0.264819 0.487384 0.988318 +0.242943 0.489608 0.992828 +0.221016 0.491637 0.996940 +0.199043 0.493469 1.000657 +0.177029 0.495108 1.003979 +0.154978 0.496552 1.006907 +0.132896 0.497802 1.009443 +0.110787 0.498860 1.011588 +0.088656 0.499724 1.013341 +0.066507 0.500397 1.014704 +0.044345 0.500877 1.015677 +0.022175 0.501165 1.016261 +0.000000 0.501261 1.016456 +0.523315 0.000000 1.005279 +0.523217 0.021931 1.005091 +0.522923 0.043859 1.004526 +0.522433 0.065778 1.003584 +0.521746 0.087687 1.002266 +0.520863 0.109580 1.000569 +0.519783 0.131454 0.998494 +0.518505 0.153305 0.996039 +0.517029 0.175129 0.993204 +0.515355 0.196921 0.989988 +0.513481 0.218677 0.986388 +0.511407 0.240393 0.982404 +0.509132 0.262064 0.978034 +0.506656 0.283684 0.973277 +0.503976 0.305250 0.968129 +0.501093 0.326756 0.962591 +0.498005 0.348195 0.956659 +0.494711 0.369563 0.950331 +0.491210 0.390854 0.943605 +0.487500 0.412061 0.936479 +0.483582 0.433177 0.928951 +0.479452 0.454196 0.921019 +0.475111 0.475111 0.912679 +0.454196 0.479452 0.921019 +0.433177 0.483582 0.928951 +0.412061 0.487500 0.936479 +0.390854 0.491210 0.943605 +0.369563 0.494711 0.950331 +0.348195 0.498005 0.956659 +0.326756 0.501093 0.962591 +0.305250 0.503976 0.968129 +0.283684 0.506656 0.973277 +0.262064 0.509132 0.978034 +0.240393 0.511407 0.982404 +0.218677 0.513481 0.986388 +0.196921 0.515355 0.989988 +0.175129 0.517029 0.993204 +0.153305 0.518505 0.996039 +0.131454 0.519783 0.998494 +0.109580 0.520863 1.000569 +0.087687 0.521746 1.002266 +0.065778 0.522433 1.003584 +0.043859 0.522923 1.004526 +0.021931 0.523217 1.005091 +0.000000 0.523315 1.005279 +0.545121 0.000000 0.993624 +0.545021 0.021677 0.993442 +0.544722 0.043351 0.992896 +0.544223 0.065018 0.991987 +0.543524 0.086676 0.990714 +0.542625 0.108321 0.989075 +0.541525 0.129950 0.987070 +0.540224 0.151560 0.984699 +0.538721 0.173146 0.981959 +0.537016 0.194705 0.978850 +0.535107 0.216234 0.975371 +0.532993 0.237729 0.971518 +0.530674 0.259185 0.967291 +0.528149 0.280598 0.962688 +0.525416 0.301964 0.957706 +0.522473 0.323277 0.952343 +0.519321 0.344533 0.946597 +0.515957 0.365727 0.940466 +0.512380 0.386853 0.933946 +0.508589 0.407905 0.927035 +0.504582 0.428878 0.919731 +0.500357 0.449764 0.912031 +0.495913 0.470557 0.903931 +0.491249 0.491249 0.895429 +0.470557 0.495913 0.903931 +0.449764 0.500357 0.912031 +0.428878 0.504582 0.919731 +0.407905 0.508589 0.927035 +0.386853 0.512380 0.933946 +0.365727 0.515957 0.940466 +0.344533 0.519321 0.946597 +0.323277 0.522473 0.952343 +0.301964 0.525416 0.957706 +0.280598 0.528149 0.962688 +0.259185 0.530674 0.967291 +0.237729 0.532993 0.971518 +0.216234 0.535107 0.975371 +0.194705 0.537016 0.978850 +0.173146 0.538721 0.981959 +0.151560 0.540224 0.984699 +0.129950 0.541525 0.987070 +0.108321 0.542625 0.989075 +0.086676 0.543524 0.990714 +0.065018 0.544223 0.991987 +0.043351 0.544722 0.992896 +0.021677 0.545021 0.993442 +0.000000 0.545121 0.993624 +0.566667 0.000000 0.981495 +0.566566 0.021412 0.981320 +0.566262 0.042822 0.980795 +0.565756 0.064227 0.979918 +0.565047 0.085624 0.978690 +0.564135 0.107011 0.977110 +0.563019 0.128385 0.975178 +0.561699 0.149742 0.972891 +0.560173 0.171081 0.970248 +0.558441 0.192398 0.967249 +0.556503 0.213689 0.963891 +0.554356 0.234953 0.960173 +0.552000 0.256184 0.956091 +0.549433 0.277379 0.951645 +0.546654 0.298535 0.946832 +0.543661 0.319647 0.941649 +0.540454 0.340710 0.936093 +0.537030 0.361720 0.930162 +0.533387 0.382673 0.923853 +0.529524 0.403561 0.917163 +0.525439 0.424381 0.910087 +0.521131 0.445125 0.902625 +0.516596 0.465788 0.894771 +0.511834 0.486363 0.886522 +0.506842 0.506842 0.877876 +0.486363 0.511834 0.886522 +0.465788 0.516596 0.894771 +0.445125 0.521131 0.902625 +0.424381 0.525439 0.910087 +0.403561 0.529524 0.917163 +0.382673 0.533387 0.923853 +0.361720 0.537030 0.930162 +0.340710 0.540454 0.936093 +0.319647 0.543661 0.941649 +0.298535 0.546654 0.946832 +0.277379 0.549433 0.951645 +0.256184 0.552000 0.956091 +0.234953 0.554356 0.960173 +0.213689 0.556503 0.963891 +0.192398 0.558441 0.967249 +0.171081 0.560173 0.970248 +0.149742 0.561699 0.972891 +0.128385 0.563019 0.975178 +0.107011 0.564135 0.977110 +0.085624 0.565047 0.978690 +0.064227 0.565756 0.979918 +0.042822 0.566262 0.980795 +0.021412 0.566566 0.981320 +0.000000 0.566667 0.981495 +0.587943 0.000000 0.968900 +0.587841 0.021138 0.968732 +0.587534 0.042274 0.968226 +0.587022 0.063406 0.967383 +0.586305 0.084532 0.966201 +0.585383 0.105650 0.964681 +0.584254 0.126758 0.962821 +0.582918 0.147854 0.960620 +0.581375 0.168935 0.958076 +0.579622 0.189999 0.955188 +0.577659 0.211043 0.951953 +0.575485 0.232065 0.948371 +0.573099 0.253061 0.944438 +0.570498 0.274029 0.940151 +0.567681 0.294965 0.935510 +0.564647 0.315865 0.930509 +0.561393 0.336726 0.925147 +0.557918 0.357543 0.919421 +0.554220 0.378312 0.913326 +0.550296 0.399028 0.906860 +0.546145 0.419686 0.900019 +0.541764 0.440280 0.892799 +0.537151 0.460804 0.885197 +0.532303 0.481253 0.877208 +0.527218 0.501619 0.868829 +0.521895 0.521895 0.860056 +0.501619 0.527218 0.868829 +0.481253 0.532303 0.877208 +0.460804 0.537151 0.885197 +0.440280 0.541764 0.892799 +0.419686 0.546145 0.900019 +0.399028 0.550296 0.906860 +0.378312 0.554220 0.913326 +0.357543 0.557918 0.919421 +0.336726 0.561393 0.925147 +0.315865 0.564647 0.930509 +0.294965 0.567681 0.935510 +0.274029 0.570498 0.940151 +0.253061 0.573099 0.944438 +0.232065 0.575485 0.948371 +0.211043 0.577659 0.951953 +0.189999 0.579622 0.955188 +0.168935 0.581375 0.958076 +0.147854 0.582918 0.960620 +0.126758 0.584254 0.962821 +0.105650 0.585383 0.964681 +0.084532 0.586305 0.966201 +0.063406 0.587022 0.967383 +0.042274 0.587534 0.968226 +0.021138 0.587841 0.968732 +0.000000 0.587943 0.968900 +0.608940 0.000000 0.955844 +0.608836 0.020853 0.955682 +0.608527 0.041705 0.955196 +0.608011 0.062554 0.954387 +0.607289 0.083399 0.953252 +0.606358 0.104238 0.951792 +0.605220 0.125071 0.950005 +0.603873 0.145894 0.947891 +0.602316 0.166708 0.945446 +0.600547 0.187509 0.942671 +0.598567 0.208296 0.939561 +0.596372 0.229066 0.936116 +0.593962 0.249818 0.932333 +0.591334 0.270548 0.928209 +0.588488 0.291254 0.923741 +0.585420 0.311933 0.918926 +0.582130 0.332582 0.913761 +0.578614 0.353196 0.908242 +0.574870 0.373772 0.902365 +0.570896 0.394306 0.896128 +0.566690 0.414792 0.889525 +0.562248 0.435227 0.882553 +0.557568 0.455604 0.875207 +0.552648 0.475918 0.867483 +0.547484 0.496162 0.859377 +0.542073 0.516330 0.850885 +0.536414 0.536414 0.842001 +0.516330 0.542073 0.850885 +0.496162 0.547484 0.859377 +0.475918 0.552648 0.867483 +0.455604 0.557568 0.875207 +0.435227 0.562248 0.882553 +0.414792 0.566690 0.889525 +0.394306 0.570896 0.896128 +0.373772 0.574870 0.902365 +0.353196 0.578614 0.908242 +0.332582 0.582130 0.913761 +0.311933 0.585420 0.918926 +0.291254 0.588488 0.923741 +0.270548 0.591334 0.928209 +0.249818 0.593962 0.932333 +0.229066 0.596372 0.936116 +0.208296 0.598567 0.939561 +0.187509 0.600547 0.942671 +0.166708 0.602316 0.945446 +0.145894 0.603873 0.947891 +0.125071 0.605220 0.950005 +0.104238 0.606358 0.951792 +0.083399 0.607289 0.953252 +0.062554 0.608011 0.954387 +0.041705 0.608527 0.955196 +0.020853 0.608836 0.955682 +0.000000 0.608940 0.955844 +0.629646 0.000000 0.942332 +0.629543 0.020558 0.942177 +0.629232 0.041116 0.941712 +0.628713 0.061672 0.940936 +0.627987 0.082226 0.939849 +0.627052 0.102777 0.938449 +0.625907 0.123324 0.936737 +0.624553 0.143865 0.934709 +0.622986 0.164401 0.932365 +0.621207 0.184929 0.929703 +0.619214 0.205449 0.926720 +0.617005 0.225958 0.923413 +0.614578 0.246455 0.919781 +0.611932 0.266937 0.915821 +0.609064 0.287404 0.911529 +0.605972 0.307851 0.906901 +0.602654 0.328278 0.901935 +0.599107 0.348679 0.896626 +0.595328 0.369052 0.890971 +0.591315 0.389394 0.884965 +0.587065 0.409700 0.878604 +0.582574 0.429966 0.871884 +0.577840 0.450186 0.864799 +0.572860 0.470356 0.857345 +0.567630 0.490469 0.849518 +0.562146 0.510520 0.841311 +0.556406 0.530502 0.832721 +0.550406 0.550406 0.823741 +0.530502 0.556406 0.832721 +0.510520 0.562146 0.841311 +0.490469 0.567630 0.849518 +0.470356 0.572860 0.857345 +0.450186 0.577840 0.864799 +0.429966 0.582574 0.871884 +0.409700 0.587065 0.878604 +0.389394 0.591315 0.884965 +0.369052 0.595328 0.890971 +0.348679 0.599107 0.896626 +0.328278 0.602654 0.901935 +0.307851 0.605972 0.906901 +0.287404 0.609064 0.911529 +0.266937 0.611932 0.915821 +0.246455 0.614578 0.919781 +0.225958 0.617005 0.923413 +0.205449 0.619214 0.926720 +0.184929 0.621207 0.929703 +0.164401 0.622986 0.932365 +0.143865 0.624553 0.934709 +0.123324 0.625907 0.936737 +0.102777 0.627052 0.938449 +0.082226 0.627987 0.939849 +0.061672 0.628713 0.940936 +0.041116 0.629232 0.941712 +0.020558 0.629543 0.942177 +0.000000 0.629646 0.942332 +0.650053 0.000000 0.928372 +0.649949 0.020254 0.928224 +0.649638 0.040508 0.927779 +0.649118 0.060761 0.927037 +0.648390 0.081014 0.925997 +0.647453 0.101267 0.924659 +0.646306 0.121518 0.923020 +0.644947 0.141768 0.921080 +0.643377 0.162016 0.918837 +0.641592 0.182261 0.916289 +0.639592 0.202503 0.913432 +0.637375 0.222741 0.910266 +0.634939 0.242973 0.906786 +0.632281 0.263198 0.902991 +0.629399 0.283414 0.898875 +0.626292 0.303621 0.894437 +0.622955 0.323814 0.889672 +0.619386 0.343993 0.884576 +0.615583 0.364153 0.879144 +0.611542 0.384293 0.873373 +0.607260 0.404408 0.867257 +0.602733 0.424495 0.860791 +0.597957 0.444549 0.853972 +0.592930 0.464566 0.846792 +0.587647 0.484540 0.839247 +0.582105 0.504465 0.831332 +0.576299 0.524335 0.823041 +0.570226 0.544143 0.814368 +0.563882 0.563882 0.805307 +0.544143 0.570226 0.814368 +0.524335 0.576299 0.823041 +0.504465 0.582105 0.831332 +0.484540 0.587647 0.839247 +0.464566 0.592930 0.846792 +0.444549 0.597957 0.853972 +0.424495 0.602733 0.860791 +0.404408 0.607260 0.867257 +0.384293 0.611542 0.873373 +0.364153 0.615583 0.879144 +0.343993 0.619386 0.884576 +0.323814 0.622955 0.889672 +0.303621 0.626292 0.894437 +0.283414 0.629399 0.898875 +0.263198 0.632281 0.902991 +0.242973 0.634939 0.906786 +0.222741 0.637375 0.910266 +0.202503 0.639592 0.913432 +0.182261 0.641592 0.916289 +0.162016 0.643377 0.918837 +0.141768 0.644947 0.921080 +0.121518 0.646306 0.923020 +0.101267 0.647453 0.924659 +0.081014 0.648390 0.925997 +0.060761 0.649118 0.927037 +0.040508 0.649638 0.927779 +0.020254 0.649949 0.928224 +0.000000 0.650053 0.928372 +0.670151 0.000000 0.913971 +0.670047 0.019940 0.913829 +0.669736 0.039880 0.913405 +0.669217 0.059821 0.912696 +0.668489 0.079764 0.911704 +0.667552 0.099708 0.910427 +0.666406 0.119654 0.908862 +0.665047 0.139602 0.907010 +0.663477 0.159553 0.904868 +0.661692 0.179505 0.902434 +0.659691 0.199460 0.899705 +0.657472 0.219416 0.896678 +0.655033 0.239373 0.893352 +0.652371 0.259330 0.889722 +0.649484 0.279287 0.885784 +0.646369 0.299241 0.881536 +0.643023 0.319192 0.876973 +0.639443 0.339138 0.872091 +0.635626 0.359075 0.866885 +0.631568 0.379003 0.861350 +0.627265 0.398917 0.855481 +0.622713 0.418816 0.849274 +0.617909 0.438693 0.842722 +0.612849 0.458547 0.835820 +0.607527 0.478371 0.828563 +0.601941 0.498161 0.820943 +0.596084 0.517910 0.812956 +0.589953 0.537613 0.804594 +0.583543 0.557262 0.795852 +0.576849 0.576849 0.786723 +0.557262 0.583543 0.795852 +0.537613 0.589953 0.804594 +0.517910 0.596084 0.812956 +0.498161 0.601941 0.820943 +0.478371 0.607527 0.828563 +0.458547 0.612849 0.835820 +0.438693 0.617909 0.842722 +0.418816 0.622713 0.849274 +0.398917 0.627265 0.855481 +0.379003 0.631568 0.861350 +0.359075 0.635626 0.866885 +0.339138 0.639443 0.872091 +0.319192 0.643023 0.876973 +0.299241 0.646369 0.881536 +0.279287 0.649484 0.885784 +0.259330 0.652371 0.889722 +0.239373 0.655033 0.893352 +0.219416 0.657472 0.896678 +0.199460 0.659691 0.899705 +0.179505 0.661692 0.902434 +0.159553 0.663477 0.904868 +0.139602 0.665047 0.907010 +0.119654 0.666406 0.908862 +0.099708 0.667552 0.910427 +0.079764 0.668489 0.911704 +0.059821 0.669217 0.912696 +0.039880 0.669736 0.913405 +0.019940 0.670047 0.913829 +0.000000 0.670151 0.913971 +0.689930 0.000000 0.899134 +0.689826 0.019616 0.898999 +0.689516 0.039233 0.898595 +0.688999 0.058853 0.897921 +0.688274 0.078475 0.896976 +0.687340 0.098102 0.895759 +0.686197 0.117733 0.894269 +0.684843 0.137370 0.892505 +0.683276 0.157013 0.890463 +0.681496 0.176663 0.888143 +0.679500 0.196320 0.885541 +0.677285 0.215984 0.882655 +0.674850 0.235656 0.879482 +0.672192 0.255336 0.876017 +0.669307 0.275022 0.872258 +0.666194 0.294715 0.868201 +0.662848 0.314412 0.863841 +0.659267 0.334114 0.859173 +0.655446 0.353819 0.854194 +0.651382 0.373524 0.848897 +0.647070 0.393227 0.843278 +0.642506 0.412926 0.837331 +0.637687 0.432617 0.831049 +0.632606 0.452297 0.824428 +0.627260 0.471961 0.817461 +0.621643 0.491606 0.810141 +0.615751 0.511225 0.802462 +0.609577 0.530812 0.794417 +0.603118 0.550362 0.785999 +0.596367 0.569867 0.777201 +0.589320 0.589320 0.768016 +0.569867 0.596367 0.777201 +0.550362 0.603118 0.785999 +0.530812 0.609577 0.794417 +0.511225 0.615751 0.802462 +0.491606 0.621643 0.810141 +0.471961 0.627260 0.817461 +0.452297 0.632606 0.824428 +0.432617 0.637687 0.831049 +0.412926 0.642506 0.837331 +0.393227 0.647070 0.843278 +0.373524 0.651382 0.848897 +0.353819 0.655446 0.854194 +0.334114 0.659267 0.859173 +0.314412 0.662848 0.863841 +0.294715 0.666194 0.868201 +0.275022 0.669307 0.872258 +0.255336 0.672192 0.876017 +0.235656 0.674850 0.879482 +0.215984 0.677285 0.882655 +0.196320 0.679500 0.885541 +0.176663 0.681496 0.888143 +0.157013 0.683276 0.890463 +0.137370 0.684843 0.892505 +0.117733 0.686197 0.894269 +0.098102 0.687340 0.895759 +0.078475 0.688274 0.896976 +0.058853 0.688999 0.897921 +0.039233 0.689516 0.898595 +0.019616 0.689826 0.898999 +0.000000 0.689930 0.899134 +0.709380 0.000000 0.883869 +0.709277 0.019283 0.883741 +0.708969 0.038568 0.883357 +0.708455 0.057856 0.882717 +0.707734 0.077149 0.881819 +0.706807 0.096448 0.880663 +0.705670 0.115755 0.879247 +0.704324 0.135071 0.877569 +0.702766 0.154397 0.875629 +0.700995 0.173734 0.873422 +0.699009 0.193084 0.870947 +0.696805 0.212447 0.868201 +0.694381 0.231824 0.865180 +0.691733 0.251216 0.861882 +0.688860 0.270621 0.858301 +0.685756 0.290041 0.854435 +0.682420 0.309476 0.850278 +0.678847 0.328924 0.845826 +0.675033 0.348384 0.841073 +0.670973 0.367856 0.836015 +0.666664 0.387337 0.830646 +0.662101 0.406826 0.824961 +0.657278 0.426319 0.818952 +0.652191 0.445815 0.812613 +0.646834 0.465309 0.805939 +0.641202 0.484797 0.798921 +0.635289 0.504276 0.791554 +0.629090 0.523738 0.783830 +0.622597 0.543179 0.775740 +0.615806 0.562592 0.767279 +0.608710 0.581970 0.758438 +0.601303 0.601303 0.749208 +0.581970 0.608710 0.758438 +0.562592 0.615806 0.767279 +0.543179 0.622597 0.775740 +0.523738 0.629090 0.783830 +0.504276 0.635289 0.791554 +0.484797 0.641202 0.798921 +0.465309 0.646834 0.805939 +0.445815 0.652191 0.812613 +0.426319 0.657278 0.818952 +0.406826 0.662101 0.824961 +0.387337 0.666664 0.830646 +0.367856 0.670973 0.836015 +0.348384 0.675033 0.841073 +0.328924 0.678847 0.845826 +0.309476 0.682420 0.850278 +0.290041 0.685756 0.854435 +0.270621 0.688860 0.858301 +0.251216 0.691733 0.861882 +0.231824 0.694381 0.865180 +0.212447 0.696805 0.868201 +0.193084 0.699009 0.870947 +0.173734 0.700995 0.873422 +0.154397 0.702766 0.875629 +0.135071 0.704324 0.877569 +0.115755 0.705670 0.879247 +0.096448 0.706807 0.880663 +0.077149 0.707734 0.881819 +0.057856 0.708455 0.882717 +0.038568 0.708969 0.883357 +0.019283 0.709277 0.883741 +0.000000 0.709380 0.883869 +0.728493 0.000000 0.868184 +0.728391 0.018941 0.868062 +0.728086 0.037885 0.867699 +0.727576 0.056832 0.867091 +0.726862 0.075786 0.866240 +0.725942 0.094749 0.865144 +0.724816 0.113722 0.863802 +0.723481 0.132707 0.862211 +0.721937 0.151707 0.860370 +0.720180 0.170722 0.858277 +0.718209 0.189755 0.855928 +0.716022 0.208806 0.853321 +0.713615 0.227878 0.850453 +0.710985 0.246971 0.847319 +0.708130 0.266086 0.843916 +0.705045 0.285223 0.840240 +0.701727 0.304383 0.836286 +0.698172 0.323566 0.832049 +0.694375 0.342772 0.827524 +0.690332 0.361999 0.822705 +0.686037 0.381247 0.817587 +0.681486 0.400515 0.812163 +0.676673 0.419800 0.806428 +0.671593 0.439100 0.800374 +0.666240 0.458413 0.793994 +0.660608 0.477734 0.787281 +0.654690 0.497060 0.780229 +0.648480 0.516387 0.772828 +0.641971 0.535709 0.765071 +0.635157 0.555019 0.756950 +0.628030 0.574312 0.748457 +0.620584 0.593579 0.739584 +0.612812 0.612812 0.730321 +0.593579 0.620584 0.739584 +0.574312 0.628030 0.748457 +0.555019 0.635157 0.756950 +0.535709 0.641971 0.765071 +0.516387 0.648480 0.772828 +0.497060 0.654690 0.780229 +0.477734 0.660608 0.787281 +0.458413 0.666240 0.793994 +0.439100 0.671593 0.800374 +0.419800 0.676673 0.806428 +0.400515 0.681486 0.812163 +0.381247 0.686037 0.817587 +0.361999 0.690332 0.822705 +0.342772 0.694375 0.827524 +0.323566 0.698172 0.832049 +0.304383 0.701727 0.836286 +0.285223 0.705045 0.840240 +0.266086 0.708130 0.843916 +0.246971 0.710985 0.847319 +0.227878 0.713615 0.850453 +0.208806 0.716022 0.853321 +0.189755 0.718209 0.855928 +0.170722 0.720180 0.858277 +0.151707 0.721937 0.860370 +0.132707 0.723481 0.862211 +0.113722 0.724816 0.863802 +0.094749 0.725942 0.865144 +0.075786 0.726862 0.866240 +0.056832 0.727576 0.867091 +0.037885 0.728086 0.867699 +0.018941 0.728391 0.868062 +0.000000 0.728493 0.868184 +0.747259 0.000000 0.852085 +0.747158 0.018590 0.851970 +0.746856 0.037183 0.851626 +0.746353 0.055781 0.851052 +0.745647 0.074387 0.850248 +0.744738 0.093004 0.849211 +0.743625 0.111634 0.847941 +0.742305 0.130279 0.846437 +0.740777 0.148942 0.844695 +0.739040 0.167626 0.842713 +0.737090 0.186332 0.840490 +0.734925 0.205062 0.838021 +0.732542 0.223819 0.835304 +0.729937 0.242603 0.832334 +0.727108 0.261417 0.829108 +0.724050 0.280261 0.825621 +0.720759 0.299136 0.821869 +0.717232 0.318043 0.817846 +0.713462 0.336982 0.813547 +0.709445 0.355954 0.808967 +0.705177 0.374958 0.804100 +0.700650 0.393993 0.798939 +0.695861 0.413058 0.793477 +0.690801 0.432151 0.787708 +0.685466 0.451271 0.781624 +0.679848 0.470414 0.775218 +0.673940 0.489577 0.768481 +0.667736 0.508756 0.761407 +0.661228 0.527947 0.753986 +0.654408 0.547143 0.746209 +0.647269 0.566340 0.738069 +0.639803 0.585530 0.729555 +0.632001 0.604705 0.720660 +0.623857 0.623857 0.711372 +0.604705 0.632001 0.720660 +0.585530 0.639803 0.729555 +0.566340 0.647269 0.738069 +0.547143 0.654408 0.746209 +0.527947 0.661228 0.753986 +0.508756 0.667736 0.761407 +0.489577 0.673940 0.768481 +0.470414 0.679848 0.775218 +0.451271 0.685466 0.781624 +0.432151 0.690801 0.787708 +0.413058 0.695861 0.793477 +0.393993 0.700650 0.798939 +0.374958 0.705177 0.804100 +0.355954 0.709445 0.808967 +0.336982 0.713462 0.813547 +0.318043 0.717232 0.817846 +0.299136 0.720759 0.821869 +0.280261 0.724050 0.825621 +0.261417 0.727108 0.829108 +0.242603 0.729937 0.832334 +0.223819 0.732542 0.835304 +0.205062 0.734925 0.838021 +0.186332 0.737090 0.840490 +0.167626 0.739040 0.842713 +0.148942 0.740777 0.844695 +0.130279 0.742305 0.846437 +0.111634 0.743625 0.847941 +0.093004 0.744738 0.849211 +0.074387 0.745647 0.850248 +0.055781 0.746353 0.851052 +0.037183 0.746856 0.851626 +0.018590 0.747158 0.851970 +0.000000 0.747259 0.852085 +0.765669 0.000000 0.835581 +0.765570 0.018230 0.835473 +0.765273 0.036463 0.835148 +0.764776 0.054703 0.834607 +0.764081 0.072952 0.833848 +0.763185 0.091214 0.832870 +0.762087 0.109492 0.831672 +0.760786 0.127788 0.830252 +0.759280 0.146106 0.828608 +0.757566 0.164448 0.826738 +0.755642 0.182818 0.824638 +0.753505 0.201217 0.822306 +0.751152 0.219648 0.819738 +0.748579 0.238114 0.816931 +0.745783 0.256615 0.813880 +0.742760 0.275155 0.810581 +0.739506 0.293735 0.807029 +0.736015 0.312355 0.803219 +0.732282 0.331017 0.799146 +0.728303 0.349722 0.794804 +0.724072 0.368470 0.790186 +0.719582 0.387260 0.785286 +0.714828 0.406093 0.780098 +0.709803 0.424968 0.774614 +0.704499 0.443882 0.768826 +0.698911 0.462834 0.762727 +0.693029 0.481822 0.756309 +0.686847 0.500841 0.749562 +0.680356 0.519889 0.742479 +0.673549 0.538961 0.735050 +0.666416 0.558050 0.727265 +0.658948 0.577152 0.719116 +0.651138 0.596258 0.710592 +0.642975 0.615360 0.701684 +0.634450 0.634450 0.692381 +0.615360 0.642975 0.701684 +0.596258 0.651138 0.710592 +0.577152 0.658948 0.719116 +0.558050 0.666416 0.727265 +0.538961 0.673549 0.735050 +0.519889 0.680356 0.742479 +0.500841 0.686847 0.749562 +0.481822 0.693029 0.756309 +0.462834 0.698911 0.762727 +0.443882 0.704499 0.768826 +0.424968 0.709803 0.774614 +0.406093 0.714828 0.780098 +0.387260 0.719582 0.785286 +0.368470 0.724072 0.790186 +0.349722 0.728303 0.794804 +0.331017 0.732282 0.799146 +0.312355 0.736015 0.803219 +0.293735 0.739506 0.807029 +0.275155 0.742760 0.810581 +0.256615 0.745783 0.813880 +0.238114 0.748579 0.816931 +0.219648 0.751152 0.819738 +0.201217 0.753505 0.822306 +0.182818 0.755642 0.824638 +0.164448 0.757566 0.826738 +0.146106 0.759280 0.828608 +0.127788 0.760786 0.830252 +0.109492 0.762087 0.831672 +0.091214 0.763185 0.832870 +0.072952 0.764081 0.833848 +0.054703 0.764776 0.834607 +0.036463 0.765273 0.835148 +0.018230 0.765570 0.835473 +0.000000 0.765669 0.835581 +0.783715 0.000000 0.818679 +0.783617 0.017861 0.818577 +0.783325 0.035727 0.818272 +0.782838 0.053599 0.817763 +0.782154 0.071483 0.817049 +0.781274 0.089381 0.816129 +0.780195 0.107297 0.815002 +0.778915 0.125235 0.813666 +0.777434 0.143198 0.812118 +0.775748 0.161190 0.810357 +0.773854 0.179213 0.808379 +0.771751 0.197271 0.806182 +0.769434 0.215367 0.803761 +0.766900 0.233504 0.801115 +0.764145 0.251683 0.798237 +0.761165 0.269908 0.795124 +0.757955 0.288181 0.791770 +0.754510 0.306503 0.788172 +0.750825 0.324877 0.784322 +0.746894 0.343303 0.780216 +0.742711 0.361783 0.775846 +0.738270 0.380317 0.771207 +0.733564 0.398906 0.766291 +0.728586 0.417549 0.761091 +0.723329 0.436245 0.755599 +0.717784 0.454994 0.749807 +0.711944 0.473793 0.743707 +0.705801 0.492641 0.737289 +0.699345 0.511533 0.730545 +0.692567 0.530466 0.723465 +0.685458 0.549436 0.716039 +0.678009 0.568437 0.708257 +0.670209 0.587462 0.700109 +0.662048 0.606504 0.691585 +0.653517 0.625554 0.682673 +0.644604 0.644604 0.673362 +0.625554 0.653517 0.682673 +0.606504 0.662048 0.691585 +0.587462 0.670209 0.700109 +0.568437 0.678009 0.708257 +0.549436 0.685458 0.716039 +0.530466 0.692567 0.723465 +0.511533 0.699345 0.730545 +0.492641 0.705801 0.737289 +0.473793 0.711944 0.743707 +0.454994 0.717784 0.749807 +0.436245 0.723329 0.755599 +0.417549 0.728586 0.761091 +0.398906 0.733564 0.766291 +0.380317 0.738270 0.771207 +0.361783 0.742711 0.775846 +0.343303 0.746894 0.780216 +0.324877 0.750825 0.784322 +0.306503 0.754510 0.788172 +0.288181 0.757955 0.791770 +0.269908 0.761165 0.795124 +0.251683 0.764145 0.798237 +0.233504 0.766900 0.801115 +0.215367 0.769434 0.803761 +0.197271 0.771751 0.806182 +0.179213 0.773854 0.808379 +0.161190 0.775748 0.810357 +0.143198 0.777434 0.812118 +0.125235 0.778915 0.813666 +0.107297 0.780195 0.815002 +0.089381 0.781274 0.816129 +0.071483 0.782154 0.817049 +0.053599 0.782838 0.817763 +0.035727 0.783325 0.818272 +0.017861 0.783617 0.818577 +0.000000 0.783715 0.818679 +0.801388 0.000000 0.801388 +0.801292 0.017484 0.801292 +0.801006 0.034973 0.801006 +0.800528 0.052469 0.800528 +0.799859 0.069979 0.799859 +0.798995 0.087504 0.798995 +0.797938 0.105050 0.797938 +0.796683 0.122621 0.796683 +0.795230 0.140221 0.795230 +0.793576 0.157852 0.793576 +0.791719 0.175520 0.791719 +0.789654 0.193227 0.789654 +0.787379 0.210978 0.787379 +0.784891 0.228775 0.784891 +0.782184 0.246622 0.782184 +0.779254 0.264521 0.779254 +0.776097 0.282476 0.776097 +0.772707 0.300489 0.772707 +0.769078 0.318563 0.769078 +0.765205 0.336698 0.765205 +0.761082 0.354898 0.761082 +0.756701 0.373164 0.756701 +0.752056 0.391495 0.752056 +0.747138 0.409894 0.747138 +0.741941 0.428360 0.741941 +0.736455 0.446892 0.736455 +0.730672 0.465490 0.730672 +0.724583 0.484151 0.724583 +0.718179 0.502874 0.718179 +0.711449 0.521656 0.711449 +0.704384 0.540492 0.704384 +0.696972 0.559379 0.696972 +0.689203 0.578310 0.689203 +0.681066 0.597279 0.681066 +0.672550 0.616278 0.672550 +0.663642 0.635299 0.663642 +0.654330 0.654330 0.654330 +0.635299 0.663642 0.663642 +0.616278 0.672550 0.672550 +0.597279 0.681066 0.681066 +0.578310 0.689203 0.689203 +0.559379 0.696972 0.696972 +0.540492 0.704384 0.704384 +0.521656 0.711449 0.711449 +0.502874 0.718179 0.718179 +0.484151 0.724583 0.724583 +0.465490 0.730672 0.730672 +0.446892 0.736455 0.736455 +0.428360 0.741941 0.741941 +0.409894 0.747138 0.747138 +0.391495 0.752056 0.752056 +0.373164 0.756701 0.756701 +0.354898 0.761082 0.761082 +0.336698 0.765205 0.765205 +0.318563 0.769078 0.769078 +0.300489 0.772707 0.772707 +0.282476 0.776097 0.776097 +0.264521 0.779254 0.779254 +0.246622 0.782184 0.782184 +0.228775 0.784891 0.784891 +0.210978 0.787379 0.787379 +0.193227 0.789654 0.789654 +0.175520 0.791719 0.791719 +0.157852 0.793576 0.793576 +0.140221 0.795230 0.795230 +0.122621 0.796683 0.796683 +0.105050 0.797938 0.797938 +0.087504 0.798995 0.798995 +0.069979 0.799859 0.799859 +0.052469 0.800528 0.800528 +0.034973 0.801006 0.801006 +0.017484 0.801292 0.801292 +0.000000 0.801388 0.801388 +0.818679 0.000000 0.783715 +0.818577 0.017861 0.783617 +0.818272 0.035727 0.783325 +0.817763 0.053599 0.782838 +0.817049 0.071483 0.782154 +0.816129 0.089381 0.781274 +0.815002 0.107297 0.780195 +0.813666 0.125235 0.778915 +0.812118 0.143198 0.777434 +0.810357 0.161190 0.775748 +0.808379 0.179213 0.773854 +0.806182 0.197271 0.771751 +0.803761 0.215367 0.769434 +0.801115 0.233504 0.766900 +0.798237 0.251683 0.764145 +0.795124 0.269908 0.761165 +0.791770 0.288181 0.757955 +0.788172 0.306503 0.754510 +0.784322 0.324877 0.750825 +0.780216 0.343303 0.746894 +0.775846 0.361783 0.742711 +0.771207 0.380317 0.738270 +0.766291 0.398906 0.733564 +0.761091 0.417549 0.728586 +0.755599 0.436245 0.723329 +0.749807 0.454994 0.717784 +0.743707 0.473793 0.711944 +0.737289 0.492641 0.705801 +0.730545 0.511533 0.699345 +0.723465 0.530466 0.692567 +0.716039 0.549436 0.685458 +0.708257 0.568437 0.678009 +0.700109 0.587462 0.670209 +0.691585 0.606504 0.662048 +0.682673 0.625554 0.653517 +0.673362 0.644604 0.644604 +0.663642 0.663642 0.635299 +0.644604 0.673362 0.644604 +0.625554 0.682673 0.653517 +0.606504 0.691585 0.662048 +0.587462 0.700109 0.670209 +0.568437 0.708257 0.678009 +0.549436 0.716039 0.685458 +0.530466 0.723465 0.692567 +0.511533 0.730545 0.699345 +0.492641 0.737289 0.705801 +0.473793 0.743707 0.711944 +0.454994 0.749807 0.717784 +0.436245 0.755599 0.723329 +0.417549 0.761091 0.728586 +0.398906 0.766291 0.733564 +0.380317 0.771207 0.738270 +0.361783 0.775846 0.742711 +0.343303 0.780216 0.746894 +0.324877 0.784322 0.750825 +0.306503 0.788172 0.754510 +0.288181 0.791770 0.757955 +0.269908 0.795124 0.761165 +0.251683 0.798237 0.764145 +0.233504 0.801115 0.766900 +0.215367 0.803761 0.769434 +0.197271 0.806182 0.771751 +0.179213 0.808379 0.773854 +0.161190 0.810357 0.775748 +0.143198 0.812118 0.777434 +0.125235 0.813666 0.778915 +0.107297 0.815002 0.780195 +0.089381 0.816129 0.781274 +0.071483 0.817049 0.782154 +0.053599 0.817763 0.782838 +0.035727 0.818272 0.783325 +0.017861 0.818577 0.783617 +0.000000 0.818679 0.783715 +0.835581 0.000000 0.765669 +0.835473 0.018230 0.765570 +0.835148 0.036463 0.765273 +0.834607 0.054703 0.764776 +0.833848 0.072952 0.764081 +0.832870 0.091214 0.763185 +0.831672 0.109492 0.762087 +0.830252 0.127788 0.760786 +0.828608 0.146106 0.759280 +0.826738 0.164448 0.757566 +0.824638 0.182818 0.755642 +0.822306 0.201217 0.753505 +0.819738 0.219648 0.751152 +0.816931 0.238114 0.748579 +0.813880 0.256615 0.745783 +0.810581 0.275155 0.742760 +0.807029 0.293735 0.739506 +0.803219 0.312355 0.736015 +0.799146 0.331017 0.732282 +0.794804 0.349722 0.728303 +0.790186 0.368470 0.724072 +0.785286 0.387260 0.719582 +0.780098 0.406093 0.714828 +0.774614 0.424968 0.709803 +0.768826 0.443882 0.704499 +0.762727 0.462834 0.698911 +0.756309 0.481822 0.693029 +0.749562 0.500841 0.686847 +0.742479 0.519889 0.680356 +0.735050 0.538961 0.673549 +0.727265 0.558050 0.666416 +0.719116 0.577152 0.658948 +0.710592 0.596258 0.651138 +0.701684 0.615360 0.642975 +0.692381 0.634450 0.634450 +0.682673 0.653517 0.625554 +0.672550 0.672550 0.616278 +0.653517 0.682673 0.625554 +0.634450 0.692381 0.634450 +0.615360 0.701684 0.642975 +0.596258 0.710592 0.651138 +0.577152 0.719116 0.658948 +0.558050 0.727265 0.666416 +0.538961 0.735050 0.673549 +0.519889 0.742479 0.680356 +0.500841 0.749562 0.686847 +0.481822 0.756309 0.693029 +0.462834 0.762727 0.698911 +0.443882 0.768826 0.704499 +0.424968 0.774614 0.709803 +0.406093 0.780098 0.714828 +0.387260 0.785286 0.719582 +0.368470 0.790186 0.724072 +0.349722 0.794804 0.728303 +0.331017 0.799146 0.732282 +0.312355 0.803219 0.736015 +0.293735 0.807029 0.739506 +0.275155 0.810581 0.742760 +0.256615 0.813880 0.745783 +0.238114 0.816931 0.748579 +0.219648 0.819738 0.751152 +0.201217 0.822306 0.753505 +0.182818 0.824638 0.755642 +0.164448 0.826738 0.757566 +0.146106 0.828608 0.759280 +0.127788 0.830252 0.760786 +0.109492 0.831672 0.762087 +0.091214 0.832870 0.763185 +0.072952 0.833848 0.764081 +0.054703 0.834607 0.764776 +0.036463 0.835148 0.765273 +0.018230 0.835473 0.765570 +0.000000 0.835581 0.765669 +0.852085 0.000000 0.747259 +0.851970 0.018590 0.747158 +0.851626 0.037183 0.746856 +0.851052 0.055781 0.746353 +0.850248 0.074387 0.745647 +0.849211 0.093004 0.744738 +0.847941 0.111634 0.743625 +0.846437 0.130279 0.742305 +0.844695 0.148942 0.740777 +0.842713 0.167626 0.739040 +0.840490 0.186332 0.737090 +0.838021 0.205062 0.734925 +0.835304 0.223819 0.732542 +0.832334 0.242603 0.729937 +0.829108 0.261417 0.727108 +0.825621 0.280261 0.724050 +0.821869 0.299136 0.720759 +0.817846 0.318043 0.717232 +0.813547 0.336982 0.713462 +0.808967 0.355954 0.709445 +0.804100 0.374958 0.705177 +0.798939 0.393993 0.700650 +0.793477 0.413058 0.695861 +0.787708 0.432151 0.690801 +0.781624 0.451271 0.685466 +0.775218 0.470414 0.679848 +0.768481 0.489577 0.673940 +0.761407 0.508756 0.667736 +0.753986 0.527947 0.661228 +0.746209 0.547143 0.654408 +0.738069 0.566340 0.647269 +0.729555 0.585530 0.639803 +0.720660 0.604705 0.632001 +0.711372 0.623857 0.623857 +0.701684 0.642975 0.615360 +0.691585 0.662048 0.606504 +0.681066 0.681066 0.597279 +0.662048 0.691585 0.606504 +0.642975 0.701684 0.615360 +0.623857 0.711372 0.623857 +0.604705 0.720660 0.632001 +0.585530 0.729555 0.639803 +0.566340 0.738069 0.647269 +0.547143 0.746209 0.654408 +0.527947 0.753986 0.661228 +0.508756 0.761407 0.667736 +0.489577 0.768481 0.673940 +0.470414 0.775218 0.679848 +0.451271 0.781624 0.685466 +0.432151 0.787708 0.690801 +0.413058 0.793477 0.695861 +0.393993 0.798939 0.700650 +0.374958 0.804100 0.705177 +0.355954 0.808967 0.709445 +0.336982 0.813547 0.713462 +0.318043 0.817846 0.717232 +0.299136 0.821869 0.720759 +0.280261 0.825621 0.724050 +0.261417 0.829108 0.727108 +0.242603 0.832334 0.729937 +0.223819 0.835304 0.732542 +0.205062 0.838021 0.734925 +0.186332 0.840490 0.737090 +0.167626 0.842713 0.739040 +0.148942 0.844695 0.740777 +0.130279 0.846437 0.742305 +0.111634 0.847941 0.743625 +0.093004 0.849211 0.744738 +0.074387 0.850248 0.745647 +0.055781 0.851052 0.746353 +0.037183 0.851626 0.746856 +0.018590 0.851970 0.747158 +0.000000 0.852085 0.747259 +0.868184 0.000000 0.728493 +0.868062 0.018941 0.728391 +0.867699 0.037885 0.728086 +0.867091 0.056832 0.727576 +0.866240 0.075786 0.726862 +0.865144 0.094749 0.725942 +0.863802 0.113722 0.724816 +0.862211 0.132707 0.723481 +0.860370 0.151707 0.721937 +0.858277 0.170722 0.720180 +0.855928 0.189755 0.718209 +0.853321 0.208806 0.716022 +0.850453 0.227878 0.713615 +0.847319 0.246971 0.710985 +0.843916 0.266086 0.708130 +0.840240 0.285223 0.705045 +0.836286 0.304383 0.701727 +0.832049 0.323566 0.698172 +0.827524 0.342772 0.694375 +0.822705 0.361999 0.690332 +0.817587 0.381247 0.686037 +0.812163 0.400515 0.681486 +0.806428 0.419800 0.676673 +0.800374 0.439100 0.671593 +0.793994 0.458413 0.666240 +0.787281 0.477734 0.660608 +0.780229 0.497060 0.654690 +0.772828 0.516387 0.648480 +0.765071 0.535709 0.641971 +0.756950 0.555019 0.635157 +0.748457 0.574312 0.628030 +0.739584 0.593579 0.620584 +0.730321 0.612812 0.612812 +0.720660 0.632001 0.604705 +0.710592 0.651138 0.596258 +0.700109 0.670209 0.587462 +0.689203 0.689203 0.578310 +0.670209 0.700109 0.587462 +0.651138 0.710592 0.596258 +0.632001 0.720660 0.604705 +0.612812 0.730321 0.612812 +0.593579 0.739584 0.620584 +0.574312 0.748457 0.628030 +0.555019 0.756950 0.635157 +0.535709 0.765071 0.641971 +0.516387 0.772828 0.648480 +0.497060 0.780229 0.654690 +0.477734 0.787281 0.660608 +0.458413 0.793994 0.666240 +0.439100 0.800374 0.671593 +0.419800 0.806428 0.676673 +0.400515 0.812163 0.681486 +0.381247 0.817587 0.686037 +0.361999 0.822705 0.690332 +0.342772 0.827524 0.694375 +0.323566 0.832049 0.698172 +0.304383 0.836286 0.701727 +0.285223 0.840240 0.705045 +0.266086 0.843916 0.708130 +0.246971 0.847319 0.710985 +0.227878 0.850453 0.713615 +0.208806 0.853321 0.716022 +0.189755 0.855928 0.718209 +0.170722 0.858277 0.720180 +0.151707 0.860370 0.721937 +0.132707 0.862211 0.723481 +0.113722 0.863802 0.724816 +0.094749 0.865144 0.725942 +0.075786 0.866240 0.726862 +0.056832 0.867091 0.727576 +0.037885 0.867699 0.728086 +0.018941 0.868062 0.728391 +0.000000 0.868184 0.728493 +0.883869 0.000000 0.709380 +0.883741 0.019283 0.709277 +0.883357 0.038568 0.708969 +0.882717 0.057856 0.708455 +0.881819 0.077149 0.707734 +0.880663 0.096448 0.706807 +0.879247 0.115755 0.705670 +0.877569 0.135071 0.704324 +0.875629 0.154397 0.702766 +0.873422 0.173734 0.700995 +0.870947 0.193084 0.699009 +0.868201 0.212447 0.696805 +0.865180 0.231824 0.694381 +0.861882 0.251216 0.691733 +0.858301 0.270621 0.688860 +0.854435 0.290041 0.685756 +0.850278 0.309476 0.682420 +0.845826 0.328924 0.678847 +0.841073 0.348384 0.675033 +0.836015 0.367856 0.670973 +0.830646 0.387337 0.666664 +0.824961 0.406826 0.662101 +0.818952 0.426319 0.657278 +0.812613 0.445815 0.652191 +0.805939 0.465309 0.646834 +0.798921 0.484797 0.641202 +0.791554 0.504276 0.635289 +0.783830 0.523738 0.629090 +0.775740 0.543179 0.622597 +0.767279 0.562592 0.615806 +0.758438 0.581970 0.608710 +0.749208 0.601303 0.601303 +0.739584 0.620584 0.593579 +0.729555 0.639803 0.585530 +0.719116 0.658948 0.577152 +0.708257 0.678009 0.568437 +0.696972 0.696972 0.559379 +0.678009 0.708257 0.568437 +0.658948 0.719116 0.577152 +0.639803 0.729555 0.585530 +0.620584 0.739584 0.593579 +0.601303 0.749208 0.601303 +0.581970 0.758438 0.608710 +0.562592 0.767279 0.615806 +0.543179 0.775740 0.622597 +0.523738 0.783830 0.629090 +0.504276 0.791554 0.635289 +0.484797 0.798921 0.641202 +0.465309 0.805939 0.646834 +0.445815 0.812613 0.652191 +0.426319 0.818952 0.657278 +0.406826 0.824961 0.662101 +0.387337 0.830646 0.666664 +0.367856 0.836015 0.670973 +0.348384 0.841073 0.675033 +0.328924 0.845826 0.678847 +0.309476 0.850278 0.682420 +0.290041 0.854435 0.685756 +0.270621 0.858301 0.688860 +0.251216 0.861882 0.691733 +0.231824 0.865180 0.694381 +0.212447 0.868201 0.696805 +0.193084 0.870947 0.699009 +0.173734 0.873422 0.700995 +0.154397 0.875629 0.702766 +0.135071 0.877569 0.704324 +0.115755 0.879247 0.705670 +0.096448 0.880663 0.706807 +0.077149 0.881819 0.707734 +0.057856 0.882717 0.708455 +0.038568 0.883357 0.708969 +0.019283 0.883741 0.709277 +0.000000 0.883869 0.709380 +0.899134 0.000000 0.689930 +0.898999 0.019616 0.689826 +0.898595 0.039233 0.689516 +0.897921 0.058853 0.688999 +0.896976 0.078475 0.688274 +0.895759 0.098102 0.687340 +0.894269 0.117733 0.686197 +0.892505 0.137370 0.684843 +0.890463 0.157013 0.683276 +0.888143 0.176663 0.681496 +0.885541 0.196320 0.679500 +0.882655 0.215984 0.677285 +0.879482 0.235656 0.674850 +0.876017 0.255336 0.672192 +0.872258 0.275022 0.669307 +0.868201 0.294715 0.666194 +0.863841 0.314412 0.662848 +0.859173 0.334114 0.659267 +0.854194 0.353819 0.655446 +0.848897 0.373524 0.651382 +0.843278 0.393227 0.647070 +0.837331 0.412926 0.642506 +0.831049 0.432617 0.637687 +0.824428 0.452297 0.632606 +0.817461 0.471961 0.627260 +0.810141 0.491606 0.621643 +0.802462 0.511225 0.615751 +0.794417 0.530812 0.609577 +0.785999 0.550362 0.603118 +0.777201 0.569867 0.596367 +0.768016 0.589320 0.589320 +0.758438 0.608710 0.581970 +0.748457 0.628030 0.574312 +0.738069 0.647269 0.566340 +0.727265 0.666416 0.558050 +0.716039 0.685458 0.549436 +0.704384 0.704384 0.540492 +0.685458 0.716039 0.549436 +0.666416 0.727265 0.558050 +0.647269 0.738069 0.566340 +0.628030 0.748457 0.574312 +0.608710 0.758438 0.581970 +0.589320 0.768016 0.589320 +0.569867 0.777201 0.596367 +0.550362 0.785999 0.603118 +0.530812 0.794417 0.609577 +0.511225 0.802462 0.615751 +0.491606 0.810141 0.621643 +0.471961 0.817461 0.627260 +0.452297 0.824428 0.632606 +0.432617 0.831049 0.637687 +0.412926 0.837331 0.642506 +0.393227 0.843278 0.647070 +0.373524 0.848897 0.651382 +0.353819 0.854194 0.655446 +0.334114 0.859173 0.659267 +0.314412 0.863841 0.662848 +0.294715 0.868201 0.666194 +0.275022 0.872258 0.669307 +0.255336 0.876017 0.672192 +0.235656 0.879482 0.674850 +0.215984 0.882655 0.677285 +0.196320 0.885541 0.679500 +0.176663 0.888143 0.681496 +0.157013 0.890463 0.683276 +0.137370 0.892505 0.684843 +0.117733 0.894269 0.686197 +0.098102 0.895759 0.687340 +0.078475 0.896976 0.688274 +0.058853 0.897921 0.688999 +0.039233 0.898595 0.689516 +0.019616 0.898999 0.689826 +0.000000 0.899134 0.689930 +0.913971 0.000000 0.670151 +0.913829 0.019940 0.670047 +0.913405 0.039880 0.669736 +0.912696 0.059821 0.669217 +0.911704 0.079764 0.668489 +0.910427 0.099708 0.667552 +0.908862 0.119654 0.666406 +0.907010 0.139602 0.665047 +0.904868 0.159553 0.663477 +0.902434 0.179505 0.661692 +0.899705 0.199460 0.659691 +0.896678 0.219416 0.657472 +0.893352 0.239373 0.655033 +0.889722 0.259330 0.652371 +0.885784 0.279287 0.649484 +0.881536 0.299241 0.646369 +0.876973 0.319192 0.643023 +0.872091 0.339138 0.639443 +0.866885 0.359075 0.635626 +0.861350 0.379003 0.631568 +0.855481 0.398917 0.627265 +0.849274 0.418816 0.622713 +0.842722 0.438693 0.617909 +0.835820 0.458547 0.612849 +0.828563 0.478371 0.607527 +0.820943 0.498161 0.601941 +0.812956 0.517910 0.596084 +0.804594 0.537613 0.589953 +0.795852 0.557262 0.583543 +0.786723 0.576849 0.576849 +0.777201 0.596367 0.569867 +0.767279 0.615806 0.562592 +0.756950 0.635157 0.555019 +0.746209 0.654408 0.547143 +0.735050 0.673549 0.538961 +0.723465 0.692567 0.530466 +0.711449 0.711449 0.521656 +0.692567 0.723465 0.530466 +0.673549 0.735050 0.538961 +0.654408 0.746209 0.547143 +0.635157 0.756950 0.555019 +0.615806 0.767279 0.562592 +0.596367 0.777201 0.569867 +0.576849 0.786723 0.576849 +0.557262 0.795852 0.583543 +0.537613 0.804594 0.589953 +0.517910 0.812956 0.596084 +0.498161 0.820943 0.601941 +0.478371 0.828563 0.607527 +0.458547 0.835820 0.612849 +0.438693 0.842722 0.617909 +0.418816 0.849274 0.622713 +0.398917 0.855481 0.627265 +0.379003 0.861350 0.631568 +0.359075 0.866885 0.635626 +0.339138 0.872091 0.639443 +0.319192 0.876973 0.643023 +0.299241 0.881536 0.646369 +0.279287 0.885784 0.649484 +0.259330 0.889722 0.652371 +0.239373 0.893352 0.655033 +0.219416 0.896678 0.657472 +0.199460 0.899705 0.659691 +0.179505 0.902434 0.661692 +0.159553 0.904868 0.663477 +0.139602 0.907010 0.665047 +0.119654 0.908862 0.666406 +0.099708 0.910427 0.667552 +0.079764 0.911704 0.668489 +0.059821 0.912696 0.669217 +0.039880 0.913405 0.669736 +0.019940 0.913829 0.670047 +0.000000 0.913971 0.670151 +0.928372 0.000000 0.650053 +0.928224 0.020254 0.649949 +0.927779 0.040508 0.649638 +0.927037 0.060761 0.649118 +0.925997 0.081014 0.648390 +0.924659 0.101267 0.647453 +0.923020 0.121518 0.646306 +0.921080 0.141768 0.644947 +0.918837 0.162016 0.643377 +0.916289 0.182261 0.641592 +0.913432 0.202503 0.639592 +0.910266 0.222741 0.637375 +0.906786 0.242973 0.634939 +0.902991 0.263198 0.632281 +0.898875 0.283414 0.629399 +0.894437 0.303621 0.626292 +0.889672 0.323814 0.622955 +0.884576 0.343993 0.619386 +0.879144 0.364153 0.615583 +0.873373 0.384293 0.611542 +0.867257 0.404408 0.607260 +0.860791 0.424495 0.602733 +0.853972 0.444549 0.597957 +0.846792 0.464566 0.592930 +0.839247 0.484540 0.587647 +0.831332 0.504465 0.582105 +0.823041 0.524335 0.576299 +0.814368 0.544143 0.570226 +0.805307 0.563882 0.563882 +0.795852 0.583543 0.557262 +0.785999 0.603118 0.550362 +0.775740 0.622597 0.543179 +0.765071 0.641971 0.535709 +0.753986 0.661228 0.527947 +0.742479 0.680356 0.519889 +0.730545 0.699345 0.511533 +0.718179 0.718179 0.502874 +0.699345 0.730545 0.511533 +0.680356 0.742479 0.519889 +0.661228 0.753986 0.527947 +0.641971 0.765071 0.535709 +0.622597 0.775740 0.543179 +0.603118 0.785999 0.550362 +0.583543 0.795852 0.557262 +0.563882 0.805307 0.563882 +0.544143 0.814368 0.570226 +0.524335 0.823041 0.576299 +0.504465 0.831332 0.582105 +0.484540 0.839247 0.587647 +0.464566 0.846792 0.592930 +0.444549 0.853972 0.597957 +0.424495 0.860791 0.602733 +0.404408 0.867257 0.607260 +0.384293 0.873373 0.611542 +0.364153 0.879144 0.615583 +0.343993 0.884576 0.619386 +0.323814 0.889672 0.622955 +0.303621 0.894437 0.626292 +0.283414 0.898875 0.629399 +0.263198 0.902991 0.632281 +0.242973 0.906786 0.634939 +0.222741 0.910266 0.637375 +0.202503 0.913432 0.639592 +0.182261 0.916289 0.641592 +0.162016 0.918837 0.643377 +0.141768 0.921080 0.644947 +0.121518 0.923020 0.646306 +0.101267 0.924659 0.647453 +0.081014 0.925997 0.648390 +0.060761 0.927037 0.649118 +0.040508 0.927779 0.649638 +0.020254 0.928224 0.649949 +0.000000 0.928372 0.650053 +0.942332 0.000000 0.629646 +0.942177 0.020558 0.629543 +0.941712 0.041116 0.629232 +0.940936 0.061672 0.628713 +0.939849 0.082226 0.627987 +0.938449 0.102777 0.627052 +0.936737 0.123324 0.625907 +0.934709 0.143865 0.624553 +0.932365 0.164401 0.622986 +0.929703 0.184929 0.621207 +0.926720 0.205449 0.619214 +0.923413 0.225958 0.617005 +0.919781 0.246455 0.614578 +0.915821 0.266937 0.611932 +0.911529 0.287404 0.609064 +0.906901 0.307851 0.605972 +0.901935 0.328278 0.602654 +0.896626 0.348679 0.599107 +0.890971 0.369052 0.595328 +0.884965 0.389394 0.591315 +0.878604 0.409700 0.587065 +0.871884 0.429966 0.582574 +0.864799 0.450186 0.577840 +0.857345 0.470356 0.572860 +0.849518 0.490469 0.567630 +0.841311 0.510520 0.562146 +0.832721 0.530502 0.556406 +0.823741 0.550406 0.550406 +0.814368 0.570226 0.544143 +0.804594 0.589953 0.537613 +0.794417 0.609577 0.530812 +0.783830 0.629090 0.523738 +0.772828 0.648480 0.516387 +0.761407 0.667736 0.508756 +0.749562 0.686847 0.500841 +0.737289 0.705801 0.492641 +0.724583 0.724583 0.484151 +0.705801 0.737289 0.492641 +0.686847 0.749562 0.500841 +0.667736 0.761407 0.508756 +0.648480 0.772828 0.516387 +0.629090 0.783830 0.523738 +0.609577 0.794417 0.530812 +0.589953 0.804594 0.537613 +0.570226 0.814368 0.544143 +0.550406 0.823741 0.550406 +0.530502 0.832721 0.556406 +0.510520 0.841311 0.562146 +0.490469 0.849518 0.567630 +0.470356 0.857345 0.572860 +0.450186 0.864799 0.577840 +0.429966 0.871884 0.582574 +0.409700 0.878604 0.587065 +0.389394 0.884965 0.591315 +0.369052 0.890971 0.595328 +0.348679 0.896626 0.599107 +0.328278 0.901935 0.602654 +0.307851 0.906901 0.605972 +0.287404 0.911529 0.609064 +0.266937 0.915821 0.611932 +0.246455 0.919781 0.614578 +0.225958 0.923413 0.617005 +0.205449 0.926720 0.619214 +0.184929 0.929703 0.621207 +0.164401 0.932365 0.622986 +0.143865 0.934709 0.624553 +0.123324 0.936737 0.625907 +0.102777 0.938449 0.627052 +0.082226 0.939849 0.627987 +0.061672 0.940936 0.628713 +0.041116 0.941712 0.629232 +0.020558 0.942177 0.629543 +0.000000 0.942332 0.629646 +0.955844 0.000000 0.608940 +0.955682 0.020853 0.608836 +0.955196 0.041705 0.608527 +0.954387 0.062554 0.608011 +0.953252 0.083399 0.607289 +0.951792 0.104238 0.606358 +0.950005 0.125071 0.605220 +0.947891 0.145894 0.603873 +0.945446 0.166708 0.602316 +0.942671 0.187509 0.600547 +0.939561 0.208296 0.598567 +0.936116 0.229066 0.596372 +0.932333 0.249818 0.593962 +0.928209 0.270548 0.591334 +0.923741 0.291254 0.588488 +0.918926 0.311933 0.585420 +0.913761 0.332582 0.582130 +0.908242 0.353196 0.578614 +0.902365 0.373772 0.574870 +0.896128 0.394306 0.570896 +0.889525 0.414792 0.566690 +0.882553 0.435227 0.562248 +0.875207 0.455604 0.557568 +0.867483 0.475918 0.552648 +0.859377 0.496162 0.547484 +0.850885 0.516330 0.542073 +0.842001 0.536414 0.536414 +0.832721 0.556406 0.530502 +0.823041 0.576299 0.524335 +0.812956 0.596084 0.517910 +0.802462 0.615751 0.511225 +0.791554 0.635289 0.504276 +0.780229 0.654690 0.497060 +0.768481 0.673940 0.489577 +0.756309 0.693029 0.481822 +0.743707 0.711944 0.473793 +0.730672 0.730672 0.465490 +0.711944 0.743707 0.473793 +0.693029 0.756309 0.481822 +0.673940 0.768481 0.489577 +0.654690 0.780229 0.497060 +0.635289 0.791554 0.504276 +0.615751 0.802462 0.511225 +0.596084 0.812956 0.517910 +0.576299 0.823041 0.524335 +0.556406 0.832721 0.530502 +0.536414 0.842001 0.536414 +0.516330 0.850885 0.542073 +0.496162 0.859377 0.547484 +0.475918 0.867483 0.552648 +0.455604 0.875207 0.557568 +0.435227 0.882553 0.562248 +0.414792 0.889525 0.566690 +0.394306 0.896128 0.570896 +0.373772 0.902365 0.574870 +0.353196 0.908242 0.578614 +0.332582 0.913761 0.582130 +0.311933 0.918926 0.585420 +0.291254 0.923741 0.588488 +0.270548 0.928209 0.591334 +0.249818 0.932333 0.593962 +0.229066 0.936116 0.596372 +0.208296 0.939561 0.598567 +0.187509 0.942671 0.600547 +0.166708 0.945446 0.602316 +0.145894 0.947891 0.603873 +0.125071 0.950005 0.605220 +0.104238 0.951792 0.606358 +0.083399 0.953252 0.607289 +0.062554 0.954387 0.608011 +0.041705 0.955196 0.608527 +0.020853 0.955682 0.608836 +0.000000 0.955844 0.608940 +0.968900 0.000000 0.587943 +0.968732 0.021138 0.587841 +0.968226 0.042274 0.587534 +0.967383 0.063406 0.587022 +0.966201 0.084532 0.586305 +0.964681 0.105650 0.585383 +0.962821 0.126758 0.584254 +0.960620 0.147854 0.582918 +0.958076 0.168935 0.581375 +0.955188 0.189999 0.579622 +0.951953 0.211043 0.577659 +0.948371 0.232065 0.575485 +0.944438 0.253061 0.573099 +0.940151 0.274029 0.570498 +0.935510 0.294965 0.567681 +0.930509 0.315865 0.564647 +0.925147 0.336726 0.561393 +0.919421 0.357543 0.557918 +0.913326 0.378312 0.554220 +0.906860 0.399028 0.550296 +0.900019 0.419686 0.546145 +0.892799 0.440280 0.541764 +0.885197 0.460804 0.537151 +0.877208 0.481253 0.532303 +0.868829 0.501619 0.527218 +0.860056 0.521895 0.521895 +0.850885 0.542073 0.516330 +0.841311 0.562146 0.510520 +0.831332 0.582105 0.504465 +0.820943 0.601941 0.498161 +0.810141 0.621643 0.491606 +0.798921 0.641202 0.484797 +0.787281 0.660608 0.477734 +0.775218 0.679848 0.470414 +0.762727 0.698911 0.462834 +0.749807 0.717784 0.454994 +0.736455 0.736455 0.446892 +0.717784 0.749807 0.454994 +0.698911 0.762727 0.462834 +0.679848 0.775218 0.470414 +0.660608 0.787281 0.477734 +0.641202 0.798921 0.484797 +0.621643 0.810141 0.491606 +0.601941 0.820943 0.498161 +0.582105 0.831332 0.504465 +0.562146 0.841311 0.510520 +0.542073 0.850885 0.516330 +0.521895 0.860056 0.521895 +0.501619 0.868829 0.527218 +0.481253 0.877208 0.532303 +0.460804 0.885197 0.537151 +0.440280 0.892799 0.541764 +0.419686 0.900019 0.546145 +0.399028 0.906860 0.550296 +0.378312 0.913326 0.554220 +0.357543 0.919421 0.557918 +0.336726 0.925147 0.561393 +0.315865 0.930509 0.564647 +0.294965 0.935510 0.567681 +0.274029 0.940151 0.570498 +0.253061 0.944438 0.573099 +0.232065 0.948371 0.575485 +0.211043 0.951953 0.577659 +0.189999 0.955188 0.579622 +0.168935 0.958076 0.581375 +0.147854 0.960620 0.582918 +0.126758 0.962821 0.584254 +0.105650 0.964681 0.585383 +0.084532 0.966201 0.586305 +0.063406 0.967383 0.587022 +0.042274 0.968226 0.587534 +0.021138 0.968732 0.587841 +0.000000 0.968900 0.587943 +0.981495 0.000000 0.566667 +0.981320 0.021412 0.566566 +0.980795 0.042822 0.566262 +0.979918 0.064227 0.565756 +0.978690 0.085624 0.565047 +0.977110 0.107011 0.564135 +0.975178 0.128385 0.563019 +0.972891 0.149742 0.561699 +0.970248 0.171081 0.560173 +0.967249 0.192398 0.558441 +0.963891 0.213689 0.556503 +0.960173 0.234953 0.554356 +0.956091 0.256184 0.552000 +0.951645 0.277379 0.549433 +0.946832 0.298535 0.546654 +0.941649 0.319647 0.543661 +0.936093 0.340710 0.540454 +0.930162 0.361720 0.537030 +0.923853 0.382673 0.533387 +0.917163 0.403561 0.529524 +0.910087 0.424381 0.525439 +0.902625 0.445125 0.521131 +0.894771 0.465788 0.516596 +0.886522 0.486363 0.511834 +0.877876 0.506842 0.506842 +0.868829 0.527218 0.501619 +0.859377 0.547484 0.496162 +0.849518 0.567630 0.490469 +0.839247 0.587647 0.484540 +0.828563 0.607527 0.478371 +0.817461 0.627260 0.471961 +0.805939 0.646834 0.465309 +0.793994 0.666240 0.458413 +0.781624 0.685466 0.451271 +0.768826 0.704499 0.443882 +0.755599 0.723329 0.436245 +0.741941 0.741941 0.428360 +0.723329 0.755599 0.436245 +0.704499 0.768826 0.443882 +0.685466 0.781624 0.451271 +0.666240 0.793994 0.458413 +0.646834 0.805939 0.465309 +0.627260 0.817461 0.471961 +0.607527 0.828563 0.478371 +0.587647 0.839247 0.484540 +0.567630 0.849518 0.490469 +0.547484 0.859377 0.496162 +0.527218 0.868829 0.501619 +0.506842 0.877876 0.506842 +0.486363 0.886522 0.511834 +0.465788 0.894771 0.516596 +0.445125 0.902625 0.521131 +0.424381 0.910087 0.525439 +0.403561 0.917163 0.529524 +0.382673 0.923853 0.533387 +0.361720 0.930162 0.537030 +0.340710 0.936093 0.540454 +0.319647 0.941649 0.543661 +0.298535 0.946832 0.546654 +0.277379 0.951645 0.549433 +0.256184 0.956091 0.552000 +0.234953 0.960173 0.554356 +0.213689 0.963891 0.556503 +0.192398 0.967249 0.558441 +0.171081 0.970248 0.560173 +0.149742 0.972891 0.561699 +0.128385 0.975178 0.563019 +0.107011 0.977110 0.564135 +0.085624 0.978690 0.565047 +0.064227 0.979918 0.565756 +0.042822 0.980795 0.566262 +0.021412 0.981320 0.566566 +0.000000 0.981495 0.566667 +0.993624 0.000000 0.545121 +0.993442 0.021677 0.545021 +0.992896 0.043351 0.544722 +0.991987 0.065018 0.544223 +0.990714 0.086676 0.543524 +0.989075 0.108321 0.542625 +0.987070 0.129950 0.541525 +0.984699 0.151560 0.540224 +0.981959 0.173146 0.538721 +0.978850 0.194705 0.537016 +0.975371 0.216234 0.535107 +0.971518 0.237729 0.532993 +0.967291 0.259185 0.530674 +0.962688 0.280598 0.528149 +0.957706 0.301964 0.525416 +0.952343 0.323277 0.522473 +0.946597 0.344533 0.519321 +0.940466 0.365727 0.515957 +0.933946 0.386853 0.512380 +0.927035 0.407905 0.508589 +0.919731 0.428878 0.504582 +0.912031 0.449764 0.500357 +0.903931 0.470557 0.495913 +0.895429 0.491249 0.491249 +0.886522 0.511834 0.486363 +0.877208 0.532303 0.481253 +0.867483 0.552648 0.475918 +0.857345 0.572860 0.470356 +0.846792 0.592930 0.464566 +0.835820 0.612849 0.458547 +0.824428 0.632606 0.452297 +0.812613 0.652191 0.445815 +0.800374 0.671593 0.439100 +0.787708 0.690801 0.432151 +0.774614 0.709803 0.424968 +0.761091 0.728586 0.417549 +0.747138 0.747138 0.409894 +0.728586 0.761091 0.417549 +0.709803 0.774614 0.424968 +0.690801 0.787708 0.432151 +0.671593 0.800374 0.439100 +0.652191 0.812613 0.445815 +0.632606 0.824428 0.452297 +0.612849 0.835820 0.458547 +0.592930 0.846792 0.464566 +0.572860 0.857345 0.470356 +0.552648 0.867483 0.475918 +0.532303 0.877208 0.481253 +0.511834 0.886522 0.486363 +0.491249 0.895429 0.491249 +0.470557 0.903931 0.495913 +0.449764 0.912031 0.500357 +0.428878 0.919731 0.504582 +0.407905 0.927035 0.508589 +0.386853 0.933946 0.512380 +0.365727 0.940466 0.515957 +0.344533 0.946597 0.519321 +0.323277 0.952343 0.522473 +0.301964 0.957706 0.525416 +0.280598 0.962688 0.528149 +0.259185 0.967291 0.530674 +0.237729 0.971518 0.532993 +0.216234 0.975371 0.535107 +0.194705 0.978850 0.537016 +0.173146 0.981959 0.538721 +0.151560 0.984699 0.540224 +0.129950 0.987070 0.541525 +0.108321 0.989075 0.542625 +0.086676 0.990714 0.543524 +0.065018 0.991987 0.544223 +0.043351 0.992896 0.544722 +0.021677 0.993442 0.545021 +0.000000 0.993624 0.545121 +1.005279 0.000000 0.523315 +1.005091 0.021931 0.523217 +1.004526 0.043859 0.522923 +1.003584 0.065778 0.522433 +1.002266 0.087687 0.521746 +1.000569 0.109580 0.520863 +0.998494 0.131454 0.519783 +0.996039 0.153305 0.518505 +0.993204 0.175129 0.517029 +0.989988 0.196921 0.515355 +0.986388 0.218677 0.513481 +0.982404 0.240393 0.511407 +0.978034 0.262064 0.509132 +0.973277 0.283684 0.506656 +0.968129 0.305250 0.503976 +0.962591 0.326756 0.501093 +0.956659 0.348195 0.498005 +0.950331 0.369563 0.494711 +0.943605 0.390854 0.491210 +0.936479 0.412061 0.487500 +0.928951 0.433177 0.483582 +0.921019 0.454196 0.479452 +0.912679 0.475111 0.475111 +0.903931 0.495913 0.470557 +0.894771 0.516596 0.465788 +0.885197 0.537151 0.460804 +0.875207 0.557568 0.455604 +0.864799 0.577840 0.450186 +0.853972 0.597957 0.444549 +0.842722 0.617909 0.438693 +0.831049 0.637687 0.432617 +0.818952 0.657278 0.426319 +0.806428 0.676673 0.419800 +0.793477 0.695861 0.413058 +0.780098 0.714828 0.406093 +0.766291 0.733564 0.398906 +0.752056 0.752056 0.391495 +0.733564 0.766291 0.398906 +0.714828 0.780098 0.406093 +0.695861 0.793477 0.413058 +0.676673 0.806428 0.419800 +0.657278 0.818952 0.426319 +0.637687 0.831049 0.432617 +0.617909 0.842722 0.438693 +0.597957 0.853972 0.444549 +0.577840 0.864799 0.450186 +0.557568 0.875207 0.455604 +0.537151 0.885197 0.460804 +0.516596 0.894771 0.465788 +0.495913 0.903931 0.470557 +0.475111 0.912679 0.475111 +0.454196 0.921019 0.479452 +0.433177 0.928951 0.483582 +0.412061 0.936479 0.487500 +0.390854 0.943605 0.491210 +0.369563 0.950331 0.494711 +0.348195 0.956659 0.498005 +0.326756 0.962591 0.501093 +0.305250 0.968129 0.503976 +0.283684 0.973277 0.506656 +0.262064 0.978034 0.509132 +0.240393 0.982404 0.511407 +0.218677 0.986388 0.513481 +0.196921 0.989988 0.515355 +0.175129 0.993204 0.517029 +0.153305 0.996039 0.518505 +0.131454 0.998494 0.519783 +0.109580 1.000569 0.520863 +0.087687 1.002266 0.521746 +0.065778 1.003584 0.522433 +0.043859 1.004526 0.522923 +0.021931 1.005091 0.523217 +0.000000 1.005279 0.523315 +1.016456 0.000000 0.501261 +1.016261 0.022175 0.501165 +1.015677 0.044345 0.500877 +1.014704 0.066507 0.500397 +1.013341 0.088656 0.499724 +1.011588 0.110787 0.498860 +1.009443 0.132896 0.497802 +1.006907 0.154978 0.496552 +1.003979 0.177029 0.495108 +1.000657 0.199043 0.493469 +0.996940 0.221016 0.491637 +0.992828 0.242943 0.489608 +0.988318 0.264819 0.487384 +0.983409 0.286638 0.484964 +0.978100 0.308394 0.482346 +0.972390 0.330082 0.479530 +0.966276 0.351696 0.476514 +0.959756 0.373229 0.473299 +0.952830 0.394675 0.469884 +0.945495 0.416028 0.466267 +0.937749 0.437280 0.462447 +0.929591 0.458424 0.458424 +0.921019 0.479452 0.454196 +0.912031 0.500357 0.449764 +0.902625 0.521131 0.445125 +0.892799 0.541764 0.440280 +0.882553 0.562248 0.435227 +0.871884 0.582574 0.429966 +0.860791 0.602733 0.424495 +0.849274 0.622713 0.418816 +0.837331 0.642506 0.412926 +0.824961 0.662101 0.406826 +0.812163 0.681486 0.400515 +0.798939 0.700650 0.393993 +0.785286 0.719582 0.387260 +0.771207 0.738270 0.380317 +0.756701 0.756701 0.373164 +0.738270 0.771207 0.380317 +0.719582 0.785286 0.387260 +0.700650 0.798939 0.393993 +0.681486 0.812163 0.400515 +0.662101 0.824961 0.406826 +0.642506 0.837331 0.412926 +0.622713 0.849274 0.418816 +0.602733 0.860791 0.424495 +0.582574 0.871884 0.429966 +0.562248 0.882553 0.435227 +0.541764 0.892799 0.440280 +0.521131 0.902625 0.445125 +0.500357 0.912031 0.449764 +0.479452 0.921019 0.454196 +0.458424 0.929591 0.458424 +0.437280 0.937749 0.462447 +0.416028 0.945495 0.466267 +0.394675 0.952830 0.469884 +0.373229 0.959756 0.473299 +0.351696 0.966276 0.476514 +0.330082 0.972390 0.479530 +0.308394 0.978100 0.482346 +0.286638 0.983409 0.484964 +0.264819 0.988318 0.487384 +0.242943 0.992828 0.489608 +0.221016 0.996940 0.491637 +0.199043 1.000657 0.493469 +0.177029 1.003979 0.495108 +0.154978 1.006907 0.496552 +0.132896 1.009443 0.497802 +0.110787 1.011588 0.498860 +0.088656 1.013341 0.499724 +0.066507 1.014704 0.500397 +0.044345 1.015677 0.500877 +0.022175 1.016261 0.501165 +0.000000 1.016456 0.501261 +1.027149 0.000000 0.478967 +1.026948 0.022408 0.478874 +1.026346 0.044811 0.478593 +1.025341 0.067204 0.478125 +1.023935 0.089583 0.477469 +1.022126 0.111941 0.476625 +1.019914 0.134274 0.475594 +1.017299 0.156577 0.474374 +1.014279 0.178845 0.472966 +1.010854 0.201071 0.471369 +1.007023 0.223252 0.469583 +1.002785 0.245380 0.467606 +0.998139 0.267450 0.465440 +0.993083 0.289457 0.463082 +0.987617 0.311394 0.460533 +0.981739 0.333255 0.457792 +0.975448 0.355034 0.454859 +0.968743 0.376723 0.451732 +0.961621 0.398317 0.448411 +0.954083 0.419807 0.444896 +0.946126 0.441186 0.441186 +0.937749 0.462447 0.437280 +0.928951 0.483582 0.433177 +0.919731 0.504582 0.428878 +0.910087 0.525439 0.424381 +0.900019 0.546145 0.419686 +0.889525 0.566690 0.414792 +0.878604 0.587065 0.409700 +0.867257 0.607260 0.404408 +0.855481 0.627265 0.398917 +0.843278 0.647070 0.393227 +0.830646 0.666664 0.387337 +0.817587 0.686037 0.381247 +0.804100 0.705177 0.374958 +0.790186 0.724072 0.368470 +0.775846 0.742711 0.361783 +0.761082 0.761082 0.354898 +0.742711 0.775846 0.361783 +0.724072 0.790186 0.368470 +0.705177 0.804100 0.374958 +0.686037 0.817587 0.381247 +0.666664 0.830646 0.387337 +0.647070 0.843278 0.393227 +0.627265 0.855481 0.398917 +0.607260 0.867257 0.404408 +0.587065 0.878604 0.409700 +0.566690 0.889525 0.414792 +0.546145 0.900019 0.419686 +0.525439 0.910087 0.424381 +0.504582 0.919731 0.428878 +0.483582 0.928951 0.433177 +0.462447 0.937749 0.437280 +0.441186 0.946126 0.441186 +0.419807 0.954083 0.444896 +0.398317 0.961621 0.448411 +0.376723 0.968743 0.451732 +0.355034 0.975448 0.454859 +0.333255 0.981739 0.457792 +0.311394 0.987617 0.460533 +0.289457 0.993083 0.463082 +0.267450 0.998139 0.465440 +0.245380 1.002785 0.467606 +0.223252 1.007023 0.469583 +0.201071 1.010854 0.471369 +0.178845 1.014279 0.472966 +0.156577 1.017299 0.474374 +0.134274 1.019914 0.475594 +0.111941 1.022126 0.476625 +0.089583 1.023935 0.477469 +0.067204 1.025341 0.478125 +0.044811 1.026346 0.478593 +0.022408 1.026948 0.478874 +0.000000 1.027149 0.478967 +1.037353 0.000000 0.456446 +1.037146 0.022631 0.456355 +1.036526 0.045256 0.456082 +1.035491 0.067870 0.455627 +1.034043 0.090467 0.454990 +1.032180 0.113042 0.454170 +1.029902 0.135589 0.453168 +1.027210 0.158103 0.451983 +1.024101 0.180577 0.450615 +1.020576 0.203005 0.449064 +1.016633 0.225382 0.447329 +1.012273 0.247702 0.445411 +1.007495 0.269957 0.443308 +1.002296 0.292143 0.441021 +0.996677 0.314251 0.438549 +0.990637 0.336276 0.435891 +0.984175 0.358210 0.433047 +0.977289 0.380047 0.430017 +0.969979 0.401778 0.426801 +0.962244 0.423398 0.423398 +0.954083 0.444896 0.419807 +0.945495 0.466267 0.416028 +0.936479 0.487500 0.412061 +0.927035 0.508589 0.407905 +0.917163 0.529524 0.403561 +0.906860 0.550296 0.399028 +0.896128 0.570896 0.394306 +0.884965 0.591315 0.389394 +0.873373 0.611542 0.384293 +0.861350 0.631568 0.379003 +0.848897 0.651382 0.373524 +0.836015 0.670973 0.367856 +0.822705 0.690332 0.361999 +0.808967 0.709445 0.355954 +0.794804 0.728303 0.349722 +0.780216 0.746894 0.343303 +0.765205 0.765205 0.336698 +0.746894 0.780216 0.343303 +0.728303 0.794804 0.349722 +0.709445 0.808967 0.355954 +0.690332 0.822705 0.361999 +0.670973 0.836015 0.367856 +0.651382 0.848897 0.373524 +0.631568 0.861350 0.379003 +0.611542 0.873373 0.384293 +0.591315 0.884965 0.389394 +0.570896 0.896128 0.394306 +0.550296 0.906860 0.399028 +0.529524 0.917163 0.403561 +0.508589 0.927035 0.407905 +0.487500 0.936479 0.412061 +0.466267 0.945495 0.416028 +0.444896 0.954083 0.419807 +0.423398 0.962244 0.423398 +0.401778 0.969979 0.426801 +0.380047 0.977289 0.430017 +0.358210 0.984175 0.433047 +0.336276 0.990637 0.435891 +0.314251 0.996677 0.438549 +0.292143 1.002296 0.441021 +0.269957 1.007495 0.443308 +0.247702 1.012273 0.445411 +0.225382 1.016633 0.447329 +0.203005 1.020576 0.449064 +0.180577 1.024101 0.450615 +0.158103 1.027210 0.451983 +0.135589 1.029902 0.453168 +0.113042 1.032180 0.454170 +0.090467 1.034043 0.454990 +0.067870 1.035491 0.455627 +0.045256 1.036526 0.456082 +0.022631 1.037146 0.456355 +0.000000 1.037353 0.456446 +1.047063 0.000000 0.433708 +1.046851 0.022842 0.433620 +1.046213 0.045679 0.433355 +1.045149 0.068503 0.432915 +1.043660 0.091308 0.432298 +1.041745 0.114090 0.431505 +1.039403 0.136840 0.430535 +1.036635 0.159553 0.429388 +1.033441 0.182223 0.428065 +1.029818 0.204844 0.426565 +1.025769 0.227407 0.424887 +1.021290 0.249908 0.423032 +1.016383 0.272339 0.421000 +1.011047 0.294693 0.418789 +1.005280 0.316964 0.416401 +0.999084 0.339143 0.413834 +0.992455 0.361224 0.411088 +0.985396 0.383199 0.408164 +0.977904 0.405061 0.405061 +0.969979 0.426801 0.401778 +0.961621 0.448411 0.398317 +0.952830 0.469884 0.394675 +0.943605 0.491210 0.390854 +0.933946 0.512380 0.386853 +0.923853 0.533387 0.382673 +0.913326 0.554220 0.378312 +0.902365 0.574870 0.373772 +0.890971 0.595328 0.369052 +0.879144 0.615583 0.364153 +0.866885 0.635626 0.359075 +0.854194 0.655446 0.353819 +0.841073 0.675033 0.348384 +0.827524 0.694375 0.342772 +0.813547 0.713462 0.336982 +0.799146 0.732282 0.331017 +0.784322 0.750825 0.324877 +0.769078 0.769078 0.318563 +0.750825 0.784322 0.324877 +0.732282 0.799146 0.331017 +0.713462 0.813547 0.336982 +0.694375 0.827524 0.342772 +0.675033 0.841073 0.348384 +0.655446 0.854194 0.353819 +0.635626 0.866885 0.359075 +0.615583 0.879144 0.364153 +0.595328 0.890971 0.369052 +0.574870 0.902365 0.373772 +0.554220 0.913326 0.378312 +0.533387 0.923853 0.382673 +0.512380 0.933946 0.386853 +0.491210 0.943605 0.390854 +0.469884 0.952830 0.394675 +0.448411 0.961621 0.398317 +0.426801 0.969979 0.401778 +0.405061 0.977904 0.405061 +0.383199 0.985396 0.408164 +0.361224 0.992455 0.411088 +0.339143 0.999084 0.413834 +0.316964 1.005280 0.416401 +0.294693 1.011047 0.418789 +0.272339 1.016383 0.421000 +0.249908 1.021290 0.423032 +0.227407 1.025769 0.424887 +0.204844 1.029818 0.426565 +0.182223 1.033441 0.428065 +0.159553 1.036635 0.429388 +0.136840 1.039403 0.430535 +0.114090 1.041745 0.431505 +0.091308 1.043660 0.432298 +0.068503 1.045149 0.432915 +0.045679 1.046213 0.433355 +0.022842 1.046851 0.433620 +0.000000 1.047063 0.433708 +1.056276 0.000000 0.410763 +1.056057 0.023043 0.410678 +1.055402 0.046080 0.410423 +1.054310 0.069103 0.409999 +1.052782 0.092106 0.409404 +1.050816 0.115083 0.408640 +1.048413 0.138026 0.407705 +1.045573 0.160929 0.406601 +1.042295 0.183785 0.405326 +1.038579 0.206586 0.403881 +1.034425 0.229327 0.402266 +1.029833 0.251999 0.400480 +1.024803 0.274595 0.398524 +1.019333 0.297109 0.396397 +1.013425 0.319532 0.394099 +1.007077 0.341857 0.391631 +1.000290 0.364076 0.388991 +0.993062 0.386181 0.386181 +0.985396 0.408164 0.383199 +0.977289 0.430017 0.380047 +0.968743 0.451732 0.376723 +0.959756 0.473299 0.373229 +0.950331 0.494711 0.369563 +0.940466 0.515957 0.365727 +0.930162 0.537030 0.361720 +0.919421 0.557918 0.357543 +0.908242 0.578614 0.353196 +0.896626 0.599107 0.348679 +0.884576 0.619386 0.343993 +0.872091 0.639443 0.339138 +0.859173 0.659267 0.334114 +0.845826 0.678847 0.328924 +0.832049 0.698172 0.323566 +0.817846 0.717232 0.318043 +0.803219 0.736015 0.312355 +0.788172 0.754510 0.306503 +0.772707 0.772707 0.300489 +0.754510 0.788172 0.306503 +0.736015 0.803219 0.312355 +0.717232 0.817846 0.318043 +0.698172 0.832049 0.323566 +0.678847 0.845826 0.328924 +0.659267 0.859173 0.334114 +0.639443 0.872091 0.339138 +0.619386 0.884576 0.343993 +0.599107 0.896626 0.348679 +0.578614 0.908242 0.353196 +0.557918 0.919421 0.357543 +0.537030 0.930162 0.361720 +0.515957 0.940466 0.365727 +0.494711 0.950331 0.369563 +0.473299 0.959756 0.373229 +0.451732 0.968743 0.376723 +0.430017 0.977289 0.380047 +0.408164 0.985396 0.383199 +0.386181 0.993062 0.386181 +0.364076 1.000290 0.388991 +0.341857 1.007077 0.391631 +0.319532 1.013425 0.394099 +0.297109 1.019333 0.396397 +0.274595 1.024803 0.398524 +0.251999 1.029833 0.400480 +0.229327 1.034425 0.402266 +0.206586 1.038579 0.403881 +0.183785 1.042295 0.405326 +0.160929 1.045573 0.406601 +0.138026 1.048413 0.407705 +0.115083 1.050816 0.408640 +0.092106 1.052782 0.409404 +0.069103 1.054310 0.409999 +0.046080 1.055402 0.410423 +0.023043 1.056057 0.410678 +0.000000 1.056276 0.410763 +1.064985 0.000000 0.387623 +1.064761 0.023233 0.387541 +1.064090 0.046459 0.387297 +1.062971 0.069671 0.386890 +1.061404 0.092861 0.386319 +1.059390 0.116022 0.385586 +1.056928 0.139147 0.384690 +1.054018 0.162229 0.383631 +1.050660 0.185260 0.382409 +1.046855 0.208232 0.381024 +1.042601 0.231139 0.379476 +1.037900 0.253972 0.377765 +1.032751 0.276725 0.375891 +1.027154 0.299388 0.373853 +1.021109 0.321954 0.371653 +1.014617 0.344416 0.369290 +1.007677 0.366764 0.366764 +1.000290 0.388991 0.364076 +0.992455 0.411088 0.361224 +0.984175 0.433047 0.358210 +0.975448 0.454859 0.355034 +0.966276 0.476514 0.351696 +0.956659 0.498005 0.348195 +0.946597 0.519321 0.344533 +0.936093 0.540454 0.340710 +0.925147 0.561393 0.336726 +0.913761 0.582130 0.332582 +0.901935 0.602654 0.328278 +0.889672 0.622955 0.323814 +0.876973 0.643023 0.319192 +0.863841 0.662848 0.314412 +0.850278 0.682420 0.309476 +0.836286 0.701727 0.304383 +0.821869 0.720759 0.299136 +0.807029 0.739506 0.293735 +0.791770 0.757955 0.288181 +0.776097 0.776097 0.282476 +0.757955 0.791770 0.288181 +0.739506 0.807029 0.293735 +0.720759 0.821869 0.299136 +0.701727 0.836286 0.304383 +0.682420 0.850278 0.309476 +0.662848 0.863841 0.314412 +0.643023 0.876973 0.319192 +0.622955 0.889672 0.323814 +0.602654 0.901935 0.328278 +0.582130 0.913761 0.332582 +0.561393 0.925147 0.336726 +0.540454 0.936093 0.340710 +0.519321 0.946597 0.344533 +0.498005 0.956659 0.348195 +0.476514 0.966276 0.351696 +0.454859 0.975448 0.355034 +0.433047 0.984175 0.358210 +0.411088 0.992455 0.361224 +0.388991 1.000290 0.364076 +0.366764 1.007677 0.366764 +0.344416 1.014617 0.369290 +0.321954 1.021109 0.371653 +0.299388 1.027154 0.373853 +0.276725 1.032751 0.375891 +0.253972 1.037900 0.377765 +0.231139 1.042601 0.379476 +0.208232 1.046855 0.381024 +0.185260 1.050660 0.382409 +0.162229 1.054018 0.383631 +0.139147 1.056928 0.384690 +0.116022 1.059390 0.385586 +0.092861 1.061404 0.386319 +0.069671 1.062971 0.386890 +0.046459 1.064090 0.387297 +0.023233 1.064761 0.387541 +0.000000 1.064985 0.387623 +1.073187 0.000000 0.364298 +1.072958 0.023412 0.364220 +1.072271 0.046816 0.363987 +1.071126 0.070205 0.363598 +1.069523 0.093571 0.363054 +1.067463 0.116906 0.362355 +1.064944 0.140203 0.361500 +1.061968 0.163452 0.360489 +1.058534 0.186648 0.359324 +1.054642 0.209781 0.358003 +1.050294 0.232844 0.356527 +1.045488 0.255829 0.354895 +1.040226 0.278728 0.353109 +1.034507 0.301531 0.351168 +1.028332 0.324232 0.349072 +1.021702 0.346821 0.346821 +1.014617 0.369290 0.344416 +1.007077 0.391631 0.341857 +0.999084 0.413834 0.339143 +0.990637 0.435891 0.336276 +0.981739 0.457792 0.333255 +0.972390 0.479530 0.330082 +0.962591 0.501093 0.326756 +0.952343 0.522473 0.323277 +0.941649 0.543661 0.319647 +0.930509 0.564647 0.315865 +0.918926 0.585420 0.311933 +0.906901 0.605972 0.307851 +0.894437 0.626292 0.303621 +0.881536 0.646369 0.299241 +0.868201 0.666194 0.294715 +0.854435 0.685756 0.290041 +0.840240 0.705045 0.285223 +0.825621 0.724050 0.280261 +0.810581 0.742760 0.275155 +0.795124 0.761165 0.269908 +0.779254 0.779254 0.264521 +0.761165 0.795124 0.269908 +0.742760 0.810581 0.275155 +0.724050 0.825621 0.280261 +0.705045 0.840240 0.285223 +0.685756 0.854435 0.290041 +0.666194 0.868201 0.294715 +0.646369 0.881536 0.299241 +0.626292 0.894437 0.303621 +0.605972 0.906901 0.307851 +0.585420 0.918926 0.311933 +0.564647 0.930509 0.315865 +0.543661 0.941649 0.319647 +0.522473 0.952343 0.323277 +0.501093 0.962591 0.326756 +0.479530 0.972390 0.330082 +0.457792 0.981739 0.333255 +0.435891 0.990637 0.336276 +0.413834 0.999084 0.339143 +0.391631 1.007077 0.341857 +0.369290 1.014617 0.344416 +0.346821 1.021702 0.346821 +0.324232 1.028332 0.349072 +0.301531 1.034507 0.351168 +0.278728 1.040226 0.353109 +0.255829 1.045488 0.354895 +0.232844 1.050294 0.356527 +0.209781 1.054642 0.358003 +0.186648 1.058534 0.359324 +0.163452 1.061968 0.360489 +0.140203 1.064944 0.361500 +0.116906 1.067463 0.362355 +0.093571 1.069523 0.363054 +0.070205 1.071126 0.363598 +0.046816 1.072271 0.363987 +0.023412 1.072958 0.364220 +0.000000 1.073187 0.364298 +1.080879 0.000000 0.340800 +1.080645 0.023580 0.340726 +1.079943 0.047151 0.340505 +1.078774 0.070707 0.340136 +1.077136 0.094237 0.339620 +1.075031 0.117735 0.338956 +1.072459 0.141192 0.338145 +1.069419 0.164599 0.337186 +1.065912 0.187949 0.336081 +1.061939 0.211233 0.334828 +1.057500 0.234442 0.333429 +1.052595 0.257568 0.331882 +1.047226 0.280603 0.330189 +1.041391 0.303538 0.328349 +1.035093 0.326364 0.326364 +1.028332 0.349072 0.324232 +1.021109 0.371653 0.321954 +1.013425 0.394099 0.319532 +1.005280 0.416401 0.316964 +0.996677 0.438549 0.314251 +0.987617 0.460533 0.311394 +0.978100 0.482346 0.308394 +0.968129 0.503976 0.305250 +0.957706 0.525416 0.301964 +0.946832 0.546654 0.298535 +0.935510 0.567681 0.294965 +0.923741 0.588488 0.291254 +0.911529 0.609064 0.287404 +0.898875 0.629399 0.283414 +0.885784 0.649484 0.279287 +0.872258 0.669307 0.275022 +0.858301 0.688860 0.270621 +0.843916 0.708130 0.266086 +0.829108 0.727108 0.261417 +0.813880 0.745783 0.256615 +0.798237 0.764145 0.251683 +0.782184 0.782184 0.246622 +0.764145 0.798237 0.251683 +0.745783 0.813880 0.256615 +0.727108 0.829108 0.261417 +0.708130 0.843916 0.266086 +0.688860 0.858301 0.270621 +0.669307 0.872258 0.275022 +0.649484 0.885784 0.279287 +0.629399 0.898875 0.283414 +0.609064 0.911529 0.287404 +0.588488 0.923741 0.291254 +0.567681 0.935510 0.294965 +0.546654 0.946832 0.298535 +0.525416 0.957706 0.301964 +0.503976 0.968129 0.305250 +0.482346 0.978100 0.308394 +0.460533 0.987617 0.311394 +0.438549 0.996677 0.314251 +0.416401 1.005280 0.316964 +0.394099 1.013425 0.319532 +0.371653 1.021109 0.321954 +0.349072 1.028332 0.324232 +0.326364 1.035093 0.326364 +0.303538 1.041391 0.328349 +0.280603 1.047226 0.330189 +0.257568 1.052595 0.331882 +0.234442 1.057500 0.333429 +0.211233 1.061939 0.334828 +0.187949 1.065912 0.336081 +0.164599 1.069419 0.337186 +0.141192 1.072459 0.338145 +0.117735 1.075031 0.338956 +0.094237 1.077136 0.339620 +0.070707 1.078774 0.340136 +0.047151 1.079943 0.340505 +0.023580 1.080645 0.340726 +0.000000 1.080879 0.340800 +1.088057 0.000000 0.317140 +1.087818 0.023736 0.317070 +1.087102 0.047464 0.316861 +1.085909 0.071174 0.316514 +1.084239 0.094859 0.316027 +1.082092 0.118508 0.315401 +1.079468 0.142115 0.314636 +1.076369 0.165669 0.313733 +1.072794 0.189162 0.312691 +1.068744 0.212586 0.311510 +1.064219 0.235932 0.310192 +1.059221 0.259190 0.308735 +1.053749 0.282351 0.307140 +1.047806 0.305408 0.305408 +1.041391 0.328349 0.303538 +1.034507 0.351168 0.301531 +1.027154 0.373853 0.299388 +1.019333 0.396397 0.297109 +1.011047 0.418789 0.294693 +1.002296 0.441021 0.292143 +0.993083 0.463082 0.289457 +0.983409 0.484964 0.286638 +0.973277 0.506656 0.283684 +0.962688 0.528149 0.280598 +0.951645 0.549433 0.277379 +0.940151 0.570498 0.274029 +0.928209 0.591334 0.270548 +0.915821 0.611932 0.266937 +0.902991 0.632281 0.263198 +0.889722 0.652371 0.259330 +0.876017 0.672192 0.255336 +0.861882 0.691733 0.251216 +0.847319 0.710985 0.246971 +0.832334 0.729937 0.242603 +0.816931 0.748579 0.238114 +0.801115 0.766900 0.233504 +0.784891 0.784891 0.228775 +0.766900 0.801115 0.233504 +0.748579 0.816931 0.238114 +0.729937 0.832334 0.242603 +0.710985 0.847319 0.246971 +0.691733 0.861882 0.251216 +0.672192 0.876017 0.255336 +0.652371 0.889722 0.259330 +0.632281 0.902991 0.263198 +0.611932 0.915821 0.266937 +0.591334 0.928209 0.270548 +0.570498 0.940151 0.274029 +0.549433 0.951645 0.277379 +0.528149 0.962688 0.280598 +0.506656 0.973277 0.283684 +0.484964 0.983409 0.286638 +0.463082 0.993083 0.289457 +0.441021 1.002296 0.292143 +0.418789 1.011047 0.294693 +0.396397 1.019333 0.297109 +0.373853 1.027154 0.299388 +0.351168 1.034507 0.301531 +0.328349 1.041391 0.303538 +0.305408 1.047806 0.305408 +0.282351 1.053749 0.307140 +0.259190 1.059221 0.308735 +0.235932 1.064219 0.310192 +0.212586 1.068744 0.311510 +0.189162 1.072794 0.312691 +0.165669 1.076369 0.313733 +0.142115 1.079468 0.314636 +0.118508 1.082092 0.315401 +0.094859 1.084239 0.316027 +0.071174 1.085909 0.316514 +0.047464 1.087102 0.316861 +0.023736 1.087818 0.317070 +0.000000 1.088057 0.317140 +1.094716 0.000000 0.293328 +1.094473 0.023881 0.293263 +1.093744 0.047754 0.293068 +1.092529 0.071608 0.292742 +1.090828 0.095435 0.292286 +1.088642 0.119226 0.291701 +1.085970 0.142971 0.290985 +1.082815 0.166661 0.290139 +1.079175 0.190288 0.289164 +1.075053 0.213841 0.288059 +1.070448 0.237313 0.286826 +1.065361 0.260692 0.285463 +1.059795 0.283971 0.283971 +1.053749 0.307140 0.282351 +1.047226 0.330189 0.280603 +1.040226 0.353109 0.278728 +1.032751 0.375891 0.276725 +1.024803 0.398524 0.274595 +1.016383 0.421000 0.272339 +1.007495 0.443308 0.269957 +0.998139 0.465440 0.267450 +0.988318 0.487384 0.264819 +0.978034 0.509132 0.262064 +0.967291 0.530674 0.259185 +0.956091 0.552000 0.256184 +0.944438 0.573099 0.253061 +0.932333 0.593962 0.249818 +0.919781 0.614578 0.246455 +0.906786 0.634939 0.242973 +0.893352 0.655033 0.239373 +0.879482 0.674850 0.235656 +0.865180 0.694381 0.231824 +0.850453 0.713615 0.227878 +0.835304 0.732542 0.223819 +0.819738 0.751152 0.219648 +0.803761 0.769434 0.215367 +0.787379 0.787379 0.210978 +0.769434 0.803761 0.215367 +0.751152 0.819738 0.219648 +0.732542 0.835304 0.223819 +0.713615 0.850453 0.227878 +0.694381 0.865180 0.231824 +0.674850 0.879482 0.235656 +0.655033 0.893352 0.239373 +0.634939 0.906786 0.242973 +0.614578 0.919781 0.246455 +0.593962 0.932333 0.249818 +0.573099 0.944438 0.253061 +0.552000 0.956091 0.256184 +0.530674 0.967291 0.259185 +0.509132 0.978034 0.262064 +0.487384 0.988318 0.264819 +0.465440 0.998139 0.267450 +0.443308 1.007495 0.269957 +0.421000 1.016383 0.272339 +0.398524 1.024803 0.274595 +0.375891 1.032751 0.276725 +0.353109 1.040226 0.278728 +0.330189 1.047226 0.280603 +0.307140 1.053749 0.282351 +0.283971 1.059795 0.283971 +0.260692 1.065361 0.285463 +0.237313 1.070448 0.286826 +0.213841 1.075053 0.288059 +0.190288 1.079175 0.289164 +0.166661 1.082815 0.290139 +0.142971 1.085970 0.290985 +0.119226 1.088642 0.291701 +0.095435 1.090828 0.292286 +0.071608 1.092529 0.292742 +0.047754 1.093744 0.293068 +0.023881 1.094473 0.293263 +0.000000 1.094716 0.293328 +1.100854 0.000000 0.269377 +1.100607 0.024015 0.269317 +1.099866 0.048021 0.269135 +1.098630 0.072008 0.268833 +1.096901 0.095966 0.268410 +1.094678 0.119887 0.267866 +1.091962 0.143760 0.267201 +1.088754 0.167575 0.266416 +1.085054 0.191324 0.265511 +1.080864 0.214997 0.264486 +1.076185 0.238584 0.263341 +1.071017 0.262076 0.262076 +1.065361 0.285463 0.260692 +1.059221 0.308735 0.259190 +1.052595 0.331882 0.257568 +1.045488 0.354895 0.255829 +1.037900 0.377765 0.253972 +1.029833 0.400480 0.251999 +1.021290 0.423032 0.249908 +1.012273 0.445411 0.247702 +1.002785 0.467606 0.245380 +0.992828 0.489608 0.242943 +0.982404 0.511407 0.240393 +0.971518 0.532993 0.237729 +0.960173 0.554356 0.234953 +0.948371 0.575485 0.232065 +0.936116 0.596372 0.229066 +0.923413 0.617005 0.225958 +0.910266 0.637375 0.222741 +0.896678 0.657472 0.219416 +0.882655 0.677285 0.215984 +0.868201 0.696805 0.212447 +0.853321 0.716022 0.208806 +0.838021 0.734925 0.205062 +0.822306 0.753505 0.201217 +0.806182 0.771751 0.197271 +0.789654 0.789654 0.193227 +0.771751 0.806182 0.197271 +0.753505 0.822306 0.201217 +0.734925 0.838021 0.205062 +0.716022 0.853321 0.208806 +0.696805 0.868201 0.212447 +0.677285 0.882655 0.215984 +0.657472 0.896678 0.219416 +0.637375 0.910266 0.222741 +0.617005 0.923413 0.225958 +0.596372 0.936116 0.229066 +0.575485 0.948371 0.232065 +0.554356 0.960173 0.234953 +0.532993 0.971518 0.237729 +0.511407 0.982404 0.240393 +0.489608 0.992828 0.242943 +0.467606 1.002785 0.245380 +0.445411 1.012273 0.247702 +0.423032 1.021290 0.249908 +0.400480 1.029833 0.251999 +0.377765 1.037900 0.253972 +0.354895 1.045488 0.255829 +0.331882 1.052595 0.257568 +0.308735 1.059221 0.259190 +0.285463 1.065361 0.260692 +0.262076 1.071017 0.262076 +0.238584 1.076185 0.263341 +0.214997 1.080864 0.264486 +0.191324 1.085054 0.265511 +0.167575 1.088754 0.266416 +0.143760 1.091962 0.267201 +0.119887 1.094678 0.267866 +0.095966 1.096901 0.268410 +0.072008 1.098630 0.268833 +0.048021 1.099866 0.269135 +0.024015 1.100607 0.269317 +0.000000 1.100854 0.269377 +1.106469 0.000000 0.245298 +1.106218 0.024138 0.245243 +1.105465 0.048266 0.245076 +1.104210 0.072374 0.244798 +1.102455 0.096452 0.244408 +1.100198 0.120491 0.243908 +1.097441 0.144481 0.243297 +1.094184 0.168411 0.242575 +1.090429 0.192272 0.241742 +1.086177 0.216054 0.240800 +1.081428 0.239747 0.239747 +1.076185 0.263341 0.238584 +1.070448 0.286826 0.237313 +1.064219 0.310192 0.235932 +1.057500 0.333429 0.234442 +1.050294 0.356527 0.232844 +1.042601 0.379476 0.231139 +1.034425 0.402266 0.229327 +1.025769 0.424887 0.227407 +1.016633 0.447329 0.225382 +1.007023 0.469583 0.223252 +0.996940 0.491637 0.221016 +0.986388 0.513481 0.218677 +0.975371 0.535107 0.216234 +0.963891 0.556503 0.213689 +0.951953 0.577659 0.211043 +0.939561 0.598567 0.208296 +0.926720 0.619214 0.205449 +0.913432 0.639592 0.202503 +0.899705 0.659691 0.199460 +0.885541 0.679500 0.196320 +0.870947 0.699009 0.193084 +0.855928 0.718209 0.189755 +0.840490 0.737090 0.186332 +0.824638 0.755642 0.182818 +0.808379 0.773854 0.179213 +0.791719 0.791719 0.175520 +0.773854 0.808379 0.179213 +0.755642 0.824638 0.182818 +0.737090 0.840490 0.186332 +0.718209 0.855928 0.189755 +0.699009 0.870947 0.193084 +0.679500 0.885541 0.196320 +0.659691 0.899705 0.199460 +0.639592 0.913432 0.202503 +0.619214 0.926720 0.205449 +0.598567 0.939561 0.208296 +0.577659 0.951953 0.211043 +0.556503 0.963891 0.213689 +0.535107 0.975371 0.216234 +0.513481 0.986388 0.218677 +0.491637 0.996940 0.221016 +0.469583 1.007023 0.223252 +0.447329 1.016633 0.225382 +0.424887 1.025769 0.227407 +0.402266 1.034425 0.229327 +0.379476 1.042601 0.231139 +0.356527 1.050294 0.232844 +0.333429 1.057500 0.234442 +0.310192 1.064219 0.235932 +0.286826 1.070448 0.237313 +0.263341 1.076185 0.238584 +0.239747 1.081428 0.239747 +0.216054 1.086177 0.240800 +0.192272 1.090429 0.241742 +0.168411 1.094184 0.242575 +0.144481 1.097441 0.243297 +0.120491 1.100198 0.243908 +0.096452 1.102455 0.244408 +0.072374 1.104210 0.244798 +0.048266 1.105465 0.245076 +0.024138 1.106218 0.245243 +0.000000 1.106469 0.245298 +1.111557 0.000000 0.221102 +1.111302 0.024249 0.221052 +1.110539 0.048487 0.220900 +1.109267 0.072705 0.220647 +1.107487 0.096893 0.220293 +1.105199 0.121039 0.219838 +1.102405 0.145134 0.219282 +1.099104 0.169168 0.218625 +1.095298 0.193131 0.217868 +1.090989 0.217011 0.217011 +1.086177 0.240800 0.216054 +1.080864 0.264486 0.214997 +1.075053 0.288059 0.213841 +1.068744 0.311510 0.212586 +1.061939 0.334828 0.211233 +1.054642 0.358003 0.209781 +1.046855 0.381024 0.208232 +1.038579 0.403881 0.206586 +1.029818 0.426565 0.204844 +1.020576 0.449064 0.203005 +1.010854 0.471369 0.201071 +1.000657 0.493469 0.199043 +0.989988 0.515355 0.196921 +0.978850 0.537016 0.194705 +0.967249 0.558441 0.192398 +0.955188 0.579622 0.189999 +0.942671 0.600547 0.187509 +0.929703 0.621207 0.184929 +0.916289 0.641592 0.182261 +0.902434 0.661692 0.179505 +0.888143 0.681496 0.176663 +0.873422 0.700995 0.173734 +0.858277 0.720180 0.170722 +0.842713 0.739040 0.167626 +0.826738 0.757566 0.164448 +0.810357 0.775748 0.161190 +0.793576 0.793576 0.157852 +0.775748 0.810357 0.161190 +0.757566 0.826738 0.164448 +0.739040 0.842713 0.167626 +0.720180 0.858277 0.170722 +0.700995 0.873422 0.173734 +0.681496 0.888143 0.176663 +0.661692 0.902434 0.179505 +0.641592 0.916289 0.182261 +0.621207 0.929703 0.184929 +0.600547 0.942671 0.187509 +0.579622 0.955188 0.189999 +0.558441 0.967249 0.192398 +0.537016 0.978850 0.194705 +0.515355 0.989988 0.196921 +0.493469 1.000657 0.199043 +0.471369 1.010854 0.201071 +0.449064 1.020576 0.203005 +0.426565 1.029818 0.204844 +0.403881 1.038579 0.206586 +0.381024 1.046855 0.208232 +0.358003 1.054642 0.209781 +0.334828 1.061939 0.211233 +0.311510 1.068744 0.212586 +0.288059 1.075053 0.213841 +0.264486 1.080864 0.214997 +0.240800 1.086177 0.216054 +0.217011 1.090989 0.217011 +0.193131 1.095298 0.217868 +0.169168 1.099104 0.218625 +0.145134 1.102405 0.219282 +0.121039 1.105199 0.219838 +0.096893 1.107487 0.220293 +0.072705 1.109267 0.220647 +0.048487 1.110539 0.220900 +0.024249 1.111302 0.221052 +0.000000 1.111557 0.221102 +1.116115 0.000000 0.196801 +1.115858 0.024348 0.196756 +1.115085 0.048686 0.196620 +1.113798 0.073002 0.196393 +1.111996 0.097287 0.196075 +1.109680 0.121530 0.195667 +1.106851 0.145720 0.195168 +1.103511 0.169847 0.194579 +1.099659 0.193900 0.193900 +1.095298 0.217868 0.193131 +1.090429 0.241742 0.192272 +1.085054 0.265511 0.191324 +1.079175 0.289164 0.190288 +1.072794 0.312691 0.189162 +1.065912 0.336081 0.187949 +1.058534 0.359324 0.186648 +1.050660 0.382409 0.185260 +1.042295 0.405326 0.183785 +1.033441 0.428065 0.182223 +1.024101 0.450615 0.180577 +1.014279 0.472966 0.178845 +1.003979 0.495108 0.177029 +0.993204 0.517029 0.175129 +0.981959 0.538721 0.173146 +0.970248 0.560173 0.171081 +0.958076 0.581375 0.168935 +0.945446 0.602316 0.166708 +0.932365 0.622986 0.164401 +0.918837 0.643377 0.162016 +0.904868 0.663477 0.159553 +0.890463 0.683276 0.157013 +0.875629 0.702766 0.154397 +0.860370 0.721937 0.151707 +0.844695 0.740777 0.148942 +0.828608 0.759280 0.146106 +0.812118 0.777434 0.143198 +0.795230 0.795230 0.140221 +0.777434 0.812118 0.143198 +0.759280 0.828608 0.146106 +0.740777 0.844695 0.148942 +0.721937 0.860370 0.151707 +0.702766 0.875629 0.154397 +0.683276 0.890463 0.157013 +0.663477 0.904868 0.159553 +0.643377 0.918837 0.162016 +0.622986 0.932365 0.164401 +0.602316 0.945446 0.166708 +0.581375 0.958076 0.168935 +0.560173 0.970248 0.171081 +0.538721 0.981959 0.173146 +0.517029 0.993204 0.175129 +0.495108 1.003979 0.177029 +0.472966 1.014279 0.178845 +0.450615 1.024101 0.180577 +0.428065 1.033441 0.182223 +0.405326 1.042295 0.183785 +0.382409 1.050660 0.185260 +0.359324 1.058534 0.186648 +0.336081 1.065912 0.187949 +0.312691 1.072794 0.189162 +0.289164 1.079175 0.190288 +0.265511 1.085054 0.191324 +0.241742 1.090429 0.192272 +0.217868 1.095298 0.193131 +0.193900 1.099659 0.193900 +0.169847 1.103511 0.194579 +0.145720 1.106851 0.195168 +0.121530 1.109680 0.195667 +0.097287 1.111996 0.196075 +0.073002 1.113798 0.196393 +0.048686 1.115085 0.196620 +0.024348 1.115858 0.196756 +0.000000 1.116115 0.196801 +1.120143 0.000000 0.172407 +1.119883 0.024436 0.172366 +1.119102 0.048861 0.172246 +1.117800 0.073264 0.172046 +1.115979 0.097635 0.171766 +1.113638 0.121963 0.171405 +1.110779 0.146237 0.170965 +1.107403 0.170446 0.170446 +1.103511 0.194579 0.169847 +1.099104 0.218625 0.169168 +1.094184 0.242575 0.168411 +1.088754 0.266416 0.167575 +1.082815 0.290139 0.166661 +1.076369 0.313733 0.165669 +1.069419 0.337186 0.164599 +1.061968 0.360489 0.163452 +1.054018 0.383631 0.162229 +1.045573 0.406601 0.160929 +1.036635 0.429388 0.159553 +1.027210 0.451983 0.158103 +1.017299 0.474374 0.156577 +1.006907 0.496552 0.154978 +0.996039 0.518505 0.153305 +0.984699 0.540224 0.151560 +0.972891 0.561699 0.149742 +0.960620 0.582918 0.147854 +0.947891 0.603873 0.145894 +0.934709 0.624553 0.143865 +0.921080 0.644947 0.141768 +0.907010 0.665047 0.139602 +0.892505 0.684843 0.137370 +0.877569 0.704324 0.135071 +0.862211 0.723481 0.132707 +0.846437 0.742305 0.130279 +0.830252 0.760786 0.127788 +0.813666 0.778915 0.125235 +0.796683 0.796683 0.122621 +0.778915 0.813666 0.125235 +0.760786 0.830252 0.127788 +0.742305 0.846437 0.130279 +0.723481 0.862211 0.132707 +0.704324 0.877569 0.135071 +0.684843 0.892505 0.137370 +0.665047 0.907010 0.139602 +0.644947 0.921080 0.141768 +0.624553 0.934709 0.143865 +0.603873 0.947891 0.145894 +0.582918 0.960620 0.147854 +0.561699 0.972891 0.149742 +0.540224 0.984699 0.151560 +0.518505 0.996039 0.153305 +0.496552 1.006907 0.154978 +0.474374 1.017299 0.156577 +0.451983 1.027210 0.158103 +0.429388 1.036635 0.159553 +0.406601 1.045573 0.160929 +0.383631 1.054018 0.162229 +0.360489 1.061968 0.163452 +0.337186 1.069419 0.164599 +0.313733 1.076369 0.165669 +0.290139 1.082815 0.166661 +0.266416 1.088754 0.167575 +0.242575 1.094184 0.168411 +0.218625 1.099104 0.169168 +0.194579 1.103511 0.169847 +0.170446 1.107403 0.170446 +0.146237 1.110779 0.170965 +0.121963 1.113638 0.171405 +0.097635 1.115979 0.171766 +0.073264 1.117800 0.172046 +0.048861 1.119102 0.172246 +0.024436 1.119883 0.172366 +0.000000 1.120143 0.172407 +1.123638 0.000000 0.147930 +1.123375 0.024512 0.147895 +1.122586 0.049013 0.147791 +1.121273 0.073492 0.147618 +1.119434 0.097938 0.147376 +1.117072 0.122339 0.147065 +1.114186 0.146685 0.146685 +1.110779 0.170965 0.146237 +1.106851 0.195168 0.145720 +1.102405 0.219282 0.145134 +1.097441 0.243297 0.144481 +1.091962 0.267201 0.143760 +1.085970 0.290985 0.142971 +1.079468 0.314636 0.142115 +1.072459 0.338145 0.141192 +1.064944 0.361500 0.140203 +1.056928 0.384690 0.139147 +1.048413 0.407705 0.138026 +1.039403 0.430535 0.136840 +1.029902 0.453168 0.135589 +1.019914 0.475594 0.134274 +1.009443 0.497802 0.132896 +0.998494 0.519783 0.131454 +0.987070 0.541525 0.129950 +0.975178 0.563019 0.128385 +0.962821 0.584254 0.126758 +0.950005 0.605220 0.125071 +0.936737 0.625907 0.123324 +0.923020 0.646306 0.121518 +0.908862 0.666406 0.119654 +0.894269 0.686197 0.117733 +0.879247 0.705670 0.115755 +0.863802 0.724816 0.113722 +0.847941 0.743625 0.111634 +0.831672 0.762087 0.109492 +0.815002 0.780195 0.107297 +0.797938 0.797938 0.105050 +0.780195 0.815002 0.107297 +0.762087 0.831672 0.109492 +0.743625 0.847941 0.111634 +0.724816 0.863802 0.113722 +0.705670 0.879247 0.115755 +0.686197 0.894269 0.117733 +0.666406 0.908862 0.119654 +0.646306 0.923020 0.121518 +0.625907 0.936737 0.123324 +0.605220 0.950005 0.125071 +0.584254 0.962821 0.126758 +0.563019 0.975178 0.128385 +0.541525 0.987070 0.129950 +0.519783 0.998494 0.131454 +0.497802 1.009443 0.132896 +0.475594 1.019914 0.134274 +0.453168 1.029902 0.135589 +0.430535 1.039403 0.136840 +0.407705 1.048413 0.138026 +0.384690 1.056928 0.139147 +0.361500 1.064944 0.140203 +0.338145 1.072459 0.141192 +0.314636 1.079468 0.142115 +0.290985 1.085970 0.142971 +0.267201 1.091962 0.143760 +0.243297 1.097441 0.144481 +0.219282 1.102405 0.145134 +0.195168 1.106851 0.145720 +0.170965 1.110779 0.146237 +0.146685 1.114186 0.146685 +0.122339 1.117072 0.147065 +0.097938 1.119434 0.147376 +0.073492 1.121273 0.147618 +0.049013 1.122586 0.147791 +0.024512 1.123375 0.147895 +0.000000 1.123638 0.147930 +1.126597 0.000000 0.123382 +1.126332 0.024577 0.123353 +1.125538 0.049142 0.123266 +1.124214 0.073685 0.123121 +1.122361 0.098194 0.122918 +1.119980 0.122658 0.122658 +1.117072 0.147065 0.122339 +1.113638 0.171405 0.121963 +1.109680 0.195667 0.121530 +1.105199 0.219838 0.121039 +1.100198 0.243908 0.120491 +1.094678 0.267866 0.119887 +1.088642 0.291701 0.119226 +1.082092 0.315401 0.118508 +1.075031 0.338956 0.117735 +1.067463 0.362355 0.116906 +1.059390 0.385586 0.116022 +1.050816 0.408640 0.115083 +1.041745 0.431505 0.114090 +1.032180 0.454170 0.113042 +1.022126 0.476625 0.111941 +1.011588 0.498860 0.110787 +1.000569 0.520863 0.109580 +0.989075 0.542625 0.108321 +0.977110 0.564135 0.107011 +0.964681 0.585383 0.105650 +0.951792 0.606358 0.104238 +0.938449 0.627052 0.102777 +0.924659 0.647453 0.101267 +0.910427 0.667552 0.099708 +0.895759 0.687340 0.098102 +0.880663 0.706807 0.096448 +0.865144 0.725942 0.094749 +0.849211 0.744738 0.093004 +0.832870 0.763185 0.091214 +0.816129 0.781274 0.089381 +0.798995 0.798995 0.087504 +0.781274 0.816129 0.089381 +0.763185 0.832870 0.091214 +0.744738 0.849211 0.093004 +0.725942 0.865144 0.094749 +0.706807 0.880663 0.096448 +0.687340 0.895759 0.098102 +0.667552 0.910427 0.099708 +0.647453 0.924659 0.101267 +0.627052 0.938449 0.102777 +0.606358 0.951792 0.104238 +0.585383 0.964681 0.105650 +0.564135 0.977110 0.107011 +0.542625 0.989075 0.108321 +0.520863 1.000569 0.109580 +0.498860 1.011588 0.110787 +0.476625 1.022126 0.111941 +0.454170 1.032180 0.113042 +0.431505 1.041745 0.114090 +0.408640 1.050816 0.115083 +0.385586 1.059390 0.116022 +0.362355 1.067463 0.116906 +0.338956 1.075031 0.117735 +0.315401 1.082092 0.118508 +0.291701 1.088642 0.119226 +0.267866 1.094678 0.119887 +0.243908 1.100198 0.120491 +0.219838 1.105199 0.121039 +0.195667 1.109680 0.121530 +0.171405 1.113638 0.121963 +0.147065 1.117072 0.122339 +0.122658 1.119980 0.122658 +0.098194 1.122361 0.122918 +0.073685 1.124214 0.123121 +0.049142 1.125538 0.123266 +0.024577 1.126332 0.123353 +0.000000 1.126597 0.123382 +1.129021 0.000000 0.098777 +1.128754 0.024630 0.098753 +1.127954 0.049248 0.098683 +1.126622 0.073843 0.098567 +1.124757 0.098403 0.098403 +1.122361 0.122918 0.098194 +1.119434 0.147376 0.097938 +1.115979 0.171766 0.097635 +1.111996 0.196075 0.097287 +1.107487 0.220293 0.096893 +1.102455 0.244408 0.096452 +1.096901 0.268410 0.095966 +1.090828 0.292286 0.095435 +1.084239 0.316027 0.094859 +1.077136 0.339620 0.094237 +1.069523 0.363054 0.093571 +1.061404 0.386319 0.092861 +1.052782 0.409404 0.092106 +1.043660 0.432298 0.091308 +1.034043 0.454990 0.090467 +1.023935 0.477469 0.089583 +1.013341 0.499724 0.088656 +1.002266 0.521746 0.087687 +0.990714 0.543524 0.086676 +0.978690 0.565047 0.085624 +0.966201 0.586305 0.084532 +0.953252 0.607289 0.083399 +0.939849 0.627987 0.082226 +0.925997 0.648390 0.081014 +0.911704 0.668489 0.079764 +0.896976 0.688274 0.078475 +0.881819 0.707734 0.077149 +0.866240 0.726862 0.075786 +0.850248 0.745647 0.074387 +0.833848 0.764081 0.072952 +0.817049 0.782154 0.071483 +0.799859 0.799859 0.069979 +0.782154 0.817049 0.071483 +0.764081 0.833848 0.072952 +0.745647 0.850248 0.074387 +0.726862 0.866240 0.075786 +0.707734 0.881819 0.077149 +0.688274 0.896976 0.078475 +0.668489 0.911704 0.079764 +0.648390 0.925997 0.081014 +0.627987 0.939849 0.082226 +0.607289 0.953252 0.083399 +0.586305 0.966201 0.084532 +0.565047 0.978690 0.085624 +0.543524 0.990714 0.086676 +0.521746 1.002266 0.087687 +0.499724 1.013341 0.088656 +0.477469 1.023935 0.089583 +0.454990 1.034043 0.090467 +0.432298 1.043660 0.091308 +0.409404 1.052782 0.092106 +0.386319 1.061404 0.092861 +0.363054 1.069523 0.093571 +0.339620 1.077136 0.094237 +0.316027 1.084239 0.094859 +0.292286 1.090828 0.095435 +0.268410 1.096901 0.095966 +0.244408 1.102455 0.096452 +0.220293 1.107487 0.096893 +0.196075 1.111996 0.097287 +0.171766 1.115979 0.097635 +0.147376 1.119434 0.097938 +0.122918 1.122361 0.098194 +0.098403 1.124757 0.098403 +0.073843 1.126622 0.098567 +0.049248 1.127954 0.098683 +0.024630 1.128754 0.098753 +0.000000 1.129021 0.098777 +1.130907 0.000000 0.074124 +1.130639 0.024671 0.074106 +1.129835 0.049330 0.074053 +1.128496 0.073966 0.073966 +1.126622 0.098567 0.073843 +1.124214 0.123121 0.073685 +1.121273 0.147618 0.073492 +1.117800 0.172046 0.073264 +1.113798 0.196393 0.073002 +1.109267 0.220647 0.072705 +1.104210 0.244798 0.072374 +1.098630 0.268833 0.072008 +1.092529 0.292742 0.071608 +1.085909 0.316514 0.071174 +1.078774 0.340136 0.070707 +1.071126 0.363598 0.070205 +1.062971 0.386890 0.069671 +1.054310 0.409999 0.069103 +1.045149 0.432915 0.068503 +1.035491 0.455627 0.067870 +1.025341 0.478125 0.067204 +1.014704 0.500397 0.066507 +1.003584 0.522433 0.065778 +0.991987 0.544223 0.065018 +0.979918 0.565756 0.064227 +0.967383 0.587022 0.063406 +0.954387 0.608011 0.062554 +0.940936 0.628713 0.061672 +0.927037 0.649118 0.060761 +0.912696 0.669217 0.059821 +0.897921 0.688999 0.058853 +0.882717 0.708455 0.057856 +0.867091 0.727576 0.056832 +0.851052 0.746353 0.055781 +0.834607 0.764776 0.054703 +0.817763 0.782838 0.053599 +0.800528 0.800528 0.052469 +0.782838 0.817763 0.053599 +0.764776 0.834607 0.054703 +0.746353 0.851052 0.055781 +0.727576 0.867091 0.056832 +0.708455 0.882717 0.057856 +0.688999 0.897921 0.058853 +0.669217 0.912696 0.059821 +0.649118 0.927037 0.060761 +0.628713 0.940936 0.061672 +0.608011 0.954387 0.062554 +0.587022 0.967383 0.063406 +0.565756 0.979918 0.064227 +0.544223 0.991987 0.065018 +0.522433 1.003584 0.065778 +0.500397 1.014704 0.066507 +0.478125 1.025341 0.067204 +0.455627 1.035491 0.067870 +0.432915 1.045149 0.068503 +0.409999 1.054310 0.069103 +0.386890 1.062971 0.069671 +0.363598 1.071126 0.070205 +0.340136 1.078774 0.070707 +0.316514 1.085909 0.071174 +0.292742 1.092529 0.071608 +0.268833 1.098630 0.072008 +0.244798 1.104210 0.072374 +0.220647 1.109267 0.072705 +0.196393 1.113798 0.073002 +0.172046 1.117800 0.073264 +0.147618 1.121273 0.073492 +0.123121 1.124214 0.073685 +0.098567 1.126622 0.073843 +0.073966 1.128496 0.073966 +0.049330 1.129835 0.074053 +0.024671 1.130639 0.074106 +0.000000 1.130907 0.074124 +1.132255 0.000000 0.049435 +1.131986 0.024700 0.049424 +1.131179 0.049388 0.049388 +1.129835 0.074053 0.049330 +1.127954 0.098683 0.049248 +1.125538 0.123266 0.049142 +1.122586 0.147791 0.049013 +1.119102 0.172246 0.048861 +1.115085 0.196620 0.048686 +1.110539 0.220900 0.048487 +1.105465 0.245076 0.048266 +1.099866 0.269135 0.048021 +1.093744 0.293068 0.047754 +1.087102 0.316861 0.047464 +1.079943 0.340505 0.047151 +1.072271 0.363987 0.046816 +1.064090 0.387297 0.046459 +1.055402 0.410423 0.046080 +1.046213 0.433355 0.045679 +1.036526 0.456082 0.045256 +1.026346 0.478593 0.044811 +1.015677 0.500877 0.044345 +1.004526 0.522923 0.043859 +0.992896 0.544722 0.043351 +0.980795 0.566262 0.042822 +0.968226 0.587534 0.042274 +0.955196 0.608527 0.041705 +0.941712 0.629232 0.041116 +0.927779 0.649638 0.040508 +0.913405 0.669736 0.039880 +0.898595 0.689516 0.039233 +0.883357 0.708969 0.038568 +0.867699 0.728086 0.037885 +0.851626 0.746856 0.037183 +0.835148 0.765273 0.036463 +0.818272 0.783325 0.035727 +0.801006 0.801006 0.034973 +0.783325 0.818272 0.035727 +0.765273 0.835148 0.036463 +0.746856 0.851626 0.037183 +0.728086 0.867699 0.037885 +0.708969 0.883357 0.038568 +0.689516 0.898595 0.039233 +0.669736 0.913405 0.039880 +0.649638 0.927779 0.040508 +0.629232 0.941712 0.041116 +0.608527 0.955196 0.041705 +0.587534 0.968226 0.042274 +0.566262 0.980795 0.042822 +0.544722 0.992896 0.043351 +0.522923 1.004526 0.043859 +0.500877 1.015677 0.044345 +0.478593 1.026346 0.044811 +0.456082 1.036526 0.045256 +0.433355 1.046213 0.045679 +0.410423 1.055402 0.046080 +0.387297 1.064090 0.046459 +0.363987 1.072271 0.046816 +0.340505 1.079943 0.047151 +0.316861 1.087102 0.047464 +0.293068 1.093744 0.047754 +0.269135 1.099866 0.048021 +0.245076 1.105465 0.048266 +0.220900 1.110539 0.048487 +0.196620 1.115085 0.048686 +0.172246 1.119102 0.048861 +0.147791 1.122586 0.049013 +0.123266 1.125538 0.049142 +0.098683 1.127954 0.049248 +0.074053 1.129835 0.049330 +0.049388 1.131179 0.049388 +0.024700 1.131986 0.049424 +0.000000 1.132255 0.049435 +1.133064 0.000000 0.024724 +1.132794 0.024718 0.024718 +1.131986 0.049424 0.024700 +1.130639 0.074106 0.024671 +1.128754 0.098753 0.024630 +1.126332 0.123353 0.024577 +1.123375 0.147895 0.024512 +1.119883 0.172366 0.024436 +1.115858 0.196756 0.024348 +1.111302 0.221052 0.024249 +1.106218 0.245243 0.024138 +1.100607 0.269317 0.024015 +1.094473 0.293263 0.023881 +1.087818 0.317070 0.023736 +1.080645 0.340726 0.023580 +1.072958 0.364220 0.023412 +1.064761 0.387541 0.023233 +1.056057 0.410678 0.023043 +1.046851 0.433620 0.022842 +1.037146 0.456355 0.022631 +1.026948 0.478874 0.022408 +1.016261 0.501165 0.022175 +1.005091 0.523217 0.021931 +0.993442 0.545021 0.021677 +0.981320 0.566566 0.021412 +0.968732 0.587841 0.021138 +0.955682 0.608836 0.020853 +0.942177 0.629543 0.020558 +0.928224 0.649949 0.020254 +0.913829 0.670047 0.019940 +0.898999 0.689826 0.019616 +0.883741 0.709277 0.019283 +0.868062 0.728391 0.018941 +0.851970 0.747158 0.018590 +0.835473 0.765570 0.018230 +0.818577 0.783617 0.017861 +0.801292 0.801292 0.017484 +0.783617 0.818577 0.017861 +0.765570 0.835473 0.018230 +0.747158 0.851970 0.018590 +0.728391 0.868062 0.018941 +0.709277 0.883741 0.019283 +0.689826 0.898999 0.019616 +0.670047 0.913829 0.019940 +0.649949 0.928224 0.020254 +0.629543 0.942177 0.020558 +0.608836 0.955682 0.020853 +0.587841 0.968732 0.021138 +0.566566 0.981320 0.021412 +0.545021 0.993442 0.021677 +0.523217 1.005091 0.021931 +0.501165 1.016261 0.022175 +0.478874 1.026948 0.022408 +0.456355 1.037146 0.022631 +0.433620 1.046851 0.022842 +0.410678 1.056057 0.023043 +0.387541 1.064761 0.023233 +0.364220 1.072958 0.023412 +0.340726 1.080645 0.023580 +0.317070 1.087818 0.023736 +0.293263 1.094473 0.023881 +0.269317 1.100607 0.024015 +0.245243 1.106218 0.024138 +0.221052 1.111302 0.024249 +0.196756 1.115858 0.024348 +0.172366 1.119883 0.024436 +0.147895 1.123375 0.024512 +0.123353 1.126332 0.024577 +0.098753 1.128754 0.024630 +0.074106 1.130639 0.024671 +0.049424 1.131986 0.024700 +0.024718 1.132794 0.024718 +0.000000 1.133064 0.024724 +1.133333 0.000000 0.000000 +1.133064 0.024724 0.000000 +1.132255 0.049435 0.000000 +1.130907 0.074124 0.000000 +1.129021 0.098777 0.000000 +1.126597 0.123382 0.000000 +1.123638 0.147930 0.000000 +1.120143 0.172407 0.000000 +1.116115 0.196801 0.000000 +1.111557 0.221102 0.000000 +1.106469 0.245298 0.000000 +1.100854 0.269377 0.000000 +1.094716 0.293328 0.000000 +1.088057 0.317140 0.000000 +1.080879 0.340800 0.000000 +1.073187 0.364298 0.000000 +1.064985 0.387623 0.000000 +1.056276 0.410763 0.000000 +1.047063 0.433708 0.000000 +1.037353 0.456446 0.000000 +1.027149 0.478967 0.000000 +1.016456 0.501261 0.000000 +1.005279 0.523315 0.000000 +0.993624 0.545121 0.000000 +0.981495 0.566667 0.000000 +0.968900 0.587943 0.000000 +0.955844 0.608940 0.000000 +0.942332 0.629646 0.000000 +0.928372 0.650053 0.000000 +0.913971 0.670151 0.000000 +0.899134 0.689930 0.000000 +0.883869 0.709380 0.000000 +0.868184 0.728493 0.000000 +0.852085 0.747259 0.000000 +0.835581 0.765669 0.000000 +0.818679 0.783715 0.000000 +0.801388 0.801388 0.000000 +0.783715 0.818679 0.000000 +0.765669 0.835581 0.000000 +0.747259 0.852085 0.000000 +0.728493 0.868184 0.000000 +0.709380 0.883869 0.000000 +0.689930 0.899134 0.000000 +0.670151 0.913971 0.000000 +0.650053 0.928372 0.000000 +0.629646 0.942332 0.000000 +0.608940 0.955844 0.000000 +0.587943 0.968900 0.000000 +0.566667 0.981495 0.000000 +0.545121 0.993624 0.000000 +0.523315 1.005279 0.000000 +0.501261 1.016456 0.000000 +0.478967 1.027149 0.000000 +0.456446 1.037353 0.000000 +0.433708 1.047063 0.000000 +0.410763 1.056276 0.000000 +0.387623 1.064985 0.000000 +0.364298 1.073187 0.000000 +0.340800 1.080879 0.000000 +0.317140 1.088057 0.000000 +0.293328 1.094716 0.000000 +0.269377 1.100854 0.000000 +0.245298 1.106469 0.000000 +0.221102 1.111557 0.000000 +0.196801 1.116115 0.000000 +0.172407 1.120143 0.000000 +0.147930 1.123638 0.000000 +0.123382 1.126597 0.000000 +0.098777 1.129021 0.000000 +0.074124 1.130907 0.000000 +0.049435 1.132255 0.000000 +0.024724 1.133064 0.000000 +0.000000 1.133333 0.000000 +0.000000 0.000000 1.191667 +0.025996 0.000000 1.191383 +0.025990 0.025990 1.191100 +0.000000 0.025996 1.191383 +0.051980 0.000000 1.190532 +0.051967 0.025971 1.190250 +0.051930 0.051930 1.189401 +0.025971 0.051967 1.190250 +0.000000 0.051980 1.190532 +0.077939 0.000000 1.189115 +0.077920 0.025940 1.188833 +0.077865 0.051869 1.187988 +0.077773 0.077773 1.186580 +0.051869 0.077865 1.187988 +0.025940 0.077920 1.188833 +0.000000 0.077939 1.189115 +0.103861 0.000000 1.187132 +0.103836 0.025897 1.186852 +0.103762 0.051782 1.186011 +0.103640 0.077643 1.184610 +0.103468 0.103468 1.182649 +0.077643 0.103640 1.184610 +0.051782 0.103762 1.186011 +0.025897 0.103836 1.186852 +0.000000 0.103861 1.187132 +0.129733 0.000000 1.184584 +0.129703 0.025842 1.184305 +0.129611 0.051671 1.183470 +0.129459 0.077477 1.182077 +0.129245 0.103248 1.180129 +0.128971 0.128971 1.177626 +0.103248 0.129245 1.180129 +0.077477 0.129459 1.182077 +0.051671 0.129611 1.183470 +0.025842 0.129703 1.184305 +0.000000 0.129733 1.184584 +0.155544 0.000000 1.181472 +0.155507 0.025774 1.181195 +0.155398 0.051536 1.180366 +0.155216 0.077275 1.178985 +0.154962 0.102979 1.177052 +0.154635 0.128636 1.174568 +0.154235 0.154235 1.171534 +0.128636 0.154635 1.174568 +0.102979 0.154962 1.177052 +0.077275 0.155216 1.178985 +0.051536 0.155398 1.180366 +0.025774 0.155507 1.181195 +0.000000 0.155544 1.181472 +0.181280 0.000000 1.177797 +0.181238 0.025694 1.177524 +0.181112 0.051376 1.176702 +0.180901 0.077035 1.175334 +0.180606 0.102661 1.173419 +0.180228 0.128241 1.170958 +0.179765 0.153764 1.167952 +0.179219 0.179219 1.164402 +0.153764 0.179765 1.167952 +0.128241 0.180228 1.170958 +0.102661 0.180606 1.173419 +0.077035 0.180901 1.175334 +0.051376 0.181112 1.176702 +0.025694 0.181238 1.177524 +0.000000 0.181280 1.177797 +0.206931 0.000000 1.173563 +0.206883 0.025601 1.173292 +0.206740 0.051192 1.172479 +0.206501 0.076760 1.171125 +0.206167 0.102294 1.169231 +0.205738 0.127785 1.166796 +0.205213 0.153220 1.163822 +0.204594 0.178589 1.160309 +0.203880 0.203880 1.156259 +0.178589 0.204594 1.160309 +0.153220 0.205213 1.163822 +0.127785 0.205738 1.166796 +0.102294 0.206167 1.169231 +0.076760 0.206501 1.171125 +0.051192 0.206740 1.172479 +0.025601 0.206883 1.173292 +0.000000 0.206931 1.173563 +0.232483 0.000000 1.168769 +0.232429 0.025497 1.168502 +0.232270 0.050983 1.167699 +0.232004 0.076447 1.166362 +0.231631 0.101880 1.164490 +0.231153 0.127269 1.162084 +0.230568 0.152604 1.159146 +0.229878 0.177875 1.155675 +0.229082 0.203071 1.151674 +0.228181 0.228181 1.147143 +0.203071 0.229082 1.151674 +0.177875 0.229878 1.155675 +0.152604 0.230568 1.159146 +0.127269 0.231153 1.162084 +0.101880 0.231631 1.164490 +0.076447 0.232004 1.166362 +0.050983 0.232270 1.167699 +0.025497 0.232429 1.168502 +0.000000 0.232483 1.168769 +0.257924 0.000000 1.163419 +0.257865 0.025380 1.163156 +0.257690 0.050750 1.162364 +0.257397 0.076099 1.161045 +0.256988 0.101417 1.159199 +0.256462 0.126693 1.156826 +0.255819 0.151917 1.153927 +0.255060 0.177079 1.150503 +0.254185 0.202169 1.146555 +0.253194 0.227174 1.142083 +0.252087 0.252087 1.137090 +0.227174 0.253194 1.142083 +0.202169 0.254185 1.146555 +0.177079 0.255060 1.150503 +0.151917 0.255819 1.153927 +0.126693 0.256462 1.156826 +0.101417 0.256988 1.159199 +0.076099 0.257397 1.161045 +0.050750 0.257690 1.162364 +0.025380 0.257865 1.163156 +0.000000 0.257924 1.163419 +0.283242 0.000000 1.157516 +0.283179 0.025251 1.157256 +0.282988 0.050493 1.156476 +0.282670 0.075714 1.155177 +0.282225 0.100906 1.153359 +0.281653 0.126057 1.151021 +0.280954 0.151159 1.148166 +0.280129 0.176200 1.144793 +0.279177 0.201172 1.140903 +0.278099 0.226063 1.136497 +0.276895 0.250864 1.131577 +0.275565 0.275565 1.126143 +0.250864 0.276895 1.131577 +0.226063 0.278099 1.136497 +0.201172 0.279177 1.140903 +0.176200 0.280129 1.144793 +0.151159 0.280954 1.148166 +0.126057 0.281653 1.151021 +0.100906 0.282225 1.153359 +0.075714 0.282670 1.155177 +0.050493 0.282988 1.156476 +0.025251 0.283179 1.157256 +0.000000 0.283242 1.157516 +0.308426 0.000000 1.151062 +0.308358 0.025111 1.150806 +0.308152 0.050212 1.150039 +0.307810 0.075294 1.148762 +0.307331 0.100347 1.146973 +0.306715 0.125362 1.144675 +0.305962 0.150329 1.141866 +0.305073 0.175239 1.138548 +0.304048 0.200082 1.134721 +0.302886 0.224848 1.130386 +0.301589 0.249527 1.125544 +0.300156 0.274110 1.120196 +0.298587 0.298587 1.114343 +0.274110 0.300156 1.120196 +0.249527 0.301589 1.125544 +0.224848 0.302886 1.130386 +0.200082 0.304048 1.134721 +0.175239 0.305073 1.138548 +0.150329 0.305962 1.141866 +0.125362 0.306715 1.144675 +0.100347 0.307331 1.146973 +0.075294 0.307810 1.148762 +0.050212 0.308152 1.150039 +0.025111 0.308358 1.150806 +0.000000 0.308426 1.151062 +0.333463 0.000000 1.144059 +0.333390 0.024958 1.143808 +0.333170 0.049907 1.143056 +0.332805 0.074838 1.141801 +0.332293 0.099741 1.140045 +0.331635 0.124608 1.137788 +0.330831 0.149429 1.135029 +0.329881 0.174196 1.131770 +0.328785 0.198899 1.128011 +0.327544 0.223528 1.123752 +0.326157 0.248075 1.118995 +0.324625 0.272530 1.113739 +0.322949 0.296884 1.107986 +0.321127 0.321127 1.101737 +0.296884 0.322949 1.107986 +0.272530 0.324625 1.113739 +0.248075 0.326157 1.118995 +0.223528 0.327544 1.123752 +0.198899 0.328785 1.128011 +0.174196 0.329881 1.131770 +0.149429 0.330831 1.135029 +0.124608 0.331635 1.137788 +0.099741 0.332293 1.140045 +0.074838 0.332805 1.141801 +0.049907 0.333170 1.143056 +0.024958 0.333390 1.143808 +0.000000 0.333463 1.144059 +0.358341 0.000000 1.136513 +0.358264 0.024793 1.136267 +0.358031 0.049578 1.135529 +0.357643 0.074346 1.134299 +0.357100 0.099088 1.132577 +0.356402 0.123795 1.130364 +0.355549 0.148459 1.127659 +0.354542 0.173071 1.124463 +0.353379 0.197623 1.120776 +0.352062 0.222105 1.116598 +0.350590 0.246509 1.111930 +0.348964 0.270826 1.106773 +0.347184 0.295046 1.101127 +0.345250 0.319161 1.094992 +0.343162 0.343162 1.088370 +0.319161 0.345250 1.094992 +0.295046 0.347184 1.101127 +0.270826 0.348964 1.106773 +0.246509 0.350590 1.111930 +0.222105 0.352062 1.116598 +0.197623 0.353379 1.120776 +0.173071 0.354542 1.124463 +0.148459 0.355549 1.127659 +0.123795 0.356402 1.130364 +0.099088 0.357100 1.132577 +0.074346 0.357643 1.134299 +0.049578 0.358031 1.135529 +0.024793 0.358264 1.136267 +0.000000 0.358341 1.136513 +0.383049 0.000000 1.128425 +0.382967 0.024617 1.128184 +0.382722 0.049226 1.127462 +0.382313 0.073819 1.126258 +0.381741 0.098387 1.124572 +0.381005 0.122923 1.122406 +0.380106 0.147419 1.119757 +0.379044 0.171865 1.116628 +0.377818 0.196255 1.113017 +0.376429 0.220579 1.108925 +0.374877 0.244829 1.104353 +0.373162 0.268997 1.099300 +0.371284 0.293074 1.093767 +0.369243 0.317051 1.087754 +0.367039 0.340920 1.081261 +0.364672 0.364672 1.074289 +0.340920 0.367039 1.081261 +0.317051 0.369243 1.087754 +0.293074 0.371284 1.093767 +0.268997 0.373162 1.099300 +0.244829 0.374877 1.104353 +0.220579 0.376429 1.108925 +0.196255 0.377818 1.113017 +0.171865 0.379044 1.116628 +0.147419 0.380106 1.119757 +0.122923 0.381005 1.122406 +0.098387 0.381741 1.124572 +0.073819 0.382313 1.126258 +0.049226 0.382722 1.127462 +0.024617 0.382967 1.128184 +0.000000 0.383049 1.128425 +0.407574 0.000000 1.119800 +0.407488 0.024429 1.119565 +0.407231 0.048850 1.118859 +0.406803 0.073257 1.117682 +0.406204 0.097640 1.116035 +0.405433 0.121994 1.113917 +0.404490 0.146309 1.111328 +0.403377 0.170579 1.108269 +0.402092 0.194795 1.104738 +0.400635 0.218950 1.100737 +0.399008 0.243036 1.096264 +0.397208 0.267045 1.091321 +0.395238 0.290968 1.085907 +0.393096 0.314798 1.080022 +0.390783 0.338526 1.073666 +0.388298 0.362143 1.066840 +0.385642 0.385642 1.059542 +0.362143 0.388298 1.066840 +0.338526 0.390783 1.073666 +0.314798 0.393096 1.080022 +0.290968 0.395238 1.085907 +0.267045 0.397208 1.091321 +0.243036 0.399008 1.096264 +0.218950 0.400635 1.100737 +0.194795 0.402092 1.104738 +0.170579 0.403377 1.108269 +0.146309 0.404490 1.111328 +0.121994 0.405433 1.113917 +0.097640 0.406204 1.116035 +0.073257 0.406803 1.117682 +0.048850 0.407231 1.118859 +0.024429 0.407488 1.119565 +0.000000 0.407574 1.119800 +0.431905 0.000000 1.110643 +0.431816 0.024229 1.110413 +0.431548 0.048452 1.109724 +0.431102 0.072660 1.108576 +0.430477 0.096847 1.106969 +0.429673 0.121006 1.104902 +0.428690 0.145130 1.102375 +0.427529 0.169212 1.099389 +0.426189 0.193244 1.095942 +0.424669 0.217219 1.092035 +0.422971 0.241130 1.087668 +0.421093 0.264969 1.082839 +0.419036 0.288729 1.077550 +0.416800 0.312401 1.071799 +0.414384 0.335978 1.065586 +0.411788 0.359452 1.058912 +0.409013 0.382815 1.051775 +0.406058 0.406058 1.044176 +0.382815 0.409013 1.051775 +0.359452 0.411788 1.058912 +0.335978 0.414384 1.065586 +0.312401 0.416800 1.071799 +0.288729 0.419036 1.077550 +0.264969 0.421093 1.082839 +0.241130 0.422971 1.087668 +0.217219 0.424669 1.092035 +0.193244 0.426189 1.095942 +0.169212 0.427529 1.099389 +0.145130 0.428690 1.102375 +0.121006 0.429673 1.104902 +0.096847 0.430477 1.106969 +0.072660 0.431102 1.108576 +0.048452 0.431548 1.109724 +0.024229 0.431816 1.110413 +0.000000 0.431905 1.110643 +0.456031 0.000000 1.100956 +0.455938 0.024018 1.100733 +0.455661 0.048030 1.100062 +0.455197 0.072029 1.098943 +0.454549 0.096008 1.097378 +0.453715 0.119962 1.095364 +0.452695 0.143883 1.092902 +0.451489 0.167766 1.089992 +0.450098 0.191603 1.086632 +0.448520 0.215387 1.082824 +0.446756 0.239112 1.078565 +0.444806 0.262771 1.073857 +0.442669 0.286357 1.068697 +0.440345 0.309861 1.063086 +0.437833 0.333278 1.057023 +0.435134 0.356599 1.050507 +0.432247 0.379817 1.043538 +0.429173 0.402923 1.036115 +0.425910 0.425910 1.028237 +0.402923 0.429173 1.036115 +0.379817 0.432247 1.043538 +0.356599 0.435134 1.050507 +0.333278 0.437833 1.057023 +0.309861 0.440345 1.063086 +0.286357 0.442669 1.068697 +0.262771 0.444806 1.073857 +0.239112 0.446756 1.078565 +0.215387 0.448520 1.082824 +0.191603 0.450098 1.086632 +0.167766 0.451489 1.089992 +0.143883 0.452695 1.092902 +0.119962 0.453715 1.095364 +0.096008 0.454549 1.097378 +0.072029 0.455197 1.098943 +0.048030 0.455661 1.100062 +0.024018 0.455938 1.100733 +0.000000 0.456031 1.100956 +0.479940 0.000000 1.090746 +0.479844 0.023795 1.090529 +0.479557 0.047585 1.089876 +0.479078 0.071363 1.088789 +0.478408 0.095123 1.087266 +0.477546 0.118860 1.085307 +0.476493 0.142568 1.082912 +0.475247 0.166240 1.080081 +0.473809 0.189871 1.076812 +0.472178 0.213454 1.073105 +0.470354 0.236983 1.068960 +0.468337 0.260451 1.064376 +0.466126 0.283852 1.059351 +0.463720 0.307179 1.053885 +0.461121 0.330426 1.047977 +0.458326 0.353584 1.041626 +0.455336 0.376648 1.034831 +0.452151 0.399608 1.027591 +0.448769 0.422458 1.019904 +0.445190 0.445190 1.011771 +0.422458 0.448769 1.019904 +0.399608 0.452151 1.027591 +0.376648 0.455336 1.034831 +0.353584 0.458326 1.041626 +0.330426 0.461121 1.047977 +0.307179 0.463720 1.053885 +0.283852 0.466126 1.059351 +0.260451 0.468337 1.064376 +0.236983 0.470354 1.068960 +0.213454 0.472178 1.073105 +0.189871 0.473809 1.076812 +0.166240 0.475247 1.080081 +0.142568 0.476493 1.082912 +0.118860 0.477546 1.085307 +0.095123 0.478408 1.087266 +0.071363 0.479078 1.088789 +0.047585 0.479557 1.089876 +0.023795 0.479844 1.090529 +0.000000 0.479940 1.090746 +0.503620 0.000000 1.080017 +0.503522 0.023561 1.079806 +0.503226 0.047118 1.079172 +0.502734 0.070663 1.078116 +0.502044 0.094194 1.076638 +0.501157 0.117703 1.074736 +0.500073 0.141185 1.072410 +0.498791 0.164636 1.069660 +0.497310 0.188050 1.066485 +0.495631 0.211421 1.062883 +0.493752 0.234743 1.058855 +0.491674 0.258010 1.054399 +0.489396 0.281216 1.049513 +0.486917 0.304356 1.044198 +0.484237 0.327422 1.038450 +0.481355 0.350408 1.032270 +0.478271 0.373308 1.025655 +0.474983 0.396114 1.018604 +0.471491 0.418818 1.011117 +0.467795 0.441414 1.003190 +0.463894 0.463894 0.994824 +0.441414 0.467795 1.003190 +0.418818 0.471491 1.011117 +0.396114 0.474983 1.018604 +0.373308 0.478271 1.025655 +0.350408 0.481355 1.032270 +0.327422 0.484237 1.038450 +0.304356 0.486917 1.044198 +0.281216 0.489396 1.049513 +0.258010 0.491674 1.054399 +0.234743 0.493752 1.058855 +0.211421 0.495631 1.062883 +0.188050 0.497310 1.066485 +0.164636 0.498791 1.069660 +0.141185 0.500073 1.072410 +0.117703 0.501157 1.074736 +0.094194 0.502044 1.076638 +0.070663 0.502734 1.078116 +0.047118 0.503226 1.079172 +0.023561 0.503522 1.079806 +0.000000 0.503620 1.080017 +0.527061 0.000000 1.068773 +0.526960 0.023316 1.068569 +0.526657 0.046628 1.067955 +0.526152 0.069930 1.066932 +0.525446 0.093219 1.065498 +0.524536 0.116489 1.063655 +0.523425 0.139736 1.061400 +0.522110 0.162955 1.058734 +0.520591 0.186140 1.055654 +0.518869 0.209288 1.052161 +0.516941 0.232392 1.048253 +0.514809 0.255448 1.043929 +0.512470 0.278449 1.039187 +0.509925 0.301391 1.034026 +0.507172 0.324267 1.028444 +0.504211 0.347071 1.022439 +0.501041 0.369798 1.016010 +0.497660 0.392439 1.009156 +0.494069 0.414989 1.001873 +0.490266 0.437441 0.994160 +0.486249 0.459787 0.986016 +0.482019 0.482019 0.977438 +0.459787 0.486249 0.986016 +0.437441 0.490266 0.994160 +0.414989 0.494069 1.001873 +0.392439 0.497660 1.009156 +0.369798 0.501041 1.016010 +0.347071 0.504211 1.022439 +0.324267 0.507172 1.028444 +0.301391 0.509925 1.034026 +0.278449 0.512470 1.039187 +0.255448 0.514809 1.043929 +0.232392 0.516941 1.048253 +0.209288 0.518869 1.052161 +0.186140 0.520591 1.055654 +0.162955 0.522110 1.058734 +0.139736 0.523425 1.061400 +0.116489 0.524536 1.063655 +0.093219 0.525446 1.065498 +0.069930 0.526152 1.066932 +0.046628 0.526657 1.067955 +0.023316 0.526960 1.068569 +0.000000 0.527061 1.068773 +0.550250 0.000000 1.057021 +0.550147 0.023060 1.056823 +0.549838 0.046116 1.056229 +0.549323 0.069164 1.055239 +0.548601 0.092200 1.053853 +0.547672 0.115220 1.052069 +0.546537 0.138220 1.049887 +0.545193 0.161196 1.047306 +0.543641 0.184143 1.044325 +0.541881 0.207056 1.040943 +0.539910 0.229932 1.037158 +0.537730 0.252766 1.032969 +0.535338 0.275552 1.028374 +0.532734 0.298286 1.023372 +0.529916 0.320961 1.017960 +0.526885 0.343574 1.012136 +0.523638 0.366117 1.005898 +0.520174 0.388585 0.999245 +0.516493 0.410972 0.992173 +0.512592 0.433270 0.984681 +0.508472 0.455473 0.976765 +0.504130 0.477574 0.968424 +0.499565 0.499565 0.959656 +0.477574 0.504130 0.968424 +0.455473 0.508472 0.976765 +0.433270 0.512592 0.984681 +0.410972 0.516493 0.992173 +0.388585 0.520174 0.999245 +0.366117 0.523638 1.005898 +0.343574 0.526885 1.012136 +0.320961 0.529916 1.017960 +0.298286 0.532734 1.023372 +0.275552 0.535338 1.028374 +0.252766 0.537730 1.032969 +0.229932 0.539910 1.037158 +0.207056 0.541881 1.040943 +0.184143 0.543641 1.044325 +0.161196 0.545193 1.047306 +0.138220 0.546537 1.049887 +0.115220 0.547672 1.052069 +0.092200 0.548601 1.053853 +0.069164 0.549323 1.055239 +0.046116 0.549838 1.056229 +0.023060 0.550147 1.056823 +0.000000 0.550250 1.057021 +0.573178 0.000000 1.044766 +0.573073 0.022793 1.044575 +0.572759 0.045582 1.044001 +0.572234 0.068365 1.043045 +0.571500 0.091137 1.041706 +0.570554 0.113897 1.039983 +0.569398 0.136639 1.037875 +0.568030 0.159361 1.035382 +0.566450 0.182058 1.032501 +0.564656 0.204727 1.029233 +0.562649 0.227364 1.025574 +0.560427 0.249965 1.021523 +0.557988 0.272525 1.017078 +0.555333 0.295041 1.012238 +0.552459 0.317506 1.007000 +0.549365 0.339916 1.001361 +0.546051 0.362267 0.995319 +0.542514 0.384551 0.988872 +0.538753 0.406765 0.982017 +0.534766 0.428901 0.974751 +0.530553 0.450952 0.967070 +0.526111 0.472913 0.958973 +0.521438 0.494776 0.950457 +0.516534 0.516534 0.941517 +0.494776 0.521438 0.950457 +0.472913 0.526111 0.958973 +0.450952 0.530553 0.967070 +0.428901 0.534766 0.974751 +0.406765 0.538753 0.982017 +0.384551 0.542514 0.988872 +0.362267 0.546051 0.995319 +0.339916 0.549365 1.001361 +0.317506 0.552459 1.007000 +0.295041 0.555333 1.012238 +0.272525 0.557988 1.017078 +0.249965 0.560427 1.021523 +0.227364 0.562649 1.025574 +0.204727 0.564656 1.029233 +0.182058 0.566450 1.032501 +0.159361 0.568030 1.035382 +0.136639 0.569398 1.037875 +0.113897 0.570554 1.039983 +0.091137 0.571500 1.041706 +0.068365 0.572234 1.043045 +0.045582 0.572759 1.044001 +0.022793 0.573073 1.044575 +0.000000 0.573178 1.044766 +0.595833 0.000000 1.032014 +0.595727 0.022515 1.031829 +0.595408 0.045027 1.031277 +0.594876 0.067533 1.030355 +0.594130 0.090031 1.029064 +0.593171 0.112519 1.027403 +0.591998 0.134993 1.025371 +0.590610 0.157450 1.022966 +0.589006 0.179887 1.020188 +0.587185 0.202301 1.017034 +0.585146 0.224688 1.013503 +0.582889 0.247046 1.009593 +0.580411 0.269370 1.005302 +0.577712 0.291656 1.000627 +0.574790 0.313901 0.995566 +0.571644 0.336099 0.990116 +0.568271 0.358247 0.984275 +0.564671 0.380338 0.978038 +0.560841 0.402369 0.971404 +0.556779 0.424333 0.964369 +0.552484 0.446224 0.956930 +0.547953 0.468036 0.949083 +0.543186 0.489762 0.940825 +0.538178 0.511396 0.932152 +0.532930 0.532930 0.923061 +0.511396 0.538178 0.932152 +0.489762 0.543186 0.940825 +0.468036 0.547953 0.949083 +0.446224 0.552484 0.956930 +0.424333 0.556779 0.964369 +0.402369 0.560841 0.971404 +0.380338 0.564671 0.978038 +0.358247 0.568271 0.984275 +0.336099 0.571644 0.990116 +0.313901 0.574790 0.995566 +0.291656 0.577712 1.000627 +0.269370 0.580411 1.005302 +0.247046 0.582889 1.009593 +0.224688 0.585146 1.013503 +0.202301 0.587185 1.017034 +0.179887 0.589006 1.020188 +0.157450 0.590610 1.022966 +0.134993 0.591998 1.025371 +0.112519 0.593171 1.027403 +0.090031 0.594130 1.029064 +0.067533 0.594876 1.030355 +0.045027 0.595408 1.031277 +0.022515 0.595727 1.031829 +0.000000 0.595833 1.032014 +0.618205 0.000000 1.018770 +0.618097 0.022226 1.018593 +0.617775 0.044450 1.018061 +0.617237 0.066669 1.017174 +0.616483 0.088883 1.015932 +0.615513 0.111088 1.014334 +0.614326 0.133282 1.012378 +0.612921 0.155464 1.010063 +0.611298 0.177630 1.007388 +0.609456 0.199778 1.004352 +0.607392 0.221905 1.000951 +0.605106 0.244009 0.997184 +0.602596 0.266086 0.993048 +0.599862 0.288134 0.988542 +0.596900 0.310147 0.983661 +0.593710 0.332123 0.978403 +0.590288 0.354058 0.972765 +0.586635 0.375946 0.966744 +0.582746 0.397784 0.960336 +0.578620 0.419566 0.953537 +0.574255 0.441287 0.946343 +0.569649 0.462941 0.938752 +0.564798 0.484522 0.930758 +0.559701 0.506023 0.922358 +0.554355 0.527437 0.913548 +0.548757 0.548757 0.904324 +0.527437 0.554355 0.913548 +0.506023 0.559701 0.922358 +0.484522 0.564798 0.930758 +0.462941 0.569649 0.938752 +0.441287 0.574255 0.946343 +0.419566 0.578620 0.953537 +0.397784 0.582746 0.960336 +0.375946 0.586635 0.966744 +0.354058 0.590288 0.972765 +0.332123 0.593710 0.978403 +0.310147 0.596900 0.983661 +0.288134 0.599862 0.988542 +0.266086 0.602596 0.993048 +0.244009 0.605106 0.997184 +0.221905 0.607392 1.000951 +0.199778 0.609456 1.004352 +0.177630 0.611298 1.007388 +0.155464 0.612921 1.010063 +0.133282 0.614326 1.012378 +0.111088 0.615513 1.014334 +0.088883 0.616483 1.015932 +0.066669 0.617237 1.017174 +0.044450 0.617775 1.018061 +0.022226 0.618097 1.018593 +0.000000 0.618205 1.018770 +0.640282 0.000000 1.005041 +0.640174 0.021926 1.004871 +0.639848 0.043851 1.004361 +0.639306 0.065773 1.003509 +0.638546 0.087691 1.002317 +0.637568 0.109603 1.000781 +0.636371 0.131508 0.998903 +0.634955 0.153404 0.996679 +0.633317 0.175288 0.994109 +0.631458 0.197160 0.991190 +0.629375 0.219017 0.987921 +0.627067 0.240856 0.984299 +0.624533 0.262676 0.980321 +0.621771 0.284474 0.975984 +0.618778 0.306245 0.971286 +0.615552 0.327989 0.966224 +0.612092 0.349700 0.960793 +0.608395 0.371375 0.954990 +0.604459 0.393010 0.948811 +0.600281 0.414601 0.942252 +0.595858 0.436142 0.935309 +0.591187 0.457628 0.927978 +0.586267 0.479054 0.920254 +0.581093 0.500413 0.912133 +0.575663 0.521699 0.903610 +0.569974 0.542905 0.894680 +0.564023 0.564023 0.885339 +0.542905 0.569974 0.894680 +0.521699 0.575663 0.903610 +0.500413 0.581093 0.912133 +0.479054 0.586267 0.920254 +0.457628 0.591187 0.927978 +0.436142 0.595858 0.935309 +0.414601 0.600281 0.942252 +0.393010 0.604459 0.948811 +0.371375 0.608395 0.954990 +0.349700 0.612092 0.960793 +0.327989 0.615552 0.966224 +0.306245 0.618778 0.971286 +0.284474 0.621771 0.975984 +0.262676 0.624533 0.980321 +0.240856 0.627067 0.984299 +0.219017 0.629375 0.987921 +0.197160 0.631458 0.991190 +0.175288 0.633317 0.994109 +0.153404 0.634955 0.996679 +0.131508 0.636371 0.998903 +0.109603 0.637568 1.000781 +0.087691 0.638546 1.002317 +0.065773 0.639306 1.003509 +0.043851 0.639848 1.004361 +0.021926 0.640174 1.004871 +0.000000 0.640282 1.005041 +0.662055 0.000000 0.990835 +0.661946 0.021617 0.990672 +0.661619 0.043232 0.990182 +0.661074 0.064847 0.989367 +0.660310 0.086458 0.988223 +0.659327 0.108067 0.986752 +0.658123 0.129671 0.984951 +0.656699 0.151270 0.982819 +0.655052 0.172863 0.980354 +0.653181 0.194448 0.977555 +0.651085 0.216023 0.974418 +0.648763 0.237588 0.970942 +0.646211 0.259140 0.967123 +0.643429 0.280677 0.962959 +0.640413 0.302197 0.958446 +0.637162 0.323697 0.953580 +0.633673 0.345174 0.948358 +0.629943 0.366626 0.942776 +0.625970 0.388048 0.936830 +0.621750 0.409436 0.930515 +0.617281 0.430787 0.923827 +0.612560 0.452096 0.916760 +0.607582 0.473357 0.909311 +0.602345 0.494565 0.901474 +0.596846 0.515714 0.893243 +0.591080 0.536797 0.884614 +0.585045 0.557807 0.875582 +0.578736 0.578736 0.866140 +0.557807 0.585045 0.875582 +0.536797 0.591080 0.884614 +0.515714 0.596846 0.893243 +0.494565 0.602345 0.901474 +0.473357 0.607582 0.909311 +0.452096 0.612560 0.916760 +0.430787 0.617281 0.923827 +0.409436 0.621750 0.930515 +0.388048 0.625970 0.936830 +0.366626 0.629943 0.942776 +0.345174 0.633673 0.948358 +0.323697 0.637162 0.953580 +0.302197 0.640413 0.958446 +0.280677 0.643429 0.962959 +0.259140 0.646211 0.967123 +0.237588 0.648763 0.970942 +0.216023 0.651085 0.974418 +0.194448 0.653181 0.977555 +0.172863 0.655052 0.980354 +0.151270 0.656699 0.982819 +0.129671 0.658123 0.984951 +0.108067 0.659327 0.986752 +0.086458 0.660310 0.988223 +0.064847 0.661074 0.989367 +0.043232 0.661619 0.990182 +0.021617 0.661946 0.990672 +0.000000 0.662055 0.990835 +0.683512 0.000000 0.976156 +0.683403 0.021296 0.976000 +0.683075 0.042593 0.975532 +0.682529 0.063889 0.974752 +0.681763 0.085184 0.973659 +0.680778 0.106479 0.972252 +0.679572 0.127773 0.970529 +0.678143 0.149065 0.968489 +0.676492 0.170355 0.966130 +0.674615 0.191642 0.963451 +0.672512 0.212926 0.960447 +0.670181 0.234205 0.957118 +0.667619 0.255479 0.953459 +0.664825 0.276745 0.949468 +0.661795 0.298002 0.945141 +0.658527 0.319248 0.940474 +0.655019 0.340481 0.935464 +0.651267 0.361698 0.930105 +0.647268 0.382897 0.924394 +0.643018 0.404073 0.918326 +0.638516 0.425224 0.911895 +0.633756 0.446344 0.905097 +0.628734 0.467431 0.897926 +0.623449 0.488477 0.890377 +0.617894 0.509479 0.882444 +0.612066 0.530430 0.874121 +0.605962 0.551323 0.865403 +0.599576 0.572150 0.856284 +0.592905 0.592905 0.846756 +0.572150 0.599576 0.856284 +0.551323 0.605962 0.865403 +0.530430 0.612066 0.874121 +0.509479 0.617894 0.882444 +0.488477 0.623449 0.890377 +0.467431 0.628734 0.897926 +0.446344 0.633756 0.905097 +0.425224 0.638516 0.911895 +0.404073 0.643018 0.918326 +0.382897 0.647268 0.924394 +0.361698 0.651267 0.930105 +0.340481 0.655019 0.935464 +0.319248 0.658527 0.940474 +0.298002 0.661795 0.945141 +0.276745 0.664825 0.949468 +0.255479 0.667619 0.953459 +0.234205 0.670181 0.957118 +0.212926 0.672512 0.960447 +0.191642 0.674615 0.963451 +0.170355 0.676492 0.966130 +0.149065 0.678143 0.968489 +0.127773 0.679572 0.970529 +0.106479 0.680778 0.972252 +0.085184 0.681763 0.973659 +0.063889 0.682529 0.974752 +0.042593 0.683075 0.975532 +0.021296 0.683403 0.976000 +0.000000 0.683512 0.976156 +0.704644 0.000000 0.961013 +0.704535 0.020966 0.960864 +0.704208 0.041933 0.960418 +0.703662 0.062900 0.959673 +0.702897 0.083869 0.958630 +0.701912 0.104840 0.957287 +0.700706 0.125813 0.955642 +0.699278 0.146788 0.953695 +0.697626 0.167765 0.951442 +0.695749 0.188744 0.948882 +0.693645 0.209726 0.946013 +0.691312 0.230709 0.942831 +0.688748 0.251694 0.939333 +0.685949 0.272678 0.935516 +0.682913 0.293662 0.931376 +0.679638 0.314643 0.926909 +0.676120 0.335621 0.922111 +0.672356 0.356593 0.916978 +0.668342 0.377557 0.911504 +0.664075 0.398510 0.905684 +0.659550 0.419450 0.899513 +0.654765 0.440372 0.892986 +0.649714 0.461273 0.886098 +0.644393 0.482148 0.878841 +0.638797 0.502993 0.871209 +0.632923 0.523801 0.863198 +0.626765 0.544567 0.854799 +0.620318 0.565284 0.846007 +0.613578 0.585944 0.836815 +0.606540 0.606540 0.827217 +0.585944 0.613578 0.836815 +0.565284 0.620318 0.846007 +0.544567 0.626765 0.854799 +0.523801 0.632923 0.863198 +0.502993 0.638797 0.871209 +0.482148 0.644393 0.878841 +0.461273 0.649714 0.886098 +0.440372 0.654765 0.892986 +0.419450 0.659550 0.899513 +0.398510 0.664075 0.905684 +0.377557 0.668342 0.911504 +0.356593 0.672356 0.916978 +0.335621 0.676120 0.922111 +0.314643 0.679638 0.926909 +0.293662 0.682913 0.931376 +0.272678 0.685949 0.935516 +0.251694 0.688748 0.939333 +0.230709 0.691312 0.942831 +0.209726 0.693645 0.946013 +0.188744 0.695749 0.948882 +0.167765 0.697626 0.951442 +0.146788 0.699278 0.953695 +0.125813 0.700706 0.955642 +0.104840 0.701912 0.957287 +0.083869 0.702897 0.958630 +0.062900 0.703662 0.959673 +0.041933 0.704208 0.960418 +0.020966 0.704535 0.960864 +0.000000 0.704644 0.961013 +0.725441 0.000000 0.945413 +0.725332 0.020626 0.945271 +0.725006 0.041253 0.944846 +0.724462 0.061882 0.944137 +0.723700 0.082514 0.943144 +0.722718 0.103151 0.941864 +0.721516 0.123793 0.940298 +0.720092 0.144440 0.938442 +0.718445 0.165094 0.936296 +0.716573 0.185756 0.933856 +0.714474 0.206424 0.931121 +0.712145 0.227101 0.928086 +0.709585 0.247786 0.924749 +0.706790 0.268478 0.921106 +0.703757 0.289178 0.917154 +0.700484 0.309884 0.912888 +0.696966 0.330595 0.908303 +0.693200 0.351311 0.903396 +0.689182 0.372030 0.898160 +0.684909 0.392749 0.892590 +0.680375 0.413467 0.886682 +0.675576 0.434179 0.880428 +0.670509 0.454884 0.873824 +0.665167 0.475577 0.866862 +0.659545 0.496253 0.859536 +0.653639 0.516909 0.851839 +0.647444 0.537538 0.843765 +0.640953 0.558134 0.835306 +0.634161 0.578690 0.826455 +0.627063 0.599199 0.817204 +0.619652 0.619652 0.807547 +0.599199 0.627063 0.817204 +0.578690 0.634161 0.826455 +0.558134 0.640953 0.835306 +0.537538 0.647444 0.843765 +0.516909 0.653639 0.851839 +0.496253 0.659545 0.859536 +0.475577 0.665167 0.866862 +0.454884 0.670509 0.873824 +0.434179 0.675576 0.880428 +0.413467 0.680375 0.886682 +0.392749 0.684909 0.892590 +0.372030 0.689182 0.898160 +0.351311 0.693200 0.903396 +0.330595 0.696966 0.908303 +0.309884 0.700484 0.912888 +0.289178 0.703757 0.917154 +0.268478 0.706790 0.921106 +0.247786 0.709585 0.924749 +0.227101 0.712145 0.928086 +0.206424 0.714474 0.931121 +0.185756 0.716573 0.933856 +0.165094 0.718445 0.936296 +0.144440 0.720092 0.938442 +0.123793 0.721516 0.940298 +0.103151 0.722718 0.941864 +0.082514 0.723700 0.943144 +0.061882 0.724462 0.944137 +0.041253 0.725006 0.944846 +0.020626 0.725332 0.945271 +0.000000 0.725441 0.945413 +0.745892 0.000000 0.929362 +0.745784 0.020276 0.929228 +0.745460 0.040553 0.928824 +0.744920 0.060834 0.928151 +0.744162 0.081120 0.927207 +0.743186 0.101412 0.925991 +0.741991 0.121713 0.924502 +0.740576 0.142023 0.922738 +0.738938 0.162344 0.920698 +0.737076 0.182677 0.918378 +0.734988 0.203023 0.915775 +0.732670 0.223382 0.912888 +0.730121 0.243757 0.909712 +0.727337 0.264146 0.906243 +0.724316 0.284550 0.902479 +0.721053 0.304970 0.898413 +0.717545 0.325405 0.894042 +0.713787 0.345853 0.889361 +0.709777 0.366315 0.884364 +0.705509 0.386789 0.879046 +0.700978 0.407273 0.873400 +0.696180 0.427765 0.867422 +0.691109 0.448262 0.861104 +0.685760 0.468761 0.854439 +0.680127 0.489259 0.847421 +0.674205 0.509750 0.840042 +0.667988 0.530231 0.832296 +0.661469 0.550695 0.824174 +0.654643 0.571137 0.815668 +0.647502 0.591549 0.806771 +0.640041 0.611924 0.797475 +0.632253 0.632253 0.787771 +0.611924 0.640041 0.797475 +0.591549 0.647502 0.806771 +0.571137 0.654643 0.815668 +0.550695 0.661469 0.824174 +0.530231 0.667988 0.832296 +0.509750 0.674205 0.840042 +0.489259 0.680127 0.847421 +0.468761 0.685760 0.854439 +0.448262 0.691109 0.861104 +0.427765 0.696180 0.867422 +0.407273 0.700978 0.873400 +0.386789 0.705509 0.879046 +0.366315 0.709777 0.884364 +0.345853 0.713787 0.889361 +0.325405 0.717545 0.894042 +0.304970 0.721053 0.898413 +0.284550 0.724316 0.902479 +0.264146 0.727337 0.906243 +0.243757 0.730121 0.909712 +0.223382 0.732670 0.912888 +0.203023 0.734988 0.915775 +0.182677 0.737076 0.918378 +0.162344 0.738938 0.920698 +0.142023 0.740576 0.922738 +0.121713 0.741991 0.924502 +0.101412 0.743186 0.925991 +0.081120 0.744162 0.927207 +0.060834 0.744920 0.928151 +0.040553 0.745460 0.928824 +0.020276 0.745784 0.929228 +0.000000 0.745892 0.929362 +0.765989 0.000000 0.912870 +0.765882 0.019916 0.912742 +0.765560 0.039834 0.912359 +0.765025 0.059757 0.911721 +0.764274 0.079687 0.910826 +0.763307 0.099625 0.909674 +0.762123 0.119575 0.908262 +0.760719 0.139538 0.906590 +0.759095 0.159515 0.904654 +0.757248 0.179509 0.902453 +0.755176 0.199522 0.899983 +0.752876 0.219554 0.897242 +0.750345 0.239607 0.894226 +0.747580 0.259683 0.890931 +0.744578 0.279781 0.887353 +0.741334 0.299904 0.883488 +0.737846 0.320050 0.879330 +0.734107 0.340220 0.874875 +0.730115 0.360414 0.870117 +0.725863 0.380631 0.865050 +0.721348 0.400870 0.859669 +0.716562 0.421129 0.853966 +0.711502 0.441407 0.847935 +0.706161 0.461701 0.841569 +0.700532 0.482007 0.834861 +0.694609 0.502323 0.827803 +0.688387 0.522644 0.820388 +0.681857 0.542966 0.812606 +0.675014 0.563282 0.804450 +0.667849 0.583586 0.795911 +0.660355 0.603872 0.786981 +0.652526 0.624130 0.777650 +0.644353 0.644353 0.767911 +0.624130 0.652526 0.777650 +0.603872 0.660355 0.786981 +0.583586 0.667849 0.795911 +0.563282 0.675014 0.804450 +0.542966 0.681857 0.812606 +0.522644 0.688387 0.820388 +0.502323 0.694609 0.827803 +0.482007 0.700532 0.834861 +0.461701 0.706161 0.841569 +0.441407 0.711502 0.847935 +0.421129 0.716562 0.853966 +0.400870 0.721348 0.859669 +0.380631 0.725863 0.865050 +0.360414 0.730115 0.870117 +0.340220 0.734107 0.874875 +0.320050 0.737846 0.879330 +0.299904 0.741334 0.883488 +0.279781 0.744578 0.887353 +0.259683 0.747580 0.890931 +0.239607 0.750345 0.894226 +0.219554 0.752876 0.897242 +0.199522 0.755176 0.899983 +0.179509 0.757248 0.902453 +0.159515 0.759095 0.904654 +0.139538 0.760719 0.906590 +0.119575 0.762123 0.908262 +0.099625 0.763307 0.909674 +0.079687 0.764274 0.910826 +0.059757 0.765025 0.911721 +0.039834 0.765560 0.912359 +0.019916 0.765882 0.912742 +0.000000 0.765989 0.912870 +0.785720 0.000000 0.895942 +0.785615 0.019547 0.895822 +0.785297 0.039097 0.895460 +0.784768 0.058652 0.894857 +0.784026 0.078216 0.894010 +0.783070 0.097791 0.892921 +0.781899 0.117379 0.891585 +0.780512 0.136985 0.890003 +0.778906 0.156609 0.888172 +0.777079 0.176254 0.886088 +0.775028 0.195923 0.883750 +0.772752 0.215617 0.881155 +0.770246 0.235339 0.878297 +0.767508 0.255090 0.875175 +0.764533 0.274872 0.871782 +0.761317 0.294686 0.868116 +0.757857 0.314532 0.864171 +0.754148 0.334413 0.859941 +0.750184 0.354327 0.855421 +0.745961 0.374275 0.850605 +0.741473 0.394257 0.845487 +0.736713 0.414272 0.840061 +0.731677 0.434318 0.834318 +0.726357 0.454394 0.828252 +0.720747 0.474498 0.821855 +0.714840 0.494626 0.815119 +0.708628 0.514775 0.808036 +0.702105 0.534942 0.800597 +0.695262 0.555120 0.792794 +0.688091 0.575305 0.784617 +0.680584 0.595490 0.776058 +0.672734 0.615668 0.767106 +0.664531 0.635830 0.757752 +0.655967 0.655967 0.747987 +0.635830 0.664531 0.757752 +0.615668 0.672734 0.767106 +0.595490 0.680584 0.776058 +0.575305 0.688091 0.784617 +0.555120 0.695262 0.792794 +0.534942 0.702105 0.800597 +0.514775 0.708628 0.808036 +0.494626 0.714840 0.815119 +0.474498 0.720747 0.821855 +0.454394 0.726357 0.828252 +0.434318 0.731677 0.834318 +0.414272 0.736713 0.840061 +0.394257 0.741473 0.845487 +0.374275 0.745961 0.850605 +0.354327 0.750184 0.855421 +0.334413 0.754148 0.859941 +0.314532 0.757857 0.864171 +0.294686 0.761317 0.868116 +0.274872 0.764533 0.871782 +0.255090 0.767508 0.875175 +0.235339 0.770246 0.878297 +0.215617 0.772752 0.881155 +0.195923 0.775028 0.883750 +0.176254 0.777079 0.886088 +0.156609 0.778906 0.888172 +0.136985 0.780512 0.890003 +0.117379 0.781899 0.891585 +0.097791 0.783070 0.892921 +0.078216 0.784026 0.894010 +0.058652 0.784768 0.894857 +0.039097 0.785297 0.895460 +0.019547 0.785615 0.895822 +0.000000 0.785720 0.895942 +0.805078 0.000000 0.878589 +0.804974 0.019168 0.878475 +0.804662 0.038340 0.878134 +0.804140 0.057519 0.877565 +0.803409 0.076707 0.876767 +0.802467 0.095909 0.875739 +0.801312 0.115127 0.874479 +0.799944 0.134365 0.872986 +0.798360 0.153626 0.871257 +0.796558 0.172913 0.869291 +0.794535 0.192228 0.867083 +0.792288 0.211574 0.864631 +0.789814 0.230954 0.861930 +0.787109 0.250369 0.858979 +0.784169 0.269823 0.855771 +0.780991 0.289317 0.852302 +0.777569 0.308853 0.848567 +0.773898 0.328432 0.844561 +0.769973 0.348055 0.840279 +0.765790 0.367722 0.835713 +0.761341 0.387435 0.830857 +0.756620 0.407193 0.825706 +0.751621 0.426995 0.820250 +0.746337 0.446841 0.814484 +0.740760 0.466729 0.808398 +0.734884 0.486657 0.801985 +0.728700 0.506621 0.795236 +0.722200 0.526620 0.788143 +0.715375 0.546648 0.780695 +0.708217 0.566701 0.772883 +0.700717 0.586773 0.764698 +0.692865 0.606858 0.756129 +0.684652 0.626947 0.747167 +0.676069 0.647033 0.737800 +0.667105 0.667105 0.728018 +0.647033 0.676069 0.737800 +0.626947 0.684652 0.747167 +0.606858 0.692865 0.756129 +0.586773 0.700717 0.764698 +0.566701 0.708217 0.772883 +0.546648 0.715375 0.780695 +0.526620 0.722200 0.788143 +0.506621 0.728700 0.795236 +0.486657 0.734884 0.801985 +0.466729 0.740760 0.808398 +0.446841 0.746337 0.814484 +0.426995 0.751621 0.820250 +0.407193 0.756620 0.825706 +0.387435 0.761341 0.830857 +0.367722 0.765790 0.835713 +0.348055 0.769973 0.840279 +0.328432 0.773898 0.844561 +0.308853 0.777569 0.848567 +0.289317 0.780991 0.852302 +0.269823 0.784169 0.855771 +0.250369 0.787109 0.858979 +0.230954 0.789814 0.861930 +0.211574 0.792288 0.864631 +0.192228 0.794535 0.867083 +0.172913 0.796558 0.869291 +0.153626 0.798360 0.871257 +0.134365 0.799944 0.872986 +0.115127 0.801312 0.874479 +0.095909 0.802467 0.875739 +0.076707 0.803409 0.876767 +0.057519 0.804140 0.877565 +0.038340 0.804662 0.878134 +0.019168 0.804974 0.878475 +0.000000 0.805078 0.878589 +0.824053 0.000000 0.860817 +0.823951 0.018781 0.860710 +0.823644 0.037565 0.860389 +0.823131 0.056358 0.859854 +0.822412 0.075162 0.859103 +0.821486 0.093981 0.858136 +0.820352 0.112820 0.856951 +0.819007 0.131681 0.855545 +0.817449 0.150569 0.853918 +0.815676 0.169486 0.852066 +0.813685 0.188437 0.849987 +0.811473 0.207425 0.847676 +0.809037 0.226452 0.845132 +0.806373 0.245522 0.842348 +0.803476 0.264637 0.839322 +0.800343 0.283800 0.836049 +0.796968 0.303014 0.832523 +0.793345 0.322279 0.828739 +0.789470 0.341598 0.824692 +0.785337 0.360973 0.820374 +0.780939 0.380404 0.815780 +0.776269 0.399892 0.810902 +0.771321 0.419438 0.805733 +0.766087 0.439040 0.800265 +0.760559 0.458699 0.794490 +0.754729 0.478413 0.788400 +0.748588 0.498180 0.781986 +0.742129 0.517997 0.775238 +0.735340 0.537862 0.768146 +0.728214 0.557770 0.760702 +0.720739 0.577716 0.752894 +0.712906 0.597694 0.744712 +0.704705 0.617699 0.736144 +0.696124 0.637721 0.727181 +0.687154 0.657752 0.717810 +0.677782 0.677782 0.708020 +0.657752 0.687154 0.717810 +0.637721 0.696124 0.727181 +0.617699 0.704705 0.736144 +0.597694 0.712906 0.744712 +0.577716 0.720739 0.752894 +0.557770 0.728214 0.760702 +0.537862 0.735340 0.768146 +0.517997 0.742129 0.775238 +0.498180 0.748588 0.781986 +0.478413 0.754729 0.788400 +0.458699 0.760559 0.794490 +0.439040 0.766087 0.800265 +0.419438 0.771321 0.805733 +0.399892 0.776269 0.810902 +0.380404 0.780939 0.815780 +0.360973 0.785337 0.820374 +0.341598 0.789470 0.824692 +0.322279 0.793345 0.828739 +0.303014 0.796968 0.832523 +0.283800 0.800343 0.836049 +0.264637 0.803476 0.839322 +0.245522 0.806373 0.842348 +0.226452 0.809037 0.845132 +0.207425 0.811473 0.847676 +0.188437 0.813685 0.849987 +0.169486 0.815676 0.852066 +0.150569 0.817449 0.853918 +0.131681 0.819007 0.855545 +0.112820 0.820352 0.856951 +0.093981 0.821486 0.858136 +0.075162 0.822412 0.859103 +0.056358 0.823131 0.859854 +0.037565 0.823644 0.860389 +0.018781 0.823951 0.860710 +0.000000 0.824053 0.860817 +0.842636 0.000000 0.842636 +0.842535 0.018384 0.842535 +0.842234 0.036773 0.842234 +0.841732 0.055170 0.841732 +0.841028 0.073580 0.841028 +0.840120 0.092008 0.840120 +0.839008 0.110457 0.839008 +0.837689 0.128933 0.837689 +0.836161 0.147438 0.836161 +0.834422 0.165977 0.834422 +0.832469 0.184554 0.832469 +0.830298 0.203173 0.830298 +0.827906 0.221837 0.827906 +0.825289 0.240550 0.825289 +0.822443 0.259315 0.822443 +0.819362 0.278136 0.819362 +0.816043 0.297015 0.816043 +0.812478 0.315955 0.812478 +0.808663 0.334959 0.808663 +0.804591 0.354029 0.804591 +0.800255 0.373165 0.800255 +0.795649 0.392371 0.795649 +0.790765 0.411646 0.790765 +0.785594 0.430992 0.785594 +0.780129 0.450408 0.780129 +0.774361 0.469894 0.774361 +0.768280 0.489449 0.768280 +0.761878 0.509071 0.761878 +0.755144 0.528758 0.755144 +0.748068 0.548506 0.748068 +0.740639 0.568312 0.740639 +0.732845 0.588171 0.732845 +0.724677 0.608076 0.724677 +0.716121 0.628021 0.716121 +0.707166 0.647998 0.707166 +0.697800 0.667998 0.697800 +0.688009 0.688009 0.688009 +0.667998 0.697800 0.697800 +0.647998 0.707166 0.707166 +0.628021 0.716121 0.716121 +0.608076 0.724677 0.724677 +0.588171 0.732845 0.732845 +0.568312 0.740639 0.740639 +0.548506 0.748068 0.748068 +0.528758 0.755144 0.755144 +0.509071 0.761878 0.761878 +0.489449 0.768280 0.768280 +0.469894 0.774361 0.774361 +0.450408 0.780129 0.780129 +0.430992 0.785594 0.785594 +0.411646 0.790765 0.790765 +0.392371 0.795649 0.795649 +0.373165 0.800255 0.800255 +0.354029 0.804591 0.804591 +0.334959 0.808663 0.808663 +0.315955 0.812478 0.812478 +0.297015 0.816043 0.816043 +0.278136 0.819362 0.819362 +0.259315 0.822443 0.822443 +0.240550 0.825289 0.825289 +0.221837 0.827906 0.827906 +0.203173 0.830298 0.830298 +0.184554 0.832469 0.832469 +0.165977 0.834422 0.834422 +0.147438 0.836161 0.836161 +0.128933 0.837689 0.837689 +0.110457 0.839008 0.839008 +0.092008 0.840120 0.840120 +0.073580 0.841028 0.841028 +0.055170 0.841732 0.841732 +0.036773 0.842234 0.842234 +0.018384 0.842535 0.842535 +0.000000 0.842636 0.842636 +0.860817 0.000000 0.824053 +0.860710 0.018781 0.823951 +0.860389 0.037565 0.823644 +0.859854 0.056358 0.823131 +0.859103 0.075162 0.822412 +0.858136 0.093981 0.821486 +0.856951 0.112820 0.820352 +0.855545 0.131681 0.819007 +0.853918 0.150569 0.817449 +0.852066 0.169486 0.815676 +0.849987 0.188437 0.813685 +0.847676 0.207425 0.811473 +0.845132 0.226452 0.809037 +0.842348 0.245522 0.806373 +0.839322 0.264637 0.803476 +0.836049 0.283800 0.800343 +0.832523 0.303014 0.796968 +0.828739 0.322279 0.793345 +0.824692 0.341598 0.789470 +0.820374 0.360973 0.785337 +0.815780 0.380404 0.780939 +0.810902 0.399892 0.776269 +0.805733 0.419438 0.771321 +0.800265 0.439040 0.766087 +0.794490 0.458699 0.760559 +0.788400 0.478413 0.754729 +0.781986 0.498180 0.748588 +0.775238 0.517997 0.742129 +0.768146 0.537862 0.735340 +0.760702 0.557770 0.728214 +0.752894 0.577716 0.720739 +0.744712 0.597694 0.712906 +0.736144 0.617699 0.704705 +0.727181 0.637721 0.696124 +0.717810 0.657752 0.687154 +0.708020 0.677782 0.677782 +0.697800 0.697800 0.667998 +0.677782 0.708020 0.677782 +0.657752 0.717810 0.687154 +0.637721 0.727181 0.696124 +0.617699 0.736144 0.704705 +0.597694 0.744712 0.712906 +0.577716 0.752894 0.720739 +0.557770 0.760702 0.728214 +0.537862 0.768146 0.735340 +0.517997 0.775238 0.742129 +0.498180 0.781986 0.748588 +0.478413 0.788400 0.754729 +0.458699 0.794490 0.760559 +0.439040 0.800265 0.766087 +0.419438 0.805733 0.771321 +0.399892 0.810902 0.776269 +0.380404 0.815780 0.780939 +0.360973 0.820374 0.785337 +0.341598 0.824692 0.789470 +0.322279 0.828739 0.793345 +0.303014 0.832523 0.796968 +0.283800 0.836049 0.800343 +0.264637 0.839322 0.803476 +0.245522 0.842348 0.806373 +0.226452 0.845132 0.809037 +0.207425 0.847676 0.811473 +0.188437 0.849987 0.813685 +0.169486 0.852066 0.815676 +0.150569 0.853918 0.817449 +0.131681 0.855545 0.819007 +0.112820 0.856951 0.820352 +0.093981 0.858136 0.821486 +0.075162 0.859103 0.822412 +0.056358 0.859854 0.823131 +0.037565 0.860389 0.823644 +0.018781 0.860710 0.823951 +0.000000 0.860817 0.824053 +0.878589 0.000000 0.805078 +0.878475 0.019168 0.804974 +0.878134 0.038340 0.804662 +0.877565 0.057519 0.804140 +0.876767 0.076707 0.803409 +0.875739 0.095909 0.802467 +0.874479 0.115127 0.801312 +0.872986 0.134365 0.799944 +0.871257 0.153626 0.798360 +0.869291 0.172913 0.796558 +0.867083 0.192228 0.794535 +0.864631 0.211574 0.792288 +0.861930 0.230954 0.789814 +0.858979 0.250369 0.787109 +0.855771 0.269823 0.784169 +0.852302 0.289317 0.780991 +0.848567 0.308853 0.777569 +0.844561 0.328432 0.773898 +0.840279 0.348055 0.769973 +0.835713 0.367722 0.765790 +0.830857 0.387435 0.761341 +0.825706 0.407193 0.756620 +0.820250 0.426995 0.751621 +0.814484 0.446841 0.746337 +0.808398 0.466729 0.740760 +0.801985 0.486657 0.734884 +0.795236 0.506621 0.728700 +0.788143 0.526620 0.722200 +0.780695 0.546648 0.715375 +0.772883 0.566701 0.708217 +0.764698 0.586773 0.700717 +0.756129 0.606858 0.692865 +0.747167 0.626947 0.684652 +0.737800 0.647033 0.676069 +0.728018 0.667105 0.667105 +0.717810 0.687154 0.657752 +0.707166 0.707166 0.647998 +0.687154 0.717810 0.657752 +0.667105 0.728018 0.667105 +0.647033 0.737800 0.676069 +0.626947 0.747167 0.684652 +0.606858 0.756129 0.692865 +0.586773 0.764698 0.700717 +0.566701 0.772883 0.708217 +0.546648 0.780695 0.715375 +0.526620 0.788143 0.722200 +0.506621 0.795236 0.728700 +0.486657 0.801985 0.734884 +0.466729 0.808398 0.740760 +0.446841 0.814484 0.746337 +0.426995 0.820250 0.751621 +0.407193 0.825706 0.756620 +0.387435 0.830857 0.761341 +0.367722 0.835713 0.765790 +0.348055 0.840279 0.769973 +0.328432 0.844561 0.773898 +0.308853 0.848567 0.777569 +0.289317 0.852302 0.780991 +0.269823 0.855771 0.784169 +0.250369 0.858979 0.787109 +0.230954 0.861930 0.789814 +0.211574 0.864631 0.792288 +0.192228 0.867083 0.794535 +0.172913 0.869291 0.796558 +0.153626 0.871257 0.798360 +0.134365 0.872986 0.799944 +0.115127 0.874479 0.801312 +0.095909 0.875739 0.802467 +0.076707 0.876767 0.803409 +0.057519 0.877565 0.804140 +0.038340 0.878134 0.804662 +0.019168 0.878475 0.804974 +0.000000 0.878589 0.805078 +0.895942 0.000000 0.785720 +0.895822 0.019547 0.785615 +0.895460 0.039097 0.785297 +0.894857 0.058652 0.784768 +0.894010 0.078216 0.784026 +0.892921 0.097791 0.783070 +0.891585 0.117379 0.781899 +0.890003 0.136985 0.780512 +0.888172 0.156609 0.778906 +0.886088 0.176254 0.777079 +0.883750 0.195923 0.775028 +0.881155 0.215617 0.772752 +0.878297 0.235339 0.770246 +0.875175 0.255090 0.767508 +0.871782 0.274872 0.764533 +0.868116 0.294686 0.761317 +0.864171 0.314532 0.757857 +0.859941 0.334413 0.754148 +0.855421 0.354327 0.750184 +0.850605 0.374275 0.745961 +0.845487 0.394257 0.741473 +0.840061 0.414272 0.736713 +0.834318 0.434318 0.731677 +0.828252 0.454394 0.726357 +0.821855 0.474498 0.720747 +0.815119 0.494626 0.714840 +0.808036 0.514775 0.708628 +0.800597 0.534942 0.702105 +0.792794 0.555120 0.695262 +0.784617 0.575305 0.688091 +0.776058 0.595490 0.680584 +0.767106 0.615668 0.672734 +0.757752 0.635830 0.664531 +0.747987 0.655967 0.655967 +0.737800 0.676069 0.647033 +0.727181 0.696124 0.637721 +0.716121 0.716121 0.628021 +0.696124 0.727181 0.637721 +0.676069 0.737800 0.647033 +0.655967 0.747987 0.655967 +0.635830 0.757752 0.664531 +0.615668 0.767106 0.672734 +0.595490 0.776058 0.680584 +0.575305 0.784617 0.688091 +0.555120 0.792794 0.695262 +0.534942 0.800597 0.702105 +0.514775 0.808036 0.708628 +0.494626 0.815119 0.714840 +0.474498 0.821855 0.720747 +0.454394 0.828252 0.726357 +0.434318 0.834318 0.731677 +0.414272 0.840061 0.736713 +0.394257 0.845487 0.741473 +0.374275 0.850605 0.745961 +0.354327 0.855421 0.750184 +0.334413 0.859941 0.754148 +0.314532 0.864171 0.757857 +0.294686 0.868116 0.761317 +0.274872 0.871782 0.764533 +0.255090 0.875175 0.767508 +0.235339 0.878297 0.770246 +0.215617 0.881155 0.772752 +0.195923 0.883750 0.775028 +0.176254 0.886088 0.777079 +0.156609 0.888172 0.778906 +0.136985 0.890003 0.780512 +0.117379 0.891585 0.781899 +0.097791 0.892921 0.783070 +0.078216 0.894010 0.784026 +0.058652 0.894857 0.784768 +0.039097 0.895460 0.785297 +0.019547 0.895822 0.785615 +0.000000 0.895942 0.785720 +0.912870 0.000000 0.765989 +0.912742 0.019916 0.765882 +0.912359 0.039834 0.765560 +0.911721 0.059757 0.765025 +0.910826 0.079687 0.764274 +0.909674 0.099625 0.763307 +0.908262 0.119575 0.762123 +0.906590 0.139538 0.760719 +0.904654 0.159515 0.759095 +0.902453 0.179509 0.757248 +0.899983 0.199522 0.755176 +0.897242 0.219554 0.752876 +0.894226 0.239607 0.750345 +0.890931 0.259683 0.747580 +0.887353 0.279781 0.744578 +0.883488 0.299904 0.741334 +0.879330 0.320050 0.737846 +0.874875 0.340220 0.734107 +0.870117 0.360414 0.730115 +0.865050 0.380631 0.725863 +0.859669 0.400870 0.721348 +0.853966 0.421129 0.716562 +0.847935 0.441407 0.711502 +0.841569 0.461701 0.706161 +0.834861 0.482007 0.700532 +0.827803 0.502323 0.694609 +0.820388 0.522644 0.688387 +0.812606 0.542966 0.681857 +0.804450 0.563282 0.675014 +0.795911 0.583586 0.667849 +0.786981 0.603872 0.660355 +0.777650 0.624130 0.652526 +0.767911 0.644353 0.644353 +0.757752 0.664531 0.635830 +0.747167 0.684652 0.626947 +0.736144 0.704705 0.617699 +0.724677 0.724677 0.608076 +0.704705 0.736144 0.617699 +0.684652 0.747167 0.626947 +0.664531 0.757752 0.635830 +0.644353 0.767911 0.644353 +0.624130 0.777650 0.652526 +0.603872 0.786981 0.660355 +0.583586 0.795911 0.667849 +0.563282 0.804450 0.675014 +0.542966 0.812606 0.681857 +0.522644 0.820388 0.688387 +0.502323 0.827803 0.694609 +0.482007 0.834861 0.700532 +0.461701 0.841569 0.706161 +0.441407 0.847935 0.711502 +0.421129 0.853966 0.716562 +0.400870 0.859669 0.721348 +0.380631 0.865050 0.725863 +0.360414 0.870117 0.730115 +0.340220 0.874875 0.734107 +0.320050 0.879330 0.737846 +0.299904 0.883488 0.741334 +0.279781 0.887353 0.744578 +0.259683 0.890931 0.747580 +0.239607 0.894226 0.750345 +0.219554 0.897242 0.752876 +0.199522 0.899983 0.755176 +0.179509 0.902453 0.757248 +0.159515 0.904654 0.759095 +0.139538 0.906590 0.760719 +0.119575 0.908262 0.762123 +0.099625 0.909674 0.763307 +0.079687 0.910826 0.764274 +0.059757 0.911721 0.765025 +0.039834 0.912359 0.765560 +0.019916 0.912742 0.765882 +0.000000 0.912870 0.765989 +0.929362 0.000000 0.745892 +0.929228 0.020276 0.745784 +0.928824 0.040553 0.745460 +0.928151 0.060834 0.744920 +0.927207 0.081120 0.744162 +0.925991 0.101412 0.743186 +0.924502 0.121713 0.741991 +0.922738 0.142023 0.740576 +0.920698 0.162344 0.738938 +0.918378 0.182677 0.737076 +0.915775 0.203023 0.734988 +0.912888 0.223382 0.732670 +0.909712 0.243757 0.730121 +0.906243 0.264146 0.727337 +0.902479 0.284550 0.724316 +0.898413 0.304970 0.721053 +0.894042 0.325405 0.717545 +0.889361 0.345853 0.713787 +0.884364 0.366315 0.709777 +0.879046 0.386789 0.705509 +0.873400 0.407273 0.700978 +0.867422 0.427765 0.696180 +0.861104 0.448262 0.691109 +0.854439 0.468761 0.685760 +0.847421 0.489259 0.680127 +0.840042 0.509750 0.674205 +0.832296 0.530231 0.667988 +0.824174 0.550695 0.661469 +0.815668 0.571137 0.654643 +0.806771 0.591549 0.647502 +0.797475 0.611924 0.640041 +0.787771 0.632253 0.632253 +0.777650 0.652526 0.624130 +0.767106 0.672734 0.615668 +0.756129 0.692865 0.606858 +0.744712 0.712906 0.597694 +0.732845 0.732845 0.588171 +0.712906 0.744712 0.597694 +0.692865 0.756129 0.606858 +0.672734 0.767106 0.615668 +0.652526 0.777650 0.624130 +0.632253 0.787771 0.632253 +0.611924 0.797475 0.640041 +0.591549 0.806771 0.647502 +0.571137 0.815668 0.654643 +0.550695 0.824174 0.661469 +0.530231 0.832296 0.667988 +0.509750 0.840042 0.674205 +0.489259 0.847421 0.680127 +0.468761 0.854439 0.685760 +0.448262 0.861104 0.691109 +0.427765 0.867422 0.696180 +0.407273 0.873400 0.700978 +0.386789 0.879046 0.705509 +0.366315 0.884364 0.709777 +0.345853 0.889361 0.713787 +0.325405 0.894042 0.717545 +0.304970 0.898413 0.721053 +0.284550 0.902479 0.724316 +0.264146 0.906243 0.727337 +0.243757 0.909712 0.730121 +0.223382 0.912888 0.732670 +0.203023 0.915775 0.734988 +0.182677 0.918378 0.737076 +0.162344 0.920698 0.738938 +0.142023 0.922738 0.740576 +0.121713 0.924502 0.741991 +0.101412 0.925991 0.743186 +0.081120 0.927207 0.744162 +0.060834 0.928151 0.744920 +0.040553 0.928824 0.745460 +0.020276 0.929228 0.745784 +0.000000 0.929362 0.745892 +0.945413 0.000000 0.725441 +0.945271 0.020626 0.725332 +0.944846 0.041253 0.725006 +0.944137 0.061882 0.724462 +0.943144 0.082514 0.723700 +0.941864 0.103151 0.722718 +0.940298 0.123793 0.721516 +0.938442 0.144440 0.720092 +0.936296 0.165094 0.718445 +0.933856 0.185756 0.716573 +0.931121 0.206424 0.714474 +0.928086 0.227101 0.712145 +0.924749 0.247786 0.709585 +0.921106 0.268478 0.706790 +0.917154 0.289178 0.703757 +0.912888 0.309884 0.700484 +0.908303 0.330595 0.696966 +0.903396 0.351311 0.693200 +0.898160 0.372030 0.689182 +0.892590 0.392749 0.684909 +0.886682 0.413467 0.680375 +0.880428 0.434179 0.675576 +0.873824 0.454884 0.670509 +0.866862 0.475577 0.665167 +0.859536 0.496253 0.659545 +0.851839 0.516909 0.653639 +0.843765 0.537538 0.647444 +0.835306 0.558134 0.640953 +0.826455 0.578690 0.634161 +0.817204 0.599199 0.627063 +0.807547 0.619652 0.619652 +0.797475 0.640041 0.611924 +0.786981 0.660355 0.603872 +0.776058 0.680584 0.595490 +0.764698 0.700717 0.586773 +0.752894 0.720739 0.577716 +0.740639 0.740639 0.568312 +0.720739 0.752894 0.577716 +0.700717 0.764698 0.586773 +0.680584 0.776058 0.595490 +0.660355 0.786981 0.603872 +0.640041 0.797475 0.611924 +0.619652 0.807547 0.619652 +0.599199 0.817204 0.627063 +0.578690 0.826455 0.634161 +0.558134 0.835306 0.640953 +0.537538 0.843765 0.647444 +0.516909 0.851839 0.653639 +0.496253 0.859536 0.659545 +0.475577 0.866862 0.665167 +0.454884 0.873824 0.670509 +0.434179 0.880428 0.675576 +0.413467 0.886682 0.680375 +0.392749 0.892590 0.684909 +0.372030 0.898160 0.689182 +0.351311 0.903396 0.693200 +0.330595 0.908303 0.696966 +0.309884 0.912888 0.700484 +0.289178 0.917154 0.703757 +0.268478 0.921106 0.706790 +0.247786 0.924749 0.709585 +0.227101 0.928086 0.712145 +0.206424 0.931121 0.714474 +0.185756 0.933856 0.716573 +0.165094 0.936296 0.718445 +0.144440 0.938442 0.720092 +0.123793 0.940298 0.721516 +0.103151 0.941864 0.722718 +0.082514 0.943144 0.723700 +0.061882 0.944137 0.724462 +0.041253 0.944846 0.725006 +0.020626 0.945271 0.725332 +0.000000 0.945413 0.725441 +0.961013 0.000000 0.704644 +0.960864 0.020966 0.704535 +0.960418 0.041933 0.704208 +0.959673 0.062900 0.703662 +0.958630 0.083869 0.702897 +0.957287 0.104840 0.701912 +0.955642 0.125813 0.700706 +0.953695 0.146788 0.699278 +0.951442 0.167765 0.697626 +0.948882 0.188744 0.695749 +0.946013 0.209726 0.693645 +0.942831 0.230709 0.691312 +0.939333 0.251694 0.688748 +0.935516 0.272678 0.685949 +0.931376 0.293662 0.682913 +0.926909 0.314643 0.679638 +0.922111 0.335621 0.676120 +0.916978 0.356593 0.672356 +0.911504 0.377557 0.668342 +0.905684 0.398510 0.664075 +0.899513 0.419450 0.659550 +0.892986 0.440372 0.654765 +0.886098 0.461273 0.649714 +0.878841 0.482148 0.644393 +0.871209 0.502993 0.638797 +0.863198 0.523801 0.632923 +0.854799 0.544567 0.626765 +0.846007 0.565284 0.620318 +0.836815 0.585944 0.613578 +0.827217 0.606540 0.606540 +0.817204 0.627063 0.599199 +0.806771 0.647502 0.591549 +0.795911 0.667849 0.583586 +0.784617 0.688091 0.575305 +0.772883 0.708217 0.566701 +0.760702 0.728214 0.557770 +0.748068 0.748068 0.548506 +0.728214 0.760702 0.557770 +0.708217 0.772883 0.566701 +0.688091 0.784617 0.575305 +0.667849 0.795911 0.583586 +0.647502 0.806771 0.591549 +0.627063 0.817204 0.599199 +0.606540 0.827217 0.606540 +0.585944 0.836815 0.613578 +0.565284 0.846007 0.620318 +0.544567 0.854799 0.626765 +0.523801 0.863198 0.632923 +0.502993 0.871209 0.638797 +0.482148 0.878841 0.644393 +0.461273 0.886098 0.649714 +0.440372 0.892986 0.654765 +0.419450 0.899513 0.659550 +0.398510 0.905684 0.664075 +0.377557 0.911504 0.668342 +0.356593 0.916978 0.672356 +0.335621 0.922111 0.676120 +0.314643 0.926909 0.679638 +0.293662 0.931376 0.682913 +0.272678 0.935516 0.685949 +0.251694 0.939333 0.688748 +0.230709 0.942831 0.691312 +0.209726 0.946013 0.693645 +0.188744 0.948882 0.695749 +0.167765 0.951442 0.697626 +0.146788 0.953695 0.699278 +0.125813 0.955642 0.700706 +0.104840 0.957287 0.701912 +0.083869 0.958630 0.702897 +0.062900 0.959673 0.703662 +0.041933 0.960418 0.704208 +0.020966 0.960864 0.704535 +0.000000 0.961013 0.704644 +0.976156 0.000000 0.683512 +0.976000 0.021296 0.683403 +0.975532 0.042593 0.683075 +0.974752 0.063889 0.682529 +0.973659 0.085184 0.681763 +0.972252 0.106479 0.680778 +0.970529 0.127773 0.679572 +0.968489 0.149065 0.678143 +0.966130 0.170355 0.676492 +0.963451 0.191642 0.674615 +0.960447 0.212926 0.672512 +0.957118 0.234205 0.670181 +0.953459 0.255479 0.667619 +0.949468 0.276745 0.664825 +0.945141 0.298002 0.661795 +0.940474 0.319248 0.658527 +0.935464 0.340481 0.655019 +0.930105 0.361698 0.651267 +0.924394 0.382897 0.647268 +0.918326 0.404073 0.643018 +0.911895 0.425224 0.638516 +0.905097 0.446344 0.633756 +0.897926 0.467431 0.628734 +0.890377 0.488477 0.623449 +0.882444 0.509479 0.617894 +0.874121 0.530430 0.612066 +0.865403 0.551323 0.605962 +0.856284 0.572150 0.599576 +0.846756 0.592905 0.592905 +0.836815 0.613578 0.585944 +0.826455 0.634161 0.578690 +0.815668 0.654643 0.571137 +0.804450 0.675014 0.563282 +0.792794 0.695262 0.555120 +0.780695 0.715375 0.546648 +0.768146 0.735340 0.537862 +0.755144 0.755144 0.528758 +0.735340 0.768146 0.537862 +0.715375 0.780695 0.546648 +0.695262 0.792794 0.555120 +0.675014 0.804450 0.563282 +0.654643 0.815668 0.571137 +0.634161 0.826455 0.578690 +0.613578 0.836815 0.585944 +0.592905 0.846756 0.592905 +0.572150 0.856284 0.599576 +0.551323 0.865403 0.605962 +0.530430 0.874121 0.612066 +0.509479 0.882444 0.617894 +0.488477 0.890377 0.623449 +0.467431 0.897926 0.628734 +0.446344 0.905097 0.633756 +0.425224 0.911895 0.638516 +0.404073 0.918326 0.643018 +0.382897 0.924394 0.647268 +0.361698 0.930105 0.651267 +0.340481 0.935464 0.655019 +0.319248 0.940474 0.658527 +0.298002 0.945141 0.661795 +0.276745 0.949468 0.664825 +0.255479 0.953459 0.667619 +0.234205 0.957118 0.670181 +0.212926 0.960447 0.672512 +0.191642 0.963451 0.674615 +0.170355 0.966130 0.676492 +0.149065 0.968489 0.678143 +0.127773 0.970529 0.679572 +0.106479 0.972252 0.680778 +0.085184 0.973659 0.681763 +0.063889 0.974752 0.682529 +0.042593 0.975532 0.683075 +0.021296 0.976000 0.683403 +0.000000 0.976156 0.683512 +0.990835 0.000000 0.662055 +0.990672 0.021617 0.661946 +0.990182 0.043232 0.661619 +0.989367 0.064847 0.661074 +0.988223 0.086458 0.660310 +0.986752 0.108067 0.659327 +0.984951 0.129671 0.658123 +0.982819 0.151270 0.656699 +0.980354 0.172863 0.655052 +0.977555 0.194448 0.653181 +0.974418 0.216023 0.651085 +0.970942 0.237588 0.648763 +0.967123 0.259140 0.646211 +0.962959 0.280677 0.643429 +0.958446 0.302197 0.640413 +0.953580 0.323697 0.637162 +0.948358 0.345174 0.633673 +0.942776 0.366626 0.629943 +0.936830 0.388048 0.625970 +0.930515 0.409436 0.621750 +0.923827 0.430787 0.617281 +0.916760 0.452096 0.612560 +0.909311 0.473357 0.607582 +0.901474 0.494565 0.602345 +0.893243 0.515714 0.596846 +0.884614 0.536797 0.591080 +0.875582 0.557807 0.585045 +0.866140 0.578736 0.578736 +0.856284 0.599576 0.572150 +0.846007 0.620318 0.565284 +0.835306 0.640953 0.558134 +0.824174 0.661469 0.550695 +0.812606 0.681857 0.542966 +0.800597 0.702105 0.534942 +0.788143 0.722200 0.526620 +0.775238 0.742129 0.517997 +0.761878 0.761878 0.509071 +0.742129 0.775238 0.517997 +0.722200 0.788143 0.526620 +0.702105 0.800597 0.534942 +0.681857 0.812606 0.542966 +0.661469 0.824174 0.550695 +0.640953 0.835306 0.558134 +0.620318 0.846007 0.565284 +0.599576 0.856284 0.572150 +0.578736 0.866140 0.578736 +0.557807 0.875582 0.585045 +0.536797 0.884614 0.591080 +0.515714 0.893243 0.596846 +0.494565 0.901474 0.602345 +0.473357 0.909311 0.607582 +0.452096 0.916760 0.612560 +0.430787 0.923827 0.617281 +0.409436 0.930515 0.621750 +0.388048 0.936830 0.625970 +0.366626 0.942776 0.629943 +0.345174 0.948358 0.633673 +0.323697 0.953580 0.637162 +0.302197 0.958446 0.640413 +0.280677 0.962959 0.643429 +0.259140 0.967123 0.646211 +0.237588 0.970942 0.648763 +0.216023 0.974418 0.651085 +0.194448 0.977555 0.653181 +0.172863 0.980354 0.655052 +0.151270 0.982819 0.656699 +0.129671 0.984951 0.658123 +0.108067 0.986752 0.659327 +0.086458 0.988223 0.660310 +0.064847 0.989367 0.661074 +0.043232 0.990182 0.661619 +0.021617 0.990672 0.661946 +0.000000 0.990835 0.662055 +1.005041 0.000000 0.640282 +1.004871 0.021926 0.640174 +1.004361 0.043851 0.639848 +1.003509 0.065773 0.639306 +1.002317 0.087691 0.638546 +1.000781 0.109603 0.637568 +0.998903 0.131508 0.636371 +0.996679 0.153404 0.634955 +0.994109 0.175288 0.633317 +0.991190 0.197160 0.631458 +0.987921 0.219017 0.629375 +0.984299 0.240856 0.627067 +0.980321 0.262676 0.624533 +0.975984 0.284474 0.621771 +0.971286 0.306245 0.618778 +0.966224 0.327989 0.615552 +0.960793 0.349700 0.612092 +0.954990 0.371375 0.608395 +0.948811 0.393010 0.604459 +0.942252 0.414601 0.600281 +0.935309 0.436142 0.595858 +0.927978 0.457628 0.591187 +0.920254 0.479054 0.586267 +0.912133 0.500413 0.581093 +0.903610 0.521699 0.575663 +0.894680 0.542905 0.569974 +0.885339 0.564023 0.564023 +0.875582 0.585045 0.557807 +0.865403 0.605962 0.551323 +0.854799 0.626765 0.544567 +0.843765 0.647444 0.537538 +0.832296 0.667988 0.530231 +0.820388 0.688387 0.522644 +0.808036 0.708628 0.514775 +0.795236 0.728700 0.506621 +0.781986 0.748588 0.498180 +0.768280 0.768280 0.489449 +0.748588 0.781986 0.498180 +0.728700 0.795236 0.506621 +0.708628 0.808036 0.514775 +0.688387 0.820388 0.522644 +0.667988 0.832296 0.530231 +0.647444 0.843765 0.537538 +0.626765 0.854799 0.544567 +0.605962 0.865403 0.551323 +0.585045 0.875582 0.557807 +0.564023 0.885339 0.564023 +0.542905 0.894680 0.569974 +0.521699 0.903610 0.575663 +0.500413 0.912133 0.581093 +0.479054 0.920254 0.586267 +0.457628 0.927978 0.591187 +0.436142 0.935309 0.595858 +0.414601 0.942252 0.600281 +0.393010 0.948811 0.604459 +0.371375 0.954990 0.608395 +0.349700 0.960793 0.612092 +0.327989 0.966224 0.615552 +0.306245 0.971286 0.618778 +0.284474 0.975984 0.621771 +0.262676 0.980321 0.624533 +0.240856 0.984299 0.627067 +0.219017 0.987921 0.629375 +0.197160 0.991190 0.631458 +0.175288 0.994109 0.633317 +0.153404 0.996679 0.634955 +0.131508 0.998903 0.636371 +0.109603 1.000781 0.637568 +0.087691 1.002317 0.638546 +0.065773 1.003509 0.639306 +0.043851 1.004361 0.639848 +0.021926 1.004871 0.640174 +0.000000 1.005041 0.640282 +1.018770 0.000000 0.618205 +1.018593 0.022226 0.618097 +1.018061 0.044450 0.617775 +1.017174 0.066669 0.617237 +1.015932 0.088883 0.616483 +1.014334 0.111088 0.615513 +1.012378 0.133282 0.614326 +1.010063 0.155464 0.612921 +1.007388 0.177630 0.611298 +1.004352 0.199778 0.609456 +1.000951 0.221905 0.607392 +0.997184 0.244009 0.605106 +0.993048 0.266086 0.602596 +0.988542 0.288134 0.599862 +0.983661 0.310147 0.596900 +0.978403 0.332123 0.593710 +0.972765 0.354058 0.590288 +0.966744 0.375946 0.586635 +0.960336 0.397784 0.582746 +0.953537 0.419566 0.578620 +0.946343 0.441287 0.574255 +0.938752 0.462941 0.569649 +0.930758 0.484522 0.564798 +0.922358 0.506023 0.559701 +0.913548 0.527437 0.554355 +0.904324 0.548757 0.548757 +0.894680 0.569974 0.542905 +0.884614 0.591080 0.536797 +0.874121 0.612066 0.530430 +0.863198 0.632923 0.523801 +0.851839 0.653639 0.516909 +0.840042 0.674205 0.509750 +0.827803 0.694609 0.502323 +0.815119 0.714840 0.494626 +0.801985 0.734884 0.486657 +0.788400 0.754729 0.478413 +0.774361 0.774361 0.469894 +0.754729 0.788400 0.478413 +0.734884 0.801985 0.486657 +0.714840 0.815119 0.494626 +0.694609 0.827803 0.502323 +0.674205 0.840042 0.509750 +0.653639 0.851839 0.516909 +0.632923 0.863198 0.523801 +0.612066 0.874121 0.530430 +0.591080 0.884614 0.536797 +0.569974 0.894680 0.542905 +0.548757 0.904324 0.548757 +0.527437 0.913548 0.554355 +0.506023 0.922358 0.559701 +0.484522 0.930758 0.564798 +0.462941 0.938752 0.569649 +0.441287 0.946343 0.574255 +0.419566 0.953537 0.578620 +0.397784 0.960336 0.582746 +0.375946 0.966744 0.586635 +0.354058 0.972765 0.590288 +0.332123 0.978403 0.593710 +0.310147 0.983661 0.596900 +0.288134 0.988542 0.599862 +0.266086 0.993048 0.602596 +0.244009 0.997184 0.605106 +0.221905 1.000951 0.607392 +0.199778 1.004352 0.609456 +0.177630 1.007388 0.611298 +0.155464 1.010063 0.612921 +0.133282 1.012378 0.614326 +0.111088 1.014334 0.615513 +0.088883 1.015932 0.616483 +0.066669 1.017174 0.617237 +0.044450 1.018061 0.617775 +0.022226 1.018593 0.618097 +0.000000 1.018770 0.618205 +1.032014 0.000000 0.595833 +1.031829 0.022515 0.595727 +1.031277 0.045027 0.595408 +1.030355 0.067533 0.594876 +1.029064 0.090031 0.594130 +1.027403 0.112519 0.593171 +1.025371 0.134993 0.591998 +1.022966 0.157450 0.590610 +1.020188 0.179887 0.589006 +1.017034 0.202301 0.587185 +1.013503 0.224688 0.585146 +1.009593 0.247046 0.582889 +1.005302 0.269370 0.580411 +1.000627 0.291656 0.577712 +0.995566 0.313901 0.574790 +0.990116 0.336099 0.571644 +0.984275 0.358247 0.568271 +0.978038 0.380338 0.564671 +0.971404 0.402369 0.560841 +0.964369 0.424333 0.556779 +0.956930 0.446224 0.552484 +0.949083 0.468036 0.547953 +0.940825 0.489762 0.543186 +0.932152 0.511396 0.538178 +0.923061 0.532930 0.532930 +0.913548 0.554355 0.527437 +0.903610 0.575663 0.521699 +0.893243 0.596846 0.515714 +0.882444 0.617894 0.509479 +0.871209 0.638797 0.502993 +0.859536 0.659545 0.496253 +0.847421 0.680127 0.489259 +0.834861 0.700532 0.482007 +0.821855 0.720747 0.474498 +0.808398 0.740760 0.466729 +0.794490 0.760559 0.458699 +0.780129 0.780129 0.450408 +0.760559 0.794490 0.458699 +0.740760 0.808398 0.466729 +0.720747 0.821855 0.474498 +0.700532 0.834861 0.482007 +0.680127 0.847421 0.489259 +0.659545 0.859536 0.496253 +0.638797 0.871209 0.502993 +0.617894 0.882444 0.509479 +0.596846 0.893243 0.515714 +0.575663 0.903610 0.521699 +0.554355 0.913548 0.527437 +0.532930 0.923061 0.532930 +0.511396 0.932152 0.538178 +0.489762 0.940825 0.543186 +0.468036 0.949083 0.547953 +0.446224 0.956930 0.552484 +0.424333 0.964369 0.556779 +0.402369 0.971404 0.560841 +0.380338 0.978038 0.564671 +0.358247 0.984275 0.568271 +0.336099 0.990116 0.571644 +0.313901 0.995566 0.574790 +0.291656 1.000627 0.577712 +0.269370 1.005302 0.580411 +0.247046 1.009593 0.582889 +0.224688 1.013503 0.585146 +0.202301 1.017034 0.587185 +0.179887 1.020188 0.589006 +0.157450 1.022966 0.590610 +0.134993 1.025371 0.591998 +0.112519 1.027403 0.593171 +0.090031 1.029064 0.594130 +0.067533 1.030355 0.594876 +0.045027 1.031277 0.595408 +0.022515 1.031829 0.595727 +0.000000 1.032014 0.595833 +1.044766 0.000000 0.573178 +1.044575 0.022793 0.573073 +1.044001 0.045582 0.572759 +1.043045 0.068365 0.572234 +1.041706 0.091137 0.571500 +1.039983 0.113897 0.570554 +1.037875 0.136639 0.569398 +1.035382 0.159361 0.568030 +1.032501 0.182058 0.566450 +1.029233 0.204727 0.564656 +1.025574 0.227364 0.562649 +1.021523 0.249965 0.560427 +1.017078 0.272525 0.557988 +1.012238 0.295041 0.555333 +1.007000 0.317506 0.552459 +1.001361 0.339916 0.549365 +0.995319 0.362267 0.546051 +0.988872 0.384551 0.542514 +0.982017 0.406765 0.538753 +0.974751 0.428901 0.534766 +0.967070 0.450952 0.530553 +0.958973 0.472913 0.526111 +0.950457 0.494776 0.521438 +0.941517 0.516534 0.516534 +0.932152 0.538178 0.511396 +0.922358 0.559701 0.506023 +0.912133 0.581093 0.500413 +0.901474 0.602345 0.494565 +0.890377 0.623449 0.488477 +0.878841 0.644393 0.482148 +0.866862 0.665167 0.475577 +0.854439 0.685760 0.468761 +0.841569 0.706161 0.461701 +0.828252 0.726357 0.454394 +0.814484 0.746337 0.446841 +0.800265 0.766087 0.439040 +0.785594 0.785594 0.430992 +0.766087 0.800265 0.439040 +0.746337 0.814484 0.446841 +0.726357 0.828252 0.454394 +0.706161 0.841569 0.461701 +0.685760 0.854439 0.468761 +0.665167 0.866862 0.475577 +0.644393 0.878841 0.482148 +0.623449 0.890377 0.488477 +0.602345 0.901474 0.494565 +0.581093 0.912133 0.500413 +0.559701 0.922358 0.506023 +0.538178 0.932152 0.511396 +0.516534 0.941517 0.516534 +0.494776 0.950457 0.521438 +0.472913 0.958973 0.526111 +0.450952 0.967070 0.530553 +0.428901 0.974751 0.534766 +0.406765 0.982017 0.538753 +0.384551 0.988872 0.542514 +0.362267 0.995319 0.546051 +0.339916 1.001361 0.549365 +0.317506 1.007000 0.552459 +0.295041 1.012238 0.555333 +0.272525 1.017078 0.557988 +0.249965 1.021523 0.560427 +0.227364 1.025574 0.562649 +0.204727 1.029233 0.564656 +0.182058 1.032501 0.566450 +0.159361 1.035382 0.568030 +0.136639 1.037875 0.569398 +0.113897 1.039983 0.570554 +0.091137 1.041706 0.571500 +0.068365 1.043045 0.572234 +0.045582 1.044001 0.572759 +0.022793 1.044575 0.573073 +0.000000 1.044766 0.573178 +1.057021 0.000000 0.550250 +1.056823 0.023060 0.550147 +1.056229 0.046116 0.549838 +1.055239 0.069164 0.549323 +1.053853 0.092200 0.548601 +1.052069 0.115220 0.547672 +1.049887 0.138220 0.546537 +1.047306 0.161196 0.545193 +1.044325 0.184143 0.543641 +1.040943 0.207056 0.541881 +1.037158 0.229932 0.539910 +1.032969 0.252766 0.537730 +1.028374 0.275552 0.535338 +1.023372 0.298286 0.532734 +1.017960 0.320961 0.529916 +1.012136 0.343574 0.526885 +1.005898 0.366117 0.523638 +0.999245 0.388585 0.520174 +0.992173 0.410972 0.516493 +0.984681 0.433270 0.512592 +0.976765 0.455473 0.508472 +0.968424 0.477574 0.504130 +0.959656 0.499565 0.499565 +0.950457 0.521438 0.494776 +0.940825 0.543186 0.489762 +0.930758 0.564798 0.484522 +0.920254 0.586267 0.479054 +0.909311 0.607582 0.473357 +0.897926 0.628734 0.467431 +0.886098 0.649714 0.461273 +0.873824 0.670509 0.454884 +0.861104 0.691109 0.448262 +0.847935 0.711502 0.441407 +0.834318 0.731677 0.434318 +0.820250 0.751621 0.426995 +0.805733 0.771321 0.419438 +0.790765 0.790765 0.411646 +0.771321 0.805733 0.419438 +0.751621 0.820250 0.426995 +0.731677 0.834318 0.434318 +0.711502 0.847935 0.441407 +0.691109 0.861104 0.448262 +0.670509 0.873824 0.454884 +0.649714 0.886098 0.461273 +0.628734 0.897926 0.467431 +0.607582 0.909311 0.473357 +0.586267 0.920254 0.479054 +0.564798 0.930758 0.484522 +0.543186 0.940825 0.489762 +0.521438 0.950457 0.494776 +0.499565 0.959656 0.499565 +0.477574 0.968424 0.504130 +0.455473 0.976765 0.508472 +0.433270 0.984681 0.512592 +0.410972 0.992173 0.516493 +0.388585 0.999245 0.520174 +0.366117 1.005898 0.523638 +0.343574 1.012136 0.526885 +0.320961 1.017960 0.529916 +0.298286 1.023372 0.532734 +0.275552 1.028374 0.535338 +0.252766 1.032969 0.537730 +0.229932 1.037158 0.539910 +0.207056 1.040943 0.541881 +0.184143 1.044325 0.543641 +0.161196 1.047306 0.545193 +0.138220 1.049887 0.546537 +0.115220 1.052069 0.547672 +0.092200 1.053853 0.548601 +0.069164 1.055239 0.549323 +0.046116 1.056229 0.549838 +0.023060 1.056823 0.550147 +0.000000 1.057021 0.550250 +1.068773 0.000000 0.527061 +1.068569 0.023316 0.526960 +1.067955 0.046628 0.526657 +1.066932 0.069930 0.526152 +1.065498 0.093219 0.525446 +1.063655 0.116489 0.524536 +1.061400 0.139736 0.523425 +1.058734 0.162955 0.522110 +1.055654 0.186140 0.520591 +1.052161 0.209288 0.518869 +1.048253 0.232392 0.516941 +1.043929 0.255448 0.514809 +1.039187 0.278449 0.512470 +1.034026 0.301391 0.509925 +1.028444 0.324267 0.507172 +1.022439 0.347071 0.504211 +1.016010 0.369798 0.501041 +1.009156 0.392439 0.497660 +1.001873 0.414989 0.494069 +0.994160 0.437441 0.490266 +0.986016 0.459787 0.486249 +0.977438 0.482019 0.482019 +0.968424 0.504130 0.477574 +0.958973 0.526111 0.472913 +0.949083 0.547953 0.468036 +0.938752 0.569649 0.462941 +0.927978 0.591187 0.457628 +0.916760 0.612560 0.452096 +0.905097 0.633756 0.446344 +0.892986 0.654765 0.440372 +0.880428 0.675576 0.434179 +0.867422 0.696180 0.427765 +0.853966 0.716562 0.421129 +0.840061 0.736713 0.414272 +0.825706 0.756620 0.407193 +0.810902 0.776269 0.399892 +0.795649 0.795649 0.392371 +0.776269 0.810902 0.399892 +0.756620 0.825706 0.407193 +0.736713 0.840061 0.414272 +0.716562 0.853966 0.421129 +0.696180 0.867422 0.427765 +0.675576 0.880428 0.434179 +0.654765 0.892986 0.440372 +0.633756 0.905097 0.446344 +0.612560 0.916760 0.452096 +0.591187 0.927978 0.457628 +0.569649 0.938752 0.462941 +0.547953 0.949083 0.468036 +0.526111 0.958973 0.472913 +0.504130 0.968424 0.477574 +0.482019 0.977438 0.482019 +0.459787 0.986016 0.486249 +0.437441 0.994160 0.490266 +0.414989 1.001873 0.494069 +0.392439 1.009156 0.497660 +0.369798 1.016010 0.501041 +0.347071 1.022439 0.504211 +0.324267 1.028444 0.507172 +0.301391 1.034026 0.509925 +0.278449 1.039187 0.512470 +0.255448 1.043929 0.514809 +0.232392 1.048253 0.516941 +0.209288 1.052161 0.518869 +0.186140 1.055654 0.520591 +0.162955 1.058734 0.522110 +0.139736 1.061400 0.523425 +0.116489 1.063655 0.524536 +0.093219 1.065498 0.525446 +0.069930 1.066932 0.526152 +0.046628 1.067955 0.526657 +0.023316 1.068569 0.526960 +0.000000 1.068773 0.527061 +1.080017 0.000000 0.503620 +1.079806 0.023561 0.503522 +1.079172 0.047118 0.503226 +1.078116 0.070663 0.502734 +1.076638 0.094194 0.502044 +1.074736 0.117703 0.501157 +1.072410 0.141185 0.500073 +1.069660 0.164636 0.498791 +1.066485 0.188050 0.497310 +1.062883 0.211421 0.495631 +1.058855 0.234743 0.493752 +1.054399 0.258010 0.491674 +1.049513 0.281216 0.489396 +1.044198 0.304356 0.486917 +1.038450 0.327422 0.484237 +1.032270 0.350408 0.481355 +1.025655 0.373308 0.478271 +1.018604 0.396114 0.474983 +1.011117 0.418818 0.471491 +1.003190 0.441414 0.467795 +0.994824 0.463894 0.463894 +0.986016 0.486249 0.459787 +0.976765 0.508472 0.455473 +0.967070 0.530553 0.450952 +0.956930 0.552484 0.446224 +0.946343 0.574255 0.441287 +0.935309 0.595858 0.436142 +0.923827 0.617281 0.430787 +0.911895 0.638516 0.425224 +0.899513 0.659550 0.419450 +0.886682 0.680375 0.413467 +0.873400 0.700978 0.407273 +0.859669 0.721348 0.400870 +0.845487 0.741473 0.394257 +0.830857 0.761341 0.387435 +0.815780 0.780939 0.380404 +0.800255 0.800255 0.373165 +0.780939 0.815780 0.380404 +0.761341 0.830857 0.387435 +0.741473 0.845487 0.394257 +0.721348 0.859669 0.400870 +0.700978 0.873400 0.407273 +0.680375 0.886682 0.413467 +0.659550 0.899513 0.419450 +0.638516 0.911895 0.425224 +0.617281 0.923827 0.430787 +0.595858 0.935309 0.436142 +0.574255 0.946343 0.441287 +0.552484 0.956930 0.446224 +0.530553 0.967070 0.450952 +0.508472 0.976765 0.455473 +0.486249 0.986016 0.459787 +0.463894 0.994824 0.463894 +0.441414 1.003190 0.467795 +0.418818 1.011117 0.471491 +0.396114 1.018604 0.474983 +0.373308 1.025655 0.478271 +0.350408 1.032270 0.481355 +0.327422 1.038450 0.484237 +0.304356 1.044198 0.486917 +0.281216 1.049513 0.489396 +0.258010 1.054399 0.491674 +0.234743 1.058855 0.493752 +0.211421 1.062883 0.495631 +0.188050 1.066485 0.497310 +0.164636 1.069660 0.498791 +0.141185 1.072410 0.500073 +0.117703 1.074736 0.501157 +0.094194 1.076638 0.502044 +0.070663 1.078116 0.502734 +0.047118 1.079172 0.503226 +0.023561 1.079806 0.503522 +0.000000 1.080017 0.503620 +1.090746 0.000000 0.479940 +1.090529 0.023795 0.479844 +1.089876 0.047585 0.479557 +1.088789 0.071363 0.479078 +1.087266 0.095123 0.478408 +1.085307 0.118860 0.477546 +1.082912 0.142568 0.476493 +1.080081 0.166240 0.475247 +1.076812 0.189871 0.473809 +1.073105 0.213454 0.472178 +1.068960 0.236983 0.470354 +1.064376 0.260451 0.468337 +1.059351 0.283852 0.466126 +1.053885 0.307179 0.463720 +1.047977 0.330426 0.461121 +1.041626 0.353584 0.458326 +1.034831 0.376648 0.455336 +1.027591 0.399608 0.452151 +1.019904 0.422458 0.448769 +1.011771 0.445190 0.445190 +1.003190 0.467795 0.441414 +0.994160 0.490266 0.437441 +0.984681 0.512592 0.433270 +0.974751 0.534766 0.428901 +0.964369 0.556779 0.424333 +0.953537 0.578620 0.419566 +0.942252 0.600281 0.414601 +0.930515 0.621750 0.409436 +0.918326 0.643018 0.404073 +0.905684 0.664075 0.398510 +0.892590 0.684909 0.392749 +0.879046 0.705509 0.386789 +0.865050 0.725863 0.380631 +0.850605 0.745961 0.374275 +0.835713 0.765790 0.367722 +0.820374 0.785337 0.360973 +0.804591 0.804591 0.354029 +0.785337 0.820374 0.360973 +0.765790 0.835713 0.367722 +0.745961 0.850605 0.374275 +0.725863 0.865050 0.380631 +0.705509 0.879046 0.386789 +0.684909 0.892590 0.392749 +0.664075 0.905684 0.398510 +0.643018 0.918326 0.404073 +0.621750 0.930515 0.409436 +0.600281 0.942252 0.414601 +0.578620 0.953537 0.419566 +0.556779 0.964369 0.424333 +0.534766 0.974751 0.428901 +0.512592 0.984681 0.433270 +0.490266 0.994160 0.437441 +0.467795 1.003190 0.441414 +0.445190 1.011771 0.445190 +0.422458 1.019904 0.448769 +0.399608 1.027591 0.452151 +0.376648 1.034831 0.455336 +0.353584 1.041626 0.458326 +0.330426 1.047977 0.461121 +0.307179 1.053885 0.463720 +0.283852 1.059351 0.466126 +0.260451 1.064376 0.468337 +0.236983 1.068960 0.470354 +0.213454 1.073105 0.472178 +0.189871 1.076812 0.473809 +0.166240 1.080081 0.475247 +0.142568 1.082912 0.476493 +0.118860 1.085307 0.477546 +0.095123 1.087266 0.478408 +0.071363 1.088789 0.479078 +0.047585 1.089876 0.479557 +0.023795 1.090529 0.479844 +0.000000 1.090746 0.479940 +1.100956 0.000000 0.456031 +1.100733 0.024018 0.455938 +1.100062 0.048030 0.455661 +1.098943 0.072029 0.455197 +1.097378 0.096008 0.454549 +1.095364 0.119962 0.453715 +1.092902 0.143883 0.452695 +1.089992 0.167766 0.451489 +1.086632 0.191603 0.450098 +1.082824 0.215387 0.448520 +1.078565 0.239112 0.446756 +1.073857 0.262771 0.444806 +1.068697 0.286357 0.442669 +1.063086 0.309861 0.440345 +1.057023 0.333278 0.437833 +1.050507 0.356599 0.435134 +1.043538 0.379817 0.432247 +1.036115 0.402923 0.429173 +1.028237 0.425910 0.425910 +1.019904 0.448769 0.422458 +1.011117 0.471491 0.418818 +1.001873 0.494069 0.414989 +0.992173 0.516493 0.410972 +0.982017 0.538753 0.406765 +0.971404 0.560841 0.402369 +0.960336 0.582746 0.397784 +0.948811 0.604459 0.393010 +0.936830 0.625970 0.388048 +0.924394 0.647268 0.382897 +0.911504 0.668342 0.377557 +0.898160 0.689182 0.372030 +0.884364 0.709777 0.366315 +0.870117 0.730115 0.360414 +0.855421 0.750184 0.354327 +0.840279 0.769973 0.348055 +0.824692 0.789470 0.341598 +0.808663 0.808663 0.334959 +0.789470 0.824692 0.341598 +0.769973 0.840279 0.348055 +0.750184 0.855421 0.354327 +0.730115 0.870117 0.360414 +0.709777 0.884364 0.366315 +0.689182 0.898160 0.372030 +0.668342 0.911504 0.377557 +0.647268 0.924394 0.382897 +0.625970 0.936830 0.388048 +0.604459 0.948811 0.393010 +0.582746 0.960336 0.397784 +0.560841 0.971404 0.402369 +0.538753 0.982017 0.406765 +0.516493 0.992173 0.410972 +0.494069 1.001873 0.414989 +0.471491 1.011117 0.418818 +0.448769 1.019904 0.422458 +0.425910 1.028237 0.425910 +0.402923 1.036115 0.429173 +0.379817 1.043538 0.432247 +0.356599 1.050507 0.435134 +0.333278 1.057023 0.437833 +0.309861 1.063086 0.440345 +0.286357 1.068697 0.442669 +0.262771 1.073857 0.444806 +0.239112 1.078565 0.446756 +0.215387 1.082824 0.448520 +0.191603 1.086632 0.450098 +0.167766 1.089992 0.451489 +0.143883 1.092902 0.452695 +0.119962 1.095364 0.453715 +0.096008 1.097378 0.454549 +0.072029 1.098943 0.455197 +0.048030 1.100062 0.455661 +0.024018 1.100733 0.455938 +0.000000 1.100956 0.456031 +1.110643 0.000000 0.431905 +1.110413 0.024229 0.431816 +1.109724 0.048452 0.431548 +1.108576 0.072660 0.431102 +1.106969 0.096847 0.430477 +1.104902 0.121006 0.429673 +1.102375 0.145130 0.428690 +1.099389 0.169212 0.427529 +1.095942 0.193244 0.426189 +1.092035 0.217219 0.424669 +1.087668 0.241130 0.422971 +1.082839 0.264969 0.421093 +1.077550 0.288729 0.419036 +1.071799 0.312401 0.416800 +1.065586 0.335978 0.414384 +1.058912 0.359452 0.411788 +1.051775 0.382815 0.409013 +1.044176 0.406058 0.406058 +1.036115 0.429173 0.402923 +1.027591 0.452151 0.399608 +1.018604 0.474983 0.396114 +1.009156 0.497660 0.392439 +0.999245 0.520174 0.388585 +0.988872 0.542514 0.384551 +0.978038 0.564671 0.380338 +0.966744 0.586635 0.375946 +0.954990 0.608395 0.371375 +0.942776 0.629943 0.366626 +0.930105 0.651267 0.361698 +0.916978 0.672356 0.356593 +0.903396 0.693200 0.351311 +0.889361 0.713787 0.345853 +0.874875 0.734107 0.340220 +0.859941 0.754148 0.334413 +0.844561 0.773898 0.328432 +0.828739 0.793345 0.322279 +0.812478 0.812478 0.315955 +0.793345 0.828739 0.322279 +0.773898 0.844561 0.328432 +0.754148 0.859941 0.334413 +0.734107 0.874875 0.340220 +0.713787 0.889361 0.345853 +0.693200 0.903396 0.351311 +0.672356 0.916978 0.356593 +0.651267 0.930105 0.361698 +0.629943 0.942776 0.366626 +0.608395 0.954990 0.371375 +0.586635 0.966744 0.375946 +0.564671 0.978038 0.380338 +0.542514 0.988872 0.384551 +0.520174 0.999245 0.388585 +0.497660 1.009156 0.392439 +0.474983 1.018604 0.396114 +0.452151 1.027591 0.399608 +0.429173 1.036115 0.402923 +0.406058 1.044176 0.406058 +0.382815 1.051775 0.409013 +0.359452 1.058912 0.411788 +0.335978 1.065586 0.414384 +0.312401 1.071799 0.416800 +0.288729 1.077550 0.419036 +0.264969 1.082839 0.421093 +0.241130 1.087668 0.422971 +0.217219 1.092035 0.424669 +0.193244 1.095942 0.426189 +0.169212 1.099389 0.427529 +0.145130 1.102375 0.428690 +0.121006 1.104902 0.429673 +0.096847 1.106969 0.430477 +0.072660 1.108576 0.431102 +0.048452 1.109724 0.431548 +0.024229 1.110413 0.431816 +0.000000 1.110643 0.431905 +1.119800 0.000000 0.407574 +1.119565 0.024429 0.407488 +1.118859 0.048850 0.407231 +1.117682 0.073257 0.406803 +1.116035 0.097640 0.406204 +1.113917 0.121994 0.405433 +1.111328 0.146309 0.404490 +1.108269 0.170579 0.403377 +1.104738 0.194795 0.402092 +1.100737 0.218950 0.400635 +1.096264 0.243036 0.399008 +1.091321 0.267045 0.397208 +1.085907 0.290968 0.395238 +1.080022 0.314798 0.393096 +1.073666 0.338526 0.390783 +1.066840 0.362143 0.388298 +1.059542 0.385642 0.385642 +1.051775 0.409013 0.382815 +1.043538 0.432247 0.379817 +1.034831 0.455336 0.376648 +1.025655 0.478271 0.373308 +1.016010 0.501041 0.369798 +1.005898 0.523638 0.366117 +0.995319 0.546051 0.362267 +0.984275 0.568271 0.358247 +0.972765 0.590288 0.354058 +0.960793 0.612092 0.349700 +0.948358 0.633673 0.345174 +0.935464 0.655019 0.340481 +0.922111 0.676120 0.335621 +0.908303 0.696966 0.330595 +0.894042 0.717545 0.325405 +0.879330 0.737846 0.320050 +0.864171 0.757857 0.314532 +0.848567 0.777569 0.308853 +0.832523 0.796968 0.303014 +0.816043 0.816043 0.297015 +0.796968 0.832523 0.303014 +0.777569 0.848567 0.308853 +0.757857 0.864171 0.314532 +0.737846 0.879330 0.320050 +0.717545 0.894042 0.325405 +0.696966 0.908303 0.330595 +0.676120 0.922111 0.335621 +0.655019 0.935464 0.340481 +0.633673 0.948358 0.345174 +0.612092 0.960793 0.349700 +0.590288 0.972765 0.354058 +0.568271 0.984275 0.358247 +0.546051 0.995319 0.362267 +0.523638 1.005898 0.366117 +0.501041 1.016010 0.369798 +0.478271 1.025655 0.373308 +0.455336 1.034831 0.376648 +0.432247 1.043538 0.379817 +0.409013 1.051775 0.382815 +0.385642 1.059542 0.385642 +0.362143 1.066840 0.388298 +0.338526 1.073666 0.390783 +0.314798 1.080022 0.393096 +0.290968 1.085907 0.395238 +0.267045 1.091321 0.397208 +0.243036 1.096264 0.399008 +0.218950 1.100737 0.400635 +0.194795 1.104738 0.402092 +0.170579 1.108269 0.403377 +0.146309 1.111328 0.404490 +0.121994 1.113917 0.405433 +0.097640 1.116035 0.406204 +0.073257 1.117682 0.406803 +0.048850 1.118859 0.407231 +0.024429 1.119565 0.407488 +0.000000 1.119800 0.407574 +1.128425 0.000000 0.383049 +1.128184 0.024617 0.382967 +1.127462 0.049226 0.382722 +1.126258 0.073819 0.382313 +1.124572 0.098387 0.381741 +1.122406 0.122923 0.381005 +1.119757 0.147419 0.380106 +1.116628 0.171865 0.379044 +1.113017 0.196255 0.377818 +1.108925 0.220579 0.376429 +1.104353 0.244829 0.374877 +1.099300 0.268997 0.373162 +1.093767 0.293074 0.371284 +1.087754 0.317051 0.369243 +1.081261 0.340920 0.367039 +1.074289 0.364672 0.364672 +1.066840 0.388298 0.362143 +1.058912 0.411788 0.359452 +1.050507 0.435134 0.356599 +1.041626 0.458326 0.353584 +1.032270 0.481355 0.350408 +1.022439 0.504211 0.347071 +1.012136 0.526885 0.343574 +1.001361 0.549365 0.339916 +0.990116 0.571644 0.336099 +0.978403 0.593710 0.332123 +0.966224 0.615552 0.327989 +0.953580 0.637162 0.323697 +0.940474 0.658527 0.319248 +0.926909 0.679638 0.314643 +0.912888 0.700484 0.309884 +0.898413 0.721053 0.304970 +0.883488 0.741334 0.299904 +0.868116 0.761317 0.294686 +0.852302 0.780991 0.289317 +0.836049 0.800343 0.283800 +0.819362 0.819362 0.278136 +0.800343 0.836049 0.283800 +0.780991 0.852302 0.289317 +0.761317 0.868116 0.294686 +0.741334 0.883488 0.299904 +0.721053 0.898413 0.304970 +0.700484 0.912888 0.309884 +0.679638 0.926909 0.314643 +0.658527 0.940474 0.319248 +0.637162 0.953580 0.323697 +0.615552 0.966224 0.327989 +0.593710 0.978403 0.332123 +0.571644 0.990116 0.336099 +0.549365 1.001361 0.339916 +0.526885 1.012136 0.343574 +0.504211 1.022439 0.347071 +0.481355 1.032270 0.350408 +0.458326 1.041626 0.353584 +0.435134 1.050507 0.356599 +0.411788 1.058912 0.359452 +0.388298 1.066840 0.362143 +0.364672 1.074289 0.364672 +0.340920 1.081261 0.367039 +0.317051 1.087754 0.369243 +0.293074 1.093767 0.371284 +0.268997 1.099300 0.373162 +0.244829 1.104353 0.374877 +0.220579 1.108925 0.376429 +0.196255 1.113017 0.377818 +0.171865 1.116628 0.379044 +0.147419 1.119757 0.380106 +0.122923 1.122406 0.381005 +0.098387 1.124572 0.381741 +0.073819 1.126258 0.382313 +0.049226 1.127462 0.382722 +0.024617 1.128184 0.382967 +0.000000 1.128425 0.383049 +1.136513 0.000000 0.358341 +1.136267 0.024793 0.358264 +1.135529 0.049578 0.358031 +1.134299 0.074346 0.357643 +1.132577 0.099088 0.357100 +1.130364 0.123795 0.356402 +1.127659 0.148459 0.355549 +1.124463 0.173071 0.354542 +1.120776 0.197623 0.353379 +1.116598 0.222105 0.352062 +1.111930 0.246509 0.350590 +1.106773 0.270826 0.348964 +1.101127 0.295046 0.347184 +1.094992 0.319161 0.345250 +1.088370 0.343162 0.343162 +1.081261 0.367039 0.340920 +1.073666 0.390783 0.338526 +1.065586 0.414384 0.335978 +1.057023 0.437833 0.333278 +1.047977 0.461121 0.330426 +1.038450 0.484237 0.327422 +1.028444 0.507172 0.324267 +1.017960 0.529916 0.320961 +1.007000 0.552459 0.317506 +0.995566 0.574790 0.313901 +0.983661 0.596900 0.310147 +0.971286 0.618778 0.306245 +0.958446 0.640413 0.302197 +0.945141 0.661795 0.298002 +0.931376 0.682913 0.293662 +0.917154 0.703757 0.289178 +0.902479 0.724316 0.284550 +0.887353 0.744578 0.279781 +0.871782 0.764533 0.274872 +0.855771 0.784169 0.269823 +0.839322 0.803476 0.264637 +0.822443 0.822443 0.259315 +0.803476 0.839322 0.264637 +0.784169 0.855771 0.269823 +0.764533 0.871782 0.274872 +0.744578 0.887353 0.279781 +0.724316 0.902479 0.284550 +0.703757 0.917154 0.289178 +0.682913 0.931376 0.293662 +0.661795 0.945141 0.298002 +0.640413 0.958446 0.302197 +0.618778 0.971286 0.306245 +0.596900 0.983661 0.310147 +0.574790 0.995566 0.313901 +0.552459 1.007000 0.317506 +0.529916 1.017960 0.320961 +0.507172 1.028444 0.324267 +0.484237 1.038450 0.327422 +0.461121 1.047977 0.330426 +0.437833 1.057023 0.333278 +0.414384 1.065586 0.335978 +0.390783 1.073666 0.338526 +0.367039 1.081261 0.340920 +0.343162 1.088370 0.343162 +0.319161 1.094992 0.345250 +0.295046 1.101127 0.347184 +0.270826 1.106773 0.348964 +0.246509 1.111930 0.350590 +0.222105 1.116598 0.352062 +0.197623 1.120776 0.353379 +0.173071 1.124463 0.354542 +0.148459 1.127659 0.355549 +0.123795 1.130364 0.356402 +0.099088 1.132577 0.357100 +0.074346 1.134299 0.357643 +0.049578 1.135529 0.358031 +0.024793 1.136267 0.358264 +0.000000 1.136513 0.358341 +1.144059 0.000000 0.333463 +1.143808 0.024958 0.333390 +1.143056 0.049907 0.333170 +1.141801 0.074838 0.332805 +1.140045 0.099741 0.332293 +1.137788 0.124608 0.331635 +1.135029 0.149429 0.330831 +1.131770 0.174196 0.329881 +1.128011 0.198899 0.328785 +1.123752 0.223528 0.327544 +1.118995 0.248075 0.326157 +1.113739 0.272530 0.324625 +1.107986 0.296884 0.322949 +1.101737 0.321127 0.321127 +1.094992 0.345250 0.319161 +1.087754 0.369243 0.317051 +1.080022 0.393096 0.314798 +1.071799 0.416800 0.312401 +1.063086 0.440345 0.309861 +1.053885 0.463720 0.307179 +1.044198 0.486917 0.304356 +1.034026 0.509925 0.301391 +1.023372 0.532734 0.298286 +1.012238 0.555333 0.295041 +1.000627 0.577712 0.291656 +0.988542 0.599862 0.288134 +0.975984 0.621771 0.284474 +0.962959 0.643429 0.280677 +0.949468 0.664825 0.276745 +0.935516 0.685949 0.272678 +0.921106 0.706790 0.268478 +0.906243 0.727337 0.264146 +0.890931 0.747580 0.259683 +0.875175 0.767508 0.255090 +0.858979 0.787109 0.250369 +0.842348 0.806373 0.245522 +0.825289 0.825289 0.240550 +0.806373 0.842348 0.245522 +0.787109 0.858979 0.250369 +0.767508 0.875175 0.255090 +0.747580 0.890931 0.259683 +0.727337 0.906243 0.264146 +0.706790 0.921106 0.268478 +0.685949 0.935516 0.272678 +0.664825 0.949468 0.276745 +0.643429 0.962959 0.280677 +0.621771 0.975984 0.284474 +0.599862 0.988542 0.288134 +0.577712 1.000627 0.291656 +0.555333 1.012238 0.295041 +0.532734 1.023372 0.298286 +0.509925 1.034026 0.301391 +0.486917 1.044198 0.304356 +0.463720 1.053885 0.307179 +0.440345 1.063086 0.309861 +0.416800 1.071799 0.312401 +0.393096 1.080022 0.314798 +0.369243 1.087754 0.317051 +0.345250 1.094992 0.319161 +0.321127 1.101737 0.321127 +0.296884 1.107986 0.322949 +0.272530 1.113739 0.324625 +0.248075 1.118995 0.326157 +0.223528 1.123752 0.327544 +0.198899 1.128011 0.328785 +0.174196 1.131770 0.329881 +0.149429 1.135029 0.330831 +0.124608 1.137788 0.331635 +0.099741 1.140045 0.332293 +0.074838 1.141801 0.332805 +0.049907 1.143056 0.333170 +0.024958 1.143808 0.333390 +0.000000 1.144059 0.333463 +1.151062 0.000000 0.308426 +1.150806 0.025111 0.308358 +1.150039 0.050212 0.308152 +1.148762 0.075294 0.307810 +1.146973 0.100347 0.307331 +1.144675 0.125362 0.306715 +1.141866 0.150329 0.305962 +1.138548 0.175239 0.305073 +1.134721 0.200082 0.304048 +1.130386 0.224848 0.302886 +1.125544 0.249527 0.301589 +1.120196 0.274110 0.300156 +1.114343 0.298587 0.298587 +1.107986 0.322949 0.296884 +1.101127 0.347184 0.295046 +1.093767 0.371284 0.293074 +1.085907 0.395238 0.290968 +1.077550 0.419036 0.288729 +1.068697 0.442669 0.286357 +1.059351 0.466126 0.283852 +1.049513 0.489396 0.281216 +1.039187 0.512470 0.278449 +1.028374 0.535338 0.275552 +1.017078 0.557988 0.272525 +1.005302 0.580411 0.269370 +0.993048 0.602596 0.266086 +0.980321 0.624533 0.262676 +0.967123 0.646211 0.259140 +0.953459 0.667619 0.255479 +0.939333 0.688748 0.251694 +0.924749 0.709585 0.247786 +0.909712 0.730121 0.243757 +0.894226 0.750345 0.239607 +0.878297 0.770246 0.235339 +0.861930 0.789814 0.230954 +0.845132 0.809037 0.226452 +0.827906 0.827906 0.221837 +0.809037 0.845132 0.226452 +0.789814 0.861930 0.230954 +0.770246 0.878297 0.235339 +0.750345 0.894226 0.239607 +0.730121 0.909712 0.243757 +0.709585 0.924749 0.247786 +0.688748 0.939333 0.251694 +0.667619 0.953459 0.255479 +0.646211 0.967123 0.259140 +0.624533 0.980321 0.262676 +0.602596 0.993048 0.266086 +0.580411 1.005302 0.269370 +0.557988 1.017078 0.272525 +0.535338 1.028374 0.275552 +0.512470 1.039187 0.278449 +0.489396 1.049513 0.281216 +0.466126 1.059351 0.283852 +0.442669 1.068697 0.286357 +0.419036 1.077550 0.288729 +0.395238 1.085907 0.290968 +0.371284 1.093767 0.293074 +0.347184 1.101127 0.295046 +0.322949 1.107986 0.296884 +0.298587 1.114343 0.298587 +0.274110 1.120196 0.300156 +0.249527 1.125544 0.301589 +0.224848 1.130386 0.302886 +0.200082 1.134721 0.304048 +0.175239 1.138548 0.305073 +0.150329 1.141866 0.305962 +0.125362 1.144675 0.306715 +0.100347 1.146973 0.307331 +0.075294 1.148762 0.307810 +0.050212 1.150039 0.308152 +0.025111 1.150806 0.308358 +0.000000 1.151062 0.308426 +1.157516 0.000000 0.283242 +1.157256 0.025251 0.283179 +1.156476 0.050493 0.282988 +1.155177 0.075714 0.282670 +1.153359 0.100906 0.282225 +1.151021 0.126057 0.281653 +1.148166 0.151159 0.280954 +1.144793 0.176200 0.280129 +1.140903 0.201172 0.279177 +1.136497 0.226063 0.278099 +1.131577 0.250864 0.276895 +1.126143 0.275565 0.275565 +1.120196 0.300156 0.274110 +1.113739 0.324625 0.272530 +1.106773 0.348964 0.270826 +1.099300 0.373162 0.268997 +1.091321 0.397208 0.267045 +1.082839 0.421093 0.264969 +1.073857 0.444806 0.262771 +1.064376 0.468337 0.260451 +1.054399 0.491674 0.258010 +1.043929 0.514809 0.255448 +1.032969 0.537730 0.252766 +1.021523 0.560427 0.249965 +1.009593 0.582889 0.247046 +0.997184 0.605106 0.244009 +0.984299 0.627067 0.240856 +0.970942 0.648763 0.237588 +0.957118 0.670181 0.234205 +0.942831 0.691312 0.230709 +0.928086 0.712145 0.227101 +0.912888 0.732670 0.223382 +0.897242 0.752876 0.219554 +0.881155 0.772752 0.215617 +0.864631 0.792288 0.211574 +0.847676 0.811473 0.207425 +0.830298 0.830298 0.203173 +0.811473 0.847676 0.207425 +0.792288 0.864631 0.211574 +0.772752 0.881155 0.215617 +0.752876 0.897242 0.219554 +0.732670 0.912888 0.223382 +0.712145 0.928086 0.227101 +0.691312 0.942831 0.230709 +0.670181 0.957118 0.234205 +0.648763 0.970942 0.237588 +0.627067 0.984299 0.240856 +0.605106 0.997184 0.244009 +0.582889 1.009593 0.247046 +0.560427 1.021523 0.249965 +0.537730 1.032969 0.252766 +0.514809 1.043929 0.255448 +0.491674 1.054399 0.258010 +0.468337 1.064376 0.260451 +0.444806 1.073857 0.262771 +0.421093 1.082839 0.264969 +0.397208 1.091321 0.267045 +0.373162 1.099300 0.268997 +0.348964 1.106773 0.270826 +0.324625 1.113739 0.272530 +0.300156 1.120196 0.274110 +0.275565 1.126143 0.275565 +0.250864 1.131577 0.276895 +0.226063 1.136497 0.278099 +0.201172 1.140903 0.279177 +0.176200 1.144793 0.280129 +0.151159 1.148166 0.280954 +0.126057 1.151021 0.281653 +0.100906 1.153359 0.282225 +0.075714 1.155177 0.282670 +0.050493 1.156476 0.282988 +0.025251 1.157256 0.283179 +0.000000 1.157516 0.283242 +1.163419 0.000000 0.257924 +1.163156 0.025380 0.257865 +1.162364 0.050750 0.257690 +1.161045 0.076099 0.257397 +1.159199 0.101417 0.256988 +1.156826 0.126693 0.256462 +1.153927 0.151917 0.255819 +1.150503 0.177079 0.255060 +1.146555 0.202169 0.254185 +1.142083 0.227174 0.253194 +1.137090 0.252087 0.252087 +1.131577 0.276895 0.250864 +1.125544 0.301589 0.249527 +1.118995 0.326157 0.248075 +1.111930 0.350590 0.246509 +1.104353 0.374877 0.244829 +1.096264 0.399008 0.243036 +1.087668 0.422971 0.241130 +1.078565 0.446756 0.239112 +1.068960 0.470354 0.236983 +1.058855 0.493752 0.234743 +1.048253 0.516941 0.232392 +1.037158 0.539910 0.229932 +1.025574 0.562649 0.227364 +1.013503 0.585146 0.224688 +1.000951 0.607392 0.221905 +0.987921 0.629375 0.219017 +0.974418 0.651085 0.216023 +0.960447 0.672512 0.212926 +0.946013 0.693645 0.209726 +0.931121 0.714474 0.206424 +0.915775 0.734988 0.203023 +0.899983 0.755176 0.199522 +0.883750 0.775028 0.195923 +0.867083 0.794535 0.192228 +0.849987 0.813685 0.188437 +0.832469 0.832469 0.184554 +0.813685 0.849987 0.188437 +0.794535 0.867083 0.192228 +0.775028 0.883750 0.195923 +0.755176 0.899983 0.199522 +0.734988 0.915775 0.203023 +0.714474 0.931121 0.206424 +0.693645 0.946013 0.209726 +0.672512 0.960447 0.212926 +0.651085 0.974418 0.216023 +0.629375 0.987921 0.219017 +0.607392 1.000951 0.221905 +0.585146 1.013503 0.224688 +0.562649 1.025574 0.227364 +0.539910 1.037158 0.229932 +0.516941 1.048253 0.232392 +0.493752 1.058855 0.234743 +0.470354 1.068960 0.236983 +0.446756 1.078565 0.239112 +0.422971 1.087668 0.241130 +0.399008 1.096264 0.243036 +0.374877 1.104353 0.244829 +0.350590 1.111930 0.246509 +0.326157 1.118995 0.248075 +0.301589 1.125544 0.249527 +0.276895 1.131577 0.250864 +0.252087 1.137090 0.252087 +0.227174 1.142083 0.253194 +0.202169 1.146555 0.254185 +0.177079 1.150503 0.255060 +0.151917 1.153927 0.255819 +0.126693 1.156826 0.256462 +0.101417 1.159199 0.256988 +0.076099 1.161045 0.257397 +0.050750 1.162364 0.257690 +0.025380 1.163156 0.257865 +0.000000 1.163419 0.257924 +1.168769 0.000000 0.232483 +1.168502 0.025497 0.232429 +1.167699 0.050983 0.232270 +1.166362 0.076447 0.232004 +1.164490 0.101880 0.231631 +1.162084 0.127269 0.231153 +1.159146 0.152604 0.230568 +1.155675 0.177875 0.229878 +1.151674 0.203071 0.229082 +1.147143 0.228181 0.228181 +1.142083 0.253194 0.227174 +1.136497 0.278099 0.226063 +1.130386 0.302886 0.224848 +1.123752 0.327544 0.223528 +1.116598 0.352062 0.222105 +1.108925 0.376429 0.220579 +1.100737 0.400635 0.218950 +1.092035 0.424669 0.217219 +1.082824 0.448520 0.215387 +1.073105 0.472178 0.213454 +1.062883 0.495631 0.211421 +1.052161 0.518869 0.209288 +1.040943 0.541881 0.207056 +1.029233 0.564656 0.204727 +1.017034 0.587185 0.202301 +1.004352 0.609456 0.199778 +0.991190 0.631458 0.197160 +0.977555 0.653181 0.194448 +0.963451 0.674615 0.191642 +0.948882 0.695749 0.188744 +0.933856 0.716573 0.185756 +0.918378 0.737076 0.182677 +0.902453 0.757248 0.179509 +0.886088 0.777079 0.176254 +0.869291 0.796558 0.172913 +0.852066 0.815676 0.169486 +0.834422 0.834422 0.165977 +0.815676 0.852066 0.169486 +0.796558 0.869291 0.172913 +0.777079 0.886088 0.176254 +0.757248 0.902453 0.179509 +0.737076 0.918378 0.182677 +0.716573 0.933856 0.185756 +0.695749 0.948882 0.188744 +0.674615 0.963451 0.191642 +0.653181 0.977555 0.194448 +0.631458 0.991190 0.197160 +0.609456 1.004352 0.199778 +0.587185 1.017034 0.202301 +0.564656 1.029233 0.204727 +0.541881 1.040943 0.207056 +0.518869 1.052161 0.209288 +0.495631 1.062883 0.211421 +0.472178 1.073105 0.213454 +0.448520 1.082824 0.215387 +0.424669 1.092035 0.217219 +0.400635 1.100737 0.218950 +0.376429 1.108925 0.220579 +0.352062 1.116598 0.222105 +0.327544 1.123752 0.223528 +0.302886 1.130386 0.224848 +0.278099 1.136497 0.226063 +0.253194 1.142083 0.227174 +0.228181 1.147143 0.228181 +0.203071 1.151674 0.229082 +0.177875 1.155675 0.229878 +0.152604 1.159146 0.230568 +0.127269 1.162084 0.231153 +0.101880 1.164490 0.231631 +0.076447 1.166362 0.232004 +0.050983 1.167699 0.232270 +0.025497 1.168502 0.232429 +0.000000 1.168769 0.232483 +1.173563 0.000000 0.206931 +1.173292 0.025601 0.206883 +1.172479 0.051192 0.206740 +1.171125 0.076760 0.206501 +1.169231 0.102294 0.206167 +1.166796 0.127785 0.205738 +1.163822 0.153220 0.205213 +1.160309 0.178589 0.204594 +1.156259 0.203880 0.203880 +1.151674 0.229082 0.203071 +1.146555 0.254185 0.202169 +1.140903 0.279177 0.201172 +1.134721 0.304048 0.200082 +1.128011 0.328785 0.198899 +1.120776 0.353379 0.197623 +1.113017 0.377818 0.196255 +1.104738 0.402092 0.194795 +1.095942 0.426189 0.193244 +1.086632 0.450098 0.191603 +1.076812 0.473809 0.189871 +1.066485 0.497310 0.188050 +1.055654 0.520591 0.186140 +1.044325 0.543641 0.184143 +1.032501 0.566450 0.182058 +1.020188 0.589006 0.179887 +1.007388 0.611298 0.177630 +0.994109 0.633317 0.175288 +0.980354 0.655052 0.172863 +0.966130 0.676492 0.170355 +0.951442 0.697626 0.167765 +0.936296 0.718445 0.165094 +0.920698 0.738938 0.162344 +0.904654 0.759095 0.159515 +0.888172 0.778906 0.156609 +0.871257 0.798360 0.153626 +0.853918 0.817449 0.150569 +0.836161 0.836161 0.147438 +0.817449 0.853918 0.150569 +0.798360 0.871257 0.153626 +0.778906 0.888172 0.156609 +0.759095 0.904654 0.159515 +0.738938 0.920698 0.162344 +0.718445 0.936296 0.165094 +0.697626 0.951442 0.167765 +0.676492 0.966130 0.170355 +0.655052 0.980354 0.172863 +0.633317 0.994109 0.175288 +0.611298 1.007388 0.177630 +0.589006 1.020188 0.179887 +0.566450 1.032501 0.182058 +0.543641 1.044325 0.184143 +0.520591 1.055654 0.186140 +0.497310 1.066485 0.188050 +0.473809 1.076812 0.189871 +0.450098 1.086632 0.191603 +0.426189 1.095942 0.193244 +0.402092 1.104738 0.194795 +0.377818 1.113017 0.196255 +0.353379 1.120776 0.197623 +0.328785 1.128011 0.198899 +0.304048 1.134721 0.200082 +0.279177 1.140903 0.201172 +0.254185 1.146555 0.202169 +0.229082 1.151674 0.203071 +0.203880 1.156259 0.203880 +0.178589 1.160309 0.204594 +0.153220 1.163822 0.205213 +0.127785 1.166796 0.205738 +0.102294 1.169231 0.206167 +0.076760 1.171125 0.206501 +0.051192 1.172479 0.206740 +0.025601 1.173292 0.206883 +0.000000 1.173563 0.206931 +1.177797 0.000000 0.181280 +1.177524 0.025694 0.181238 +1.176702 0.051376 0.181112 +1.175334 0.077035 0.180901 +1.173419 0.102661 0.180606 +1.170958 0.128241 0.180228 +1.167952 0.153764 0.179765 +1.164402 0.179219 0.179219 +1.160309 0.204594 0.178589 +1.155675 0.229878 0.177875 +1.150503 0.255060 0.177079 +1.144793 0.280129 0.176200 +1.138548 0.305073 0.175239 +1.131770 0.329881 0.174196 +1.124463 0.354542 0.173071 +1.116628 0.379044 0.171865 +1.108269 0.403377 0.170579 +1.099389 0.427529 0.169212 +1.089992 0.451489 0.167766 +1.080081 0.475247 0.166240 +1.069660 0.498791 0.164636 +1.058734 0.522110 0.162955 +1.047306 0.545193 0.161196 +1.035382 0.568030 0.159361 +1.022966 0.590610 0.157450 +1.010063 0.612921 0.155464 +0.996679 0.634955 0.153404 +0.982819 0.656699 0.151270 +0.968489 0.678143 0.149065 +0.953695 0.699278 0.146788 +0.938442 0.720092 0.144440 +0.922738 0.740576 0.142023 +0.906590 0.760719 0.139538 +0.890003 0.780512 0.136985 +0.872986 0.799944 0.134365 +0.855545 0.819007 0.131681 +0.837689 0.837689 0.128933 +0.819007 0.855545 0.131681 +0.799944 0.872986 0.134365 +0.780512 0.890003 0.136985 +0.760719 0.906590 0.139538 +0.740576 0.922738 0.142023 +0.720092 0.938442 0.144440 +0.699278 0.953695 0.146788 +0.678143 0.968489 0.149065 +0.656699 0.982819 0.151270 +0.634955 0.996679 0.153404 +0.612921 1.010063 0.155464 +0.590610 1.022966 0.157450 +0.568030 1.035382 0.159361 +0.545193 1.047306 0.161196 +0.522110 1.058734 0.162955 +0.498791 1.069660 0.164636 +0.475247 1.080081 0.166240 +0.451489 1.089992 0.167766 +0.427529 1.099389 0.169212 +0.403377 1.108269 0.170579 +0.379044 1.116628 0.171865 +0.354542 1.124463 0.173071 +0.329881 1.131770 0.174196 +0.305073 1.138548 0.175239 +0.280129 1.144793 0.176200 +0.255060 1.150503 0.177079 +0.229878 1.155675 0.177875 +0.204594 1.160309 0.178589 +0.179219 1.164402 0.179219 +0.153764 1.167952 0.179765 +0.128241 1.170958 0.180228 +0.102661 1.173419 0.180606 +0.077035 1.175334 0.180901 +0.051376 1.176702 0.181112 +0.025694 1.177524 0.181238 +0.000000 1.177797 0.181280 +1.181472 0.000000 0.155544 +1.181195 0.025774 0.155507 +1.180366 0.051536 0.155398 +1.178985 0.077275 0.155216 +1.177052 0.102979 0.154962 +1.174568 0.128636 0.154635 +1.171534 0.154235 0.154235 +1.167952 0.179765 0.153764 +1.163822 0.205213 0.153220 +1.159146 0.230568 0.152604 +1.153927 0.255819 0.151917 +1.148166 0.280954 0.151159 +1.141866 0.305962 0.150329 +1.135029 0.330831 0.149429 +1.127659 0.355549 0.148459 +1.119757 0.380106 0.147419 +1.111328 0.404490 0.146309 +1.102375 0.428690 0.145130 +1.092902 0.452695 0.143883 +1.082912 0.476493 0.142568 +1.072410 0.500073 0.141185 +1.061400 0.523425 0.139736 +1.049887 0.546537 0.138220 +1.037875 0.569398 0.136639 +1.025371 0.591998 0.134993 +1.012378 0.614326 0.133282 +0.998903 0.636371 0.131508 +0.984951 0.658123 0.129671 +0.970529 0.679572 0.127773 +0.955642 0.700706 0.125813 +0.940298 0.721516 0.123793 +0.924502 0.741991 0.121713 +0.908262 0.762123 0.119575 +0.891585 0.781899 0.117379 +0.874479 0.801312 0.115127 +0.856951 0.820352 0.112820 +0.839008 0.839008 0.110457 +0.820352 0.856951 0.112820 +0.801312 0.874479 0.115127 +0.781899 0.891585 0.117379 +0.762123 0.908262 0.119575 +0.741991 0.924502 0.121713 +0.721516 0.940298 0.123793 +0.700706 0.955642 0.125813 +0.679572 0.970529 0.127773 +0.658123 0.984951 0.129671 +0.636371 0.998903 0.131508 +0.614326 1.012378 0.133282 +0.591998 1.025371 0.134993 +0.569398 1.037875 0.136639 +0.546537 1.049887 0.138220 +0.523425 1.061400 0.139736 +0.500073 1.072410 0.141185 +0.476493 1.082912 0.142568 +0.452695 1.092902 0.143883 +0.428690 1.102375 0.145130 +0.404490 1.111328 0.146309 +0.380106 1.119757 0.147419 +0.355549 1.127659 0.148459 +0.330831 1.135029 0.149429 +0.305962 1.141866 0.150329 +0.280954 1.148166 0.151159 +0.255819 1.153927 0.151917 +0.230568 1.159146 0.152604 +0.205213 1.163822 0.153220 +0.179765 1.167952 0.153764 +0.154235 1.171534 0.154235 +0.128636 1.174568 0.154635 +0.102979 1.177052 0.154962 +0.077275 1.178985 0.155216 +0.051536 1.180366 0.155398 +0.025774 1.181195 0.155507 +0.000000 1.181472 0.155544 +1.184584 0.000000 0.129733 +1.184305 0.025842 0.129703 +1.183470 0.051671 0.129611 +1.182077 0.077477 0.129459 +1.180129 0.103248 0.129245 +1.177626 0.128971 0.128971 +1.174568 0.154635 0.128636 +1.170958 0.180228 0.128241 +1.166796 0.205738 0.127785 +1.162084 0.231153 0.127269 +1.156826 0.256462 0.126693 +1.151021 0.281653 0.126057 +1.144675 0.306715 0.125362 +1.137788 0.331635 0.124608 +1.130364 0.356402 0.123795 +1.122406 0.381005 0.122923 +1.113917 0.405433 0.121994 +1.104902 0.429673 0.121006 +1.095364 0.453715 0.119962 +1.085307 0.477546 0.118860 +1.074736 0.501157 0.117703 +1.063655 0.524536 0.116489 +1.052069 0.547672 0.115220 +1.039983 0.570554 0.113897 +1.027403 0.593171 0.112519 +1.014334 0.615513 0.111088 +1.000781 0.637568 0.109603 +0.986752 0.659327 0.108067 +0.972252 0.680778 0.106479 +0.957287 0.701912 0.104840 +0.941864 0.722718 0.103151 +0.925991 0.743186 0.101412 +0.909674 0.763307 0.099625 +0.892921 0.783070 0.097791 +0.875739 0.802467 0.095909 +0.858136 0.821486 0.093981 +0.840120 0.840120 0.092008 +0.821486 0.858136 0.093981 +0.802467 0.875739 0.095909 +0.783070 0.892921 0.097791 +0.763307 0.909674 0.099625 +0.743186 0.925991 0.101412 +0.722718 0.941864 0.103151 +0.701912 0.957287 0.104840 +0.680778 0.972252 0.106479 +0.659327 0.986752 0.108067 +0.637568 1.000781 0.109603 +0.615513 1.014334 0.111088 +0.593171 1.027403 0.112519 +0.570554 1.039983 0.113897 +0.547672 1.052069 0.115220 +0.524536 1.063655 0.116489 +0.501157 1.074736 0.117703 +0.477546 1.085307 0.118860 +0.453715 1.095364 0.119962 +0.429673 1.104902 0.121006 +0.405433 1.113917 0.121994 +0.381005 1.122406 0.122923 +0.356402 1.130364 0.123795 +0.331635 1.137788 0.124608 +0.306715 1.144675 0.125362 +0.281653 1.151021 0.126057 +0.256462 1.156826 0.126693 +0.231153 1.162084 0.127269 +0.205738 1.166796 0.127785 +0.180228 1.170958 0.128241 +0.154635 1.174568 0.128636 +0.128971 1.177626 0.128971 +0.103248 1.180129 0.129245 +0.077477 1.182077 0.129459 +0.051671 1.183470 0.129611 +0.025842 1.184305 0.129703 +0.000000 1.184584 0.129733 +1.187132 0.000000 0.103861 +1.186852 0.025897 0.103836 +1.186011 0.051782 0.103762 +1.184610 0.077643 0.103640 +1.182649 0.103468 0.103468 +1.180129 0.129245 0.103248 +1.177052 0.154962 0.102979 +1.173419 0.180606 0.102661 +1.169231 0.206167 0.102294 +1.164490 0.231631 0.101880 +1.159199 0.256988 0.101417 +1.153359 0.282225 0.100906 +1.146973 0.307331 0.100347 +1.140045 0.332293 0.099741 +1.132577 0.357100 0.099088 +1.124572 0.381741 0.098387 +1.116035 0.406204 0.097640 +1.106969 0.430477 0.096847 +1.097378 0.454549 0.096008 +1.087266 0.478408 0.095123 +1.076638 0.502044 0.094194 +1.065498 0.525446 0.093219 +1.053853 0.548601 0.092200 +1.041706 0.571500 0.091137 +1.029064 0.594130 0.090031 +1.015932 0.616483 0.088883 +1.002317 0.638546 0.087691 +0.988223 0.660310 0.086458 +0.973659 0.681763 0.085184 +0.958630 0.702897 0.083869 +0.943144 0.723700 0.082514 +0.927207 0.744162 0.081120 +0.910826 0.764274 0.079687 +0.894010 0.784026 0.078216 +0.876767 0.803409 0.076707 +0.859103 0.822412 0.075162 +0.841028 0.841028 0.073580 +0.822412 0.859103 0.075162 +0.803409 0.876767 0.076707 +0.784026 0.894010 0.078216 +0.764274 0.910826 0.079687 +0.744162 0.927207 0.081120 +0.723700 0.943144 0.082514 +0.702897 0.958630 0.083869 +0.681763 0.973659 0.085184 +0.660310 0.988223 0.086458 +0.638546 1.002317 0.087691 +0.616483 1.015932 0.088883 +0.594130 1.029064 0.090031 +0.571500 1.041706 0.091137 +0.548601 1.053853 0.092200 +0.525446 1.065498 0.093219 +0.502044 1.076638 0.094194 +0.478408 1.087266 0.095123 +0.454549 1.097378 0.096008 +0.430477 1.106969 0.096847 +0.406204 1.116035 0.097640 +0.381741 1.124572 0.098387 +0.357100 1.132577 0.099088 +0.332293 1.140045 0.099741 +0.307331 1.146973 0.100347 +0.282225 1.153359 0.100906 +0.256988 1.159199 0.101417 +0.231631 1.164490 0.101880 +0.206167 1.169231 0.102294 +0.180606 1.173419 0.102661 +0.154962 1.177052 0.102979 +0.129245 1.180129 0.103248 +0.103468 1.182649 0.103468 +0.077643 1.184610 0.103640 +0.051782 1.186011 0.103762 +0.025897 1.186852 0.103836 +0.000000 1.187132 0.103861 +1.189115 0.000000 0.077939 +1.188833 0.025940 0.077920 +1.187988 0.051869 0.077865 +1.186580 0.077773 0.077773 +1.184610 0.103640 0.077643 +1.182077 0.129459 0.077477 +1.178985 0.155216 0.077275 +1.175334 0.180901 0.077035 +1.171125 0.206501 0.076760 +1.166362 0.232004 0.076447 +1.161045 0.257397 0.076099 +1.155177 0.282670 0.075714 +1.148762 0.307810 0.075294 +1.141801 0.332805 0.074838 +1.134299 0.357643 0.074346 +1.126258 0.382313 0.073819 +1.117682 0.406803 0.073257 +1.108576 0.431102 0.072660 +1.098943 0.455197 0.072029 +1.088789 0.479078 0.071363 +1.078116 0.502734 0.070663 +1.066932 0.526152 0.069930 +1.055239 0.549323 0.069164 +1.043045 0.572234 0.068365 +1.030355 0.594876 0.067533 +1.017174 0.617237 0.066669 +1.003509 0.639306 0.065773 +0.989367 0.661074 0.064847 +0.974752 0.682529 0.063889 +0.959673 0.703662 0.062900 +0.944137 0.724462 0.061882 +0.928151 0.744920 0.060834 +0.911721 0.765025 0.059757 +0.894857 0.784768 0.058652 +0.877565 0.804140 0.057519 +0.859854 0.823131 0.056358 +0.841732 0.841732 0.055170 +0.823131 0.859854 0.056358 +0.804140 0.877565 0.057519 +0.784768 0.894857 0.058652 +0.765025 0.911721 0.059757 +0.744920 0.928151 0.060834 +0.724462 0.944137 0.061882 +0.703662 0.959673 0.062900 +0.682529 0.974752 0.063889 +0.661074 0.989367 0.064847 +0.639306 1.003509 0.065773 +0.617237 1.017174 0.066669 +0.594876 1.030355 0.067533 +0.572234 1.043045 0.068365 +0.549323 1.055239 0.069164 +0.526152 1.066932 0.069930 +0.502734 1.078116 0.070663 +0.479078 1.088789 0.071363 +0.455197 1.098943 0.072029 +0.431102 1.108576 0.072660 +0.406803 1.117682 0.073257 +0.382313 1.126258 0.073819 +0.357643 1.134299 0.074346 +0.332805 1.141801 0.074838 +0.307810 1.148762 0.075294 +0.282670 1.155177 0.075714 +0.257397 1.161045 0.076099 +0.232004 1.166362 0.076447 +0.206501 1.171125 0.076760 +0.180901 1.175334 0.077035 +0.155216 1.178985 0.077275 +0.129459 1.182077 0.077477 +0.103640 1.184610 0.077643 +0.077773 1.186580 0.077773 +0.051869 1.187988 0.077865 +0.025940 1.188833 0.077920 +0.000000 1.189115 0.077939 +1.190532 0.000000 0.051980 +1.190250 0.025971 0.051967 +1.189401 0.051930 0.051930 +1.187988 0.077865 0.051869 +1.186011 0.103762 0.051782 +1.183470 0.129611 0.051671 +1.180366 0.155398 0.051536 +1.176702 0.181112 0.051376 +1.172479 0.206740 0.051192 +1.167699 0.232270 0.050983 +1.162364 0.257690 0.050750 +1.156476 0.282988 0.050493 +1.150039 0.308152 0.050212 +1.143056 0.333170 0.049907 +1.135529 0.358031 0.049578 +1.127462 0.382722 0.049226 +1.118859 0.407231 0.048850 +1.109724 0.431548 0.048452 +1.100062 0.455661 0.048030 +1.089876 0.479557 0.047585 +1.079172 0.503226 0.047118 +1.067955 0.526657 0.046628 +1.056229 0.549838 0.046116 +1.044001 0.572759 0.045582 +1.031277 0.595408 0.045027 +1.018061 0.617775 0.044450 +1.004361 0.639848 0.043851 +0.990182 0.661619 0.043232 +0.975532 0.683075 0.042593 +0.960418 0.704208 0.041933 +0.944846 0.725006 0.041253 +0.928824 0.745460 0.040553 +0.912359 0.765560 0.039834 +0.895460 0.785297 0.039097 +0.878134 0.804662 0.038340 +0.860389 0.823644 0.037565 +0.842234 0.842234 0.036773 +0.823644 0.860389 0.037565 +0.804662 0.878134 0.038340 +0.785297 0.895460 0.039097 +0.765560 0.912359 0.039834 +0.745460 0.928824 0.040553 +0.725006 0.944846 0.041253 +0.704208 0.960418 0.041933 +0.683075 0.975532 0.042593 +0.661619 0.990182 0.043232 +0.639848 1.004361 0.043851 +0.617775 1.018061 0.044450 +0.595408 1.031277 0.045027 +0.572759 1.044001 0.045582 +0.549838 1.056229 0.046116 +0.526657 1.067955 0.046628 +0.503226 1.079172 0.047118 +0.479557 1.089876 0.047585 +0.455661 1.100062 0.048030 +0.431548 1.109724 0.048452 +0.407231 1.118859 0.048850 +0.382722 1.127462 0.049226 +0.358031 1.135529 0.049578 +0.333170 1.143056 0.049907 +0.308152 1.150039 0.050212 +0.282988 1.156476 0.050493 +0.257690 1.162364 0.050750 +0.232270 1.167699 0.050983 +0.206740 1.172479 0.051192 +0.181112 1.176702 0.051376 +0.155398 1.180366 0.051536 +0.129611 1.183470 0.051671 +0.103762 1.186011 0.051782 +0.077865 1.187988 0.051869 +0.051930 1.189401 0.051930 +0.025971 1.190250 0.051967 +0.000000 1.190532 0.051980 +1.191383 0.000000 0.025996 +1.191100 0.025990 0.025990 +1.190250 0.051967 0.025971 +1.188833 0.077920 0.025940 +1.186852 0.103836 0.025897 +1.184305 0.129703 0.025842 +1.181195 0.155507 0.025774 +1.177524 0.181238 0.025694 +1.173292 0.206883 0.025601 +1.168502 0.232429 0.025497 +1.163156 0.257865 0.025380 +1.157256 0.283179 0.025251 +1.150806 0.308358 0.025111 +1.143808 0.333390 0.024958 +1.136267 0.358264 0.024793 +1.128184 0.382967 0.024617 +1.119565 0.407488 0.024429 +1.110413 0.431816 0.024229 +1.100733 0.455938 0.024018 +1.090529 0.479844 0.023795 +1.079806 0.503522 0.023561 +1.068569 0.526960 0.023316 +1.056823 0.550147 0.023060 +1.044575 0.573073 0.022793 +1.031829 0.595727 0.022515 +1.018593 0.618097 0.022226 +1.004871 0.640174 0.021926 +0.990672 0.661946 0.021617 +0.976000 0.683403 0.021296 +0.960864 0.704535 0.020966 +0.945271 0.725332 0.020626 +0.929228 0.745784 0.020276 +0.912742 0.765882 0.019916 +0.895822 0.785615 0.019547 +0.878475 0.804974 0.019168 +0.860710 0.823951 0.018781 +0.842535 0.842535 0.018384 +0.823951 0.860710 0.018781 +0.804974 0.878475 0.019168 +0.785615 0.895822 0.019547 +0.765882 0.912742 0.019916 +0.745784 0.929228 0.020276 +0.725332 0.945271 0.020626 +0.704535 0.960864 0.020966 +0.683403 0.976000 0.021296 +0.661946 0.990672 0.021617 +0.640174 1.004871 0.021926 +0.618097 1.018593 0.022226 +0.595727 1.031829 0.022515 +0.573073 1.044575 0.022793 +0.550147 1.056823 0.023060 +0.526960 1.068569 0.023316 +0.503522 1.079806 0.023561 +0.479844 1.090529 0.023795 +0.455938 1.100733 0.024018 +0.431816 1.110413 0.024229 +0.407488 1.119565 0.024429 +0.382967 1.128184 0.024617 +0.358264 1.136267 0.024793 +0.333390 1.143808 0.024958 +0.308358 1.150806 0.025111 +0.283179 1.157256 0.025251 +0.257865 1.163156 0.025380 +0.232429 1.168502 0.025497 +0.206883 1.173292 0.025601 +0.181238 1.177524 0.025694 +0.155507 1.181195 0.025774 +0.129703 1.184305 0.025842 +0.103836 1.186852 0.025897 +0.077920 1.188833 0.025940 +0.051967 1.190250 0.025971 +0.025990 1.191100 0.025990 +0.000000 1.191383 0.025996 +1.191667 0.000000 0.000000 +1.191383 0.025996 0.000000 +1.190532 0.051980 0.000000 +1.189115 0.077939 0.000000 +1.187132 0.103861 0.000000 +1.184584 0.129733 0.000000 +1.181472 0.155544 0.000000 +1.177797 0.181280 0.000000 +1.173563 0.206931 0.000000 +1.168769 0.232483 0.000000 +1.163419 0.257924 0.000000 +1.157516 0.283242 0.000000 +1.151062 0.308426 0.000000 +1.144059 0.333463 0.000000 +1.136513 0.358341 0.000000 +1.128425 0.383049 0.000000 +1.119800 0.407574 0.000000 +1.110643 0.431905 0.000000 +1.100956 0.456031 0.000000 +1.090746 0.479940 0.000000 +1.080017 0.503620 0.000000 +1.068773 0.527061 0.000000 +1.057021 0.550250 0.000000 +1.044766 0.573178 0.000000 +1.032014 0.595833 0.000000 +1.018770 0.618205 0.000000 +1.005041 0.640282 0.000000 +0.990835 0.662055 0.000000 +0.976156 0.683512 0.000000 +0.961013 0.704644 0.000000 +0.945413 0.725441 0.000000 +0.929362 0.745892 0.000000 +0.912870 0.765989 0.000000 +0.895942 0.785720 0.000000 +0.878589 0.805078 0.000000 +0.860817 0.824053 0.000000 +0.842636 0.842636 0.000000 +0.824053 0.860817 0.000000 +0.805078 0.878589 0.000000 +0.785720 0.895942 0.000000 +0.765989 0.912870 0.000000 +0.745892 0.929362 0.000000 +0.725441 0.945413 0.000000 +0.704644 0.961013 0.000000 +0.683512 0.976156 0.000000 +0.662055 0.990835 0.000000 +0.640282 1.005041 0.000000 +0.618205 1.018770 0.000000 +0.595833 1.032014 0.000000 +0.573178 1.044766 0.000000 +0.550250 1.057021 0.000000 +0.527061 1.068773 0.000000 +0.503620 1.080017 0.000000 +0.479940 1.090746 0.000000 +0.456031 1.100956 0.000000 +0.431905 1.110643 0.000000 +0.407574 1.119800 0.000000 +0.383049 1.128425 0.000000 +0.358341 1.136513 0.000000 +0.333463 1.144059 0.000000 +0.308426 1.151062 0.000000 +0.283242 1.157516 0.000000 +0.257924 1.163419 0.000000 +0.232483 1.168769 0.000000 +0.206931 1.173563 0.000000 +0.181280 1.177797 0.000000 +0.155544 1.181472 0.000000 +0.129733 1.184584 0.000000 +0.103861 1.187132 0.000000 +0.077939 1.189115 0.000000 +0.051980 1.190532 0.000000 +0.025996 1.191383 0.000000 +0.000000 1.191667 0.000000 +0.000000 0.000000 1.250000 +0.027269 0.000000 1.249703 +0.027262 0.027262 1.249405 +0.000000 0.027269 1.249703 +0.054524 0.000000 1.248810 +0.054511 0.027243 1.248514 +0.054472 0.054472 1.247624 +0.027243 0.054511 1.248514 +0.000000 0.054524 1.248810 +0.081754 0.000000 1.247324 +0.081735 0.027210 1.247028 +0.081676 0.054408 1.246142 +0.081580 0.081580 1.244664 +0.054408 0.081676 1.246142 +0.027210 0.081735 1.247028 +0.000000 0.081754 1.247324 +0.108945 0.000000 1.245243 +0.108919 0.027165 1.244949 +0.108842 0.054317 1.244067 +0.108713 0.081444 1.242597 +0.108533 0.108533 1.240541 +0.081444 0.108713 1.242597 +0.054317 0.108842 1.244067 +0.027165 0.108919 1.244949 +0.000000 0.108945 1.245243 +0.136084 0.000000 1.242570 +0.136052 0.027107 1.242278 +0.135956 0.054201 1.241402 +0.135796 0.081270 1.239941 +0.135572 0.108302 1.237898 +0.135284 0.135284 1.235272 +0.108302 0.135572 1.237898 +0.081270 0.135796 1.239941 +0.054201 0.135956 1.241402 +0.027107 0.136052 1.242278 +0.000000 0.136084 1.242570 +0.163158 0.000000 1.239306 +0.163120 0.027035 1.239016 +0.163005 0.054059 1.238147 +0.162814 0.081057 1.236698 +0.162547 0.108020 1.234670 +0.162204 0.134933 1.232064 +0.161785 0.161785 1.228882 +0.134933 0.162204 1.232064 +0.108020 0.162547 1.234670 +0.081057 0.162814 1.236698 +0.054059 0.163005 1.238147 +0.027035 0.163120 1.239016 +0.000000 0.163158 1.239306 +0.190154 0.000000 1.235452 +0.190110 0.026951 1.235165 +0.189977 0.053891 1.234303 +0.189756 0.080806 1.232868 +0.189447 0.107686 1.230859 +0.189050 0.134518 1.228277 +0.188565 0.161291 1.225124 +0.187991 0.187991 1.221400 +0.161291 0.188565 1.225124 +0.134518 0.189050 1.228277 +0.107686 0.189447 1.230859 +0.080806 0.189756 1.232868 +0.053891 0.189977 1.234303 +0.026951 0.190110 1.235165 +0.000000 0.190154 1.235452 +0.217060 0.000000 1.231010 +0.217010 0.026855 1.230726 +0.216860 0.053697 1.229873 +0.216609 0.080517 1.228453 +0.216259 0.107302 1.226466 +0.215809 0.134040 1.223912 +0.215259 0.160720 1.220792 +0.214609 0.187331 1.217107 +0.213860 0.213860 1.212859 +0.187331 0.214609 1.217107 +0.160720 0.215259 1.220792 +0.134040 0.215809 1.223912 +0.107302 0.216259 1.226466 +0.080517 0.216609 1.228453 +0.053697 0.216860 1.229873 +0.026855 0.217010 1.230726 +0.000000 0.217060 1.231010 +0.243863 0.000000 1.225982 +0.243807 0.026745 1.225701 +0.243640 0.053479 1.224859 +0.243361 0.080190 1.223456 +0.242970 0.106867 1.221493 +0.242468 0.133499 1.218970 +0.241855 0.160075 1.215887 +0.241131 0.186583 1.212247 +0.240296 0.213012 1.208050 +0.239351 0.239351 1.203297 +0.213012 0.240296 1.208050 +0.186583 0.241131 1.212247 +0.160075 0.241855 1.215887 +0.133499 0.242468 1.218970 +0.106867 0.242970 1.221493 +0.080190 0.243361 1.223456 +0.053479 0.243640 1.224859 +0.026745 0.243807 1.225701 +0.000000 0.243863 1.225982 +0.270550 0.000000 1.220370 +0.270488 0.026623 1.220093 +0.270304 0.053234 1.219263 +0.269997 0.079824 1.217879 +0.269568 0.106381 1.215942 +0.269016 0.132895 1.213453 +0.268342 0.159354 1.210413 +0.267546 0.185748 1.206821 +0.266628 0.212065 1.202680 +0.265588 0.238295 1.197989 +0.264427 0.264427 1.192752 +0.238295 0.265588 1.197989 +0.212065 0.266628 1.202680 +0.185748 0.267546 1.206821 +0.159354 0.268342 1.210413 +0.132895 0.269016 1.213453 +0.106381 0.269568 1.215942 +0.079824 0.269997 1.217879 +0.053234 0.270304 1.219263 +0.026623 0.270488 1.220093 +0.000000 0.270550 1.220370 +0.297107 0.000000 1.214178 +0.297041 0.026488 1.213905 +0.296841 0.052965 1.213087 +0.296507 0.079421 1.211724 +0.296040 0.105845 1.209817 +0.295440 0.132228 1.207365 +0.294707 0.158558 1.204370 +0.293842 0.184826 1.200832 +0.292843 0.211020 1.196751 +0.291712 0.237129 1.192130 +0.290449 0.263145 1.186968 +0.289055 0.289055 1.181268 +0.263145 0.290449 1.186968 +0.237129 0.291712 1.192130 +0.211020 0.292843 1.196751 +0.184826 0.293842 1.200832 +0.158558 0.294707 1.204370 +0.132228 0.295440 1.207365 +0.105845 0.296040 1.209817 +0.079421 0.296507 1.211724 +0.052965 0.296841 1.213087 +0.026488 0.297041 1.213905 +0.000000 0.297107 1.214178 +0.323524 0.000000 1.207407 +0.323452 0.026340 1.207139 +0.323236 0.052670 1.206335 +0.322877 0.078980 1.204995 +0.322375 0.105259 1.203119 +0.321729 0.131499 1.200708 +0.320939 0.157688 1.197761 +0.320007 0.183817 1.194281 +0.318931 0.209876 1.190267 +0.317713 0.235854 1.185720 +0.316352 0.261742 1.180641 +0.314849 0.287528 1.175031 +0.313204 0.313204 1.168891 +0.287528 0.314849 1.175031 +0.261742 0.316352 1.180641 +0.235854 0.317713 1.185720 +0.209876 0.318931 1.190267 +0.183817 0.320007 1.194281 +0.157688 0.320939 1.197761 +0.131499 0.321729 1.200708 +0.105259 0.322375 1.203119 +0.078980 0.322877 1.204995 +0.052670 0.323236 1.206335 +0.026340 0.323452 1.207139 +0.000000 0.323524 1.207407 +0.349786 0.000000 1.200062 +0.349710 0.026180 1.199799 +0.349479 0.052350 1.199009 +0.349096 0.078501 1.197693 +0.348559 0.104623 1.195851 +0.347869 0.130708 1.193483 +0.347025 0.156744 1.190590 +0.346029 0.182723 1.187172 +0.344880 0.208635 1.183228 +0.343578 0.234470 1.178761 +0.342123 0.260219 1.173771 +0.340516 0.285871 1.168258 +0.338757 0.311417 1.162223 +0.336847 0.336847 1.155668 +0.311417 0.338757 1.162223 +0.285871 0.340516 1.168258 +0.260219 0.342123 1.173771 +0.234470 0.343578 1.178761 +0.208635 0.344880 1.183228 +0.182723 0.346029 1.187172 +0.156744 0.347025 1.190590 +0.130708 0.347869 1.193483 +0.104623 0.348559 1.195851 +0.078501 0.349096 1.197693 +0.052350 0.349479 1.199009 +0.026180 0.349710 1.199799 +0.000000 0.349786 1.200062 +0.375882 0.000000 1.192146 +0.375801 0.026007 1.191888 +0.375557 0.052005 1.191114 +0.375150 0.077985 1.189824 +0.374581 0.103938 1.188018 +0.373849 0.129855 1.185696 +0.372954 0.155726 1.182859 +0.371897 0.181543 1.179506 +0.370677 0.207297 1.175639 +0.369296 0.232977 1.171257 +0.367752 0.258576 1.166361 +0.366046 0.284083 1.160951 +0.364179 0.309489 1.155028 +0.362150 0.334784 1.148593 +0.359960 0.359960 1.141647 +0.334784 0.362150 1.148593 +0.309489 0.364179 1.155028 +0.284083 0.366046 1.160951 +0.258576 0.367752 1.166361 +0.232977 0.369296 1.171257 +0.207297 0.370677 1.175639 +0.181543 0.371897 1.179506 +0.155726 0.372954 1.182859 +0.129855 0.373849 1.185696 +0.103938 0.374581 1.188018 +0.077985 0.375150 1.189824 +0.052005 0.375557 1.191114 +0.026007 0.375801 1.191888 +0.000000 0.375882 1.192146 +0.401799 0.000000 1.183663 +0.401714 0.025822 1.183410 +0.401456 0.051636 1.182652 +0.401028 0.077432 1.181389 +0.400428 0.103204 1.179621 +0.399656 0.128941 1.177348 +0.398713 0.154635 1.174571 +0.397599 0.180278 1.171288 +0.396313 0.205862 1.167500 +0.394856 0.231377 1.163208 +0.393228 0.256814 1.158412 +0.391429 0.282165 1.153112 +0.389458 0.307420 1.147308 +0.387317 0.332571 1.141000 +0.385006 0.357609 1.134190 +0.382523 0.382523 1.126877 +0.357609 0.385006 1.134190 +0.332571 0.387317 1.141000 +0.307420 0.389458 1.147308 +0.282165 0.391429 1.153112 +0.256814 0.393228 1.158412 +0.231377 0.394856 1.163208 +0.205862 0.396313 1.167500 +0.180278 0.397599 1.171288 +0.154635 0.398713 1.174571 +0.128941 0.399656 1.177348 +0.103204 0.400428 1.179621 +0.077432 0.401028 1.181389 +0.051636 0.401456 1.182652 +0.025822 0.401714 1.183410 +0.000000 0.401799 1.183663 +0.427525 0.000000 1.174616 +0.427435 0.025625 1.174369 +0.427166 0.051242 1.173628 +0.426717 0.076843 1.172394 +0.426088 0.102420 1.170666 +0.425279 0.127965 1.168445 +0.424291 0.153471 1.165729 +0.423123 0.178929 1.162520 +0.421775 0.204331 1.158816 +0.420247 0.229668 1.154619 +0.418539 0.254933 1.149928 +0.416652 0.280117 1.144743 +0.414585 0.305211 1.139063 +0.412338 0.330207 1.132890 +0.409912 0.355097 1.126223 +0.407305 0.379871 1.119062 +0.404519 0.404519 1.111408 +0.379871 0.407305 1.119062 +0.355097 0.409912 1.126223 +0.330207 0.412338 1.132890 +0.305211 0.414585 1.139063 +0.280117 0.416652 1.144743 +0.254933 0.418539 1.149928 +0.229668 0.420247 1.154619 +0.204331 0.421775 1.158816 +0.178929 0.423123 1.162520 +0.153471 0.424291 1.165729 +0.127965 0.425279 1.168445 +0.102420 0.426088 1.170666 +0.076843 0.426717 1.172394 +0.051242 0.427166 1.173628 +0.025625 0.427435 1.174369 +0.000000 0.427525 1.174616 +0.453048 0.000000 1.165010 +0.452954 0.025415 1.164769 +0.452673 0.050823 1.164046 +0.452205 0.076217 1.162842 +0.451549 0.101588 1.161156 +0.450706 0.126930 1.158988 +0.449675 0.152235 1.156338 +0.448457 0.177495 1.153205 +0.447051 0.202704 1.149590 +0.445457 0.227852 1.145492 +0.443676 0.252934 1.140910 +0.441706 0.277940 1.135846 +0.439549 0.302862 1.130297 +0.437203 0.327693 1.124265 +0.434668 0.352425 1.117748 +0.431946 0.377048 1.110747 +0.429035 0.401554 1.103261 +0.425935 0.425935 1.095290 +0.401554 0.429035 1.103261 +0.377048 0.431946 1.110747 +0.352425 0.434668 1.117748 +0.327693 0.437203 1.124265 +0.302862 0.439549 1.130297 +0.277940 0.441706 1.135846 +0.252934 0.443676 1.140910 +0.227852 0.445457 1.145492 +0.202704 0.447051 1.149590 +0.177495 0.448457 1.153205 +0.152235 0.449675 1.156338 +0.126930 0.450706 1.158988 +0.101588 0.451549 1.161156 +0.076217 0.452205 1.162842 +0.050823 0.452673 1.164046 +0.025415 0.452954 1.164769 +0.000000 0.453048 1.165010 +0.478354 0.000000 1.154849 +0.478257 0.025194 1.154615 +0.477966 0.050381 1.153911 +0.477480 0.075554 1.152738 +0.476799 0.100708 1.151095 +0.475924 0.125834 1.148983 +0.474855 0.150926 1.146401 +0.473590 0.175978 1.143348 +0.472131 0.200982 1.139824 +0.470476 0.225930 1.135829 +0.468626 0.250817 1.131362 +0.466580 0.275634 1.126423 +0.464338 0.300374 1.121011 +0.461900 0.325029 1.115125 +0.459266 0.349592 1.108765 +0.456434 0.374055 1.101930 +0.453406 0.398409 1.094620 +0.450181 0.422646 1.086833 +0.446758 0.446758 1.078570 +0.422646 0.450181 1.086833 +0.398409 0.453406 1.094620 +0.374055 0.456434 1.101930 +0.349592 0.459266 1.108765 +0.325029 0.461900 1.115125 +0.300374 0.464338 1.121011 +0.275634 0.466580 1.126423 +0.250817 0.468626 1.131362 +0.225930 0.470476 1.135829 +0.200982 0.472131 1.139824 +0.175978 0.473590 1.143348 +0.150926 0.474855 1.146401 +0.125834 0.475924 1.148983 +0.100708 0.476799 1.151095 +0.075554 0.477480 1.152738 +0.050381 0.477966 1.153911 +0.025194 0.478257 1.154615 +0.000000 0.478354 1.154849 +0.503433 0.000000 1.144139 +0.503333 0.024960 1.143911 +0.503032 0.049914 1.143227 +0.502530 0.074856 1.142086 +0.501827 0.099780 1.140488 +0.500923 0.124679 1.138434 +0.499818 0.149547 1.135922 +0.498511 0.174378 1.132952 +0.497002 0.199165 1.129523 +0.495291 0.223903 1.125635 +0.493378 0.248583 1.121287 +0.491262 0.273200 1.116478 +0.488943 0.297747 1.111207 +0.486420 0.322216 1.105474 +0.483693 0.346601 1.099277 +0.480762 0.370893 1.092615 +0.477626 0.395085 1.085487 +0.474284 0.419169 1.077892 +0.470736 0.443138 1.069830 +0.466983 0.466983 1.061299 +0.443138 0.470736 1.069830 +0.419169 0.474284 1.077892 +0.395085 0.477626 1.085487 +0.370893 0.480762 1.092615 +0.346601 0.483693 1.099277 +0.322216 0.486420 1.105474 +0.297747 0.488943 1.111207 +0.273200 0.491262 1.116478 +0.248583 0.493378 1.121287 +0.223903 0.495291 1.125635 +0.199165 0.497002 1.129523 +0.174378 0.498511 1.132952 +0.149547 0.499818 1.135922 +0.124679 0.500923 1.138434 +0.099780 0.501827 1.140488 +0.074856 0.502530 1.142086 +0.049914 0.503032 1.143227 +0.024960 0.503333 1.143911 +0.000000 0.503433 1.144139 +0.528273 0.000000 1.132885 +0.528170 0.024715 1.132663 +0.527860 0.049424 1.131999 +0.527343 0.074123 1.130891 +0.526620 0.098804 1.129340 +0.525690 0.123464 1.127345 +0.524552 0.148097 1.124906 +0.523207 0.172696 1.122021 +0.521654 0.197255 1.118690 +0.519892 0.221770 1.114913 +0.517922 0.246233 1.110687 +0.515742 0.270640 1.106013 +0.513353 0.294982 1.100888 +0.510752 0.319254 1.095312 +0.507941 0.343450 1.089283 +0.504918 0.367561 1.082800 +0.501683 0.391582 1.075862 +0.498234 0.415504 1.068466 +0.494571 0.439320 1.060612 +0.490694 0.463022 1.052297 +0.486602 0.486602 1.043521 +0.463022 0.490694 1.052297 +0.439320 0.494571 1.060612 +0.415504 0.498234 1.068466 +0.391582 0.501683 1.075862 +0.367561 0.504918 1.082800 +0.343450 0.507941 1.089283 +0.319254 0.510752 1.095312 +0.294982 0.513353 1.100888 +0.270640 0.515742 1.106013 +0.246233 0.517922 1.110687 +0.221770 0.519892 1.114913 +0.197255 0.521654 1.118690 +0.172696 0.523207 1.122021 +0.148097 0.524552 1.124906 +0.123464 0.525690 1.127345 +0.098804 0.526620 1.129340 +0.074123 0.527343 1.130891 +0.049424 0.527860 1.131999 +0.024715 0.528170 1.132663 +0.000000 0.528273 1.132885 +0.552861 0.000000 1.121091 +0.552755 0.024458 1.120876 +0.552437 0.048910 1.120232 +0.551908 0.073354 1.119159 +0.551167 0.097782 1.117656 +0.550213 0.122191 1.115722 +0.549047 0.146576 1.113357 +0.547667 0.170931 1.110560 +0.546075 0.195252 1.107330 +0.544268 0.219533 1.103666 +0.542246 0.243768 1.099566 +0.540009 0.267952 1.095030 +0.537556 0.292080 1.090056 +0.534886 0.316144 1.084642 +0.531999 0.340140 1.078787 +0.528893 0.364061 1.072489 +0.525567 0.387900 1.065745 +0.522021 0.411649 1.058555 +0.518254 0.435303 1.050916 +0.514265 0.458854 1.042825 +0.510052 0.482294 1.034282 +0.505614 0.505614 1.025284 +0.482294 0.510052 1.034282 +0.458854 0.514265 1.042825 +0.435303 0.518254 1.050916 +0.411649 0.522021 1.058555 +0.387900 0.525567 1.065745 +0.364061 0.528893 1.072489 +0.340140 0.531999 1.078787 +0.316144 0.534886 1.084642 +0.292080 0.537556 1.090056 +0.267952 0.540009 1.095030 +0.243768 0.542246 1.099566 +0.219533 0.544268 1.103666 +0.195252 0.546075 1.107330 +0.170931 0.547667 1.110560 +0.146576 0.549047 1.113357 +0.122191 0.550213 1.115722 +0.097782 0.551167 1.117656 +0.073354 0.551908 1.119159 +0.048910 0.552437 1.120232 +0.024458 0.552755 1.120876 +0.000000 0.552861 1.121091 +0.577186 0.000000 1.108764 +0.577078 0.024189 1.108556 +0.576753 0.048373 1.107933 +0.576213 0.072550 1.106894 +0.575456 0.096713 1.105440 +0.574481 0.120860 1.103569 +0.573290 0.144986 1.101280 +0.571881 0.169087 1.098573 +0.570253 0.193157 1.095446 +0.568406 0.217192 1.091898 +0.566340 0.241188 1.087928 +0.564052 0.265139 1.083534 +0.561543 0.289041 1.078714 +0.558812 0.312887 1.073467 +0.555856 0.336673 1.067790 +0.552676 0.360392 1.061681 +0.549270 0.384039 1.055138 +0.545637 0.407607 1.048159 +0.541775 0.431089 1.040741 +0.537684 0.454479 1.032882 +0.533362 0.477769 1.024579 +0.528807 0.500952 1.015830 +0.524019 0.524019 1.006632 +0.500952 0.528807 1.015830 +0.477769 0.533362 1.024579 +0.454479 0.537684 1.032882 +0.431089 0.541775 1.040741 +0.407607 0.545637 1.048159 +0.384039 0.549270 1.055138 +0.360392 0.552676 1.061681 +0.336673 0.555856 1.067790 +0.312887 0.558812 1.073467 +0.289041 0.561543 1.078714 +0.265139 0.564052 1.083534 +0.241188 0.566340 1.087928 +0.217192 0.568406 1.091898 +0.193157 0.570253 1.095446 +0.169087 0.571881 1.098573 +0.144986 0.573290 1.101280 +0.120860 0.574481 1.103569 +0.096713 0.575456 1.105440 +0.072550 0.576213 1.106894 +0.048373 0.576753 1.107933 +0.024189 0.577078 1.108556 +0.000000 0.577186 1.108764 +0.601236 0.000000 1.095908 +0.601126 0.023908 1.095708 +0.600796 0.047813 1.095106 +0.600246 0.071711 1.094104 +0.599475 0.095599 1.092699 +0.598483 0.119472 1.090891 +0.597271 0.143328 1.088680 +0.595836 0.167161 1.086065 +0.594178 0.190970 1.083043 +0.592297 0.214749 1.079615 +0.590191 0.238494 1.075776 +0.587860 0.262201 1.071527 +0.585302 0.285866 1.066865 +0.582517 0.309483 1.061788 +0.579502 0.333048 1.056293 +0.576257 0.356556 1.050379 +0.572781 0.380000 1.044041 +0.569071 0.403376 1.037279 +0.565125 0.426676 1.030088 +0.560944 0.449896 1.022466 +0.556524 0.473027 1.014409 +0.551864 0.496063 1.005916 +0.546963 0.518996 0.996982 +0.541819 0.541819 0.987605 +0.518996 0.546963 0.996982 +0.496063 0.551864 1.005916 +0.473027 0.556524 1.014409 +0.449896 0.560944 1.022466 +0.426676 0.565125 1.030088 +0.403376 0.569071 1.037279 +0.380000 0.572781 1.044041 +0.356556 0.576257 1.050379 +0.333048 0.579502 1.056293 +0.309483 0.582517 1.061788 +0.285866 0.585302 1.066865 +0.262201 0.587860 1.071527 +0.238494 0.590191 1.075776 +0.214749 0.592297 1.079615 +0.190970 0.594178 1.083043 +0.167161 0.595836 1.086065 +0.143328 0.597271 1.088680 +0.119472 0.598483 1.090891 +0.095599 0.599475 1.092699 +0.071711 0.600246 1.094104 +0.047813 0.600796 1.095106 +0.023908 0.601126 1.095708 +0.000000 0.601236 1.095908 +0.625000 0.000000 1.082532 +0.624888 0.023617 1.082339 +0.624554 0.047231 1.081759 +0.623996 0.070839 1.080792 +0.623214 0.094439 1.079438 +0.622208 0.118027 1.077695 +0.620977 0.141601 1.075564 +0.619521 0.165157 1.073041 +0.617838 0.188692 1.070127 +0.615928 0.212203 1.066819 +0.613790 0.235687 1.063115 +0.611422 0.259139 1.059014 +0.608823 0.282556 1.054513 +0.605992 0.305933 1.049609 +0.602927 0.329267 1.044300 +0.599626 0.352552 1.038583 +0.596089 0.375783 1.032456 +0.592312 0.398956 1.025914 +0.588294 0.422065 1.018956 +0.584034 0.445104 1.011576 +0.579529 0.468067 1.003773 +0.574776 0.490947 0.995542 +0.569775 0.513737 0.986879 +0.564523 0.536430 0.977782 +0.559017 0.559017 0.968246 +0.536430 0.564523 0.977782 +0.513737 0.569775 0.986879 +0.490947 0.574776 0.995542 +0.468067 0.579529 1.003773 +0.445104 0.584034 1.011576 +0.422065 0.588294 1.018956 +0.398956 0.592312 1.025914 +0.375783 0.596089 1.032456 +0.352552 0.599626 1.038583 +0.329267 0.602927 1.044300 +0.305933 0.605992 1.049609 +0.282556 0.608823 1.054513 +0.259139 0.611422 1.059014 +0.235687 0.613790 1.063115 +0.212203 0.615928 1.066819 +0.188692 0.617838 1.070127 +0.165157 0.619521 1.073041 +0.141601 0.620977 1.075564 +0.118027 0.622208 1.077695 +0.094439 0.623214 1.079438 +0.070839 0.623996 1.080792 +0.047231 0.624554 1.081759 +0.023617 0.624888 1.082339 +0.000000 0.625000 1.082532 +0.648467 0.000000 1.068640 +0.648354 0.023314 1.068454 +0.648015 0.046625 1.067896 +0.647451 0.069933 1.066966 +0.646660 0.093233 1.065663 +0.645643 0.116525 1.063986 +0.644398 0.139806 1.061935 +0.642925 0.163074 1.059507 +0.641222 0.186325 1.056701 +0.639289 0.209557 1.053516 +0.637124 0.232768 1.049948 +0.634727 0.255954 1.045997 +0.632094 0.279112 1.041659 +0.629226 0.302238 1.036932 +0.626119 0.325329 1.031812 +0.622772 0.348381 1.026297 +0.619184 0.371389 1.020383 +0.615351 0.394349 1.014067 +0.611272 0.417256 1.007345 +0.606944 0.440104 1.000213 +0.602366 0.462889 0.992668 +0.597534 0.485603 0.984705 +0.592445 0.508240 0.976320 +0.587099 0.530794 0.967509 +0.581491 0.553256 0.958267 +0.575619 0.575619 0.948591 +0.553256 0.581491 0.958267 +0.530794 0.587099 0.967509 +0.508240 0.592445 0.976320 +0.485603 0.597534 0.984705 +0.462889 0.602366 0.992668 +0.440104 0.606944 1.000213 +0.417256 0.611272 1.007345 +0.394349 0.615351 1.014067 +0.371389 0.619184 1.020383 +0.348381 0.622772 1.026297 +0.325329 0.626119 1.031812 +0.302238 0.629226 1.036932 +0.279112 0.632094 1.041659 +0.255954 0.634727 1.045997 +0.232768 0.637124 1.049948 +0.209557 0.639289 1.053516 +0.186325 0.641222 1.056701 +0.163074 0.642925 1.059507 +0.139806 0.644398 1.061935 +0.116525 0.645643 1.063986 +0.093233 0.646660 1.065663 +0.069933 0.647451 1.066966 +0.046625 0.648015 1.067896 +0.023314 0.648354 1.068454 +0.000000 0.648467 1.068640 +0.671625 0.000000 1.054239 +0.671511 0.023000 1.054061 +0.671170 0.045998 1.053525 +0.670601 0.068993 1.052632 +0.669804 0.091984 1.051381 +0.668778 0.114969 1.049771 +0.667522 0.137945 1.047800 +0.666036 0.160913 1.045468 +0.664319 0.183869 1.042772 +0.662368 0.206811 1.039710 +0.660184 0.229738 1.036281 +0.657763 0.252647 1.032481 +0.655105 0.275534 1.028309 +0.652207 0.298399 1.023760 +0.649068 0.321236 1.018832 +0.645684 0.344044 1.013521 +0.642055 0.366818 1.007824 +0.638177 0.389554 1.001737 +0.634048 0.412249 0.995256 +0.629665 0.434896 0.988376 +0.625026 0.457491 0.981094 +0.620127 0.480030 0.973404 +0.614965 0.502504 0.965302 +0.609538 0.524909 0.956783 +0.603842 0.547237 0.947843 +0.597875 0.569481 0.938476 +0.591633 0.591633 0.928677 +0.569481 0.597875 0.938476 +0.547237 0.603842 0.947843 +0.524909 0.609538 0.956783 +0.502504 0.614965 0.965302 +0.480030 0.620127 0.973404 +0.457491 0.625026 0.981094 +0.434896 0.629665 0.988376 +0.412249 0.634048 0.995256 +0.389554 0.638177 1.001737 +0.366818 0.642055 1.007824 +0.344044 0.645684 1.013521 +0.321236 0.649068 1.018832 +0.298399 0.652207 1.023760 +0.275534 0.655105 1.028309 +0.252647 0.657763 1.032481 +0.229738 0.660184 1.036281 +0.206811 0.662368 1.039710 +0.183869 0.664319 1.042772 +0.160913 0.666036 1.045468 +0.137945 0.667522 1.047800 +0.114969 0.668778 1.049771 +0.091984 0.669804 1.051381 +0.068993 0.670601 1.052632 +0.045998 0.671170 1.053525 +0.023000 0.671511 1.054061 +0.000000 0.671625 1.054239 +0.694463 0.000000 1.039337 +0.694349 0.022675 1.039166 +0.694006 0.045349 1.038653 +0.693434 0.068021 1.037797 +0.692633 0.090691 1.036598 +0.691601 0.113357 1.035055 +0.690339 0.136019 1.033165 +0.688845 0.158675 1.030929 +0.687117 0.181325 1.028344 +0.685155 0.203966 1.025407 +0.682957 0.226598 1.022117 +0.680520 0.249218 1.018471 +0.677844 0.271825 1.014465 +0.674925 0.294416 1.010097 +0.671762 0.316990 1.005363 +0.668351 0.339542 1.000259 +0.664692 0.362071 0.994781 +0.660779 0.384572 0.988926 +0.656612 0.407043 0.982689 +0.652186 0.429479 0.976065 +0.647498 0.451875 0.969049 +0.642545 0.474227 0.961637 +0.637324 0.496529 0.953823 +0.631831 0.518775 0.945602 +0.626062 0.540959 0.936968 +0.620014 0.563074 0.927917 +0.613684 0.585112 0.918442 +0.607066 0.607066 0.908538 +0.585112 0.613684 0.918442 +0.563074 0.620014 0.927917 +0.540959 0.626062 0.936968 +0.518775 0.631831 0.945602 +0.496529 0.637324 0.953823 +0.474227 0.642545 0.961637 +0.451875 0.647498 0.969049 +0.429479 0.652186 0.976065 +0.407043 0.656612 0.982689 +0.384572 0.660779 0.988926 +0.362071 0.664692 0.994781 +0.339542 0.668351 1.000259 +0.316990 0.671762 1.005363 +0.294416 0.674925 1.010097 +0.271825 0.677844 1.014465 +0.249218 0.680520 1.018471 +0.226598 0.682957 1.022117 +0.203966 0.685155 1.025407 +0.181325 0.687117 1.028344 +0.158675 0.688845 1.030929 +0.136019 0.690339 1.033165 +0.113357 0.691601 1.035055 +0.090691 0.692633 1.036598 +0.068021 0.693434 1.037797 +0.045349 0.694006 1.038653 +0.022675 0.694349 1.039166 +0.000000 0.694463 1.039337 +0.716971 0.000000 1.023940 +0.716856 0.022339 1.023777 +0.716512 0.044678 1.023286 +0.715939 0.067016 1.022467 +0.715136 0.089354 1.021321 +0.714103 0.111691 1.019844 +0.712837 0.134027 1.018037 +0.711339 0.156362 1.015898 +0.709607 0.178694 1.013423 +0.707638 0.201023 1.010612 +0.705433 0.223349 1.007462 +0.702987 0.245670 1.003970 +0.700300 0.267985 1.000132 +0.697369 0.290292 0.995946 +0.694191 0.312589 0.991407 +0.690763 0.334876 0.986512 +0.687083 0.357148 0.981256 +0.683147 0.379404 0.975635 +0.678952 0.401640 0.969644 +0.674495 0.423853 0.963279 +0.669772 0.446039 0.956533 +0.664779 0.468193 0.949402 +0.659512 0.490312 0.941880 +0.653967 0.512389 0.933962 +0.648140 0.534419 0.925641 +0.642028 0.556395 0.916911 +0.635624 0.578311 0.907766 +0.628926 0.600158 0.898200 +0.621929 0.621929 0.888206 +0.600158 0.628926 0.898200 +0.578311 0.635624 0.907766 +0.556395 0.642028 0.916911 +0.534419 0.648140 0.925641 +0.512389 0.653967 0.933962 +0.490312 0.659512 0.941880 +0.468193 0.664779 0.949402 +0.446039 0.669772 0.956533 +0.423853 0.674495 0.963279 +0.401640 0.678952 0.969644 +0.379404 0.683147 0.975635 +0.357148 0.687083 0.981256 +0.334876 0.690763 0.986512 +0.312589 0.694191 0.991407 +0.290292 0.697369 0.995946 +0.267985 0.700300 1.000132 +0.245670 0.702987 1.003970 +0.223349 0.705433 1.007462 +0.201023 0.707638 1.010612 +0.178694 0.709607 1.013423 +0.156362 0.711339 1.015898 +0.134027 0.712837 1.018037 +0.111691 0.714103 1.019844 +0.089354 0.715136 1.021321 +0.067016 0.715939 1.022467 +0.044678 0.716512 1.023286 +0.022339 0.716856 1.023777 +0.000000 0.716971 1.023940 +0.739137 0.000000 1.008056 +0.739023 0.021992 1.007900 +0.738679 0.043985 1.007431 +0.738107 0.065979 1.006651 +0.737304 0.087975 1.005556 +0.736271 0.109972 1.004147 +0.735006 0.131971 1.002422 +0.733508 0.153973 1.000379 +0.731776 0.175977 0.998016 +0.729807 0.197984 0.995331 +0.727600 0.219992 0.992321 +0.725153 0.242003 0.988983 +0.722462 0.264014 0.985314 +0.719527 0.286026 0.981311 +0.716343 0.308037 0.976968 +0.712907 0.330045 0.972283 +0.709217 0.352050 0.967250 +0.705268 0.374049 0.961865 +0.701058 0.396039 0.956123 +0.696582 0.418018 0.950018 +0.691836 0.439982 0.943545 +0.686816 0.461929 0.936699 +0.681518 0.483853 0.929473 +0.675936 0.505750 0.921861 +0.670067 0.527615 0.913856 +0.663905 0.549442 0.905452 +0.657446 0.571224 0.896643 +0.650684 0.592955 0.887420 +0.643614 0.614627 0.877778 +0.636231 0.636231 0.867710 +0.614627 0.643614 0.877778 +0.592955 0.650684 0.887420 +0.571224 0.657446 0.896643 +0.549442 0.663905 0.905452 +0.527615 0.670067 0.913856 +0.505750 0.675936 0.921861 +0.483853 0.681518 0.929473 +0.461929 0.686816 0.936699 +0.439982 0.691836 0.943545 +0.418018 0.696582 0.950018 +0.396039 0.701058 0.956123 +0.374049 0.705268 0.961865 +0.352050 0.709217 0.967250 +0.330045 0.712907 0.972283 +0.308037 0.716343 0.976968 +0.286026 0.719527 0.981311 +0.264014 0.722462 0.985314 +0.242003 0.725153 0.988983 +0.219992 0.727600 0.992321 +0.197984 0.729807 0.995331 +0.175977 0.731776 0.998016 +0.153973 0.733508 1.000379 +0.131971 0.735006 1.002422 +0.109972 0.736271 1.004147 +0.087975 0.737304 1.005556 +0.065979 0.738107 1.006651 +0.043985 0.738679 1.007431 +0.021992 0.739023 1.007900 +0.000000 0.739137 1.008056 +0.760952 0.000000 0.991692 +0.760838 0.021636 0.991543 +0.760496 0.043272 0.991097 +0.759925 0.064911 0.990354 +0.759125 0.086554 0.989311 +0.758096 0.108200 0.987969 +0.756835 0.129852 0.986326 +0.755341 0.151511 0.984380 +0.753614 0.173176 0.982129 +0.751650 0.194848 0.979569 +0.749448 0.216529 0.976700 +0.747006 0.238218 0.973517 +0.744320 0.259915 0.970017 +0.741388 0.281620 0.966196 +0.738207 0.303333 0.962050 +0.734773 0.325053 0.957575 +0.731083 0.346778 0.952766 +0.727133 0.368508 0.947618 +0.722918 0.390241 0.942126 +0.718436 0.411975 0.936284 +0.713680 0.433706 0.930086 +0.708647 0.455433 0.923526 +0.703331 0.477151 0.916598 +0.697727 0.498857 0.909296 +0.691831 0.520545 0.901611 +0.685636 0.542212 0.893538 +0.679137 0.563851 0.885068 +0.672328 0.585455 0.876195 +0.665204 0.607017 0.866911 +0.657758 0.628530 0.857207 +0.649985 0.649985 0.847077 +0.628530 0.657758 0.857207 +0.607017 0.665204 0.866911 +0.585455 0.672328 0.876195 +0.563851 0.679137 0.885068 +0.542212 0.685636 0.893538 +0.520545 0.691831 0.901611 +0.498857 0.697727 0.909296 +0.477151 0.703331 0.916598 +0.455433 0.708647 0.923526 +0.433706 0.713680 0.930086 +0.411975 0.718436 0.936284 +0.390241 0.722918 0.942126 +0.368508 0.727133 0.947618 +0.346778 0.731083 0.952766 +0.325053 0.734773 0.957575 +0.303333 0.738207 0.962050 +0.281620 0.741388 0.966196 +0.259915 0.744320 0.970017 +0.238218 0.747006 0.973517 +0.216529 0.749448 0.976700 +0.194848 0.751650 0.979569 +0.173176 0.753614 0.982129 +0.151511 0.755341 0.984380 +0.129852 0.756835 0.986326 +0.108200 0.758096 0.987969 +0.086554 0.759125 0.989311 +0.064911 0.759925 0.990354 +0.043272 0.760496 0.991097 +0.021636 0.760838 0.991543 +0.000000 0.760952 0.991692 +0.782404 0.000000 0.974856 +0.782291 0.021268 0.974714 +0.781951 0.042538 0.974291 +0.781384 0.063812 0.973585 +0.780589 0.085091 0.972594 +0.779566 0.106377 0.971319 +0.778313 0.127671 0.969757 +0.776828 0.148975 0.967907 +0.775110 0.170291 0.965767 +0.773157 0.191619 0.963333 +0.770966 0.212961 0.960604 +0.768535 0.234317 0.957575 +0.765861 0.255689 0.954243 +0.762941 0.277076 0.950605 +0.759772 0.298479 0.946656 +0.756349 0.319899 0.942391 +0.752669 0.341334 0.937806 +0.748728 0.362783 0.932896 +0.744521 0.384247 0.927654 +0.740044 0.405723 0.922076 +0.735291 0.427210 0.916154 +0.730258 0.448705 0.909883 +0.724939 0.470205 0.903255 +0.719328 0.491708 0.896265 +0.713420 0.513208 0.888903 +0.707208 0.534703 0.881163 +0.700687 0.556186 0.873038 +0.693849 0.577652 0.864518 +0.686688 0.599095 0.855596 +0.679198 0.620506 0.846264 +0.671372 0.641878 0.836512 +0.663202 0.663202 0.826333 +0.641878 0.671372 0.836512 +0.620506 0.679198 0.846264 +0.599095 0.686688 0.855596 +0.577652 0.693849 0.864518 +0.556186 0.700687 0.873038 +0.534703 0.707208 0.881163 +0.513208 0.713420 0.888903 +0.491708 0.719328 0.896265 +0.470205 0.724939 0.903255 +0.448705 0.730258 0.909883 +0.427210 0.735291 0.916154 +0.405723 0.740044 0.922076 +0.384247 0.744521 0.927654 +0.362783 0.748728 0.932896 +0.341334 0.752669 0.937806 +0.319899 0.756349 0.942391 +0.298479 0.759772 0.946656 +0.277076 0.762941 0.950605 +0.255689 0.765861 0.954243 +0.234317 0.768535 0.957575 +0.212961 0.770966 0.960604 +0.191619 0.773157 0.963333 +0.170291 0.775110 0.965767 +0.148975 0.776828 0.967907 +0.127671 0.778313 0.969757 +0.106377 0.779566 0.971319 +0.085091 0.780589 0.972594 +0.063812 0.781384 0.973585 +0.042538 0.781951 0.974291 +0.021268 0.782291 0.974714 +0.000000 0.782404 0.974856 +0.803485 0.000000 0.957556 +0.803372 0.020891 0.957422 +0.803035 0.041784 0.957020 +0.802474 0.062683 0.956351 +0.801686 0.083588 0.955412 +0.800672 0.104502 0.954203 +0.799429 0.125428 0.952723 +0.797957 0.146368 0.950968 +0.796253 0.167323 0.948938 +0.794316 0.188296 0.946629 +0.792142 0.209288 0.944039 +0.789730 0.230301 0.941163 +0.787075 0.251336 0.937999 +0.784175 0.272395 0.934543 +0.781026 0.293477 0.930790 +0.777623 0.314584 0.926735 +0.773964 0.335717 0.922374 +0.770043 0.356874 0.917701 +0.765855 0.378057 0.912710 +0.761395 0.399263 0.907395 +0.756658 0.420493 0.901750 +0.751639 0.441744 0.895768 +0.746331 0.463014 0.889442 +0.740728 0.484302 0.882765 +0.734824 0.505602 0.875729 +0.728611 0.526913 0.868325 +0.722084 0.548228 0.860546 +0.715235 0.569545 0.852384 +0.708056 0.590855 0.843829 +0.700541 0.612153 0.834872 +0.692681 0.633432 0.825505 +0.684468 0.654682 0.815717 +0.675895 0.675895 0.805501 +0.654682 0.684468 0.815717 +0.633432 0.692681 0.825505 +0.612153 0.700541 0.834872 +0.590855 0.708056 0.843829 +0.569545 0.715235 0.852384 +0.548228 0.722084 0.860546 +0.526913 0.728611 0.868325 +0.505602 0.734824 0.875729 +0.484302 0.740728 0.882765 +0.463014 0.746331 0.889442 +0.441744 0.751639 0.895768 +0.420493 0.756658 0.901750 +0.399263 0.761395 0.907395 +0.378057 0.765855 0.912710 +0.356874 0.770043 0.917701 +0.335717 0.773964 0.922374 +0.314584 0.777623 0.926735 +0.293477 0.781026 0.930790 +0.272395 0.784175 0.934543 +0.251336 0.787075 0.937999 +0.230301 0.789730 0.941163 +0.209288 0.792142 0.944039 +0.188296 0.794316 0.946629 +0.167323 0.796253 0.948938 +0.146368 0.797957 0.950968 +0.125428 0.799429 0.952723 +0.104502 0.800672 0.954203 +0.083588 0.801686 0.955412 +0.062683 0.802474 0.956351 +0.041784 0.803035 0.957020 +0.020891 0.803372 0.957422 +0.000000 0.803485 0.957556 +0.824182 0.000000 0.939800 +0.824071 0.020504 0.939673 +0.823739 0.041010 0.939294 +0.823183 0.061523 0.938661 +0.822405 0.082045 0.937773 +0.821402 0.102578 0.936630 +0.820174 0.123125 0.935230 +0.818719 0.143690 0.933570 +0.817034 0.164275 0.931649 +0.815118 0.184882 0.929463 +0.812967 0.205513 0.927011 +0.810579 0.226172 0.924288 +0.807950 0.246859 0.921291 +0.805078 0.267577 0.918015 +0.801957 0.288327 0.914457 +0.798585 0.309111 0.910611 +0.794955 0.329929 0.906473 +0.791064 0.350783 0.902036 +0.786907 0.371672 0.897295 +0.782477 0.392597 0.892243 +0.777768 0.413557 0.886875 +0.772776 0.434551 0.881182 +0.767493 0.455579 0.875158 +0.761913 0.476637 0.868795 +0.756028 0.497725 0.862085 +0.749832 0.518839 0.855020 +0.743316 0.539974 0.847590 +0.736474 0.561128 0.839787 +0.729295 0.582294 0.831602 +0.721774 0.603467 0.823025 +0.713900 0.624640 0.814047 +0.705665 0.645805 0.804657 +0.697060 0.666954 0.794845 +0.688077 0.688077 0.784602 +0.666954 0.697060 0.794845 +0.645805 0.705665 0.804657 +0.624640 0.713900 0.814047 +0.603467 0.721774 0.823025 +0.582294 0.729295 0.831602 +0.561128 0.736474 0.839787 +0.539974 0.743316 0.847590 +0.518839 0.749832 0.855020 +0.497725 0.756028 0.862085 +0.476637 0.761913 0.868795 +0.455579 0.767493 0.875158 +0.434551 0.772776 0.881182 +0.413557 0.777768 0.886875 +0.392597 0.782477 0.892243 +0.371672 0.786907 0.897295 +0.350783 0.791064 0.902036 +0.329929 0.794955 0.906473 +0.309111 0.798585 0.910611 +0.288327 0.801957 0.914457 +0.267577 0.805078 0.918015 +0.246859 0.807950 0.921291 +0.226172 0.810579 0.924288 +0.205513 0.812967 0.927011 +0.184882 0.815118 0.929463 +0.164275 0.817034 0.931649 +0.143690 0.818719 0.933570 +0.123125 0.820174 0.935230 +0.102578 0.821402 0.936630 +0.082045 0.822405 0.937773 +0.061523 0.823183 0.938661 +0.041010 0.823739 0.939294 +0.020504 0.824071 0.939673 +0.000000 0.824182 0.939800 +0.844488 0.000000 0.921597 +0.844379 0.020107 0.921477 +0.844051 0.040217 0.921120 +0.843503 0.060334 0.920523 +0.842736 0.080462 0.919685 +0.841748 0.100604 0.918607 +0.840537 0.120763 0.917286 +0.839102 0.140943 0.915720 +0.837441 0.161146 0.913906 +0.835550 0.181377 0.911843 +0.833428 0.201637 0.909527 +0.831071 0.221930 0.906955 +0.828476 0.242259 0.904123 +0.825639 0.262625 0.901026 +0.822555 0.283032 0.897661 +0.819221 0.303480 0.894023 +0.815631 0.323972 0.890105 +0.811781 0.344509 0.885904 +0.807664 0.365092 0.881411 +0.803276 0.385723 0.876622 +0.798609 0.406401 0.871529 +0.793657 0.427125 0.866125 +0.788414 0.447897 0.860402 +0.782871 0.468714 0.854354 +0.777021 0.489576 0.847970 +0.770857 0.510479 0.841243 +0.764370 0.531421 0.834164 +0.757552 0.552399 0.826723 +0.750393 0.573407 0.818910 +0.742885 0.594442 0.810716 +0.735017 0.615497 0.802131 +0.726781 0.636564 0.793143 +0.718167 0.657637 0.783741 +0.709163 0.678706 0.773916 +0.699761 0.699761 0.763655 +0.678706 0.709163 0.773916 +0.657637 0.718167 0.783741 +0.636564 0.726781 0.793143 +0.615497 0.735017 0.802131 +0.594442 0.742885 0.810716 +0.573407 0.750393 0.818910 +0.552399 0.757552 0.826723 +0.531421 0.764370 0.834164 +0.510479 0.770857 0.841243 +0.489576 0.777021 0.847970 +0.468714 0.782871 0.854354 +0.447897 0.788414 0.860402 +0.427125 0.793657 0.866125 +0.406401 0.798609 0.871529 +0.385723 0.803276 0.876622 +0.365092 0.807664 0.881411 +0.344509 0.811781 0.885904 +0.323972 0.815631 0.890105 +0.303480 0.819221 0.894023 +0.283032 0.822555 0.897661 +0.262625 0.825639 0.901026 +0.242259 0.828476 0.904123 +0.221930 0.831071 0.906955 +0.201637 0.833428 0.909527 +0.181377 0.835550 0.911843 +0.161146 0.837441 0.913906 +0.140943 0.839102 0.915720 +0.120763 0.840537 0.917286 +0.100604 0.841748 0.918607 +0.080462 0.842736 0.919685 +0.060334 0.843503 0.920523 +0.040217 0.844051 0.921120 +0.020107 0.844379 0.921477 +0.000000 0.844488 0.921597 +0.864391 0.000000 0.902955 +0.864284 0.019700 0.902843 +0.863962 0.039404 0.902506 +0.863424 0.059117 0.901945 +0.862670 0.078841 0.901157 +0.861699 0.098582 0.900143 +0.860509 0.118342 0.898899 +0.859098 0.138127 0.897425 +0.857464 0.157939 0.895718 +0.855604 0.177783 0.893776 +0.853516 0.197662 0.891594 +0.851196 0.217579 0.889171 +0.848641 0.237537 0.886502 +0.845846 0.257541 0.883582 +0.842807 0.277592 0.880408 +0.839520 0.297693 0.876975 +0.835980 0.317846 0.873276 +0.832180 0.338055 0.869307 +0.828116 0.358320 0.865061 +0.823780 0.378643 0.860532 +0.819167 0.399025 0.855713 +0.814269 0.419468 0.850596 +0.809078 0.439970 0.845174 +0.803588 0.460532 0.839439 +0.797789 0.481153 0.833381 +0.791674 0.501832 0.826993 +0.785233 0.522566 0.820265 +0.778457 0.543354 0.813186 +0.771336 0.564191 0.805748 +0.763860 0.585073 0.797939 +0.756020 0.605996 0.789749 +0.747804 0.626952 0.781166 +0.739201 0.647936 0.772180 +0.730201 0.668938 0.762777 +0.720791 0.689950 0.752948 +0.710960 0.710960 0.742679 +0.689950 0.720791 0.752948 +0.668938 0.730201 0.762777 +0.647936 0.739201 0.772180 +0.626952 0.747804 0.781166 +0.605996 0.756020 0.789749 +0.585073 0.763860 0.797939 +0.564191 0.771336 0.805748 +0.543354 0.778457 0.813186 +0.522566 0.785233 0.820265 +0.501832 0.791674 0.826993 +0.481153 0.797789 0.833381 +0.460532 0.803588 0.839439 +0.439970 0.809078 0.845174 +0.419468 0.814269 0.850596 +0.399025 0.819167 0.855713 +0.378643 0.823780 0.860532 +0.358320 0.828116 0.865061 +0.338055 0.832180 0.869307 +0.317846 0.835980 0.873276 +0.297693 0.839520 0.876975 +0.277592 0.842807 0.880408 +0.257541 0.845846 0.883582 +0.237537 0.848641 0.886502 +0.217579 0.851196 0.889171 +0.197662 0.853516 0.891594 +0.177783 0.855604 0.893776 +0.157939 0.857464 0.895718 +0.138127 0.859098 0.897425 +0.118342 0.860509 0.898899 +0.098582 0.861699 0.900143 +0.078841 0.862670 0.901157 +0.059117 0.863424 0.901945 +0.039404 0.863962 0.902506 +0.019700 0.864284 0.902843 +0.000000 0.864391 0.902955 +0.883883 0.000000 0.883883 +0.883778 0.019284 0.883778 +0.883463 0.038573 0.883463 +0.882936 0.057871 0.882936 +0.882197 0.077182 0.882197 +0.881245 0.096512 0.881245 +0.880078 0.115864 0.880078 +0.878695 0.135244 0.878695 +0.877092 0.154655 0.877092 +0.875268 0.174102 0.875268 +0.873219 0.193588 0.873219 +0.870942 0.213118 0.870942 +0.868433 0.232696 0.868433 +0.865688 0.252325 0.865688 +0.862702 0.272009 0.862702 +0.859471 0.291751 0.859471 +0.855989 0.311554 0.855989 +0.852250 0.331422 0.852250 +0.848248 0.351356 0.848248 +0.843977 0.371359 0.843977 +0.839429 0.391432 0.839429 +0.834597 0.411578 0.834597 +0.829473 0.431796 0.829473 +0.824050 0.452089 0.824050 +0.818317 0.472456 0.818317 +0.812267 0.492895 0.812267 +0.805889 0.513408 0.805889 +0.799173 0.533990 0.799173 +0.792109 0.554641 0.792109 +0.784686 0.575356 0.784686 +0.776894 0.596131 0.776894 +0.768719 0.616962 0.768719 +0.760151 0.637842 0.760151 +0.751176 0.658764 0.751176 +0.741783 0.679718 0.741783 +0.731958 0.700697 0.731958 +0.721688 0.721688 0.721688 +0.700697 0.731958 0.731958 +0.679718 0.741783 0.741783 +0.658764 0.751176 0.751176 +0.637842 0.760151 0.760151 +0.616962 0.768719 0.768719 +0.596131 0.776894 0.776894 +0.575356 0.784686 0.784686 +0.554641 0.792109 0.792109 +0.533990 0.799173 0.799173 +0.513408 0.805889 0.805889 +0.492895 0.812267 0.812267 +0.472456 0.818317 0.818317 +0.452089 0.824050 0.824050 +0.431796 0.829473 0.829473 +0.411578 0.834597 0.834597 +0.391432 0.839429 0.839429 +0.371359 0.843977 0.843977 +0.351356 0.848248 0.848248 +0.331422 0.852250 0.852250 +0.311554 0.855989 0.855989 +0.291751 0.859471 0.859471 +0.272009 0.862702 0.862702 +0.252325 0.865688 0.865688 +0.232696 0.868433 0.868433 +0.213118 0.870942 0.870942 +0.193588 0.873219 0.873219 +0.174102 0.875268 0.875268 +0.154655 0.877092 0.877092 +0.135244 0.878695 0.878695 +0.115864 0.880078 0.880078 +0.096512 0.881245 0.881245 +0.077182 0.882197 0.882197 +0.057871 0.882936 0.882936 +0.038573 0.883463 0.883463 +0.019284 0.883778 0.883778 +0.000000 0.883883 0.883883 +0.902955 0.000000 0.864391 +0.902843 0.019700 0.864284 +0.902506 0.039404 0.863962 +0.901945 0.059117 0.863424 +0.901157 0.078841 0.862670 +0.900143 0.098582 0.861699 +0.898899 0.118342 0.860509 +0.897425 0.138127 0.859098 +0.895718 0.157939 0.857464 +0.893776 0.177783 0.855604 +0.891594 0.197662 0.853516 +0.889171 0.217579 0.851196 +0.886502 0.237537 0.848641 +0.883582 0.257541 0.845846 +0.880408 0.277592 0.842807 +0.876975 0.297693 0.839520 +0.873276 0.317846 0.835980 +0.869307 0.338055 0.832180 +0.865061 0.358320 0.828116 +0.860532 0.378643 0.823780 +0.855713 0.399025 0.819167 +0.850596 0.419468 0.814269 +0.845174 0.439970 0.809078 +0.839439 0.460532 0.803588 +0.833381 0.481153 0.797789 +0.826993 0.501832 0.791674 +0.820265 0.522566 0.785233 +0.813186 0.543354 0.778457 +0.805748 0.564191 0.771336 +0.797939 0.585073 0.763860 +0.789749 0.605996 0.756020 +0.781166 0.626952 0.747804 +0.772180 0.647936 0.739201 +0.762777 0.668938 0.730201 +0.752948 0.689950 0.720791 +0.742679 0.710960 0.710960 +0.731958 0.731958 0.700697 +0.710960 0.742679 0.710960 +0.689950 0.752948 0.720791 +0.668938 0.762777 0.730201 +0.647936 0.772180 0.739201 +0.626952 0.781166 0.747804 +0.605996 0.789749 0.756020 +0.585073 0.797939 0.763860 +0.564191 0.805748 0.771336 +0.543354 0.813186 0.778457 +0.522566 0.820265 0.785233 +0.501832 0.826993 0.791674 +0.481153 0.833381 0.797789 +0.460532 0.839439 0.803588 +0.439970 0.845174 0.809078 +0.419468 0.850596 0.814269 +0.399025 0.855713 0.819167 +0.378643 0.860532 0.823780 +0.358320 0.865061 0.828116 +0.338055 0.869307 0.832180 +0.317846 0.873276 0.835980 +0.297693 0.876975 0.839520 +0.277592 0.880408 0.842807 +0.257541 0.883582 0.845846 +0.237537 0.886502 0.848641 +0.217579 0.889171 0.851196 +0.197662 0.891594 0.853516 +0.177783 0.893776 0.855604 +0.157939 0.895718 0.857464 +0.138127 0.897425 0.859098 +0.118342 0.898899 0.860509 +0.098582 0.900143 0.861699 +0.078841 0.901157 0.862670 +0.059117 0.901945 0.863424 +0.039404 0.902506 0.863962 +0.019700 0.902843 0.864284 +0.000000 0.902955 0.864391 +0.921597 0.000000 0.844488 +0.921477 0.020107 0.844379 +0.921120 0.040217 0.844051 +0.920523 0.060334 0.843503 +0.919685 0.080462 0.842736 +0.918607 0.100604 0.841748 +0.917286 0.120763 0.840537 +0.915720 0.140943 0.839102 +0.913906 0.161146 0.837441 +0.911843 0.181377 0.835550 +0.909527 0.201637 0.833428 +0.906955 0.221930 0.831071 +0.904123 0.242259 0.828476 +0.901026 0.262625 0.825639 +0.897661 0.283032 0.822555 +0.894023 0.303480 0.819221 +0.890105 0.323972 0.815631 +0.885904 0.344509 0.811781 +0.881411 0.365092 0.807664 +0.876622 0.385723 0.803276 +0.871529 0.406401 0.798609 +0.866125 0.427125 0.793657 +0.860402 0.447897 0.788414 +0.854354 0.468714 0.782871 +0.847970 0.489576 0.777021 +0.841243 0.510479 0.770857 +0.834164 0.531421 0.764370 +0.826723 0.552399 0.757552 +0.818910 0.573407 0.750393 +0.810716 0.594442 0.742885 +0.802131 0.615497 0.735017 +0.793143 0.636564 0.726781 +0.783741 0.657637 0.718167 +0.773916 0.678706 0.709163 +0.763655 0.699761 0.699761 +0.752948 0.720791 0.689950 +0.741783 0.741783 0.679718 +0.720791 0.752948 0.689950 +0.699761 0.763655 0.699761 +0.678706 0.773916 0.709163 +0.657637 0.783741 0.718167 +0.636564 0.793143 0.726781 +0.615497 0.802131 0.735017 +0.594442 0.810716 0.742885 +0.573407 0.818910 0.750393 +0.552399 0.826723 0.757552 +0.531421 0.834164 0.764370 +0.510479 0.841243 0.770857 +0.489576 0.847970 0.777021 +0.468714 0.854354 0.782871 +0.447897 0.860402 0.788414 +0.427125 0.866125 0.793657 +0.406401 0.871529 0.798609 +0.385723 0.876622 0.803276 +0.365092 0.881411 0.807664 +0.344509 0.885904 0.811781 +0.323972 0.890105 0.815631 +0.303480 0.894023 0.819221 +0.283032 0.897661 0.822555 +0.262625 0.901026 0.825639 +0.242259 0.904123 0.828476 +0.221930 0.906955 0.831071 +0.201637 0.909527 0.833428 +0.181377 0.911843 0.835550 +0.161146 0.913906 0.837441 +0.140943 0.915720 0.839102 +0.120763 0.917286 0.840537 +0.100604 0.918607 0.841748 +0.080462 0.919685 0.842736 +0.060334 0.920523 0.843503 +0.040217 0.921120 0.844051 +0.020107 0.921477 0.844379 +0.000000 0.921597 0.844488 +0.939800 0.000000 0.824182 +0.939673 0.020504 0.824071 +0.939294 0.041010 0.823739 +0.938661 0.061523 0.823183 +0.937773 0.082045 0.822405 +0.936630 0.102578 0.821402 +0.935230 0.123125 0.820174 +0.933570 0.143690 0.818719 +0.931649 0.164275 0.817034 +0.929463 0.184882 0.815118 +0.927011 0.205513 0.812967 +0.924288 0.226172 0.810579 +0.921291 0.246859 0.807950 +0.918015 0.267577 0.805078 +0.914457 0.288327 0.801957 +0.910611 0.309111 0.798585 +0.906473 0.329929 0.794955 +0.902036 0.350783 0.791064 +0.897295 0.371672 0.786907 +0.892243 0.392597 0.782477 +0.886875 0.413557 0.777768 +0.881182 0.434551 0.772776 +0.875158 0.455579 0.767493 +0.868795 0.476637 0.761913 +0.862085 0.497725 0.756028 +0.855020 0.518839 0.749832 +0.847590 0.539974 0.743316 +0.839787 0.561128 0.736474 +0.831602 0.582294 0.729295 +0.823025 0.603467 0.721774 +0.814047 0.624640 0.713900 +0.804657 0.645805 0.705665 +0.794845 0.666954 0.697060 +0.784602 0.688077 0.688077 +0.773916 0.709163 0.678706 +0.762777 0.730201 0.668938 +0.751176 0.751176 0.658764 +0.730201 0.762777 0.668938 +0.709163 0.773916 0.678706 +0.688077 0.784602 0.688077 +0.666954 0.794845 0.697060 +0.645805 0.804657 0.705665 +0.624640 0.814047 0.713900 +0.603467 0.823025 0.721774 +0.582294 0.831602 0.729295 +0.561128 0.839787 0.736474 +0.539974 0.847590 0.743316 +0.518839 0.855020 0.749832 +0.497725 0.862085 0.756028 +0.476637 0.868795 0.761913 +0.455579 0.875158 0.767493 +0.434551 0.881182 0.772776 +0.413557 0.886875 0.777768 +0.392597 0.892243 0.782477 +0.371672 0.897295 0.786907 +0.350783 0.902036 0.791064 +0.329929 0.906473 0.794955 +0.309111 0.910611 0.798585 +0.288327 0.914457 0.801957 +0.267577 0.918015 0.805078 +0.246859 0.921291 0.807950 +0.226172 0.924288 0.810579 +0.205513 0.927011 0.812967 +0.184882 0.929463 0.815118 +0.164275 0.931649 0.817034 +0.143690 0.933570 0.818719 +0.123125 0.935230 0.820174 +0.102578 0.936630 0.821402 +0.082045 0.937773 0.822405 +0.061523 0.938661 0.823183 +0.041010 0.939294 0.823739 +0.020504 0.939673 0.824071 +0.000000 0.939800 0.824182 +0.957556 0.000000 0.803485 +0.957422 0.020891 0.803372 +0.957020 0.041784 0.803035 +0.956351 0.062683 0.802474 +0.955412 0.083588 0.801686 +0.954203 0.104502 0.800672 +0.952723 0.125428 0.799429 +0.950968 0.146368 0.797957 +0.948938 0.167323 0.796253 +0.946629 0.188296 0.794316 +0.944039 0.209288 0.792142 +0.941163 0.230301 0.789730 +0.937999 0.251336 0.787075 +0.934543 0.272395 0.784175 +0.930790 0.293477 0.781026 +0.926735 0.314584 0.777623 +0.922374 0.335717 0.773964 +0.917701 0.356874 0.770043 +0.912710 0.378057 0.765855 +0.907395 0.399263 0.761395 +0.901750 0.420493 0.756658 +0.895768 0.441744 0.751639 +0.889442 0.463014 0.746331 +0.882765 0.484302 0.740728 +0.875729 0.505602 0.734824 +0.868325 0.526913 0.728611 +0.860546 0.548228 0.722084 +0.852384 0.569545 0.715235 +0.843829 0.590855 0.708056 +0.834872 0.612153 0.700541 +0.825505 0.633432 0.692681 +0.815717 0.654682 0.684468 +0.805501 0.675895 0.675895 +0.794845 0.697060 0.666954 +0.783741 0.718167 0.657637 +0.772180 0.739201 0.647936 +0.760151 0.760151 0.637842 +0.739201 0.772180 0.647936 +0.718167 0.783741 0.657637 +0.697060 0.794845 0.666954 +0.675895 0.805501 0.675895 +0.654682 0.815717 0.684468 +0.633432 0.825505 0.692681 +0.612153 0.834872 0.700541 +0.590855 0.843829 0.708056 +0.569545 0.852384 0.715235 +0.548228 0.860546 0.722084 +0.526913 0.868325 0.728611 +0.505602 0.875729 0.734824 +0.484302 0.882765 0.740728 +0.463014 0.889442 0.746331 +0.441744 0.895768 0.751639 +0.420493 0.901750 0.756658 +0.399263 0.907395 0.761395 +0.378057 0.912710 0.765855 +0.356874 0.917701 0.770043 +0.335717 0.922374 0.773964 +0.314584 0.926735 0.777623 +0.293477 0.930790 0.781026 +0.272395 0.934543 0.784175 +0.251336 0.937999 0.787075 +0.230301 0.941163 0.789730 +0.209288 0.944039 0.792142 +0.188296 0.946629 0.794316 +0.167323 0.948938 0.796253 +0.146368 0.950968 0.797957 +0.125428 0.952723 0.799429 +0.104502 0.954203 0.800672 +0.083588 0.955412 0.801686 +0.062683 0.956351 0.802474 +0.041784 0.957020 0.803035 +0.020891 0.957422 0.803372 +0.000000 0.957556 0.803485 +0.974856 0.000000 0.782404 +0.974714 0.021268 0.782291 +0.974291 0.042538 0.781951 +0.973585 0.063812 0.781384 +0.972594 0.085091 0.780589 +0.971319 0.106377 0.779566 +0.969757 0.127671 0.778313 +0.967907 0.148975 0.776828 +0.965767 0.170291 0.775110 +0.963333 0.191619 0.773157 +0.960604 0.212961 0.770966 +0.957575 0.234317 0.768535 +0.954243 0.255689 0.765861 +0.950605 0.277076 0.762941 +0.946656 0.298479 0.759772 +0.942391 0.319899 0.756349 +0.937806 0.341334 0.752669 +0.932896 0.362783 0.748728 +0.927654 0.384247 0.744521 +0.922076 0.405723 0.740044 +0.916154 0.427210 0.735291 +0.909883 0.448705 0.730258 +0.903255 0.470205 0.724939 +0.896265 0.491708 0.719328 +0.888903 0.513208 0.713420 +0.881163 0.534703 0.707208 +0.873038 0.556186 0.700687 +0.864518 0.577652 0.693849 +0.855596 0.599095 0.686688 +0.846264 0.620506 0.679198 +0.836512 0.641878 0.671372 +0.826333 0.663202 0.663202 +0.815717 0.684468 0.654682 +0.804657 0.705665 0.645805 +0.793143 0.726781 0.636564 +0.781166 0.747804 0.626952 +0.768719 0.768719 0.616962 +0.747804 0.781166 0.626952 +0.726781 0.793143 0.636564 +0.705665 0.804657 0.645805 +0.684468 0.815717 0.654682 +0.663202 0.826333 0.663202 +0.641878 0.836512 0.671372 +0.620506 0.846264 0.679198 +0.599095 0.855596 0.686688 +0.577652 0.864518 0.693849 +0.556186 0.873038 0.700687 +0.534703 0.881163 0.707208 +0.513208 0.888903 0.713420 +0.491708 0.896265 0.719328 +0.470205 0.903255 0.724939 +0.448705 0.909883 0.730258 +0.427210 0.916154 0.735291 +0.405723 0.922076 0.740044 +0.384247 0.927654 0.744521 +0.362783 0.932896 0.748728 +0.341334 0.937806 0.752669 +0.319899 0.942391 0.756349 +0.298479 0.946656 0.759772 +0.277076 0.950605 0.762941 +0.255689 0.954243 0.765861 +0.234317 0.957575 0.768535 +0.212961 0.960604 0.770966 +0.191619 0.963333 0.773157 +0.170291 0.965767 0.775110 +0.148975 0.967907 0.776828 +0.127671 0.969757 0.778313 +0.106377 0.971319 0.779566 +0.085091 0.972594 0.780589 +0.063812 0.973585 0.781384 +0.042538 0.974291 0.781951 +0.021268 0.974714 0.782291 +0.000000 0.974856 0.782404 +0.991692 0.000000 0.760952 +0.991543 0.021636 0.760838 +0.991097 0.043272 0.760496 +0.990354 0.064911 0.759925 +0.989311 0.086554 0.759125 +0.987969 0.108200 0.758096 +0.986326 0.129852 0.756835 +0.984380 0.151511 0.755341 +0.982129 0.173176 0.753614 +0.979569 0.194848 0.751650 +0.976700 0.216529 0.749448 +0.973517 0.238218 0.747006 +0.970017 0.259915 0.744320 +0.966196 0.281620 0.741388 +0.962050 0.303333 0.738207 +0.957575 0.325053 0.734773 +0.952766 0.346778 0.731083 +0.947618 0.368508 0.727133 +0.942126 0.390241 0.722918 +0.936284 0.411975 0.718436 +0.930086 0.433706 0.713680 +0.923526 0.455433 0.708647 +0.916598 0.477151 0.703331 +0.909296 0.498857 0.697727 +0.901611 0.520545 0.691831 +0.893538 0.542212 0.685636 +0.885068 0.563851 0.679137 +0.876195 0.585455 0.672328 +0.866911 0.607017 0.665204 +0.857207 0.628530 0.657758 +0.847077 0.649985 0.649985 +0.836512 0.671372 0.641878 +0.825505 0.692681 0.633432 +0.814047 0.713900 0.624640 +0.802131 0.735017 0.615497 +0.789749 0.756020 0.605996 +0.776894 0.776894 0.596131 +0.756020 0.789749 0.605996 +0.735017 0.802131 0.615497 +0.713900 0.814047 0.624640 +0.692681 0.825505 0.633432 +0.671372 0.836512 0.641878 +0.649985 0.847077 0.649985 +0.628530 0.857207 0.657758 +0.607017 0.866911 0.665204 +0.585455 0.876195 0.672328 +0.563851 0.885068 0.679137 +0.542212 0.893538 0.685636 +0.520545 0.901611 0.691831 +0.498857 0.909296 0.697727 +0.477151 0.916598 0.703331 +0.455433 0.923526 0.708647 +0.433706 0.930086 0.713680 +0.411975 0.936284 0.718436 +0.390241 0.942126 0.722918 +0.368508 0.947618 0.727133 +0.346778 0.952766 0.731083 +0.325053 0.957575 0.734773 +0.303333 0.962050 0.738207 +0.281620 0.966196 0.741388 +0.259915 0.970017 0.744320 +0.238218 0.973517 0.747006 +0.216529 0.976700 0.749448 +0.194848 0.979569 0.751650 +0.173176 0.982129 0.753614 +0.151511 0.984380 0.755341 +0.129852 0.986326 0.756835 +0.108200 0.987969 0.758096 +0.086554 0.989311 0.759125 +0.064911 0.990354 0.759925 +0.043272 0.991097 0.760496 +0.021636 0.991543 0.760838 +0.000000 0.991692 0.760952 +1.008056 0.000000 0.739137 +1.007900 0.021992 0.739023 +1.007431 0.043985 0.738679 +1.006651 0.065979 0.738107 +1.005556 0.087975 0.737304 +1.004147 0.109972 0.736271 +1.002422 0.131971 0.735006 +1.000379 0.153973 0.733508 +0.998016 0.175977 0.731776 +0.995331 0.197984 0.729807 +0.992321 0.219992 0.727600 +0.988983 0.242003 0.725153 +0.985314 0.264014 0.722462 +0.981311 0.286026 0.719527 +0.976968 0.308037 0.716343 +0.972283 0.330045 0.712907 +0.967250 0.352050 0.709217 +0.961865 0.374049 0.705268 +0.956123 0.396039 0.701058 +0.950018 0.418018 0.696582 +0.943545 0.439982 0.691836 +0.936699 0.461929 0.686816 +0.929473 0.483853 0.681518 +0.921861 0.505750 0.675936 +0.913856 0.527615 0.670067 +0.905452 0.549442 0.663905 +0.896643 0.571224 0.657446 +0.887420 0.592955 0.650684 +0.877778 0.614627 0.643614 +0.867710 0.636231 0.636231 +0.857207 0.657758 0.628530 +0.846264 0.679198 0.620506 +0.834872 0.700541 0.612153 +0.823025 0.721774 0.603467 +0.810716 0.742885 0.594442 +0.797939 0.763860 0.585073 +0.784686 0.784686 0.575356 +0.763860 0.797939 0.585073 +0.742885 0.810716 0.594442 +0.721774 0.823025 0.603467 +0.700541 0.834872 0.612153 +0.679198 0.846264 0.620506 +0.657758 0.857207 0.628530 +0.636231 0.867710 0.636231 +0.614627 0.877778 0.643614 +0.592955 0.887420 0.650684 +0.571224 0.896643 0.657446 +0.549442 0.905452 0.663905 +0.527615 0.913856 0.670067 +0.505750 0.921861 0.675936 +0.483853 0.929473 0.681518 +0.461929 0.936699 0.686816 +0.439982 0.943545 0.691836 +0.418018 0.950018 0.696582 +0.396039 0.956123 0.701058 +0.374049 0.961865 0.705268 +0.352050 0.967250 0.709217 +0.330045 0.972283 0.712907 +0.308037 0.976968 0.716343 +0.286026 0.981311 0.719527 +0.264014 0.985314 0.722462 +0.242003 0.988983 0.725153 +0.219992 0.992321 0.727600 +0.197984 0.995331 0.729807 +0.175977 0.998016 0.731776 +0.153973 1.000379 0.733508 +0.131971 1.002422 0.735006 +0.109972 1.004147 0.736271 +0.087975 1.005556 0.737304 +0.065979 1.006651 0.738107 +0.043985 1.007431 0.738679 +0.021992 1.007900 0.739023 +0.000000 1.008056 0.739137 +1.023940 0.000000 0.716971 +1.023777 0.022339 0.716856 +1.023286 0.044678 0.716512 +1.022467 0.067016 0.715939 +1.021321 0.089354 0.715136 +1.019844 0.111691 0.714103 +1.018037 0.134027 0.712837 +1.015898 0.156362 0.711339 +1.013423 0.178694 0.709607 +1.010612 0.201023 0.707638 +1.007462 0.223349 0.705433 +1.003970 0.245670 0.702987 +1.000132 0.267985 0.700300 +0.995946 0.290292 0.697369 +0.991407 0.312589 0.694191 +0.986512 0.334876 0.690763 +0.981256 0.357148 0.687083 +0.975635 0.379404 0.683147 +0.969644 0.401640 0.678952 +0.963279 0.423853 0.674495 +0.956533 0.446039 0.669772 +0.949402 0.468193 0.664779 +0.941880 0.490312 0.659512 +0.933962 0.512389 0.653967 +0.925641 0.534419 0.648140 +0.916911 0.556395 0.642028 +0.907766 0.578311 0.635624 +0.898200 0.600158 0.628926 +0.888206 0.621929 0.621929 +0.877778 0.643614 0.614627 +0.866911 0.665204 0.607017 +0.855596 0.686688 0.599095 +0.843829 0.708056 0.590855 +0.831602 0.729295 0.582294 +0.818910 0.750393 0.573407 +0.805748 0.771336 0.564191 +0.792109 0.792109 0.554641 +0.771336 0.805748 0.564191 +0.750393 0.818910 0.573407 +0.729295 0.831602 0.582294 +0.708056 0.843829 0.590855 +0.686688 0.855596 0.599095 +0.665204 0.866911 0.607017 +0.643614 0.877778 0.614627 +0.621929 0.888206 0.621929 +0.600158 0.898200 0.628926 +0.578311 0.907766 0.635624 +0.556395 0.916911 0.642028 +0.534419 0.925641 0.648140 +0.512389 0.933962 0.653967 +0.490312 0.941880 0.659512 +0.468193 0.949402 0.664779 +0.446039 0.956533 0.669772 +0.423853 0.963279 0.674495 +0.401640 0.969644 0.678952 +0.379404 0.975635 0.683147 +0.357148 0.981256 0.687083 +0.334876 0.986512 0.690763 +0.312589 0.991407 0.694191 +0.290292 0.995946 0.697369 +0.267985 1.000132 0.700300 +0.245670 1.003970 0.702987 +0.223349 1.007462 0.705433 +0.201023 1.010612 0.707638 +0.178694 1.013423 0.709607 +0.156362 1.015898 0.711339 +0.134027 1.018037 0.712837 +0.111691 1.019844 0.714103 +0.089354 1.021321 0.715136 +0.067016 1.022467 0.715939 +0.044678 1.023286 0.716512 +0.022339 1.023777 0.716856 +0.000000 1.023940 0.716971 +1.039337 0.000000 0.694463 +1.039166 0.022675 0.694349 +1.038653 0.045349 0.694006 +1.037797 0.068021 0.693434 +1.036598 0.090691 0.692633 +1.035055 0.113357 0.691601 +1.033165 0.136019 0.690339 +1.030929 0.158675 0.688845 +1.028344 0.181325 0.687117 +1.025407 0.203966 0.685155 +1.022117 0.226598 0.682957 +1.018471 0.249218 0.680520 +1.014465 0.271825 0.677844 +1.010097 0.294416 0.674925 +1.005363 0.316990 0.671762 +1.000259 0.339542 0.668351 +0.994781 0.362071 0.664692 +0.988926 0.384572 0.660779 +0.982689 0.407043 0.656612 +0.976065 0.429479 0.652186 +0.969049 0.451875 0.647498 +0.961637 0.474227 0.642545 +0.953823 0.496529 0.637324 +0.945602 0.518775 0.631831 +0.936968 0.540959 0.626062 +0.927917 0.563074 0.620014 +0.918442 0.585112 0.613684 +0.908538 0.607066 0.607066 +0.898200 0.628926 0.600158 +0.887420 0.650684 0.592955 +0.876195 0.672328 0.585455 +0.864518 0.693849 0.577652 +0.852384 0.715235 0.569545 +0.839787 0.736474 0.561128 +0.826723 0.757552 0.552399 +0.813186 0.778457 0.543354 +0.799173 0.799173 0.533990 +0.778457 0.813186 0.543354 +0.757552 0.826723 0.552399 +0.736474 0.839787 0.561128 +0.715235 0.852384 0.569545 +0.693849 0.864518 0.577652 +0.672328 0.876195 0.585455 +0.650684 0.887420 0.592955 +0.628926 0.898200 0.600158 +0.607066 0.908538 0.607066 +0.585112 0.918442 0.613684 +0.563074 0.927917 0.620014 +0.540959 0.936968 0.626062 +0.518775 0.945602 0.631831 +0.496529 0.953823 0.637324 +0.474227 0.961637 0.642545 +0.451875 0.969049 0.647498 +0.429479 0.976065 0.652186 +0.407043 0.982689 0.656612 +0.384572 0.988926 0.660779 +0.362071 0.994781 0.664692 +0.339542 1.000259 0.668351 +0.316990 1.005363 0.671762 +0.294416 1.010097 0.674925 +0.271825 1.014465 0.677844 +0.249218 1.018471 0.680520 +0.226598 1.022117 0.682957 +0.203966 1.025407 0.685155 +0.181325 1.028344 0.687117 +0.158675 1.030929 0.688845 +0.136019 1.033165 0.690339 +0.113357 1.035055 0.691601 +0.090691 1.036598 0.692633 +0.068021 1.037797 0.693434 +0.045349 1.038653 0.694006 +0.022675 1.039166 0.694349 +0.000000 1.039337 0.694463 +1.054239 0.000000 0.671625 +1.054061 0.023000 0.671511 +1.053525 0.045998 0.671170 +1.052632 0.068993 0.670601 +1.051381 0.091984 0.669804 +1.049771 0.114969 0.668778 +1.047800 0.137945 0.667522 +1.045468 0.160913 0.666036 +1.042772 0.183869 0.664319 +1.039710 0.206811 0.662368 +1.036281 0.229738 0.660184 +1.032481 0.252647 0.657763 +1.028309 0.275534 0.655105 +1.023760 0.298399 0.652207 +1.018832 0.321236 0.649068 +1.013521 0.344044 0.645684 +1.007824 0.366818 0.642055 +1.001737 0.389554 0.638177 +0.995256 0.412249 0.634048 +0.988376 0.434896 0.629665 +0.981094 0.457491 0.625026 +0.973404 0.480030 0.620127 +0.965302 0.502504 0.614965 +0.956783 0.524909 0.609538 +0.947843 0.547237 0.603842 +0.938476 0.569481 0.597875 +0.928677 0.591633 0.591633 +0.918442 0.613684 0.585112 +0.907766 0.635624 0.578311 +0.896643 0.657446 0.571224 +0.885068 0.679137 0.563851 +0.873038 0.700687 0.556186 +0.860546 0.722084 0.548228 +0.847590 0.743316 0.539974 +0.834164 0.764370 0.531421 +0.820265 0.785233 0.522566 +0.805889 0.805889 0.513408 +0.785233 0.820265 0.522566 +0.764370 0.834164 0.531421 +0.743316 0.847590 0.539974 +0.722084 0.860546 0.548228 +0.700687 0.873038 0.556186 +0.679137 0.885068 0.563851 +0.657446 0.896643 0.571224 +0.635624 0.907766 0.578311 +0.613684 0.918442 0.585112 +0.591633 0.928677 0.591633 +0.569481 0.938476 0.597875 +0.547237 0.947843 0.603842 +0.524909 0.956783 0.609538 +0.502504 0.965302 0.614965 +0.480030 0.973404 0.620127 +0.457491 0.981094 0.625026 +0.434896 0.988376 0.629665 +0.412249 0.995256 0.634048 +0.389554 1.001737 0.638177 +0.366818 1.007824 0.642055 +0.344044 1.013521 0.645684 +0.321236 1.018832 0.649068 +0.298399 1.023760 0.652207 +0.275534 1.028309 0.655105 +0.252647 1.032481 0.657763 +0.229738 1.036281 0.660184 +0.206811 1.039710 0.662368 +0.183869 1.042772 0.664319 +0.160913 1.045468 0.666036 +0.137945 1.047800 0.667522 +0.114969 1.049771 0.668778 +0.091984 1.051381 0.669804 +0.068993 1.052632 0.670601 +0.045998 1.053525 0.671170 +0.023000 1.054061 0.671511 +0.000000 1.054239 0.671625 +1.068640 0.000000 0.648467 +1.068454 0.023314 0.648354 +1.067896 0.046625 0.648015 +1.066966 0.069933 0.647451 +1.065663 0.093233 0.646660 +1.063986 0.116525 0.645643 +1.061935 0.139806 0.644398 +1.059507 0.163074 0.642925 +1.056701 0.186325 0.641222 +1.053516 0.209557 0.639289 +1.049948 0.232768 0.637124 +1.045997 0.255954 0.634727 +1.041659 0.279112 0.632094 +1.036932 0.302238 0.629226 +1.031812 0.325329 0.626119 +1.026297 0.348381 0.622772 +1.020383 0.371389 0.619184 +1.014067 0.394349 0.615351 +1.007345 0.417256 0.611272 +1.000213 0.440104 0.606944 +0.992668 0.462889 0.602366 +0.984705 0.485603 0.597534 +0.976320 0.508240 0.592445 +0.967509 0.530794 0.587099 +0.958267 0.553256 0.581491 +0.948591 0.575619 0.575619 +0.938476 0.597875 0.569481 +0.927917 0.620014 0.563074 +0.916911 0.642028 0.556395 +0.905452 0.663905 0.549442 +0.893538 0.685636 0.542212 +0.881163 0.707208 0.534703 +0.868325 0.728611 0.526913 +0.855020 0.749832 0.518839 +0.841243 0.770857 0.510479 +0.826993 0.791674 0.501832 +0.812267 0.812267 0.492895 +0.791674 0.826993 0.501832 +0.770857 0.841243 0.510479 +0.749832 0.855020 0.518839 +0.728611 0.868325 0.526913 +0.707208 0.881163 0.534703 +0.685636 0.893538 0.542212 +0.663905 0.905452 0.549442 +0.642028 0.916911 0.556395 +0.620014 0.927917 0.563074 +0.597875 0.938476 0.569481 +0.575619 0.948591 0.575619 +0.553256 0.958267 0.581491 +0.530794 0.967509 0.587099 +0.508240 0.976320 0.592445 +0.485603 0.984705 0.597534 +0.462889 0.992668 0.602366 +0.440104 1.000213 0.606944 +0.417256 1.007345 0.611272 +0.394349 1.014067 0.615351 +0.371389 1.020383 0.619184 +0.348381 1.026297 0.622772 +0.325329 1.031812 0.626119 +0.302238 1.036932 0.629226 +0.279112 1.041659 0.632094 +0.255954 1.045997 0.634727 +0.232768 1.049948 0.637124 +0.209557 1.053516 0.639289 +0.186325 1.056701 0.641222 +0.163074 1.059507 0.642925 +0.139806 1.061935 0.644398 +0.116525 1.063986 0.645643 +0.093233 1.065663 0.646660 +0.069933 1.066966 0.647451 +0.046625 1.067896 0.648015 +0.023314 1.068454 0.648354 +0.000000 1.068640 0.648467 +1.082532 0.000000 0.625000 +1.082339 0.023617 0.624888 +1.081759 0.047231 0.624554 +1.080792 0.070839 0.623996 +1.079438 0.094439 0.623214 +1.077695 0.118027 0.622208 +1.075564 0.141601 0.620977 +1.073041 0.165157 0.619521 +1.070127 0.188692 0.617838 +1.066819 0.212203 0.615928 +1.063115 0.235687 0.613790 +1.059014 0.259139 0.611422 +1.054513 0.282556 0.608823 +1.049609 0.305933 0.605992 +1.044300 0.329267 0.602927 +1.038583 0.352552 0.599626 +1.032456 0.375783 0.596089 +1.025914 0.398956 0.592312 +1.018956 0.422065 0.588294 +1.011576 0.445104 0.584034 +1.003773 0.468067 0.579529 +0.995542 0.490947 0.574776 +0.986879 0.513737 0.569775 +0.977782 0.536430 0.564523 +0.968246 0.559017 0.559017 +0.958267 0.581491 0.553256 +0.947843 0.603842 0.547237 +0.936968 0.626062 0.540959 +0.925641 0.648140 0.534419 +0.913856 0.670067 0.527615 +0.901611 0.691831 0.520545 +0.888903 0.713420 0.513208 +0.875729 0.734824 0.505602 +0.862085 0.756028 0.497725 +0.847970 0.777021 0.489576 +0.833381 0.797789 0.481153 +0.818317 0.818317 0.472456 +0.797789 0.833381 0.481153 +0.777021 0.847970 0.489576 +0.756028 0.862085 0.497725 +0.734824 0.875729 0.505602 +0.713420 0.888903 0.513208 +0.691831 0.901611 0.520545 +0.670067 0.913856 0.527615 +0.648140 0.925641 0.534419 +0.626062 0.936968 0.540959 +0.603842 0.947843 0.547237 +0.581491 0.958267 0.553256 +0.559017 0.968246 0.559017 +0.536430 0.977782 0.564523 +0.513737 0.986879 0.569775 +0.490947 0.995542 0.574776 +0.468067 1.003773 0.579529 +0.445104 1.011576 0.584034 +0.422065 1.018956 0.588294 +0.398956 1.025914 0.592312 +0.375783 1.032456 0.596089 +0.352552 1.038583 0.599626 +0.329267 1.044300 0.602927 +0.305933 1.049609 0.605992 +0.282556 1.054513 0.608823 +0.259139 1.059014 0.611422 +0.235687 1.063115 0.613790 +0.212203 1.066819 0.615928 +0.188692 1.070127 0.617838 +0.165157 1.073041 0.619521 +0.141601 1.075564 0.620977 +0.118027 1.077695 0.622208 +0.094439 1.079438 0.623214 +0.070839 1.080792 0.623996 +0.047231 1.081759 0.624554 +0.023617 1.082339 0.624888 +0.000000 1.082532 0.625000 +1.095908 0.000000 0.601236 +1.095708 0.023908 0.601126 +1.095106 0.047813 0.600796 +1.094104 0.071711 0.600246 +1.092699 0.095599 0.599475 +1.090891 0.119472 0.598483 +1.088680 0.143328 0.597271 +1.086065 0.167161 0.595836 +1.083043 0.190970 0.594178 +1.079615 0.214749 0.592297 +1.075776 0.238494 0.590191 +1.071527 0.262201 0.587860 +1.066865 0.285866 0.585302 +1.061788 0.309483 0.582517 +1.056293 0.333048 0.579502 +1.050379 0.356556 0.576257 +1.044041 0.380000 0.572781 +1.037279 0.403376 0.569071 +1.030088 0.426676 0.565125 +1.022466 0.449896 0.560944 +1.014409 0.473027 0.556524 +1.005916 0.496063 0.551864 +0.996982 0.518996 0.546963 +0.987605 0.541819 0.541819 +0.977782 0.564523 0.536430 +0.967509 0.587099 0.530794 +0.956783 0.609538 0.524909 +0.945602 0.631831 0.518775 +0.933962 0.653967 0.512389 +0.921861 0.675936 0.505750 +0.909296 0.697727 0.498857 +0.896265 0.719328 0.491708 +0.882765 0.740728 0.484302 +0.868795 0.761913 0.476637 +0.854354 0.782871 0.468714 +0.839439 0.803588 0.460532 +0.824050 0.824050 0.452089 +0.803588 0.839439 0.460532 +0.782871 0.854354 0.468714 +0.761913 0.868795 0.476637 +0.740728 0.882765 0.484302 +0.719328 0.896265 0.491708 +0.697727 0.909296 0.498857 +0.675936 0.921861 0.505750 +0.653967 0.933962 0.512389 +0.631831 0.945602 0.518775 +0.609538 0.956783 0.524909 +0.587099 0.967509 0.530794 +0.564523 0.977782 0.536430 +0.541819 0.987605 0.541819 +0.518996 0.996982 0.546963 +0.496063 1.005916 0.551864 +0.473027 1.014409 0.556524 +0.449896 1.022466 0.560944 +0.426676 1.030088 0.565125 +0.403376 1.037279 0.569071 +0.380000 1.044041 0.572781 +0.356556 1.050379 0.576257 +0.333048 1.056293 0.579502 +0.309483 1.061788 0.582517 +0.285866 1.066865 0.585302 +0.262201 1.071527 0.587860 +0.238494 1.075776 0.590191 +0.214749 1.079615 0.592297 +0.190970 1.083043 0.594178 +0.167161 1.086065 0.595836 +0.143328 1.088680 0.597271 +0.119472 1.090891 0.598483 +0.095599 1.092699 0.599475 +0.071711 1.094104 0.600246 +0.047813 1.095106 0.600796 +0.023908 1.095708 0.601126 +0.000000 1.095908 0.601236 +1.108764 0.000000 0.577186 +1.108556 0.024189 0.577078 +1.107933 0.048373 0.576753 +1.106894 0.072550 0.576213 +1.105440 0.096713 0.575456 +1.103569 0.120860 0.574481 +1.101280 0.144986 0.573290 +1.098573 0.169087 0.571881 +1.095446 0.193157 0.570253 +1.091898 0.217192 0.568406 +1.087928 0.241188 0.566340 +1.083534 0.265139 0.564052 +1.078714 0.289041 0.561543 +1.073467 0.312887 0.558812 +1.067790 0.336673 0.555856 +1.061681 0.360392 0.552676 +1.055138 0.384039 0.549270 +1.048159 0.407607 0.545637 +1.040741 0.431089 0.541775 +1.032882 0.454479 0.537684 +1.024579 0.477769 0.533362 +1.015830 0.500952 0.528807 +1.006632 0.524019 0.524019 +0.996982 0.546963 0.518996 +0.986879 0.569775 0.513737 +0.976320 0.592445 0.508240 +0.965302 0.614965 0.502504 +0.953823 0.637324 0.496529 +0.941880 0.659512 0.490312 +0.929473 0.681518 0.483853 +0.916598 0.703331 0.477151 +0.903255 0.724939 0.470205 +0.889442 0.746331 0.463014 +0.875158 0.767493 0.455579 +0.860402 0.788414 0.447897 +0.845174 0.809078 0.439970 +0.829473 0.829473 0.431796 +0.809078 0.845174 0.439970 +0.788414 0.860402 0.447897 +0.767493 0.875158 0.455579 +0.746331 0.889442 0.463014 +0.724939 0.903255 0.470205 +0.703331 0.916598 0.477151 +0.681518 0.929473 0.483853 +0.659512 0.941880 0.490312 +0.637324 0.953823 0.496529 +0.614965 0.965302 0.502504 +0.592445 0.976320 0.508240 +0.569775 0.986879 0.513737 +0.546963 0.996982 0.518996 +0.524019 1.006632 0.524019 +0.500952 1.015830 0.528807 +0.477769 1.024579 0.533362 +0.454479 1.032882 0.537684 +0.431089 1.040741 0.541775 +0.407607 1.048159 0.545637 +0.384039 1.055138 0.549270 +0.360392 1.061681 0.552676 +0.336673 1.067790 0.555856 +0.312887 1.073467 0.558812 +0.289041 1.078714 0.561543 +0.265139 1.083534 0.564052 +0.241188 1.087928 0.566340 +0.217192 1.091898 0.568406 +0.193157 1.095446 0.570253 +0.169087 1.098573 0.571881 +0.144986 1.101280 0.573290 +0.120860 1.103569 0.574481 +0.096713 1.105440 0.575456 +0.072550 1.106894 0.576213 +0.048373 1.107933 0.576753 +0.024189 1.108556 0.577078 +0.000000 1.108764 0.577186 +1.121091 0.000000 0.552861 +1.120876 0.024458 0.552755 +1.120232 0.048910 0.552437 +1.119159 0.073354 0.551908 +1.117656 0.097782 0.551167 +1.115722 0.122191 0.550213 +1.113357 0.146576 0.549047 +1.110560 0.170931 0.547667 +1.107330 0.195252 0.546075 +1.103666 0.219533 0.544268 +1.099566 0.243768 0.542246 +1.095030 0.267952 0.540009 +1.090056 0.292080 0.537556 +1.084642 0.316144 0.534886 +1.078787 0.340140 0.531999 +1.072489 0.364061 0.528893 +1.065745 0.387900 0.525567 +1.058555 0.411649 0.522021 +1.050916 0.435303 0.518254 +1.042825 0.458854 0.514265 +1.034282 0.482294 0.510052 +1.025284 0.505614 0.505614 +1.015830 0.528807 0.500952 +1.005916 0.551864 0.496063 +0.995542 0.574776 0.490947 +0.984705 0.597534 0.485603 +0.973404 0.620127 0.480030 +0.961637 0.642545 0.474227 +0.949402 0.664779 0.468193 +0.936699 0.686816 0.461929 +0.923526 0.708647 0.455433 +0.909883 0.730258 0.448705 +0.895768 0.751639 0.441744 +0.881182 0.772776 0.434551 +0.866125 0.793657 0.427125 +0.850596 0.814269 0.419468 +0.834597 0.834597 0.411578 +0.814269 0.850596 0.419468 +0.793657 0.866125 0.427125 +0.772776 0.881182 0.434551 +0.751639 0.895768 0.441744 +0.730258 0.909883 0.448705 +0.708647 0.923526 0.455433 +0.686816 0.936699 0.461929 +0.664779 0.949402 0.468193 +0.642545 0.961637 0.474227 +0.620127 0.973404 0.480030 +0.597534 0.984705 0.485603 +0.574776 0.995542 0.490947 +0.551864 1.005916 0.496063 +0.528807 1.015830 0.500952 +0.505614 1.025284 0.505614 +0.482294 1.034282 0.510052 +0.458854 1.042825 0.514265 +0.435303 1.050916 0.518254 +0.411649 1.058555 0.522021 +0.387900 1.065745 0.525567 +0.364061 1.072489 0.528893 +0.340140 1.078787 0.531999 +0.316144 1.084642 0.534886 +0.292080 1.090056 0.537556 +0.267952 1.095030 0.540009 +0.243768 1.099566 0.542246 +0.219533 1.103666 0.544268 +0.195252 1.107330 0.546075 +0.170931 1.110560 0.547667 +0.146576 1.113357 0.549047 +0.122191 1.115722 0.550213 +0.097782 1.117656 0.551167 +0.073354 1.119159 0.551908 +0.048910 1.120232 0.552437 +0.024458 1.120876 0.552755 +0.000000 1.121091 0.552861 +1.132885 0.000000 0.528273 +1.132663 0.024715 0.528170 +1.131999 0.049424 0.527860 +1.130891 0.074123 0.527343 +1.129340 0.098804 0.526620 +1.127345 0.123464 0.525690 +1.124906 0.148097 0.524552 +1.122021 0.172696 0.523207 +1.118690 0.197255 0.521654 +1.114913 0.221770 0.519892 +1.110687 0.246233 0.517922 +1.106013 0.270640 0.515742 +1.100888 0.294982 0.513353 +1.095312 0.319254 0.510752 +1.089283 0.343450 0.507941 +1.082800 0.367561 0.504918 +1.075862 0.391582 0.501683 +1.068466 0.415504 0.498234 +1.060612 0.439320 0.494571 +1.052297 0.463022 0.490694 +1.043521 0.486602 0.486602 +1.034282 0.510052 0.482294 +1.024579 0.533362 0.477769 +1.014409 0.556524 0.473027 +1.003773 0.579529 0.468067 +0.992668 0.602366 0.462889 +0.981094 0.625026 0.457491 +0.969049 0.647498 0.451875 +0.956533 0.669772 0.446039 +0.943545 0.691836 0.439982 +0.930086 0.713680 0.433706 +0.916154 0.735291 0.427210 +0.901750 0.756658 0.420493 +0.886875 0.777768 0.413557 +0.871529 0.798609 0.406401 +0.855713 0.819167 0.399025 +0.839429 0.839429 0.391432 +0.819167 0.855713 0.399025 +0.798609 0.871529 0.406401 +0.777768 0.886875 0.413557 +0.756658 0.901750 0.420493 +0.735291 0.916154 0.427210 +0.713680 0.930086 0.433706 +0.691836 0.943545 0.439982 +0.669772 0.956533 0.446039 +0.647498 0.969049 0.451875 +0.625026 0.981094 0.457491 +0.602366 0.992668 0.462889 +0.579529 1.003773 0.468067 +0.556524 1.014409 0.473027 +0.533362 1.024579 0.477769 +0.510052 1.034282 0.482294 +0.486602 1.043521 0.486602 +0.463022 1.052297 0.490694 +0.439320 1.060612 0.494571 +0.415504 1.068466 0.498234 +0.391582 1.075862 0.501683 +0.367561 1.082800 0.504918 +0.343450 1.089283 0.507941 +0.319254 1.095312 0.510752 +0.294982 1.100888 0.513353 +0.270640 1.106013 0.515742 +0.246233 1.110687 0.517922 +0.221770 1.114913 0.519892 +0.197255 1.118690 0.521654 +0.172696 1.122021 0.523207 +0.148097 1.124906 0.524552 +0.123464 1.127345 0.525690 +0.098804 1.129340 0.526620 +0.074123 1.130891 0.527343 +0.049424 1.131999 0.527860 +0.024715 1.132663 0.528170 +0.000000 1.132885 0.528273 +1.144139 0.000000 0.503433 +1.143911 0.024960 0.503333 +1.143227 0.049914 0.503032 +1.142086 0.074856 0.502530 +1.140488 0.099780 0.501827 +1.138434 0.124679 0.500923 +1.135922 0.149547 0.499818 +1.132952 0.174378 0.498511 +1.129523 0.199165 0.497002 +1.125635 0.223903 0.495291 +1.121287 0.248583 0.493378 +1.116478 0.273200 0.491262 +1.111207 0.297747 0.488943 +1.105474 0.322216 0.486420 +1.099277 0.346601 0.483693 +1.092615 0.370893 0.480762 +1.085487 0.395085 0.477626 +1.077892 0.419169 0.474284 +1.069830 0.443138 0.470736 +1.061299 0.466983 0.466983 +1.052297 0.490694 0.463022 +1.042825 0.514265 0.458854 +1.032882 0.537684 0.454479 +1.022466 0.560944 0.449896 +1.011576 0.584034 0.445104 +1.000213 0.606944 0.440104 +0.988376 0.629665 0.434896 +0.976065 0.652186 0.429479 +0.963279 0.674495 0.423853 +0.950018 0.696582 0.418018 +0.936284 0.718436 0.411975 +0.922076 0.740044 0.405723 +0.907395 0.761395 0.399263 +0.892243 0.782477 0.392597 +0.876622 0.803276 0.385723 +0.860532 0.823780 0.378643 +0.843977 0.843977 0.371359 +0.823780 0.860532 0.378643 +0.803276 0.876622 0.385723 +0.782477 0.892243 0.392597 +0.761395 0.907395 0.399263 +0.740044 0.922076 0.405723 +0.718436 0.936284 0.411975 +0.696582 0.950018 0.418018 +0.674495 0.963279 0.423853 +0.652186 0.976065 0.429479 +0.629665 0.988376 0.434896 +0.606944 1.000213 0.440104 +0.584034 1.011576 0.445104 +0.560944 1.022466 0.449896 +0.537684 1.032882 0.454479 +0.514265 1.042825 0.458854 +0.490694 1.052297 0.463022 +0.466983 1.061299 0.466983 +0.443138 1.069830 0.470736 +0.419169 1.077892 0.474284 +0.395085 1.085487 0.477626 +0.370893 1.092615 0.480762 +0.346601 1.099277 0.483693 +0.322216 1.105474 0.486420 +0.297747 1.111207 0.488943 +0.273200 1.116478 0.491262 +0.248583 1.121287 0.493378 +0.223903 1.125635 0.495291 +0.199165 1.129523 0.497002 +0.174378 1.132952 0.498511 +0.149547 1.135922 0.499818 +0.124679 1.138434 0.500923 +0.099780 1.140488 0.501827 +0.074856 1.142086 0.502530 +0.049914 1.143227 0.503032 +0.024960 1.143911 0.503333 +0.000000 1.144139 0.503433 +1.154849 0.000000 0.478354 +1.154615 0.025194 0.478257 +1.153911 0.050381 0.477966 +1.152738 0.075554 0.477480 +1.151095 0.100708 0.476799 +1.148983 0.125834 0.475924 +1.146401 0.150926 0.474855 +1.143348 0.175978 0.473590 +1.139824 0.200982 0.472131 +1.135829 0.225930 0.470476 +1.131362 0.250817 0.468626 +1.126423 0.275634 0.466580 +1.121011 0.300374 0.464338 +1.115125 0.325029 0.461900 +1.108765 0.349592 0.459266 +1.101930 0.374055 0.456434 +1.094620 0.398409 0.453406 +1.086833 0.422646 0.450181 +1.078570 0.446758 0.446758 +1.069830 0.470736 0.443138 +1.060612 0.494571 0.439320 +1.050916 0.518254 0.435303 +1.040741 0.541775 0.431089 +1.030088 0.565125 0.426676 +1.018956 0.588294 0.422065 +1.007345 0.611272 0.417256 +0.995256 0.634048 0.412249 +0.982689 0.656612 0.407043 +0.969644 0.678952 0.401640 +0.956123 0.701058 0.396039 +0.942126 0.722918 0.390241 +0.927654 0.744521 0.384247 +0.912710 0.765855 0.378057 +0.897295 0.786907 0.371672 +0.881411 0.807664 0.365092 +0.865061 0.828116 0.358320 +0.848248 0.848248 0.351356 +0.828116 0.865061 0.358320 +0.807664 0.881411 0.365092 +0.786907 0.897295 0.371672 +0.765855 0.912710 0.378057 +0.744521 0.927654 0.384247 +0.722918 0.942126 0.390241 +0.701058 0.956123 0.396039 +0.678952 0.969644 0.401640 +0.656612 0.982689 0.407043 +0.634048 0.995256 0.412249 +0.611272 1.007345 0.417256 +0.588294 1.018956 0.422065 +0.565125 1.030088 0.426676 +0.541775 1.040741 0.431089 +0.518254 1.050916 0.435303 +0.494571 1.060612 0.439320 +0.470736 1.069830 0.443138 +0.446758 1.078570 0.446758 +0.422646 1.086833 0.450181 +0.398409 1.094620 0.453406 +0.374055 1.101930 0.456434 +0.349592 1.108765 0.459266 +0.325029 1.115125 0.461900 +0.300374 1.121011 0.464338 +0.275634 1.126423 0.466580 +0.250817 1.131362 0.468626 +0.225930 1.135829 0.470476 +0.200982 1.139824 0.472131 +0.175978 1.143348 0.473590 +0.150926 1.146401 0.474855 +0.125834 1.148983 0.475924 +0.100708 1.151095 0.476799 +0.075554 1.152738 0.477480 +0.050381 1.153911 0.477966 +0.025194 1.154615 0.478257 +0.000000 1.154849 0.478354 +1.165010 0.000000 0.453048 +1.164769 0.025415 0.452954 +1.164046 0.050823 0.452673 +1.162842 0.076217 0.452205 +1.161156 0.101588 0.451549 +1.158988 0.126930 0.450706 +1.156338 0.152235 0.449675 +1.153205 0.177495 0.448457 +1.149590 0.202704 0.447051 +1.145492 0.227852 0.445457 +1.140910 0.252934 0.443676 +1.135846 0.277940 0.441706 +1.130297 0.302862 0.439549 +1.124265 0.327693 0.437203 +1.117748 0.352425 0.434668 +1.110747 0.377048 0.431946 +1.103261 0.401554 0.429035 +1.095290 0.425935 0.425935 +1.086833 0.450181 0.422646 +1.077892 0.474284 0.419169 +1.068466 0.498234 0.415504 +1.058555 0.522021 0.411649 +1.048159 0.545637 0.407607 +1.037279 0.569071 0.403376 +1.025914 0.592312 0.398956 +1.014067 0.615351 0.394349 +1.001737 0.638177 0.389554 +0.988926 0.660779 0.384572 +0.975635 0.683147 0.379404 +0.961865 0.705268 0.374049 +0.947618 0.727133 0.368508 +0.932896 0.748728 0.362783 +0.917701 0.770043 0.356874 +0.902036 0.791064 0.350783 +0.885904 0.811781 0.344509 +0.869307 0.832180 0.338055 +0.852250 0.852250 0.331422 +0.832180 0.869307 0.338055 +0.811781 0.885904 0.344509 +0.791064 0.902036 0.350783 +0.770043 0.917701 0.356874 +0.748728 0.932896 0.362783 +0.727133 0.947618 0.368508 +0.705268 0.961865 0.374049 +0.683147 0.975635 0.379404 +0.660779 0.988926 0.384572 +0.638177 1.001737 0.389554 +0.615351 1.014067 0.394349 +0.592312 1.025914 0.398956 +0.569071 1.037279 0.403376 +0.545637 1.048159 0.407607 +0.522021 1.058555 0.411649 +0.498234 1.068466 0.415504 +0.474284 1.077892 0.419169 +0.450181 1.086833 0.422646 +0.425935 1.095290 0.425935 +0.401554 1.103261 0.429035 +0.377048 1.110747 0.431946 +0.352425 1.117748 0.434668 +0.327693 1.124265 0.437203 +0.302862 1.130297 0.439549 +0.277940 1.135846 0.441706 +0.252934 1.140910 0.443676 +0.227852 1.145492 0.445457 +0.202704 1.149590 0.447051 +0.177495 1.153205 0.448457 +0.152235 1.156338 0.449675 +0.126930 1.158988 0.450706 +0.101588 1.161156 0.451549 +0.076217 1.162842 0.452205 +0.050823 1.164046 0.452673 +0.025415 1.164769 0.452954 +0.000000 1.165010 0.453048 +1.174616 0.000000 0.427525 +1.174369 0.025625 0.427435 +1.173628 0.051242 0.427166 +1.172394 0.076843 0.426717 +1.170666 0.102420 0.426088 +1.168445 0.127965 0.425279 +1.165729 0.153471 0.424291 +1.162520 0.178929 0.423123 +1.158816 0.204331 0.421775 +1.154619 0.229668 0.420247 +1.149928 0.254933 0.418539 +1.144743 0.280117 0.416652 +1.139063 0.305211 0.414585 +1.132890 0.330207 0.412338 +1.126223 0.355097 0.409912 +1.119062 0.379871 0.407305 +1.111408 0.404519 0.404519 +1.103261 0.429035 0.401554 +1.094620 0.453406 0.398409 +1.085487 0.477626 0.395085 +1.075862 0.501683 0.391582 +1.065745 0.525567 0.387900 +1.055138 0.549270 0.384039 +1.044041 0.572781 0.380000 +1.032456 0.596089 0.375783 +1.020383 0.619184 0.371389 +1.007824 0.642055 0.366818 +0.994781 0.664692 0.362071 +0.981256 0.687083 0.357148 +0.967250 0.709217 0.352050 +0.952766 0.731083 0.346778 +0.937806 0.752669 0.341334 +0.922374 0.773964 0.335717 +0.906473 0.794955 0.329929 +0.890105 0.815631 0.323972 +0.873276 0.835980 0.317846 +0.855989 0.855989 0.311554 +0.835980 0.873276 0.317846 +0.815631 0.890105 0.323972 +0.794955 0.906473 0.329929 +0.773964 0.922374 0.335717 +0.752669 0.937806 0.341334 +0.731083 0.952766 0.346778 +0.709217 0.967250 0.352050 +0.687083 0.981256 0.357148 +0.664692 0.994781 0.362071 +0.642055 1.007824 0.366818 +0.619184 1.020383 0.371389 +0.596089 1.032456 0.375783 +0.572781 1.044041 0.380000 +0.549270 1.055138 0.384039 +0.525567 1.065745 0.387900 +0.501683 1.075862 0.391582 +0.477626 1.085487 0.395085 +0.453406 1.094620 0.398409 +0.429035 1.103261 0.401554 +0.404519 1.111408 0.404519 +0.379871 1.119062 0.407305 +0.355097 1.126223 0.409912 +0.330207 1.132890 0.412338 +0.305211 1.139063 0.414585 +0.280117 1.144743 0.416652 +0.254933 1.149928 0.418539 +0.229668 1.154619 0.420247 +0.204331 1.158816 0.421775 +0.178929 1.162520 0.423123 +0.153471 1.165729 0.424291 +0.127965 1.168445 0.425279 +0.102420 1.170666 0.426088 +0.076843 1.172394 0.426717 +0.051242 1.173628 0.427166 +0.025625 1.174369 0.427435 +0.000000 1.174616 0.427525 +1.183663 0.000000 0.401799 +1.183410 0.025822 0.401714 +1.182652 0.051636 0.401456 +1.181389 0.077432 0.401028 +1.179621 0.103204 0.400428 +1.177348 0.128941 0.399656 +1.174571 0.154635 0.398713 +1.171288 0.180278 0.397599 +1.167500 0.205862 0.396313 +1.163208 0.231377 0.394856 +1.158412 0.256814 0.393228 +1.153112 0.282165 0.391429 +1.147308 0.307420 0.389458 +1.141000 0.332571 0.387317 +1.134190 0.357609 0.385006 +1.126877 0.382523 0.382523 +1.119062 0.407305 0.379871 +1.110747 0.431946 0.377048 +1.101930 0.456434 0.374055 +1.092615 0.480762 0.370893 +1.082800 0.504918 0.367561 +1.072489 0.528893 0.364061 +1.061681 0.552676 0.360392 +1.050379 0.576257 0.356556 +1.038583 0.599626 0.352552 +1.026297 0.622772 0.348381 +1.013521 0.645684 0.344044 +1.000259 0.668351 0.339542 +0.986512 0.690763 0.334876 +0.972283 0.712907 0.330045 +0.957575 0.734773 0.325053 +0.942391 0.756349 0.319899 +0.926735 0.777623 0.314584 +0.910611 0.798585 0.309111 +0.894023 0.819221 0.303480 +0.876975 0.839520 0.297693 +0.859471 0.859471 0.291751 +0.839520 0.876975 0.297693 +0.819221 0.894023 0.303480 +0.798585 0.910611 0.309111 +0.777623 0.926735 0.314584 +0.756349 0.942391 0.319899 +0.734773 0.957575 0.325053 +0.712907 0.972283 0.330045 +0.690763 0.986512 0.334876 +0.668351 1.000259 0.339542 +0.645684 1.013521 0.344044 +0.622772 1.026297 0.348381 +0.599626 1.038583 0.352552 +0.576257 1.050379 0.356556 +0.552676 1.061681 0.360392 +0.528893 1.072489 0.364061 +0.504918 1.082800 0.367561 +0.480762 1.092615 0.370893 +0.456434 1.101930 0.374055 +0.431946 1.110747 0.377048 +0.407305 1.119062 0.379871 +0.382523 1.126877 0.382523 +0.357609 1.134190 0.385006 +0.332571 1.141000 0.387317 +0.307420 1.147308 0.389458 +0.282165 1.153112 0.391429 +0.256814 1.158412 0.393228 +0.231377 1.163208 0.394856 +0.205862 1.167500 0.396313 +0.180278 1.171288 0.397599 +0.154635 1.174571 0.398713 +0.128941 1.177348 0.399656 +0.103204 1.179621 0.400428 +0.077432 1.181389 0.401028 +0.051636 1.182652 0.401456 +0.025822 1.183410 0.401714 +0.000000 1.183663 0.401799 +1.192146 0.000000 0.375882 +1.191888 0.026007 0.375801 +1.191114 0.052005 0.375557 +1.189824 0.077985 0.375150 +1.188018 0.103938 0.374581 +1.185696 0.129855 0.373849 +1.182859 0.155726 0.372954 +1.179506 0.181543 0.371897 +1.175639 0.207297 0.370677 +1.171257 0.232977 0.369296 +1.166361 0.258576 0.367752 +1.160951 0.284083 0.366046 +1.155028 0.309489 0.364179 +1.148593 0.334784 0.362150 +1.141647 0.359960 0.359960 +1.134190 0.385006 0.357609 +1.126223 0.409912 0.355097 +1.117748 0.434668 0.352425 +1.108765 0.459266 0.349592 +1.099277 0.483693 0.346601 +1.089283 0.507941 0.343450 +1.078787 0.531999 0.340140 +1.067790 0.555856 0.336673 +1.056293 0.579502 0.333048 +1.044300 0.602927 0.329267 +1.031812 0.626119 0.325329 +1.018832 0.649068 0.321236 +1.005363 0.671762 0.316990 +0.991407 0.694191 0.312589 +0.976968 0.716343 0.308037 +0.962050 0.738207 0.303333 +0.946656 0.759772 0.298479 +0.930790 0.781026 0.293477 +0.914457 0.801957 0.288327 +0.897661 0.822555 0.283032 +0.880408 0.842807 0.277592 +0.862702 0.862702 0.272009 +0.842807 0.880408 0.277592 +0.822555 0.897661 0.283032 +0.801957 0.914457 0.288327 +0.781026 0.930790 0.293477 +0.759772 0.946656 0.298479 +0.738207 0.962050 0.303333 +0.716343 0.976968 0.308037 +0.694191 0.991407 0.312589 +0.671762 1.005363 0.316990 +0.649068 1.018832 0.321236 +0.626119 1.031812 0.325329 +0.602927 1.044300 0.329267 +0.579502 1.056293 0.333048 +0.555856 1.067790 0.336673 +0.531999 1.078787 0.340140 +0.507941 1.089283 0.343450 +0.483693 1.099277 0.346601 +0.459266 1.108765 0.349592 +0.434668 1.117748 0.352425 +0.409912 1.126223 0.355097 +0.385006 1.134190 0.357609 +0.359960 1.141647 0.359960 +0.334784 1.148593 0.362150 +0.309489 1.155028 0.364179 +0.284083 1.160951 0.366046 +0.258576 1.166361 0.367752 +0.232977 1.171257 0.369296 +0.207297 1.175639 0.370677 +0.181543 1.179506 0.371897 +0.155726 1.182859 0.372954 +0.129855 1.185696 0.373849 +0.103938 1.188018 0.374581 +0.077985 1.189824 0.375150 +0.052005 1.191114 0.375557 +0.026007 1.191888 0.375801 +0.000000 1.192146 0.375882 +1.200062 0.000000 0.349786 +1.199799 0.026180 0.349710 +1.199009 0.052350 0.349479 +1.197693 0.078501 0.349096 +1.195851 0.104623 0.348559 +1.193483 0.130708 0.347869 +1.190590 0.156744 0.347025 +1.187172 0.182723 0.346029 +1.183228 0.208635 0.344880 +1.178761 0.234470 0.343578 +1.173771 0.260219 0.342123 +1.168258 0.285871 0.340516 +1.162223 0.311417 0.338757 +1.155668 0.336847 0.336847 +1.148593 0.362150 0.334784 +1.141000 0.387317 0.332571 +1.132890 0.412338 0.330207 +1.124265 0.437203 0.327693 +1.115125 0.461900 0.325029 +1.105474 0.486420 0.322216 +1.095312 0.510752 0.319254 +1.084642 0.534886 0.316144 +1.073467 0.558812 0.312887 +1.061788 0.582517 0.309483 +1.049609 0.605992 0.305933 +1.036932 0.629226 0.302238 +1.023760 0.652207 0.298399 +1.010097 0.674925 0.294416 +0.995946 0.697369 0.290292 +0.981311 0.719527 0.286026 +0.966196 0.741388 0.281620 +0.950605 0.762941 0.277076 +0.934543 0.784175 0.272395 +0.918015 0.805078 0.267577 +0.901026 0.825639 0.262625 +0.883582 0.845846 0.257541 +0.865688 0.865688 0.252325 +0.845846 0.883582 0.257541 +0.825639 0.901026 0.262625 +0.805078 0.918015 0.267577 +0.784175 0.934543 0.272395 +0.762941 0.950605 0.277076 +0.741388 0.966196 0.281620 +0.719527 0.981311 0.286026 +0.697369 0.995946 0.290292 +0.674925 1.010097 0.294416 +0.652207 1.023760 0.298399 +0.629226 1.036932 0.302238 +0.605992 1.049609 0.305933 +0.582517 1.061788 0.309483 +0.558812 1.073467 0.312887 +0.534886 1.084642 0.316144 +0.510752 1.095312 0.319254 +0.486420 1.105474 0.322216 +0.461900 1.115125 0.325029 +0.437203 1.124265 0.327693 +0.412338 1.132890 0.330207 +0.387317 1.141000 0.332571 +0.362150 1.148593 0.334784 +0.336847 1.155668 0.336847 +0.311417 1.162223 0.338757 +0.285871 1.168258 0.340516 +0.260219 1.173771 0.342123 +0.234470 1.178761 0.343578 +0.208635 1.183228 0.344880 +0.182723 1.187172 0.346029 +0.156744 1.190590 0.347025 +0.130708 1.193483 0.347869 +0.104623 1.195851 0.348559 +0.078501 1.197693 0.349096 +0.052350 1.199009 0.349479 +0.026180 1.199799 0.349710 +0.000000 1.200062 0.349786 +1.207407 0.000000 0.323524 +1.207139 0.026340 0.323452 +1.206335 0.052670 0.323236 +1.204995 0.078980 0.322877 +1.203119 0.105259 0.322375 +1.200708 0.131499 0.321729 +1.197761 0.157688 0.320939 +1.194281 0.183817 0.320007 +1.190267 0.209876 0.318931 +1.185720 0.235854 0.317713 +1.180641 0.261742 0.316352 +1.175031 0.287528 0.314849 +1.168891 0.313204 0.313204 +1.162223 0.338757 0.311417 +1.155028 0.364179 0.309489 +1.147308 0.389458 0.307420 +1.139063 0.414585 0.305211 +1.130297 0.439549 0.302862 +1.121011 0.464338 0.300374 +1.111207 0.488943 0.297747 +1.100888 0.513353 0.294982 +1.090056 0.537556 0.292080 +1.078714 0.561543 0.289041 +1.066865 0.585302 0.285866 +1.054513 0.608823 0.282556 +1.041659 0.632094 0.279112 +1.028309 0.655105 0.275534 +1.014465 0.677844 0.271825 +1.000132 0.700300 0.267985 +0.985314 0.722462 0.264014 +0.970017 0.744320 0.259915 +0.954243 0.765861 0.255689 +0.937999 0.787075 0.251336 +0.921291 0.807950 0.246859 +0.904123 0.828476 0.242259 +0.886502 0.848641 0.237537 +0.868433 0.868433 0.232696 +0.848641 0.886502 0.237537 +0.828476 0.904123 0.242259 +0.807950 0.921291 0.246859 +0.787075 0.937999 0.251336 +0.765861 0.954243 0.255689 +0.744320 0.970017 0.259915 +0.722462 0.985314 0.264014 +0.700300 1.000132 0.267985 +0.677844 1.014465 0.271825 +0.655105 1.028309 0.275534 +0.632094 1.041659 0.279112 +0.608823 1.054513 0.282556 +0.585302 1.066865 0.285866 +0.561543 1.078714 0.289041 +0.537556 1.090056 0.292080 +0.513353 1.100888 0.294982 +0.488943 1.111207 0.297747 +0.464338 1.121011 0.300374 +0.439549 1.130297 0.302862 +0.414585 1.139063 0.305211 +0.389458 1.147308 0.307420 +0.364179 1.155028 0.309489 +0.338757 1.162223 0.311417 +0.313204 1.168891 0.313204 +0.287528 1.175031 0.314849 +0.261742 1.180641 0.316352 +0.235854 1.185720 0.317713 +0.209876 1.190267 0.318931 +0.183817 1.194281 0.320007 +0.157688 1.197761 0.320939 +0.131499 1.200708 0.321729 +0.105259 1.203119 0.322375 +0.078980 1.204995 0.322877 +0.052670 1.206335 0.323236 +0.026340 1.207139 0.323452 +0.000000 1.207407 0.323524 +1.214178 0.000000 0.297107 +1.213905 0.026488 0.297041 +1.213087 0.052965 0.296841 +1.211724 0.079421 0.296507 +1.209817 0.105845 0.296040 +1.207365 0.132228 0.295440 +1.204370 0.158558 0.294707 +1.200832 0.184826 0.293842 +1.196751 0.211020 0.292843 +1.192130 0.237129 0.291712 +1.186968 0.263145 0.290449 +1.181268 0.289055 0.289055 +1.175031 0.314849 0.287528 +1.168258 0.340516 0.285871 +1.160951 0.366046 0.284083 +1.153112 0.391429 0.282165 +1.144743 0.416652 0.280117 +1.135846 0.441706 0.277940 +1.126423 0.466580 0.275634 +1.116478 0.491262 0.273200 +1.106013 0.515742 0.270640 +1.095030 0.540009 0.267952 +1.083534 0.564052 0.265139 +1.071527 0.587860 0.262201 +1.059014 0.611422 0.259139 +1.045997 0.634727 0.255954 +1.032481 0.657763 0.252647 +1.018471 0.680520 0.249218 +1.003970 0.702987 0.245670 +0.988983 0.725153 0.242003 +0.973517 0.747006 0.238218 +0.957575 0.768535 0.234317 +0.941163 0.789730 0.230301 +0.924288 0.810579 0.226172 +0.906955 0.831071 0.221930 +0.889171 0.851196 0.217579 +0.870942 0.870942 0.213118 +0.851196 0.889171 0.217579 +0.831071 0.906955 0.221930 +0.810579 0.924288 0.226172 +0.789730 0.941163 0.230301 +0.768535 0.957575 0.234317 +0.747006 0.973517 0.238218 +0.725153 0.988983 0.242003 +0.702987 1.003970 0.245670 +0.680520 1.018471 0.249218 +0.657763 1.032481 0.252647 +0.634727 1.045997 0.255954 +0.611422 1.059014 0.259139 +0.587860 1.071527 0.262201 +0.564052 1.083534 0.265139 +0.540009 1.095030 0.267952 +0.515742 1.106013 0.270640 +0.491262 1.116478 0.273200 +0.466580 1.126423 0.275634 +0.441706 1.135846 0.277940 +0.416652 1.144743 0.280117 +0.391429 1.153112 0.282165 +0.366046 1.160951 0.284083 +0.340516 1.168258 0.285871 +0.314849 1.175031 0.287528 +0.289055 1.181268 0.289055 +0.263145 1.186968 0.290449 +0.237129 1.192130 0.291712 +0.211020 1.196751 0.292843 +0.184826 1.200832 0.293842 +0.158558 1.204370 0.294707 +0.132228 1.207365 0.295440 +0.105845 1.209817 0.296040 +0.079421 1.211724 0.296507 +0.052965 1.213087 0.296841 +0.026488 1.213905 0.297041 +0.000000 1.214178 0.297107 +1.220370 0.000000 0.270550 +1.220093 0.026623 0.270488 +1.219263 0.053234 0.270304 +1.217879 0.079824 0.269997 +1.215942 0.106381 0.269568 +1.213453 0.132895 0.269016 +1.210413 0.159354 0.268342 +1.206821 0.185748 0.267546 +1.202680 0.212065 0.266628 +1.197989 0.238295 0.265588 +1.192752 0.264427 0.264427 +1.186968 0.290449 0.263145 +1.180641 0.316352 0.261742 +1.173771 0.342123 0.260219 +1.166361 0.367752 0.258576 +1.158412 0.393228 0.256814 +1.149928 0.418539 0.254933 +1.140910 0.443676 0.252934 +1.131362 0.468626 0.250817 +1.121287 0.493378 0.248583 +1.110687 0.517922 0.246233 +1.099566 0.542246 0.243768 +1.087928 0.566340 0.241188 +1.075776 0.590191 0.238494 +1.063115 0.613790 0.235687 +1.049948 0.637124 0.232768 +1.036281 0.660184 0.229738 +1.022117 0.682957 0.226598 +1.007462 0.705433 0.223349 +0.992321 0.727600 0.219992 +0.976700 0.749448 0.216529 +0.960604 0.770966 0.212961 +0.944039 0.792142 0.209288 +0.927011 0.812967 0.205513 +0.909527 0.833428 0.201637 +0.891594 0.853516 0.197662 +0.873219 0.873219 0.193588 +0.853516 0.891594 0.197662 +0.833428 0.909527 0.201637 +0.812967 0.927011 0.205513 +0.792142 0.944039 0.209288 +0.770966 0.960604 0.212961 +0.749448 0.976700 0.216529 +0.727600 0.992321 0.219992 +0.705433 1.007462 0.223349 +0.682957 1.022117 0.226598 +0.660184 1.036281 0.229738 +0.637124 1.049948 0.232768 +0.613790 1.063115 0.235687 +0.590191 1.075776 0.238494 +0.566340 1.087928 0.241188 +0.542246 1.099566 0.243768 +0.517922 1.110687 0.246233 +0.493378 1.121287 0.248583 +0.468626 1.131362 0.250817 +0.443676 1.140910 0.252934 +0.418539 1.149928 0.254933 +0.393228 1.158412 0.256814 +0.367752 1.166361 0.258576 +0.342123 1.173771 0.260219 +0.316352 1.180641 0.261742 +0.290449 1.186968 0.263145 +0.264427 1.192752 0.264427 +0.238295 1.197989 0.265588 +0.212065 1.202680 0.266628 +0.185748 1.206821 0.267546 +0.159354 1.210413 0.268342 +0.132895 1.213453 0.269016 +0.106381 1.215942 0.269568 +0.079824 1.217879 0.269997 +0.053234 1.219263 0.270304 +0.026623 1.220093 0.270488 +0.000000 1.220370 0.270550 +1.225982 0.000000 0.243863 +1.225701 0.026745 0.243807 +1.224859 0.053479 0.243640 +1.223456 0.080190 0.243361 +1.221493 0.106867 0.242970 +1.218970 0.133499 0.242468 +1.215887 0.160075 0.241855 +1.212247 0.186583 0.241131 +1.208050 0.213012 0.240296 +1.203297 0.239351 0.239351 +1.197989 0.265588 0.238295 +1.192130 0.291712 0.237129 +1.185720 0.317713 0.235854 +1.178761 0.343578 0.234470 +1.171257 0.369296 0.232977 +1.163208 0.394856 0.231377 +1.154619 0.420247 0.229668 +1.145492 0.445457 0.227852 +1.135829 0.470476 0.225930 +1.125635 0.495291 0.223903 +1.114913 0.519892 0.221770 +1.103666 0.544268 0.219533 +1.091898 0.568406 0.217192 +1.079615 0.592297 0.214749 +1.066819 0.615928 0.212203 +1.053516 0.639289 0.209557 +1.039710 0.662368 0.206811 +1.025407 0.685155 0.203966 +1.010612 0.707638 0.201023 +0.995331 0.729807 0.197984 +0.979569 0.751650 0.194848 +0.963333 0.773157 0.191619 +0.946629 0.794316 0.188296 +0.929463 0.815118 0.184882 +0.911843 0.835550 0.181377 +0.893776 0.855604 0.177783 +0.875268 0.875268 0.174102 +0.855604 0.893776 0.177783 +0.835550 0.911843 0.181377 +0.815118 0.929463 0.184882 +0.794316 0.946629 0.188296 +0.773157 0.963333 0.191619 +0.751650 0.979569 0.194848 +0.729807 0.995331 0.197984 +0.707638 1.010612 0.201023 +0.685155 1.025407 0.203966 +0.662368 1.039710 0.206811 +0.639289 1.053516 0.209557 +0.615928 1.066819 0.212203 +0.592297 1.079615 0.214749 +0.568406 1.091898 0.217192 +0.544268 1.103666 0.219533 +0.519892 1.114913 0.221770 +0.495291 1.125635 0.223903 +0.470476 1.135829 0.225930 +0.445457 1.145492 0.227852 +0.420247 1.154619 0.229668 +0.394856 1.163208 0.231377 +0.369296 1.171257 0.232977 +0.343578 1.178761 0.234470 +0.317713 1.185720 0.235854 +0.291712 1.192130 0.237129 +0.265588 1.197989 0.238295 +0.239351 1.203297 0.239351 +0.213012 1.208050 0.240296 +0.186583 1.212247 0.241131 +0.160075 1.215887 0.241855 +0.133499 1.218970 0.242468 +0.106867 1.221493 0.242970 +0.080190 1.223456 0.243361 +0.053479 1.224859 0.243640 +0.026745 1.225701 0.243807 +0.000000 1.225982 0.243863 +1.231010 0.000000 0.217060 +1.230726 0.026855 0.217010 +1.229873 0.053697 0.216860 +1.228453 0.080517 0.216609 +1.226466 0.107302 0.216259 +1.223912 0.134040 0.215809 +1.220792 0.160720 0.215259 +1.217107 0.187331 0.214609 +1.212859 0.213860 0.213860 +1.208050 0.240296 0.213012 +1.202680 0.266628 0.212065 +1.196751 0.292843 0.211020 +1.190267 0.318931 0.209876 +1.183228 0.344880 0.208635 +1.175639 0.370677 0.207297 +1.167500 0.396313 0.205862 +1.158816 0.421775 0.204331 +1.149590 0.447051 0.202704 +1.139824 0.472131 0.200982 +1.129523 0.497002 0.199165 +1.118690 0.521654 0.197255 +1.107330 0.546075 0.195252 +1.095446 0.570253 0.193157 +1.083043 0.594178 0.190970 +1.070127 0.617838 0.188692 +1.056701 0.641222 0.186325 +1.042772 0.664319 0.183869 +1.028344 0.687117 0.181325 +1.013423 0.709607 0.178694 +0.998016 0.731776 0.175977 +0.982129 0.753614 0.173176 +0.965767 0.775110 0.170291 +0.948938 0.796253 0.167323 +0.931649 0.817034 0.164275 +0.913906 0.837441 0.161146 +0.895718 0.857464 0.157939 +0.877092 0.877092 0.154655 +0.857464 0.895718 0.157939 +0.837441 0.913906 0.161146 +0.817034 0.931649 0.164275 +0.796253 0.948938 0.167323 +0.775110 0.965767 0.170291 +0.753614 0.982129 0.173176 +0.731776 0.998016 0.175977 +0.709607 1.013423 0.178694 +0.687117 1.028344 0.181325 +0.664319 1.042772 0.183869 +0.641222 1.056701 0.186325 +0.617838 1.070127 0.188692 +0.594178 1.083043 0.190970 +0.570253 1.095446 0.193157 +0.546075 1.107330 0.195252 +0.521654 1.118690 0.197255 +0.497002 1.129523 0.199165 +0.472131 1.139824 0.200982 +0.447051 1.149590 0.202704 +0.421775 1.158816 0.204331 +0.396313 1.167500 0.205862 +0.370677 1.175639 0.207297 +0.344880 1.183228 0.208635 +0.318931 1.190267 0.209876 +0.292843 1.196751 0.211020 +0.266628 1.202680 0.212065 +0.240296 1.208050 0.213012 +0.213860 1.212859 0.213860 +0.187331 1.217107 0.214609 +0.160720 1.220792 0.215259 +0.134040 1.223912 0.215809 +0.107302 1.226466 0.216259 +0.080517 1.228453 0.216609 +0.053697 1.229873 0.216860 +0.026855 1.230726 0.217010 +0.000000 1.231010 0.217060 +1.235452 0.000000 0.190154 +1.235165 0.026951 0.190110 +1.234303 0.053891 0.189977 +1.232868 0.080806 0.189756 +1.230859 0.107686 0.189447 +1.228277 0.134518 0.189050 +1.225124 0.161291 0.188565 +1.221400 0.187991 0.187991 +1.217107 0.214609 0.187331 +1.212247 0.241131 0.186583 +1.206821 0.267546 0.185748 +1.200832 0.293842 0.184826 +1.194281 0.320007 0.183817 +1.187172 0.346029 0.182723 +1.179506 0.371897 0.181543 +1.171288 0.397599 0.180278 +1.162520 0.423123 0.178929 +1.153205 0.448457 0.177495 +1.143348 0.473590 0.175978 +1.132952 0.498511 0.174378 +1.122021 0.523207 0.172696 +1.110560 0.547667 0.170931 +1.098573 0.571881 0.169087 +1.086065 0.595836 0.167161 +1.073041 0.619521 0.165157 +1.059507 0.642925 0.163074 +1.045468 0.666036 0.160913 +1.030929 0.688845 0.158675 +1.015898 0.711339 0.156362 +1.000379 0.733508 0.153973 +0.984380 0.755341 0.151511 +0.967907 0.776828 0.148975 +0.950968 0.797957 0.146368 +0.933570 0.818719 0.143690 +0.915720 0.839102 0.140943 +0.897425 0.859098 0.138127 +0.878695 0.878695 0.135244 +0.859098 0.897425 0.138127 +0.839102 0.915720 0.140943 +0.818719 0.933570 0.143690 +0.797957 0.950968 0.146368 +0.776828 0.967907 0.148975 +0.755341 0.984380 0.151511 +0.733508 1.000379 0.153973 +0.711339 1.015898 0.156362 +0.688845 1.030929 0.158675 +0.666036 1.045468 0.160913 +0.642925 1.059507 0.163074 +0.619521 1.073041 0.165157 +0.595836 1.086065 0.167161 +0.571881 1.098573 0.169087 +0.547667 1.110560 0.170931 +0.523207 1.122021 0.172696 +0.498511 1.132952 0.174378 +0.473590 1.143348 0.175978 +0.448457 1.153205 0.177495 +0.423123 1.162520 0.178929 +0.397599 1.171288 0.180278 +0.371897 1.179506 0.181543 +0.346029 1.187172 0.182723 +0.320007 1.194281 0.183817 +0.293842 1.200832 0.184826 +0.267546 1.206821 0.185748 +0.241131 1.212247 0.186583 +0.214609 1.217107 0.187331 +0.187991 1.221400 0.187991 +0.161291 1.225124 0.188565 +0.134518 1.228277 0.189050 +0.107686 1.230859 0.189447 +0.080806 1.232868 0.189756 +0.053891 1.234303 0.189977 +0.026951 1.235165 0.190110 +0.000000 1.235452 0.190154 +1.239306 0.000000 0.163158 +1.239016 0.027035 0.163120 +1.238147 0.054059 0.163005 +1.236698 0.081057 0.162814 +1.234670 0.108020 0.162547 +1.232064 0.134933 0.162204 +1.228882 0.161785 0.161785 +1.225124 0.188565 0.161291 +1.220792 0.215259 0.160720 +1.215887 0.241855 0.160075 +1.210413 0.268342 0.159354 +1.204370 0.294707 0.158558 +1.197761 0.320939 0.157688 +1.190590 0.347025 0.156744 +1.182859 0.372954 0.155726 +1.174571 0.398713 0.154635 +1.165729 0.424291 0.153471 +1.156338 0.449675 0.152235 +1.146401 0.474855 0.150926 +1.135922 0.499818 0.149547 +1.124906 0.524552 0.148097 +1.113357 0.549047 0.146576 +1.101280 0.573290 0.144986 +1.088680 0.597271 0.143328 +1.075564 0.620977 0.141601 +1.061935 0.644398 0.139806 +1.047800 0.667522 0.137945 +1.033165 0.690339 0.136019 +1.018037 0.712837 0.134027 +1.002422 0.735006 0.131971 +0.986326 0.756835 0.129852 +0.969757 0.778313 0.127671 +0.952723 0.799429 0.125428 +0.935230 0.820174 0.123125 +0.917286 0.840537 0.120763 +0.898899 0.860509 0.118342 +0.880078 0.880078 0.115864 +0.860509 0.898899 0.118342 +0.840537 0.917286 0.120763 +0.820174 0.935230 0.123125 +0.799429 0.952723 0.125428 +0.778313 0.969757 0.127671 +0.756835 0.986326 0.129852 +0.735006 1.002422 0.131971 +0.712837 1.018037 0.134027 +0.690339 1.033165 0.136019 +0.667522 1.047800 0.137945 +0.644398 1.061935 0.139806 +0.620977 1.075564 0.141601 +0.597271 1.088680 0.143328 +0.573290 1.101280 0.144986 +0.549047 1.113357 0.146576 +0.524552 1.124906 0.148097 +0.499818 1.135922 0.149547 +0.474855 1.146401 0.150926 +0.449675 1.156338 0.152235 +0.424291 1.165729 0.153471 +0.398713 1.174571 0.154635 +0.372954 1.182859 0.155726 +0.347025 1.190590 0.156744 +0.320939 1.197761 0.157688 +0.294707 1.204370 0.158558 +0.268342 1.210413 0.159354 +0.241855 1.215887 0.160075 +0.215259 1.220792 0.160720 +0.188565 1.225124 0.161291 +0.161785 1.228882 0.161785 +0.134933 1.232064 0.162204 +0.108020 1.234670 0.162547 +0.081057 1.236698 0.162814 +0.054059 1.238147 0.163005 +0.027035 1.239016 0.163120 +0.000000 1.239306 0.163158 +1.242570 0.000000 0.136084 +1.242278 0.027107 0.136052 +1.241402 0.054201 0.135956 +1.239941 0.081270 0.135796 +1.237898 0.108302 0.135572 +1.235272 0.135284 0.135284 +1.232064 0.162204 0.134933 +1.228277 0.189050 0.134518 +1.223912 0.215809 0.134040 +1.218970 0.242468 0.133499 +1.213453 0.269016 0.132895 +1.207365 0.295440 0.132228 +1.200708 0.321729 0.131499 +1.193483 0.347869 0.130708 +1.185696 0.373849 0.129855 +1.177348 0.399656 0.128941 +1.168445 0.425279 0.127965 +1.158988 0.450706 0.126930 +1.148983 0.475924 0.125834 +1.138434 0.500923 0.124679 +1.127345 0.525690 0.123464 +1.115722 0.550213 0.122191 +1.103569 0.574481 0.120860 +1.090891 0.598483 0.119472 +1.077695 0.622208 0.118027 +1.063986 0.645643 0.116525 +1.049771 0.668778 0.114969 +1.035055 0.691601 0.113357 +1.019844 0.714103 0.111691 +1.004147 0.736271 0.109972 +0.987969 0.758096 0.108200 +0.971319 0.779566 0.106377 +0.954203 0.800672 0.104502 +0.936630 0.821402 0.102578 +0.918607 0.841748 0.100604 +0.900143 0.861699 0.098582 +0.881245 0.881245 0.096512 +0.861699 0.900143 0.098582 +0.841748 0.918607 0.100604 +0.821402 0.936630 0.102578 +0.800672 0.954203 0.104502 +0.779566 0.971319 0.106377 +0.758096 0.987969 0.108200 +0.736271 1.004147 0.109972 +0.714103 1.019844 0.111691 +0.691601 1.035055 0.113357 +0.668778 1.049771 0.114969 +0.645643 1.063986 0.116525 +0.622208 1.077695 0.118027 +0.598483 1.090891 0.119472 +0.574481 1.103569 0.120860 +0.550213 1.115722 0.122191 +0.525690 1.127345 0.123464 +0.500923 1.138434 0.124679 +0.475924 1.148983 0.125834 +0.450706 1.158988 0.126930 +0.425279 1.168445 0.127965 +0.399656 1.177348 0.128941 +0.373849 1.185696 0.129855 +0.347869 1.193483 0.130708 +0.321729 1.200708 0.131499 +0.295440 1.207365 0.132228 +0.269016 1.213453 0.132895 +0.242468 1.218970 0.133499 +0.215809 1.223912 0.134040 +0.189050 1.228277 0.134518 +0.162204 1.232064 0.134933 +0.135284 1.235272 0.135284 +0.108302 1.237898 0.135572 +0.081270 1.239941 0.135796 +0.054201 1.241402 0.135956 +0.027107 1.242278 0.136052 +0.000000 1.242570 0.136084 +1.245243 0.000000 0.108945 +1.244949 0.027165 0.108919 +1.244067 0.054317 0.108842 +1.242597 0.081444 0.108713 +1.240541 0.108533 0.108533 +1.237898 0.135572 0.108302 +1.234670 0.162547 0.108020 +1.230859 0.189447 0.107686 +1.226466 0.216259 0.107302 +1.221493 0.242970 0.106867 +1.215942 0.269568 0.106381 +1.209817 0.296040 0.105845 +1.203119 0.322375 0.105259 +1.195851 0.348559 0.104623 +1.188018 0.374581 0.103938 +1.179621 0.400428 0.103204 +1.170666 0.426088 0.102420 +1.161156 0.451549 0.101588 +1.151095 0.476799 0.100708 +1.140488 0.501827 0.099780 +1.129340 0.526620 0.098804 +1.117656 0.551167 0.097782 +1.105440 0.575456 0.096713 +1.092699 0.599475 0.095599 +1.079438 0.623214 0.094439 +1.065663 0.646660 0.093233 +1.051381 0.669804 0.091984 +1.036598 0.692633 0.090691 +1.021321 0.715136 0.089354 +1.005556 0.737304 0.087975 +0.989311 0.759125 0.086554 +0.972594 0.780589 0.085091 +0.955412 0.801686 0.083588 +0.937773 0.822405 0.082045 +0.919685 0.842736 0.080462 +0.901157 0.862670 0.078841 +0.882197 0.882197 0.077182 +0.862670 0.901157 0.078841 +0.842736 0.919685 0.080462 +0.822405 0.937773 0.082045 +0.801686 0.955412 0.083588 +0.780589 0.972594 0.085091 +0.759125 0.989311 0.086554 +0.737304 1.005556 0.087975 +0.715136 1.021321 0.089354 +0.692633 1.036598 0.090691 +0.669804 1.051381 0.091984 +0.646660 1.065663 0.093233 +0.623214 1.079438 0.094439 +0.599475 1.092699 0.095599 +0.575456 1.105440 0.096713 +0.551167 1.117656 0.097782 +0.526620 1.129340 0.098804 +0.501827 1.140488 0.099780 +0.476799 1.151095 0.100708 +0.451549 1.161156 0.101588 +0.426088 1.170666 0.102420 +0.400428 1.179621 0.103204 +0.374581 1.188018 0.103938 +0.348559 1.195851 0.104623 +0.322375 1.203119 0.105259 +0.296040 1.209817 0.105845 +0.269568 1.215942 0.106381 +0.242970 1.221493 0.106867 +0.216259 1.226466 0.107302 +0.189447 1.230859 0.107686 +0.162547 1.234670 0.108020 +0.135572 1.237898 0.108302 +0.108533 1.240541 0.108533 +0.081444 1.242597 0.108713 +0.054317 1.244067 0.108842 +0.027165 1.244949 0.108919 +0.000000 1.245243 0.108945 +1.247324 0.000000 0.081754 +1.247028 0.027210 0.081735 +1.246142 0.054408 0.081676 +1.244664 0.081580 0.081580 +1.242597 0.108713 0.081444 +1.239941 0.135796 0.081270 +1.236698 0.162814 0.081057 +1.232868 0.189756 0.080806 +1.228453 0.216609 0.080517 +1.223456 0.243361 0.080190 +1.217879 0.269997 0.079824 +1.211724 0.296507 0.079421 +1.204995 0.322877 0.078980 +1.197693 0.349096 0.078501 +1.189824 0.375150 0.077985 +1.181389 0.401028 0.077432 +1.172394 0.426717 0.076843 +1.162842 0.452205 0.076217 +1.152738 0.477480 0.075554 +1.142086 0.502530 0.074856 +1.130891 0.527343 0.074123 +1.119159 0.551908 0.073354 +1.106894 0.576213 0.072550 +1.094104 0.600246 0.071711 +1.080792 0.623996 0.070839 +1.066966 0.647451 0.069933 +1.052632 0.670601 0.068993 +1.037797 0.693434 0.068021 +1.022467 0.715939 0.067016 +1.006651 0.738107 0.065979 +0.990354 0.759925 0.064911 +0.973585 0.781384 0.063812 +0.956351 0.802474 0.062683 +0.938661 0.823183 0.061523 +0.920523 0.843503 0.060334 +0.901945 0.863424 0.059117 +0.882936 0.882936 0.057871 +0.863424 0.901945 0.059117 +0.843503 0.920523 0.060334 +0.823183 0.938661 0.061523 +0.802474 0.956351 0.062683 +0.781384 0.973585 0.063812 +0.759925 0.990354 0.064911 +0.738107 1.006651 0.065979 +0.715939 1.022467 0.067016 +0.693434 1.037797 0.068021 +0.670601 1.052632 0.068993 +0.647451 1.066966 0.069933 +0.623996 1.080792 0.070839 +0.600246 1.094104 0.071711 +0.576213 1.106894 0.072550 +0.551908 1.119159 0.073354 +0.527343 1.130891 0.074123 +0.502530 1.142086 0.074856 +0.477480 1.152738 0.075554 +0.452205 1.162842 0.076217 +0.426717 1.172394 0.076843 +0.401028 1.181389 0.077432 +0.375150 1.189824 0.077985 +0.349096 1.197693 0.078501 +0.322877 1.204995 0.078980 +0.296507 1.211724 0.079421 +0.269997 1.217879 0.079824 +0.243361 1.223456 0.080190 +0.216609 1.228453 0.080517 +0.189756 1.232868 0.080806 +0.162814 1.236698 0.081057 +0.135796 1.239941 0.081270 +0.108713 1.242597 0.081444 +0.081580 1.244664 0.081580 +0.054408 1.246142 0.081676 +0.027210 1.247028 0.081735 +0.000000 1.247324 0.081754 +1.248810 0.000000 0.054524 +1.248514 0.027243 0.054511 +1.247624 0.054472 0.054472 +1.246142 0.081676 0.054408 +1.244067 0.108842 0.054317 +1.241402 0.135956 0.054201 +1.238147 0.163005 0.054059 +1.234303 0.189977 0.053891 +1.229873 0.216860 0.053697 +1.224859 0.243640 0.053479 +1.219263 0.270304 0.053234 +1.213087 0.296841 0.052965 +1.206335 0.323236 0.052670 +1.199009 0.349479 0.052350 +1.191114 0.375557 0.052005 +1.182652 0.401456 0.051636 +1.173628 0.427166 0.051242 +1.164046 0.452673 0.050823 +1.153911 0.477966 0.050381 +1.143227 0.503032 0.049914 +1.131999 0.527860 0.049424 +1.120232 0.552437 0.048910 +1.107933 0.576753 0.048373 +1.095106 0.600796 0.047813 +1.081759 0.624554 0.047231 +1.067896 0.648015 0.046625 +1.053525 0.671170 0.045998 +1.038653 0.694006 0.045349 +1.023286 0.716512 0.044678 +1.007431 0.738679 0.043985 +0.991097 0.760496 0.043272 +0.974291 0.781951 0.042538 +0.957020 0.803035 0.041784 +0.939294 0.823739 0.041010 +0.921120 0.844051 0.040217 +0.902506 0.863962 0.039404 +0.883463 0.883463 0.038573 +0.863962 0.902506 0.039404 +0.844051 0.921120 0.040217 +0.823739 0.939294 0.041010 +0.803035 0.957020 0.041784 +0.781951 0.974291 0.042538 +0.760496 0.991097 0.043272 +0.738679 1.007431 0.043985 +0.716512 1.023286 0.044678 +0.694006 1.038653 0.045349 +0.671170 1.053525 0.045998 +0.648015 1.067896 0.046625 +0.624554 1.081759 0.047231 +0.600796 1.095106 0.047813 +0.576753 1.107933 0.048373 +0.552437 1.120232 0.048910 +0.527860 1.131999 0.049424 +0.503032 1.143227 0.049914 +0.477966 1.153911 0.050381 +0.452673 1.164046 0.050823 +0.427166 1.173628 0.051242 +0.401456 1.182652 0.051636 +0.375557 1.191114 0.052005 +0.349479 1.199009 0.052350 +0.323236 1.206335 0.052670 +0.296841 1.213087 0.052965 +0.270304 1.219263 0.053234 +0.243640 1.224859 0.053479 +0.216860 1.229873 0.053697 +0.189977 1.234303 0.053891 +0.163005 1.238147 0.054059 +0.135956 1.241402 0.054201 +0.108842 1.244067 0.054317 +0.081676 1.246142 0.054408 +0.054472 1.247624 0.054472 +0.027243 1.248514 0.054511 +0.000000 1.248810 0.054524 +1.249703 0.000000 0.027269 +1.249405 0.027262 0.027262 +1.248514 0.054511 0.027243 +1.247028 0.081735 0.027210 +1.244949 0.108919 0.027165 +1.242278 0.136052 0.027107 +1.239016 0.163120 0.027035 +1.235165 0.190110 0.026951 +1.230726 0.217010 0.026855 +1.225701 0.243807 0.026745 +1.220093 0.270488 0.026623 +1.213905 0.297041 0.026488 +1.207139 0.323452 0.026340 +1.199799 0.349710 0.026180 +1.191888 0.375801 0.026007 +1.183410 0.401714 0.025822 +1.174369 0.427435 0.025625 +1.164769 0.452954 0.025415 +1.154615 0.478257 0.025194 +1.143911 0.503333 0.024960 +1.132663 0.528170 0.024715 +1.120876 0.552755 0.024458 +1.108556 0.577078 0.024189 +1.095708 0.601126 0.023908 +1.082339 0.624888 0.023617 +1.068454 0.648354 0.023314 +1.054061 0.671511 0.023000 +1.039166 0.694349 0.022675 +1.023777 0.716856 0.022339 +1.007900 0.739023 0.021992 +0.991543 0.760838 0.021636 +0.974714 0.782291 0.021268 +0.957422 0.803372 0.020891 +0.939673 0.824071 0.020504 +0.921477 0.844379 0.020107 +0.902843 0.864284 0.019700 +0.883778 0.883778 0.019284 +0.864284 0.902843 0.019700 +0.844379 0.921477 0.020107 +0.824071 0.939673 0.020504 +0.803372 0.957422 0.020891 +0.782291 0.974714 0.021268 +0.760838 0.991543 0.021636 +0.739023 1.007900 0.021992 +0.716856 1.023777 0.022339 +0.694349 1.039166 0.022675 +0.671511 1.054061 0.023000 +0.648354 1.068454 0.023314 +0.624888 1.082339 0.023617 +0.601126 1.095708 0.023908 +0.577078 1.108556 0.024189 +0.552755 1.120876 0.024458 +0.528170 1.132663 0.024715 +0.503333 1.143911 0.024960 +0.478257 1.154615 0.025194 +0.452954 1.164769 0.025415 +0.427435 1.174369 0.025625 +0.401714 1.183410 0.025822 +0.375801 1.191888 0.026007 +0.349710 1.199799 0.026180 +0.323452 1.207139 0.026340 +0.297041 1.213905 0.026488 +0.270488 1.220093 0.026623 +0.243807 1.225701 0.026745 +0.217010 1.230726 0.026855 +0.190110 1.235165 0.026951 +0.163120 1.239016 0.027035 +0.136052 1.242278 0.027107 +0.108919 1.244949 0.027165 +0.081735 1.247028 0.027210 +0.054511 1.248514 0.027243 +0.027262 1.249405 0.027262 +0.000000 1.249703 0.027269 +1.250000 0.000000 0.000000 +1.249703 0.027269 0.000000 +1.248810 0.054524 0.000000 +1.247324 0.081754 0.000000 +1.245243 0.108945 0.000000 +1.242570 0.136084 0.000000 +1.239306 0.163158 0.000000 +1.235452 0.190154 0.000000 +1.231010 0.217060 0.000000 +1.225982 0.243863 0.000000 +1.220370 0.270550 0.000000 +1.214178 0.297107 0.000000 +1.207407 0.323524 0.000000 +1.200062 0.349786 0.000000 +1.192146 0.375882 0.000000 +1.183663 0.401799 0.000000 +1.174616 0.427525 0.000000 +1.165010 0.453048 0.000000 +1.154849 0.478354 0.000000 +1.144139 0.503433 0.000000 +1.132885 0.528273 0.000000 +1.121091 0.552861 0.000000 +1.108764 0.577186 0.000000 +1.095908 0.601236 0.000000 +1.082532 0.625000 0.000000 +1.068640 0.648467 0.000000 +1.054239 0.671625 0.000000 +1.039337 0.694463 0.000000 +1.023940 0.716971 0.000000 +1.008056 0.739137 0.000000 +0.991692 0.760952 0.000000 +0.974856 0.782404 0.000000 +0.957556 0.803485 0.000000 +0.939800 0.824182 0.000000 +0.921597 0.844488 0.000000 +0.902955 0.864391 0.000000 +0.883883 0.883883 0.000000 +0.864391 0.902955 0.000000 +0.844488 0.921597 0.000000 +0.824182 0.939800 0.000000 +0.803485 0.957556 0.000000 +0.782404 0.974856 0.000000 +0.760952 0.991692 0.000000 +0.739137 1.008056 0.000000 +0.716971 1.023940 0.000000 +0.694463 1.039337 0.000000 +0.671625 1.054239 0.000000 +0.648467 1.068640 0.000000 +0.625000 1.082532 0.000000 +0.601236 1.095908 0.000000 +0.577186 1.108764 0.000000 +0.552861 1.121091 0.000000 +0.528273 1.132885 0.000000 +0.503433 1.144139 0.000000 +0.478354 1.154849 0.000000 +0.453048 1.165010 0.000000 +0.427525 1.174616 0.000000 +0.401799 1.183663 0.000000 +0.375882 1.192146 0.000000 +0.349786 1.200062 0.000000 +0.323524 1.207407 0.000000 +0.297107 1.214178 0.000000 +0.270550 1.220370 0.000000 +0.243863 1.225982 0.000000 +0.217060 1.231010 0.000000 +0.190154 1.235452 0.000000 +0.163158 1.239306 0.000000 +0.136084 1.242570 0.000000 +0.108945 1.245243 0.000000 +0.081754 1.247324 0.000000 +0.054524 1.248810 0.000000 +0.027269 1.249703 0.000000 +0.000000 1.250000 0.000000 +0 5 6 7 1 2 3 4 +1 2 3 4 8 9 10 11 +2 17 18 3 9 12 13 10 +3 18 19 20 10 13 14 15 +3 20 21 4 10 15 16 11 +2 5 6 3 17 22 23 18 +3 6 25 20 18 23 24 19 +3 6 7 4 20 25 26 21 +8 9 10 11 27 28 29 30 +9 12 13 10 28 31 32 29 +10 13 14 15 29 32 33 34 +10 15 16 11 29 34 35 30 +12 43 44 13 31 36 37 32 +13 44 45 14 32 37 38 33 +14 45 46 47 33 38 39 40 +14 47 48 15 33 40 41 34 +15 48 49 16 34 41 42 35 +12 17 18 13 43 50 51 44 +13 18 19 14 44 51 52 45 +14 19 54 47 45 52 53 46 +14 19 20 15 47 54 55 48 +15 20 21 16 48 55 56 49 +17 22 23 18 50 57 58 51 +18 23 24 19 51 58 59 52 +19 24 61 54 52 59 60 53 +19 24 25 20 54 61 62 55 +20 25 26 21 55 62 63 56 +27 28 29 30 64 65 66 67 +28 31 32 29 65 68 69 66 +29 32 33 34 66 69 70 71 +29 34 35 30 66 71 72 67 +31 36 37 32 68 73 74 69 +32 37 38 33 69 74 75 70 +33 38 39 40 70 75 76 77 +33 40 41 34 70 77 78 71 +34 41 42 35 71 78 79 72 +36 89 90 37 73 80 81 74 +37 90 91 38 74 81 82 75 +38 91 92 39 75 82 83 76 +39 92 93 94 76 83 84 85 +39 94 95 40 76 85 86 77 +40 95 96 41 77 86 87 78 +41 96 97 42 78 87 88 79 +36 43 44 37 89 98 99 90 +37 44 45 38 90 99 100 91 +38 45 46 39 91 100 101 92 +39 46 103 94 92 101 102 93 +39 46 47 40 94 103 104 95 +40 47 48 41 95 104 105 96 +41 48 49 42 96 105 106 97 +43 50 51 44 98 107 108 99 +44 51 52 45 99 108 109 100 +45 52 53 46 100 109 110 101 +46 53 112 103 101 110 111 102 +46 53 54 47 103 112 113 104 +47 54 55 48 104 113 114 105 +48 55 56 49 105 114 115 106 +50 57 58 51 107 116 117 108 +51 58 59 52 108 117 118 109 +52 59 60 53 109 118 119 110 +53 60 121 112 110 119 120 111 +53 60 61 54 112 121 122 113 +54 61 62 55 113 122 123 114 +55 62 63 56 114 123 124 115 +64 65 66 67 125 126 127 128 +65 68 69 66 126 129 130 127 +66 69 70 71 127 130 131 132 +66 71 72 67 127 132 133 128 +68 73 74 69 129 134 135 130 +69 74 75 70 130 135 136 131 +70 75 76 77 131 136 137 138 +70 77 78 71 131 138 139 132 +71 78 79 72 132 139 140 133 +73 80 81 74 134 141 142 135 +74 81 82 75 135 142 143 136 +75 82 83 76 136 143 144 137 +76 83 84 85 137 144 145 146 +76 85 86 77 137 146 147 138 +77 86 87 78 138 147 148 139 +78 87 88 79 139 148 149 140 +80 89 90 81 141 150 151 142 +81 90 91 82 142 151 152 143 +82 91 92 83 143 152 153 144 +83 92 93 84 144 153 154 145 +84 93 94 85 145 154 155 146 +85 94 95 86 146 155 156 147 +86 95 96 87 147 156 157 148 +87 96 97 88 148 157 158 149 +89 98 99 90 150 159 160 151 +90 99 100 91 151 160 161 152 +91 100 101 92 152 161 162 153 +92 101 102 93 153 162 163 154 +93 102 103 94 154 163 164 155 +94 103 104 95 155 164 165 156 +95 104 105 96 156 165 166 157 +96 105 106 97 157 166 167 158 +98 107 108 99 159 168 169 160 +99 108 109 100 160 169 170 161 +100 109 110 101 161 170 171 162 +101 110 111 102 162 171 172 163 +102 111 112 103 163 172 173 164 +103 112 113 104 164 173 174 165 +104 113 114 105 165 174 175 166 +105 114 115 106 166 175 176 167 +107 116 117 108 168 177 178 169 +108 117 118 109 169 178 179 170 +109 118 119 110 170 179 180 171 +110 119 120 111 171 180 181 172 +111 120 121 112 172 181 182 173 +112 121 122 113 173 182 183 174 +113 122 123 114 174 183 184 175 +114 123 124 115 175 184 185 176 +125 126 127 128 188 194 195 193 +126 129 130 127 198 207 210 201 +127 130 131 132 203 220 221 214 +127 132 133 128 196 224 225 197 +129 134 135 130 218 258 259 219 +130 135 136 131 229 244 247 232 +131 136 137 138 234 262 263 251 +131 138 139 132 222 266 267 223 +132 139 140 133 237 254 257 240 +134 141 142 135 270 291 294 273 +135 142 143 136 260 316 317 261 +136 143 144 137 276 297 300 279 +137 144 145 146 281 320 321 304 +137 146 147 138 264 324 325 265 +138 147 148 139 284 307 310 287 +139 148 149 140 268 328 329 269 +141 150 151 142 314 380 381 315 +142 151 152 143 333 358 361 336 +143 152 153 144 318 384 385 319 +144 153 154 145 339 364 367 342 +145 154 155 146 322 388 389 323 +146 155 156 147 345 370 373 348 +147 156 157 148 326 392 393 327 +148 157 158 149 351 376 379 354 +150 159 160 151 396 421 424 399 +151 160 161 152 382 448 449 383 +152 161 162 153 402 427 430 405 +153 162 163 154 386 452 453 387 +154 163 164 155 408 433 436 411 +155 164 165 156 390 456 457 391 +156 165 166 157 414 439 442 417 +157 166 167 158 394 460 461 395 +159 168 169 160 446 512 513 447 +160 169 170 161 465 490 493 468 +161 170 171 162 450 516 517 451 +162 171 172 163 471 496 499 474 +163 172 173 164 454 520 521 455 +164 173 174 165 477 502 505 480 +165 174 175 166 458 524 525 459 +166 175 176 167 483 508 511 486 +168 177 178 169 528 553 556 531 +169 178 179 170 514 580 581 515 +170 179 180 171 534 559 562 537 +171 180 181 172 518 584 585 519 +172 181 182 173 540 565 568 543 +173 182 183 174 522 588 589 523 +174 183 184 175 546 571 574 549 +175 184 185 176 526 592 593 527 +125 126 194 188 186 189 190 187 +188 194 195 193 187 190 191 192 +193 195 127 128 192 191 196 197 +126 198 201 127 194 199 200 195 +198 207 210 201 199 208 209 200 +207 129 130 210 208 218 219 209 +127 130 220 203 201 210 211 202 +203 220 221 214 202 211 212 213 +214 221 131 132 213 212 222 223 +127 132 224 196 203 214 215 204 +196 224 225 197 204 215 216 205 +197 225 133 128 205 216 217 206 +129 134 258 218 226 241 242 227 +218 258 259 219 227 242 243 228 +219 259 135 130 228 243 244 229 +130 229 232 131 220 230 231 221 +229 244 247 232 230 245 246 231 +244 135 136 247 245 260 261 246 +131 136 262 234 232 247 248 233 +234 262 263 251 233 248 249 250 +251 263 137 138 250 249 264 265 +131 138 266 222 234 251 252 235 +222 266 267 223 235 252 253 236 +223 267 139 132 236 253 254 237 +132 237 240 133 224 238 239 225 +237 254 257 240 238 255 256 239 +254 139 140 257 255 268 269 256 +134 270 273 135 258 271 272 259 +270 291 294 273 271 292 293 272 +291 141 142 294 292 314 315 293 +135 142 316 260 273 294 295 274 +260 316 317 261 274 295 296 275 +261 317 143 136 275 296 297 276 +136 276 279 137 262 277 278 263 +276 297 300 279 277 298 299 278 +297 143 144 300 298 318 319 299 +137 144 320 281 279 300 301 280 +281 320 321 304 280 301 302 303 +304 321 145 146 303 302 322 323 +137 146 324 264 281 304 305 282 +264 324 325 265 282 305 306 283 +265 325 147 138 283 306 307 284 +138 284 287 139 266 285 286 267 +284 307 310 287 285 308 309 286 +307 147 148 310 308 326 327 309 +139 148 328 268 287 310 311 288 +268 328 329 269 288 311 312 289 +269 329 149 140 289 312 313 290 +141 150 380 314 330 355 356 331 +314 380 381 315 331 356 357 332 +315 381 151 142 332 357 358 333 +142 333 336 143 316 334 335 317 +333 358 361 336 334 359 360 335 +358 151 152 361 359 382 383 360 +143 152 384 318 336 361 362 337 +318 384 385 319 337 362 363 338 +319 385 153 144 338 363 364 339 +144 339 342 145 320 340 341 321 +339 364 367 342 340 365 366 341 +364 153 154 367 365 386 387 366 +145 154 388 322 342 367 368 343 +322 388 389 323 343 368 369 344 +323 389 155 146 344 369 370 345 +146 345 348 147 324 346 347 325 +345 370 373 348 346 371 372 347 +370 155 156 373 371 390 391 372 +147 156 392 326 348 373 374 349 +326 392 393 327 349 374 375 350 +327 393 157 148 350 375 376 351 +148 351 354 149 328 352 353 329 +351 376 379 354 352 377 378 353 +376 157 158 379 377 394 395 378 +150 396 399 151 380 397 398 381 +396 421 424 399 397 422 423 398 +421 159 160 424 422 446 447 423 +151 160 448 382 399 424 425 400 +382 448 449 383 400 425 426 401 +383 449 161 152 401 426 427 402 +152 402 405 153 384 403 404 385 +402 427 430 405 403 428 429 404 +427 161 162 430 428 450 451 429 +153 162 452 386 405 430 431 406 +386 452 453 387 406 431 432 407 +387 453 163 154 407 432 433 408 +154 408 411 155 388 409 410 389 +408 433 436 411 409 434 435 410 +433 163 164 436 434 454 455 435 +155 164 456 390 411 436 437 412 +390 456 457 391 412 437 438 413 +391 457 165 156 413 438 439 414 +156 414 417 157 392 415 416 393 +414 439 442 417 415 440 441 416 +439 165 166 442 440 458 459 441 +157 166 460 394 417 442 443 418 +394 460 461 395 418 443 444 419 +395 461 167 158 419 444 445 420 +159 168 512 446 462 487 488 463 +446 512 513 447 463 488 489 464 +447 513 169 160 464 489 490 465 +160 465 468 161 448 466 467 449 +465 490 493 468 466 491 492 467 +490 169 170 493 491 514 515 492 +161 170 516 450 468 493 494 469 +450 516 517 451 469 494 495 470 +451 517 171 162 470 495 496 471 +162 471 474 163 452 472 473 453 +471 496 499 474 472 497 498 473 +496 171 172 499 497 518 519 498 +163 172 520 454 474 499 500 475 +454 520 521 455 475 500 501 476 +455 521 173 164 476 501 502 477 +164 477 480 165 456 478 479 457 +477 502 505 480 478 503 504 479 +502 173 174 505 503 522 523 504 +165 174 524 458 480 505 506 481 +458 524 525 459 481 506 507 482 +459 525 175 166 482 507 508 483 +166 483 486 167 460 484 485 461 +483 508 511 486 484 509 510 485 +508 175 176 511 509 526 527 510 +168 528 531 169 512 529 530 513 +528 553 556 531 529 554 555 530 +553 177 178 556 554 578 579 555 +169 178 580 514 531 556 557 532 +514 580 581 515 532 557 558 533 +515 581 179 170 533 558 559 534 +170 534 537 171 516 535 536 517 +534 559 562 537 535 560 561 536 +559 179 180 562 560 582 583 561 +171 180 584 518 537 562 563 538 +518 584 585 519 538 563 564 539 +519 585 181 172 539 564 565 540 +172 540 543 173 520 541 542 521 +540 565 568 543 541 566 567 542 +565 181 182 568 566 586 587 567 +173 182 588 522 543 568 569 544 +522 588 589 523 544 569 570 545 +523 589 183 174 545 570 571 546 +174 546 549 175 524 547 548 525 +546 571 574 549 547 572 573 548 +571 183 184 574 572 590 591 573 +175 184 592 526 549 574 575 550 +526 592 593 527 550 575 576 551 +527 593 185 176 551 576 577 552 +193 192 197 128 602 601 608 609 +188 187 192 193 597 596 601 602 +187 190 191 192 596 599 600 601 +192 191 196 197 601 600 607 608 +125 186 187 188 594 595 596 597 +186 189 190 187 595 598 599 596 +189 126 194 190 598 603 604 599 +190 194 195 191 599 604 605 600 +191 195 127 196 600 605 606 607 +195 200 201 127 605 612 613 606 +200 209 210 201 612 621 622 613 +209 219 130 210 621 632 633 622 +214 213 223 132 626 625 638 639 +197 205 206 128 608 617 618 609 +205 216 217 206 617 628 629 618 +216 225 133 217 628 641 642 629 +194 199 200 195 604 611 612 605 +199 208 209 200 611 620 621 612 +208 218 219 209 620 631 632 621 +203 202 213 214 615 614 625 626 +202 211 212 213 614 623 624 625 +213 212 222 223 625 624 637 638 +196 204 205 197 607 616 617 608 +204 215 216 205 616 627 628 617 +215 224 225 216 627 640 641 628 +126 198 199 194 603 610 611 604 +198 207 208 199 610 619 620 611 +207 129 218 208 619 630 631 620 +127 201 202 203 606 613 614 615 +201 210 211 202 613 622 623 614 +210 130 220 211 622 633 634 623 +211 220 221 212 623 634 635 624 +212 221 131 222 624 635 636 637 +127 203 204 196 606 615 616 607 +203 214 215 204 615 626 627 616 +214 132 224 215 626 639 640 627 +219 228 229 130 632 645 646 633 +228 243 244 229 645 660 661 646 +243 259 135 244 660 677 678 661 +221 231 232 131 635 648 649 636 +231 246 247 232 648 663 664 649 +246 261 136 247 663 680 681 664 +251 250 265 138 668 667 686 687 +223 236 237 132 638 653 654 639 +236 253 254 237 653 670 671 654 +253 267 139 254 670 689 690 671 +225 239 240 133 641 656 657 642 +239 256 257 240 656 673 674 657 +256 269 140 257 673 692 693 674 +218 227 228 219 631 644 645 632 +227 242 243 228 644 659 660 645 +242 258 259 243 659 676 677 660 +220 230 231 221 634 647 648 635 +230 245 246 231 647 662 663 648 +245 260 261 246 662 679 680 663 +234 233 250 251 651 650 667 668 +233 248 249 250 650 665 666 667 +250 249 264 265 667 666 685 686 +222 235 236 223 637 652 653 638 +235 252 253 236 652 669 670 653 +252 266 267 253 669 688 689 670 +224 238 239 225 640 655 656 641 +238 255 256 239 655 672 673 656 +255 268 269 256 672 691 692 673 +129 226 227 218 630 643 644 631 +226 241 242 227 643 658 659 644 +241 134 258 242 658 675 676 659 +130 229 230 220 633 646 647 634 +229 244 245 230 646 661 662 647 +244 135 260 245 661 678 679 662 +131 232 233 234 636 649 650 651 +232 247 248 233 649 664 665 650 +247 136 262 248 664 681 682 665 +248 262 263 249 665 682 683 666 +249 263 137 264 666 683 684 685 +131 234 235 222 636 651 652 637 +234 251 252 235 651 668 669 652 +251 138 266 252 668 687 688 669 +132 237 238 224 639 654 655 640 +237 254 255 238 654 671 672 655 +254 139 268 255 671 690 691 672 +259 272 273 135 677 696 697 678 +272 293 294 273 696 717 718 697 +293 315 142 294 717 740 741 718 +261 275 276 136 680 699 700 681 +275 296 297 276 699 720 721 700 +296 317 143 297 720 743 744 721 +263 278 279 137 683 702 703 684 +278 299 300 279 702 723 724 703 +299 319 144 300 723 746 747 724 +304 303 323 146 728 727 752 753 +265 283 284 138 686 707 708 687 +283 306 307 284 707 730 731 708 +306 325 147 307 730 755 756 731 +267 286 287 139 689 710 711 690 +286 309 310 287 710 733 734 711 +309 327 148 310 733 758 759 734 +269 289 290 140 692 713 714 693 +289 312 313 290 713 736 737 714 +312 329 149 313 736 761 762 737 +258 271 272 259 676 695 696 677 +271 292 293 272 695 716 717 696 +292 314 315 293 716 739 740 717 +260 274 275 261 679 698 699 680 +274 295 296 275 698 719 720 699 +295 316 317 296 719 742 743 720 +262 277 278 263 682 701 702 683 +277 298 299 278 701 722 723 702 +298 318 319 299 722 745 746 723 +281 280 303 304 705 704 727 728 +280 301 302 303 704 725 726 727 +303 302 322 323 727 726 751 752 +264 282 283 265 685 706 707 686 +282 305 306 283 706 729 730 707 +305 324 325 306 729 754 755 730 +266 285 286 267 688 709 710 689 +285 308 309 286 709 732 733 710 +308 326 327 309 732 757 758 733 +268 288 289 269 691 712 713 692 +288 311 312 289 712 735 736 713 +311 328 329 312 735 760 761 736 +134 270 271 258 675 694 695 676 +270 291 292 271 694 715 716 695 +291 141 314 292 715 738 739 716 +135 273 274 260 678 697 698 679 +273 294 295 274 697 718 719 698 +294 142 316 295 718 741 742 719 +136 276 277 262 681 700 701 682 +276 297 298 277 700 721 722 701 +297 143 318 298 721 744 745 722 +137 279 280 281 684 703 704 705 +279 300 301 280 703 724 725 704 +300 144 320 301 724 747 748 725 +301 320 321 302 725 748 749 726 +302 321 145 322 726 749 750 751 +137 281 282 264 684 705 706 685 +281 304 305 282 705 728 729 706 +304 146 324 305 728 753 754 729 +138 284 285 266 687 708 709 688 +284 307 308 285 708 731 732 709 +307 147 326 308 731 756 757 732 +139 287 288 268 690 711 712 691 +287 310 311 288 711 734 735 712 +310 148 328 311 734 759 760 735 +315 332 333 142 740 765 766 741 +332 357 358 333 765 790 791 766 +357 381 151 358 790 815 816 791 +317 335 336 143 743 768 769 744 +335 360 361 336 768 793 794 769 +360 383 152 361 793 818 819 794 +319 338 339 144 746 771 772 747 +338 363 364 339 771 796 797 772 +363 385 153 364 796 821 822 797 +321 341 342 145 749 774 775 750 +341 366 367 342 774 799 800 775 +366 387 154 367 799 824 825 800 +323 344 345 146 752 777 778 753 +344 369 370 345 777 802 803 778 +369 389 155 370 802 827 828 803 +325 347 348 147 755 780 781 756 +347 372 373 348 780 805 806 781 +372 391 156 373 805 830 831 806 +327 350 351 148 758 783 784 759 +350 375 376 351 783 808 809 784 +375 393 157 376 808 833 834 809 +329 353 354 149 761 786 787 762 +353 378 379 354 786 811 812 787 +378 395 158 379 811 836 837 812 +314 331 332 315 739 764 765 740 +331 356 357 332 764 789 790 765 +356 380 381 357 789 814 815 790 +316 334 335 317 742 767 768 743 +334 359 360 335 767 792 793 768 +359 382 383 360 792 817 818 793 +318 337 338 319 745 770 771 746 +337 362 363 338 770 795 796 771 +362 384 385 363 795 820 821 796 +320 340 341 321 748 773 774 749 +340 365 366 341 773 798 799 774 +365 386 387 366 798 823 824 799 +322 343 344 323 751 776 777 752 +343 368 369 344 776 801 802 777 +368 388 389 369 801 826 827 802 +324 346 347 325 754 779 780 755 +346 371 372 347 779 804 805 780 +371 390 391 372 804 829 830 805 +326 349 350 327 757 782 783 758 +349 374 375 350 782 807 808 783 +374 392 393 375 807 832 833 808 +328 352 353 329 760 785 786 761 +352 377 378 353 785 810 811 786 +377 394 395 378 810 835 836 811 +141 330 331 314 738 763 764 739 +330 355 356 331 763 788 789 764 +355 150 380 356 788 813 814 789 +142 333 334 316 741 766 767 742 +333 358 359 334 766 791 792 767 +358 151 382 359 791 816 817 792 +143 336 337 318 744 769 770 745 +336 361 362 337 769 794 795 770 +361 152 384 362 794 819 820 795 +144 339 340 320 747 772 773 748 +339 364 365 340 772 797 798 773 +364 153 386 365 797 822 823 798 +145 342 343 322 750 775 776 751 +342 367 368 343 775 800 801 776 +367 154 388 368 800 825 826 801 +146 345 346 324 753 778 779 754 +345 370 371 346 778 803 804 779 +370 155 390 371 803 828 829 804 +147 348 349 326 756 781 782 757 +348 373 374 349 781 806 807 782 +373 156 392 374 806 831 832 807 +148 351 352 328 759 784 785 760 +351 376 377 352 784 809 810 785 +376 157 394 377 809 834 835 810 +381 398 399 151 815 840 841 816 +398 423 424 399 840 865 866 841 +423 447 160 424 865 890 891 866 +383 401 402 152 818 843 844 819 +401 426 427 402 843 868 869 844 +426 449 161 427 868 893 894 869 +385 404 405 153 821 846 847 822 +404 429 430 405 846 871 872 847 +429 451 162 430 871 896 897 872 +387 407 408 154 824 849 850 825 +407 432 433 408 849 874 875 850 +432 453 163 433 874 899 900 875 +389 410 411 155 827 852 853 828 +410 435 436 411 852 877 878 853 +435 455 164 436 877 902 903 878 +391 413 414 156 830 855 856 831 +413 438 439 414 855 880 881 856 +438 457 165 439 880 905 906 881 +393 416 417 157 833 858 859 834 +416 441 442 417 858 883 884 859 +441 459 166 442 883 908 909 884 +395 419 420 158 836 861 862 837 +419 444 445 420 861 886 887 862 +444 461 167 445 886 911 912 887 +380 397 398 381 814 839 840 815 +397 422 423 398 839 864 865 840 +422 446 447 423 864 889 890 865 +382 400 401 383 817 842 843 818 +400 425 426 401 842 867 868 843 +425 448 449 426 867 892 893 868 +384 403 404 385 820 845 846 821 +403 428 429 404 845 870 871 846 +428 450 451 429 870 895 896 871 +386 406 407 387 823 848 849 824 +406 431 432 407 848 873 874 849 +431 452 453 432 873 898 899 874 +388 409 410 389 826 851 852 827 +409 434 435 410 851 876 877 852 +434 454 455 435 876 901 902 877 +390 412 413 391 829 854 855 830 +412 437 438 413 854 879 880 855 +437 456 457 438 879 904 905 880 +392 415 416 393 832 857 858 833 +415 440 441 416 857 882 883 858 +440 458 459 441 882 907 908 883 +394 418 419 395 835 860 861 836 +418 443 444 419 860 885 886 861 +443 460 461 444 885 910 911 886 +150 396 397 380 813 838 839 814 +396 421 422 397 838 863 864 839 +421 159 446 422 863 888 889 864 +151 399 400 382 816 841 842 817 +399 424 425 400 841 866 867 842 +424 160 448 425 866 891 892 867 +152 402 403 384 819 844 845 820 +402 427 428 403 844 869 870 845 +427 161 450 428 869 894 895 870 +153 405 406 386 822 847 848 823 +405 430 431 406 847 872 873 848 +430 162 452 431 872 897 898 873 +154 408 409 388 825 850 851 826 +408 433 434 409 850 875 876 851 +433 163 454 434 875 900 901 876 +155 411 412 390 828 853 854 829 +411 436 437 412 853 878 879 854 +436 164 456 437 878 903 904 879 +156 414 415 392 831 856 857 832 +414 439 440 415 856 881 882 857 +439 165 458 440 881 906 907 882 +157 417 418 394 834 859 860 835 +417 442 443 418 859 884 885 860 +442 166 460 443 884 909 910 885 +447 464 465 160 890 915 916 891 +464 489 490 465 915 940 941 916 +489 513 169 490 940 965 966 941 +449 467 468 161 893 918 919 894 +467 492 493 468 918 943 944 919 +492 515 170 493 943 968 969 944 +451 470 471 162 896 921 922 897 +470 495 496 471 921 946 947 922 +495 517 171 496 946 971 972 947 +453 473 474 163 899 924 925 900 +473 498 499 474 924 949 950 925 +498 519 172 499 949 974 975 950 +455 476 477 164 902 927 928 903 +476 501 502 477 927 952 953 928 +501 521 173 502 952 977 978 953 +457 479 480 165 905 930 931 906 +479 504 505 480 930 955 956 931 +504 523 174 505 955 980 981 956 +459 482 483 166 908 933 934 909 +482 507 508 483 933 958 959 934 +507 525 175 508 958 983 984 959 +461 485 486 167 911 936 937 912 +485 510 511 486 936 961 962 937 +510 527 176 511 961 986 987 962 +446 463 464 447 889 914 915 890 +463 488 489 464 914 939 940 915 +488 512 513 489 939 964 965 940 +448 466 467 449 892 917 918 893 +466 491 492 467 917 942 943 918 +491 514 515 492 942 967 968 943 +450 469 470 451 895 920 921 896 +469 494 495 470 920 945 946 921 +494 516 517 495 945 970 971 946 +452 472 473 453 898 923 924 899 +472 497 498 473 923 948 949 924 +497 518 519 498 948 973 974 949 +454 475 476 455 901 926 927 902 +475 500 501 476 926 951 952 927 +500 520 521 501 951 976 977 952 +456 478 479 457 904 929 930 905 +478 503 504 479 929 954 955 930 +503 522 523 504 954 979 980 955 +458 481 482 459 907 932 933 908 +481 506 507 482 932 957 958 933 +506 524 525 507 957 982 983 958 +460 484 485 461 910 935 936 911 +484 509 510 485 935 960 961 936 +509 526 527 510 960 985 986 961 +159 462 463 446 888 913 914 889 +462 487 488 463 913 938 939 914 +487 168 512 488 938 963 964 939 +160 465 466 448 891 916 917 892 +465 490 491 466 916 941 942 917 +490 169 514 491 941 966 967 942 +161 468 469 450 894 919 920 895 +468 493 494 469 919 944 945 920 +493 170 516 494 944 969 970 945 +162 471 472 452 897 922 923 898 +471 496 497 472 922 947 948 923 +496 171 518 497 947 972 973 948 +163 474 475 454 900 925 926 901 +474 499 500 475 925 950 951 926 +499 172 520 500 950 975 976 951 +164 477 478 456 903 928 929 904 +477 502 503 478 928 953 954 929 +502 173 522 503 953 978 979 954 +165 480 481 458 906 931 932 907 +480 505 506 481 931 956 957 932 +505 174 524 506 956 981 982 957 +166 483 484 460 909 934 935 910 +483 508 509 484 934 959 960 935 +508 175 526 509 959 984 985 960 +513 530 531 169 965 990 991 966 +530 555 556 531 990 1015 1016 991 +555 579 178 556 1015 1040 1041 1016 +515 533 534 170 968 993 994 969 +533 558 559 534 993 1018 1019 994 +558 581 179 559 1018 1043 1044 1019 +517 536 537 171 971 996 997 972 +536 561 562 537 996 1021 1022 997 +561 583 180 562 1021 1046 1047 1022 +519 539 540 172 974 999 1000 975 +539 564 565 540 999 1024 1025 1000 +564 585 181 565 1024 1049 1050 1025 +521 542 543 173 977 1002 1003 978 +542 567 568 543 1002 1027 1028 1003 +567 587 182 568 1027 1052 1053 1028 +523 545 546 174 980 1005 1006 981 +545 570 571 546 1005 1030 1031 1006 +570 589 183 571 1030 1055 1056 1031 +525 548 549 175 983 1008 1009 984 +548 573 574 549 1008 1033 1034 1009 +573 591 184 574 1033 1058 1059 1034 +527 551 552 176 986 1011 1012 987 +551 576 577 552 1011 1036 1037 1012 +576 593 185 577 1036 1061 1062 1037 +512 529 530 513 964 989 990 965 +529 554 555 530 989 1014 1015 990 +554 578 579 555 1014 1039 1040 1015 +514 532 533 515 967 992 993 968 +532 557 558 533 992 1017 1018 993 +557 580 581 558 1017 1042 1043 1018 +516 535 536 517 970 995 996 971 +535 560 561 536 995 1020 1021 996 +560 582 583 561 1020 1045 1046 1021 +518 538 539 519 973 998 999 974 +538 563 564 539 998 1023 1024 999 +563 584 585 564 1023 1048 1049 1024 +520 541 542 521 976 1001 1002 977 +541 566 567 542 1001 1026 1027 1002 +566 586 587 567 1026 1051 1052 1027 +522 544 545 523 979 1004 1005 980 +544 569 570 545 1004 1029 1030 1005 +569 588 589 570 1029 1054 1055 1030 +524 547 548 525 982 1007 1008 983 +547 572 573 548 1007 1032 1033 1008 +572 590 591 573 1032 1057 1058 1033 +526 550 551 527 985 1010 1011 986 +550 575 576 551 1010 1035 1036 1011 +575 592 593 576 1035 1060 1061 1036 +168 528 529 512 963 988 989 964 +528 553 554 529 988 1013 1014 989 +553 177 578 554 1013 1038 1039 1014 +169 531 532 514 966 991 992 967 +531 556 557 532 991 1016 1017 992 +556 178 580 557 1016 1041 1042 1017 +170 534 535 516 969 994 995 970 +534 559 560 535 994 1019 1020 995 +559 179 582 560 1019 1044 1045 1020 +171 537 538 518 972 997 998 973 +537 562 563 538 997 1022 1023 998 +562 180 584 563 1022 1047 1048 1023 +172 540 541 520 975 1000 1001 976 +540 565 566 541 1000 1025 1026 1001 +565 181 586 566 1025 1050 1051 1026 +173 543 544 522 978 1003 1004 979 +543 568 569 544 1003 1028 1029 1004 +568 182 588 569 1028 1053 1054 1029 +174 546 547 524 981 1006 1007 982 +546 571 572 547 1006 1031 1032 1007 +571 183 590 572 1031 1056 1057 1032 +175 549 550 526 984 1009 1010 985 +549 574 575 550 1009 1034 1035 1010 +574 184 592 575 1034 1059 1060 1035 +594 595 596 597 1063 1064 1065 1066 +595 598 599 596 1064 1067 1068 1065 +596 599 600 601 1065 1068 1069 1070 +596 601 602 597 1065 1070 1071 1066 +598 603 604 599 1067 1072 1073 1068 +599 604 605 600 1068 1073 1074 1069 +600 605 606 607 1069 1074 1075 1076 +600 607 608 601 1069 1076 1077 1070 +601 608 609 602 1070 1077 1078 1071 +603 610 611 604 1072 1079 1080 1073 +604 611 612 605 1073 1080 1081 1074 +605 612 613 606 1074 1081 1082 1075 +606 613 614 615 1075 1082 1083 1084 +606 615 616 607 1075 1084 1085 1076 +607 616 617 608 1076 1085 1086 1077 +608 617 618 609 1077 1086 1087 1078 +610 619 620 611 1079 1088 1089 1080 +611 620 621 612 1080 1089 1090 1081 +612 621 622 613 1081 1090 1091 1082 +613 622 623 614 1082 1091 1092 1083 +614 623 624 625 1083 1092 1093 1094 +614 625 626 615 1083 1094 1095 1084 +615 626 627 616 1084 1095 1096 1085 +616 627 628 617 1085 1096 1097 1086 +617 628 629 618 1086 1097 1098 1087 +619 630 631 620 1088 1099 1100 1089 +620 631 632 621 1089 1100 1101 1090 +621 632 633 622 1090 1101 1102 1091 +622 633 634 623 1091 1102 1103 1092 +623 634 635 624 1092 1103 1104 1093 +624 635 636 637 1093 1104 1105 1106 +624 637 638 625 1093 1106 1107 1094 +625 638 639 626 1094 1107 1108 1095 +626 639 640 627 1095 1108 1109 1096 +627 640 641 628 1096 1109 1110 1097 +628 641 642 629 1097 1110 1111 1098 +630 643 644 631 1099 1112 1113 1100 +631 644 645 632 1100 1113 1114 1101 +632 645 646 633 1101 1114 1115 1102 +633 646 647 634 1102 1115 1116 1103 +634 647 648 635 1103 1116 1117 1104 +635 648 649 636 1104 1117 1118 1105 +636 649 650 651 1105 1118 1119 1120 +636 651 652 637 1105 1120 1121 1106 +637 652 653 638 1106 1121 1122 1107 +638 653 654 639 1107 1122 1123 1108 +639 654 655 640 1108 1123 1124 1109 +640 655 656 641 1109 1124 1125 1110 +641 656 657 642 1110 1125 1126 1111 +643 658 659 644 1112 1127 1128 1113 +644 659 660 645 1113 1128 1129 1114 +645 660 661 646 1114 1129 1130 1115 +646 661 662 647 1115 1130 1131 1116 +647 662 663 648 1116 1131 1132 1117 +648 663 664 649 1117 1132 1133 1118 +649 664 665 650 1118 1133 1134 1119 +650 665 666 667 1119 1134 1135 1136 +650 667 668 651 1119 1136 1137 1120 +651 668 669 652 1120 1137 1138 1121 +652 669 670 653 1121 1138 1139 1122 +653 670 671 654 1122 1139 1140 1123 +654 671 672 655 1123 1140 1141 1124 +655 672 673 656 1124 1141 1142 1125 +656 673 674 657 1125 1142 1143 1126 +658 675 676 659 1127 1144 1145 1128 +659 676 677 660 1128 1145 1146 1129 +660 677 678 661 1129 1146 1147 1130 +661 678 679 662 1130 1147 1148 1131 +662 679 680 663 1131 1148 1149 1132 +663 680 681 664 1132 1149 1150 1133 +664 681 682 665 1133 1150 1151 1134 +665 682 683 666 1134 1151 1152 1135 +666 683 684 685 1135 1152 1153 1154 +666 685 686 667 1135 1154 1155 1136 +667 686 687 668 1136 1155 1156 1137 +668 687 688 669 1137 1156 1157 1138 +669 688 689 670 1138 1157 1158 1139 +670 689 690 671 1139 1158 1159 1140 +671 690 691 672 1140 1159 1160 1141 +672 691 692 673 1141 1160 1161 1142 +673 692 693 674 1142 1161 1162 1143 +675 694 695 676 1144 1163 1164 1145 +676 695 696 677 1145 1164 1165 1146 +677 696 697 678 1146 1165 1166 1147 +678 697 698 679 1147 1166 1167 1148 +679 698 699 680 1148 1167 1168 1149 +680 699 700 681 1149 1168 1169 1150 +681 700 701 682 1150 1169 1170 1151 +682 701 702 683 1151 1170 1171 1152 +683 702 703 684 1152 1171 1172 1153 +684 703 704 705 1153 1172 1173 1174 +684 705 706 685 1153 1174 1175 1154 +685 706 707 686 1154 1175 1176 1155 +686 707 708 687 1155 1176 1177 1156 +687 708 709 688 1156 1177 1178 1157 +688 709 710 689 1157 1178 1179 1158 +689 710 711 690 1158 1179 1180 1159 +690 711 712 691 1159 1180 1181 1160 +691 712 713 692 1160 1181 1182 1161 +692 713 714 693 1161 1182 1183 1162 +694 715 716 695 1163 1184 1185 1164 +695 716 717 696 1164 1185 1186 1165 +696 717 718 697 1165 1186 1187 1166 +697 718 719 698 1166 1187 1188 1167 +698 719 720 699 1167 1188 1189 1168 +699 720 721 700 1168 1189 1190 1169 +700 721 722 701 1169 1190 1191 1170 +701 722 723 702 1170 1191 1192 1171 +702 723 724 703 1171 1192 1193 1172 +703 724 725 704 1172 1193 1194 1173 +704 725 726 727 1173 1194 1195 1196 +704 727 728 705 1173 1196 1197 1174 +705 728 729 706 1174 1197 1198 1175 +706 729 730 707 1175 1198 1199 1176 +707 730 731 708 1176 1199 1200 1177 +708 731 732 709 1177 1200 1201 1178 +709 732 733 710 1178 1201 1202 1179 +710 733 734 711 1179 1202 1203 1180 +711 734 735 712 1180 1203 1204 1181 +712 735 736 713 1181 1204 1205 1182 +713 736 737 714 1182 1205 1206 1183 +715 738 739 716 1184 1207 1208 1185 +716 739 740 717 1185 1208 1209 1186 +717 740 741 718 1186 1209 1210 1187 +718 741 742 719 1187 1210 1211 1188 +719 742 743 720 1188 1211 1212 1189 +720 743 744 721 1189 1212 1213 1190 +721 744 745 722 1190 1213 1214 1191 +722 745 746 723 1191 1214 1215 1192 +723 746 747 724 1192 1215 1216 1193 +724 747 748 725 1193 1216 1217 1194 +725 748 749 726 1194 1217 1218 1195 +726 749 750 751 1195 1218 1219 1220 +726 751 752 727 1195 1220 1221 1196 +727 752 753 728 1196 1221 1222 1197 +728 753 754 729 1197 1222 1223 1198 +729 754 755 730 1198 1223 1224 1199 +730 755 756 731 1199 1224 1225 1200 +731 756 757 732 1200 1225 1226 1201 +732 757 758 733 1201 1226 1227 1202 +733 758 759 734 1202 1227 1228 1203 +734 759 760 735 1203 1228 1229 1204 +735 760 761 736 1204 1229 1230 1205 +736 761 762 737 1205 1230 1231 1206 +738 763 764 739 1207 1232 1233 1208 +739 764 765 740 1208 1233 1234 1209 +740 765 766 741 1209 1234 1235 1210 +741 766 767 742 1210 1235 1236 1211 +742 767 768 743 1211 1236 1237 1212 +743 768 769 744 1212 1237 1238 1213 +744 769 770 745 1213 1238 1239 1214 +745 770 771 746 1214 1239 1240 1215 +746 771 772 747 1215 1240 1241 1216 +747 772 773 748 1216 1241 1242 1217 +748 773 774 749 1217 1242 1243 1218 +749 774 775 750 1218 1243 1244 1219 +750 775 776 751 1219 1244 1245 1220 +751 776 777 752 1220 1245 1246 1221 +752 777 778 753 1221 1246 1247 1222 +753 778 779 754 1222 1247 1248 1223 +754 779 780 755 1223 1248 1249 1224 +755 780 781 756 1224 1249 1250 1225 +756 781 782 757 1225 1250 1251 1226 +757 782 783 758 1226 1251 1252 1227 +758 783 784 759 1227 1252 1253 1228 +759 784 785 760 1228 1253 1254 1229 +760 785 786 761 1229 1254 1255 1230 +761 786 787 762 1230 1255 1256 1231 +763 788 789 764 1232 1257 1258 1233 +764 789 790 765 1233 1258 1259 1234 +765 790 791 766 1234 1259 1260 1235 +766 791 792 767 1235 1260 1261 1236 +767 792 793 768 1236 1261 1262 1237 +768 793 794 769 1237 1262 1263 1238 +769 794 795 770 1238 1263 1264 1239 +770 795 796 771 1239 1264 1265 1240 +771 796 797 772 1240 1265 1266 1241 +772 797 798 773 1241 1266 1267 1242 +773 798 799 774 1242 1267 1268 1243 +774 799 800 775 1243 1268 1269 1244 +775 800 801 776 1244 1269 1270 1245 +776 801 802 777 1245 1270 1271 1246 +777 802 803 778 1246 1271 1272 1247 +778 803 804 779 1247 1272 1273 1248 +779 804 805 780 1248 1273 1274 1249 +780 805 806 781 1249 1274 1275 1250 +781 806 807 782 1250 1275 1276 1251 +782 807 808 783 1251 1276 1277 1252 +783 808 809 784 1252 1277 1278 1253 +784 809 810 785 1253 1278 1279 1254 +785 810 811 786 1254 1279 1280 1255 +786 811 812 787 1255 1280 1281 1256 +788 813 814 789 1257 1282 1283 1258 +789 814 815 790 1258 1283 1284 1259 +790 815 816 791 1259 1284 1285 1260 +791 816 817 792 1260 1285 1286 1261 +792 817 818 793 1261 1286 1287 1262 +793 818 819 794 1262 1287 1288 1263 +794 819 820 795 1263 1288 1289 1264 +795 820 821 796 1264 1289 1290 1265 +796 821 822 797 1265 1290 1291 1266 +797 822 823 798 1266 1291 1292 1267 +798 823 824 799 1267 1292 1293 1268 +799 824 825 800 1268 1293 1294 1269 +800 825 826 801 1269 1294 1295 1270 +801 826 827 802 1270 1295 1296 1271 +802 827 828 803 1271 1296 1297 1272 +803 828 829 804 1272 1297 1298 1273 +804 829 830 805 1273 1298 1299 1274 +805 830 831 806 1274 1299 1300 1275 +806 831 832 807 1275 1300 1301 1276 +807 832 833 808 1276 1301 1302 1277 +808 833 834 809 1277 1302 1303 1278 +809 834 835 810 1278 1303 1304 1279 +810 835 836 811 1279 1304 1305 1280 +811 836 837 812 1280 1305 1306 1281 +813 838 839 814 1282 1307 1308 1283 +814 839 840 815 1283 1308 1309 1284 +815 840 841 816 1284 1309 1310 1285 +816 841 842 817 1285 1310 1311 1286 +817 842 843 818 1286 1311 1312 1287 +818 843 844 819 1287 1312 1313 1288 +819 844 845 820 1288 1313 1314 1289 +820 845 846 821 1289 1314 1315 1290 +821 846 847 822 1290 1315 1316 1291 +822 847 848 823 1291 1316 1317 1292 +823 848 849 824 1292 1317 1318 1293 +824 849 850 825 1293 1318 1319 1294 +825 850 851 826 1294 1319 1320 1295 +826 851 852 827 1295 1320 1321 1296 +827 852 853 828 1296 1321 1322 1297 +828 853 854 829 1297 1322 1323 1298 +829 854 855 830 1298 1323 1324 1299 +830 855 856 831 1299 1324 1325 1300 +831 856 857 832 1300 1325 1326 1301 +832 857 858 833 1301 1326 1327 1302 +833 858 859 834 1302 1327 1328 1303 +834 859 860 835 1303 1328 1329 1304 +835 860 861 836 1304 1329 1330 1305 +836 861 862 837 1305 1330 1331 1306 +838 863 864 839 1307 1332 1333 1308 +839 864 865 840 1308 1333 1334 1309 +840 865 866 841 1309 1334 1335 1310 +841 866 867 842 1310 1335 1336 1311 +842 867 868 843 1311 1336 1337 1312 +843 868 869 844 1312 1337 1338 1313 +844 869 870 845 1313 1338 1339 1314 +845 870 871 846 1314 1339 1340 1315 +846 871 872 847 1315 1340 1341 1316 +847 872 873 848 1316 1341 1342 1317 +848 873 874 849 1317 1342 1343 1318 +849 874 875 850 1318 1343 1344 1319 +850 875 876 851 1319 1344 1345 1320 +851 876 877 852 1320 1345 1346 1321 +852 877 878 853 1321 1346 1347 1322 +853 878 879 854 1322 1347 1348 1323 +854 879 880 855 1323 1348 1349 1324 +855 880 881 856 1324 1349 1350 1325 +856 881 882 857 1325 1350 1351 1326 +857 882 883 858 1326 1351 1352 1327 +858 883 884 859 1327 1352 1353 1328 +859 884 885 860 1328 1353 1354 1329 +860 885 886 861 1329 1354 1355 1330 +861 886 887 862 1330 1355 1356 1331 +863 888 889 864 1332 1357 1358 1333 +864 889 890 865 1333 1358 1359 1334 +865 890 891 866 1334 1359 1360 1335 +866 891 892 867 1335 1360 1361 1336 +867 892 893 868 1336 1361 1362 1337 +868 893 894 869 1337 1362 1363 1338 +869 894 895 870 1338 1363 1364 1339 +870 895 896 871 1339 1364 1365 1340 +871 896 897 872 1340 1365 1366 1341 +872 897 898 873 1341 1366 1367 1342 +873 898 899 874 1342 1367 1368 1343 +874 899 900 875 1343 1368 1369 1344 +875 900 901 876 1344 1369 1370 1345 +876 901 902 877 1345 1370 1371 1346 +877 902 903 878 1346 1371 1372 1347 +878 903 904 879 1347 1372 1373 1348 +879 904 905 880 1348 1373 1374 1349 +880 905 906 881 1349 1374 1375 1350 +881 906 907 882 1350 1375 1376 1351 +882 907 908 883 1351 1376 1377 1352 +883 908 909 884 1352 1377 1378 1353 +884 909 910 885 1353 1378 1379 1354 +885 910 911 886 1354 1379 1380 1355 +886 911 912 887 1355 1380 1381 1356 +888 913 914 889 1357 1382 1383 1358 +889 914 915 890 1358 1383 1384 1359 +890 915 916 891 1359 1384 1385 1360 +891 916 917 892 1360 1385 1386 1361 +892 917 918 893 1361 1386 1387 1362 +893 918 919 894 1362 1387 1388 1363 +894 919 920 895 1363 1388 1389 1364 +895 920 921 896 1364 1389 1390 1365 +896 921 922 897 1365 1390 1391 1366 +897 922 923 898 1366 1391 1392 1367 +898 923 924 899 1367 1392 1393 1368 +899 924 925 900 1368 1393 1394 1369 +900 925 926 901 1369 1394 1395 1370 +901 926 927 902 1370 1395 1396 1371 +902 927 928 903 1371 1396 1397 1372 +903 928 929 904 1372 1397 1398 1373 +904 929 930 905 1373 1398 1399 1374 +905 930 931 906 1374 1399 1400 1375 +906 931 932 907 1375 1400 1401 1376 +907 932 933 908 1376 1401 1402 1377 +908 933 934 909 1377 1402 1403 1378 +909 934 935 910 1378 1403 1404 1379 +910 935 936 911 1379 1404 1405 1380 +911 936 937 912 1380 1405 1406 1381 +913 938 939 914 1382 1407 1408 1383 +914 939 940 915 1383 1408 1409 1384 +915 940 941 916 1384 1409 1410 1385 +916 941 942 917 1385 1410 1411 1386 +917 942 943 918 1386 1411 1412 1387 +918 943 944 919 1387 1412 1413 1388 +919 944 945 920 1388 1413 1414 1389 +920 945 946 921 1389 1414 1415 1390 +921 946 947 922 1390 1415 1416 1391 +922 947 948 923 1391 1416 1417 1392 +923 948 949 924 1392 1417 1418 1393 +924 949 950 925 1393 1418 1419 1394 +925 950 951 926 1394 1419 1420 1395 +926 951 952 927 1395 1420 1421 1396 +927 952 953 928 1396 1421 1422 1397 +928 953 954 929 1397 1422 1423 1398 +929 954 955 930 1398 1423 1424 1399 +930 955 956 931 1399 1424 1425 1400 +931 956 957 932 1400 1425 1426 1401 +932 957 958 933 1401 1426 1427 1402 +933 958 959 934 1402 1427 1428 1403 +934 959 960 935 1403 1428 1429 1404 +935 960 961 936 1404 1429 1430 1405 +936 961 962 937 1405 1430 1431 1406 +938 963 964 939 1407 1432 1433 1408 +939 964 965 940 1408 1433 1434 1409 +940 965 966 941 1409 1434 1435 1410 +941 966 967 942 1410 1435 1436 1411 +942 967 968 943 1411 1436 1437 1412 +943 968 969 944 1412 1437 1438 1413 +944 969 970 945 1413 1438 1439 1414 +945 970 971 946 1414 1439 1440 1415 +946 971 972 947 1415 1440 1441 1416 +947 972 973 948 1416 1441 1442 1417 +948 973 974 949 1417 1442 1443 1418 +949 974 975 950 1418 1443 1444 1419 +950 975 976 951 1419 1444 1445 1420 +951 976 977 952 1420 1445 1446 1421 +952 977 978 953 1421 1446 1447 1422 +953 978 979 954 1422 1447 1448 1423 +954 979 980 955 1423 1448 1449 1424 +955 980 981 956 1424 1449 1450 1425 +956 981 982 957 1425 1450 1451 1426 +957 982 983 958 1426 1451 1452 1427 +958 983 984 959 1427 1452 1453 1428 +959 984 985 960 1428 1453 1454 1429 +960 985 986 961 1429 1454 1455 1430 +961 986 987 962 1430 1455 1456 1431 +963 988 989 964 1432 1457 1458 1433 +964 989 990 965 1433 1458 1459 1434 +965 990 991 966 1434 1459 1460 1435 +966 991 992 967 1435 1460 1461 1436 +967 992 993 968 1436 1461 1462 1437 +968 993 994 969 1437 1462 1463 1438 +969 994 995 970 1438 1463 1464 1439 +970 995 996 971 1439 1464 1465 1440 +971 996 997 972 1440 1465 1466 1441 +972 997 998 973 1441 1466 1467 1442 +973 998 999 974 1442 1467 1468 1443 +974 999 1000 975 1443 1468 1469 1444 +975 1000 1001 976 1444 1469 1470 1445 +976 1001 1002 977 1445 1470 1471 1446 +977 1002 1003 978 1446 1471 1472 1447 +978 1003 1004 979 1447 1472 1473 1448 +979 1004 1005 980 1448 1473 1474 1449 +980 1005 1006 981 1449 1474 1475 1450 +981 1006 1007 982 1450 1475 1476 1451 +982 1007 1008 983 1451 1476 1477 1452 +983 1008 1009 984 1452 1477 1478 1453 +984 1009 1010 985 1453 1478 1479 1454 +985 1010 1011 986 1454 1479 1480 1455 +986 1011 1012 987 1455 1480 1481 1456 +988 1013 1014 989 1457 1482 1483 1458 +989 1014 1015 990 1458 1483 1484 1459 +990 1015 1016 991 1459 1484 1485 1460 +991 1016 1017 992 1460 1485 1486 1461 +992 1017 1018 993 1461 1486 1487 1462 +993 1018 1019 994 1462 1487 1488 1463 +994 1019 1020 995 1463 1488 1489 1464 +995 1020 1021 996 1464 1489 1490 1465 +996 1021 1022 997 1465 1490 1491 1466 +997 1022 1023 998 1466 1491 1492 1467 +998 1023 1024 999 1467 1492 1493 1468 +999 1024 1025 1000 1468 1493 1494 1469 +1000 1025 1026 1001 1469 1494 1495 1470 +1001 1026 1027 1002 1470 1495 1496 1471 +1002 1027 1028 1003 1471 1496 1497 1472 +1003 1028 1029 1004 1472 1497 1498 1473 +1004 1029 1030 1005 1473 1498 1499 1474 +1005 1030 1031 1006 1474 1499 1500 1475 +1006 1031 1032 1007 1475 1500 1501 1476 +1007 1032 1033 1008 1476 1501 1502 1477 +1008 1033 1034 1009 1477 1502 1503 1478 +1009 1034 1035 1010 1478 1503 1504 1479 +1010 1035 1036 1011 1479 1504 1505 1480 +1011 1036 1037 1012 1480 1505 1506 1481 +1013 1038 1039 1014 1482 1507 1508 1483 +1014 1039 1040 1015 1483 1508 1509 1484 +1015 1040 1041 1016 1484 1509 1510 1485 +1016 1041 1042 1017 1485 1510 1511 1486 +1017 1042 1043 1018 1486 1511 1512 1487 +1018 1043 1044 1019 1487 1512 1513 1488 +1019 1044 1045 1020 1488 1513 1514 1489 +1020 1045 1046 1021 1489 1514 1515 1490 +1021 1046 1047 1022 1490 1515 1516 1491 +1022 1047 1048 1023 1491 1516 1517 1492 +1023 1048 1049 1024 1492 1517 1518 1493 +1024 1049 1050 1025 1493 1518 1519 1494 +1025 1050 1051 1026 1494 1519 1520 1495 +1026 1051 1052 1027 1495 1520 1521 1496 +1027 1052 1053 1028 1496 1521 1522 1497 +1028 1053 1054 1029 1497 1522 1523 1498 +1029 1054 1055 1030 1498 1523 1524 1499 +1030 1055 1056 1031 1499 1524 1525 1500 +1031 1056 1057 1032 1500 1525 1526 1501 +1032 1057 1058 1033 1501 1526 1527 1502 +1033 1058 1059 1034 1502 1527 1528 1503 +1034 1059 1060 1035 1503 1528 1529 1504 +1035 1060 1061 1036 1504 1529 1530 1505 +1036 1061 1062 1037 1505 1530 1531 1506 +1063 1064 1065 1066 1532 1533 1534 1535 +1064 1067 1068 1065 1533 1536 1537 1534 +1065 1068 1069 1070 1534 1537 1538 1539 +1065 1070 1071 1066 1534 1539 1540 1535 +1067 1072 1073 1068 1536 1541 1542 1537 +1068 1073 1074 1069 1537 1542 1543 1538 +1069 1074 1075 1076 1538 1543 1544 1545 +1069 1076 1077 1070 1538 1545 1546 1539 +1070 1077 1078 1071 1539 1546 1547 1540 +1072 1079 1080 1073 1541 1548 1549 1542 +1073 1080 1081 1074 1542 1549 1550 1543 +1074 1081 1082 1075 1543 1550 1551 1544 +1075 1082 1083 1084 1544 1551 1552 1553 +1075 1084 1085 1076 1544 1553 1554 1545 +1076 1085 1086 1077 1545 1554 1555 1546 +1077 1086 1087 1078 1546 1555 1556 1547 +1079 1088 1089 1080 1548 1557 1558 1549 +1080 1089 1090 1081 1549 1558 1559 1550 +1081 1090 1091 1082 1550 1559 1560 1551 +1082 1091 1092 1083 1551 1560 1561 1552 +1083 1092 1093 1094 1552 1561 1562 1563 +1083 1094 1095 1084 1552 1563 1564 1553 +1084 1095 1096 1085 1553 1564 1565 1554 +1085 1096 1097 1086 1554 1565 1566 1555 +1086 1097 1098 1087 1555 1566 1567 1556 +1088 1099 1100 1089 1557 1568 1569 1558 +1089 1100 1101 1090 1558 1569 1570 1559 +1090 1101 1102 1091 1559 1570 1571 1560 +1091 1102 1103 1092 1560 1571 1572 1561 +1092 1103 1104 1093 1561 1572 1573 1562 +1093 1104 1105 1106 1562 1573 1574 1575 +1093 1106 1107 1094 1562 1575 1576 1563 +1094 1107 1108 1095 1563 1576 1577 1564 +1095 1108 1109 1096 1564 1577 1578 1565 +1096 1109 1110 1097 1565 1578 1579 1566 +1097 1110 1111 1098 1566 1579 1580 1567 +1099 1112 1113 1100 1568 1581 1582 1569 +1100 1113 1114 1101 1569 1582 1583 1570 +1101 1114 1115 1102 1570 1583 1584 1571 +1102 1115 1116 1103 1571 1584 1585 1572 +1103 1116 1117 1104 1572 1585 1586 1573 +1104 1117 1118 1105 1573 1586 1587 1574 +1105 1118 1119 1120 1574 1587 1588 1589 +1105 1120 1121 1106 1574 1589 1590 1575 +1106 1121 1122 1107 1575 1590 1591 1576 +1107 1122 1123 1108 1576 1591 1592 1577 +1108 1123 1124 1109 1577 1592 1593 1578 +1109 1124 1125 1110 1578 1593 1594 1579 +1110 1125 1126 1111 1579 1594 1595 1580 +1112 1127 1128 1113 1581 1596 1597 1582 +1113 1128 1129 1114 1582 1597 1598 1583 +1114 1129 1130 1115 1583 1598 1599 1584 +1115 1130 1131 1116 1584 1599 1600 1585 +1116 1131 1132 1117 1585 1600 1601 1586 +1117 1132 1133 1118 1586 1601 1602 1587 +1118 1133 1134 1119 1587 1602 1603 1588 +1119 1134 1135 1136 1588 1603 1604 1605 +1119 1136 1137 1120 1588 1605 1606 1589 +1120 1137 1138 1121 1589 1606 1607 1590 +1121 1138 1139 1122 1590 1607 1608 1591 +1122 1139 1140 1123 1591 1608 1609 1592 +1123 1140 1141 1124 1592 1609 1610 1593 +1124 1141 1142 1125 1593 1610 1611 1594 +1125 1142 1143 1126 1594 1611 1612 1595 +1127 1144 1145 1128 1596 1613 1614 1597 +1128 1145 1146 1129 1597 1614 1615 1598 +1129 1146 1147 1130 1598 1615 1616 1599 +1130 1147 1148 1131 1599 1616 1617 1600 +1131 1148 1149 1132 1600 1617 1618 1601 +1132 1149 1150 1133 1601 1618 1619 1602 +1133 1150 1151 1134 1602 1619 1620 1603 +1134 1151 1152 1135 1603 1620 1621 1604 +1135 1152 1153 1154 1604 1621 1622 1623 +1135 1154 1155 1136 1604 1623 1624 1605 +1136 1155 1156 1137 1605 1624 1625 1606 +1137 1156 1157 1138 1606 1625 1626 1607 +1138 1157 1158 1139 1607 1626 1627 1608 +1139 1158 1159 1140 1608 1627 1628 1609 +1140 1159 1160 1141 1609 1628 1629 1610 +1141 1160 1161 1142 1610 1629 1630 1611 +1142 1161 1162 1143 1611 1630 1631 1612 +1144 1163 1164 1145 1613 1632 1633 1614 +1145 1164 1165 1146 1614 1633 1634 1615 +1146 1165 1166 1147 1615 1634 1635 1616 +1147 1166 1167 1148 1616 1635 1636 1617 +1148 1167 1168 1149 1617 1636 1637 1618 +1149 1168 1169 1150 1618 1637 1638 1619 +1150 1169 1170 1151 1619 1638 1639 1620 +1151 1170 1171 1152 1620 1639 1640 1621 +1152 1171 1172 1153 1621 1640 1641 1622 +1153 1172 1173 1174 1622 1641 1642 1643 +1153 1174 1175 1154 1622 1643 1644 1623 +1154 1175 1176 1155 1623 1644 1645 1624 +1155 1176 1177 1156 1624 1645 1646 1625 +1156 1177 1178 1157 1625 1646 1647 1626 +1157 1178 1179 1158 1626 1647 1648 1627 +1158 1179 1180 1159 1627 1648 1649 1628 +1159 1180 1181 1160 1628 1649 1650 1629 +1160 1181 1182 1161 1629 1650 1651 1630 +1161 1182 1183 1162 1630 1651 1652 1631 +1163 1184 1185 1164 1632 1653 1654 1633 +1164 1185 1186 1165 1633 1654 1655 1634 +1165 1186 1187 1166 1634 1655 1656 1635 +1166 1187 1188 1167 1635 1656 1657 1636 +1167 1188 1189 1168 1636 1657 1658 1637 +1168 1189 1190 1169 1637 1658 1659 1638 +1169 1190 1191 1170 1638 1659 1660 1639 +1170 1191 1192 1171 1639 1660 1661 1640 +1171 1192 1193 1172 1640 1661 1662 1641 +1172 1193 1194 1173 1641 1662 1663 1642 +1173 1194 1195 1196 1642 1663 1664 1665 +1173 1196 1197 1174 1642 1665 1666 1643 +1174 1197 1198 1175 1643 1666 1667 1644 +1175 1198 1199 1176 1644 1667 1668 1645 +1176 1199 1200 1177 1645 1668 1669 1646 +1177 1200 1201 1178 1646 1669 1670 1647 +1178 1201 1202 1179 1647 1670 1671 1648 +1179 1202 1203 1180 1648 1671 1672 1649 +1180 1203 1204 1181 1649 1672 1673 1650 +1181 1204 1205 1182 1650 1673 1674 1651 +1182 1205 1206 1183 1651 1674 1675 1652 +1184 1207 1208 1185 1653 1676 1677 1654 +1185 1208 1209 1186 1654 1677 1678 1655 +1186 1209 1210 1187 1655 1678 1679 1656 +1187 1210 1211 1188 1656 1679 1680 1657 +1188 1211 1212 1189 1657 1680 1681 1658 +1189 1212 1213 1190 1658 1681 1682 1659 +1190 1213 1214 1191 1659 1682 1683 1660 +1191 1214 1215 1192 1660 1683 1684 1661 +1192 1215 1216 1193 1661 1684 1685 1662 +1193 1216 1217 1194 1662 1685 1686 1663 +1194 1217 1218 1195 1663 1686 1687 1664 +1195 1218 1219 1220 1664 1687 1688 1689 +1195 1220 1221 1196 1664 1689 1690 1665 +1196 1221 1222 1197 1665 1690 1691 1666 +1197 1222 1223 1198 1666 1691 1692 1667 +1198 1223 1224 1199 1667 1692 1693 1668 +1199 1224 1225 1200 1668 1693 1694 1669 +1200 1225 1226 1201 1669 1694 1695 1670 +1201 1226 1227 1202 1670 1695 1696 1671 +1202 1227 1228 1203 1671 1696 1697 1672 +1203 1228 1229 1204 1672 1697 1698 1673 +1204 1229 1230 1205 1673 1698 1699 1674 +1205 1230 1231 1206 1674 1699 1700 1675 +1207 1232 1233 1208 1676 1701 1702 1677 +1208 1233 1234 1209 1677 1702 1703 1678 +1209 1234 1235 1210 1678 1703 1704 1679 +1210 1235 1236 1211 1679 1704 1705 1680 +1211 1236 1237 1212 1680 1705 1706 1681 +1212 1237 1238 1213 1681 1706 1707 1682 +1213 1238 1239 1214 1682 1707 1708 1683 +1214 1239 1240 1215 1683 1708 1709 1684 +1215 1240 1241 1216 1684 1709 1710 1685 +1216 1241 1242 1217 1685 1710 1711 1686 +1217 1242 1243 1218 1686 1711 1712 1687 +1218 1243 1244 1219 1687 1712 1713 1688 +1219 1244 1245 1220 1688 1713 1714 1689 +1220 1245 1246 1221 1689 1714 1715 1690 +1221 1246 1247 1222 1690 1715 1716 1691 +1222 1247 1248 1223 1691 1716 1717 1692 +1223 1248 1249 1224 1692 1717 1718 1693 +1224 1249 1250 1225 1693 1718 1719 1694 +1225 1250 1251 1226 1694 1719 1720 1695 +1226 1251 1252 1227 1695 1720 1721 1696 +1227 1252 1253 1228 1696 1721 1722 1697 +1228 1253 1254 1229 1697 1722 1723 1698 +1229 1254 1255 1230 1698 1723 1724 1699 +1230 1255 1256 1231 1699 1724 1725 1700 +1232 1257 1258 1233 1701 1726 1727 1702 +1233 1258 1259 1234 1702 1727 1728 1703 +1234 1259 1260 1235 1703 1728 1729 1704 +1235 1260 1261 1236 1704 1729 1730 1705 +1236 1261 1262 1237 1705 1730 1731 1706 +1237 1262 1263 1238 1706 1731 1732 1707 +1238 1263 1264 1239 1707 1732 1733 1708 +1239 1264 1265 1240 1708 1733 1734 1709 +1240 1265 1266 1241 1709 1734 1735 1710 +1241 1266 1267 1242 1710 1735 1736 1711 +1242 1267 1268 1243 1711 1736 1737 1712 +1243 1268 1269 1244 1712 1737 1738 1713 +1244 1269 1270 1245 1713 1738 1739 1714 +1245 1270 1271 1246 1714 1739 1740 1715 +1246 1271 1272 1247 1715 1740 1741 1716 +1247 1272 1273 1248 1716 1741 1742 1717 +1248 1273 1274 1249 1717 1742 1743 1718 +1249 1274 1275 1250 1718 1743 1744 1719 +1250 1275 1276 1251 1719 1744 1745 1720 +1251 1276 1277 1252 1720 1745 1746 1721 +1252 1277 1278 1253 1721 1746 1747 1722 +1253 1278 1279 1254 1722 1747 1748 1723 +1254 1279 1280 1255 1723 1748 1749 1724 +1255 1280 1281 1256 1724 1749 1750 1725 +1257 1282 1283 1258 1726 1751 1752 1727 +1258 1283 1284 1259 1727 1752 1753 1728 +1259 1284 1285 1260 1728 1753 1754 1729 +1260 1285 1286 1261 1729 1754 1755 1730 +1261 1286 1287 1262 1730 1755 1756 1731 +1262 1287 1288 1263 1731 1756 1757 1732 +1263 1288 1289 1264 1732 1757 1758 1733 +1264 1289 1290 1265 1733 1758 1759 1734 +1265 1290 1291 1266 1734 1759 1760 1735 +1266 1291 1292 1267 1735 1760 1761 1736 +1267 1292 1293 1268 1736 1761 1762 1737 +1268 1293 1294 1269 1737 1762 1763 1738 +1269 1294 1295 1270 1738 1763 1764 1739 +1270 1295 1296 1271 1739 1764 1765 1740 +1271 1296 1297 1272 1740 1765 1766 1741 +1272 1297 1298 1273 1741 1766 1767 1742 +1273 1298 1299 1274 1742 1767 1768 1743 +1274 1299 1300 1275 1743 1768 1769 1744 +1275 1300 1301 1276 1744 1769 1770 1745 +1276 1301 1302 1277 1745 1770 1771 1746 +1277 1302 1303 1278 1746 1771 1772 1747 +1278 1303 1304 1279 1747 1772 1773 1748 +1279 1304 1305 1280 1748 1773 1774 1749 +1280 1305 1306 1281 1749 1774 1775 1750 +1282 1307 1308 1283 1751 1776 1777 1752 +1283 1308 1309 1284 1752 1777 1778 1753 +1284 1309 1310 1285 1753 1778 1779 1754 +1285 1310 1311 1286 1754 1779 1780 1755 +1286 1311 1312 1287 1755 1780 1781 1756 +1287 1312 1313 1288 1756 1781 1782 1757 +1288 1313 1314 1289 1757 1782 1783 1758 +1289 1314 1315 1290 1758 1783 1784 1759 +1290 1315 1316 1291 1759 1784 1785 1760 +1291 1316 1317 1292 1760 1785 1786 1761 +1292 1317 1318 1293 1761 1786 1787 1762 +1293 1318 1319 1294 1762 1787 1788 1763 +1294 1319 1320 1295 1763 1788 1789 1764 +1295 1320 1321 1296 1764 1789 1790 1765 +1296 1321 1322 1297 1765 1790 1791 1766 +1297 1322 1323 1298 1766 1791 1792 1767 +1298 1323 1324 1299 1767 1792 1793 1768 +1299 1324 1325 1300 1768 1793 1794 1769 +1300 1325 1326 1301 1769 1794 1795 1770 +1301 1326 1327 1302 1770 1795 1796 1771 +1302 1327 1328 1303 1771 1796 1797 1772 +1303 1328 1329 1304 1772 1797 1798 1773 +1304 1329 1330 1305 1773 1798 1799 1774 +1305 1330 1331 1306 1774 1799 1800 1775 +1307 1332 1333 1308 1776 1801 1802 1777 +1308 1333 1334 1309 1777 1802 1803 1778 +1309 1334 1335 1310 1778 1803 1804 1779 +1310 1335 1336 1311 1779 1804 1805 1780 +1311 1336 1337 1312 1780 1805 1806 1781 +1312 1337 1338 1313 1781 1806 1807 1782 +1313 1338 1339 1314 1782 1807 1808 1783 +1314 1339 1340 1315 1783 1808 1809 1784 +1315 1340 1341 1316 1784 1809 1810 1785 +1316 1341 1342 1317 1785 1810 1811 1786 +1317 1342 1343 1318 1786 1811 1812 1787 +1318 1343 1344 1319 1787 1812 1813 1788 +1319 1344 1345 1320 1788 1813 1814 1789 +1320 1345 1346 1321 1789 1814 1815 1790 +1321 1346 1347 1322 1790 1815 1816 1791 +1322 1347 1348 1323 1791 1816 1817 1792 +1323 1348 1349 1324 1792 1817 1818 1793 +1324 1349 1350 1325 1793 1818 1819 1794 +1325 1350 1351 1326 1794 1819 1820 1795 +1326 1351 1352 1327 1795 1820 1821 1796 +1327 1352 1353 1328 1796 1821 1822 1797 +1328 1353 1354 1329 1797 1822 1823 1798 +1329 1354 1355 1330 1798 1823 1824 1799 +1330 1355 1356 1331 1799 1824 1825 1800 +1332 1357 1358 1333 1801 1826 1827 1802 +1333 1358 1359 1334 1802 1827 1828 1803 +1334 1359 1360 1335 1803 1828 1829 1804 +1335 1360 1361 1336 1804 1829 1830 1805 +1336 1361 1362 1337 1805 1830 1831 1806 +1337 1362 1363 1338 1806 1831 1832 1807 +1338 1363 1364 1339 1807 1832 1833 1808 +1339 1364 1365 1340 1808 1833 1834 1809 +1340 1365 1366 1341 1809 1834 1835 1810 +1341 1366 1367 1342 1810 1835 1836 1811 +1342 1367 1368 1343 1811 1836 1837 1812 +1343 1368 1369 1344 1812 1837 1838 1813 +1344 1369 1370 1345 1813 1838 1839 1814 +1345 1370 1371 1346 1814 1839 1840 1815 +1346 1371 1372 1347 1815 1840 1841 1816 +1347 1372 1373 1348 1816 1841 1842 1817 +1348 1373 1374 1349 1817 1842 1843 1818 +1349 1374 1375 1350 1818 1843 1844 1819 +1350 1375 1376 1351 1819 1844 1845 1820 +1351 1376 1377 1352 1820 1845 1846 1821 +1352 1377 1378 1353 1821 1846 1847 1822 +1353 1378 1379 1354 1822 1847 1848 1823 +1354 1379 1380 1355 1823 1848 1849 1824 +1355 1380 1381 1356 1824 1849 1850 1825 +1357 1382 1383 1358 1826 1851 1852 1827 +1358 1383 1384 1359 1827 1852 1853 1828 +1359 1384 1385 1360 1828 1853 1854 1829 +1360 1385 1386 1361 1829 1854 1855 1830 +1361 1386 1387 1362 1830 1855 1856 1831 +1362 1387 1388 1363 1831 1856 1857 1832 +1363 1388 1389 1364 1832 1857 1858 1833 +1364 1389 1390 1365 1833 1858 1859 1834 +1365 1390 1391 1366 1834 1859 1860 1835 +1366 1391 1392 1367 1835 1860 1861 1836 +1367 1392 1393 1368 1836 1861 1862 1837 +1368 1393 1394 1369 1837 1862 1863 1838 +1369 1394 1395 1370 1838 1863 1864 1839 +1370 1395 1396 1371 1839 1864 1865 1840 +1371 1396 1397 1372 1840 1865 1866 1841 +1372 1397 1398 1373 1841 1866 1867 1842 +1373 1398 1399 1374 1842 1867 1868 1843 +1374 1399 1400 1375 1843 1868 1869 1844 +1375 1400 1401 1376 1844 1869 1870 1845 +1376 1401 1402 1377 1845 1870 1871 1846 +1377 1402 1403 1378 1846 1871 1872 1847 +1378 1403 1404 1379 1847 1872 1873 1848 +1379 1404 1405 1380 1848 1873 1874 1849 +1380 1405 1406 1381 1849 1874 1875 1850 +1382 1407 1408 1383 1851 1876 1877 1852 +1383 1408 1409 1384 1852 1877 1878 1853 +1384 1409 1410 1385 1853 1878 1879 1854 +1385 1410 1411 1386 1854 1879 1880 1855 +1386 1411 1412 1387 1855 1880 1881 1856 +1387 1412 1413 1388 1856 1881 1882 1857 +1388 1413 1414 1389 1857 1882 1883 1858 +1389 1414 1415 1390 1858 1883 1884 1859 +1390 1415 1416 1391 1859 1884 1885 1860 +1391 1416 1417 1392 1860 1885 1886 1861 +1392 1417 1418 1393 1861 1886 1887 1862 +1393 1418 1419 1394 1862 1887 1888 1863 +1394 1419 1420 1395 1863 1888 1889 1864 +1395 1420 1421 1396 1864 1889 1890 1865 +1396 1421 1422 1397 1865 1890 1891 1866 +1397 1422 1423 1398 1866 1891 1892 1867 +1398 1423 1424 1399 1867 1892 1893 1868 +1399 1424 1425 1400 1868 1893 1894 1869 +1400 1425 1426 1401 1869 1894 1895 1870 +1401 1426 1427 1402 1870 1895 1896 1871 +1402 1427 1428 1403 1871 1896 1897 1872 +1403 1428 1429 1404 1872 1897 1898 1873 +1404 1429 1430 1405 1873 1898 1899 1874 +1405 1430 1431 1406 1874 1899 1900 1875 +1407 1432 1433 1408 1876 1901 1902 1877 +1408 1433 1434 1409 1877 1902 1903 1878 +1409 1434 1435 1410 1878 1903 1904 1879 +1410 1435 1436 1411 1879 1904 1905 1880 +1411 1436 1437 1412 1880 1905 1906 1881 +1412 1437 1438 1413 1881 1906 1907 1882 +1413 1438 1439 1414 1882 1907 1908 1883 +1414 1439 1440 1415 1883 1908 1909 1884 +1415 1440 1441 1416 1884 1909 1910 1885 +1416 1441 1442 1417 1885 1910 1911 1886 +1417 1442 1443 1418 1886 1911 1912 1887 +1418 1443 1444 1419 1887 1912 1913 1888 +1419 1444 1445 1420 1888 1913 1914 1889 +1420 1445 1446 1421 1889 1914 1915 1890 +1421 1446 1447 1422 1890 1915 1916 1891 +1422 1447 1448 1423 1891 1916 1917 1892 +1423 1448 1449 1424 1892 1917 1918 1893 +1424 1449 1450 1425 1893 1918 1919 1894 +1425 1450 1451 1426 1894 1919 1920 1895 +1426 1451 1452 1427 1895 1920 1921 1896 +1427 1452 1453 1428 1896 1921 1922 1897 +1428 1453 1454 1429 1897 1922 1923 1898 +1429 1454 1455 1430 1898 1923 1924 1899 +1430 1455 1456 1431 1899 1924 1925 1900 +1432 1457 1458 1433 1901 1926 1927 1902 +1433 1458 1459 1434 1902 1927 1928 1903 +1434 1459 1460 1435 1903 1928 1929 1904 +1435 1460 1461 1436 1904 1929 1930 1905 +1436 1461 1462 1437 1905 1930 1931 1906 +1437 1462 1463 1438 1906 1931 1932 1907 +1438 1463 1464 1439 1907 1932 1933 1908 +1439 1464 1465 1440 1908 1933 1934 1909 +1440 1465 1466 1441 1909 1934 1935 1910 +1441 1466 1467 1442 1910 1935 1936 1911 +1442 1467 1468 1443 1911 1936 1937 1912 +1443 1468 1469 1444 1912 1937 1938 1913 +1444 1469 1470 1445 1913 1938 1939 1914 +1445 1470 1471 1446 1914 1939 1940 1915 +1446 1471 1472 1447 1915 1940 1941 1916 +1447 1472 1473 1448 1916 1941 1942 1917 +1448 1473 1474 1449 1917 1942 1943 1918 +1449 1474 1475 1450 1918 1943 1944 1919 +1450 1475 1476 1451 1919 1944 1945 1920 +1451 1476 1477 1452 1920 1945 1946 1921 +1452 1477 1478 1453 1921 1946 1947 1922 +1453 1478 1479 1454 1922 1947 1948 1923 +1454 1479 1480 1455 1923 1948 1949 1924 +1455 1480 1481 1456 1924 1949 1950 1925 +1457 1482 1483 1458 1926 1951 1952 1927 +1458 1483 1484 1459 1927 1952 1953 1928 +1459 1484 1485 1460 1928 1953 1954 1929 +1460 1485 1486 1461 1929 1954 1955 1930 +1461 1486 1487 1462 1930 1955 1956 1931 +1462 1487 1488 1463 1931 1956 1957 1932 +1463 1488 1489 1464 1932 1957 1958 1933 +1464 1489 1490 1465 1933 1958 1959 1934 +1465 1490 1491 1466 1934 1959 1960 1935 +1466 1491 1492 1467 1935 1960 1961 1936 +1467 1492 1493 1468 1936 1961 1962 1937 +1468 1493 1494 1469 1937 1962 1963 1938 +1469 1494 1495 1470 1938 1963 1964 1939 +1470 1495 1496 1471 1939 1964 1965 1940 +1471 1496 1497 1472 1940 1965 1966 1941 +1472 1497 1498 1473 1941 1966 1967 1942 +1473 1498 1499 1474 1942 1967 1968 1943 +1474 1499 1500 1475 1943 1968 1969 1944 +1475 1500 1501 1476 1944 1969 1970 1945 +1476 1501 1502 1477 1945 1970 1971 1946 +1477 1502 1503 1478 1946 1971 1972 1947 +1478 1503 1504 1479 1947 1972 1973 1948 +1479 1504 1505 1480 1948 1973 1974 1949 +1480 1505 1506 1481 1949 1974 1975 1950 +1482 1507 1508 1483 1951 1976 1977 1952 +1483 1508 1509 1484 1952 1977 1978 1953 +1484 1509 1510 1485 1953 1978 1979 1954 +1485 1510 1511 1486 1954 1979 1980 1955 +1486 1511 1512 1487 1955 1980 1981 1956 +1487 1512 1513 1488 1956 1981 1982 1957 +1488 1513 1514 1489 1957 1982 1983 1958 +1489 1514 1515 1490 1958 1983 1984 1959 +1490 1515 1516 1491 1959 1984 1985 1960 +1491 1516 1517 1492 1960 1985 1986 1961 +1492 1517 1518 1493 1961 1986 1987 1962 +1493 1518 1519 1494 1962 1987 1988 1963 +1494 1519 1520 1495 1963 1988 1989 1964 +1495 1520 1521 1496 1964 1989 1990 1965 +1496 1521 1522 1497 1965 1990 1991 1966 +1497 1522 1523 1498 1966 1991 1992 1967 +1498 1523 1524 1499 1967 1992 1993 1968 +1499 1524 1525 1500 1968 1993 1994 1969 +1500 1525 1526 1501 1969 1994 1995 1970 +1501 1526 1527 1502 1970 1995 1996 1971 +1502 1527 1528 1503 1971 1996 1997 1972 +1503 1528 1529 1504 1972 1997 1998 1973 +1504 1529 1530 1505 1973 1998 1999 1974 +1505 1530 1531 1506 1974 1999 2000 1975 +1532 1533 1534 1535 2001 2002 2003 2004 +1533 1536 1537 1534 2002 2005 2006 2003 +1534 1537 1538 1539 2003 2006 2007 2008 +1534 1539 1540 1535 2003 2008 2009 2004 +1536 1541 1542 1537 2005 2010 2011 2006 +1537 1542 1543 1538 2006 2011 2012 2007 +1538 1543 1544 1545 2007 2012 2013 2014 +1538 1545 1546 1539 2007 2014 2015 2008 +1539 1546 1547 1540 2008 2015 2016 2009 +1541 1548 1549 1542 2010 2017 2018 2011 +1542 1549 1550 1543 2011 2018 2019 2012 +1543 1550 1551 1544 2012 2019 2020 2013 +1544 1551 1552 1553 2013 2020 2021 2022 +1544 1553 1554 1545 2013 2022 2023 2014 +1545 1554 1555 1546 2014 2023 2024 2015 +1546 1555 1556 1547 2015 2024 2025 2016 +1548 1557 1558 1549 2017 2026 2027 2018 +1549 1558 1559 1550 2018 2027 2028 2019 +1550 1559 1560 1551 2019 2028 2029 2020 +1551 1560 1561 1552 2020 2029 2030 2021 +1552 1561 1562 1563 2021 2030 2031 2032 +1552 1563 1564 1553 2021 2032 2033 2022 +1553 1564 1565 1554 2022 2033 2034 2023 +1554 1565 1566 1555 2023 2034 2035 2024 +1555 1566 1567 1556 2024 2035 2036 2025 +1557 1568 1569 1558 2026 2037 2038 2027 +1558 1569 1570 1559 2027 2038 2039 2028 +1559 1570 1571 1560 2028 2039 2040 2029 +1560 1571 1572 1561 2029 2040 2041 2030 +1561 1572 1573 1562 2030 2041 2042 2031 +1562 1573 1574 1575 2031 2042 2043 2044 +1562 1575 1576 1563 2031 2044 2045 2032 +1563 1576 1577 1564 2032 2045 2046 2033 +1564 1577 1578 1565 2033 2046 2047 2034 +1565 1578 1579 1566 2034 2047 2048 2035 +1566 1579 1580 1567 2035 2048 2049 2036 +1568 1581 1582 1569 2037 2050 2051 2038 +1569 1582 1583 1570 2038 2051 2052 2039 +1570 1583 1584 1571 2039 2052 2053 2040 +1571 1584 1585 1572 2040 2053 2054 2041 +1572 1585 1586 1573 2041 2054 2055 2042 +1573 1586 1587 1574 2042 2055 2056 2043 +1574 1587 1588 1589 2043 2056 2057 2058 +1574 1589 1590 1575 2043 2058 2059 2044 +1575 1590 1591 1576 2044 2059 2060 2045 +1576 1591 1592 1577 2045 2060 2061 2046 +1577 1592 1593 1578 2046 2061 2062 2047 +1578 1593 1594 1579 2047 2062 2063 2048 +1579 1594 1595 1580 2048 2063 2064 2049 +1581 1596 1597 1582 2050 2065 2066 2051 +1582 1597 1598 1583 2051 2066 2067 2052 +1583 1598 1599 1584 2052 2067 2068 2053 +1584 1599 1600 1585 2053 2068 2069 2054 +1585 1600 1601 1586 2054 2069 2070 2055 +1586 1601 1602 1587 2055 2070 2071 2056 +1587 1602 1603 1588 2056 2071 2072 2057 +1588 1603 1604 1605 2057 2072 2073 2074 +1588 1605 1606 1589 2057 2074 2075 2058 +1589 1606 1607 1590 2058 2075 2076 2059 +1590 1607 1608 1591 2059 2076 2077 2060 +1591 1608 1609 1592 2060 2077 2078 2061 +1592 1609 1610 1593 2061 2078 2079 2062 +1593 1610 1611 1594 2062 2079 2080 2063 +1594 1611 1612 1595 2063 2080 2081 2064 +1596 1613 1614 1597 2065 2082 2083 2066 +1597 1614 1615 1598 2066 2083 2084 2067 +1598 1615 1616 1599 2067 2084 2085 2068 +1599 1616 1617 1600 2068 2085 2086 2069 +1600 1617 1618 1601 2069 2086 2087 2070 +1601 1618 1619 1602 2070 2087 2088 2071 +1602 1619 1620 1603 2071 2088 2089 2072 +1603 1620 1621 1604 2072 2089 2090 2073 +1604 1621 1622 1623 2073 2090 2091 2092 +1604 1623 1624 1605 2073 2092 2093 2074 +1605 1624 1625 1606 2074 2093 2094 2075 +1606 1625 1626 1607 2075 2094 2095 2076 +1607 1626 1627 1608 2076 2095 2096 2077 +1608 1627 1628 1609 2077 2096 2097 2078 +1609 1628 1629 1610 2078 2097 2098 2079 +1610 1629 1630 1611 2079 2098 2099 2080 +1611 1630 1631 1612 2080 2099 2100 2081 +1613 1632 1633 1614 2082 2101 2102 2083 +1614 1633 1634 1615 2083 2102 2103 2084 +1615 1634 1635 1616 2084 2103 2104 2085 +1616 1635 1636 1617 2085 2104 2105 2086 +1617 1636 1637 1618 2086 2105 2106 2087 +1618 1637 1638 1619 2087 2106 2107 2088 +1619 1638 1639 1620 2088 2107 2108 2089 +1620 1639 1640 1621 2089 2108 2109 2090 +1621 1640 1641 1622 2090 2109 2110 2091 +1622 1641 1642 1643 2091 2110 2111 2112 +1622 1643 1644 1623 2091 2112 2113 2092 +1623 1644 1645 1624 2092 2113 2114 2093 +1624 1645 1646 1625 2093 2114 2115 2094 +1625 1646 1647 1626 2094 2115 2116 2095 +1626 1647 1648 1627 2095 2116 2117 2096 +1627 1648 1649 1628 2096 2117 2118 2097 +1628 1649 1650 1629 2097 2118 2119 2098 +1629 1650 1651 1630 2098 2119 2120 2099 +1630 1651 1652 1631 2099 2120 2121 2100 +1632 1653 1654 1633 2101 2122 2123 2102 +1633 1654 1655 1634 2102 2123 2124 2103 +1634 1655 1656 1635 2103 2124 2125 2104 +1635 1656 1657 1636 2104 2125 2126 2105 +1636 1657 1658 1637 2105 2126 2127 2106 +1637 1658 1659 1638 2106 2127 2128 2107 +1638 1659 1660 1639 2107 2128 2129 2108 +1639 1660 1661 1640 2108 2129 2130 2109 +1640 1661 1662 1641 2109 2130 2131 2110 +1641 1662 1663 1642 2110 2131 2132 2111 +1642 1663 1664 1665 2111 2132 2133 2134 +1642 1665 1666 1643 2111 2134 2135 2112 +1643 1666 1667 1644 2112 2135 2136 2113 +1644 1667 1668 1645 2113 2136 2137 2114 +1645 1668 1669 1646 2114 2137 2138 2115 +1646 1669 1670 1647 2115 2138 2139 2116 +1647 1670 1671 1648 2116 2139 2140 2117 +1648 1671 1672 1649 2117 2140 2141 2118 +1649 1672 1673 1650 2118 2141 2142 2119 +1650 1673 1674 1651 2119 2142 2143 2120 +1651 1674 1675 1652 2120 2143 2144 2121 +1653 1676 1677 1654 2122 2145 2146 2123 +1654 1677 1678 1655 2123 2146 2147 2124 +1655 1678 1679 1656 2124 2147 2148 2125 +1656 1679 1680 1657 2125 2148 2149 2126 +1657 1680 1681 1658 2126 2149 2150 2127 +1658 1681 1682 1659 2127 2150 2151 2128 +1659 1682 1683 1660 2128 2151 2152 2129 +1660 1683 1684 1661 2129 2152 2153 2130 +1661 1684 1685 1662 2130 2153 2154 2131 +1662 1685 1686 1663 2131 2154 2155 2132 +1663 1686 1687 1664 2132 2155 2156 2133 +1664 1687 1688 1689 2133 2156 2157 2158 +1664 1689 1690 1665 2133 2158 2159 2134 +1665 1690 1691 1666 2134 2159 2160 2135 +1666 1691 1692 1667 2135 2160 2161 2136 +1667 1692 1693 1668 2136 2161 2162 2137 +1668 1693 1694 1669 2137 2162 2163 2138 +1669 1694 1695 1670 2138 2163 2164 2139 +1670 1695 1696 1671 2139 2164 2165 2140 +1671 1696 1697 1672 2140 2165 2166 2141 +1672 1697 1698 1673 2141 2166 2167 2142 +1673 1698 1699 1674 2142 2167 2168 2143 +1674 1699 1700 1675 2143 2168 2169 2144 +1676 1701 1702 1677 2145 2170 2171 2146 +1677 1702 1703 1678 2146 2171 2172 2147 +1678 1703 1704 1679 2147 2172 2173 2148 +1679 1704 1705 1680 2148 2173 2174 2149 +1680 1705 1706 1681 2149 2174 2175 2150 +1681 1706 1707 1682 2150 2175 2176 2151 +1682 1707 1708 1683 2151 2176 2177 2152 +1683 1708 1709 1684 2152 2177 2178 2153 +1684 1709 1710 1685 2153 2178 2179 2154 +1685 1710 1711 1686 2154 2179 2180 2155 +1686 1711 1712 1687 2155 2180 2181 2156 +1687 1712 1713 1688 2156 2181 2182 2157 +1688 1713 1714 1689 2157 2182 2183 2158 +1689 1714 1715 1690 2158 2183 2184 2159 +1690 1715 1716 1691 2159 2184 2185 2160 +1691 1716 1717 1692 2160 2185 2186 2161 +1692 1717 1718 1693 2161 2186 2187 2162 +1693 1718 1719 1694 2162 2187 2188 2163 +1694 1719 1720 1695 2163 2188 2189 2164 +1695 1720 1721 1696 2164 2189 2190 2165 +1696 1721 1722 1697 2165 2190 2191 2166 +1697 1722 1723 1698 2166 2191 2192 2167 +1698 1723 1724 1699 2167 2192 2193 2168 +1699 1724 1725 1700 2168 2193 2194 2169 +1701 1726 1727 1702 2170 2195 2196 2171 +1702 1727 1728 1703 2171 2196 2197 2172 +1703 1728 1729 1704 2172 2197 2198 2173 +1704 1729 1730 1705 2173 2198 2199 2174 +1705 1730 1731 1706 2174 2199 2200 2175 +1706 1731 1732 1707 2175 2200 2201 2176 +1707 1732 1733 1708 2176 2201 2202 2177 +1708 1733 1734 1709 2177 2202 2203 2178 +1709 1734 1735 1710 2178 2203 2204 2179 +1710 1735 1736 1711 2179 2204 2205 2180 +1711 1736 1737 1712 2180 2205 2206 2181 +1712 1737 1738 1713 2181 2206 2207 2182 +1713 1738 1739 1714 2182 2207 2208 2183 +1714 1739 1740 1715 2183 2208 2209 2184 +1715 1740 1741 1716 2184 2209 2210 2185 +1716 1741 1742 1717 2185 2210 2211 2186 +1717 1742 1743 1718 2186 2211 2212 2187 +1718 1743 1744 1719 2187 2212 2213 2188 +1719 1744 1745 1720 2188 2213 2214 2189 +1720 1745 1746 1721 2189 2214 2215 2190 +1721 1746 1747 1722 2190 2215 2216 2191 +1722 1747 1748 1723 2191 2216 2217 2192 +1723 1748 1749 1724 2192 2217 2218 2193 +1724 1749 1750 1725 2193 2218 2219 2194 +1726 1751 1752 1727 2195 2220 2221 2196 +1727 1752 1753 1728 2196 2221 2222 2197 +1728 1753 1754 1729 2197 2222 2223 2198 +1729 1754 1755 1730 2198 2223 2224 2199 +1730 1755 1756 1731 2199 2224 2225 2200 +1731 1756 1757 1732 2200 2225 2226 2201 +1732 1757 1758 1733 2201 2226 2227 2202 +1733 1758 1759 1734 2202 2227 2228 2203 +1734 1759 1760 1735 2203 2228 2229 2204 +1735 1760 1761 1736 2204 2229 2230 2205 +1736 1761 1762 1737 2205 2230 2231 2206 +1737 1762 1763 1738 2206 2231 2232 2207 +1738 1763 1764 1739 2207 2232 2233 2208 +1739 1764 1765 1740 2208 2233 2234 2209 +1740 1765 1766 1741 2209 2234 2235 2210 +1741 1766 1767 1742 2210 2235 2236 2211 +1742 1767 1768 1743 2211 2236 2237 2212 +1743 1768 1769 1744 2212 2237 2238 2213 +1744 1769 1770 1745 2213 2238 2239 2214 +1745 1770 1771 1746 2214 2239 2240 2215 +1746 1771 1772 1747 2215 2240 2241 2216 +1747 1772 1773 1748 2216 2241 2242 2217 +1748 1773 1774 1749 2217 2242 2243 2218 +1749 1774 1775 1750 2218 2243 2244 2219 +1751 1776 1777 1752 2220 2245 2246 2221 +1752 1777 1778 1753 2221 2246 2247 2222 +1753 1778 1779 1754 2222 2247 2248 2223 +1754 1779 1780 1755 2223 2248 2249 2224 +1755 1780 1781 1756 2224 2249 2250 2225 +1756 1781 1782 1757 2225 2250 2251 2226 +1757 1782 1783 1758 2226 2251 2252 2227 +1758 1783 1784 1759 2227 2252 2253 2228 +1759 1784 1785 1760 2228 2253 2254 2229 +1760 1785 1786 1761 2229 2254 2255 2230 +1761 1786 1787 1762 2230 2255 2256 2231 +1762 1787 1788 1763 2231 2256 2257 2232 +1763 1788 1789 1764 2232 2257 2258 2233 +1764 1789 1790 1765 2233 2258 2259 2234 +1765 1790 1791 1766 2234 2259 2260 2235 +1766 1791 1792 1767 2235 2260 2261 2236 +1767 1792 1793 1768 2236 2261 2262 2237 +1768 1793 1794 1769 2237 2262 2263 2238 +1769 1794 1795 1770 2238 2263 2264 2239 +1770 1795 1796 1771 2239 2264 2265 2240 +1771 1796 1797 1772 2240 2265 2266 2241 +1772 1797 1798 1773 2241 2266 2267 2242 +1773 1798 1799 1774 2242 2267 2268 2243 +1774 1799 1800 1775 2243 2268 2269 2244 +1776 1801 1802 1777 2245 2270 2271 2246 +1777 1802 1803 1778 2246 2271 2272 2247 +1778 1803 1804 1779 2247 2272 2273 2248 +1779 1804 1805 1780 2248 2273 2274 2249 +1780 1805 1806 1781 2249 2274 2275 2250 +1781 1806 1807 1782 2250 2275 2276 2251 +1782 1807 1808 1783 2251 2276 2277 2252 +1783 1808 1809 1784 2252 2277 2278 2253 +1784 1809 1810 1785 2253 2278 2279 2254 +1785 1810 1811 1786 2254 2279 2280 2255 +1786 1811 1812 1787 2255 2280 2281 2256 +1787 1812 1813 1788 2256 2281 2282 2257 +1788 1813 1814 1789 2257 2282 2283 2258 +1789 1814 1815 1790 2258 2283 2284 2259 +1790 1815 1816 1791 2259 2284 2285 2260 +1791 1816 1817 1792 2260 2285 2286 2261 +1792 1817 1818 1793 2261 2286 2287 2262 +1793 1818 1819 1794 2262 2287 2288 2263 +1794 1819 1820 1795 2263 2288 2289 2264 +1795 1820 1821 1796 2264 2289 2290 2265 +1796 1821 1822 1797 2265 2290 2291 2266 +1797 1822 1823 1798 2266 2291 2292 2267 +1798 1823 1824 1799 2267 2292 2293 2268 +1799 1824 1825 1800 2268 2293 2294 2269 +1801 1826 1827 1802 2270 2295 2296 2271 +1802 1827 1828 1803 2271 2296 2297 2272 +1803 1828 1829 1804 2272 2297 2298 2273 +1804 1829 1830 1805 2273 2298 2299 2274 +1805 1830 1831 1806 2274 2299 2300 2275 +1806 1831 1832 1807 2275 2300 2301 2276 +1807 1832 1833 1808 2276 2301 2302 2277 +1808 1833 1834 1809 2277 2302 2303 2278 +1809 1834 1835 1810 2278 2303 2304 2279 +1810 1835 1836 1811 2279 2304 2305 2280 +1811 1836 1837 1812 2280 2305 2306 2281 +1812 1837 1838 1813 2281 2306 2307 2282 +1813 1838 1839 1814 2282 2307 2308 2283 +1814 1839 1840 1815 2283 2308 2309 2284 +1815 1840 1841 1816 2284 2309 2310 2285 +1816 1841 1842 1817 2285 2310 2311 2286 +1817 1842 1843 1818 2286 2311 2312 2287 +1818 1843 1844 1819 2287 2312 2313 2288 +1819 1844 1845 1820 2288 2313 2314 2289 +1820 1845 1846 1821 2289 2314 2315 2290 +1821 1846 1847 1822 2290 2315 2316 2291 +1822 1847 1848 1823 2291 2316 2317 2292 +1823 1848 1849 1824 2292 2317 2318 2293 +1824 1849 1850 1825 2293 2318 2319 2294 +1826 1851 1852 1827 2295 2320 2321 2296 +1827 1852 1853 1828 2296 2321 2322 2297 +1828 1853 1854 1829 2297 2322 2323 2298 +1829 1854 1855 1830 2298 2323 2324 2299 +1830 1855 1856 1831 2299 2324 2325 2300 +1831 1856 1857 1832 2300 2325 2326 2301 +1832 1857 1858 1833 2301 2326 2327 2302 +1833 1858 1859 1834 2302 2327 2328 2303 +1834 1859 1860 1835 2303 2328 2329 2304 +1835 1860 1861 1836 2304 2329 2330 2305 +1836 1861 1862 1837 2305 2330 2331 2306 +1837 1862 1863 1838 2306 2331 2332 2307 +1838 1863 1864 1839 2307 2332 2333 2308 +1839 1864 1865 1840 2308 2333 2334 2309 +1840 1865 1866 1841 2309 2334 2335 2310 +1841 1866 1867 1842 2310 2335 2336 2311 +1842 1867 1868 1843 2311 2336 2337 2312 +1843 1868 1869 1844 2312 2337 2338 2313 +1844 1869 1870 1845 2313 2338 2339 2314 +1845 1870 1871 1846 2314 2339 2340 2315 +1846 1871 1872 1847 2315 2340 2341 2316 +1847 1872 1873 1848 2316 2341 2342 2317 +1848 1873 1874 1849 2317 2342 2343 2318 +1849 1874 1875 1850 2318 2343 2344 2319 +1851 1876 1877 1852 2320 2345 2346 2321 +1852 1877 1878 1853 2321 2346 2347 2322 +1853 1878 1879 1854 2322 2347 2348 2323 +1854 1879 1880 1855 2323 2348 2349 2324 +1855 1880 1881 1856 2324 2349 2350 2325 +1856 1881 1882 1857 2325 2350 2351 2326 +1857 1882 1883 1858 2326 2351 2352 2327 +1858 1883 1884 1859 2327 2352 2353 2328 +1859 1884 1885 1860 2328 2353 2354 2329 +1860 1885 1886 1861 2329 2354 2355 2330 +1861 1886 1887 1862 2330 2355 2356 2331 +1862 1887 1888 1863 2331 2356 2357 2332 +1863 1888 1889 1864 2332 2357 2358 2333 +1864 1889 1890 1865 2333 2358 2359 2334 +1865 1890 1891 1866 2334 2359 2360 2335 +1866 1891 1892 1867 2335 2360 2361 2336 +1867 1892 1893 1868 2336 2361 2362 2337 +1868 1893 1894 1869 2337 2362 2363 2338 +1869 1894 1895 1870 2338 2363 2364 2339 +1870 1895 1896 1871 2339 2364 2365 2340 +1871 1896 1897 1872 2340 2365 2366 2341 +1872 1897 1898 1873 2341 2366 2367 2342 +1873 1898 1899 1874 2342 2367 2368 2343 +1874 1899 1900 1875 2343 2368 2369 2344 +1876 1901 1902 1877 2345 2370 2371 2346 +1877 1902 1903 1878 2346 2371 2372 2347 +1878 1903 1904 1879 2347 2372 2373 2348 +1879 1904 1905 1880 2348 2373 2374 2349 +1880 1905 1906 1881 2349 2374 2375 2350 +1881 1906 1907 1882 2350 2375 2376 2351 +1882 1907 1908 1883 2351 2376 2377 2352 +1883 1908 1909 1884 2352 2377 2378 2353 +1884 1909 1910 1885 2353 2378 2379 2354 +1885 1910 1911 1886 2354 2379 2380 2355 +1886 1911 1912 1887 2355 2380 2381 2356 +1887 1912 1913 1888 2356 2381 2382 2357 +1888 1913 1914 1889 2357 2382 2383 2358 +1889 1914 1915 1890 2358 2383 2384 2359 +1890 1915 1916 1891 2359 2384 2385 2360 +1891 1916 1917 1892 2360 2385 2386 2361 +1892 1917 1918 1893 2361 2386 2387 2362 +1893 1918 1919 1894 2362 2387 2388 2363 +1894 1919 1920 1895 2363 2388 2389 2364 +1895 1920 1921 1896 2364 2389 2390 2365 +1896 1921 1922 1897 2365 2390 2391 2366 +1897 1922 1923 1898 2366 2391 2392 2367 +1898 1923 1924 1899 2367 2392 2393 2368 +1899 1924 1925 1900 2368 2393 2394 2369 +1901 1926 1927 1902 2370 2395 2396 2371 +1902 1927 1928 1903 2371 2396 2397 2372 +1903 1928 1929 1904 2372 2397 2398 2373 +1904 1929 1930 1905 2373 2398 2399 2374 +1905 1930 1931 1906 2374 2399 2400 2375 +1906 1931 1932 1907 2375 2400 2401 2376 +1907 1932 1933 1908 2376 2401 2402 2377 +1908 1933 1934 1909 2377 2402 2403 2378 +1909 1934 1935 1910 2378 2403 2404 2379 +1910 1935 1936 1911 2379 2404 2405 2380 +1911 1936 1937 1912 2380 2405 2406 2381 +1912 1937 1938 1913 2381 2406 2407 2382 +1913 1938 1939 1914 2382 2407 2408 2383 +1914 1939 1940 1915 2383 2408 2409 2384 +1915 1940 1941 1916 2384 2409 2410 2385 +1916 1941 1942 1917 2385 2410 2411 2386 +1917 1942 1943 1918 2386 2411 2412 2387 +1918 1943 1944 1919 2387 2412 2413 2388 +1919 1944 1945 1920 2388 2413 2414 2389 +1920 1945 1946 1921 2389 2414 2415 2390 +1921 1946 1947 1922 2390 2415 2416 2391 +1922 1947 1948 1923 2391 2416 2417 2392 +1923 1948 1949 1924 2392 2417 2418 2393 +1924 1949 1950 1925 2393 2418 2419 2394 +1926 1951 1952 1927 2395 2420 2421 2396 +1927 1952 1953 1928 2396 2421 2422 2397 +1928 1953 1954 1929 2397 2422 2423 2398 +1929 1954 1955 1930 2398 2423 2424 2399 +1930 1955 1956 1931 2399 2424 2425 2400 +1931 1956 1957 1932 2400 2425 2426 2401 +1932 1957 1958 1933 2401 2426 2427 2402 +1933 1958 1959 1934 2402 2427 2428 2403 +1934 1959 1960 1935 2403 2428 2429 2404 +1935 1960 1961 1936 2404 2429 2430 2405 +1936 1961 1962 1937 2405 2430 2431 2406 +1937 1962 1963 1938 2406 2431 2432 2407 +1938 1963 1964 1939 2407 2432 2433 2408 +1939 1964 1965 1940 2408 2433 2434 2409 +1940 1965 1966 1941 2409 2434 2435 2410 +1941 1966 1967 1942 2410 2435 2436 2411 +1942 1967 1968 1943 2411 2436 2437 2412 +1943 1968 1969 1944 2412 2437 2438 2413 +1944 1969 1970 1945 2413 2438 2439 2414 +1945 1970 1971 1946 2414 2439 2440 2415 +1946 1971 1972 1947 2415 2440 2441 2416 +1947 1972 1973 1948 2416 2441 2442 2417 +1948 1973 1974 1949 2417 2442 2443 2418 +1949 1974 1975 1950 2418 2443 2444 2419 +1951 1976 1977 1952 2420 2445 2446 2421 +1952 1977 1978 1953 2421 2446 2447 2422 +1953 1978 1979 1954 2422 2447 2448 2423 +1954 1979 1980 1955 2423 2448 2449 2424 +1955 1980 1981 1956 2424 2449 2450 2425 +1956 1981 1982 1957 2425 2450 2451 2426 +1957 1982 1983 1958 2426 2451 2452 2427 +1958 1983 1984 1959 2427 2452 2453 2428 +1959 1984 1985 1960 2428 2453 2454 2429 +1960 1985 1986 1961 2429 2454 2455 2430 +1961 1986 1987 1962 2430 2455 2456 2431 +1962 1987 1988 1963 2431 2456 2457 2432 +1963 1988 1989 1964 2432 2457 2458 2433 +1964 1989 1990 1965 2433 2458 2459 2434 +1965 1990 1991 1966 2434 2459 2460 2435 +1966 1991 1992 1967 2435 2460 2461 2436 +1967 1992 1993 1968 2436 2461 2462 2437 +1968 1993 1994 1969 2437 2462 2463 2438 +1969 1994 1995 1970 2438 2463 2464 2439 +1970 1995 1996 1971 2439 2464 2465 2440 +1971 1996 1997 1972 2440 2465 2466 2441 +1972 1997 1998 1973 2441 2466 2467 2442 +1973 1998 1999 1974 2442 2467 2468 2443 +1974 1999 2000 1975 2443 2468 2469 2444 +2001 2002 2003 2004 2470 2471 2472 2473 +2002 2005 2006 2003 2471 2474 2475 2472 +2003 2006 2007 2008 2472 2475 2476 2477 +2003 2008 2009 2004 2472 2477 2478 2473 +2005 2010 2011 2006 2474 2479 2480 2475 +2006 2011 2012 2007 2475 2480 2481 2476 +2007 2012 2013 2014 2476 2481 2482 2483 +2007 2014 2015 2008 2476 2483 2484 2477 +2008 2015 2016 2009 2477 2484 2485 2478 +2010 2017 2018 2011 2479 2486 2487 2480 +2011 2018 2019 2012 2480 2487 2488 2481 +2012 2019 2020 2013 2481 2488 2489 2482 +2013 2020 2021 2022 2482 2489 2490 2491 +2013 2022 2023 2014 2482 2491 2492 2483 +2014 2023 2024 2015 2483 2492 2493 2484 +2015 2024 2025 2016 2484 2493 2494 2485 +2017 2026 2027 2018 2486 2495 2496 2487 +2018 2027 2028 2019 2487 2496 2497 2488 +2019 2028 2029 2020 2488 2497 2498 2489 +2020 2029 2030 2021 2489 2498 2499 2490 +2021 2030 2031 2032 2490 2499 2500 2501 +2021 2032 2033 2022 2490 2501 2502 2491 +2022 2033 2034 2023 2491 2502 2503 2492 +2023 2034 2035 2024 2492 2503 2504 2493 +2024 2035 2036 2025 2493 2504 2505 2494 +2026 2037 2038 2027 2495 2506 2507 2496 +2027 2038 2039 2028 2496 2507 2508 2497 +2028 2039 2040 2029 2497 2508 2509 2498 +2029 2040 2041 2030 2498 2509 2510 2499 +2030 2041 2042 2031 2499 2510 2511 2500 +2031 2042 2043 2044 2500 2511 2512 2513 +2031 2044 2045 2032 2500 2513 2514 2501 +2032 2045 2046 2033 2501 2514 2515 2502 +2033 2046 2047 2034 2502 2515 2516 2503 +2034 2047 2048 2035 2503 2516 2517 2504 +2035 2048 2049 2036 2504 2517 2518 2505 +2037 2050 2051 2038 2506 2519 2520 2507 +2038 2051 2052 2039 2507 2520 2521 2508 +2039 2052 2053 2040 2508 2521 2522 2509 +2040 2053 2054 2041 2509 2522 2523 2510 +2041 2054 2055 2042 2510 2523 2524 2511 +2042 2055 2056 2043 2511 2524 2525 2512 +2043 2056 2057 2058 2512 2525 2526 2527 +2043 2058 2059 2044 2512 2527 2528 2513 +2044 2059 2060 2045 2513 2528 2529 2514 +2045 2060 2061 2046 2514 2529 2530 2515 +2046 2061 2062 2047 2515 2530 2531 2516 +2047 2062 2063 2048 2516 2531 2532 2517 +2048 2063 2064 2049 2517 2532 2533 2518 +2050 2065 2066 2051 2519 2534 2535 2520 +2051 2066 2067 2052 2520 2535 2536 2521 +2052 2067 2068 2053 2521 2536 2537 2522 +2053 2068 2069 2054 2522 2537 2538 2523 +2054 2069 2070 2055 2523 2538 2539 2524 +2055 2070 2071 2056 2524 2539 2540 2525 +2056 2071 2072 2057 2525 2540 2541 2526 +2057 2072 2073 2074 2526 2541 2542 2543 +2057 2074 2075 2058 2526 2543 2544 2527 +2058 2075 2076 2059 2527 2544 2545 2528 +2059 2076 2077 2060 2528 2545 2546 2529 +2060 2077 2078 2061 2529 2546 2547 2530 +2061 2078 2079 2062 2530 2547 2548 2531 +2062 2079 2080 2063 2531 2548 2549 2532 +2063 2080 2081 2064 2532 2549 2550 2533 +2065 2082 2083 2066 2534 2551 2552 2535 +2066 2083 2084 2067 2535 2552 2553 2536 +2067 2084 2085 2068 2536 2553 2554 2537 +2068 2085 2086 2069 2537 2554 2555 2538 +2069 2086 2087 2070 2538 2555 2556 2539 +2070 2087 2088 2071 2539 2556 2557 2540 +2071 2088 2089 2072 2540 2557 2558 2541 +2072 2089 2090 2073 2541 2558 2559 2542 +2073 2090 2091 2092 2542 2559 2560 2561 +2073 2092 2093 2074 2542 2561 2562 2543 +2074 2093 2094 2075 2543 2562 2563 2544 +2075 2094 2095 2076 2544 2563 2564 2545 +2076 2095 2096 2077 2545 2564 2565 2546 +2077 2096 2097 2078 2546 2565 2566 2547 +2078 2097 2098 2079 2547 2566 2567 2548 +2079 2098 2099 2080 2548 2567 2568 2549 +2080 2099 2100 2081 2549 2568 2569 2550 +2082 2101 2102 2083 2551 2570 2571 2552 +2083 2102 2103 2084 2552 2571 2572 2553 +2084 2103 2104 2085 2553 2572 2573 2554 +2085 2104 2105 2086 2554 2573 2574 2555 +2086 2105 2106 2087 2555 2574 2575 2556 +2087 2106 2107 2088 2556 2575 2576 2557 +2088 2107 2108 2089 2557 2576 2577 2558 +2089 2108 2109 2090 2558 2577 2578 2559 +2090 2109 2110 2091 2559 2578 2579 2560 +2091 2110 2111 2112 2560 2579 2580 2581 +2091 2112 2113 2092 2560 2581 2582 2561 +2092 2113 2114 2093 2561 2582 2583 2562 +2093 2114 2115 2094 2562 2583 2584 2563 +2094 2115 2116 2095 2563 2584 2585 2564 +2095 2116 2117 2096 2564 2585 2586 2565 +2096 2117 2118 2097 2565 2586 2587 2566 +2097 2118 2119 2098 2566 2587 2588 2567 +2098 2119 2120 2099 2567 2588 2589 2568 +2099 2120 2121 2100 2568 2589 2590 2569 +2101 2122 2123 2102 2570 2591 2592 2571 +2102 2123 2124 2103 2571 2592 2593 2572 +2103 2124 2125 2104 2572 2593 2594 2573 +2104 2125 2126 2105 2573 2594 2595 2574 +2105 2126 2127 2106 2574 2595 2596 2575 +2106 2127 2128 2107 2575 2596 2597 2576 +2107 2128 2129 2108 2576 2597 2598 2577 +2108 2129 2130 2109 2577 2598 2599 2578 +2109 2130 2131 2110 2578 2599 2600 2579 +2110 2131 2132 2111 2579 2600 2601 2580 +2111 2132 2133 2134 2580 2601 2602 2603 +2111 2134 2135 2112 2580 2603 2604 2581 +2112 2135 2136 2113 2581 2604 2605 2582 +2113 2136 2137 2114 2582 2605 2606 2583 +2114 2137 2138 2115 2583 2606 2607 2584 +2115 2138 2139 2116 2584 2607 2608 2585 +2116 2139 2140 2117 2585 2608 2609 2586 +2117 2140 2141 2118 2586 2609 2610 2587 +2118 2141 2142 2119 2587 2610 2611 2588 +2119 2142 2143 2120 2588 2611 2612 2589 +2120 2143 2144 2121 2589 2612 2613 2590 +2122 2145 2146 2123 2591 2614 2615 2592 +2123 2146 2147 2124 2592 2615 2616 2593 +2124 2147 2148 2125 2593 2616 2617 2594 +2125 2148 2149 2126 2594 2617 2618 2595 +2126 2149 2150 2127 2595 2618 2619 2596 +2127 2150 2151 2128 2596 2619 2620 2597 +2128 2151 2152 2129 2597 2620 2621 2598 +2129 2152 2153 2130 2598 2621 2622 2599 +2130 2153 2154 2131 2599 2622 2623 2600 +2131 2154 2155 2132 2600 2623 2624 2601 +2132 2155 2156 2133 2601 2624 2625 2602 +2133 2156 2157 2158 2602 2625 2626 2627 +2133 2158 2159 2134 2602 2627 2628 2603 +2134 2159 2160 2135 2603 2628 2629 2604 +2135 2160 2161 2136 2604 2629 2630 2605 +2136 2161 2162 2137 2605 2630 2631 2606 +2137 2162 2163 2138 2606 2631 2632 2607 +2138 2163 2164 2139 2607 2632 2633 2608 +2139 2164 2165 2140 2608 2633 2634 2609 +2140 2165 2166 2141 2609 2634 2635 2610 +2141 2166 2167 2142 2610 2635 2636 2611 +2142 2167 2168 2143 2611 2636 2637 2612 +2143 2168 2169 2144 2612 2637 2638 2613 +2145 2170 2171 2146 2614 2639 2640 2615 +2146 2171 2172 2147 2615 2640 2641 2616 +2147 2172 2173 2148 2616 2641 2642 2617 +2148 2173 2174 2149 2617 2642 2643 2618 +2149 2174 2175 2150 2618 2643 2644 2619 +2150 2175 2176 2151 2619 2644 2645 2620 +2151 2176 2177 2152 2620 2645 2646 2621 +2152 2177 2178 2153 2621 2646 2647 2622 +2153 2178 2179 2154 2622 2647 2648 2623 +2154 2179 2180 2155 2623 2648 2649 2624 +2155 2180 2181 2156 2624 2649 2650 2625 +2156 2181 2182 2157 2625 2650 2651 2626 +2157 2182 2183 2158 2626 2651 2652 2627 +2158 2183 2184 2159 2627 2652 2653 2628 +2159 2184 2185 2160 2628 2653 2654 2629 +2160 2185 2186 2161 2629 2654 2655 2630 +2161 2186 2187 2162 2630 2655 2656 2631 +2162 2187 2188 2163 2631 2656 2657 2632 +2163 2188 2189 2164 2632 2657 2658 2633 +2164 2189 2190 2165 2633 2658 2659 2634 +2165 2190 2191 2166 2634 2659 2660 2635 +2166 2191 2192 2167 2635 2660 2661 2636 +2167 2192 2193 2168 2636 2661 2662 2637 +2168 2193 2194 2169 2637 2662 2663 2638 +2170 2195 2196 2171 2639 2664 2665 2640 +2171 2196 2197 2172 2640 2665 2666 2641 +2172 2197 2198 2173 2641 2666 2667 2642 +2173 2198 2199 2174 2642 2667 2668 2643 +2174 2199 2200 2175 2643 2668 2669 2644 +2175 2200 2201 2176 2644 2669 2670 2645 +2176 2201 2202 2177 2645 2670 2671 2646 +2177 2202 2203 2178 2646 2671 2672 2647 +2178 2203 2204 2179 2647 2672 2673 2648 +2179 2204 2205 2180 2648 2673 2674 2649 +2180 2205 2206 2181 2649 2674 2675 2650 +2181 2206 2207 2182 2650 2675 2676 2651 +2182 2207 2208 2183 2651 2676 2677 2652 +2183 2208 2209 2184 2652 2677 2678 2653 +2184 2209 2210 2185 2653 2678 2679 2654 +2185 2210 2211 2186 2654 2679 2680 2655 +2186 2211 2212 2187 2655 2680 2681 2656 +2187 2212 2213 2188 2656 2681 2682 2657 +2188 2213 2214 2189 2657 2682 2683 2658 +2189 2214 2215 2190 2658 2683 2684 2659 +2190 2215 2216 2191 2659 2684 2685 2660 +2191 2216 2217 2192 2660 2685 2686 2661 +2192 2217 2218 2193 2661 2686 2687 2662 +2193 2218 2219 2194 2662 2687 2688 2663 +2195 2220 2221 2196 2664 2689 2690 2665 +2196 2221 2222 2197 2665 2690 2691 2666 +2197 2222 2223 2198 2666 2691 2692 2667 +2198 2223 2224 2199 2667 2692 2693 2668 +2199 2224 2225 2200 2668 2693 2694 2669 +2200 2225 2226 2201 2669 2694 2695 2670 +2201 2226 2227 2202 2670 2695 2696 2671 +2202 2227 2228 2203 2671 2696 2697 2672 +2203 2228 2229 2204 2672 2697 2698 2673 +2204 2229 2230 2205 2673 2698 2699 2674 +2205 2230 2231 2206 2674 2699 2700 2675 +2206 2231 2232 2207 2675 2700 2701 2676 +2207 2232 2233 2208 2676 2701 2702 2677 +2208 2233 2234 2209 2677 2702 2703 2678 +2209 2234 2235 2210 2678 2703 2704 2679 +2210 2235 2236 2211 2679 2704 2705 2680 +2211 2236 2237 2212 2680 2705 2706 2681 +2212 2237 2238 2213 2681 2706 2707 2682 +2213 2238 2239 2214 2682 2707 2708 2683 +2214 2239 2240 2215 2683 2708 2709 2684 +2215 2240 2241 2216 2684 2709 2710 2685 +2216 2241 2242 2217 2685 2710 2711 2686 +2217 2242 2243 2218 2686 2711 2712 2687 +2218 2243 2244 2219 2687 2712 2713 2688 +2220 2245 2246 2221 2689 2714 2715 2690 +2221 2246 2247 2222 2690 2715 2716 2691 +2222 2247 2248 2223 2691 2716 2717 2692 +2223 2248 2249 2224 2692 2717 2718 2693 +2224 2249 2250 2225 2693 2718 2719 2694 +2225 2250 2251 2226 2694 2719 2720 2695 +2226 2251 2252 2227 2695 2720 2721 2696 +2227 2252 2253 2228 2696 2721 2722 2697 +2228 2253 2254 2229 2697 2722 2723 2698 +2229 2254 2255 2230 2698 2723 2724 2699 +2230 2255 2256 2231 2699 2724 2725 2700 +2231 2256 2257 2232 2700 2725 2726 2701 +2232 2257 2258 2233 2701 2726 2727 2702 +2233 2258 2259 2234 2702 2727 2728 2703 +2234 2259 2260 2235 2703 2728 2729 2704 +2235 2260 2261 2236 2704 2729 2730 2705 +2236 2261 2262 2237 2705 2730 2731 2706 +2237 2262 2263 2238 2706 2731 2732 2707 +2238 2263 2264 2239 2707 2732 2733 2708 +2239 2264 2265 2240 2708 2733 2734 2709 +2240 2265 2266 2241 2709 2734 2735 2710 +2241 2266 2267 2242 2710 2735 2736 2711 +2242 2267 2268 2243 2711 2736 2737 2712 +2243 2268 2269 2244 2712 2737 2738 2713 +2245 2270 2271 2246 2714 2739 2740 2715 +2246 2271 2272 2247 2715 2740 2741 2716 +2247 2272 2273 2248 2716 2741 2742 2717 +2248 2273 2274 2249 2717 2742 2743 2718 +2249 2274 2275 2250 2718 2743 2744 2719 +2250 2275 2276 2251 2719 2744 2745 2720 +2251 2276 2277 2252 2720 2745 2746 2721 +2252 2277 2278 2253 2721 2746 2747 2722 +2253 2278 2279 2254 2722 2747 2748 2723 +2254 2279 2280 2255 2723 2748 2749 2724 +2255 2280 2281 2256 2724 2749 2750 2725 +2256 2281 2282 2257 2725 2750 2751 2726 +2257 2282 2283 2258 2726 2751 2752 2727 +2258 2283 2284 2259 2727 2752 2753 2728 +2259 2284 2285 2260 2728 2753 2754 2729 +2260 2285 2286 2261 2729 2754 2755 2730 +2261 2286 2287 2262 2730 2755 2756 2731 +2262 2287 2288 2263 2731 2756 2757 2732 +2263 2288 2289 2264 2732 2757 2758 2733 +2264 2289 2290 2265 2733 2758 2759 2734 +2265 2290 2291 2266 2734 2759 2760 2735 +2266 2291 2292 2267 2735 2760 2761 2736 +2267 2292 2293 2268 2736 2761 2762 2737 +2268 2293 2294 2269 2737 2762 2763 2738 +2270 2295 2296 2271 2739 2764 2765 2740 +2271 2296 2297 2272 2740 2765 2766 2741 +2272 2297 2298 2273 2741 2766 2767 2742 +2273 2298 2299 2274 2742 2767 2768 2743 +2274 2299 2300 2275 2743 2768 2769 2744 +2275 2300 2301 2276 2744 2769 2770 2745 +2276 2301 2302 2277 2745 2770 2771 2746 +2277 2302 2303 2278 2746 2771 2772 2747 +2278 2303 2304 2279 2747 2772 2773 2748 +2279 2304 2305 2280 2748 2773 2774 2749 +2280 2305 2306 2281 2749 2774 2775 2750 +2281 2306 2307 2282 2750 2775 2776 2751 +2282 2307 2308 2283 2751 2776 2777 2752 +2283 2308 2309 2284 2752 2777 2778 2753 +2284 2309 2310 2285 2753 2778 2779 2754 +2285 2310 2311 2286 2754 2779 2780 2755 +2286 2311 2312 2287 2755 2780 2781 2756 +2287 2312 2313 2288 2756 2781 2782 2757 +2288 2313 2314 2289 2757 2782 2783 2758 +2289 2314 2315 2290 2758 2783 2784 2759 +2290 2315 2316 2291 2759 2784 2785 2760 +2291 2316 2317 2292 2760 2785 2786 2761 +2292 2317 2318 2293 2761 2786 2787 2762 +2293 2318 2319 2294 2762 2787 2788 2763 +2295 2320 2321 2296 2764 2789 2790 2765 +2296 2321 2322 2297 2765 2790 2791 2766 +2297 2322 2323 2298 2766 2791 2792 2767 +2298 2323 2324 2299 2767 2792 2793 2768 +2299 2324 2325 2300 2768 2793 2794 2769 +2300 2325 2326 2301 2769 2794 2795 2770 +2301 2326 2327 2302 2770 2795 2796 2771 +2302 2327 2328 2303 2771 2796 2797 2772 +2303 2328 2329 2304 2772 2797 2798 2773 +2304 2329 2330 2305 2773 2798 2799 2774 +2305 2330 2331 2306 2774 2799 2800 2775 +2306 2331 2332 2307 2775 2800 2801 2776 +2307 2332 2333 2308 2776 2801 2802 2777 +2308 2333 2334 2309 2777 2802 2803 2778 +2309 2334 2335 2310 2778 2803 2804 2779 +2310 2335 2336 2311 2779 2804 2805 2780 +2311 2336 2337 2312 2780 2805 2806 2781 +2312 2337 2338 2313 2781 2806 2807 2782 +2313 2338 2339 2314 2782 2807 2808 2783 +2314 2339 2340 2315 2783 2808 2809 2784 +2315 2340 2341 2316 2784 2809 2810 2785 +2316 2341 2342 2317 2785 2810 2811 2786 +2317 2342 2343 2318 2786 2811 2812 2787 +2318 2343 2344 2319 2787 2812 2813 2788 +2320 2345 2346 2321 2789 2814 2815 2790 +2321 2346 2347 2322 2790 2815 2816 2791 +2322 2347 2348 2323 2791 2816 2817 2792 +2323 2348 2349 2324 2792 2817 2818 2793 +2324 2349 2350 2325 2793 2818 2819 2794 +2325 2350 2351 2326 2794 2819 2820 2795 +2326 2351 2352 2327 2795 2820 2821 2796 +2327 2352 2353 2328 2796 2821 2822 2797 +2328 2353 2354 2329 2797 2822 2823 2798 +2329 2354 2355 2330 2798 2823 2824 2799 +2330 2355 2356 2331 2799 2824 2825 2800 +2331 2356 2357 2332 2800 2825 2826 2801 +2332 2357 2358 2333 2801 2826 2827 2802 +2333 2358 2359 2334 2802 2827 2828 2803 +2334 2359 2360 2335 2803 2828 2829 2804 +2335 2360 2361 2336 2804 2829 2830 2805 +2336 2361 2362 2337 2805 2830 2831 2806 +2337 2362 2363 2338 2806 2831 2832 2807 +2338 2363 2364 2339 2807 2832 2833 2808 +2339 2364 2365 2340 2808 2833 2834 2809 +2340 2365 2366 2341 2809 2834 2835 2810 +2341 2366 2367 2342 2810 2835 2836 2811 +2342 2367 2368 2343 2811 2836 2837 2812 +2343 2368 2369 2344 2812 2837 2838 2813 +2345 2370 2371 2346 2814 2839 2840 2815 +2346 2371 2372 2347 2815 2840 2841 2816 +2347 2372 2373 2348 2816 2841 2842 2817 +2348 2373 2374 2349 2817 2842 2843 2818 +2349 2374 2375 2350 2818 2843 2844 2819 +2350 2375 2376 2351 2819 2844 2845 2820 +2351 2376 2377 2352 2820 2845 2846 2821 +2352 2377 2378 2353 2821 2846 2847 2822 +2353 2378 2379 2354 2822 2847 2848 2823 +2354 2379 2380 2355 2823 2848 2849 2824 +2355 2380 2381 2356 2824 2849 2850 2825 +2356 2381 2382 2357 2825 2850 2851 2826 +2357 2382 2383 2358 2826 2851 2852 2827 +2358 2383 2384 2359 2827 2852 2853 2828 +2359 2384 2385 2360 2828 2853 2854 2829 +2360 2385 2386 2361 2829 2854 2855 2830 +2361 2386 2387 2362 2830 2855 2856 2831 +2362 2387 2388 2363 2831 2856 2857 2832 +2363 2388 2389 2364 2832 2857 2858 2833 +2364 2389 2390 2365 2833 2858 2859 2834 +2365 2390 2391 2366 2834 2859 2860 2835 +2366 2391 2392 2367 2835 2860 2861 2836 +2367 2392 2393 2368 2836 2861 2862 2837 +2368 2393 2394 2369 2837 2862 2863 2838 +2370 2395 2396 2371 2839 2864 2865 2840 +2371 2396 2397 2372 2840 2865 2866 2841 +2372 2397 2398 2373 2841 2866 2867 2842 +2373 2398 2399 2374 2842 2867 2868 2843 +2374 2399 2400 2375 2843 2868 2869 2844 +2375 2400 2401 2376 2844 2869 2870 2845 +2376 2401 2402 2377 2845 2870 2871 2846 +2377 2402 2403 2378 2846 2871 2872 2847 +2378 2403 2404 2379 2847 2872 2873 2848 +2379 2404 2405 2380 2848 2873 2874 2849 +2380 2405 2406 2381 2849 2874 2875 2850 +2381 2406 2407 2382 2850 2875 2876 2851 +2382 2407 2408 2383 2851 2876 2877 2852 +2383 2408 2409 2384 2852 2877 2878 2853 +2384 2409 2410 2385 2853 2878 2879 2854 +2385 2410 2411 2386 2854 2879 2880 2855 +2386 2411 2412 2387 2855 2880 2881 2856 +2387 2412 2413 2388 2856 2881 2882 2857 +2388 2413 2414 2389 2857 2882 2883 2858 +2389 2414 2415 2390 2858 2883 2884 2859 +2390 2415 2416 2391 2859 2884 2885 2860 +2391 2416 2417 2392 2860 2885 2886 2861 +2392 2417 2418 2393 2861 2886 2887 2862 +2393 2418 2419 2394 2862 2887 2888 2863 +2395 2420 2421 2396 2864 2889 2890 2865 +2396 2421 2422 2397 2865 2890 2891 2866 +2397 2422 2423 2398 2866 2891 2892 2867 +2398 2423 2424 2399 2867 2892 2893 2868 +2399 2424 2425 2400 2868 2893 2894 2869 +2400 2425 2426 2401 2869 2894 2895 2870 +2401 2426 2427 2402 2870 2895 2896 2871 +2402 2427 2428 2403 2871 2896 2897 2872 +2403 2428 2429 2404 2872 2897 2898 2873 +2404 2429 2430 2405 2873 2898 2899 2874 +2405 2430 2431 2406 2874 2899 2900 2875 +2406 2431 2432 2407 2875 2900 2901 2876 +2407 2432 2433 2408 2876 2901 2902 2877 +2408 2433 2434 2409 2877 2902 2903 2878 +2409 2434 2435 2410 2878 2903 2904 2879 +2410 2435 2436 2411 2879 2904 2905 2880 +2411 2436 2437 2412 2880 2905 2906 2881 +2412 2437 2438 2413 2881 2906 2907 2882 +2413 2438 2439 2414 2882 2907 2908 2883 +2414 2439 2440 2415 2883 2908 2909 2884 +2415 2440 2441 2416 2884 2909 2910 2885 +2416 2441 2442 2417 2885 2910 2911 2886 +2417 2442 2443 2418 2886 2911 2912 2887 +2418 2443 2444 2419 2887 2912 2913 2888 +2420 2445 2446 2421 2889 2914 2915 2890 +2421 2446 2447 2422 2890 2915 2916 2891 +2422 2447 2448 2423 2891 2916 2917 2892 +2423 2448 2449 2424 2892 2917 2918 2893 +2424 2449 2450 2425 2893 2918 2919 2894 +2425 2450 2451 2426 2894 2919 2920 2895 +2426 2451 2452 2427 2895 2920 2921 2896 +2427 2452 2453 2428 2896 2921 2922 2897 +2428 2453 2454 2429 2897 2922 2923 2898 +2429 2454 2455 2430 2898 2923 2924 2899 +2430 2455 2456 2431 2899 2924 2925 2900 +2431 2456 2457 2432 2900 2925 2926 2901 +2432 2457 2458 2433 2901 2926 2927 2902 +2433 2458 2459 2434 2902 2927 2928 2903 +2434 2459 2460 2435 2903 2928 2929 2904 +2435 2460 2461 2436 2904 2929 2930 2905 +2436 2461 2462 2437 2905 2930 2931 2906 +2437 2462 2463 2438 2906 2931 2932 2907 +2438 2463 2464 2439 2907 2932 2933 2908 +2439 2464 2465 2440 2908 2933 2934 2909 +2440 2465 2466 2441 2909 2934 2935 2910 +2441 2466 2467 2442 2910 2935 2936 2911 +2442 2467 2468 2443 2911 2936 2937 2912 +2443 2468 2469 2444 2912 2937 2938 2913 +2470 2471 2472 2473 2941 2947 2948 2946 +2471 2474 2475 2472 2951 2960 2963 2954 +2472 2475 2476 2477 2956 2973 2974 2967 +2472 2477 2478 2473 2949 2977 2978 2950 +2474 2479 2480 2475 2971 3011 3012 2972 +2475 2480 2481 2476 2982 2997 3000 2985 +2476 2481 2482 2483 2987 3015 3016 3004 +2476 2483 2484 2477 2975 3019 3020 2976 +2477 2484 2485 2478 2990 3007 3010 2993 +2479 2486 2487 2480 3023 3044 3047 3026 +2480 2487 2488 2481 3013 3069 3070 3014 +2481 2488 2489 2482 3029 3050 3053 3032 +2482 2489 2490 2491 3034 3073 3074 3057 +2482 2491 2492 2483 3017 3077 3078 3018 +2483 2492 2493 2484 3037 3060 3063 3040 +2484 2493 2494 2485 3021 3081 3082 3022 +2486 2495 2496 2487 3067 3139 3140 3068 +2487 2496 2497 2488 3086 3113 3116 3089 +2488 2497 2498 2489 3071 3143 3144 3072 +2489 2498 2499 2490 3092 3119 3122 3095 +2490 2499 2500 2501 3097 3147 3148 3126 +2490 2501 2502 2491 3075 3151 3152 3076 +2491 2502 2503 2492 3100 3129 3132 3103 +2492 2503 2504 2493 3079 3155 3156 3080 +2493 2504 2505 2494 3106 3135 3138 3109 +2495 2506 2507 2496 3159 3192 3195 3162 +2496 2507 2508 2497 3141 3229 3230 3142 +2497 2508 2509 2498 3165 3198 3201 3168 +2498 2509 2510 2499 3145 3233 3234 3146 +2499 2510 2511 2500 3171 3204 3207 3174 +2500 2511 2512 2513 3176 3237 3238 3211 +2500 2513 2514 2501 3149 3241 3242 3150 +2501 2514 2515 2502 3179 3214 3217 3182 +2502 2515 2516 2503 3153 3245 3246 3154 +2503 2516 2517 2504 3185 3220 3223 3188 +2504 2517 2518 2505 3157 3249 3250 3158 +2506 2519 2520 2507 3227 3331 3332 3228 +2507 2520 2521 2508 3254 3293 3296 3257 +2508 2521 2522 2509 3231 3335 3336 3232 +2509 2522 2523 2510 3260 3299 3302 3263 +2510 2523 2524 2511 3235 3339 3340 3236 +2511 2524 2525 2512 3266 3305 3308 3269 +2512 2525 2526 2527 3271 3343 3344 3312 +2512 2527 2528 2513 3239 3347 3348 3240 +2513 2528 2529 2514 3274 3315 3318 3277 +2514 2529 2530 2515 3243 3351 3352 3244 +2515 2530 2531 2516 3280 3321 3324 3283 +2516 2531 2532 2517 3247 3355 3356 3248 +2517 2532 2533 2518 3286 3327 3330 3289 +2519 2534 2535 2520 3359 3404 3407 3362 +2520 2535 2536 2521 3333 3453 3454 3334 +2521 2536 2537 2522 3365 3410 3413 3368 +2522 2537 2538 2523 3337 3457 3458 3338 +2523 2538 2539 2524 3371 3416 3419 3374 +2524 2539 2540 2525 3341 3461 3462 3342 +2525 2540 2541 2526 3377 3422 3425 3380 +2526 2541 2542 2543 3382 3465 3466 3429 +2526 2543 2544 2527 3345 3469 3470 3346 +2527 2544 2545 2528 3385 3432 3435 3388 +2528 2545 2546 2529 3349 3473 3474 3350 +2529 2546 2547 2530 3391 3438 3441 3394 +2530 2547 2548 2531 3353 3477 3478 3354 +2531 2548 2549 2532 3397 3444 3447 3400 +2532 2549 2550 2533 3357 3481 3482 3358 +2534 2551 2552 2535 3451 3587 3588 3452 +2535 2552 2553 2536 3486 3537 3540 3489 +2536 2553 2554 2537 3455 3591 3592 3456 +2537 2554 2555 2538 3492 3543 3546 3495 +2538 2555 2556 2539 3459 3595 3596 3460 +2539 2556 2557 2540 3498 3549 3552 3501 +2540 2557 2558 2541 3463 3599 3600 3464 +2541 2558 2559 2542 3504 3555 3558 3507 +2542 2559 2560 2561 3509 3603 3604 3562 +2542 2561 2562 2543 3467 3607 3608 3468 +2543 2562 2563 2544 3512 3565 3568 3515 +2544 2563 2564 2545 3471 3611 3612 3472 +2545 2564 2565 2546 3518 3571 3574 3521 +2546 2565 2566 2547 3475 3615 3616 3476 +2547 2566 2567 2548 3524 3577 3580 3527 +2548 2567 2568 2549 3479 3619 3620 3480 +2549 2568 2569 2550 3530 3583 3586 3533 +2551 2570 2571 2552 3623 3680 3683 3626 +2552 2571 2572 2553 3589 3741 3742 3590 +2553 2572 2573 2554 3629 3686 3689 3632 +2554 2573 2574 2555 3593 3745 3746 3594 +2555 2574 2575 2556 3635 3692 3695 3638 +2556 2575 2576 2557 3597 3749 3750 3598 +2557 2576 2577 2558 3641 3698 3701 3644 +2558 2577 2578 2559 3601 3753 3754 3602 +2559 2578 2579 2560 3647 3704 3707 3650 +2560 2579 2580 2581 3652 3757 3758 3711 +2560 2581 2582 2561 3605 3761 3762 3606 +2561 2582 2583 2562 3655 3714 3717 3658 +2562 2583 2584 2563 3609 3765 3766 3610 +2563 2584 2585 2564 3661 3720 3723 3664 +2564 2585 2586 2565 3613 3769 3770 3614 +2565 2586 2587 2566 3667 3726 3729 3670 +2566 2587 2588 2567 3617 3773 3774 3618 +2567 2588 2589 2568 3673 3732 3735 3676 +2568 2589 2590 2569 3621 3777 3778 3622 +2570 2591 2592 2571 3739 3907 3908 3740 +2571 2592 2593 2572 3782 3845 3848 3785 +2572 2593 2594 2573 3743 3911 3912 3744 +2573 2594 2595 2574 3788 3851 3854 3791 +2574 2595 2596 2575 3747 3915 3916 3748 +2575 2596 2597 2576 3794 3857 3860 3797 +2576 2597 2598 2577 3751 3919 3920 3752 +2577 2598 2599 2578 3800 3863 3866 3803 +2578 2599 2600 2579 3755 3923 3924 3756 +2579 2600 2601 2580 3806 3869 3872 3809 +2580 2601 2602 2603 3811 3927 3928 3876 +2580 2603 2604 2581 3759 3931 3932 3760 +2581 2604 2605 2582 3814 3879 3882 3817 +2582 2605 2606 2583 3763 3935 3936 3764 +2583 2606 2607 2584 3820 3885 3888 3823 +2584 2607 2608 2585 3767 3939 3940 3768 +2585 2608 2609 2586 3826 3891 3894 3829 +2586 2609 2610 2587 3771 3943 3944 3772 +2587 2610 2611 2588 3832 3897 3900 3835 +2588 2611 2612 2589 3775 3947 3948 3776 +2589 2612 2613 2590 3838 3903 3906 3841 +2591 2614 2615 2592 3951 4020 4023 3954 +2592 2615 2616 2593 3909 4093 4094 3910 +2593 2616 2617 2594 3957 4026 4029 3960 +2594 2617 2618 2595 3913 4097 4098 3914 +2595 2618 2619 2596 3963 4032 4035 3966 +2596 2619 2620 2597 3917 4101 4102 3918 +2597 2620 2621 2598 3969 4038 4041 3972 +2598 2621 2622 2599 3921 4105 4106 3922 +2599 2622 2623 2600 3975 4044 4047 3978 +2600 2623 2624 2601 3925 4109 4110 3926 +2601 2624 2625 2602 3981 4050 4053 3984 +2602 2625 2626 2627 3986 4113 4114 4057 +2602 2627 2628 2603 3929 4117 4118 3930 +2603 2628 2629 2604 3989 4060 4063 3992 +2604 2629 2630 2605 3933 4121 4122 3934 +2605 2630 2631 2606 3995 4066 4069 3998 +2606 2631 2632 2607 3937 4125 4126 3938 +2607 2632 2633 2608 4001 4072 4075 4004 +2608 2633 2634 2609 3941 4129 4130 3942 +2609 2634 2635 2610 4007 4078 4081 4010 +2610 2635 2636 2611 3945 4133 4134 3946 +2611 2636 2637 2612 4013 4084 4087 4016 +2612 2637 2638 2613 3949 4137 4138 3950 +2614 2639 2640 2615 4091 4285 4286 4092 +2615 2640 2641 2616 4142 4215 4218 4145 +2616 2641 2642 2617 4095 4289 4290 4096 +2617 2642 2643 2618 4148 4221 4224 4151 +2618 2643 2644 2619 4099 4293 4294 4100 +2619 2644 2645 2620 4154 4227 4230 4157 +2620 2645 2646 2621 4103 4297 4298 4104 +2621 2646 2647 2622 4160 4233 4236 4163 +2622 2647 2648 2623 4107 4301 4302 4108 +2623 2648 2649 2624 4166 4239 4242 4169 +2624 2649 2650 2625 4111 4305 4306 4112 +2625 2650 2651 2626 4172 4245 4248 4175 +2626 2651 2652 2627 4115 4309 4310 4116 +2627 2652 2653 2628 4178 4251 4254 4181 +2628 2653 2654 2629 4119 4313 4314 4120 +2629 2654 2655 2630 4184 4257 4260 4187 +2630 2655 2656 2631 4123 4317 4318 4124 +2631 2656 2657 2632 4190 4263 4266 4193 +2632 2657 2658 2633 4127 4321 4322 4128 +2633 2658 2659 2634 4196 4269 4272 4199 +2634 2659 2660 2635 4131 4325 4326 4132 +2635 2660 2661 2636 4202 4275 4278 4205 +2636 2661 2662 2637 4135 4329 4330 4136 +2637 2662 2663 2638 4208 4281 4284 4211 +2639 2664 2665 2640 4333 4406 4409 4336 +2640 2665 2666 2641 4287 4481 4482 4288 +2641 2666 2667 2642 4339 4412 4415 4342 +2642 2667 2668 2643 4291 4485 4486 4292 +2643 2668 2669 2644 4345 4418 4421 4348 +2644 2669 2670 2645 4295 4489 4490 4296 +2645 2670 2671 2646 4351 4424 4427 4354 +2646 2671 2672 2647 4299 4493 4494 4300 +2647 2672 2673 2648 4357 4430 4433 4360 +2648 2673 2674 2649 4303 4497 4498 4304 +2649 2674 2675 2650 4363 4436 4439 4366 +2650 2675 2676 2651 4307 4501 4502 4308 +2651 2676 2677 2652 4369 4442 4445 4372 +2652 2677 2678 2653 4311 4505 4506 4312 +2653 2678 2679 2654 4375 4448 4451 4378 +2654 2679 2680 2655 4315 4509 4510 4316 +2655 2680 2681 2656 4381 4454 4457 4384 +2656 2681 2682 2657 4319 4513 4514 4320 +2657 2682 2683 2658 4387 4460 4463 4390 +2658 2683 2684 2659 4323 4517 4518 4324 +2659 2684 2685 2660 4393 4466 4469 4396 +2660 2685 2686 2661 4327 4521 4522 4328 +2661 2686 2687 2662 4399 4472 4475 4402 +2662 2687 2688 2663 4331 4525 4526 4332 +2664 2689 2690 2665 4479 4673 4674 4480 +2665 2690 2691 2666 4530 4603 4606 4533 +2666 2691 2692 2667 4483 4677 4678 4484 +2667 2692 2693 2668 4536 4609 4612 4539 +2668 2693 2694 2669 4487 4681 4682 4488 +2669 2694 2695 2670 4542 4615 4618 4545 +2670 2695 2696 2671 4491 4685 4686 4492 +2671 2696 2697 2672 4548 4621 4624 4551 +2672 2697 2698 2673 4495 4689 4690 4496 +2673 2698 2699 2674 4554 4627 4630 4557 +2674 2699 2700 2675 4499 4693 4694 4500 +2675 2700 2701 2676 4560 4633 4636 4563 +2676 2701 2702 2677 4503 4697 4698 4504 +2677 2702 2703 2678 4566 4639 4642 4569 +2678 2703 2704 2679 4507 4701 4702 4508 +2679 2704 2705 2680 4572 4645 4648 4575 +2680 2705 2706 2681 4511 4705 4706 4512 +2681 2706 2707 2682 4578 4651 4654 4581 +2682 2707 2708 2683 4515 4709 4710 4516 +2683 2708 2709 2684 4584 4657 4660 4587 +2684 2709 2710 2685 4519 4713 4714 4520 +2685 2710 2711 2686 4590 4663 4666 4593 +2686 2711 2712 2687 4523 4717 4718 4524 +2687 2712 2713 2688 4596 4669 4672 4599 +2689 2714 2715 2690 4721 4794 4797 4724 +2690 2715 2716 2691 4675 4869 4870 4676 +2691 2716 2717 2692 4727 4800 4803 4730 +2692 2717 2718 2693 4679 4873 4874 4680 +2693 2718 2719 2694 4733 4806 4809 4736 +2694 2719 2720 2695 4683 4877 4878 4684 +2695 2720 2721 2696 4739 4812 4815 4742 +2696 2721 2722 2697 4687 4881 4882 4688 +2697 2722 2723 2698 4745 4818 4821 4748 +2698 2723 2724 2699 4691 4885 4886 4692 +2699 2724 2725 2700 4751 4824 4827 4754 +2700 2725 2726 2701 4695 4889 4890 4696 +2701 2726 2727 2702 4757 4830 4833 4760 +2702 2727 2728 2703 4699 4893 4894 4700 +2703 2728 2729 2704 4763 4836 4839 4766 +2704 2729 2730 2705 4703 4897 4898 4704 +2705 2730 2731 2706 4769 4842 4845 4772 +2706 2731 2732 2707 4707 4901 4902 4708 +2707 2732 2733 2708 4775 4848 4851 4778 +2708 2733 2734 2709 4711 4905 4906 4712 +2709 2734 2735 2710 4781 4854 4857 4784 +2710 2735 2736 2711 4715 4909 4910 4716 +2711 2736 2737 2712 4787 4860 4863 4790 +2712 2737 2738 2713 4719 4913 4914 4720 +2714 2739 2740 2715 4867 5061 5062 4868 +2715 2740 2741 2716 4918 4991 4994 4921 +2716 2741 2742 2717 4871 5065 5066 4872 +2717 2742 2743 2718 4924 4997 5000 4927 +2718 2743 2744 2719 4875 5069 5070 4876 +2719 2744 2745 2720 4930 5003 5006 4933 +2720 2745 2746 2721 4879 5073 5074 4880 +2721 2746 2747 2722 4936 5009 5012 4939 +2722 2747 2748 2723 4883 5077 5078 4884 +2723 2748 2749 2724 4942 5015 5018 4945 +2724 2749 2750 2725 4887 5081 5082 4888 +2725 2750 2751 2726 4948 5021 5024 4951 +2726 2751 2752 2727 4891 5085 5086 4892 +2727 2752 2753 2728 4954 5027 5030 4957 +2728 2753 2754 2729 4895 5089 5090 4896 +2729 2754 2755 2730 4960 5033 5036 4963 +2730 2755 2756 2731 4899 5093 5094 4900 +2731 2756 2757 2732 4966 5039 5042 4969 +2732 2757 2758 2733 4903 5097 5098 4904 +2733 2758 2759 2734 4972 5045 5048 4975 +2734 2759 2760 2735 4907 5101 5102 4908 +2735 2760 2761 2736 4978 5051 5054 4981 +2736 2761 2762 2737 4911 5105 5106 4912 +2737 2762 2763 2738 4984 5057 5060 4987 +2739 2764 2765 2740 5109 5182 5185 5112 +2740 2765 2766 2741 5063 5257 5258 5064 +2741 2766 2767 2742 5115 5188 5191 5118 +2742 2767 2768 2743 5067 5261 5262 5068 +2743 2768 2769 2744 5121 5194 5197 5124 +2744 2769 2770 2745 5071 5265 5266 5072 +2745 2770 2771 2746 5127 5200 5203 5130 +2746 2771 2772 2747 5075 5269 5270 5076 +2747 2772 2773 2748 5133 5206 5209 5136 +2748 2773 2774 2749 5079 5273 5274 5080 +2749 2774 2775 2750 5139 5212 5215 5142 +2750 2775 2776 2751 5083 5277 5278 5084 +2751 2776 2777 2752 5145 5218 5221 5148 +2752 2777 2778 2753 5087 5281 5282 5088 +2753 2778 2779 2754 5151 5224 5227 5154 +2754 2779 2780 2755 5091 5285 5286 5092 +2755 2780 2781 2756 5157 5230 5233 5160 +2756 2781 2782 2757 5095 5289 5290 5096 +2757 2782 2783 2758 5163 5236 5239 5166 +2758 2783 2784 2759 5099 5293 5294 5100 +2759 2784 2785 2760 5169 5242 5245 5172 +2760 2785 2786 2761 5103 5297 5298 5104 +2761 2786 2787 2762 5175 5248 5251 5178 +2762 2787 2788 2763 5107 5301 5302 5108 +2764 2789 2790 2765 5255 5449 5450 5256 +2765 2790 2791 2766 5306 5379 5382 5309 +2766 2791 2792 2767 5259 5453 5454 5260 +2767 2792 2793 2768 5312 5385 5388 5315 +2768 2793 2794 2769 5263 5457 5458 5264 +2769 2794 2795 2770 5318 5391 5394 5321 +2770 2795 2796 2771 5267 5461 5462 5268 +2771 2796 2797 2772 5324 5397 5400 5327 +2772 2797 2798 2773 5271 5465 5466 5272 +2773 2798 2799 2774 5330 5403 5406 5333 +2774 2799 2800 2775 5275 5469 5470 5276 +2775 2800 2801 2776 5336 5409 5412 5339 +2776 2801 2802 2777 5279 5473 5474 5280 +2777 2802 2803 2778 5342 5415 5418 5345 +2778 2803 2804 2779 5283 5477 5478 5284 +2779 2804 2805 2780 5348 5421 5424 5351 +2780 2805 2806 2781 5287 5481 5482 5288 +2781 2806 2807 2782 5354 5427 5430 5357 +2782 2807 2808 2783 5291 5485 5486 5292 +2783 2808 2809 2784 5360 5433 5436 5363 +2784 2809 2810 2785 5295 5489 5490 5296 +2785 2810 2811 2786 5366 5439 5442 5369 +2786 2811 2812 2787 5299 5493 5494 5300 +2787 2812 2813 2788 5372 5445 5448 5375 +2789 2814 2815 2790 5497 5570 5573 5500 +2790 2815 2816 2791 5451 5645 5646 5452 +2791 2816 2817 2792 5503 5576 5579 5506 +2792 2817 2818 2793 5455 5649 5650 5456 +2793 2818 2819 2794 5509 5582 5585 5512 +2794 2819 2820 2795 5459 5653 5654 5460 +2795 2820 2821 2796 5515 5588 5591 5518 +2796 2821 2822 2797 5463 5657 5658 5464 +2797 2822 2823 2798 5521 5594 5597 5524 +2798 2823 2824 2799 5467 5661 5662 5468 +2799 2824 2825 2800 5527 5600 5603 5530 +2800 2825 2826 2801 5471 5665 5666 5472 +2801 2826 2827 2802 5533 5606 5609 5536 +2802 2827 2828 2803 5475 5669 5670 5476 +2803 2828 2829 2804 5539 5612 5615 5542 +2804 2829 2830 2805 5479 5673 5674 5480 +2805 2830 2831 2806 5545 5618 5621 5548 +2806 2831 2832 2807 5483 5677 5678 5484 +2807 2832 2833 2808 5551 5624 5627 5554 +2808 2833 2834 2809 5487 5681 5682 5488 +2809 2834 2835 2810 5557 5630 5633 5560 +2810 2835 2836 2811 5491 5685 5686 5492 +2811 2836 2837 2812 5563 5636 5639 5566 +2812 2837 2838 2813 5495 5689 5690 5496 +2814 2839 2840 2815 5643 5837 5838 5644 +2815 2840 2841 2816 5694 5767 5770 5697 +2816 2841 2842 2817 5647 5841 5842 5648 +2817 2842 2843 2818 5700 5773 5776 5703 +2818 2843 2844 2819 5651 5845 5846 5652 +2819 2844 2845 2820 5706 5779 5782 5709 +2820 2845 2846 2821 5655 5849 5850 5656 +2821 2846 2847 2822 5712 5785 5788 5715 +2822 2847 2848 2823 5659 5853 5854 5660 +2823 2848 2849 2824 5718 5791 5794 5721 +2824 2849 2850 2825 5663 5857 5858 5664 +2825 2850 2851 2826 5724 5797 5800 5727 +2826 2851 2852 2827 5667 5861 5862 5668 +2827 2852 2853 2828 5730 5803 5806 5733 +2828 2853 2854 2829 5671 5865 5866 5672 +2829 2854 2855 2830 5736 5809 5812 5739 +2830 2855 2856 2831 5675 5869 5870 5676 +2831 2856 2857 2832 5742 5815 5818 5745 +2832 2857 2858 2833 5679 5873 5874 5680 +2833 2858 2859 2834 5748 5821 5824 5751 +2834 2859 2860 2835 5683 5877 5878 5684 +2835 2860 2861 2836 5754 5827 5830 5757 +2836 2861 2862 2837 5687 5881 5882 5688 +2837 2862 2863 2838 5760 5833 5836 5763 +2839 2864 2865 2840 5885 5958 5961 5888 +2840 2865 2866 2841 5839 6033 6034 5840 +2841 2866 2867 2842 5891 5964 5967 5894 +2842 2867 2868 2843 5843 6037 6038 5844 +2843 2868 2869 2844 5897 5970 5973 5900 +2844 2869 2870 2845 5847 6041 6042 5848 +2845 2870 2871 2846 5903 5976 5979 5906 +2846 2871 2872 2847 5851 6045 6046 5852 +2847 2872 2873 2848 5909 5982 5985 5912 +2848 2873 2874 2849 5855 6049 6050 5856 +2849 2874 2875 2850 5915 5988 5991 5918 +2850 2875 2876 2851 5859 6053 6054 5860 +2851 2876 2877 2852 5921 5994 5997 5924 +2852 2877 2878 2853 5863 6057 6058 5864 +2853 2878 2879 2854 5927 6000 6003 5930 +2854 2879 2880 2855 5867 6061 6062 5868 +2855 2880 2881 2856 5933 6006 6009 5936 +2856 2881 2882 2857 5871 6065 6066 5872 +2857 2882 2883 2858 5939 6012 6015 5942 +2858 2883 2884 2859 5875 6069 6070 5876 +2859 2884 2885 2860 5945 6018 6021 5948 +2860 2885 2886 2861 5879 6073 6074 5880 +2861 2886 2887 2862 5951 6024 6027 5954 +2862 2887 2888 2863 5883 6077 6078 5884 +2864 2889 2890 2865 6031 6225 6226 6032 +2865 2890 2891 2866 6082 6155 6158 6085 +2866 2891 2892 2867 6035 6229 6230 6036 +2867 2892 2893 2868 6088 6161 6164 6091 +2868 2893 2894 2869 6039 6233 6234 6040 +2869 2894 2895 2870 6094 6167 6170 6097 +2870 2895 2896 2871 6043 6237 6238 6044 +2871 2896 2897 2872 6100 6173 6176 6103 +2872 2897 2898 2873 6047 6241 6242 6048 +2873 2898 2899 2874 6106 6179 6182 6109 +2874 2899 2900 2875 6051 6245 6246 6052 +2875 2900 2901 2876 6112 6185 6188 6115 +2876 2901 2902 2877 6055 6249 6250 6056 +2877 2902 2903 2878 6118 6191 6194 6121 +2878 2903 2904 2879 6059 6253 6254 6060 +2879 2904 2905 2880 6124 6197 6200 6127 +2880 2905 2906 2881 6063 6257 6258 6064 +2881 2906 2907 2882 6130 6203 6206 6133 +2882 2907 2908 2883 6067 6261 6262 6068 +2883 2908 2909 2884 6136 6209 6212 6139 +2884 2909 2910 2885 6071 6265 6266 6072 +2885 2910 2911 2886 6142 6215 6218 6145 +2886 2911 2912 2887 6075 6269 6270 6076 +2887 2912 2913 2888 6148 6221 6224 6151 +2889 2914 2915 2890 6273 6346 6349 6276 +2890 2915 2916 2891 6227 6421 6422 6228 +2891 2916 2917 2892 6279 6352 6355 6282 +2892 2917 2918 2893 6231 6425 6426 6232 +2893 2918 2919 2894 6285 6358 6361 6288 +2894 2919 2920 2895 6235 6429 6430 6236 +2895 2920 2921 2896 6291 6364 6367 6294 +2896 2921 2922 2897 6239 6433 6434 6240 +2897 2922 2923 2898 6297 6370 6373 6300 +2898 2923 2924 2899 6243 6437 6438 6244 +2899 2924 2925 2900 6303 6376 6379 6306 +2900 2925 2926 2901 6247 6441 6442 6248 +2901 2926 2927 2902 6309 6382 6385 6312 +2902 2927 2928 2903 6251 6445 6446 6252 +2903 2928 2929 2904 6315 6388 6391 6318 +2904 2929 2930 2905 6255 6449 6450 6256 +2905 2930 2931 2906 6321 6394 6397 6324 +2906 2931 2932 2907 6259 6453 6454 6260 +2907 2932 2933 2908 6327 6400 6403 6330 +2908 2933 2934 2909 6263 6457 6458 6264 +2909 2934 2935 2910 6333 6406 6409 6336 +2910 2935 2936 2911 6267 6461 6462 6268 +2911 2936 2937 2912 6339 6412 6415 6342 +2912 2937 2938 2913 6271 6465 6466 6272 +2470 2471 2947 2941 2939 2942 2943 2940 +2941 2947 2948 2946 2940 2943 2944 2945 +2946 2948 2472 2473 2945 2944 2949 2950 +2471 2951 2954 2472 2947 2952 2953 2948 +2951 2960 2963 2954 2952 2961 2962 2953 +2960 2474 2475 2963 2961 2971 2972 2962 +2472 2475 2973 2956 2954 2963 2964 2955 +2956 2973 2974 2967 2955 2964 2965 2966 +2967 2974 2476 2477 2966 2965 2975 2976 +2472 2477 2977 2949 2956 2967 2968 2957 +2949 2977 2978 2950 2957 2968 2969 2958 +2950 2978 2478 2473 2958 2969 2970 2959 +2474 2479 3011 2971 2979 2994 2995 2980 +2971 3011 3012 2972 2980 2995 2996 2981 +2972 3012 2480 2475 2981 2996 2997 2982 +2475 2982 2985 2476 2973 2983 2984 2974 +2982 2997 3000 2985 2983 2998 2999 2984 +2997 2480 2481 3000 2998 3013 3014 2999 +2476 2481 3015 2987 2985 3000 3001 2986 +2987 3015 3016 3004 2986 3001 3002 3003 +3004 3016 2482 2483 3003 3002 3017 3018 +2476 2483 3019 2975 2987 3004 3005 2988 +2975 3019 3020 2976 2988 3005 3006 2989 +2976 3020 2484 2477 2989 3006 3007 2990 +2477 2990 2993 2478 2977 2991 2992 2978 +2990 3007 3010 2993 2991 3008 3009 2992 +3007 2484 2485 3010 3008 3021 3022 3009 +2479 3023 3026 2480 3011 3024 3025 3012 +3023 3044 3047 3026 3024 3045 3046 3025 +3044 2486 2487 3047 3045 3067 3068 3046 +2480 2487 3069 3013 3026 3047 3048 3027 +3013 3069 3070 3014 3027 3048 3049 3028 +3014 3070 2488 2481 3028 3049 3050 3029 +2481 3029 3032 2482 3015 3030 3031 3016 +3029 3050 3053 3032 3030 3051 3052 3031 +3050 2488 2489 3053 3051 3071 3072 3052 +2482 2489 3073 3034 3032 3053 3054 3033 +3034 3073 3074 3057 3033 3054 3055 3056 +3057 3074 2490 2491 3056 3055 3075 3076 +2482 2491 3077 3017 3034 3057 3058 3035 +3017 3077 3078 3018 3035 3058 3059 3036 +3018 3078 2492 2483 3036 3059 3060 3037 +2483 3037 3040 2484 3019 3038 3039 3020 +3037 3060 3063 3040 3038 3061 3062 3039 +3060 2492 2493 3063 3061 3079 3080 3062 +2484 2493 3081 3021 3040 3063 3064 3041 +3021 3081 3082 3022 3041 3064 3065 3042 +3022 3082 2494 2485 3042 3065 3066 3043 +2486 2495 3139 3067 3083 3110 3111 3084 +3067 3139 3140 3068 3084 3111 3112 3085 +3068 3140 2496 2487 3085 3112 3113 3086 +2487 3086 3089 2488 3069 3087 3088 3070 +3086 3113 3116 3089 3087 3114 3115 3088 +3113 2496 2497 3116 3114 3141 3142 3115 +2488 2497 3143 3071 3089 3116 3117 3090 +3071 3143 3144 3072 3090 3117 3118 3091 +3072 3144 2498 2489 3091 3118 3119 3092 +2489 3092 3095 2490 3073 3093 3094 3074 +3092 3119 3122 3095 3093 3120 3121 3094 +3119 2498 2499 3122 3120 3145 3146 3121 +2490 2499 3147 3097 3095 3122 3123 3096 +3097 3147 3148 3126 3096 3123 3124 3125 +3126 3148 2500 2501 3125 3124 3149 3150 +2490 2501 3151 3075 3097 3126 3127 3098 +3075 3151 3152 3076 3098 3127 3128 3099 +3076 3152 2502 2491 3099 3128 3129 3100 +2491 3100 3103 2492 3077 3101 3102 3078 +3100 3129 3132 3103 3101 3130 3131 3102 +3129 2502 2503 3132 3130 3153 3154 3131 +2492 2503 3155 3079 3103 3132 3133 3104 +3079 3155 3156 3080 3104 3133 3134 3105 +3080 3156 2504 2493 3105 3134 3135 3106 +2493 3106 3109 2494 3081 3107 3108 3082 +3106 3135 3138 3109 3107 3136 3137 3108 +3135 2504 2505 3138 3136 3157 3158 3137 +2495 3159 3162 2496 3139 3160 3161 3140 +3159 3192 3195 3162 3160 3193 3194 3161 +3192 2506 2507 3195 3193 3227 3228 3194 +2496 2507 3229 3141 3162 3195 3196 3163 +3141 3229 3230 3142 3163 3196 3197 3164 +3142 3230 2508 2497 3164 3197 3198 3165 +2497 3165 3168 2498 3143 3166 3167 3144 +3165 3198 3201 3168 3166 3199 3200 3167 +3198 2508 2509 3201 3199 3231 3232 3200 +2498 2509 3233 3145 3168 3201 3202 3169 +3145 3233 3234 3146 3169 3202 3203 3170 +3146 3234 2510 2499 3170 3203 3204 3171 +2499 3171 3174 2500 3147 3172 3173 3148 +3171 3204 3207 3174 3172 3205 3206 3173 +3204 2510 2511 3207 3205 3235 3236 3206 +2500 2511 3237 3176 3174 3207 3208 3175 +3176 3237 3238 3211 3175 3208 3209 3210 +3211 3238 2512 2513 3210 3209 3239 3240 +2500 2513 3241 3149 3176 3211 3212 3177 +3149 3241 3242 3150 3177 3212 3213 3178 +3150 3242 2514 2501 3178 3213 3214 3179 +2501 3179 3182 2502 3151 3180 3181 3152 +3179 3214 3217 3182 3180 3215 3216 3181 +3214 2514 2515 3217 3215 3243 3244 3216 +2502 2515 3245 3153 3182 3217 3218 3183 +3153 3245 3246 3154 3183 3218 3219 3184 +3154 3246 2516 2503 3184 3219 3220 3185 +2503 3185 3188 2504 3155 3186 3187 3156 +3185 3220 3223 3188 3186 3221 3222 3187 +3220 2516 2517 3223 3221 3247 3248 3222 +2504 2517 3249 3157 3188 3223 3224 3189 +3157 3249 3250 3158 3189 3224 3225 3190 +3158 3250 2518 2505 3190 3225 3226 3191 +2506 2519 3331 3227 3251 3290 3291 3252 +3227 3331 3332 3228 3252 3291 3292 3253 +3228 3332 2520 2507 3253 3292 3293 3254 +2507 3254 3257 2508 3229 3255 3256 3230 +3254 3293 3296 3257 3255 3294 3295 3256 +3293 2520 2521 3296 3294 3333 3334 3295 +2508 2521 3335 3231 3257 3296 3297 3258 +3231 3335 3336 3232 3258 3297 3298 3259 +3232 3336 2522 2509 3259 3298 3299 3260 +2509 3260 3263 2510 3233 3261 3262 3234 +3260 3299 3302 3263 3261 3300 3301 3262 +3299 2522 2523 3302 3300 3337 3338 3301 +2510 2523 3339 3235 3263 3302 3303 3264 +3235 3339 3340 3236 3264 3303 3304 3265 +3236 3340 2524 2511 3265 3304 3305 3266 +2511 3266 3269 2512 3237 3267 3268 3238 +3266 3305 3308 3269 3267 3306 3307 3268 +3305 2524 2525 3308 3306 3341 3342 3307 +2512 2525 3343 3271 3269 3308 3309 3270 +3271 3343 3344 3312 3270 3309 3310 3311 +3312 3344 2526 2527 3311 3310 3345 3346 +2512 2527 3347 3239 3271 3312 3313 3272 +3239 3347 3348 3240 3272 3313 3314 3273 +3240 3348 2528 2513 3273 3314 3315 3274 +2513 3274 3277 2514 3241 3275 3276 3242 +3274 3315 3318 3277 3275 3316 3317 3276 +3315 2528 2529 3318 3316 3349 3350 3317 +2514 2529 3351 3243 3277 3318 3319 3278 +3243 3351 3352 3244 3278 3319 3320 3279 +3244 3352 2530 2515 3279 3320 3321 3280 +2515 3280 3283 2516 3245 3281 3282 3246 +3280 3321 3324 3283 3281 3322 3323 3282 +3321 2530 2531 3324 3322 3353 3354 3323 +2516 2531 3355 3247 3283 3324 3325 3284 +3247 3355 3356 3248 3284 3325 3326 3285 +3248 3356 2532 2517 3285 3326 3327 3286 +2517 3286 3289 2518 3249 3287 3288 3250 +3286 3327 3330 3289 3287 3328 3329 3288 +3327 2532 2533 3330 3328 3357 3358 3329 +2519 3359 3362 2520 3331 3360 3361 3332 +3359 3404 3407 3362 3360 3405 3406 3361 +3404 2534 2535 3407 3405 3451 3452 3406 +2520 2535 3453 3333 3362 3407 3408 3363 +3333 3453 3454 3334 3363 3408 3409 3364 +3334 3454 2536 2521 3364 3409 3410 3365 +2521 3365 3368 2522 3335 3366 3367 3336 +3365 3410 3413 3368 3366 3411 3412 3367 +3410 2536 2537 3413 3411 3455 3456 3412 +2522 2537 3457 3337 3368 3413 3414 3369 +3337 3457 3458 3338 3369 3414 3415 3370 +3338 3458 2538 2523 3370 3415 3416 3371 +2523 3371 3374 2524 3339 3372 3373 3340 +3371 3416 3419 3374 3372 3417 3418 3373 +3416 2538 2539 3419 3417 3459 3460 3418 +2524 2539 3461 3341 3374 3419 3420 3375 +3341 3461 3462 3342 3375 3420 3421 3376 +3342 3462 2540 2525 3376 3421 3422 3377 +2525 3377 3380 2526 3343 3378 3379 3344 +3377 3422 3425 3380 3378 3423 3424 3379 +3422 2540 2541 3425 3423 3463 3464 3424 +2526 2541 3465 3382 3380 3425 3426 3381 +3382 3465 3466 3429 3381 3426 3427 3428 +3429 3466 2542 2543 3428 3427 3467 3468 +2526 2543 3469 3345 3382 3429 3430 3383 +3345 3469 3470 3346 3383 3430 3431 3384 +3346 3470 2544 2527 3384 3431 3432 3385 +2527 3385 3388 2528 3347 3386 3387 3348 +3385 3432 3435 3388 3386 3433 3434 3387 +3432 2544 2545 3435 3433 3471 3472 3434 +2528 2545 3473 3349 3388 3435 3436 3389 +3349 3473 3474 3350 3389 3436 3437 3390 +3350 3474 2546 2529 3390 3437 3438 3391 +2529 3391 3394 2530 3351 3392 3393 3352 +3391 3438 3441 3394 3392 3439 3440 3393 +3438 2546 2547 3441 3439 3475 3476 3440 +2530 2547 3477 3353 3394 3441 3442 3395 +3353 3477 3478 3354 3395 3442 3443 3396 +3354 3478 2548 2531 3396 3443 3444 3397 +2531 3397 3400 2532 3355 3398 3399 3356 +3397 3444 3447 3400 3398 3445 3446 3399 +3444 2548 2549 3447 3445 3479 3480 3446 +2532 2549 3481 3357 3400 3447 3448 3401 +3357 3481 3482 3358 3401 3448 3449 3402 +3358 3482 2550 2533 3402 3449 3450 3403 +2534 2551 3587 3451 3483 3534 3535 3484 +3451 3587 3588 3452 3484 3535 3536 3485 +3452 3588 2552 2535 3485 3536 3537 3486 +2535 3486 3489 2536 3453 3487 3488 3454 +3486 3537 3540 3489 3487 3538 3539 3488 +3537 2552 2553 3540 3538 3589 3590 3539 +2536 2553 3591 3455 3489 3540 3541 3490 +3455 3591 3592 3456 3490 3541 3542 3491 +3456 3592 2554 2537 3491 3542 3543 3492 +2537 3492 3495 2538 3457 3493 3494 3458 +3492 3543 3546 3495 3493 3544 3545 3494 +3543 2554 2555 3546 3544 3593 3594 3545 +2538 2555 3595 3459 3495 3546 3547 3496 +3459 3595 3596 3460 3496 3547 3548 3497 +3460 3596 2556 2539 3497 3548 3549 3498 +2539 3498 3501 2540 3461 3499 3500 3462 +3498 3549 3552 3501 3499 3550 3551 3500 +3549 2556 2557 3552 3550 3597 3598 3551 +2540 2557 3599 3463 3501 3552 3553 3502 +3463 3599 3600 3464 3502 3553 3554 3503 +3464 3600 2558 2541 3503 3554 3555 3504 +2541 3504 3507 2542 3465 3505 3506 3466 +3504 3555 3558 3507 3505 3556 3557 3506 +3555 2558 2559 3558 3556 3601 3602 3557 +2542 2559 3603 3509 3507 3558 3559 3508 +3509 3603 3604 3562 3508 3559 3560 3561 +3562 3604 2560 2561 3561 3560 3605 3606 +2542 2561 3607 3467 3509 3562 3563 3510 +3467 3607 3608 3468 3510 3563 3564 3511 +3468 3608 2562 2543 3511 3564 3565 3512 +2543 3512 3515 2544 3469 3513 3514 3470 +3512 3565 3568 3515 3513 3566 3567 3514 +3565 2562 2563 3568 3566 3609 3610 3567 +2544 2563 3611 3471 3515 3568 3569 3516 +3471 3611 3612 3472 3516 3569 3570 3517 +3472 3612 2564 2545 3517 3570 3571 3518 +2545 3518 3521 2546 3473 3519 3520 3474 +3518 3571 3574 3521 3519 3572 3573 3520 +3571 2564 2565 3574 3572 3613 3614 3573 +2546 2565 3615 3475 3521 3574 3575 3522 +3475 3615 3616 3476 3522 3575 3576 3523 +3476 3616 2566 2547 3523 3576 3577 3524 +2547 3524 3527 2548 3477 3525 3526 3478 +3524 3577 3580 3527 3525 3578 3579 3526 +3577 2566 2567 3580 3578 3617 3618 3579 +2548 2567 3619 3479 3527 3580 3581 3528 +3479 3619 3620 3480 3528 3581 3582 3529 +3480 3620 2568 2549 3529 3582 3583 3530 +2549 3530 3533 2550 3481 3531 3532 3482 +3530 3583 3586 3533 3531 3584 3585 3532 +3583 2568 2569 3586 3584 3621 3622 3585 +2551 3623 3626 2552 3587 3624 3625 3588 +3623 3680 3683 3626 3624 3681 3682 3625 +3680 2570 2571 3683 3681 3739 3740 3682 +2552 2571 3741 3589 3626 3683 3684 3627 +3589 3741 3742 3590 3627 3684 3685 3628 +3590 3742 2572 2553 3628 3685 3686 3629 +2553 3629 3632 2554 3591 3630 3631 3592 +3629 3686 3689 3632 3630 3687 3688 3631 +3686 2572 2573 3689 3687 3743 3744 3688 +2554 2573 3745 3593 3632 3689 3690 3633 +3593 3745 3746 3594 3633 3690 3691 3634 +3594 3746 2574 2555 3634 3691 3692 3635 +2555 3635 3638 2556 3595 3636 3637 3596 +3635 3692 3695 3638 3636 3693 3694 3637 +3692 2574 2575 3695 3693 3747 3748 3694 +2556 2575 3749 3597 3638 3695 3696 3639 +3597 3749 3750 3598 3639 3696 3697 3640 +3598 3750 2576 2557 3640 3697 3698 3641 +2557 3641 3644 2558 3599 3642 3643 3600 +3641 3698 3701 3644 3642 3699 3700 3643 +3698 2576 2577 3701 3699 3751 3752 3700 +2558 2577 3753 3601 3644 3701 3702 3645 +3601 3753 3754 3602 3645 3702 3703 3646 +3602 3754 2578 2559 3646 3703 3704 3647 +2559 3647 3650 2560 3603 3648 3649 3604 +3647 3704 3707 3650 3648 3705 3706 3649 +3704 2578 2579 3707 3705 3755 3756 3706 +2560 2579 3757 3652 3650 3707 3708 3651 +3652 3757 3758 3711 3651 3708 3709 3710 +3711 3758 2580 2581 3710 3709 3759 3760 +2560 2581 3761 3605 3652 3711 3712 3653 +3605 3761 3762 3606 3653 3712 3713 3654 +3606 3762 2582 2561 3654 3713 3714 3655 +2561 3655 3658 2562 3607 3656 3657 3608 +3655 3714 3717 3658 3656 3715 3716 3657 +3714 2582 2583 3717 3715 3763 3764 3716 +2562 2583 3765 3609 3658 3717 3718 3659 +3609 3765 3766 3610 3659 3718 3719 3660 +3610 3766 2584 2563 3660 3719 3720 3661 +2563 3661 3664 2564 3611 3662 3663 3612 +3661 3720 3723 3664 3662 3721 3722 3663 +3720 2584 2585 3723 3721 3767 3768 3722 +2564 2585 3769 3613 3664 3723 3724 3665 +3613 3769 3770 3614 3665 3724 3725 3666 +3614 3770 2586 2565 3666 3725 3726 3667 +2565 3667 3670 2566 3615 3668 3669 3616 +3667 3726 3729 3670 3668 3727 3728 3669 +3726 2586 2587 3729 3727 3771 3772 3728 +2566 2587 3773 3617 3670 3729 3730 3671 +3617 3773 3774 3618 3671 3730 3731 3672 +3618 3774 2588 2567 3672 3731 3732 3673 +2567 3673 3676 2568 3619 3674 3675 3620 +3673 3732 3735 3676 3674 3733 3734 3675 +3732 2588 2589 3735 3733 3775 3776 3734 +2568 2589 3777 3621 3676 3735 3736 3677 +3621 3777 3778 3622 3677 3736 3737 3678 +3622 3778 2590 2569 3678 3737 3738 3679 +2570 2591 3907 3739 3779 3842 3843 3780 +3739 3907 3908 3740 3780 3843 3844 3781 +3740 3908 2592 2571 3781 3844 3845 3782 +2571 3782 3785 2572 3741 3783 3784 3742 +3782 3845 3848 3785 3783 3846 3847 3784 +3845 2592 2593 3848 3846 3909 3910 3847 +2572 2593 3911 3743 3785 3848 3849 3786 +3743 3911 3912 3744 3786 3849 3850 3787 +3744 3912 2594 2573 3787 3850 3851 3788 +2573 3788 3791 2574 3745 3789 3790 3746 +3788 3851 3854 3791 3789 3852 3853 3790 +3851 2594 2595 3854 3852 3913 3914 3853 +2574 2595 3915 3747 3791 3854 3855 3792 +3747 3915 3916 3748 3792 3855 3856 3793 +3748 3916 2596 2575 3793 3856 3857 3794 +2575 3794 3797 2576 3749 3795 3796 3750 +3794 3857 3860 3797 3795 3858 3859 3796 +3857 2596 2597 3860 3858 3917 3918 3859 +2576 2597 3919 3751 3797 3860 3861 3798 +3751 3919 3920 3752 3798 3861 3862 3799 +3752 3920 2598 2577 3799 3862 3863 3800 +2577 3800 3803 2578 3753 3801 3802 3754 +3800 3863 3866 3803 3801 3864 3865 3802 +3863 2598 2599 3866 3864 3921 3922 3865 +2578 2599 3923 3755 3803 3866 3867 3804 +3755 3923 3924 3756 3804 3867 3868 3805 +3756 3924 2600 2579 3805 3868 3869 3806 +2579 3806 3809 2580 3757 3807 3808 3758 +3806 3869 3872 3809 3807 3870 3871 3808 +3869 2600 2601 3872 3870 3925 3926 3871 +2580 2601 3927 3811 3809 3872 3873 3810 +3811 3927 3928 3876 3810 3873 3874 3875 +3876 3928 2602 2603 3875 3874 3929 3930 +2580 2603 3931 3759 3811 3876 3877 3812 +3759 3931 3932 3760 3812 3877 3878 3813 +3760 3932 2604 2581 3813 3878 3879 3814 +2581 3814 3817 2582 3761 3815 3816 3762 +3814 3879 3882 3817 3815 3880 3881 3816 +3879 2604 2605 3882 3880 3933 3934 3881 +2582 2605 3935 3763 3817 3882 3883 3818 +3763 3935 3936 3764 3818 3883 3884 3819 +3764 3936 2606 2583 3819 3884 3885 3820 +2583 3820 3823 2584 3765 3821 3822 3766 +3820 3885 3888 3823 3821 3886 3887 3822 +3885 2606 2607 3888 3886 3937 3938 3887 +2584 2607 3939 3767 3823 3888 3889 3824 +3767 3939 3940 3768 3824 3889 3890 3825 +3768 3940 2608 2585 3825 3890 3891 3826 +2585 3826 3829 2586 3769 3827 3828 3770 +3826 3891 3894 3829 3827 3892 3893 3828 +3891 2608 2609 3894 3892 3941 3942 3893 +2586 2609 3943 3771 3829 3894 3895 3830 +3771 3943 3944 3772 3830 3895 3896 3831 +3772 3944 2610 2587 3831 3896 3897 3832 +2587 3832 3835 2588 3773 3833 3834 3774 +3832 3897 3900 3835 3833 3898 3899 3834 +3897 2610 2611 3900 3898 3945 3946 3899 +2588 2611 3947 3775 3835 3900 3901 3836 +3775 3947 3948 3776 3836 3901 3902 3837 +3776 3948 2612 2589 3837 3902 3903 3838 +2589 3838 3841 2590 3777 3839 3840 3778 +3838 3903 3906 3841 3839 3904 3905 3840 +3903 2612 2613 3906 3904 3949 3950 3905 +2591 3951 3954 2592 3907 3952 3953 3908 +3951 4020 4023 3954 3952 4021 4022 3953 +4020 2614 2615 4023 4021 4091 4092 4022 +2592 2615 4093 3909 3954 4023 4024 3955 +3909 4093 4094 3910 3955 4024 4025 3956 +3910 4094 2616 2593 3956 4025 4026 3957 +2593 3957 3960 2594 3911 3958 3959 3912 +3957 4026 4029 3960 3958 4027 4028 3959 +4026 2616 2617 4029 4027 4095 4096 4028 +2594 2617 4097 3913 3960 4029 4030 3961 +3913 4097 4098 3914 3961 4030 4031 3962 +3914 4098 2618 2595 3962 4031 4032 3963 +2595 3963 3966 2596 3915 3964 3965 3916 +3963 4032 4035 3966 3964 4033 4034 3965 +4032 2618 2619 4035 4033 4099 4100 4034 +2596 2619 4101 3917 3966 4035 4036 3967 +3917 4101 4102 3918 3967 4036 4037 3968 +3918 4102 2620 2597 3968 4037 4038 3969 +2597 3969 3972 2598 3919 3970 3971 3920 +3969 4038 4041 3972 3970 4039 4040 3971 +4038 2620 2621 4041 4039 4103 4104 4040 +2598 2621 4105 3921 3972 4041 4042 3973 +3921 4105 4106 3922 3973 4042 4043 3974 +3922 4106 2622 2599 3974 4043 4044 3975 +2599 3975 3978 2600 3923 3976 3977 3924 +3975 4044 4047 3978 3976 4045 4046 3977 +4044 2622 2623 4047 4045 4107 4108 4046 +2600 2623 4109 3925 3978 4047 4048 3979 +3925 4109 4110 3926 3979 4048 4049 3980 +3926 4110 2624 2601 3980 4049 4050 3981 +2601 3981 3984 2602 3927 3982 3983 3928 +3981 4050 4053 3984 3982 4051 4052 3983 +4050 2624 2625 4053 4051 4111 4112 4052 +2602 2625 4113 3986 3984 4053 4054 3985 +3986 4113 4114 4057 3985 4054 4055 4056 +4057 4114 2626 2627 4056 4055 4115 4116 +2602 2627 4117 3929 3986 4057 4058 3987 +3929 4117 4118 3930 3987 4058 4059 3988 +3930 4118 2628 2603 3988 4059 4060 3989 +2603 3989 3992 2604 3931 3990 3991 3932 +3989 4060 4063 3992 3990 4061 4062 3991 +4060 2628 2629 4063 4061 4119 4120 4062 +2604 2629 4121 3933 3992 4063 4064 3993 +3933 4121 4122 3934 3993 4064 4065 3994 +3934 4122 2630 2605 3994 4065 4066 3995 +2605 3995 3998 2606 3935 3996 3997 3936 +3995 4066 4069 3998 3996 4067 4068 3997 +4066 2630 2631 4069 4067 4123 4124 4068 +2606 2631 4125 3937 3998 4069 4070 3999 +3937 4125 4126 3938 3999 4070 4071 4000 +3938 4126 2632 2607 4000 4071 4072 4001 +2607 4001 4004 2608 3939 4002 4003 3940 +4001 4072 4075 4004 4002 4073 4074 4003 +4072 2632 2633 4075 4073 4127 4128 4074 +2608 2633 4129 3941 4004 4075 4076 4005 +3941 4129 4130 3942 4005 4076 4077 4006 +3942 4130 2634 2609 4006 4077 4078 4007 +2609 4007 4010 2610 3943 4008 4009 3944 +4007 4078 4081 4010 4008 4079 4080 4009 +4078 2634 2635 4081 4079 4131 4132 4080 +2610 2635 4133 3945 4010 4081 4082 4011 +3945 4133 4134 3946 4011 4082 4083 4012 +3946 4134 2636 2611 4012 4083 4084 4013 +2611 4013 4016 2612 3947 4014 4015 3948 +4013 4084 4087 4016 4014 4085 4086 4015 +4084 2636 2637 4087 4085 4135 4136 4086 +2612 2637 4137 3949 4016 4087 4088 4017 +3949 4137 4138 3950 4017 4088 4089 4018 +3950 4138 2638 2613 4018 4089 4090 4019 +2614 2639 4285 4091 4139 4212 4213 4140 +4091 4285 4286 4092 4140 4213 4214 4141 +4092 4286 2640 2615 4141 4214 4215 4142 +2615 4142 4145 2616 4093 4143 4144 4094 +4142 4215 4218 4145 4143 4216 4217 4144 +4215 2640 2641 4218 4216 4287 4288 4217 +2616 2641 4289 4095 4145 4218 4219 4146 +4095 4289 4290 4096 4146 4219 4220 4147 +4096 4290 2642 2617 4147 4220 4221 4148 +2617 4148 4151 2618 4097 4149 4150 4098 +4148 4221 4224 4151 4149 4222 4223 4150 +4221 2642 2643 4224 4222 4291 4292 4223 +2618 2643 4293 4099 4151 4224 4225 4152 +4099 4293 4294 4100 4152 4225 4226 4153 +4100 4294 2644 2619 4153 4226 4227 4154 +2619 4154 4157 2620 4101 4155 4156 4102 +4154 4227 4230 4157 4155 4228 4229 4156 +4227 2644 2645 4230 4228 4295 4296 4229 +2620 2645 4297 4103 4157 4230 4231 4158 +4103 4297 4298 4104 4158 4231 4232 4159 +4104 4298 2646 2621 4159 4232 4233 4160 +2621 4160 4163 2622 4105 4161 4162 4106 +4160 4233 4236 4163 4161 4234 4235 4162 +4233 2646 2647 4236 4234 4299 4300 4235 +2622 2647 4301 4107 4163 4236 4237 4164 +4107 4301 4302 4108 4164 4237 4238 4165 +4108 4302 2648 2623 4165 4238 4239 4166 +2623 4166 4169 2624 4109 4167 4168 4110 +4166 4239 4242 4169 4167 4240 4241 4168 +4239 2648 2649 4242 4240 4303 4304 4241 +2624 2649 4305 4111 4169 4242 4243 4170 +4111 4305 4306 4112 4170 4243 4244 4171 +4112 4306 2650 2625 4171 4244 4245 4172 +2625 4172 4175 2626 4113 4173 4174 4114 +4172 4245 4248 4175 4173 4246 4247 4174 +4245 2650 2651 4248 4246 4307 4308 4247 +2626 2651 4309 4115 4175 4248 4249 4176 +4115 4309 4310 4116 4176 4249 4250 4177 +4116 4310 2652 2627 4177 4250 4251 4178 +2627 4178 4181 2628 4117 4179 4180 4118 +4178 4251 4254 4181 4179 4252 4253 4180 +4251 2652 2653 4254 4252 4311 4312 4253 +2628 2653 4313 4119 4181 4254 4255 4182 +4119 4313 4314 4120 4182 4255 4256 4183 +4120 4314 2654 2629 4183 4256 4257 4184 +2629 4184 4187 2630 4121 4185 4186 4122 +4184 4257 4260 4187 4185 4258 4259 4186 +4257 2654 2655 4260 4258 4315 4316 4259 +2630 2655 4317 4123 4187 4260 4261 4188 +4123 4317 4318 4124 4188 4261 4262 4189 +4124 4318 2656 2631 4189 4262 4263 4190 +2631 4190 4193 2632 4125 4191 4192 4126 +4190 4263 4266 4193 4191 4264 4265 4192 +4263 2656 2657 4266 4264 4319 4320 4265 +2632 2657 4321 4127 4193 4266 4267 4194 +4127 4321 4322 4128 4194 4267 4268 4195 +4128 4322 2658 2633 4195 4268 4269 4196 +2633 4196 4199 2634 4129 4197 4198 4130 +4196 4269 4272 4199 4197 4270 4271 4198 +4269 2658 2659 4272 4270 4323 4324 4271 +2634 2659 4325 4131 4199 4272 4273 4200 +4131 4325 4326 4132 4200 4273 4274 4201 +4132 4326 2660 2635 4201 4274 4275 4202 +2635 4202 4205 2636 4133 4203 4204 4134 +4202 4275 4278 4205 4203 4276 4277 4204 +4275 2660 2661 4278 4276 4327 4328 4277 +2636 2661 4329 4135 4205 4278 4279 4206 +4135 4329 4330 4136 4206 4279 4280 4207 +4136 4330 2662 2637 4207 4280 4281 4208 +2637 4208 4211 2638 4137 4209 4210 4138 +4208 4281 4284 4211 4209 4282 4283 4210 +4281 2662 2663 4284 4282 4331 4332 4283 +2639 4333 4336 2640 4285 4334 4335 4286 +4333 4406 4409 4336 4334 4407 4408 4335 +4406 2664 2665 4409 4407 4479 4480 4408 +2640 2665 4481 4287 4336 4409 4410 4337 +4287 4481 4482 4288 4337 4410 4411 4338 +4288 4482 2666 2641 4338 4411 4412 4339 +2641 4339 4342 2642 4289 4340 4341 4290 +4339 4412 4415 4342 4340 4413 4414 4341 +4412 2666 2667 4415 4413 4483 4484 4414 +2642 2667 4485 4291 4342 4415 4416 4343 +4291 4485 4486 4292 4343 4416 4417 4344 +4292 4486 2668 2643 4344 4417 4418 4345 +2643 4345 4348 2644 4293 4346 4347 4294 +4345 4418 4421 4348 4346 4419 4420 4347 +4418 2668 2669 4421 4419 4487 4488 4420 +2644 2669 4489 4295 4348 4421 4422 4349 +4295 4489 4490 4296 4349 4422 4423 4350 +4296 4490 2670 2645 4350 4423 4424 4351 +2645 4351 4354 2646 4297 4352 4353 4298 +4351 4424 4427 4354 4352 4425 4426 4353 +4424 2670 2671 4427 4425 4491 4492 4426 +2646 2671 4493 4299 4354 4427 4428 4355 +4299 4493 4494 4300 4355 4428 4429 4356 +4300 4494 2672 2647 4356 4429 4430 4357 +2647 4357 4360 2648 4301 4358 4359 4302 +4357 4430 4433 4360 4358 4431 4432 4359 +4430 2672 2673 4433 4431 4495 4496 4432 +2648 2673 4497 4303 4360 4433 4434 4361 +4303 4497 4498 4304 4361 4434 4435 4362 +4304 4498 2674 2649 4362 4435 4436 4363 +2649 4363 4366 2650 4305 4364 4365 4306 +4363 4436 4439 4366 4364 4437 4438 4365 +4436 2674 2675 4439 4437 4499 4500 4438 +2650 2675 4501 4307 4366 4439 4440 4367 +4307 4501 4502 4308 4367 4440 4441 4368 +4308 4502 2676 2651 4368 4441 4442 4369 +2651 4369 4372 2652 4309 4370 4371 4310 +4369 4442 4445 4372 4370 4443 4444 4371 +4442 2676 2677 4445 4443 4503 4504 4444 +2652 2677 4505 4311 4372 4445 4446 4373 +4311 4505 4506 4312 4373 4446 4447 4374 +4312 4506 2678 2653 4374 4447 4448 4375 +2653 4375 4378 2654 4313 4376 4377 4314 +4375 4448 4451 4378 4376 4449 4450 4377 +4448 2678 2679 4451 4449 4507 4508 4450 +2654 2679 4509 4315 4378 4451 4452 4379 +4315 4509 4510 4316 4379 4452 4453 4380 +4316 4510 2680 2655 4380 4453 4454 4381 +2655 4381 4384 2656 4317 4382 4383 4318 +4381 4454 4457 4384 4382 4455 4456 4383 +4454 2680 2681 4457 4455 4511 4512 4456 +2656 2681 4513 4319 4384 4457 4458 4385 +4319 4513 4514 4320 4385 4458 4459 4386 +4320 4514 2682 2657 4386 4459 4460 4387 +2657 4387 4390 2658 4321 4388 4389 4322 +4387 4460 4463 4390 4388 4461 4462 4389 +4460 2682 2683 4463 4461 4515 4516 4462 +2658 2683 4517 4323 4390 4463 4464 4391 +4323 4517 4518 4324 4391 4464 4465 4392 +4324 4518 2684 2659 4392 4465 4466 4393 +2659 4393 4396 2660 4325 4394 4395 4326 +4393 4466 4469 4396 4394 4467 4468 4395 +4466 2684 2685 4469 4467 4519 4520 4468 +2660 2685 4521 4327 4396 4469 4470 4397 +4327 4521 4522 4328 4397 4470 4471 4398 +4328 4522 2686 2661 4398 4471 4472 4399 +2661 4399 4402 2662 4329 4400 4401 4330 +4399 4472 4475 4402 4400 4473 4474 4401 +4472 2686 2687 4475 4473 4523 4524 4474 +2662 2687 4525 4331 4402 4475 4476 4403 +4331 4525 4526 4332 4403 4476 4477 4404 +4332 4526 2688 2663 4404 4477 4478 4405 +2664 2689 4673 4479 4527 4600 4601 4528 +4479 4673 4674 4480 4528 4601 4602 4529 +4480 4674 2690 2665 4529 4602 4603 4530 +2665 4530 4533 2666 4481 4531 4532 4482 +4530 4603 4606 4533 4531 4604 4605 4532 +4603 2690 2691 4606 4604 4675 4676 4605 +2666 2691 4677 4483 4533 4606 4607 4534 +4483 4677 4678 4484 4534 4607 4608 4535 +4484 4678 2692 2667 4535 4608 4609 4536 +2667 4536 4539 2668 4485 4537 4538 4486 +4536 4609 4612 4539 4537 4610 4611 4538 +4609 2692 2693 4612 4610 4679 4680 4611 +2668 2693 4681 4487 4539 4612 4613 4540 +4487 4681 4682 4488 4540 4613 4614 4541 +4488 4682 2694 2669 4541 4614 4615 4542 +2669 4542 4545 2670 4489 4543 4544 4490 +4542 4615 4618 4545 4543 4616 4617 4544 +4615 2694 2695 4618 4616 4683 4684 4617 +2670 2695 4685 4491 4545 4618 4619 4546 +4491 4685 4686 4492 4546 4619 4620 4547 +4492 4686 2696 2671 4547 4620 4621 4548 +2671 4548 4551 2672 4493 4549 4550 4494 +4548 4621 4624 4551 4549 4622 4623 4550 +4621 2696 2697 4624 4622 4687 4688 4623 +2672 2697 4689 4495 4551 4624 4625 4552 +4495 4689 4690 4496 4552 4625 4626 4553 +4496 4690 2698 2673 4553 4626 4627 4554 +2673 4554 4557 2674 4497 4555 4556 4498 +4554 4627 4630 4557 4555 4628 4629 4556 +4627 2698 2699 4630 4628 4691 4692 4629 +2674 2699 4693 4499 4557 4630 4631 4558 +4499 4693 4694 4500 4558 4631 4632 4559 +4500 4694 2700 2675 4559 4632 4633 4560 +2675 4560 4563 2676 4501 4561 4562 4502 +4560 4633 4636 4563 4561 4634 4635 4562 +4633 2700 2701 4636 4634 4695 4696 4635 +2676 2701 4697 4503 4563 4636 4637 4564 +4503 4697 4698 4504 4564 4637 4638 4565 +4504 4698 2702 2677 4565 4638 4639 4566 +2677 4566 4569 2678 4505 4567 4568 4506 +4566 4639 4642 4569 4567 4640 4641 4568 +4639 2702 2703 4642 4640 4699 4700 4641 +2678 2703 4701 4507 4569 4642 4643 4570 +4507 4701 4702 4508 4570 4643 4644 4571 +4508 4702 2704 2679 4571 4644 4645 4572 +2679 4572 4575 2680 4509 4573 4574 4510 +4572 4645 4648 4575 4573 4646 4647 4574 +4645 2704 2705 4648 4646 4703 4704 4647 +2680 2705 4705 4511 4575 4648 4649 4576 +4511 4705 4706 4512 4576 4649 4650 4577 +4512 4706 2706 2681 4577 4650 4651 4578 +2681 4578 4581 2682 4513 4579 4580 4514 +4578 4651 4654 4581 4579 4652 4653 4580 +4651 2706 2707 4654 4652 4707 4708 4653 +2682 2707 4709 4515 4581 4654 4655 4582 +4515 4709 4710 4516 4582 4655 4656 4583 +4516 4710 2708 2683 4583 4656 4657 4584 +2683 4584 4587 2684 4517 4585 4586 4518 +4584 4657 4660 4587 4585 4658 4659 4586 +4657 2708 2709 4660 4658 4711 4712 4659 +2684 2709 4713 4519 4587 4660 4661 4588 +4519 4713 4714 4520 4588 4661 4662 4589 +4520 4714 2710 2685 4589 4662 4663 4590 +2685 4590 4593 2686 4521 4591 4592 4522 +4590 4663 4666 4593 4591 4664 4665 4592 +4663 2710 2711 4666 4664 4715 4716 4665 +2686 2711 4717 4523 4593 4666 4667 4594 +4523 4717 4718 4524 4594 4667 4668 4595 +4524 4718 2712 2687 4595 4668 4669 4596 +2687 4596 4599 2688 4525 4597 4598 4526 +4596 4669 4672 4599 4597 4670 4671 4598 +4669 2712 2713 4672 4670 4719 4720 4671 +2689 4721 4724 2690 4673 4722 4723 4674 +4721 4794 4797 4724 4722 4795 4796 4723 +4794 2714 2715 4797 4795 4867 4868 4796 +2690 2715 4869 4675 4724 4797 4798 4725 +4675 4869 4870 4676 4725 4798 4799 4726 +4676 4870 2716 2691 4726 4799 4800 4727 +2691 4727 4730 2692 4677 4728 4729 4678 +4727 4800 4803 4730 4728 4801 4802 4729 +4800 2716 2717 4803 4801 4871 4872 4802 +2692 2717 4873 4679 4730 4803 4804 4731 +4679 4873 4874 4680 4731 4804 4805 4732 +4680 4874 2718 2693 4732 4805 4806 4733 +2693 4733 4736 2694 4681 4734 4735 4682 +4733 4806 4809 4736 4734 4807 4808 4735 +4806 2718 2719 4809 4807 4875 4876 4808 +2694 2719 4877 4683 4736 4809 4810 4737 +4683 4877 4878 4684 4737 4810 4811 4738 +4684 4878 2720 2695 4738 4811 4812 4739 +2695 4739 4742 2696 4685 4740 4741 4686 +4739 4812 4815 4742 4740 4813 4814 4741 +4812 2720 2721 4815 4813 4879 4880 4814 +2696 2721 4881 4687 4742 4815 4816 4743 +4687 4881 4882 4688 4743 4816 4817 4744 +4688 4882 2722 2697 4744 4817 4818 4745 +2697 4745 4748 2698 4689 4746 4747 4690 +4745 4818 4821 4748 4746 4819 4820 4747 +4818 2722 2723 4821 4819 4883 4884 4820 +2698 2723 4885 4691 4748 4821 4822 4749 +4691 4885 4886 4692 4749 4822 4823 4750 +4692 4886 2724 2699 4750 4823 4824 4751 +2699 4751 4754 2700 4693 4752 4753 4694 +4751 4824 4827 4754 4752 4825 4826 4753 +4824 2724 2725 4827 4825 4887 4888 4826 +2700 2725 4889 4695 4754 4827 4828 4755 +4695 4889 4890 4696 4755 4828 4829 4756 +4696 4890 2726 2701 4756 4829 4830 4757 +2701 4757 4760 2702 4697 4758 4759 4698 +4757 4830 4833 4760 4758 4831 4832 4759 +4830 2726 2727 4833 4831 4891 4892 4832 +2702 2727 4893 4699 4760 4833 4834 4761 +4699 4893 4894 4700 4761 4834 4835 4762 +4700 4894 2728 2703 4762 4835 4836 4763 +2703 4763 4766 2704 4701 4764 4765 4702 +4763 4836 4839 4766 4764 4837 4838 4765 +4836 2728 2729 4839 4837 4895 4896 4838 +2704 2729 4897 4703 4766 4839 4840 4767 +4703 4897 4898 4704 4767 4840 4841 4768 +4704 4898 2730 2705 4768 4841 4842 4769 +2705 4769 4772 2706 4705 4770 4771 4706 +4769 4842 4845 4772 4770 4843 4844 4771 +4842 2730 2731 4845 4843 4899 4900 4844 +2706 2731 4901 4707 4772 4845 4846 4773 +4707 4901 4902 4708 4773 4846 4847 4774 +4708 4902 2732 2707 4774 4847 4848 4775 +2707 4775 4778 2708 4709 4776 4777 4710 +4775 4848 4851 4778 4776 4849 4850 4777 +4848 2732 2733 4851 4849 4903 4904 4850 +2708 2733 4905 4711 4778 4851 4852 4779 +4711 4905 4906 4712 4779 4852 4853 4780 +4712 4906 2734 2709 4780 4853 4854 4781 +2709 4781 4784 2710 4713 4782 4783 4714 +4781 4854 4857 4784 4782 4855 4856 4783 +4854 2734 2735 4857 4855 4907 4908 4856 +2710 2735 4909 4715 4784 4857 4858 4785 +4715 4909 4910 4716 4785 4858 4859 4786 +4716 4910 2736 2711 4786 4859 4860 4787 +2711 4787 4790 2712 4717 4788 4789 4718 +4787 4860 4863 4790 4788 4861 4862 4789 +4860 2736 2737 4863 4861 4911 4912 4862 +2712 2737 4913 4719 4790 4863 4864 4791 +4719 4913 4914 4720 4791 4864 4865 4792 +4720 4914 2738 2713 4792 4865 4866 4793 +2714 2739 5061 4867 4915 4988 4989 4916 +4867 5061 5062 4868 4916 4989 4990 4917 +4868 5062 2740 2715 4917 4990 4991 4918 +2715 4918 4921 2716 4869 4919 4920 4870 +4918 4991 4994 4921 4919 4992 4993 4920 +4991 2740 2741 4994 4992 5063 5064 4993 +2716 2741 5065 4871 4921 4994 4995 4922 +4871 5065 5066 4872 4922 4995 4996 4923 +4872 5066 2742 2717 4923 4996 4997 4924 +2717 4924 4927 2718 4873 4925 4926 4874 +4924 4997 5000 4927 4925 4998 4999 4926 +4997 2742 2743 5000 4998 5067 5068 4999 +2718 2743 5069 4875 4927 5000 5001 4928 +4875 5069 5070 4876 4928 5001 5002 4929 +4876 5070 2744 2719 4929 5002 5003 4930 +2719 4930 4933 2720 4877 4931 4932 4878 +4930 5003 5006 4933 4931 5004 5005 4932 +5003 2744 2745 5006 5004 5071 5072 5005 +2720 2745 5073 4879 4933 5006 5007 4934 +4879 5073 5074 4880 4934 5007 5008 4935 +4880 5074 2746 2721 4935 5008 5009 4936 +2721 4936 4939 2722 4881 4937 4938 4882 +4936 5009 5012 4939 4937 5010 5011 4938 +5009 2746 2747 5012 5010 5075 5076 5011 +2722 2747 5077 4883 4939 5012 5013 4940 +4883 5077 5078 4884 4940 5013 5014 4941 +4884 5078 2748 2723 4941 5014 5015 4942 +2723 4942 4945 2724 4885 4943 4944 4886 +4942 5015 5018 4945 4943 5016 5017 4944 +5015 2748 2749 5018 5016 5079 5080 5017 +2724 2749 5081 4887 4945 5018 5019 4946 +4887 5081 5082 4888 4946 5019 5020 4947 +4888 5082 2750 2725 4947 5020 5021 4948 +2725 4948 4951 2726 4889 4949 4950 4890 +4948 5021 5024 4951 4949 5022 5023 4950 +5021 2750 2751 5024 5022 5083 5084 5023 +2726 2751 5085 4891 4951 5024 5025 4952 +4891 5085 5086 4892 4952 5025 5026 4953 +4892 5086 2752 2727 4953 5026 5027 4954 +2727 4954 4957 2728 4893 4955 4956 4894 +4954 5027 5030 4957 4955 5028 5029 4956 +5027 2752 2753 5030 5028 5087 5088 5029 +2728 2753 5089 4895 4957 5030 5031 4958 +4895 5089 5090 4896 4958 5031 5032 4959 +4896 5090 2754 2729 4959 5032 5033 4960 +2729 4960 4963 2730 4897 4961 4962 4898 +4960 5033 5036 4963 4961 5034 5035 4962 +5033 2754 2755 5036 5034 5091 5092 5035 +2730 2755 5093 4899 4963 5036 5037 4964 +4899 5093 5094 4900 4964 5037 5038 4965 +4900 5094 2756 2731 4965 5038 5039 4966 +2731 4966 4969 2732 4901 4967 4968 4902 +4966 5039 5042 4969 4967 5040 5041 4968 +5039 2756 2757 5042 5040 5095 5096 5041 +2732 2757 5097 4903 4969 5042 5043 4970 +4903 5097 5098 4904 4970 5043 5044 4971 +4904 5098 2758 2733 4971 5044 5045 4972 +2733 4972 4975 2734 4905 4973 4974 4906 +4972 5045 5048 4975 4973 5046 5047 4974 +5045 2758 2759 5048 5046 5099 5100 5047 +2734 2759 5101 4907 4975 5048 5049 4976 +4907 5101 5102 4908 4976 5049 5050 4977 +4908 5102 2760 2735 4977 5050 5051 4978 +2735 4978 4981 2736 4909 4979 4980 4910 +4978 5051 5054 4981 4979 5052 5053 4980 +5051 2760 2761 5054 5052 5103 5104 5053 +2736 2761 5105 4911 4981 5054 5055 4982 +4911 5105 5106 4912 4982 5055 5056 4983 +4912 5106 2762 2737 4983 5056 5057 4984 +2737 4984 4987 2738 4913 4985 4986 4914 +4984 5057 5060 4987 4985 5058 5059 4986 +5057 2762 2763 5060 5058 5107 5108 5059 +2739 5109 5112 2740 5061 5110 5111 5062 +5109 5182 5185 5112 5110 5183 5184 5111 +5182 2764 2765 5185 5183 5255 5256 5184 +2740 2765 5257 5063 5112 5185 5186 5113 +5063 5257 5258 5064 5113 5186 5187 5114 +5064 5258 2766 2741 5114 5187 5188 5115 +2741 5115 5118 2742 5065 5116 5117 5066 +5115 5188 5191 5118 5116 5189 5190 5117 +5188 2766 2767 5191 5189 5259 5260 5190 +2742 2767 5261 5067 5118 5191 5192 5119 +5067 5261 5262 5068 5119 5192 5193 5120 +5068 5262 2768 2743 5120 5193 5194 5121 +2743 5121 5124 2744 5069 5122 5123 5070 +5121 5194 5197 5124 5122 5195 5196 5123 +5194 2768 2769 5197 5195 5263 5264 5196 +2744 2769 5265 5071 5124 5197 5198 5125 +5071 5265 5266 5072 5125 5198 5199 5126 +5072 5266 2770 2745 5126 5199 5200 5127 +2745 5127 5130 2746 5073 5128 5129 5074 +5127 5200 5203 5130 5128 5201 5202 5129 +5200 2770 2771 5203 5201 5267 5268 5202 +2746 2771 5269 5075 5130 5203 5204 5131 +5075 5269 5270 5076 5131 5204 5205 5132 +5076 5270 2772 2747 5132 5205 5206 5133 +2747 5133 5136 2748 5077 5134 5135 5078 +5133 5206 5209 5136 5134 5207 5208 5135 +5206 2772 2773 5209 5207 5271 5272 5208 +2748 2773 5273 5079 5136 5209 5210 5137 +5079 5273 5274 5080 5137 5210 5211 5138 +5080 5274 2774 2749 5138 5211 5212 5139 +2749 5139 5142 2750 5081 5140 5141 5082 +5139 5212 5215 5142 5140 5213 5214 5141 +5212 2774 2775 5215 5213 5275 5276 5214 +2750 2775 5277 5083 5142 5215 5216 5143 +5083 5277 5278 5084 5143 5216 5217 5144 +5084 5278 2776 2751 5144 5217 5218 5145 +2751 5145 5148 2752 5085 5146 5147 5086 +5145 5218 5221 5148 5146 5219 5220 5147 +5218 2776 2777 5221 5219 5279 5280 5220 +2752 2777 5281 5087 5148 5221 5222 5149 +5087 5281 5282 5088 5149 5222 5223 5150 +5088 5282 2778 2753 5150 5223 5224 5151 +2753 5151 5154 2754 5089 5152 5153 5090 +5151 5224 5227 5154 5152 5225 5226 5153 +5224 2778 2779 5227 5225 5283 5284 5226 +2754 2779 5285 5091 5154 5227 5228 5155 +5091 5285 5286 5092 5155 5228 5229 5156 +5092 5286 2780 2755 5156 5229 5230 5157 +2755 5157 5160 2756 5093 5158 5159 5094 +5157 5230 5233 5160 5158 5231 5232 5159 +5230 2780 2781 5233 5231 5287 5288 5232 +2756 2781 5289 5095 5160 5233 5234 5161 +5095 5289 5290 5096 5161 5234 5235 5162 +5096 5290 2782 2757 5162 5235 5236 5163 +2757 5163 5166 2758 5097 5164 5165 5098 +5163 5236 5239 5166 5164 5237 5238 5165 +5236 2782 2783 5239 5237 5291 5292 5238 +2758 2783 5293 5099 5166 5239 5240 5167 +5099 5293 5294 5100 5167 5240 5241 5168 +5100 5294 2784 2759 5168 5241 5242 5169 +2759 5169 5172 2760 5101 5170 5171 5102 +5169 5242 5245 5172 5170 5243 5244 5171 +5242 2784 2785 5245 5243 5295 5296 5244 +2760 2785 5297 5103 5172 5245 5246 5173 +5103 5297 5298 5104 5173 5246 5247 5174 +5104 5298 2786 2761 5174 5247 5248 5175 +2761 5175 5178 2762 5105 5176 5177 5106 +5175 5248 5251 5178 5176 5249 5250 5177 +5248 2786 2787 5251 5249 5299 5300 5250 +2762 2787 5301 5107 5178 5251 5252 5179 +5107 5301 5302 5108 5179 5252 5253 5180 +5108 5302 2788 2763 5180 5253 5254 5181 +2764 2789 5449 5255 5303 5376 5377 5304 +5255 5449 5450 5256 5304 5377 5378 5305 +5256 5450 2790 2765 5305 5378 5379 5306 +2765 5306 5309 2766 5257 5307 5308 5258 +5306 5379 5382 5309 5307 5380 5381 5308 +5379 2790 2791 5382 5380 5451 5452 5381 +2766 2791 5453 5259 5309 5382 5383 5310 +5259 5453 5454 5260 5310 5383 5384 5311 +5260 5454 2792 2767 5311 5384 5385 5312 +2767 5312 5315 2768 5261 5313 5314 5262 +5312 5385 5388 5315 5313 5386 5387 5314 +5385 2792 2793 5388 5386 5455 5456 5387 +2768 2793 5457 5263 5315 5388 5389 5316 +5263 5457 5458 5264 5316 5389 5390 5317 +5264 5458 2794 2769 5317 5390 5391 5318 +2769 5318 5321 2770 5265 5319 5320 5266 +5318 5391 5394 5321 5319 5392 5393 5320 +5391 2794 2795 5394 5392 5459 5460 5393 +2770 2795 5461 5267 5321 5394 5395 5322 +5267 5461 5462 5268 5322 5395 5396 5323 +5268 5462 2796 2771 5323 5396 5397 5324 +2771 5324 5327 2772 5269 5325 5326 5270 +5324 5397 5400 5327 5325 5398 5399 5326 +5397 2796 2797 5400 5398 5463 5464 5399 +2772 2797 5465 5271 5327 5400 5401 5328 +5271 5465 5466 5272 5328 5401 5402 5329 +5272 5466 2798 2773 5329 5402 5403 5330 +2773 5330 5333 2774 5273 5331 5332 5274 +5330 5403 5406 5333 5331 5404 5405 5332 +5403 2798 2799 5406 5404 5467 5468 5405 +2774 2799 5469 5275 5333 5406 5407 5334 +5275 5469 5470 5276 5334 5407 5408 5335 +5276 5470 2800 2775 5335 5408 5409 5336 +2775 5336 5339 2776 5277 5337 5338 5278 +5336 5409 5412 5339 5337 5410 5411 5338 +5409 2800 2801 5412 5410 5471 5472 5411 +2776 2801 5473 5279 5339 5412 5413 5340 +5279 5473 5474 5280 5340 5413 5414 5341 +5280 5474 2802 2777 5341 5414 5415 5342 +2777 5342 5345 2778 5281 5343 5344 5282 +5342 5415 5418 5345 5343 5416 5417 5344 +5415 2802 2803 5418 5416 5475 5476 5417 +2778 2803 5477 5283 5345 5418 5419 5346 +5283 5477 5478 5284 5346 5419 5420 5347 +5284 5478 2804 2779 5347 5420 5421 5348 +2779 5348 5351 2780 5285 5349 5350 5286 +5348 5421 5424 5351 5349 5422 5423 5350 +5421 2804 2805 5424 5422 5479 5480 5423 +2780 2805 5481 5287 5351 5424 5425 5352 +5287 5481 5482 5288 5352 5425 5426 5353 +5288 5482 2806 2781 5353 5426 5427 5354 +2781 5354 5357 2782 5289 5355 5356 5290 +5354 5427 5430 5357 5355 5428 5429 5356 +5427 2806 2807 5430 5428 5483 5484 5429 +2782 2807 5485 5291 5357 5430 5431 5358 +5291 5485 5486 5292 5358 5431 5432 5359 +5292 5486 2808 2783 5359 5432 5433 5360 +2783 5360 5363 2784 5293 5361 5362 5294 +5360 5433 5436 5363 5361 5434 5435 5362 +5433 2808 2809 5436 5434 5487 5488 5435 +2784 2809 5489 5295 5363 5436 5437 5364 +5295 5489 5490 5296 5364 5437 5438 5365 +5296 5490 2810 2785 5365 5438 5439 5366 +2785 5366 5369 2786 5297 5367 5368 5298 +5366 5439 5442 5369 5367 5440 5441 5368 +5439 2810 2811 5442 5440 5491 5492 5441 +2786 2811 5493 5299 5369 5442 5443 5370 +5299 5493 5494 5300 5370 5443 5444 5371 +5300 5494 2812 2787 5371 5444 5445 5372 +2787 5372 5375 2788 5301 5373 5374 5302 +5372 5445 5448 5375 5373 5446 5447 5374 +5445 2812 2813 5448 5446 5495 5496 5447 +2789 5497 5500 2790 5449 5498 5499 5450 +5497 5570 5573 5500 5498 5571 5572 5499 +5570 2814 2815 5573 5571 5643 5644 5572 +2790 2815 5645 5451 5500 5573 5574 5501 +5451 5645 5646 5452 5501 5574 5575 5502 +5452 5646 2816 2791 5502 5575 5576 5503 +2791 5503 5506 2792 5453 5504 5505 5454 +5503 5576 5579 5506 5504 5577 5578 5505 +5576 2816 2817 5579 5577 5647 5648 5578 +2792 2817 5649 5455 5506 5579 5580 5507 +5455 5649 5650 5456 5507 5580 5581 5508 +5456 5650 2818 2793 5508 5581 5582 5509 +2793 5509 5512 2794 5457 5510 5511 5458 +5509 5582 5585 5512 5510 5583 5584 5511 +5582 2818 2819 5585 5583 5651 5652 5584 +2794 2819 5653 5459 5512 5585 5586 5513 +5459 5653 5654 5460 5513 5586 5587 5514 +5460 5654 2820 2795 5514 5587 5588 5515 +2795 5515 5518 2796 5461 5516 5517 5462 +5515 5588 5591 5518 5516 5589 5590 5517 +5588 2820 2821 5591 5589 5655 5656 5590 +2796 2821 5657 5463 5518 5591 5592 5519 +5463 5657 5658 5464 5519 5592 5593 5520 +5464 5658 2822 2797 5520 5593 5594 5521 +2797 5521 5524 2798 5465 5522 5523 5466 +5521 5594 5597 5524 5522 5595 5596 5523 +5594 2822 2823 5597 5595 5659 5660 5596 +2798 2823 5661 5467 5524 5597 5598 5525 +5467 5661 5662 5468 5525 5598 5599 5526 +5468 5662 2824 2799 5526 5599 5600 5527 +2799 5527 5530 2800 5469 5528 5529 5470 +5527 5600 5603 5530 5528 5601 5602 5529 +5600 2824 2825 5603 5601 5663 5664 5602 +2800 2825 5665 5471 5530 5603 5604 5531 +5471 5665 5666 5472 5531 5604 5605 5532 +5472 5666 2826 2801 5532 5605 5606 5533 +2801 5533 5536 2802 5473 5534 5535 5474 +5533 5606 5609 5536 5534 5607 5608 5535 +5606 2826 2827 5609 5607 5667 5668 5608 +2802 2827 5669 5475 5536 5609 5610 5537 +5475 5669 5670 5476 5537 5610 5611 5538 +5476 5670 2828 2803 5538 5611 5612 5539 +2803 5539 5542 2804 5477 5540 5541 5478 +5539 5612 5615 5542 5540 5613 5614 5541 +5612 2828 2829 5615 5613 5671 5672 5614 +2804 2829 5673 5479 5542 5615 5616 5543 +5479 5673 5674 5480 5543 5616 5617 5544 +5480 5674 2830 2805 5544 5617 5618 5545 +2805 5545 5548 2806 5481 5546 5547 5482 +5545 5618 5621 5548 5546 5619 5620 5547 +5618 2830 2831 5621 5619 5675 5676 5620 +2806 2831 5677 5483 5548 5621 5622 5549 +5483 5677 5678 5484 5549 5622 5623 5550 +5484 5678 2832 2807 5550 5623 5624 5551 +2807 5551 5554 2808 5485 5552 5553 5486 +5551 5624 5627 5554 5552 5625 5626 5553 +5624 2832 2833 5627 5625 5679 5680 5626 +2808 2833 5681 5487 5554 5627 5628 5555 +5487 5681 5682 5488 5555 5628 5629 5556 +5488 5682 2834 2809 5556 5629 5630 5557 +2809 5557 5560 2810 5489 5558 5559 5490 +5557 5630 5633 5560 5558 5631 5632 5559 +5630 2834 2835 5633 5631 5683 5684 5632 +2810 2835 5685 5491 5560 5633 5634 5561 +5491 5685 5686 5492 5561 5634 5635 5562 +5492 5686 2836 2811 5562 5635 5636 5563 +2811 5563 5566 2812 5493 5564 5565 5494 +5563 5636 5639 5566 5564 5637 5638 5565 +5636 2836 2837 5639 5637 5687 5688 5638 +2812 2837 5689 5495 5566 5639 5640 5567 +5495 5689 5690 5496 5567 5640 5641 5568 +5496 5690 2838 2813 5568 5641 5642 5569 +2814 2839 5837 5643 5691 5764 5765 5692 +5643 5837 5838 5644 5692 5765 5766 5693 +5644 5838 2840 2815 5693 5766 5767 5694 +2815 5694 5697 2816 5645 5695 5696 5646 +5694 5767 5770 5697 5695 5768 5769 5696 +5767 2840 2841 5770 5768 5839 5840 5769 +2816 2841 5841 5647 5697 5770 5771 5698 +5647 5841 5842 5648 5698 5771 5772 5699 +5648 5842 2842 2817 5699 5772 5773 5700 +2817 5700 5703 2818 5649 5701 5702 5650 +5700 5773 5776 5703 5701 5774 5775 5702 +5773 2842 2843 5776 5774 5843 5844 5775 +2818 2843 5845 5651 5703 5776 5777 5704 +5651 5845 5846 5652 5704 5777 5778 5705 +5652 5846 2844 2819 5705 5778 5779 5706 +2819 5706 5709 2820 5653 5707 5708 5654 +5706 5779 5782 5709 5707 5780 5781 5708 +5779 2844 2845 5782 5780 5847 5848 5781 +2820 2845 5849 5655 5709 5782 5783 5710 +5655 5849 5850 5656 5710 5783 5784 5711 +5656 5850 2846 2821 5711 5784 5785 5712 +2821 5712 5715 2822 5657 5713 5714 5658 +5712 5785 5788 5715 5713 5786 5787 5714 +5785 2846 2847 5788 5786 5851 5852 5787 +2822 2847 5853 5659 5715 5788 5789 5716 +5659 5853 5854 5660 5716 5789 5790 5717 +5660 5854 2848 2823 5717 5790 5791 5718 +2823 5718 5721 2824 5661 5719 5720 5662 +5718 5791 5794 5721 5719 5792 5793 5720 +5791 2848 2849 5794 5792 5855 5856 5793 +2824 2849 5857 5663 5721 5794 5795 5722 +5663 5857 5858 5664 5722 5795 5796 5723 +5664 5858 2850 2825 5723 5796 5797 5724 +2825 5724 5727 2826 5665 5725 5726 5666 +5724 5797 5800 5727 5725 5798 5799 5726 +5797 2850 2851 5800 5798 5859 5860 5799 +2826 2851 5861 5667 5727 5800 5801 5728 +5667 5861 5862 5668 5728 5801 5802 5729 +5668 5862 2852 2827 5729 5802 5803 5730 +2827 5730 5733 2828 5669 5731 5732 5670 +5730 5803 5806 5733 5731 5804 5805 5732 +5803 2852 2853 5806 5804 5863 5864 5805 +2828 2853 5865 5671 5733 5806 5807 5734 +5671 5865 5866 5672 5734 5807 5808 5735 +5672 5866 2854 2829 5735 5808 5809 5736 +2829 5736 5739 2830 5673 5737 5738 5674 +5736 5809 5812 5739 5737 5810 5811 5738 +5809 2854 2855 5812 5810 5867 5868 5811 +2830 2855 5869 5675 5739 5812 5813 5740 +5675 5869 5870 5676 5740 5813 5814 5741 +5676 5870 2856 2831 5741 5814 5815 5742 +2831 5742 5745 2832 5677 5743 5744 5678 +5742 5815 5818 5745 5743 5816 5817 5744 +5815 2856 2857 5818 5816 5871 5872 5817 +2832 2857 5873 5679 5745 5818 5819 5746 +5679 5873 5874 5680 5746 5819 5820 5747 +5680 5874 2858 2833 5747 5820 5821 5748 +2833 5748 5751 2834 5681 5749 5750 5682 +5748 5821 5824 5751 5749 5822 5823 5750 +5821 2858 2859 5824 5822 5875 5876 5823 +2834 2859 5877 5683 5751 5824 5825 5752 +5683 5877 5878 5684 5752 5825 5826 5753 +5684 5878 2860 2835 5753 5826 5827 5754 +2835 5754 5757 2836 5685 5755 5756 5686 +5754 5827 5830 5757 5755 5828 5829 5756 +5827 2860 2861 5830 5828 5879 5880 5829 +2836 2861 5881 5687 5757 5830 5831 5758 +5687 5881 5882 5688 5758 5831 5832 5759 +5688 5882 2862 2837 5759 5832 5833 5760 +2837 5760 5763 2838 5689 5761 5762 5690 +5760 5833 5836 5763 5761 5834 5835 5762 +5833 2862 2863 5836 5834 5883 5884 5835 +2839 5885 5888 2840 5837 5886 5887 5838 +5885 5958 5961 5888 5886 5959 5960 5887 +5958 2864 2865 5961 5959 6031 6032 5960 +2840 2865 6033 5839 5888 5961 5962 5889 +5839 6033 6034 5840 5889 5962 5963 5890 +5840 6034 2866 2841 5890 5963 5964 5891 +2841 5891 5894 2842 5841 5892 5893 5842 +5891 5964 5967 5894 5892 5965 5966 5893 +5964 2866 2867 5967 5965 6035 6036 5966 +2842 2867 6037 5843 5894 5967 5968 5895 +5843 6037 6038 5844 5895 5968 5969 5896 +5844 6038 2868 2843 5896 5969 5970 5897 +2843 5897 5900 2844 5845 5898 5899 5846 +5897 5970 5973 5900 5898 5971 5972 5899 +5970 2868 2869 5973 5971 6039 6040 5972 +2844 2869 6041 5847 5900 5973 5974 5901 +5847 6041 6042 5848 5901 5974 5975 5902 +5848 6042 2870 2845 5902 5975 5976 5903 +2845 5903 5906 2846 5849 5904 5905 5850 +5903 5976 5979 5906 5904 5977 5978 5905 +5976 2870 2871 5979 5977 6043 6044 5978 +2846 2871 6045 5851 5906 5979 5980 5907 +5851 6045 6046 5852 5907 5980 5981 5908 +5852 6046 2872 2847 5908 5981 5982 5909 +2847 5909 5912 2848 5853 5910 5911 5854 +5909 5982 5985 5912 5910 5983 5984 5911 +5982 2872 2873 5985 5983 6047 6048 5984 +2848 2873 6049 5855 5912 5985 5986 5913 +5855 6049 6050 5856 5913 5986 5987 5914 +5856 6050 2874 2849 5914 5987 5988 5915 +2849 5915 5918 2850 5857 5916 5917 5858 +5915 5988 5991 5918 5916 5989 5990 5917 +5988 2874 2875 5991 5989 6051 6052 5990 +2850 2875 6053 5859 5918 5991 5992 5919 +5859 6053 6054 5860 5919 5992 5993 5920 +5860 6054 2876 2851 5920 5993 5994 5921 +2851 5921 5924 2852 5861 5922 5923 5862 +5921 5994 5997 5924 5922 5995 5996 5923 +5994 2876 2877 5997 5995 6055 6056 5996 +2852 2877 6057 5863 5924 5997 5998 5925 +5863 6057 6058 5864 5925 5998 5999 5926 +5864 6058 2878 2853 5926 5999 6000 5927 +2853 5927 5930 2854 5865 5928 5929 5866 +5927 6000 6003 5930 5928 6001 6002 5929 +6000 2878 2879 6003 6001 6059 6060 6002 +2854 2879 6061 5867 5930 6003 6004 5931 +5867 6061 6062 5868 5931 6004 6005 5932 +5868 6062 2880 2855 5932 6005 6006 5933 +2855 5933 5936 2856 5869 5934 5935 5870 +5933 6006 6009 5936 5934 6007 6008 5935 +6006 2880 2881 6009 6007 6063 6064 6008 +2856 2881 6065 5871 5936 6009 6010 5937 +5871 6065 6066 5872 5937 6010 6011 5938 +5872 6066 2882 2857 5938 6011 6012 5939 +2857 5939 5942 2858 5873 5940 5941 5874 +5939 6012 6015 5942 5940 6013 6014 5941 +6012 2882 2883 6015 6013 6067 6068 6014 +2858 2883 6069 5875 5942 6015 6016 5943 +5875 6069 6070 5876 5943 6016 6017 5944 +5876 6070 2884 2859 5944 6017 6018 5945 +2859 5945 5948 2860 5877 5946 5947 5878 +5945 6018 6021 5948 5946 6019 6020 5947 +6018 2884 2885 6021 6019 6071 6072 6020 +2860 2885 6073 5879 5948 6021 6022 5949 +5879 6073 6074 5880 5949 6022 6023 5950 +5880 6074 2886 2861 5950 6023 6024 5951 +2861 5951 5954 2862 5881 5952 5953 5882 +5951 6024 6027 5954 5952 6025 6026 5953 +6024 2886 2887 6027 6025 6075 6076 6026 +2862 2887 6077 5883 5954 6027 6028 5955 +5883 6077 6078 5884 5955 6028 6029 5956 +5884 6078 2888 2863 5956 6029 6030 5957 +2864 2889 6225 6031 6079 6152 6153 6080 +6031 6225 6226 6032 6080 6153 6154 6081 +6032 6226 2890 2865 6081 6154 6155 6082 +2865 6082 6085 2866 6033 6083 6084 6034 +6082 6155 6158 6085 6083 6156 6157 6084 +6155 2890 2891 6158 6156 6227 6228 6157 +2866 2891 6229 6035 6085 6158 6159 6086 +6035 6229 6230 6036 6086 6159 6160 6087 +6036 6230 2892 2867 6087 6160 6161 6088 +2867 6088 6091 2868 6037 6089 6090 6038 +6088 6161 6164 6091 6089 6162 6163 6090 +6161 2892 2893 6164 6162 6231 6232 6163 +2868 2893 6233 6039 6091 6164 6165 6092 +6039 6233 6234 6040 6092 6165 6166 6093 +6040 6234 2894 2869 6093 6166 6167 6094 +2869 6094 6097 2870 6041 6095 6096 6042 +6094 6167 6170 6097 6095 6168 6169 6096 +6167 2894 2895 6170 6168 6235 6236 6169 +2870 2895 6237 6043 6097 6170 6171 6098 +6043 6237 6238 6044 6098 6171 6172 6099 +6044 6238 2896 2871 6099 6172 6173 6100 +2871 6100 6103 2872 6045 6101 6102 6046 +6100 6173 6176 6103 6101 6174 6175 6102 +6173 2896 2897 6176 6174 6239 6240 6175 +2872 2897 6241 6047 6103 6176 6177 6104 +6047 6241 6242 6048 6104 6177 6178 6105 +6048 6242 2898 2873 6105 6178 6179 6106 +2873 6106 6109 2874 6049 6107 6108 6050 +6106 6179 6182 6109 6107 6180 6181 6108 +6179 2898 2899 6182 6180 6243 6244 6181 +2874 2899 6245 6051 6109 6182 6183 6110 +6051 6245 6246 6052 6110 6183 6184 6111 +6052 6246 2900 2875 6111 6184 6185 6112 +2875 6112 6115 2876 6053 6113 6114 6054 +6112 6185 6188 6115 6113 6186 6187 6114 +6185 2900 2901 6188 6186 6247 6248 6187 +2876 2901 6249 6055 6115 6188 6189 6116 +6055 6249 6250 6056 6116 6189 6190 6117 +6056 6250 2902 2877 6117 6190 6191 6118 +2877 6118 6121 2878 6057 6119 6120 6058 +6118 6191 6194 6121 6119 6192 6193 6120 +6191 2902 2903 6194 6192 6251 6252 6193 +2878 2903 6253 6059 6121 6194 6195 6122 +6059 6253 6254 6060 6122 6195 6196 6123 +6060 6254 2904 2879 6123 6196 6197 6124 +2879 6124 6127 2880 6061 6125 6126 6062 +6124 6197 6200 6127 6125 6198 6199 6126 +6197 2904 2905 6200 6198 6255 6256 6199 +2880 2905 6257 6063 6127 6200 6201 6128 +6063 6257 6258 6064 6128 6201 6202 6129 +6064 6258 2906 2881 6129 6202 6203 6130 +2881 6130 6133 2882 6065 6131 6132 6066 +6130 6203 6206 6133 6131 6204 6205 6132 +6203 2906 2907 6206 6204 6259 6260 6205 +2882 2907 6261 6067 6133 6206 6207 6134 +6067 6261 6262 6068 6134 6207 6208 6135 +6068 6262 2908 2883 6135 6208 6209 6136 +2883 6136 6139 2884 6069 6137 6138 6070 +6136 6209 6212 6139 6137 6210 6211 6138 +6209 2908 2909 6212 6210 6263 6264 6211 +2884 2909 6265 6071 6139 6212 6213 6140 +6071 6265 6266 6072 6140 6213 6214 6141 +6072 6266 2910 2885 6141 6214 6215 6142 +2885 6142 6145 2886 6073 6143 6144 6074 +6142 6215 6218 6145 6143 6216 6217 6144 +6215 2910 2911 6218 6216 6267 6268 6217 +2886 2911 6269 6075 6145 6218 6219 6146 +6075 6269 6270 6076 6146 6219 6220 6147 +6076 6270 2912 2887 6147 6220 6221 6148 +2887 6148 6151 2888 6077 6149 6150 6078 +6148 6221 6224 6151 6149 6222 6223 6150 +6221 2912 2913 6224 6222 6271 6272 6223 +2889 6273 6276 2890 6225 6274 6275 6226 +6273 6346 6349 6276 6274 6347 6348 6275 +6346 2914 2915 6349 6347 6419 6420 6348 +2890 2915 6421 6227 6276 6349 6350 6277 +6227 6421 6422 6228 6277 6350 6351 6278 +6228 6422 2916 2891 6278 6351 6352 6279 +2891 6279 6282 2892 6229 6280 6281 6230 +6279 6352 6355 6282 6280 6353 6354 6281 +6352 2916 2917 6355 6353 6423 6424 6354 +2892 2917 6425 6231 6282 6355 6356 6283 +6231 6425 6426 6232 6283 6356 6357 6284 +6232 6426 2918 2893 6284 6357 6358 6285 +2893 6285 6288 2894 6233 6286 6287 6234 +6285 6358 6361 6288 6286 6359 6360 6287 +6358 2918 2919 6361 6359 6427 6428 6360 +2894 2919 6429 6235 6288 6361 6362 6289 +6235 6429 6430 6236 6289 6362 6363 6290 +6236 6430 2920 2895 6290 6363 6364 6291 +2895 6291 6294 2896 6237 6292 6293 6238 +6291 6364 6367 6294 6292 6365 6366 6293 +6364 2920 2921 6367 6365 6431 6432 6366 +2896 2921 6433 6239 6294 6367 6368 6295 +6239 6433 6434 6240 6295 6368 6369 6296 +6240 6434 2922 2897 6296 6369 6370 6297 +2897 6297 6300 2898 6241 6298 6299 6242 +6297 6370 6373 6300 6298 6371 6372 6299 +6370 2922 2923 6373 6371 6435 6436 6372 +2898 2923 6437 6243 6300 6373 6374 6301 +6243 6437 6438 6244 6301 6374 6375 6302 +6244 6438 2924 2899 6302 6375 6376 6303 +2899 6303 6306 2900 6245 6304 6305 6246 +6303 6376 6379 6306 6304 6377 6378 6305 +6376 2924 2925 6379 6377 6439 6440 6378 +2900 2925 6441 6247 6306 6379 6380 6307 +6247 6441 6442 6248 6307 6380 6381 6308 +6248 6442 2926 2901 6308 6381 6382 6309 +2901 6309 6312 2902 6249 6310 6311 6250 +6309 6382 6385 6312 6310 6383 6384 6311 +6382 2926 2927 6385 6383 6443 6444 6384 +2902 2927 6445 6251 6312 6385 6386 6313 +6251 6445 6446 6252 6313 6386 6387 6314 +6252 6446 2928 2903 6314 6387 6388 6315 +2903 6315 6318 2904 6253 6316 6317 6254 +6315 6388 6391 6318 6316 6389 6390 6317 +6388 2928 2929 6391 6389 6447 6448 6390 +2904 2929 6449 6255 6318 6391 6392 6319 +6255 6449 6450 6256 6319 6392 6393 6320 +6256 6450 2930 2905 6320 6393 6394 6321 +2905 6321 6324 2906 6257 6322 6323 6258 +6321 6394 6397 6324 6322 6395 6396 6323 +6394 2930 2931 6397 6395 6451 6452 6396 +2906 2931 6453 6259 6324 6397 6398 6325 +6259 6453 6454 6260 6325 6398 6399 6326 +6260 6454 2932 2907 6326 6399 6400 6327 +2907 6327 6330 2908 6261 6328 6329 6262 +6327 6400 6403 6330 6328 6401 6402 6329 +6400 2932 2933 6403 6401 6455 6456 6402 +2908 2933 6457 6263 6330 6403 6404 6331 +6263 6457 6458 6264 6331 6404 6405 6332 +6264 6458 2934 2909 6332 6405 6406 6333 +2909 6333 6336 2910 6265 6334 6335 6266 +6333 6406 6409 6336 6334 6407 6408 6335 +6406 2934 2935 6409 6407 6459 6460 6408 +2910 2935 6461 6267 6336 6409 6410 6337 +6267 6461 6462 6268 6337 6410 6411 6338 +6268 6462 2936 2911 6338 6411 6412 6339 +2911 6339 6342 2912 6269 6340 6341 6270 +6339 6412 6415 6342 6340 6413 6414 6341 +6412 2936 2937 6415 6413 6463 6464 6414 +2912 2937 6465 6271 6342 6415 6416 6343 +6271 6465 6466 6272 6343 6416 6417 6344 +6272 6466 2938 2913 6344 6417 6418 6345 +2946 2945 2950 2473 6475 6474 6481 6482 +2941 2940 2945 2946 6470 6469 6474 6475 +2940 2943 2944 2945 6469 6472 6473 6474 +2945 2944 2949 2950 6474 6473 6480 6481 +2470 2939 2940 2941 6467 6468 6469 6470 +2939 2942 2943 2940 6468 6471 6472 6469 +2942 2471 2947 2943 6471 6476 6477 6472 +2943 2947 2948 2944 6472 6477 6478 6473 +2944 2948 2472 2949 6473 6478 6479 6480 +2948 2953 2954 2472 6478 6485 6486 6479 +2953 2962 2963 2954 6485 6494 6495 6486 +2962 2972 2475 2963 6494 6505 6506 6495 +2967 2966 2976 2477 6499 6498 6511 6512 +2950 2958 2959 2473 6481 6490 6491 6482 +2958 2969 2970 2959 6490 6501 6502 6491 +2969 2978 2478 2970 6501 6514 6515 6502 +2947 2952 2953 2948 6477 6484 6485 6478 +2952 2961 2962 2953 6484 6493 6494 6485 +2961 2971 2972 2962 6493 6504 6505 6494 +2956 2955 2966 2967 6488 6487 6498 6499 +2955 2964 2965 2966 6487 6496 6497 6498 +2966 2965 2975 2976 6498 6497 6510 6511 +2949 2957 2958 2950 6480 6489 6490 6481 +2957 2968 2969 2958 6489 6500 6501 6490 +2968 2977 2978 2969 6500 6513 6514 6501 +2471 2951 2952 2947 6476 6483 6484 6477 +2951 2960 2961 2952 6483 6492 6493 6484 +2960 2474 2971 2961 6492 6503 6504 6493 +2472 2954 2955 2956 6479 6486 6487 6488 +2954 2963 2964 2955 6486 6495 6496 6487 +2963 2475 2973 2964 6495 6506 6507 6496 +2964 2973 2974 2965 6496 6507 6508 6497 +2965 2974 2476 2975 6497 6508 6509 6510 +2472 2956 2957 2949 6479 6488 6489 6480 +2956 2967 2968 2957 6488 6499 6500 6489 +2967 2477 2977 2968 6499 6512 6513 6500 +2972 2981 2982 2475 6505 6518 6519 6506 +2981 2996 2997 2982 6518 6533 6534 6519 +2996 3012 2480 2997 6533 6550 6551 6534 +2974 2984 2985 2476 6508 6521 6522 6509 +2984 2999 3000 2985 6521 6536 6537 6522 +2999 3014 2481 3000 6536 6553 6554 6537 +3004 3003 3018 2483 6541 6540 6559 6560 +2976 2989 2990 2477 6511 6526 6527 6512 +2989 3006 3007 2990 6526 6543 6544 6527 +3006 3020 2484 3007 6543 6562 6563 6544 +2978 2992 2993 2478 6514 6529 6530 6515 +2992 3009 3010 2993 6529 6546 6547 6530 +3009 3022 2485 3010 6546 6565 6566 6547 +2971 2980 2981 2972 6504 6517 6518 6505 +2980 2995 2996 2981 6517 6532 6533 6518 +2995 3011 3012 2996 6532 6549 6550 6533 +2973 2983 2984 2974 6507 6520 6521 6508 +2983 2998 2999 2984 6520 6535 6536 6521 +2998 3013 3014 2999 6535 6552 6553 6536 +2987 2986 3003 3004 6524 6523 6540 6541 +2986 3001 3002 3003 6523 6538 6539 6540 +3003 3002 3017 3018 6540 6539 6558 6559 +2975 2988 2989 2976 6510 6525 6526 6511 +2988 3005 3006 2989 6525 6542 6543 6526 +3005 3019 3020 3006 6542 6561 6562 6543 +2977 2991 2992 2978 6513 6528 6529 6514 +2991 3008 3009 2992 6528 6545 6546 6529 +3008 3021 3022 3009 6545 6564 6565 6546 +2474 2979 2980 2971 6503 6516 6517 6504 +2979 2994 2995 2980 6516 6531 6532 6517 +2994 2479 3011 2995 6531 6548 6549 6532 +2475 2982 2983 2973 6506 6519 6520 6507 +2982 2997 2998 2983 6519 6534 6535 6520 +2997 2480 3013 2998 6534 6551 6552 6535 +2476 2985 2986 2987 6509 6522 6523 6524 +2985 3000 3001 2986 6522 6537 6538 6523 +3000 2481 3015 3001 6537 6554 6555 6538 +3001 3015 3016 3002 6538 6555 6556 6539 +3002 3016 2482 3017 6539 6556 6557 6558 +2476 2987 2988 2975 6509 6524 6525 6510 +2987 3004 3005 2988 6524 6541 6542 6525 +3004 2483 3019 3005 6541 6560 6561 6542 +2477 2990 2991 2977 6512 6527 6528 6513 +2990 3007 3008 2991 6527 6544 6545 6528 +3007 2484 3021 3008 6544 6563 6564 6545 +3012 3025 3026 2480 6550 6569 6570 6551 +3025 3046 3047 3026 6569 6590 6591 6570 +3046 3068 2487 3047 6590 6613 6614 6591 +3014 3028 3029 2481 6553 6572 6573 6554 +3028 3049 3050 3029 6572 6593 6594 6573 +3049 3070 2488 3050 6593 6616 6617 6594 +3016 3031 3032 2482 6556 6575 6576 6557 +3031 3052 3053 3032 6575 6596 6597 6576 +3052 3072 2489 3053 6596 6619 6620 6597 +3057 3056 3076 2491 6601 6600 6625 6626 +3018 3036 3037 2483 6559 6580 6581 6560 +3036 3059 3060 3037 6580 6603 6604 6581 +3059 3078 2492 3060 6603 6628 6629 6604 +3020 3039 3040 2484 6562 6583 6584 6563 +3039 3062 3063 3040 6583 6606 6607 6584 +3062 3080 2493 3063 6606 6631 6632 6607 +3022 3042 3043 2485 6565 6586 6587 6566 +3042 3065 3066 3043 6586 6609 6610 6587 +3065 3082 2494 3066 6609 6634 6635 6610 +3011 3024 3025 3012 6549 6568 6569 6550 +3024 3045 3046 3025 6568 6589 6590 6569 +3045 3067 3068 3046 6589 6612 6613 6590 +3013 3027 3028 3014 6552 6571 6572 6553 +3027 3048 3049 3028 6571 6592 6593 6572 +3048 3069 3070 3049 6592 6615 6616 6593 +3015 3030 3031 3016 6555 6574 6575 6556 +3030 3051 3052 3031 6574 6595 6596 6575 +3051 3071 3072 3052 6595 6618 6619 6596 +3034 3033 3056 3057 6578 6577 6600 6601 +3033 3054 3055 3056 6577 6598 6599 6600 +3056 3055 3075 3076 6600 6599 6624 6625 +3017 3035 3036 3018 6558 6579 6580 6559 +3035 3058 3059 3036 6579 6602 6603 6580 +3058 3077 3078 3059 6602 6627 6628 6603 +3019 3038 3039 3020 6561 6582 6583 6562 +3038 3061 3062 3039 6582 6605 6606 6583 +3061 3079 3080 3062 6605 6630 6631 6606 +3021 3041 3042 3022 6564 6585 6586 6565 +3041 3064 3065 3042 6585 6608 6609 6586 +3064 3081 3082 3065 6608 6633 6634 6609 +2479 3023 3024 3011 6548 6567 6568 6549 +3023 3044 3045 3024 6567 6588 6589 6568 +3044 2486 3067 3045 6588 6611 6612 6589 +2480 3026 3027 3013 6551 6570 6571 6552 +3026 3047 3048 3027 6570 6591 6592 6571 +3047 2487 3069 3048 6591 6614 6615 6592 +2481 3029 3030 3015 6554 6573 6574 6555 +3029 3050 3051 3030 6573 6594 6595 6574 +3050 2488 3071 3051 6594 6617 6618 6595 +2482 3032 3033 3034 6557 6576 6577 6578 +3032 3053 3054 3033 6576 6597 6598 6577 +3053 2489 3073 3054 6597 6620 6621 6598 +3054 3073 3074 3055 6598 6621 6622 6599 +3055 3074 2490 3075 6599 6622 6623 6624 +2482 3034 3035 3017 6557 6578 6579 6558 +3034 3057 3058 3035 6578 6601 6602 6579 +3057 2491 3077 3058 6601 6626 6627 6602 +2483 3037 3038 3019 6560 6581 6582 6561 +3037 3060 3061 3038 6581 6604 6605 6582 +3060 2492 3079 3061 6604 6629 6630 6605 +2484 3040 3041 3021 6563 6584 6585 6564 +3040 3063 3064 3041 6584 6607 6608 6585 +3063 2493 3081 3064 6607 6632 6633 6608 +3068 3085 3086 2487 6613 6638 6639 6614 +3085 3112 3113 3086 6638 6665 6666 6639 +3112 3140 2496 3113 6665 6694 6695 6666 +3070 3088 3089 2488 6616 6641 6642 6617 +3088 3115 3116 3089 6641 6668 6669 6642 +3115 3142 2497 3116 6668 6697 6698 6669 +3072 3091 3092 2489 6619 6644 6645 6620 +3091 3118 3119 3092 6644 6671 6672 6645 +3118 3144 2498 3119 6671 6700 6701 6672 +3074 3094 3095 2490 6622 6647 6648 6623 +3094 3121 3122 3095 6647 6674 6675 6648 +3121 3146 2499 3122 6674 6703 6704 6675 +3126 3125 3150 2501 6679 6678 6709 6710 +3076 3099 3100 2491 6625 6652 6653 6626 +3099 3128 3129 3100 6652 6681 6682 6653 +3128 3152 2502 3129 6681 6712 6713 6682 +3078 3102 3103 2492 6628 6655 6656 6629 +3102 3131 3132 3103 6655 6684 6685 6656 +3131 3154 2503 3132 6684 6715 6716 6685 +3080 3105 3106 2493 6631 6658 6659 6632 +3105 3134 3135 3106 6658 6687 6688 6659 +3134 3156 2504 3135 6687 6718 6719 6688 +3082 3108 3109 2494 6634 6661 6662 6635 +3108 3137 3138 3109 6661 6690 6691 6662 +3137 3158 2505 3138 6690 6721 6722 6691 +3067 3084 3085 3068 6612 6637 6638 6613 +3084 3111 3112 3085 6637 6664 6665 6638 +3111 3139 3140 3112 6664 6693 6694 6665 +3069 3087 3088 3070 6615 6640 6641 6616 +3087 3114 3115 3088 6640 6667 6668 6641 +3114 3141 3142 3115 6667 6696 6697 6668 +3071 3090 3091 3072 6618 6643 6644 6619 +3090 3117 3118 3091 6643 6670 6671 6644 +3117 3143 3144 3118 6670 6699 6700 6671 +3073 3093 3094 3074 6621 6646 6647 6622 +3093 3120 3121 3094 6646 6673 6674 6647 +3120 3145 3146 3121 6673 6702 6703 6674 +3097 3096 3125 3126 6650 6649 6678 6679 +3096 3123 3124 3125 6649 6676 6677 6678 +3125 3124 3149 3150 6678 6677 6708 6709 +3075 3098 3099 3076 6624 6651 6652 6625 +3098 3127 3128 3099 6651 6680 6681 6652 +3127 3151 3152 3128 6680 6711 6712 6681 +3077 3101 3102 3078 6627 6654 6655 6628 +3101 3130 3131 3102 6654 6683 6684 6655 +3130 3153 3154 3131 6683 6714 6715 6684 +3079 3104 3105 3080 6630 6657 6658 6631 +3104 3133 3134 3105 6657 6686 6687 6658 +3133 3155 3156 3134 6686 6717 6718 6687 +3081 3107 3108 3082 6633 6660 6661 6634 +3107 3136 3137 3108 6660 6689 6690 6661 +3136 3157 3158 3137 6689 6720 6721 6690 +2486 3083 3084 3067 6611 6636 6637 6612 +3083 3110 3111 3084 6636 6663 6664 6637 +3110 2495 3139 3111 6663 6692 6693 6664 +2487 3086 3087 3069 6614 6639 6640 6615 +3086 3113 3114 3087 6639 6666 6667 6640 +3113 2496 3141 3114 6666 6695 6696 6667 +2488 3089 3090 3071 6617 6642 6643 6618 +3089 3116 3117 3090 6642 6669 6670 6643 +3116 2497 3143 3117 6669 6698 6699 6670 +2489 3092 3093 3073 6620 6645 6646 6621 +3092 3119 3120 3093 6645 6672 6673 6646 +3119 2498 3145 3120 6672 6701 6702 6673 +2490 3095 3096 3097 6623 6648 6649 6650 +3095 3122 3123 3096 6648 6675 6676 6649 +3122 2499 3147 3123 6675 6704 6705 6676 +3123 3147 3148 3124 6676 6705 6706 6677 +3124 3148 2500 3149 6677 6706 6707 6708 +2490 3097 3098 3075 6623 6650 6651 6624 +3097 3126 3127 3098 6650 6679 6680 6651 +3126 2501 3151 3127 6679 6710 6711 6680 +2491 3100 3101 3077 6626 6653 6654 6627 +3100 3129 3130 3101 6653 6682 6683 6654 +3129 2502 3153 3130 6682 6713 6714 6683 +2492 3103 3104 3079 6629 6656 6657 6630 +3103 3132 3133 3104 6656 6685 6686 6657 +3132 2503 3155 3133 6685 6716 6717 6686 +2493 3106 3107 3081 6632 6659 6660 6633 +3106 3135 3136 3107 6659 6688 6689 6660 +3135 2504 3157 3136 6688 6719 6720 6689 +3140 3161 3162 2496 6694 6725 6726 6695 +3161 3194 3195 3162 6725 6758 6759 6726 +3194 3228 2507 3195 6758 6793 6794 6759 +3142 3164 3165 2497 6697 6728 6729 6698 +3164 3197 3198 3165 6728 6761 6762 6729 +3197 3230 2508 3198 6761 6796 6797 6762 +3144 3167 3168 2498 6700 6731 6732 6701 +3167 3200 3201 3168 6731 6764 6765 6732 +3200 3232 2509 3201 6764 6799 6800 6765 +3146 3170 3171 2499 6703 6734 6735 6704 +3170 3203 3204 3171 6734 6767 6768 6735 +3203 3234 2510 3204 6767 6802 6803 6768 +3148 3173 3174 2500 6706 6737 6738 6707 +3173 3206 3207 3174 6737 6770 6771 6738 +3206 3236 2511 3207 6770 6805 6806 6771 +3211 3210 3240 2513 6775 6774 6811 6812 +3150 3178 3179 2501 6709 6742 6743 6710 +3178 3213 3214 3179 6742 6777 6778 6743 +3213 3242 2514 3214 6777 6814 6815 6778 +3152 3181 3182 2502 6712 6745 6746 6713 +3181 3216 3217 3182 6745 6780 6781 6746 +3216 3244 2515 3217 6780 6817 6818 6781 +3154 3184 3185 2503 6715 6748 6749 6716 +3184 3219 3220 3185 6748 6783 6784 6749 +3219 3246 2516 3220 6783 6820 6821 6784 +3156 3187 3188 2504 6718 6751 6752 6719 +3187 3222 3223 3188 6751 6786 6787 6752 +3222 3248 2517 3223 6786 6823 6824 6787 +3158 3190 3191 2505 6721 6754 6755 6722 +3190 3225 3226 3191 6754 6789 6790 6755 +3225 3250 2518 3226 6789 6826 6827 6790 +3139 3160 3161 3140 6693 6724 6725 6694 +3160 3193 3194 3161 6724 6757 6758 6725 +3193 3227 3228 3194 6757 6792 6793 6758 +3141 3163 3164 3142 6696 6727 6728 6697 +3163 3196 3197 3164 6727 6760 6761 6728 +3196 3229 3230 3197 6760 6795 6796 6761 +3143 3166 3167 3144 6699 6730 6731 6700 +3166 3199 3200 3167 6730 6763 6764 6731 +3199 3231 3232 3200 6763 6798 6799 6764 +3145 3169 3170 3146 6702 6733 6734 6703 +3169 3202 3203 3170 6733 6766 6767 6734 +3202 3233 3234 3203 6766 6801 6802 6767 +3147 3172 3173 3148 6705 6736 6737 6706 +3172 3205 3206 3173 6736 6769 6770 6737 +3205 3235 3236 3206 6769 6804 6805 6770 +3176 3175 3210 3211 6740 6739 6774 6775 +3175 3208 3209 3210 6739 6772 6773 6774 +3210 3209 3239 3240 6774 6773 6810 6811 +3149 3177 3178 3150 6708 6741 6742 6709 +3177 3212 3213 3178 6741 6776 6777 6742 +3212 3241 3242 3213 6776 6813 6814 6777 +3151 3180 3181 3152 6711 6744 6745 6712 +3180 3215 3216 3181 6744 6779 6780 6745 +3215 3243 3244 3216 6779 6816 6817 6780 +3153 3183 3184 3154 6714 6747 6748 6715 +3183 3218 3219 3184 6747 6782 6783 6748 +3218 3245 3246 3219 6782 6819 6820 6783 +3155 3186 3187 3156 6717 6750 6751 6718 +3186 3221 3222 3187 6750 6785 6786 6751 +3221 3247 3248 3222 6785 6822 6823 6786 +3157 3189 3190 3158 6720 6753 6754 6721 +3189 3224 3225 3190 6753 6788 6789 6754 +3224 3249 3250 3225 6788 6825 6826 6789 +2495 3159 3160 3139 6692 6723 6724 6693 +3159 3192 3193 3160 6723 6756 6757 6724 +3192 2506 3227 3193 6756 6791 6792 6757 +2496 3162 3163 3141 6695 6726 6727 6696 +3162 3195 3196 3163 6726 6759 6760 6727 +3195 2507 3229 3196 6759 6794 6795 6760 +2497 3165 3166 3143 6698 6729 6730 6699 +3165 3198 3199 3166 6729 6762 6763 6730 +3198 2508 3231 3199 6762 6797 6798 6763 +2498 3168 3169 3145 6701 6732 6733 6702 +3168 3201 3202 3169 6732 6765 6766 6733 +3201 2509 3233 3202 6765 6800 6801 6766 +2499 3171 3172 3147 6704 6735 6736 6705 +3171 3204 3205 3172 6735 6768 6769 6736 +3204 2510 3235 3205 6768 6803 6804 6769 +2500 3174 3175 3176 6707 6738 6739 6740 +3174 3207 3208 3175 6738 6771 6772 6739 +3207 2511 3237 3208 6771 6806 6807 6772 +3208 3237 3238 3209 6772 6807 6808 6773 +3209 3238 2512 3239 6773 6808 6809 6810 +2500 3176 3177 3149 6707 6740 6741 6708 +3176 3211 3212 3177 6740 6775 6776 6741 +3211 2513 3241 3212 6775 6812 6813 6776 +2501 3179 3180 3151 6710 6743 6744 6711 +3179 3214 3215 3180 6743 6778 6779 6744 +3214 2514 3243 3215 6778 6815 6816 6779 +2502 3182 3183 3153 6713 6746 6747 6714 +3182 3217 3218 3183 6746 6781 6782 6747 +3217 2515 3245 3218 6781 6818 6819 6782 +2503 3185 3186 3155 6716 6749 6750 6717 +3185 3220 3221 3186 6749 6784 6785 6750 +3220 2516 3247 3221 6784 6821 6822 6785 +2504 3188 3189 3157 6719 6752 6753 6720 +3188 3223 3224 3189 6752 6787 6788 6753 +3223 2517 3249 3224 6787 6824 6825 6788 +3228 3253 3254 2507 6793 6830 6831 6794 +3253 3292 3293 3254 6830 6869 6870 6831 +3292 3332 2520 3293 6869 6910 6911 6870 +3230 3256 3257 2508 6796 6833 6834 6797 +3256 3295 3296 3257 6833 6872 6873 6834 +3295 3334 2521 3296 6872 6913 6914 6873 +3232 3259 3260 2509 6799 6836 6837 6800 +3259 3298 3299 3260 6836 6875 6876 6837 +3298 3336 2522 3299 6875 6916 6917 6876 +3234 3262 3263 2510 6802 6839 6840 6803 +3262 3301 3302 3263 6839 6878 6879 6840 +3301 3338 2523 3302 6878 6919 6920 6879 +3236 3265 3266 2511 6805 6842 6843 6806 +3265 3304 3305 3266 6842 6881 6882 6843 +3304 3340 2524 3305 6881 6922 6923 6882 +3238 3268 3269 2512 6808 6845 6846 6809 +3268 3307 3308 3269 6845 6884 6885 6846 +3307 3342 2525 3308 6884 6925 6926 6885 +3312 3311 3346 2527 6889 6888 6931 6932 +3240 3273 3274 2513 6811 6850 6851 6812 +3273 3314 3315 3274 6850 6891 6892 6851 +3314 3348 2528 3315 6891 6934 6935 6892 +3242 3276 3277 2514 6814 6853 6854 6815 +3276 3317 3318 3277 6853 6894 6895 6854 +3317 3350 2529 3318 6894 6937 6938 6895 +3244 3279 3280 2515 6817 6856 6857 6818 +3279 3320 3321 3280 6856 6897 6898 6857 +3320 3352 2530 3321 6897 6940 6941 6898 +3246 3282 3283 2516 6820 6859 6860 6821 +3282 3323 3324 3283 6859 6900 6901 6860 +3323 3354 2531 3324 6900 6943 6944 6901 +3248 3285 3286 2517 6823 6862 6863 6824 +3285 3326 3327 3286 6862 6903 6904 6863 +3326 3356 2532 3327 6903 6946 6947 6904 +3250 3288 3289 2518 6826 6865 6866 6827 +3288 3329 3330 3289 6865 6906 6907 6866 +3329 3358 2533 3330 6906 6949 6950 6907 +3227 3252 3253 3228 6792 6829 6830 6793 +3252 3291 3292 3253 6829 6868 6869 6830 +3291 3331 3332 3292 6868 6909 6910 6869 +3229 3255 3256 3230 6795 6832 6833 6796 +3255 3294 3295 3256 6832 6871 6872 6833 +3294 3333 3334 3295 6871 6912 6913 6872 +3231 3258 3259 3232 6798 6835 6836 6799 +3258 3297 3298 3259 6835 6874 6875 6836 +3297 3335 3336 3298 6874 6915 6916 6875 +3233 3261 3262 3234 6801 6838 6839 6802 +3261 3300 3301 3262 6838 6877 6878 6839 +3300 3337 3338 3301 6877 6918 6919 6878 +3235 3264 3265 3236 6804 6841 6842 6805 +3264 3303 3304 3265 6841 6880 6881 6842 +3303 3339 3340 3304 6880 6921 6922 6881 +3237 3267 3268 3238 6807 6844 6845 6808 +3267 3306 3307 3268 6844 6883 6884 6845 +3306 3341 3342 3307 6883 6924 6925 6884 +3271 3270 3311 3312 6848 6847 6888 6889 +3270 3309 3310 3311 6847 6886 6887 6888 +3311 3310 3345 3346 6888 6887 6930 6931 +3239 3272 3273 3240 6810 6849 6850 6811 +3272 3313 3314 3273 6849 6890 6891 6850 +3313 3347 3348 3314 6890 6933 6934 6891 +3241 3275 3276 3242 6813 6852 6853 6814 +3275 3316 3317 3276 6852 6893 6894 6853 +3316 3349 3350 3317 6893 6936 6937 6894 +3243 3278 3279 3244 6816 6855 6856 6817 +3278 3319 3320 3279 6855 6896 6897 6856 +3319 3351 3352 3320 6896 6939 6940 6897 +3245 3281 3282 3246 6819 6858 6859 6820 +3281 3322 3323 3282 6858 6899 6900 6859 +3322 3353 3354 3323 6899 6942 6943 6900 +3247 3284 3285 3248 6822 6861 6862 6823 +3284 3325 3326 3285 6861 6902 6903 6862 +3325 3355 3356 3326 6902 6945 6946 6903 +3249 3287 3288 3250 6825 6864 6865 6826 +3287 3328 3329 3288 6864 6905 6906 6865 +3328 3357 3358 3329 6905 6948 6949 6906 +2506 3251 3252 3227 6791 6828 6829 6792 +3251 3290 3291 3252 6828 6867 6868 6829 +3290 2519 3331 3291 6867 6908 6909 6868 +2507 3254 3255 3229 6794 6831 6832 6795 +3254 3293 3294 3255 6831 6870 6871 6832 +3293 2520 3333 3294 6870 6911 6912 6871 +2508 3257 3258 3231 6797 6834 6835 6798 +3257 3296 3297 3258 6834 6873 6874 6835 +3296 2521 3335 3297 6873 6914 6915 6874 +2509 3260 3261 3233 6800 6837 6838 6801 +3260 3299 3300 3261 6837 6876 6877 6838 +3299 2522 3337 3300 6876 6917 6918 6877 +2510 3263 3264 3235 6803 6840 6841 6804 +3263 3302 3303 3264 6840 6879 6880 6841 +3302 2523 3339 3303 6879 6920 6921 6880 +2511 3266 3267 3237 6806 6843 6844 6807 +3266 3305 3306 3267 6843 6882 6883 6844 +3305 2524 3341 3306 6882 6923 6924 6883 +2512 3269 3270 3271 6809 6846 6847 6848 +3269 3308 3309 3270 6846 6885 6886 6847 +3308 2525 3343 3309 6885 6926 6927 6886 +3309 3343 3344 3310 6886 6927 6928 6887 +3310 3344 2526 3345 6887 6928 6929 6930 +2512 3271 3272 3239 6809 6848 6849 6810 +3271 3312 3313 3272 6848 6889 6890 6849 +3312 2527 3347 3313 6889 6932 6933 6890 +2513 3274 3275 3241 6812 6851 6852 6813 +3274 3315 3316 3275 6851 6892 6893 6852 +3315 2528 3349 3316 6892 6935 6936 6893 +2514 3277 3278 3243 6815 6854 6855 6816 +3277 3318 3319 3278 6854 6895 6896 6855 +3318 2529 3351 3319 6895 6938 6939 6896 +2515 3280 3281 3245 6818 6857 6858 6819 +3280 3321 3322 3281 6857 6898 6899 6858 +3321 2530 3353 3322 6898 6941 6942 6899 +2516 3283 3284 3247 6821 6860 6861 6822 +3283 3324 3325 3284 6860 6901 6902 6861 +3324 2531 3355 3325 6901 6944 6945 6902 +2517 3286 3287 3249 6824 6863 6864 6825 +3286 3327 3328 3287 6863 6904 6905 6864 +3327 2532 3357 3328 6904 6947 6948 6905 +3332 3361 3362 2520 6910 6953 6954 6911 +3361 3406 3407 3362 6953 6998 6999 6954 +3406 3452 2535 3407 6998 7045 7046 6999 +3334 3364 3365 2521 6913 6956 6957 6914 +3364 3409 3410 3365 6956 7001 7002 6957 +3409 3454 2536 3410 7001 7048 7049 7002 +3336 3367 3368 2522 6916 6959 6960 6917 +3367 3412 3413 3368 6959 7004 7005 6960 +3412 3456 2537 3413 7004 7051 7052 7005 +3338 3370 3371 2523 6919 6962 6963 6920 +3370 3415 3416 3371 6962 7007 7008 6963 +3415 3458 2538 3416 7007 7054 7055 7008 +3340 3373 3374 2524 6922 6965 6966 6923 +3373 3418 3419 3374 6965 7010 7011 6966 +3418 3460 2539 3419 7010 7057 7058 7011 +3342 3376 3377 2525 6925 6968 6969 6926 +3376 3421 3422 3377 6968 7013 7014 6969 +3421 3462 2540 3422 7013 7060 7061 7014 +3344 3379 3380 2526 6928 6971 6972 6929 +3379 3424 3425 3380 6971 7016 7017 6972 +3424 3464 2541 3425 7016 7063 7064 7017 +3429 3428 3468 2543 7021 7020 7069 7070 +3346 3384 3385 2527 6931 6976 6977 6932 +3384 3431 3432 3385 6976 7023 7024 6977 +3431 3470 2544 3432 7023 7072 7073 7024 +3348 3387 3388 2528 6934 6979 6980 6935 +3387 3434 3435 3388 6979 7026 7027 6980 +3434 3472 2545 3435 7026 7075 7076 7027 +3350 3390 3391 2529 6937 6982 6983 6938 +3390 3437 3438 3391 6982 7029 7030 6983 +3437 3474 2546 3438 7029 7078 7079 7030 +3352 3393 3394 2530 6940 6985 6986 6941 +3393 3440 3441 3394 6985 7032 7033 6986 +3440 3476 2547 3441 7032 7081 7082 7033 +3354 3396 3397 2531 6943 6988 6989 6944 +3396 3443 3444 3397 6988 7035 7036 6989 +3443 3478 2548 3444 7035 7084 7085 7036 +3356 3399 3400 2532 6946 6991 6992 6947 +3399 3446 3447 3400 6991 7038 7039 6992 +3446 3480 2549 3447 7038 7087 7088 7039 +3358 3402 3403 2533 6949 6994 6995 6950 +3402 3449 3450 3403 6994 7041 7042 6995 +3449 3482 2550 3450 7041 7090 7091 7042 +3331 3360 3361 3332 6909 6952 6953 6910 +3360 3405 3406 3361 6952 6997 6998 6953 +3405 3451 3452 3406 6997 7044 7045 6998 +3333 3363 3364 3334 6912 6955 6956 6913 +3363 3408 3409 3364 6955 7000 7001 6956 +3408 3453 3454 3409 7000 7047 7048 7001 +3335 3366 3367 3336 6915 6958 6959 6916 +3366 3411 3412 3367 6958 7003 7004 6959 +3411 3455 3456 3412 7003 7050 7051 7004 +3337 3369 3370 3338 6918 6961 6962 6919 +3369 3414 3415 3370 6961 7006 7007 6962 +3414 3457 3458 3415 7006 7053 7054 7007 +3339 3372 3373 3340 6921 6964 6965 6922 +3372 3417 3418 3373 6964 7009 7010 6965 +3417 3459 3460 3418 7009 7056 7057 7010 +3341 3375 3376 3342 6924 6967 6968 6925 +3375 3420 3421 3376 6967 7012 7013 6968 +3420 3461 3462 3421 7012 7059 7060 7013 +3343 3378 3379 3344 6927 6970 6971 6928 +3378 3423 3424 3379 6970 7015 7016 6971 +3423 3463 3464 3424 7015 7062 7063 7016 +3382 3381 3428 3429 6974 6973 7020 7021 +3381 3426 3427 3428 6973 7018 7019 7020 +3428 3427 3467 3468 7020 7019 7068 7069 +3345 3383 3384 3346 6930 6975 6976 6931 +3383 3430 3431 3384 6975 7022 7023 6976 +3430 3469 3470 3431 7022 7071 7072 7023 +3347 3386 3387 3348 6933 6978 6979 6934 +3386 3433 3434 3387 6978 7025 7026 6979 +3433 3471 3472 3434 7025 7074 7075 7026 +3349 3389 3390 3350 6936 6981 6982 6937 +3389 3436 3437 3390 6981 7028 7029 6982 +3436 3473 3474 3437 7028 7077 7078 7029 +3351 3392 3393 3352 6939 6984 6985 6940 +3392 3439 3440 3393 6984 7031 7032 6985 +3439 3475 3476 3440 7031 7080 7081 7032 +3353 3395 3396 3354 6942 6987 6988 6943 +3395 3442 3443 3396 6987 7034 7035 6988 +3442 3477 3478 3443 7034 7083 7084 7035 +3355 3398 3399 3356 6945 6990 6991 6946 +3398 3445 3446 3399 6990 7037 7038 6991 +3445 3479 3480 3446 7037 7086 7087 7038 +3357 3401 3402 3358 6948 6993 6994 6949 +3401 3448 3449 3402 6993 7040 7041 6994 +3448 3481 3482 3449 7040 7089 7090 7041 +2519 3359 3360 3331 6908 6951 6952 6909 +3359 3404 3405 3360 6951 6996 6997 6952 +3404 2534 3451 3405 6996 7043 7044 6997 +2520 3362 3363 3333 6911 6954 6955 6912 +3362 3407 3408 3363 6954 6999 7000 6955 +3407 2535 3453 3408 6999 7046 7047 7000 +2521 3365 3366 3335 6914 6957 6958 6915 +3365 3410 3411 3366 6957 7002 7003 6958 +3410 2536 3455 3411 7002 7049 7050 7003 +2522 3368 3369 3337 6917 6960 6961 6918 +3368 3413 3414 3369 6960 7005 7006 6961 +3413 2537 3457 3414 7005 7052 7053 7006 +2523 3371 3372 3339 6920 6963 6964 6921 +3371 3416 3417 3372 6963 7008 7009 6964 +3416 2538 3459 3417 7008 7055 7056 7009 +2524 3374 3375 3341 6923 6966 6967 6924 +3374 3419 3420 3375 6966 7011 7012 6967 +3419 2539 3461 3420 7011 7058 7059 7012 +2525 3377 3378 3343 6926 6969 6970 6927 +3377 3422 3423 3378 6969 7014 7015 6970 +3422 2540 3463 3423 7014 7061 7062 7015 +2526 3380 3381 3382 6929 6972 6973 6974 +3380 3425 3426 3381 6972 7017 7018 6973 +3425 2541 3465 3426 7017 7064 7065 7018 +3426 3465 3466 3427 7018 7065 7066 7019 +3427 3466 2542 3467 7019 7066 7067 7068 +2526 3382 3383 3345 6929 6974 6975 6930 +3382 3429 3430 3383 6974 7021 7022 6975 +3429 2543 3469 3430 7021 7070 7071 7022 +2527 3385 3386 3347 6932 6977 6978 6933 +3385 3432 3433 3386 6977 7024 7025 6978 +3432 2544 3471 3433 7024 7073 7074 7025 +2528 3388 3389 3349 6935 6980 6981 6936 +3388 3435 3436 3389 6980 7027 7028 6981 +3435 2545 3473 3436 7027 7076 7077 7028 +2529 3391 3392 3351 6938 6983 6984 6939 +3391 3438 3439 3392 6983 7030 7031 6984 +3438 2546 3475 3439 7030 7079 7080 7031 +2530 3394 3395 3353 6941 6986 6987 6942 +3394 3441 3442 3395 6986 7033 7034 6987 +3441 2547 3477 3442 7033 7082 7083 7034 +2531 3397 3398 3355 6944 6989 6990 6945 +3397 3444 3445 3398 6989 7036 7037 6990 +3444 2548 3479 3445 7036 7085 7086 7037 +2532 3400 3401 3357 6947 6992 6993 6948 +3400 3447 3448 3401 6992 7039 7040 6993 +3447 2549 3481 3448 7039 7088 7089 7040 +3452 3485 3486 2535 7045 7094 7095 7046 +3485 3536 3537 3486 7094 7145 7146 7095 +3536 3588 2552 3537 7145 7198 7199 7146 +3454 3488 3489 2536 7048 7097 7098 7049 +3488 3539 3540 3489 7097 7148 7149 7098 +3539 3590 2553 3540 7148 7201 7202 7149 +3456 3491 3492 2537 7051 7100 7101 7052 +3491 3542 3543 3492 7100 7151 7152 7101 +3542 3592 2554 3543 7151 7204 7205 7152 +3458 3494 3495 2538 7054 7103 7104 7055 +3494 3545 3546 3495 7103 7154 7155 7104 +3545 3594 2555 3546 7154 7207 7208 7155 +3460 3497 3498 2539 7057 7106 7107 7058 +3497 3548 3549 3498 7106 7157 7158 7107 +3548 3596 2556 3549 7157 7210 7211 7158 +3462 3500 3501 2540 7060 7109 7110 7061 +3500 3551 3552 3501 7109 7160 7161 7110 +3551 3598 2557 3552 7160 7213 7214 7161 +3464 3503 3504 2541 7063 7112 7113 7064 +3503 3554 3555 3504 7112 7163 7164 7113 +3554 3600 2558 3555 7163 7216 7217 7164 +3466 3506 3507 2542 7066 7115 7116 7067 +3506 3557 3558 3507 7115 7166 7167 7116 +3557 3602 2559 3558 7166 7219 7220 7167 +3562 3561 3606 2561 7171 7170 7225 7226 +3468 3511 3512 2543 7069 7120 7121 7070 +3511 3564 3565 3512 7120 7173 7174 7121 +3564 3608 2562 3565 7173 7228 7229 7174 +3470 3514 3515 2544 7072 7123 7124 7073 +3514 3567 3568 3515 7123 7176 7177 7124 +3567 3610 2563 3568 7176 7231 7232 7177 +3472 3517 3518 2545 7075 7126 7127 7076 +3517 3570 3571 3518 7126 7179 7180 7127 +3570 3612 2564 3571 7179 7234 7235 7180 +3474 3520 3521 2546 7078 7129 7130 7079 +3520 3573 3574 3521 7129 7182 7183 7130 +3573 3614 2565 3574 7182 7237 7238 7183 +3476 3523 3524 2547 7081 7132 7133 7082 +3523 3576 3577 3524 7132 7185 7186 7133 +3576 3616 2566 3577 7185 7240 7241 7186 +3478 3526 3527 2548 7084 7135 7136 7085 +3526 3579 3580 3527 7135 7188 7189 7136 +3579 3618 2567 3580 7188 7243 7244 7189 +3480 3529 3530 2549 7087 7138 7139 7088 +3529 3582 3583 3530 7138 7191 7192 7139 +3582 3620 2568 3583 7191 7246 7247 7192 +3482 3532 3533 2550 7090 7141 7142 7091 +3532 3585 3586 3533 7141 7194 7195 7142 +3585 3622 2569 3586 7194 7249 7250 7195 +3451 3484 3485 3452 7044 7093 7094 7045 +3484 3535 3536 3485 7093 7144 7145 7094 +3535 3587 3588 3536 7144 7197 7198 7145 +3453 3487 3488 3454 7047 7096 7097 7048 +3487 3538 3539 3488 7096 7147 7148 7097 +3538 3589 3590 3539 7147 7200 7201 7148 +3455 3490 3491 3456 7050 7099 7100 7051 +3490 3541 3542 3491 7099 7150 7151 7100 +3541 3591 3592 3542 7150 7203 7204 7151 +3457 3493 3494 3458 7053 7102 7103 7054 +3493 3544 3545 3494 7102 7153 7154 7103 +3544 3593 3594 3545 7153 7206 7207 7154 +3459 3496 3497 3460 7056 7105 7106 7057 +3496 3547 3548 3497 7105 7156 7157 7106 +3547 3595 3596 3548 7156 7209 7210 7157 +3461 3499 3500 3462 7059 7108 7109 7060 +3499 3550 3551 3500 7108 7159 7160 7109 +3550 3597 3598 3551 7159 7212 7213 7160 +3463 3502 3503 3464 7062 7111 7112 7063 +3502 3553 3554 3503 7111 7162 7163 7112 +3553 3599 3600 3554 7162 7215 7216 7163 +3465 3505 3506 3466 7065 7114 7115 7066 +3505 3556 3557 3506 7114 7165 7166 7115 +3556 3601 3602 3557 7165 7218 7219 7166 +3509 3508 3561 3562 7118 7117 7170 7171 +3508 3559 3560 3561 7117 7168 7169 7170 +3561 3560 3605 3606 7170 7169 7224 7225 +3467 3510 3511 3468 7068 7119 7120 7069 +3510 3563 3564 3511 7119 7172 7173 7120 +3563 3607 3608 3564 7172 7227 7228 7173 +3469 3513 3514 3470 7071 7122 7123 7072 +3513 3566 3567 3514 7122 7175 7176 7123 +3566 3609 3610 3567 7175 7230 7231 7176 +3471 3516 3517 3472 7074 7125 7126 7075 +3516 3569 3570 3517 7125 7178 7179 7126 +3569 3611 3612 3570 7178 7233 7234 7179 +3473 3519 3520 3474 7077 7128 7129 7078 +3519 3572 3573 3520 7128 7181 7182 7129 +3572 3613 3614 3573 7181 7236 7237 7182 +3475 3522 3523 3476 7080 7131 7132 7081 +3522 3575 3576 3523 7131 7184 7185 7132 +3575 3615 3616 3576 7184 7239 7240 7185 +3477 3525 3526 3478 7083 7134 7135 7084 +3525 3578 3579 3526 7134 7187 7188 7135 +3578 3617 3618 3579 7187 7242 7243 7188 +3479 3528 3529 3480 7086 7137 7138 7087 +3528 3581 3582 3529 7137 7190 7191 7138 +3581 3619 3620 3582 7190 7245 7246 7191 +3481 3531 3532 3482 7089 7140 7141 7090 +3531 3584 3585 3532 7140 7193 7194 7141 +3584 3621 3622 3585 7193 7248 7249 7194 +2534 3483 3484 3451 7043 7092 7093 7044 +3483 3534 3535 3484 7092 7143 7144 7093 +3534 2551 3587 3535 7143 7196 7197 7144 +2535 3486 3487 3453 7046 7095 7096 7047 +3486 3537 3538 3487 7095 7146 7147 7096 +3537 2552 3589 3538 7146 7199 7200 7147 +2536 3489 3490 3455 7049 7098 7099 7050 +3489 3540 3541 3490 7098 7149 7150 7099 +3540 2553 3591 3541 7149 7202 7203 7150 +2537 3492 3493 3457 7052 7101 7102 7053 +3492 3543 3544 3493 7101 7152 7153 7102 +3543 2554 3593 3544 7152 7205 7206 7153 +2538 3495 3496 3459 7055 7104 7105 7056 +3495 3546 3547 3496 7104 7155 7156 7105 +3546 2555 3595 3547 7155 7208 7209 7156 +2539 3498 3499 3461 7058 7107 7108 7059 +3498 3549 3550 3499 7107 7158 7159 7108 +3549 2556 3597 3550 7158 7211 7212 7159 +2540 3501 3502 3463 7061 7110 7111 7062 +3501 3552 3553 3502 7110 7161 7162 7111 +3552 2557 3599 3553 7161 7214 7215 7162 +2541 3504 3505 3465 7064 7113 7114 7065 +3504 3555 3556 3505 7113 7164 7165 7114 +3555 2558 3601 3556 7164 7217 7218 7165 +2542 3507 3508 3509 7067 7116 7117 7118 +3507 3558 3559 3508 7116 7167 7168 7117 +3558 2559 3603 3559 7167 7220 7221 7168 +3559 3603 3604 3560 7168 7221 7222 7169 +3560 3604 2560 3605 7169 7222 7223 7224 +2542 3509 3510 3467 7067 7118 7119 7068 +3509 3562 3563 3510 7118 7171 7172 7119 +3562 2561 3607 3563 7171 7226 7227 7172 +2543 3512 3513 3469 7070 7121 7122 7071 +3512 3565 3566 3513 7121 7174 7175 7122 +3565 2562 3609 3566 7174 7229 7230 7175 +2544 3515 3516 3471 7073 7124 7125 7074 +3515 3568 3569 3516 7124 7177 7178 7125 +3568 2563 3611 3569 7177 7232 7233 7178 +2545 3518 3519 3473 7076 7127 7128 7077 +3518 3571 3572 3519 7127 7180 7181 7128 +3571 2564 3613 3572 7180 7235 7236 7181 +2546 3521 3522 3475 7079 7130 7131 7080 +3521 3574 3575 3522 7130 7183 7184 7131 +3574 2565 3615 3575 7183 7238 7239 7184 +2547 3524 3525 3477 7082 7133 7134 7083 +3524 3577 3578 3525 7133 7186 7187 7134 +3577 2566 3617 3578 7186 7241 7242 7187 +2548 3527 3528 3479 7085 7136 7137 7086 +3527 3580 3581 3528 7136 7189 7190 7137 +3580 2567 3619 3581 7189 7244 7245 7190 +2549 3530 3531 3481 7088 7139 7140 7089 +3530 3583 3584 3531 7139 7192 7193 7140 +3583 2568 3621 3584 7192 7247 7248 7193 +3588 3625 3626 2552 7198 7253 7254 7199 +3625 3682 3683 3626 7253 7310 7311 7254 +3682 3740 2571 3683 7310 7369 7370 7311 +3590 3628 3629 2553 7201 7256 7257 7202 +3628 3685 3686 3629 7256 7313 7314 7257 +3685 3742 2572 3686 7313 7372 7373 7314 +3592 3631 3632 2554 7204 7259 7260 7205 +3631 3688 3689 3632 7259 7316 7317 7260 +3688 3744 2573 3689 7316 7375 7376 7317 +3594 3634 3635 2555 7207 7262 7263 7208 +3634 3691 3692 3635 7262 7319 7320 7263 +3691 3746 2574 3692 7319 7378 7379 7320 +3596 3637 3638 2556 7210 7265 7266 7211 +3637 3694 3695 3638 7265 7322 7323 7266 +3694 3748 2575 3695 7322 7381 7382 7323 +3598 3640 3641 2557 7213 7268 7269 7214 +3640 3697 3698 3641 7268 7325 7326 7269 +3697 3750 2576 3698 7325 7384 7385 7326 +3600 3643 3644 2558 7216 7271 7272 7217 +3643 3700 3701 3644 7271 7328 7329 7272 +3700 3752 2577 3701 7328 7387 7388 7329 +3602 3646 3647 2559 7219 7274 7275 7220 +3646 3703 3704 3647 7274 7331 7332 7275 +3703 3754 2578 3704 7331 7390 7391 7332 +3604 3649 3650 2560 7222 7277 7278 7223 +3649 3706 3707 3650 7277 7334 7335 7278 +3706 3756 2579 3707 7334 7393 7394 7335 +3711 3710 3760 2581 7339 7338 7399 7400 +3606 3654 3655 2561 7225 7282 7283 7226 +3654 3713 3714 3655 7282 7341 7342 7283 +3713 3762 2582 3714 7341 7402 7403 7342 +3608 3657 3658 2562 7228 7285 7286 7229 +3657 3716 3717 3658 7285 7344 7345 7286 +3716 3764 2583 3717 7344 7405 7406 7345 +3610 3660 3661 2563 7231 7288 7289 7232 +3660 3719 3720 3661 7288 7347 7348 7289 +3719 3766 2584 3720 7347 7408 7409 7348 +3612 3663 3664 2564 7234 7291 7292 7235 +3663 3722 3723 3664 7291 7350 7351 7292 +3722 3768 2585 3723 7350 7411 7412 7351 +3614 3666 3667 2565 7237 7294 7295 7238 +3666 3725 3726 3667 7294 7353 7354 7295 +3725 3770 2586 3726 7353 7414 7415 7354 +3616 3669 3670 2566 7240 7297 7298 7241 +3669 3728 3729 3670 7297 7356 7357 7298 +3728 3772 2587 3729 7356 7417 7418 7357 +3618 3672 3673 2567 7243 7300 7301 7244 +3672 3731 3732 3673 7300 7359 7360 7301 +3731 3774 2588 3732 7359 7420 7421 7360 +3620 3675 3676 2568 7246 7303 7304 7247 +3675 3734 3735 3676 7303 7362 7363 7304 +3734 3776 2589 3735 7362 7423 7424 7363 +3622 3678 3679 2569 7249 7306 7307 7250 +3678 3737 3738 3679 7306 7365 7366 7307 +3737 3778 2590 3738 7365 7426 7427 7366 +3587 3624 3625 3588 7197 7252 7253 7198 +3624 3681 3682 3625 7252 7309 7310 7253 +3681 3739 3740 3682 7309 7368 7369 7310 +3589 3627 3628 3590 7200 7255 7256 7201 +3627 3684 3685 3628 7255 7312 7313 7256 +3684 3741 3742 3685 7312 7371 7372 7313 +3591 3630 3631 3592 7203 7258 7259 7204 +3630 3687 3688 3631 7258 7315 7316 7259 +3687 3743 3744 3688 7315 7374 7375 7316 +3593 3633 3634 3594 7206 7261 7262 7207 +3633 3690 3691 3634 7261 7318 7319 7262 +3690 3745 3746 3691 7318 7377 7378 7319 +3595 3636 3637 3596 7209 7264 7265 7210 +3636 3693 3694 3637 7264 7321 7322 7265 +3693 3747 3748 3694 7321 7380 7381 7322 +3597 3639 3640 3598 7212 7267 7268 7213 +3639 3696 3697 3640 7267 7324 7325 7268 +3696 3749 3750 3697 7324 7383 7384 7325 +3599 3642 3643 3600 7215 7270 7271 7216 +3642 3699 3700 3643 7270 7327 7328 7271 +3699 3751 3752 3700 7327 7386 7387 7328 +3601 3645 3646 3602 7218 7273 7274 7219 +3645 3702 3703 3646 7273 7330 7331 7274 +3702 3753 3754 3703 7330 7389 7390 7331 +3603 3648 3649 3604 7221 7276 7277 7222 +3648 3705 3706 3649 7276 7333 7334 7277 +3705 3755 3756 3706 7333 7392 7393 7334 +3652 3651 3710 3711 7280 7279 7338 7339 +3651 3708 3709 3710 7279 7336 7337 7338 +3710 3709 3759 3760 7338 7337 7398 7399 +3605 3653 3654 3606 7224 7281 7282 7225 +3653 3712 3713 3654 7281 7340 7341 7282 +3712 3761 3762 3713 7340 7401 7402 7341 +3607 3656 3657 3608 7227 7284 7285 7228 +3656 3715 3716 3657 7284 7343 7344 7285 +3715 3763 3764 3716 7343 7404 7405 7344 +3609 3659 3660 3610 7230 7287 7288 7231 +3659 3718 3719 3660 7287 7346 7347 7288 +3718 3765 3766 3719 7346 7407 7408 7347 +3611 3662 3663 3612 7233 7290 7291 7234 +3662 3721 3722 3663 7290 7349 7350 7291 +3721 3767 3768 3722 7349 7410 7411 7350 +3613 3665 3666 3614 7236 7293 7294 7237 +3665 3724 3725 3666 7293 7352 7353 7294 +3724 3769 3770 3725 7352 7413 7414 7353 +3615 3668 3669 3616 7239 7296 7297 7240 +3668 3727 3728 3669 7296 7355 7356 7297 +3727 3771 3772 3728 7355 7416 7417 7356 +3617 3671 3672 3618 7242 7299 7300 7243 +3671 3730 3731 3672 7299 7358 7359 7300 +3730 3773 3774 3731 7358 7419 7420 7359 +3619 3674 3675 3620 7245 7302 7303 7246 +3674 3733 3734 3675 7302 7361 7362 7303 +3733 3775 3776 3734 7361 7422 7423 7362 +3621 3677 3678 3622 7248 7305 7306 7249 +3677 3736 3737 3678 7305 7364 7365 7306 +3736 3777 3778 3737 7364 7425 7426 7365 +2551 3623 3624 3587 7196 7251 7252 7197 +3623 3680 3681 3624 7251 7308 7309 7252 +3680 2570 3739 3681 7308 7367 7368 7309 +2552 3626 3627 3589 7199 7254 7255 7200 +3626 3683 3684 3627 7254 7311 7312 7255 +3683 2571 3741 3684 7311 7370 7371 7312 +2553 3629 3630 3591 7202 7257 7258 7203 +3629 3686 3687 3630 7257 7314 7315 7258 +3686 2572 3743 3687 7314 7373 7374 7315 +2554 3632 3633 3593 7205 7260 7261 7206 +3632 3689 3690 3633 7260 7317 7318 7261 +3689 2573 3745 3690 7317 7376 7377 7318 +2555 3635 3636 3595 7208 7263 7264 7209 +3635 3692 3693 3636 7263 7320 7321 7264 +3692 2574 3747 3693 7320 7379 7380 7321 +2556 3638 3639 3597 7211 7266 7267 7212 +3638 3695 3696 3639 7266 7323 7324 7267 +3695 2575 3749 3696 7323 7382 7383 7324 +2557 3641 3642 3599 7214 7269 7270 7215 +3641 3698 3699 3642 7269 7326 7327 7270 +3698 2576 3751 3699 7326 7385 7386 7327 +2558 3644 3645 3601 7217 7272 7273 7218 +3644 3701 3702 3645 7272 7329 7330 7273 +3701 2577 3753 3702 7329 7388 7389 7330 +2559 3647 3648 3603 7220 7275 7276 7221 +3647 3704 3705 3648 7275 7332 7333 7276 +3704 2578 3755 3705 7332 7391 7392 7333 +2560 3650 3651 3652 7223 7278 7279 7280 +3650 3707 3708 3651 7278 7335 7336 7279 +3707 2579 3757 3708 7335 7394 7395 7336 +3708 3757 3758 3709 7336 7395 7396 7337 +3709 3758 2580 3759 7337 7396 7397 7398 +2560 3652 3653 3605 7223 7280 7281 7224 +3652 3711 3712 3653 7280 7339 7340 7281 +3711 2581 3761 3712 7339 7400 7401 7340 +2561 3655 3656 3607 7226 7283 7284 7227 +3655 3714 3715 3656 7283 7342 7343 7284 +3714 2582 3763 3715 7342 7403 7404 7343 +2562 3658 3659 3609 7229 7286 7287 7230 +3658 3717 3718 3659 7286 7345 7346 7287 +3717 2583 3765 3718 7345 7406 7407 7346 +2563 3661 3662 3611 7232 7289 7290 7233 +3661 3720 3721 3662 7289 7348 7349 7290 +3720 2584 3767 3721 7348 7409 7410 7349 +2564 3664 3665 3613 7235 7292 7293 7236 +3664 3723 3724 3665 7292 7351 7352 7293 +3723 2585 3769 3724 7351 7412 7413 7352 +2565 3667 3668 3615 7238 7295 7296 7239 +3667 3726 3727 3668 7295 7354 7355 7296 +3726 2586 3771 3727 7354 7415 7416 7355 +2566 3670 3671 3617 7241 7298 7299 7242 +3670 3729 3730 3671 7298 7357 7358 7299 +3729 2587 3773 3730 7357 7418 7419 7358 +2567 3673 3674 3619 7244 7301 7302 7245 +3673 3732 3733 3674 7301 7360 7361 7302 +3732 2588 3775 3733 7360 7421 7422 7361 +2568 3676 3677 3621 7247 7304 7305 7248 +3676 3735 3736 3677 7304 7363 7364 7305 +3735 2589 3777 3736 7363 7424 7425 7364 +3740 3781 3782 2571 7369 7430 7431 7370 +3781 3844 3845 3782 7430 7493 7494 7431 +3844 3908 2592 3845 7493 7558 7559 7494 +3742 3784 3785 2572 7372 7433 7434 7373 +3784 3847 3848 3785 7433 7496 7497 7434 +3847 3910 2593 3848 7496 7561 7562 7497 +3744 3787 3788 2573 7375 7436 7437 7376 +3787 3850 3851 3788 7436 7499 7500 7437 +3850 3912 2594 3851 7499 7564 7565 7500 +3746 3790 3791 2574 7378 7439 7440 7379 +3790 3853 3854 3791 7439 7502 7503 7440 +3853 3914 2595 3854 7502 7567 7568 7503 +3748 3793 3794 2575 7381 7442 7443 7382 +3793 3856 3857 3794 7442 7505 7506 7443 +3856 3916 2596 3857 7505 7570 7571 7506 +3750 3796 3797 2576 7384 7445 7446 7385 +3796 3859 3860 3797 7445 7508 7509 7446 +3859 3918 2597 3860 7508 7573 7574 7509 +3752 3799 3800 2577 7387 7448 7449 7388 +3799 3862 3863 3800 7448 7511 7512 7449 +3862 3920 2598 3863 7511 7576 7577 7512 +3754 3802 3803 2578 7390 7451 7452 7391 +3802 3865 3866 3803 7451 7514 7515 7452 +3865 3922 2599 3866 7514 7579 7580 7515 +3756 3805 3806 2579 7393 7454 7455 7394 +3805 3868 3869 3806 7454 7517 7518 7455 +3868 3924 2600 3869 7517 7582 7583 7518 +3758 3808 3809 2580 7396 7457 7458 7397 +3808 3871 3872 3809 7457 7520 7521 7458 +3871 3926 2601 3872 7520 7585 7586 7521 +3876 3875 3930 2603 7525 7524 7591 7592 +3760 3813 3814 2581 7399 7462 7463 7400 +3813 3878 3879 3814 7462 7527 7528 7463 +3878 3932 2604 3879 7527 7594 7595 7528 +3762 3816 3817 2582 7402 7465 7466 7403 +3816 3881 3882 3817 7465 7530 7531 7466 +3881 3934 2605 3882 7530 7597 7598 7531 +3764 3819 3820 2583 7405 7468 7469 7406 +3819 3884 3885 3820 7468 7533 7534 7469 +3884 3936 2606 3885 7533 7600 7601 7534 +3766 3822 3823 2584 7408 7471 7472 7409 +3822 3887 3888 3823 7471 7536 7537 7472 +3887 3938 2607 3888 7536 7603 7604 7537 +3768 3825 3826 2585 7411 7474 7475 7412 +3825 3890 3891 3826 7474 7539 7540 7475 +3890 3940 2608 3891 7539 7606 7607 7540 +3770 3828 3829 2586 7414 7477 7478 7415 +3828 3893 3894 3829 7477 7542 7543 7478 +3893 3942 2609 3894 7542 7609 7610 7543 +3772 3831 3832 2587 7417 7480 7481 7418 +3831 3896 3897 3832 7480 7545 7546 7481 +3896 3944 2610 3897 7545 7612 7613 7546 +3774 3834 3835 2588 7420 7483 7484 7421 +3834 3899 3900 3835 7483 7548 7549 7484 +3899 3946 2611 3900 7548 7615 7616 7549 +3776 3837 3838 2589 7423 7486 7487 7424 +3837 3902 3903 3838 7486 7551 7552 7487 +3902 3948 2612 3903 7551 7618 7619 7552 +3778 3840 3841 2590 7426 7489 7490 7427 +3840 3905 3906 3841 7489 7554 7555 7490 +3905 3950 2613 3906 7554 7621 7622 7555 +3739 3780 3781 3740 7368 7429 7430 7369 +3780 3843 3844 3781 7429 7492 7493 7430 +3843 3907 3908 3844 7492 7557 7558 7493 +3741 3783 3784 3742 7371 7432 7433 7372 +3783 3846 3847 3784 7432 7495 7496 7433 +3846 3909 3910 3847 7495 7560 7561 7496 +3743 3786 3787 3744 7374 7435 7436 7375 +3786 3849 3850 3787 7435 7498 7499 7436 +3849 3911 3912 3850 7498 7563 7564 7499 +3745 3789 3790 3746 7377 7438 7439 7378 +3789 3852 3853 3790 7438 7501 7502 7439 +3852 3913 3914 3853 7501 7566 7567 7502 +3747 3792 3793 3748 7380 7441 7442 7381 +3792 3855 3856 3793 7441 7504 7505 7442 +3855 3915 3916 3856 7504 7569 7570 7505 +3749 3795 3796 3750 7383 7444 7445 7384 +3795 3858 3859 3796 7444 7507 7508 7445 +3858 3917 3918 3859 7507 7572 7573 7508 +3751 3798 3799 3752 7386 7447 7448 7387 +3798 3861 3862 3799 7447 7510 7511 7448 +3861 3919 3920 3862 7510 7575 7576 7511 +3753 3801 3802 3754 7389 7450 7451 7390 +3801 3864 3865 3802 7450 7513 7514 7451 +3864 3921 3922 3865 7513 7578 7579 7514 +3755 3804 3805 3756 7392 7453 7454 7393 +3804 3867 3868 3805 7453 7516 7517 7454 +3867 3923 3924 3868 7516 7581 7582 7517 +3757 3807 3808 3758 7395 7456 7457 7396 +3807 3870 3871 3808 7456 7519 7520 7457 +3870 3925 3926 3871 7519 7584 7585 7520 +3811 3810 3875 3876 7460 7459 7524 7525 +3810 3873 3874 3875 7459 7522 7523 7524 +3875 3874 3929 3930 7524 7523 7590 7591 +3759 3812 3813 3760 7398 7461 7462 7399 +3812 3877 3878 3813 7461 7526 7527 7462 +3877 3931 3932 3878 7526 7593 7594 7527 +3761 3815 3816 3762 7401 7464 7465 7402 +3815 3880 3881 3816 7464 7529 7530 7465 +3880 3933 3934 3881 7529 7596 7597 7530 +3763 3818 3819 3764 7404 7467 7468 7405 +3818 3883 3884 3819 7467 7532 7533 7468 +3883 3935 3936 3884 7532 7599 7600 7533 +3765 3821 3822 3766 7407 7470 7471 7408 +3821 3886 3887 3822 7470 7535 7536 7471 +3886 3937 3938 3887 7535 7602 7603 7536 +3767 3824 3825 3768 7410 7473 7474 7411 +3824 3889 3890 3825 7473 7538 7539 7474 +3889 3939 3940 3890 7538 7605 7606 7539 +3769 3827 3828 3770 7413 7476 7477 7414 +3827 3892 3893 3828 7476 7541 7542 7477 +3892 3941 3942 3893 7541 7608 7609 7542 +3771 3830 3831 3772 7416 7479 7480 7417 +3830 3895 3896 3831 7479 7544 7545 7480 +3895 3943 3944 3896 7544 7611 7612 7545 +3773 3833 3834 3774 7419 7482 7483 7420 +3833 3898 3899 3834 7482 7547 7548 7483 +3898 3945 3946 3899 7547 7614 7615 7548 +3775 3836 3837 3776 7422 7485 7486 7423 +3836 3901 3902 3837 7485 7550 7551 7486 +3901 3947 3948 3902 7550 7617 7618 7551 +3777 3839 3840 3778 7425 7488 7489 7426 +3839 3904 3905 3840 7488 7553 7554 7489 +3904 3949 3950 3905 7553 7620 7621 7554 +2570 3779 3780 3739 7367 7428 7429 7368 +3779 3842 3843 3780 7428 7491 7492 7429 +3842 2591 3907 3843 7491 7556 7557 7492 +2571 3782 3783 3741 7370 7431 7432 7371 +3782 3845 3846 3783 7431 7494 7495 7432 +3845 2592 3909 3846 7494 7559 7560 7495 +2572 3785 3786 3743 7373 7434 7435 7374 +3785 3848 3849 3786 7434 7497 7498 7435 +3848 2593 3911 3849 7497 7562 7563 7498 +2573 3788 3789 3745 7376 7437 7438 7377 +3788 3851 3852 3789 7437 7500 7501 7438 +3851 2594 3913 3852 7500 7565 7566 7501 +2574 3791 3792 3747 7379 7440 7441 7380 +3791 3854 3855 3792 7440 7503 7504 7441 +3854 2595 3915 3855 7503 7568 7569 7504 +2575 3794 3795 3749 7382 7443 7444 7383 +3794 3857 3858 3795 7443 7506 7507 7444 +3857 2596 3917 3858 7506 7571 7572 7507 +2576 3797 3798 3751 7385 7446 7447 7386 +3797 3860 3861 3798 7446 7509 7510 7447 +3860 2597 3919 3861 7509 7574 7575 7510 +2577 3800 3801 3753 7388 7449 7450 7389 +3800 3863 3864 3801 7449 7512 7513 7450 +3863 2598 3921 3864 7512 7577 7578 7513 +2578 3803 3804 3755 7391 7452 7453 7392 +3803 3866 3867 3804 7452 7515 7516 7453 +3866 2599 3923 3867 7515 7580 7581 7516 +2579 3806 3807 3757 7394 7455 7456 7395 +3806 3869 3870 3807 7455 7518 7519 7456 +3869 2600 3925 3870 7518 7583 7584 7519 +2580 3809 3810 3811 7397 7458 7459 7460 +3809 3872 3873 3810 7458 7521 7522 7459 +3872 2601 3927 3873 7521 7586 7587 7522 +3873 3927 3928 3874 7522 7587 7588 7523 +3874 3928 2602 3929 7523 7588 7589 7590 +2580 3811 3812 3759 7397 7460 7461 7398 +3811 3876 3877 3812 7460 7525 7526 7461 +3876 2603 3931 3877 7525 7592 7593 7526 +2581 3814 3815 3761 7400 7463 7464 7401 +3814 3879 3880 3815 7463 7528 7529 7464 +3879 2604 3933 3880 7528 7595 7596 7529 +2582 3817 3818 3763 7403 7466 7467 7404 +3817 3882 3883 3818 7466 7531 7532 7467 +3882 2605 3935 3883 7531 7598 7599 7532 +2583 3820 3821 3765 7406 7469 7470 7407 +3820 3885 3886 3821 7469 7534 7535 7470 +3885 2606 3937 3886 7534 7601 7602 7535 +2584 3823 3824 3767 7409 7472 7473 7410 +3823 3888 3889 3824 7472 7537 7538 7473 +3888 2607 3939 3889 7537 7604 7605 7538 +2585 3826 3827 3769 7412 7475 7476 7413 +3826 3891 3892 3827 7475 7540 7541 7476 +3891 2608 3941 3892 7540 7607 7608 7541 +2586 3829 3830 3771 7415 7478 7479 7416 +3829 3894 3895 3830 7478 7543 7544 7479 +3894 2609 3943 3895 7543 7610 7611 7544 +2587 3832 3833 3773 7418 7481 7482 7419 +3832 3897 3898 3833 7481 7546 7547 7482 +3897 2610 3945 3898 7546 7613 7614 7547 +2588 3835 3836 3775 7421 7484 7485 7422 +3835 3900 3901 3836 7484 7549 7550 7485 +3900 2611 3947 3901 7549 7616 7617 7550 +2589 3838 3839 3777 7424 7487 7488 7425 +3838 3903 3904 3839 7487 7552 7553 7488 +3903 2612 3949 3904 7552 7619 7620 7553 +3908 3953 3954 2592 7558 7625 7626 7559 +3953 4022 4023 3954 7625 7694 7695 7626 +4022 4092 2615 4023 7694 7765 7766 7695 +3910 3956 3957 2593 7561 7628 7629 7562 +3956 4025 4026 3957 7628 7697 7698 7629 +4025 4094 2616 4026 7697 7768 7769 7698 +3912 3959 3960 2594 7564 7631 7632 7565 +3959 4028 4029 3960 7631 7700 7701 7632 +4028 4096 2617 4029 7700 7771 7772 7701 +3914 3962 3963 2595 7567 7634 7635 7568 +3962 4031 4032 3963 7634 7703 7704 7635 +4031 4098 2618 4032 7703 7774 7775 7704 +3916 3965 3966 2596 7570 7637 7638 7571 +3965 4034 4035 3966 7637 7706 7707 7638 +4034 4100 2619 4035 7706 7777 7778 7707 +3918 3968 3969 2597 7573 7640 7641 7574 +3968 4037 4038 3969 7640 7709 7710 7641 +4037 4102 2620 4038 7709 7780 7781 7710 +3920 3971 3972 2598 7576 7643 7644 7577 +3971 4040 4041 3972 7643 7712 7713 7644 +4040 4104 2621 4041 7712 7783 7784 7713 +3922 3974 3975 2599 7579 7646 7647 7580 +3974 4043 4044 3975 7646 7715 7716 7647 +4043 4106 2622 4044 7715 7786 7787 7716 +3924 3977 3978 2600 7582 7649 7650 7583 +3977 4046 4047 3978 7649 7718 7719 7650 +4046 4108 2623 4047 7718 7789 7790 7719 +3926 3980 3981 2601 7585 7652 7653 7586 +3980 4049 4050 3981 7652 7721 7722 7653 +4049 4110 2624 4050 7721 7792 7793 7722 +3928 3983 3984 2602 7588 7655 7656 7589 +3983 4052 4053 3984 7655 7724 7725 7656 +4052 4112 2625 4053 7724 7795 7796 7725 +4057 4056 4116 2627 7729 7728 7801 7802 +3930 3988 3989 2603 7591 7660 7661 7592 +3988 4059 4060 3989 7660 7731 7732 7661 +4059 4118 2628 4060 7731 7804 7805 7732 +3932 3991 3992 2604 7594 7663 7664 7595 +3991 4062 4063 3992 7663 7734 7735 7664 +4062 4120 2629 4063 7734 7807 7808 7735 +3934 3994 3995 2605 7597 7666 7667 7598 +3994 4065 4066 3995 7666 7737 7738 7667 +4065 4122 2630 4066 7737 7810 7811 7738 +3936 3997 3998 2606 7600 7669 7670 7601 +3997 4068 4069 3998 7669 7740 7741 7670 +4068 4124 2631 4069 7740 7813 7814 7741 +3938 4000 4001 2607 7603 7672 7673 7604 +4000 4071 4072 4001 7672 7743 7744 7673 +4071 4126 2632 4072 7743 7816 7817 7744 +3940 4003 4004 2608 7606 7675 7676 7607 +4003 4074 4075 4004 7675 7746 7747 7676 +4074 4128 2633 4075 7746 7819 7820 7747 +3942 4006 4007 2609 7609 7678 7679 7610 +4006 4077 4078 4007 7678 7749 7750 7679 +4077 4130 2634 4078 7749 7822 7823 7750 +3944 4009 4010 2610 7612 7681 7682 7613 +4009 4080 4081 4010 7681 7752 7753 7682 +4080 4132 2635 4081 7752 7825 7826 7753 +3946 4012 4013 2611 7615 7684 7685 7616 +4012 4083 4084 4013 7684 7755 7756 7685 +4083 4134 2636 4084 7755 7828 7829 7756 +3948 4015 4016 2612 7618 7687 7688 7619 +4015 4086 4087 4016 7687 7758 7759 7688 +4086 4136 2637 4087 7758 7831 7832 7759 +3950 4018 4019 2613 7621 7690 7691 7622 +4018 4089 4090 4019 7690 7761 7762 7691 +4089 4138 2638 4090 7761 7834 7835 7762 +3907 3952 3953 3908 7557 7624 7625 7558 +3952 4021 4022 3953 7624 7693 7694 7625 +4021 4091 4092 4022 7693 7764 7765 7694 +3909 3955 3956 3910 7560 7627 7628 7561 +3955 4024 4025 3956 7627 7696 7697 7628 +4024 4093 4094 4025 7696 7767 7768 7697 +3911 3958 3959 3912 7563 7630 7631 7564 +3958 4027 4028 3959 7630 7699 7700 7631 +4027 4095 4096 4028 7699 7770 7771 7700 +3913 3961 3962 3914 7566 7633 7634 7567 +3961 4030 4031 3962 7633 7702 7703 7634 +4030 4097 4098 4031 7702 7773 7774 7703 +3915 3964 3965 3916 7569 7636 7637 7570 +3964 4033 4034 3965 7636 7705 7706 7637 +4033 4099 4100 4034 7705 7776 7777 7706 +3917 3967 3968 3918 7572 7639 7640 7573 +3967 4036 4037 3968 7639 7708 7709 7640 +4036 4101 4102 4037 7708 7779 7780 7709 +3919 3970 3971 3920 7575 7642 7643 7576 +3970 4039 4040 3971 7642 7711 7712 7643 +4039 4103 4104 4040 7711 7782 7783 7712 +3921 3973 3974 3922 7578 7645 7646 7579 +3973 4042 4043 3974 7645 7714 7715 7646 +4042 4105 4106 4043 7714 7785 7786 7715 +3923 3976 3977 3924 7581 7648 7649 7582 +3976 4045 4046 3977 7648 7717 7718 7649 +4045 4107 4108 4046 7717 7788 7789 7718 +3925 3979 3980 3926 7584 7651 7652 7585 +3979 4048 4049 3980 7651 7720 7721 7652 +4048 4109 4110 4049 7720 7791 7792 7721 +3927 3982 3983 3928 7587 7654 7655 7588 +3982 4051 4052 3983 7654 7723 7724 7655 +4051 4111 4112 4052 7723 7794 7795 7724 +3986 3985 4056 4057 7658 7657 7728 7729 +3985 4054 4055 4056 7657 7726 7727 7728 +4056 4055 4115 4116 7728 7727 7800 7801 +3929 3987 3988 3930 7590 7659 7660 7591 +3987 4058 4059 3988 7659 7730 7731 7660 +4058 4117 4118 4059 7730 7803 7804 7731 +3931 3990 3991 3932 7593 7662 7663 7594 +3990 4061 4062 3991 7662 7733 7734 7663 +4061 4119 4120 4062 7733 7806 7807 7734 +3933 3993 3994 3934 7596 7665 7666 7597 +3993 4064 4065 3994 7665 7736 7737 7666 +4064 4121 4122 4065 7736 7809 7810 7737 +3935 3996 3997 3936 7599 7668 7669 7600 +3996 4067 4068 3997 7668 7739 7740 7669 +4067 4123 4124 4068 7739 7812 7813 7740 +3937 3999 4000 3938 7602 7671 7672 7603 +3999 4070 4071 4000 7671 7742 7743 7672 +4070 4125 4126 4071 7742 7815 7816 7743 +3939 4002 4003 3940 7605 7674 7675 7606 +4002 4073 4074 4003 7674 7745 7746 7675 +4073 4127 4128 4074 7745 7818 7819 7746 +3941 4005 4006 3942 7608 7677 7678 7609 +4005 4076 4077 4006 7677 7748 7749 7678 +4076 4129 4130 4077 7748 7821 7822 7749 +3943 4008 4009 3944 7611 7680 7681 7612 +4008 4079 4080 4009 7680 7751 7752 7681 +4079 4131 4132 4080 7751 7824 7825 7752 +3945 4011 4012 3946 7614 7683 7684 7615 +4011 4082 4083 4012 7683 7754 7755 7684 +4082 4133 4134 4083 7754 7827 7828 7755 +3947 4014 4015 3948 7617 7686 7687 7618 +4014 4085 4086 4015 7686 7757 7758 7687 +4085 4135 4136 4086 7757 7830 7831 7758 +3949 4017 4018 3950 7620 7689 7690 7621 +4017 4088 4089 4018 7689 7760 7761 7690 +4088 4137 4138 4089 7760 7833 7834 7761 +2591 3951 3952 3907 7556 7623 7624 7557 +3951 4020 4021 3952 7623 7692 7693 7624 +4020 2614 4091 4021 7692 7763 7764 7693 +2592 3954 3955 3909 7559 7626 7627 7560 +3954 4023 4024 3955 7626 7695 7696 7627 +4023 2615 4093 4024 7695 7766 7767 7696 +2593 3957 3958 3911 7562 7629 7630 7563 +3957 4026 4027 3958 7629 7698 7699 7630 +4026 2616 4095 4027 7698 7769 7770 7699 +2594 3960 3961 3913 7565 7632 7633 7566 +3960 4029 4030 3961 7632 7701 7702 7633 +4029 2617 4097 4030 7701 7772 7773 7702 +2595 3963 3964 3915 7568 7635 7636 7569 +3963 4032 4033 3964 7635 7704 7705 7636 +4032 2618 4099 4033 7704 7775 7776 7705 +2596 3966 3967 3917 7571 7638 7639 7572 +3966 4035 4036 3967 7638 7707 7708 7639 +4035 2619 4101 4036 7707 7778 7779 7708 +2597 3969 3970 3919 7574 7641 7642 7575 +3969 4038 4039 3970 7641 7710 7711 7642 +4038 2620 4103 4039 7710 7781 7782 7711 +2598 3972 3973 3921 7577 7644 7645 7578 +3972 4041 4042 3973 7644 7713 7714 7645 +4041 2621 4105 4042 7713 7784 7785 7714 +2599 3975 3976 3923 7580 7647 7648 7581 +3975 4044 4045 3976 7647 7716 7717 7648 +4044 2622 4107 4045 7716 7787 7788 7717 +2600 3978 3979 3925 7583 7650 7651 7584 +3978 4047 4048 3979 7650 7719 7720 7651 +4047 2623 4109 4048 7719 7790 7791 7720 +2601 3981 3982 3927 7586 7653 7654 7587 +3981 4050 4051 3982 7653 7722 7723 7654 +4050 2624 4111 4051 7722 7793 7794 7723 +2602 3984 3985 3986 7589 7656 7657 7658 +3984 4053 4054 3985 7656 7725 7726 7657 +4053 2625 4113 4054 7725 7796 7797 7726 +4054 4113 4114 4055 7726 7797 7798 7727 +4055 4114 2626 4115 7727 7798 7799 7800 +2602 3986 3987 3929 7589 7658 7659 7590 +3986 4057 4058 3987 7658 7729 7730 7659 +4057 2627 4117 4058 7729 7802 7803 7730 +2603 3989 3990 3931 7592 7661 7662 7593 +3989 4060 4061 3990 7661 7732 7733 7662 +4060 2628 4119 4061 7732 7805 7806 7733 +2604 3992 3993 3933 7595 7664 7665 7596 +3992 4063 4064 3993 7664 7735 7736 7665 +4063 2629 4121 4064 7735 7808 7809 7736 +2605 3995 3996 3935 7598 7667 7668 7599 +3995 4066 4067 3996 7667 7738 7739 7668 +4066 2630 4123 4067 7738 7811 7812 7739 +2606 3998 3999 3937 7601 7670 7671 7602 +3998 4069 4070 3999 7670 7741 7742 7671 +4069 2631 4125 4070 7741 7814 7815 7742 +2607 4001 4002 3939 7604 7673 7674 7605 +4001 4072 4073 4002 7673 7744 7745 7674 +4072 2632 4127 4073 7744 7817 7818 7745 +2608 4004 4005 3941 7607 7676 7677 7608 +4004 4075 4076 4005 7676 7747 7748 7677 +4075 2633 4129 4076 7747 7820 7821 7748 +2609 4007 4008 3943 7610 7679 7680 7611 +4007 4078 4079 4008 7679 7750 7751 7680 +4078 2634 4131 4079 7750 7823 7824 7751 +2610 4010 4011 3945 7613 7682 7683 7614 +4010 4081 4082 4011 7682 7753 7754 7683 +4081 2635 4133 4082 7753 7826 7827 7754 +2611 4013 4014 3947 7616 7685 7686 7617 +4013 4084 4085 4014 7685 7756 7757 7686 +4084 2636 4135 4085 7756 7829 7830 7757 +2612 4016 4017 3949 7619 7688 7689 7620 +4016 4087 4088 4017 7688 7759 7760 7689 +4087 2637 4137 4088 7759 7832 7833 7760 +4092 4141 4142 2615 7765 7838 7839 7766 +4141 4214 4215 4142 7838 7911 7912 7839 +4214 4286 2640 4215 7911 7984 7985 7912 +4094 4144 4145 2616 7768 7841 7842 7769 +4144 4217 4218 4145 7841 7914 7915 7842 +4217 4288 2641 4218 7914 7987 7988 7915 +4096 4147 4148 2617 7771 7844 7845 7772 +4147 4220 4221 4148 7844 7917 7918 7845 +4220 4290 2642 4221 7917 7990 7991 7918 +4098 4150 4151 2618 7774 7847 7848 7775 +4150 4223 4224 4151 7847 7920 7921 7848 +4223 4292 2643 4224 7920 7993 7994 7921 +4100 4153 4154 2619 7777 7850 7851 7778 +4153 4226 4227 4154 7850 7923 7924 7851 +4226 4294 2644 4227 7923 7996 7997 7924 +4102 4156 4157 2620 7780 7853 7854 7781 +4156 4229 4230 4157 7853 7926 7927 7854 +4229 4296 2645 4230 7926 7999 8000 7927 +4104 4159 4160 2621 7783 7856 7857 7784 +4159 4232 4233 4160 7856 7929 7930 7857 +4232 4298 2646 4233 7929 8002 8003 7930 +4106 4162 4163 2622 7786 7859 7860 7787 +4162 4235 4236 4163 7859 7932 7933 7860 +4235 4300 2647 4236 7932 8005 8006 7933 +4108 4165 4166 2623 7789 7862 7863 7790 +4165 4238 4239 4166 7862 7935 7936 7863 +4238 4302 2648 4239 7935 8008 8009 7936 +4110 4168 4169 2624 7792 7865 7866 7793 +4168 4241 4242 4169 7865 7938 7939 7866 +4241 4304 2649 4242 7938 8011 8012 7939 +4112 4171 4172 2625 7795 7868 7869 7796 +4171 4244 4245 4172 7868 7941 7942 7869 +4244 4306 2650 4245 7941 8014 8015 7942 +4114 4174 4175 2626 7798 7871 7872 7799 +4174 4247 4248 4175 7871 7944 7945 7872 +4247 4308 2651 4248 7944 8017 8018 7945 +4116 4177 4178 2627 7801 7874 7875 7802 +4177 4250 4251 4178 7874 7947 7948 7875 +4250 4310 2652 4251 7947 8020 8021 7948 +4118 4180 4181 2628 7804 7877 7878 7805 +4180 4253 4254 4181 7877 7950 7951 7878 +4253 4312 2653 4254 7950 8023 8024 7951 +4120 4183 4184 2629 7807 7880 7881 7808 +4183 4256 4257 4184 7880 7953 7954 7881 +4256 4314 2654 4257 7953 8026 8027 7954 +4122 4186 4187 2630 7810 7883 7884 7811 +4186 4259 4260 4187 7883 7956 7957 7884 +4259 4316 2655 4260 7956 8029 8030 7957 +4124 4189 4190 2631 7813 7886 7887 7814 +4189 4262 4263 4190 7886 7959 7960 7887 +4262 4318 2656 4263 7959 8032 8033 7960 +4126 4192 4193 2632 7816 7889 7890 7817 +4192 4265 4266 4193 7889 7962 7963 7890 +4265 4320 2657 4266 7962 8035 8036 7963 +4128 4195 4196 2633 7819 7892 7893 7820 +4195 4268 4269 4196 7892 7965 7966 7893 +4268 4322 2658 4269 7965 8038 8039 7966 +4130 4198 4199 2634 7822 7895 7896 7823 +4198 4271 4272 4199 7895 7968 7969 7896 +4271 4324 2659 4272 7968 8041 8042 7969 +4132 4201 4202 2635 7825 7898 7899 7826 +4201 4274 4275 4202 7898 7971 7972 7899 +4274 4326 2660 4275 7971 8044 8045 7972 +4134 4204 4205 2636 7828 7901 7902 7829 +4204 4277 4278 4205 7901 7974 7975 7902 +4277 4328 2661 4278 7974 8047 8048 7975 +4136 4207 4208 2637 7831 7904 7905 7832 +4207 4280 4281 4208 7904 7977 7978 7905 +4280 4330 2662 4281 7977 8050 8051 7978 +4138 4210 4211 2638 7834 7907 7908 7835 +4210 4283 4284 4211 7907 7980 7981 7908 +4283 4332 2663 4284 7980 8053 8054 7981 +4091 4140 4141 4092 7764 7837 7838 7765 +4140 4213 4214 4141 7837 7910 7911 7838 +4213 4285 4286 4214 7910 7983 7984 7911 +4093 4143 4144 4094 7767 7840 7841 7768 +4143 4216 4217 4144 7840 7913 7914 7841 +4216 4287 4288 4217 7913 7986 7987 7914 +4095 4146 4147 4096 7770 7843 7844 7771 +4146 4219 4220 4147 7843 7916 7917 7844 +4219 4289 4290 4220 7916 7989 7990 7917 +4097 4149 4150 4098 7773 7846 7847 7774 +4149 4222 4223 4150 7846 7919 7920 7847 +4222 4291 4292 4223 7919 7992 7993 7920 +4099 4152 4153 4100 7776 7849 7850 7777 +4152 4225 4226 4153 7849 7922 7923 7850 +4225 4293 4294 4226 7922 7995 7996 7923 +4101 4155 4156 4102 7779 7852 7853 7780 +4155 4228 4229 4156 7852 7925 7926 7853 +4228 4295 4296 4229 7925 7998 7999 7926 +4103 4158 4159 4104 7782 7855 7856 7783 +4158 4231 4232 4159 7855 7928 7929 7856 +4231 4297 4298 4232 7928 8001 8002 7929 +4105 4161 4162 4106 7785 7858 7859 7786 +4161 4234 4235 4162 7858 7931 7932 7859 +4234 4299 4300 4235 7931 8004 8005 7932 +4107 4164 4165 4108 7788 7861 7862 7789 +4164 4237 4238 4165 7861 7934 7935 7862 +4237 4301 4302 4238 7934 8007 8008 7935 +4109 4167 4168 4110 7791 7864 7865 7792 +4167 4240 4241 4168 7864 7937 7938 7865 +4240 4303 4304 4241 7937 8010 8011 7938 +4111 4170 4171 4112 7794 7867 7868 7795 +4170 4243 4244 4171 7867 7940 7941 7868 +4243 4305 4306 4244 7940 8013 8014 7941 +4113 4173 4174 4114 7797 7870 7871 7798 +4173 4246 4247 4174 7870 7943 7944 7871 +4246 4307 4308 4247 7943 8016 8017 7944 +4115 4176 4177 4116 7800 7873 7874 7801 +4176 4249 4250 4177 7873 7946 7947 7874 +4249 4309 4310 4250 7946 8019 8020 7947 +4117 4179 4180 4118 7803 7876 7877 7804 +4179 4252 4253 4180 7876 7949 7950 7877 +4252 4311 4312 4253 7949 8022 8023 7950 +4119 4182 4183 4120 7806 7879 7880 7807 +4182 4255 4256 4183 7879 7952 7953 7880 +4255 4313 4314 4256 7952 8025 8026 7953 +4121 4185 4186 4122 7809 7882 7883 7810 +4185 4258 4259 4186 7882 7955 7956 7883 +4258 4315 4316 4259 7955 8028 8029 7956 +4123 4188 4189 4124 7812 7885 7886 7813 +4188 4261 4262 4189 7885 7958 7959 7886 +4261 4317 4318 4262 7958 8031 8032 7959 +4125 4191 4192 4126 7815 7888 7889 7816 +4191 4264 4265 4192 7888 7961 7962 7889 +4264 4319 4320 4265 7961 8034 8035 7962 +4127 4194 4195 4128 7818 7891 7892 7819 +4194 4267 4268 4195 7891 7964 7965 7892 +4267 4321 4322 4268 7964 8037 8038 7965 +4129 4197 4198 4130 7821 7894 7895 7822 +4197 4270 4271 4198 7894 7967 7968 7895 +4270 4323 4324 4271 7967 8040 8041 7968 +4131 4200 4201 4132 7824 7897 7898 7825 +4200 4273 4274 4201 7897 7970 7971 7898 +4273 4325 4326 4274 7970 8043 8044 7971 +4133 4203 4204 4134 7827 7900 7901 7828 +4203 4276 4277 4204 7900 7973 7974 7901 +4276 4327 4328 4277 7973 8046 8047 7974 +4135 4206 4207 4136 7830 7903 7904 7831 +4206 4279 4280 4207 7903 7976 7977 7904 +4279 4329 4330 4280 7976 8049 8050 7977 +4137 4209 4210 4138 7833 7906 7907 7834 +4209 4282 4283 4210 7906 7979 7980 7907 +4282 4331 4332 4283 7979 8052 8053 7980 +2614 4139 4140 4091 7763 7836 7837 7764 +4139 4212 4213 4140 7836 7909 7910 7837 +4212 2639 4285 4213 7909 7982 7983 7910 +2615 4142 4143 4093 7766 7839 7840 7767 +4142 4215 4216 4143 7839 7912 7913 7840 +4215 2640 4287 4216 7912 7985 7986 7913 +2616 4145 4146 4095 7769 7842 7843 7770 +4145 4218 4219 4146 7842 7915 7916 7843 +4218 2641 4289 4219 7915 7988 7989 7916 +2617 4148 4149 4097 7772 7845 7846 7773 +4148 4221 4222 4149 7845 7918 7919 7846 +4221 2642 4291 4222 7918 7991 7992 7919 +2618 4151 4152 4099 7775 7848 7849 7776 +4151 4224 4225 4152 7848 7921 7922 7849 +4224 2643 4293 4225 7921 7994 7995 7922 +2619 4154 4155 4101 7778 7851 7852 7779 +4154 4227 4228 4155 7851 7924 7925 7852 +4227 2644 4295 4228 7924 7997 7998 7925 +2620 4157 4158 4103 7781 7854 7855 7782 +4157 4230 4231 4158 7854 7927 7928 7855 +4230 2645 4297 4231 7927 8000 8001 7928 +2621 4160 4161 4105 7784 7857 7858 7785 +4160 4233 4234 4161 7857 7930 7931 7858 +4233 2646 4299 4234 7930 8003 8004 7931 +2622 4163 4164 4107 7787 7860 7861 7788 +4163 4236 4237 4164 7860 7933 7934 7861 +4236 2647 4301 4237 7933 8006 8007 7934 +2623 4166 4167 4109 7790 7863 7864 7791 +4166 4239 4240 4167 7863 7936 7937 7864 +4239 2648 4303 4240 7936 8009 8010 7937 +2624 4169 4170 4111 7793 7866 7867 7794 +4169 4242 4243 4170 7866 7939 7940 7867 +4242 2649 4305 4243 7939 8012 8013 7940 +2625 4172 4173 4113 7796 7869 7870 7797 +4172 4245 4246 4173 7869 7942 7943 7870 +4245 2650 4307 4246 7942 8015 8016 7943 +2626 4175 4176 4115 7799 7872 7873 7800 +4175 4248 4249 4176 7872 7945 7946 7873 +4248 2651 4309 4249 7945 8018 8019 7946 +2627 4178 4179 4117 7802 7875 7876 7803 +4178 4251 4252 4179 7875 7948 7949 7876 +4251 2652 4311 4252 7948 8021 8022 7949 +2628 4181 4182 4119 7805 7878 7879 7806 +4181 4254 4255 4182 7878 7951 7952 7879 +4254 2653 4313 4255 7951 8024 8025 7952 +2629 4184 4185 4121 7808 7881 7882 7809 +4184 4257 4258 4185 7881 7954 7955 7882 +4257 2654 4315 4258 7954 8027 8028 7955 +2630 4187 4188 4123 7811 7884 7885 7812 +4187 4260 4261 4188 7884 7957 7958 7885 +4260 2655 4317 4261 7957 8030 8031 7958 +2631 4190 4191 4125 7814 7887 7888 7815 +4190 4263 4264 4191 7887 7960 7961 7888 +4263 2656 4319 4264 7960 8033 8034 7961 +2632 4193 4194 4127 7817 7890 7891 7818 +4193 4266 4267 4194 7890 7963 7964 7891 +4266 2657 4321 4267 7963 8036 8037 7964 +2633 4196 4197 4129 7820 7893 7894 7821 +4196 4269 4270 4197 7893 7966 7967 7894 +4269 2658 4323 4270 7966 8039 8040 7967 +2634 4199 4200 4131 7823 7896 7897 7824 +4199 4272 4273 4200 7896 7969 7970 7897 +4272 2659 4325 4273 7969 8042 8043 7970 +2635 4202 4203 4133 7826 7899 7900 7827 +4202 4275 4276 4203 7899 7972 7973 7900 +4275 2660 4327 4276 7972 8045 8046 7973 +2636 4205 4206 4135 7829 7902 7903 7830 +4205 4278 4279 4206 7902 7975 7976 7903 +4278 2661 4329 4279 7975 8048 8049 7976 +2637 4208 4209 4137 7832 7905 7906 7833 +4208 4281 4282 4209 7905 7978 7979 7906 +4281 2662 4331 4282 7978 8051 8052 7979 +4286 4335 4336 2640 7984 8057 8058 7985 +4335 4408 4409 4336 8057 8130 8131 8058 +4408 4480 2665 4409 8130 8203 8204 8131 +4288 4338 4339 2641 7987 8060 8061 7988 +4338 4411 4412 4339 8060 8133 8134 8061 +4411 4482 2666 4412 8133 8206 8207 8134 +4290 4341 4342 2642 7990 8063 8064 7991 +4341 4414 4415 4342 8063 8136 8137 8064 +4414 4484 2667 4415 8136 8209 8210 8137 +4292 4344 4345 2643 7993 8066 8067 7994 +4344 4417 4418 4345 8066 8139 8140 8067 +4417 4486 2668 4418 8139 8212 8213 8140 +4294 4347 4348 2644 7996 8069 8070 7997 +4347 4420 4421 4348 8069 8142 8143 8070 +4420 4488 2669 4421 8142 8215 8216 8143 +4296 4350 4351 2645 7999 8072 8073 8000 +4350 4423 4424 4351 8072 8145 8146 8073 +4423 4490 2670 4424 8145 8218 8219 8146 +4298 4353 4354 2646 8002 8075 8076 8003 +4353 4426 4427 4354 8075 8148 8149 8076 +4426 4492 2671 4427 8148 8221 8222 8149 +4300 4356 4357 2647 8005 8078 8079 8006 +4356 4429 4430 4357 8078 8151 8152 8079 +4429 4494 2672 4430 8151 8224 8225 8152 +4302 4359 4360 2648 8008 8081 8082 8009 +4359 4432 4433 4360 8081 8154 8155 8082 +4432 4496 2673 4433 8154 8227 8228 8155 +4304 4362 4363 2649 8011 8084 8085 8012 +4362 4435 4436 4363 8084 8157 8158 8085 +4435 4498 2674 4436 8157 8230 8231 8158 +4306 4365 4366 2650 8014 8087 8088 8015 +4365 4438 4439 4366 8087 8160 8161 8088 +4438 4500 2675 4439 8160 8233 8234 8161 +4308 4368 4369 2651 8017 8090 8091 8018 +4368 4441 4442 4369 8090 8163 8164 8091 +4441 4502 2676 4442 8163 8236 8237 8164 +4310 4371 4372 2652 8020 8093 8094 8021 +4371 4444 4445 4372 8093 8166 8167 8094 +4444 4504 2677 4445 8166 8239 8240 8167 +4312 4374 4375 2653 8023 8096 8097 8024 +4374 4447 4448 4375 8096 8169 8170 8097 +4447 4506 2678 4448 8169 8242 8243 8170 +4314 4377 4378 2654 8026 8099 8100 8027 +4377 4450 4451 4378 8099 8172 8173 8100 +4450 4508 2679 4451 8172 8245 8246 8173 +4316 4380 4381 2655 8029 8102 8103 8030 +4380 4453 4454 4381 8102 8175 8176 8103 +4453 4510 2680 4454 8175 8248 8249 8176 +4318 4383 4384 2656 8032 8105 8106 8033 +4383 4456 4457 4384 8105 8178 8179 8106 +4456 4512 2681 4457 8178 8251 8252 8179 +4320 4386 4387 2657 8035 8108 8109 8036 +4386 4459 4460 4387 8108 8181 8182 8109 +4459 4514 2682 4460 8181 8254 8255 8182 +4322 4389 4390 2658 8038 8111 8112 8039 +4389 4462 4463 4390 8111 8184 8185 8112 +4462 4516 2683 4463 8184 8257 8258 8185 +4324 4392 4393 2659 8041 8114 8115 8042 +4392 4465 4466 4393 8114 8187 8188 8115 +4465 4518 2684 4466 8187 8260 8261 8188 +4326 4395 4396 2660 8044 8117 8118 8045 +4395 4468 4469 4396 8117 8190 8191 8118 +4468 4520 2685 4469 8190 8263 8264 8191 +4328 4398 4399 2661 8047 8120 8121 8048 +4398 4471 4472 4399 8120 8193 8194 8121 +4471 4522 2686 4472 8193 8266 8267 8194 +4330 4401 4402 2662 8050 8123 8124 8051 +4401 4474 4475 4402 8123 8196 8197 8124 +4474 4524 2687 4475 8196 8269 8270 8197 +4332 4404 4405 2663 8053 8126 8127 8054 +4404 4477 4478 4405 8126 8199 8200 8127 +4477 4526 2688 4478 8199 8272 8273 8200 +4285 4334 4335 4286 7983 8056 8057 7984 +4334 4407 4408 4335 8056 8129 8130 8057 +4407 4479 4480 4408 8129 8202 8203 8130 +4287 4337 4338 4288 7986 8059 8060 7987 +4337 4410 4411 4338 8059 8132 8133 8060 +4410 4481 4482 4411 8132 8205 8206 8133 +4289 4340 4341 4290 7989 8062 8063 7990 +4340 4413 4414 4341 8062 8135 8136 8063 +4413 4483 4484 4414 8135 8208 8209 8136 +4291 4343 4344 4292 7992 8065 8066 7993 +4343 4416 4417 4344 8065 8138 8139 8066 +4416 4485 4486 4417 8138 8211 8212 8139 +4293 4346 4347 4294 7995 8068 8069 7996 +4346 4419 4420 4347 8068 8141 8142 8069 +4419 4487 4488 4420 8141 8214 8215 8142 +4295 4349 4350 4296 7998 8071 8072 7999 +4349 4422 4423 4350 8071 8144 8145 8072 +4422 4489 4490 4423 8144 8217 8218 8145 +4297 4352 4353 4298 8001 8074 8075 8002 +4352 4425 4426 4353 8074 8147 8148 8075 +4425 4491 4492 4426 8147 8220 8221 8148 +4299 4355 4356 4300 8004 8077 8078 8005 +4355 4428 4429 4356 8077 8150 8151 8078 +4428 4493 4494 4429 8150 8223 8224 8151 +4301 4358 4359 4302 8007 8080 8081 8008 +4358 4431 4432 4359 8080 8153 8154 8081 +4431 4495 4496 4432 8153 8226 8227 8154 +4303 4361 4362 4304 8010 8083 8084 8011 +4361 4434 4435 4362 8083 8156 8157 8084 +4434 4497 4498 4435 8156 8229 8230 8157 +4305 4364 4365 4306 8013 8086 8087 8014 +4364 4437 4438 4365 8086 8159 8160 8087 +4437 4499 4500 4438 8159 8232 8233 8160 +4307 4367 4368 4308 8016 8089 8090 8017 +4367 4440 4441 4368 8089 8162 8163 8090 +4440 4501 4502 4441 8162 8235 8236 8163 +4309 4370 4371 4310 8019 8092 8093 8020 +4370 4443 4444 4371 8092 8165 8166 8093 +4443 4503 4504 4444 8165 8238 8239 8166 +4311 4373 4374 4312 8022 8095 8096 8023 +4373 4446 4447 4374 8095 8168 8169 8096 +4446 4505 4506 4447 8168 8241 8242 8169 +4313 4376 4377 4314 8025 8098 8099 8026 +4376 4449 4450 4377 8098 8171 8172 8099 +4449 4507 4508 4450 8171 8244 8245 8172 +4315 4379 4380 4316 8028 8101 8102 8029 +4379 4452 4453 4380 8101 8174 8175 8102 +4452 4509 4510 4453 8174 8247 8248 8175 +4317 4382 4383 4318 8031 8104 8105 8032 +4382 4455 4456 4383 8104 8177 8178 8105 +4455 4511 4512 4456 8177 8250 8251 8178 +4319 4385 4386 4320 8034 8107 8108 8035 +4385 4458 4459 4386 8107 8180 8181 8108 +4458 4513 4514 4459 8180 8253 8254 8181 +4321 4388 4389 4322 8037 8110 8111 8038 +4388 4461 4462 4389 8110 8183 8184 8111 +4461 4515 4516 4462 8183 8256 8257 8184 +4323 4391 4392 4324 8040 8113 8114 8041 +4391 4464 4465 4392 8113 8186 8187 8114 +4464 4517 4518 4465 8186 8259 8260 8187 +4325 4394 4395 4326 8043 8116 8117 8044 +4394 4467 4468 4395 8116 8189 8190 8117 +4467 4519 4520 4468 8189 8262 8263 8190 +4327 4397 4398 4328 8046 8119 8120 8047 +4397 4470 4471 4398 8119 8192 8193 8120 +4470 4521 4522 4471 8192 8265 8266 8193 +4329 4400 4401 4330 8049 8122 8123 8050 +4400 4473 4474 4401 8122 8195 8196 8123 +4473 4523 4524 4474 8195 8268 8269 8196 +4331 4403 4404 4332 8052 8125 8126 8053 +4403 4476 4477 4404 8125 8198 8199 8126 +4476 4525 4526 4477 8198 8271 8272 8199 +2639 4333 4334 4285 7982 8055 8056 7983 +4333 4406 4407 4334 8055 8128 8129 8056 +4406 2664 4479 4407 8128 8201 8202 8129 +2640 4336 4337 4287 7985 8058 8059 7986 +4336 4409 4410 4337 8058 8131 8132 8059 +4409 2665 4481 4410 8131 8204 8205 8132 +2641 4339 4340 4289 7988 8061 8062 7989 +4339 4412 4413 4340 8061 8134 8135 8062 +4412 2666 4483 4413 8134 8207 8208 8135 +2642 4342 4343 4291 7991 8064 8065 7992 +4342 4415 4416 4343 8064 8137 8138 8065 +4415 2667 4485 4416 8137 8210 8211 8138 +2643 4345 4346 4293 7994 8067 8068 7995 +4345 4418 4419 4346 8067 8140 8141 8068 +4418 2668 4487 4419 8140 8213 8214 8141 +2644 4348 4349 4295 7997 8070 8071 7998 +4348 4421 4422 4349 8070 8143 8144 8071 +4421 2669 4489 4422 8143 8216 8217 8144 +2645 4351 4352 4297 8000 8073 8074 8001 +4351 4424 4425 4352 8073 8146 8147 8074 +4424 2670 4491 4425 8146 8219 8220 8147 +2646 4354 4355 4299 8003 8076 8077 8004 +4354 4427 4428 4355 8076 8149 8150 8077 +4427 2671 4493 4428 8149 8222 8223 8150 +2647 4357 4358 4301 8006 8079 8080 8007 +4357 4430 4431 4358 8079 8152 8153 8080 +4430 2672 4495 4431 8152 8225 8226 8153 +2648 4360 4361 4303 8009 8082 8083 8010 +4360 4433 4434 4361 8082 8155 8156 8083 +4433 2673 4497 4434 8155 8228 8229 8156 +2649 4363 4364 4305 8012 8085 8086 8013 +4363 4436 4437 4364 8085 8158 8159 8086 +4436 2674 4499 4437 8158 8231 8232 8159 +2650 4366 4367 4307 8015 8088 8089 8016 +4366 4439 4440 4367 8088 8161 8162 8089 +4439 2675 4501 4440 8161 8234 8235 8162 +2651 4369 4370 4309 8018 8091 8092 8019 +4369 4442 4443 4370 8091 8164 8165 8092 +4442 2676 4503 4443 8164 8237 8238 8165 +2652 4372 4373 4311 8021 8094 8095 8022 +4372 4445 4446 4373 8094 8167 8168 8095 +4445 2677 4505 4446 8167 8240 8241 8168 +2653 4375 4376 4313 8024 8097 8098 8025 +4375 4448 4449 4376 8097 8170 8171 8098 +4448 2678 4507 4449 8170 8243 8244 8171 +2654 4378 4379 4315 8027 8100 8101 8028 +4378 4451 4452 4379 8100 8173 8174 8101 +4451 2679 4509 4452 8173 8246 8247 8174 +2655 4381 4382 4317 8030 8103 8104 8031 +4381 4454 4455 4382 8103 8176 8177 8104 +4454 2680 4511 4455 8176 8249 8250 8177 +2656 4384 4385 4319 8033 8106 8107 8034 +4384 4457 4458 4385 8106 8179 8180 8107 +4457 2681 4513 4458 8179 8252 8253 8180 +2657 4387 4388 4321 8036 8109 8110 8037 +4387 4460 4461 4388 8109 8182 8183 8110 +4460 2682 4515 4461 8182 8255 8256 8183 +2658 4390 4391 4323 8039 8112 8113 8040 +4390 4463 4464 4391 8112 8185 8186 8113 +4463 2683 4517 4464 8185 8258 8259 8186 +2659 4393 4394 4325 8042 8115 8116 8043 +4393 4466 4467 4394 8115 8188 8189 8116 +4466 2684 4519 4467 8188 8261 8262 8189 +2660 4396 4397 4327 8045 8118 8119 8046 +4396 4469 4470 4397 8118 8191 8192 8119 +4469 2685 4521 4470 8191 8264 8265 8192 +2661 4399 4400 4329 8048 8121 8122 8049 +4399 4472 4473 4400 8121 8194 8195 8122 +4472 2686 4523 4473 8194 8267 8268 8195 +2662 4402 4403 4331 8051 8124 8125 8052 +4402 4475 4476 4403 8124 8197 8198 8125 +4475 2687 4525 4476 8197 8270 8271 8198 +4480 4529 4530 2665 8203 8276 8277 8204 +4529 4602 4603 4530 8276 8349 8350 8277 +4602 4674 2690 4603 8349 8422 8423 8350 +4482 4532 4533 2666 8206 8279 8280 8207 +4532 4605 4606 4533 8279 8352 8353 8280 +4605 4676 2691 4606 8352 8425 8426 8353 +4484 4535 4536 2667 8209 8282 8283 8210 +4535 4608 4609 4536 8282 8355 8356 8283 +4608 4678 2692 4609 8355 8428 8429 8356 +4486 4538 4539 2668 8212 8285 8286 8213 +4538 4611 4612 4539 8285 8358 8359 8286 +4611 4680 2693 4612 8358 8431 8432 8359 +4488 4541 4542 2669 8215 8288 8289 8216 +4541 4614 4615 4542 8288 8361 8362 8289 +4614 4682 2694 4615 8361 8434 8435 8362 +4490 4544 4545 2670 8218 8291 8292 8219 +4544 4617 4618 4545 8291 8364 8365 8292 +4617 4684 2695 4618 8364 8437 8438 8365 +4492 4547 4548 2671 8221 8294 8295 8222 +4547 4620 4621 4548 8294 8367 8368 8295 +4620 4686 2696 4621 8367 8440 8441 8368 +4494 4550 4551 2672 8224 8297 8298 8225 +4550 4623 4624 4551 8297 8370 8371 8298 +4623 4688 2697 4624 8370 8443 8444 8371 +4496 4553 4554 2673 8227 8300 8301 8228 +4553 4626 4627 4554 8300 8373 8374 8301 +4626 4690 2698 4627 8373 8446 8447 8374 +4498 4556 4557 2674 8230 8303 8304 8231 +4556 4629 4630 4557 8303 8376 8377 8304 +4629 4692 2699 4630 8376 8449 8450 8377 +4500 4559 4560 2675 8233 8306 8307 8234 +4559 4632 4633 4560 8306 8379 8380 8307 +4632 4694 2700 4633 8379 8452 8453 8380 +4502 4562 4563 2676 8236 8309 8310 8237 +4562 4635 4636 4563 8309 8382 8383 8310 +4635 4696 2701 4636 8382 8455 8456 8383 +4504 4565 4566 2677 8239 8312 8313 8240 +4565 4638 4639 4566 8312 8385 8386 8313 +4638 4698 2702 4639 8385 8458 8459 8386 +4506 4568 4569 2678 8242 8315 8316 8243 +4568 4641 4642 4569 8315 8388 8389 8316 +4641 4700 2703 4642 8388 8461 8462 8389 +4508 4571 4572 2679 8245 8318 8319 8246 +4571 4644 4645 4572 8318 8391 8392 8319 +4644 4702 2704 4645 8391 8464 8465 8392 +4510 4574 4575 2680 8248 8321 8322 8249 +4574 4647 4648 4575 8321 8394 8395 8322 +4647 4704 2705 4648 8394 8467 8468 8395 +4512 4577 4578 2681 8251 8324 8325 8252 +4577 4650 4651 4578 8324 8397 8398 8325 +4650 4706 2706 4651 8397 8470 8471 8398 +4514 4580 4581 2682 8254 8327 8328 8255 +4580 4653 4654 4581 8327 8400 8401 8328 +4653 4708 2707 4654 8400 8473 8474 8401 +4516 4583 4584 2683 8257 8330 8331 8258 +4583 4656 4657 4584 8330 8403 8404 8331 +4656 4710 2708 4657 8403 8476 8477 8404 +4518 4586 4587 2684 8260 8333 8334 8261 +4586 4659 4660 4587 8333 8406 8407 8334 +4659 4712 2709 4660 8406 8479 8480 8407 +4520 4589 4590 2685 8263 8336 8337 8264 +4589 4662 4663 4590 8336 8409 8410 8337 +4662 4714 2710 4663 8409 8482 8483 8410 +4522 4592 4593 2686 8266 8339 8340 8267 +4592 4665 4666 4593 8339 8412 8413 8340 +4665 4716 2711 4666 8412 8485 8486 8413 +4524 4595 4596 2687 8269 8342 8343 8270 +4595 4668 4669 4596 8342 8415 8416 8343 +4668 4718 2712 4669 8415 8488 8489 8416 +4526 4598 4599 2688 8272 8345 8346 8273 +4598 4671 4672 4599 8345 8418 8419 8346 +4671 4720 2713 4672 8418 8491 8492 8419 +4479 4528 4529 4480 8202 8275 8276 8203 +4528 4601 4602 4529 8275 8348 8349 8276 +4601 4673 4674 4602 8348 8421 8422 8349 +4481 4531 4532 4482 8205 8278 8279 8206 +4531 4604 4605 4532 8278 8351 8352 8279 +4604 4675 4676 4605 8351 8424 8425 8352 +4483 4534 4535 4484 8208 8281 8282 8209 +4534 4607 4608 4535 8281 8354 8355 8282 +4607 4677 4678 4608 8354 8427 8428 8355 +4485 4537 4538 4486 8211 8284 8285 8212 +4537 4610 4611 4538 8284 8357 8358 8285 +4610 4679 4680 4611 8357 8430 8431 8358 +4487 4540 4541 4488 8214 8287 8288 8215 +4540 4613 4614 4541 8287 8360 8361 8288 +4613 4681 4682 4614 8360 8433 8434 8361 +4489 4543 4544 4490 8217 8290 8291 8218 +4543 4616 4617 4544 8290 8363 8364 8291 +4616 4683 4684 4617 8363 8436 8437 8364 +4491 4546 4547 4492 8220 8293 8294 8221 +4546 4619 4620 4547 8293 8366 8367 8294 +4619 4685 4686 4620 8366 8439 8440 8367 +4493 4549 4550 4494 8223 8296 8297 8224 +4549 4622 4623 4550 8296 8369 8370 8297 +4622 4687 4688 4623 8369 8442 8443 8370 +4495 4552 4553 4496 8226 8299 8300 8227 +4552 4625 4626 4553 8299 8372 8373 8300 +4625 4689 4690 4626 8372 8445 8446 8373 +4497 4555 4556 4498 8229 8302 8303 8230 +4555 4628 4629 4556 8302 8375 8376 8303 +4628 4691 4692 4629 8375 8448 8449 8376 +4499 4558 4559 4500 8232 8305 8306 8233 +4558 4631 4632 4559 8305 8378 8379 8306 +4631 4693 4694 4632 8378 8451 8452 8379 +4501 4561 4562 4502 8235 8308 8309 8236 +4561 4634 4635 4562 8308 8381 8382 8309 +4634 4695 4696 4635 8381 8454 8455 8382 +4503 4564 4565 4504 8238 8311 8312 8239 +4564 4637 4638 4565 8311 8384 8385 8312 +4637 4697 4698 4638 8384 8457 8458 8385 +4505 4567 4568 4506 8241 8314 8315 8242 +4567 4640 4641 4568 8314 8387 8388 8315 +4640 4699 4700 4641 8387 8460 8461 8388 +4507 4570 4571 4508 8244 8317 8318 8245 +4570 4643 4644 4571 8317 8390 8391 8318 +4643 4701 4702 4644 8390 8463 8464 8391 +4509 4573 4574 4510 8247 8320 8321 8248 +4573 4646 4647 4574 8320 8393 8394 8321 +4646 4703 4704 4647 8393 8466 8467 8394 +4511 4576 4577 4512 8250 8323 8324 8251 +4576 4649 4650 4577 8323 8396 8397 8324 +4649 4705 4706 4650 8396 8469 8470 8397 +4513 4579 4580 4514 8253 8326 8327 8254 +4579 4652 4653 4580 8326 8399 8400 8327 +4652 4707 4708 4653 8399 8472 8473 8400 +4515 4582 4583 4516 8256 8329 8330 8257 +4582 4655 4656 4583 8329 8402 8403 8330 +4655 4709 4710 4656 8402 8475 8476 8403 +4517 4585 4586 4518 8259 8332 8333 8260 +4585 4658 4659 4586 8332 8405 8406 8333 +4658 4711 4712 4659 8405 8478 8479 8406 +4519 4588 4589 4520 8262 8335 8336 8263 +4588 4661 4662 4589 8335 8408 8409 8336 +4661 4713 4714 4662 8408 8481 8482 8409 +4521 4591 4592 4522 8265 8338 8339 8266 +4591 4664 4665 4592 8338 8411 8412 8339 +4664 4715 4716 4665 8411 8484 8485 8412 +4523 4594 4595 4524 8268 8341 8342 8269 +4594 4667 4668 4595 8341 8414 8415 8342 +4667 4717 4718 4668 8414 8487 8488 8415 +4525 4597 4598 4526 8271 8344 8345 8272 +4597 4670 4671 4598 8344 8417 8418 8345 +4670 4719 4720 4671 8417 8490 8491 8418 +2664 4527 4528 4479 8201 8274 8275 8202 +4527 4600 4601 4528 8274 8347 8348 8275 +4600 2689 4673 4601 8347 8420 8421 8348 +2665 4530 4531 4481 8204 8277 8278 8205 +4530 4603 4604 4531 8277 8350 8351 8278 +4603 2690 4675 4604 8350 8423 8424 8351 +2666 4533 4534 4483 8207 8280 8281 8208 +4533 4606 4607 4534 8280 8353 8354 8281 +4606 2691 4677 4607 8353 8426 8427 8354 +2667 4536 4537 4485 8210 8283 8284 8211 +4536 4609 4610 4537 8283 8356 8357 8284 +4609 2692 4679 4610 8356 8429 8430 8357 +2668 4539 4540 4487 8213 8286 8287 8214 +4539 4612 4613 4540 8286 8359 8360 8287 +4612 2693 4681 4613 8359 8432 8433 8360 +2669 4542 4543 4489 8216 8289 8290 8217 +4542 4615 4616 4543 8289 8362 8363 8290 +4615 2694 4683 4616 8362 8435 8436 8363 +2670 4545 4546 4491 8219 8292 8293 8220 +4545 4618 4619 4546 8292 8365 8366 8293 +4618 2695 4685 4619 8365 8438 8439 8366 +2671 4548 4549 4493 8222 8295 8296 8223 +4548 4621 4622 4549 8295 8368 8369 8296 +4621 2696 4687 4622 8368 8441 8442 8369 +2672 4551 4552 4495 8225 8298 8299 8226 +4551 4624 4625 4552 8298 8371 8372 8299 +4624 2697 4689 4625 8371 8444 8445 8372 +2673 4554 4555 4497 8228 8301 8302 8229 +4554 4627 4628 4555 8301 8374 8375 8302 +4627 2698 4691 4628 8374 8447 8448 8375 +2674 4557 4558 4499 8231 8304 8305 8232 +4557 4630 4631 4558 8304 8377 8378 8305 +4630 2699 4693 4631 8377 8450 8451 8378 +2675 4560 4561 4501 8234 8307 8308 8235 +4560 4633 4634 4561 8307 8380 8381 8308 +4633 2700 4695 4634 8380 8453 8454 8381 +2676 4563 4564 4503 8237 8310 8311 8238 +4563 4636 4637 4564 8310 8383 8384 8311 +4636 2701 4697 4637 8383 8456 8457 8384 +2677 4566 4567 4505 8240 8313 8314 8241 +4566 4639 4640 4567 8313 8386 8387 8314 +4639 2702 4699 4640 8386 8459 8460 8387 +2678 4569 4570 4507 8243 8316 8317 8244 +4569 4642 4643 4570 8316 8389 8390 8317 +4642 2703 4701 4643 8389 8462 8463 8390 +2679 4572 4573 4509 8246 8319 8320 8247 +4572 4645 4646 4573 8319 8392 8393 8320 +4645 2704 4703 4646 8392 8465 8466 8393 +2680 4575 4576 4511 8249 8322 8323 8250 +4575 4648 4649 4576 8322 8395 8396 8323 +4648 2705 4705 4649 8395 8468 8469 8396 +2681 4578 4579 4513 8252 8325 8326 8253 +4578 4651 4652 4579 8325 8398 8399 8326 +4651 2706 4707 4652 8398 8471 8472 8399 +2682 4581 4582 4515 8255 8328 8329 8256 +4581 4654 4655 4582 8328 8401 8402 8329 +4654 2707 4709 4655 8401 8474 8475 8402 +2683 4584 4585 4517 8258 8331 8332 8259 +4584 4657 4658 4585 8331 8404 8405 8332 +4657 2708 4711 4658 8404 8477 8478 8405 +2684 4587 4588 4519 8261 8334 8335 8262 +4587 4660 4661 4588 8334 8407 8408 8335 +4660 2709 4713 4661 8407 8480 8481 8408 +2685 4590 4591 4521 8264 8337 8338 8265 +4590 4663 4664 4591 8337 8410 8411 8338 +4663 2710 4715 4664 8410 8483 8484 8411 +2686 4593 4594 4523 8267 8340 8341 8268 +4593 4666 4667 4594 8340 8413 8414 8341 +4666 2711 4717 4667 8413 8486 8487 8414 +2687 4596 4597 4525 8270 8343 8344 8271 +4596 4669 4670 4597 8343 8416 8417 8344 +4669 2712 4719 4670 8416 8489 8490 8417 +4674 4723 4724 2690 8422 8495 8496 8423 +4723 4796 4797 4724 8495 8568 8569 8496 +4796 4868 2715 4797 8568 8641 8642 8569 +4676 4726 4727 2691 8425 8498 8499 8426 +4726 4799 4800 4727 8498 8571 8572 8499 +4799 4870 2716 4800 8571 8644 8645 8572 +4678 4729 4730 2692 8428 8501 8502 8429 +4729 4802 4803 4730 8501 8574 8575 8502 +4802 4872 2717 4803 8574 8647 8648 8575 +4680 4732 4733 2693 8431 8504 8505 8432 +4732 4805 4806 4733 8504 8577 8578 8505 +4805 4874 2718 4806 8577 8650 8651 8578 +4682 4735 4736 2694 8434 8507 8508 8435 +4735 4808 4809 4736 8507 8580 8581 8508 +4808 4876 2719 4809 8580 8653 8654 8581 +4684 4738 4739 2695 8437 8510 8511 8438 +4738 4811 4812 4739 8510 8583 8584 8511 +4811 4878 2720 4812 8583 8656 8657 8584 +4686 4741 4742 2696 8440 8513 8514 8441 +4741 4814 4815 4742 8513 8586 8587 8514 +4814 4880 2721 4815 8586 8659 8660 8587 +4688 4744 4745 2697 8443 8516 8517 8444 +4744 4817 4818 4745 8516 8589 8590 8517 +4817 4882 2722 4818 8589 8662 8663 8590 +4690 4747 4748 2698 8446 8519 8520 8447 +4747 4820 4821 4748 8519 8592 8593 8520 +4820 4884 2723 4821 8592 8665 8666 8593 +4692 4750 4751 2699 8449 8522 8523 8450 +4750 4823 4824 4751 8522 8595 8596 8523 +4823 4886 2724 4824 8595 8668 8669 8596 +4694 4753 4754 2700 8452 8525 8526 8453 +4753 4826 4827 4754 8525 8598 8599 8526 +4826 4888 2725 4827 8598 8671 8672 8599 +4696 4756 4757 2701 8455 8528 8529 8456 +4756 4829 4830 4757 8528 8601 8602 8529 +4829 4890 2726 4830 8601 8674 8675 8602 +4698 4759 4760 2702 8458 8531 8532 8459 +4759 4832 4833 4760 8531 8604 8605 8532 +4832 4892 2727 4833 8604 8677 8678 8605 +4700 4762 4763 2703 8461 8534 8535 8462 +4762 4835 4836 4763 8534 8607 8608 8535 +4835 4894 2728 4836 8607 8680 8681 8608 +4702 4765 4766 2704 8464 8537 8538 8465 +4765 4838 4839 4766 8537 8610 8611 8538 +4838 4896 2729 4839 8610 8683 8684 8611 +4704 4768 4769 2705 8467 8540 8541 8468 +4768 4841 4842 4769 8540 8613 8614 8541 +4841 4898 2730 4842 8613 8686 8687 8614 +4706 4771 4772 2706 8470 8543 8544 8471 +4771 4844 4845 4772 8543 8616 8617 8544 +4844 4900 2731 4845 8616 8689 8690 8617 +4708 4774 4775 2707 8473 8546 8547 8474 +4774 4847 4848 4775 8546 8619 8620 8547 +4847 4902 2732 4848 8619 8692 8693 8620 +4710 4777 4778 2708 8476 8549 8550 8477 +4777 4850 4851 4778 8549 8622 8623 8550 +4850 4904 2733 4851 8622 8695 8696 8623 +4712 4780 4781 2709 8479 8552 8553 8480 +4780 4853 4854 4781 8552 8625 8626 8553 +4853 4906 2734 4854 8625 8698 8699 8626 +4714 4783 4784 2710 8482 8555 8556 8483 +4783 4856 4857 4784 8555 8628 8629 8556 +4856 4908 2735 4857 8628 8701 8702 8629 +4716 4786 4787 2711 8485 8558 8559 8486 +4786 4859 4860 4787 8558 8631 8632 8559 +4859 4910 2736 4860 8631 8704 8705 8632 +4718 4789 4790 2712 8488 8561 8562 8489 +4789 4862 4863 4790 8561 8634 8635 8562 +4862 4912 2737 4863 8634 8707 8708 8635 +4720 4792 4793 2713 8491 8564 8565 8492 +4792 4865 4866 4793 8564 8637 8638 8565 +4865 4914 2738 4866 8637 8710 8711 8638 +4673 4722 4723 4674 8421 8494 8495 8422 +4722 4795 4796 4723 8494 8567 8568 8495 +4795 4867 4868 4796 8567 8640 8641 8568 +4675 4725 4726 4676 8424 8497 8498 8425 +4725 4798 4799 4726 8497 8570 8571 8498 +4798 4869 4870 4799 8570 8643 8644 8571 +4677 4728 4729 4678 8427 8500 8501 8428 +4728 4801 4802 4729 8500 8573 8574 8501 +4801 4871 4872 4802 8573 8646 8647 8574 +4679 4731 4732 4680 8430 8503 8504 8431 +4731 4804 4805 4732 8503 8576 8577 8504 +4804 4873 4874 4805 8576 8649 8650 8577 +4681 4734 4735 4682 8433 8506 8507 8434 +4734 4807 4808 4735 8506 8579 8580 8507 +4807 4875 4876 4808 8579 8652 8653 8580 +4683 4737 4738 4684 8436 8509 8510 8437 +4737 4810 4811 4738 8509 8582 8583 8510 +4810 4877 4878 4811 8582 8655 8656 8583 +4685 4740 4741 4686 8439 8512 8513 8440 +4740 4813 4814 4741 8512 8585 8586 8513 +4813 4879 4880 4814 8585 8658 8659 8586 +4687 4743 4744 4688 8442 8515 8516 8443 +4743 4816 4817 4744 8515 8588 8589 8516 +4816 4881 4882 4817 8588 8661 8662 8589 +4689 4746 4747 4690 8445 8518 8519 8446 +4746 4819 4820 4747 8518 8591 8592 8519 +4819 4883 4884 4820 8591 8664 8665 8592 +4691 4749 4750 4692 8448 8521 8522 8449 +4749 4822 4823 4750 8521 8594 8595 8522 +4822 4885 4886 4823 8594 8667 8668 8595 +4693 4752 4753 4694 8451 8524 8525 8452 +4752 4825 4826 4753 8524 8597 8598 8525 +4825 4887 4888 4826 8597 8670 8671 8598 +4695 4755 4756 4696 8454 8527 8528 8455 +4755 4828 4829 4756 8527 8600 8601 8528 +4828 4889 4890 4829 8600 8673 8674 8601 +4697 4758 4759 4698 8457 8530 8531 8458 +4758 4831 4832 4759 8530 8603 8604 8531 +4831 4891 4892 4832 8603 8676 8677 8604 +4699 4761 4762 4700 8460 8533 8534 8461 +4761 4834 4835 4762 8533 8606 8607 8534 +4834 4893 4894 4835 8606 8679 8680 8607 +4701 4764 4765 4702 8463 8536 8537 8464 +4764 4837 4838 4765 8536 8609 8610 8537 +4837 4895 4896 4838 8609 8682 8683 8610 +4703 4767 4768 4704 8466 8539 8540 8467 +4767 4840 4841 4768 8539 8612 8613 8540 +4840 4897 4898 4841 8612 8685 8686 8613 +4705 4770 4771 4706 8469 8542 8543 8470 +4770 4843 4844 4771 8542 8615 8616 8543 +4843 4899 4900 4844 8615 8688 8689 8616 +4707 4773 4774 4708 8472 8545 8546 8473 +4773 4846 4847 4774 8545 8618 8619 8546 +4846 4901 4902 4847 8618 8691 8692 8619 +4709 4776 4777 4710 8475 8548 8549 8476 +4776 4849 4850 4777 8548 8621 8622 8549 +4849 4903 4904 4850 8621 8694 8695 8622 +4711 4779 4780 4712 8478 8551 8552 8479 +4779 4852 4853 4780 8551 8624 8625 8552 +4852 4905 4906 4853 8624 8697 8698 8625 +4713 4782 4783 4714 8481 8554 8555 8482 +4782 4855 4856 4783 8554 8627 8628 8555 +4855 4907 4908 4856 8627 8700 8701 8628 +4715 4785 4786 4716 8484 8557 8558 8485 +4785 4858 4859 4786 8557 8630 8631 8558 +4858 4909 4910 4859 8630 8703 8704 8631 +4717 4788 4789 4718 8487 8560 8561 8488 +4788 4861 4862 4789 8560 8633 8634 8561 +4861 4911 4912 4862 8633 8706 8707 8634 +4719 4791 4792 4720 8490 8563 8564 8491 +4791 4864 4865 4792 8563 8636 8637 8564 +4864 4913 4914 4865 8636 8709 8710 8637 +2689 4721 4722 4673 8420 8493 8494 8421 +4721 4794 4795 4722 8493 8566 8567 8494 +4794 2714 4867 4795 8566 8639 8640 8567 +2690 4724 4725 4675 8423 8496 8497 8424 +4724 4797 4798 4725 8496 8569 8570 8497 +4797 2715 4869 4798 8569 8642 8643 8570 +2691 4727 4728 4677 8426 8499 8500 8427 +4727 4800 4801 4728 8499 8572 8573 8500 +4800 2716 4871 4801 8572 8645 8646 8573 +2692 4730 4731 4679 8429 8502 8503 8430 +4730 4803 4804 4731 8502 8575 8576 8503 +4803 2717 4873 4804 8575 8648 8649 8576 +2693 4733 4734 4681 8432 8505 8506 8433 +4733 4806 4807 4734 8505 8578 8579 8506 +4806 2718 4875 4807 8578 8651 8652 8579 +2694 4736 4737 4683 8435 8508 8509 8436 +4736 4809 4810 4737 8508 8581 8582 8509 +4809 2719 4877 4810 8581 8654 8655 8582 +2695 4739 4740 4685 8438 8511 8512 8439 +4739 4812 4813 4740 8511 8584 8585 8512 +4812 2720 4879 4813 8584 8657 8658 8585 +2696 4742 4743 4687 8441 8514 8515 8442 +4742 4815 4816 4743 8514 8587 8588 8515 +4815 2721 4881 4816 8587 8660 8661 8588 +2697 4745 4746 4689 8444 8517 8518 8445 +4745 4818 4819 4746 8517 8590 8591 8518 +4818 2722 4883 4819 8590 8663 8664 8591 +2698 4748 4749 4691 8447 8520 8521 8448 +4748 4821 4822 4749 8520 8593 8594 8521 +4821 2723 4885 4822 8593 8666 8667 8594 +2699 4751 4752 4693 8450 8523 8524 8451 +4751 4824 4825 4752 8523 8596 8597 8524 +4824 2724 4887 4825 8596 8669 8670 8597 +2700 4754 4755 4695 8453 8526 8527 8454 +4754 4827 4828 4755 8526 8599 8600 8527 +4827 2725 4889 4828 8599 8672 8673 8600 +2701 4757 4758 4697 8456 8529 8530 8457 +4757 4830 4831 4758 8529 8602 8603 8530 +4830 2726 4891 4831 8602 8675 8676 8603 +2702 4760 4761 4699 8459 8532 8533 8460 +4760 4833 4834 4761 8532 8605 8606 8533 +4833 2727 4893 4834 8605 8678 8679 8606 +2703 4763 4764 4701 8462 8535 8536 8463 +4763 4836 4837 4764 8535 8608 8609 8536 +4836 2728 4895 4837 8608 8681 8682 8609 +2704 4766 4767 4703 8465 8538 8539 8466 +4766 4839 4840 4767 8538 8611 8612 8539 +4839 2729 4897 4840 8611 8684 8685 8612 +2705 4769 4770 4705 8468 8541 8542 8469 +4769 4842 4843 4770 8541 8614 8615 8542 +4842 2730 4899 4843 8614 8687 8688 8615 +2706 4772 4773 4707 8471 8544 8545 8472 +4772 4845 4846 4773 8544 8617 8618 8545 +4845 2731 4901 4846 8617 8690 8691 8618 +2707 4775 4776 4709 8474 8547 8548 8475 +4775 4848 4849 4776 8547 8620 8621 8548 +4848 2732 4903 4849 8620 8693 8694 8621 +2708 4778 4779 4711 8477 8550 8551 8478 +4778 4851 4852 4779 8550 8623 8624 8551 +4851 2733 4905 4852 8623 8696 8697 8624 +2709 4781 4782 4713 8480 8553 8554 8481 +4781 4854 4855 4782 8553 8626 8627 8554 +4854 2734 4907 4855 8626 8699 8700 8627 +2710 4784 4785 4715 8483 8556 8557 8484 +4784 4857 4858 4785 8556 8629 8630 8557 +4857 2735 4909 4858 8629 8702 8703 8630 +2711 4787 4788 4717 8486 8559 8560 8487 +4787 4860 4861 4788 8559 8632 8633 8560 +4860 2736 4911 4861 8632 8705 8706 8633 +2712 4790 4791 4719 8489 8562 8563 8490 +4790 4863 4864 4791 8562 8635 8636 8563 +4863 2737 4913 4864 8635 8708 8709 8636 +4868 4917 4918 2715 8641 8714 8715 8642 +4917 4990 4991 4918 8714 8787 8788 8715 +4990 5062 2740 4991 8787 8860 8861 8788 +4870 4920 4921 2716 8644 8717 8718 8645 +4920 4993 4994 4921 8717 8790 8791 8718 +4993 5064 2741 4994 8790 8863 8864 8791 +4872 4923 4924 2717 8647 8720 8721 8648 +4923 4996 4997 4924 8720 8793 8794 8721 +4996 5066 2742 4997 8793 8866 8867 8794 +4874 4926 4927 2718 8650 8723 8724 8651 +4926 4999 5000 4927 8723 8796 8797 8724 +4999 5068 2743 5000 8796 8869 8870 8797 +4876 4929 4930 2719 8653 8726 8727 8654 +4929 5002 5003 4930 8726 8799 8800 8727 +5002 5070 2744 5003 8799 8872 8873 8800 +4878 4932 4933 2720 8656 8729 8730 8657 +4932 5005 5006 4933 8729 8802 8803 8730 +5005 5072 2745 5006 8802 8875 8876 8803 +4880 4935 4936 2721 8659 8732 8733 8660 +4935 5008 5009 4936 8732 8805 8806 8733 +5008 5074 2746 5009 8805 8878 8879 8806 +4882 4938 4939 2722 8662 8735 8736 8663 +4938 5011 5012 4939 8735 8808 8809 8736 +5011 5076 2747 5012 8808 8881 8882 8809 +4884 4941 4942 2723 8665 8738 8739 8666 +4941 5014 5015 4942 8738 8811 8812 8739 +5014 5078 2748 5015 8811 8884 8885 8812 +4886 4944 4945 2724 8668 8741 8742 8669 +4944 5017 5018 4945 8741 8814 8815 8742 +5017 5080 2749 5018 8814 8887 8888 8815 +4888 4947 4948 2725 8671 8744 8745 8672 +4947 5020 5021 4948 8744 8817 8818 8745 +5020 5082 2750 5021 8817 8890 8891 8818 +4890 4950 4951 2726 8674 8747 8748 8675 +4950 5023 5024 4951 8747 8820 8821 8748 +5023 5084 2751 5024 8820 8893 8894 8821 +4892 4953 4954 2727 8677 8750 8751 8678 +4953 5026 5027 4954 8750 8823 8824 8751 +5026 5086 2752 5027 8823 8896 8897 8824 +4894 4956 4957 2728 8680 8753 8754 8681 +4956 5029 5030 4957 8753 8826 8827 8754 +5029 5088 2753 5030 8826 8899 8900 8827 +4896 4959 4960 2729 8683 8756 8757 8684 +4959 5032 5033 4960 8756 8829 8830 8757 +5032 5090 2754 5033 8829 8902 8903 8830 +4898 4962 4963 2730 8686 8759 8760 8687 +4962 5035 5036 4963 8759 8832 8833 8760 +5035 5092 2755 5036 8832 8905 8906 8833 +4900 4965 4966 2731 8689 8762 8763 8690 +4965 5038 5039 4966 8762 8835 8836 8763 +5038 5094 2756 5039 8835 8908 8909 8836 +4902 4968 4969 2732 8692 8765 8766 8693 +4968 5041 5042 4969 8765 8838 8839 8766 +5041 5096 2757 5042 8838 8911 8912 8839 +4904 4971 4972 2733 8695 8768 8769 8696 +4971 5044 5045 4972 8768 8841 8842 8769 +5044 5098 2758 5045 8841 8914 8915 8842 +4906 4974 4975 2734 8698 8771 8772 8699 +4974 5047 5048 4975 8771 8844 8845 8772 +5047 5100 2759 5048 8844 8917 8918 8845 +4908 4977 4978 2735 8701 8774 8775 8702 +4977 5050 5051 4978 8774 8847 8848 8775 +5050 5102 2760 5051 8847 8920 8921 8848 +4910 4980 4981 2736 8704 8777 8778 8705 +4980 5053 5054 4981 8777 8850 8851 8778 +5053 5104 2761 5054 8850 8923 8924 8851 +4912 4983 4984 2737 8707 8780 8781 8708 +4983 5056 5057 4984 8780 8853 8854 8781 +5056 5106 2762 5057 8853 8926 8927 8854 +4914 4986 4987 2738 8710 8783 8784 8711 +4986 5059 5060 4987 8783 8856 8857 8784 +5059 5108 2763 5060 8856 8929 8930 8857 +4867 4916 4917 4868 8640 8713 8714 8641 +4916 4989 4990 4917 8713 8786 8787 8714 +4989 5061 5062 4990 8786 8859 8860 8787 +4869 4919 4920 4870 8643 8716 8717 8644 +4919 4992 4993 4920 8716 8789 8790 8717 +4992 5063 5064 4993 8789 8862 8863 8790 +4871 4922 4923 4872 8646 8719 8720 8647 +4922 4995 4996 4923 8719 8792 8793 8720 +4995 5065 5066 4996 8792 8865 8866 8793 +4873 4925 4926 4874 8649 8722 8723 8650 +4925 4998 4999 4926 8722 8795 8796 8723 +4998 5067 5068 4999 8795 8868 8869 8796 +4875 4928 4929 4876 8652 8725 8726 8653 +4928 5001 5002 4929 8725 8798 8799 8726 +5001 5069 5070 5002 8798 8871 8872 8799 +4877 4931 4932 4878 8655 8728 8729 8656 +4931 5004 5005 4932 8728 8801 8802 8729 +5004 5071 5072 5005 8801 8874 8875 8802 +4879 4934 4935 4880 8658 8731 8732 8659 +4934 5007 5008 4935 8731 8804 8805 8732 +5007 5073 5074 5008 8804 8877 8878 8805 +4881 4937 4938 4882 8661 8734 8735 8662 +4937 5010 5011 4938 8734 8807 8808 8735 +5010 5075 5076 5011 8807 8880 8881 8808 +4883 4940 4941 4884 8664 8737 8738 8665 +4940 5013 5014 4941 8737 8810 8811 8738 +5013 5077 5078 5014 8810 8883 8884 8811 +4885 4943 4944 4886 8667 8740 8741 8668 +4943 5016 5017 4944 8740 8813 8814 8741 +5016 5079 5080 5017 8813 8886 8887 8814 +4887 4946 4947 4888 8670 8743 8744 8671 +4946 5019 5020 4947 8743 8816 8817 8744 +5019 5081 5082 5020 8816 8889 8890 8817 +4889 4949 4950 4890 8673 8746 8747 8674 +4949 5022 5023 4950 8746 8819 8820 8747 +5022 5083 5084 5023 8819 8892 8893 8820 +4891 4952 4953 4892 8676 8749 8750 8677 +4952 5025 5026 4953 8749 8822 8823 8750 +5025 5085 5086 5026 8822 8895 8896 8823 +4893 4955 4956 4894 8679 8752 8753 8680 +4955 5028 5029 4956 8752 8825 8826 8753 +5028 5087 5088 5029 8825 8898 8899 8826 +4895 4958 4959 4896 8682 8755 8756 8683 +4958 5031 5032 4959 8755 8828 8829 8756 +5031 5089 5090 5032 8828 8901 8902 8829 +4897 4961 4962 4898 8685 8758 8759 8686 +4961 5034 5035 4962 8758 8831 8832 8759 +5034 5091 5092 5035 8831 8904 8905 8832 +4899 4964 4965 4900 8688 8761 8762 8689 +4964 5037 5038 4965 8761 8834 8835 8762 +5037 5093 5094 5038 8834 8907 8908 8835 +4901 4967 4968 4902 8691 8764 8765 8692 +4967 5040 5041 4968 8764 8837 8838 8765 +5040 5095 5096 5041 8837 8910 8911 8838 +4903 4970 4971 4904 8694 8767 8768 8695 +4970 5043 5044 4971 8767 8840 8841 8768 +5043 5097 5098 5044 8840 8913 8914 8841 +4905 4973 4974 4906 8697 8770 8771 8698 +4973 5046 5047 4974 8770 8843 8844 8771 +5046 5099 5100 5047 8843 8916 8917 8844 +4907 4976 4977 4908 8700 8773 8774 8701 +4976 5049 5050 4977 8773 8846 8847 8774 +5049 5101 5102 5050 8846 8919 8920 8847 +4909 4979 4980 4910 8703 8776 8777 8704 +4979 5052 5053 4980 8776 8849 8850 8777 +5052 5103 5104 5053 8849 8922 8923 8850 +4911 4982 4983 4912 8706 8779 8780 8707 +4982 5055 5056 4983 8779 8852 8853 8780 +5055 5105 5106 5056 8852 8925 8926 8853 +4913 4985 4986 4914 8709 8782 8783 8710 +4985 5058 5059 4986 8782 8855 8856 8783 +5058 5107 5108 5059 8855 8928 8929 8856 +2714 4915 4916 4867 8639 8712 8713 8640 +4915 4988 4989 4916 8712 8785 8786 8713 +4988 2739 5061 4989 8785 8858 8859 8786 +2715 4918 4919 4869 8642 8715 8716 8643 +4918 4991 4992 4919 8715 8788 8789 8716 +4991 2740 5063 4992 8788 8861 8862 8789 +2716 4921 4922 4871 8645 8718 8719 8646 +4921 4994 4995 4922 8718 8791 8792 8719 +4994 2741 5065 4995 8791 8864 8865 8792 +2717 4924 4925 4873 8648 8721 8722 8649 +4924 4997 4998 4925 8721 8794 8795 8722 +4997 2742 5067 4998 8794 8867 8868 8795 +2718 4927 4928 4875 8651 8724 8725 8652 +4927 5000 5001 4928 8724 8797 8798 8725 +5000 2743 5069 5001 8797 8870 8871 8798 +2719 4930 4931 4877 8654 8727 8728 8655 +4930 5003 5004 4931 8727 8800 8801 8728 +5003 2744 5071 5004 8800 8873 8874 8801 +2720 4933 4934 4879 8657 8730 8731 8658 +4933 5006 5007 4934 8730 8803 8804 8731 +5006 2745 5073 5007 8803 8876 8877 8804 +2721 4936 4937 4881 8660 8733 8734 8661 +4936 5009 5010 4937 8733 8806 8807 8734 +5009 2746 5075 5010 8806 8879 8880 8807 +2722 4939 4940 4883 8663 8736 8737 8664 +4939 5012 5013 4940 8736 8809 8810 8737 +5012 2747 5077 5013 8809 8882 8883 8810 +2723 4942 4943 4885 8666 8739 8740 8667 +4942 5015 5016 4943 8739 8812 8813 8740 +5015 2748 5079 5016 8812 8885 8886 8813 +2724 4945 4946 4887 8669 8742 8743 8670 +4945 5018 5019 4946 8742 8815 8816 8743 +5018 2749 5081 5019 8815 8888 8889 8816 +2725 4948 4949 4889 8672 8745 8746 8673 +4948 5021 5022 4949 8745 8818 8819 8746 +5021 2750 5083 5022 8818 8891 8892 8819 +2726 4951 4952 4891 8675 8748 8749 8676 +4951 5024 5025 4952 8748 8821 8822 8749 +5024 2751 5085 5025 8821 8894 8895 8822 +2727 4954 4955 4893 8678 8751 8752 8679 +4954 5027 5028 4955 8751 8824 8825 8752 +5027 2752 5087 5028 8824 8897 8898 8825 +2728 4957 4958 4895 8681 8754 8755 8682 +4957 5030 5031 4958 8754 8827 8828 8755 +5030 2753 5089 5031 8827 8900 8901 8828 +2729 4960 4961 4897 8684 8757 8758 8685 +4960 5033 5034 4961 8757 8830 8831 8758 +5033 2754 5091 5034 8830 8903 8904 8831 +2730 4963 4964 4899 8687 8760 8761 8688 +4963 5036 5037 4964 8760 8833 8834 8761 +5036 2755 5093 5037 8833 8906 8907 8834 +2731 4966 4967 4901 8690 8763 8764 8691 +4966 5039 5040 4967 8763 8836 8837 8764 +5039 2756 5095 5040 8836 8909 8910 8837 +2732 4969 4970 4903 8693 8766 8767 8694 +4969 5042 5043 4970 8766 8839 8840 8767 +5042 2757 5097 5043 8839 8912 8913 8840 +2733 4972 4973 4905 8696 8769 8770 8697 +4972 5045 5046 4973 8769 8842 8843 8770 +5045 2758 5099 5046 8842 8915 8916 8843 +2734 4975 4976 4907 8699 8772 8773 8700 +4975 5048 5049 4976 8772 8845 8846 8773 +5048 2759 5101 5049 8845 8918 8919 8846 +2735 4978 4979 4909 8702 8775 8776 8703 +4978 5051 5052 4979 8775 8848 8849 8776 +5051 2760 5103 5052 8848 8921 8922 8849 +2736 4981 4982 4911 8705 8778 8779 8706 +4981 5054 5055 4982 8778 8851 8852 8779 +5054 2761 5105 5055 8851 8924 8925 8852 +2737 4984 4985 4913 8708 8781 8782 8709 +4984 5057 5058 4985 8781 8854 8855 8782 +5057 2762 5107 5058 8854 8927 8928 8855 +5062 5111 5112 2740 8860 8933 8934 8861 +5111 5184 5185 5112 8933 9006 9007 8934 +5184 5256 2765 5185 9006 9079 9080 9007 +5064 5114 5115 2741 8863 8936 8937 8864 +5114 5187 5188 5115 8936 9009 9010 8937 +5187 5258 2766 5188 9009 9082 9083 9010 +5066 5117 5118 2742 8866 8939 8940 8867 +5117 5190 5191 5118 8939 9012 9013 8940 +5190 5260 2767 5191 9012 9085 9086 9013 +5068 5120 5121 2743 8869 8942 8943 8870 +5120 5193 5194 5121 8942 9015 9016 8943 +5193 5262 2768 5194 9015 9088 9089 9016 +5070 5123 5124 2744 8872 8945 8946 8873 +5123 5196 5197 5124 8945 9018 9019 8946 +5196 5264 2769 5197 9018 9091 9092 9019 +5072 5126 5127 2745 8875 8948 8949 8876 +5126 5199 5200 5127 8948 9021 9022 8949 +5199 5266 2770 5200 9021 9094 9095 9022 +5074 5129 5130 2746 8878 8951 8952 8879 +5129 5202 5203 5130 8951 9024 9025 8952 +5202 5268 2771 5203 9024 9097 9098 9025 +5076 5132 5133 2747 8881 8954 8955 8882 +5132 5205 5206 5133 8954 9027 9028 8955 +5205 5270 2772 5206 9027 9100 9101 9028 +5078 5135 5136 2748 8884 8957 8958 8885 +5135 5208 5209 5136 8957 9030 9031 8958 +5208 5272 2773 5209 9030 9103 9104 9031 +5080 5138 5139 2749 8887 8960 8961 8888 +5138 5211 5212 5139 8960 9033 9034 8961 +5211 5274 2774 5212 9033 9106 9107 9034 +5082 5141 5142 2750 8890 8963 8964 8891 +5141 5214 5215 5142 8963 9036 9037 8964 +5214 5276 2775 5215 9036 9109 9110 9037 +5084 5144 5145 2751 8893 8966 8967 8894 +5144 5217 5218 5145 8966 9039 9040 8967 +5217 5278 2776 5218 9039 9112 9113 9040 +5086 5147 5148 2752 8896 8969 8970 8897 +5147 5220 5221 5148 8969 9042 9043 8970 +5220 5280 2777 5221 9042 9115 9116 9043 +5088 5150 5151 2753 8899 8972 8973 8900 +5150 5223 5224 5151 8972 9045 9046 8973 +5223 5282 2778 5224 9045 9118 9119 9046 +5090 5153 5154 2754 8902 8975 8976 8903 +5153 5226 5227 5154 8975 9048 9049 8976 +5226 5284 2779 5227 9048 9121 9122 9049 +5092 5156 5157 2755 8905 8978 8979 8906 +5156 5229 5230 5157 8978 9051 9052 8979 +5229 5286 2780 5230 9051 9124 9125 9052 +5094 5159 5160 2756 8908 8981 8982 8909 +5159 5232 5233 5160 8981 9054 9055 8982 +5232 5288 2781 5233 9054 9127 9128 9055 +5096 5162 5163 2757 8911 8984 8985 8912 +5162 5235 5236 5163 8984 9057 9058 8985 +5235 5290 2782 5236 9057 9130 9131 9058 +5098 5165 5166 2758 8914 8987 8988 8915 +5165 5238 5239 5166 8987 9060 9061 8988 +5238 5292 2783 5239 9060 9133 9134 9061 +5100 5168 5169 2759 8917 8990 8991 8918 +5168 5241 5242 5169 8990 9063 9064 8991 +5241 5294 2784 5242 9063 9136 9137 9064 +5102 5171 5172 2760 8920 8993 8994 8921 +5171 5244 5245 5172 8993 9066 9067 8994 +5244 5296 2785 5245 9066 9139 9140 9067 +5104 5174 5175 2761 8923 8996 8997 8924 +5174 5247 5248 5175 8996 9069 9070 8997 +5247 5298 2786 5248 9069 9142 9143 9070 +5106 5177 5178 2762 8926 8999 9000 8927 +5177 5250 5251 5178 8999 9072 9073 9000 +5250 5300 2787 5251 9072 9145 9146 9073 +5108 5180 5181 2763 8929 9002 9003 8930 +5180 5253 5254 5181 9002 9075 9076 9003 +5253 5302 2788 5254 9075 9148 9149 9076 +5061 5110 5111 5062 8859 8932 8933 8860 +5110 5183 5184 5111 8932 9005 9006 8933 +5183 5255 5256 5184 9005 9078 9079 9006 +5063 5113 5114 5064 8862 8935 8936 8863 +5113 5186 5187 5114 8935 9008 9009 8936 +5186 5257 5258 5187 9008 9081 9082 9009 +5065 5116 5117 5066 8865 8938 8939 8866 +5116 5189 5190 5117 8938 9011 9012 8939 +5189 5259 5260 5190 9011 9084 9085 9012 +5067 5119 5120 5068 8868 8941 8942 8869 +5119 5192 5193 5120 8941 9014 9015 8942 +5192 5261 5262 5193 9014 9087 9088 9015 +5069 5122 5123 5070 8871 8944 8945 8872 +5122 5195 5196 5123 8944 9017 9018 8945 +5195 5263 5264 5196 9017 9090 9091 9018 +5071 5125 5126 5072 8874 8947 8948 8875 +5125 5198 5199 5126 8947 9020 9021 8948 +5198 5265 5266 5199 9020 9093 9094 9021 +5073 5128 5129 5074 8877 8950 8951 8878 +5128 5201 5202 5129 8950 9023 9024 8951 +5201 5267 5268 5202 9023 9096 9097 9024 +5075 5131 5132 5076 8880 8953 8954 8881 +5131 5204 5205 5132 8953 9026 9027 8954 +5204 5269 5270 5205 9026 9099 9100 9027 +5077 5134 5135 5078 8883 8956 8957 8884 +5134 5207 5208 5135 8956 9029 9030 8957 +5207 5271 5272 5208 9029 9102 9103 9030 +5079 5137 5138 5080 8886 8959 8960 8887 +5137 5210 5211 5138 8959 9032 9033 8960 +5210 5273 5274 5211 9032 9105 9106 9033 +5081 5140 5141 5082 8889 8962 8963 8890 +5140 5213 5214 5141 8962 9035 9036 8963 +5213 5275 5276 5214 9035 9108 9109 9036 +5083 5143 5144 5084 8892 8965 8966 8893 +5143 5216 5217 5144 8965 9038 9039 8966 +5216 5277 5278 5217 9038 9111 9112 9039 +5085 5146 5147 5086 8895 8968 8969 8896 +5146 5219 5220 5147 8968 9041 9042 8969 +5219 5279 5280 5220 9041 9114 9115 9042 +5087 5149 5150 5088 8898 8971 8972 8899 +5149 5222 5223 5150 8971 9044 9045 8972 +5222 5281 5282 5223 9044 9117 9118 9045 +5089 5152 5153 5090 8901 8974 8975 8902 +5152 5225 5226 5153 8974 9047 9048 8975 +5225 5283 5284 5226 9047 9120 9121 9048 +5091 5155 5156 5092 8904 8977 8978 8905 +5155 5228 5229 5156 8977 9050 9051 8978 +5228 5285 5286 5229 9050 9123 9124 9051 +5093 5158 5159 5094 8907 8980 8981 8908 +5158 5231 5232 5159 8980 9053 9054 8981 +5231 5287 5288 5232 9053 9126 9127 9054 +5095 5161 5162 5096 8910 8983 8984 8911 +5161 5234 5235 5162 8983 9056 9057 8984 +5234 5289 5290 5235 9056 9129 9130 9057 +5097 5164 5165 5098 8913 8986 8987 8914 +5164 5237 5238 5165 8986 9059 9060 8987 +5237 5291 5292 5238 9059 9132 9133 9060 +5099 5167 5168 5100 8916 8989 8990 8917 +5167 5240 5241 5168 8989 9062 9063 8990 +5240 5293 5294 5241 9062 9135 9136 9063 +5101 5170 5171 5102 8919 8992 8993 8920 +5170 5243 5244 5171 8992 9065 9066 8993 +5243 5295 5296 5244 9065 9138 9139 9066 +5103 5173 5174 5104 8922 8995 8996 8923 +5173 5246 5247 5174 8995 9068 9069 8996 +5246 5297 5298 5247 9068 9141 9142 9069 +5105 5176 5177 5106 8925 8998 8999 8926 +5176 5249 5250 5177 8998 9071 9072 8999 +5249 5299 5300 5250 9071 9144 9145 9072 +5107 5179 5180 5108 8928 9001 9002 8929 +5179 5252 5253 5180 9001 9074 9075 9002 +5252 5301 5302 5253 9074 9147 9148 9075 +2739 5109 5110 5061 8858 8931 8932 8859 +5109 5182 5183 5110 8931 9004 9005 8932 +5182 2764 5255 5183 9004 9077 9078 9005 +2740 5112 5113 5063 8861 8934 8935 8862 +5112 5185 5186 5113 8934 9007 9008 8935 +5185 2765 5257 5186 9007 9080 9081 9008 +2741 5115 5116 5065 8864 8937 8938 8865 +5115 5188 5189 5116 8937 9010 9011 8938 +5188 2766 5259 5189 9010 9083 9084 9011 +2742 5118 5119 5067 8867 8940 8941 8868 +5118 5191 5192 5119 8940 9013 9014 8941 +5191 2767 5261 5192 9013 9086 9087 9014 +2743 5121 5122 5069 8870 8943 8944 8871 +5121 5194 5195 5122 8943 9016 9017 8944 +5194 2768 5263 5195 9016 9089 9090 9017 +2744 5124 5125 5071 8873 8946 8947 8874 +5124 5197 5198 5125 8946 9019 9020 8947 +5197 2769 5265 5198 9019 9092 9093 9020 +2745 5127 5128 5073 8876 8949 8950 8877 +5127 5200 5201 5128 8949 9022 9023 8950 +5200 2770 5267 5201 9022 9095 9096 9023 +2746 5130 5131 5075 8879 8952 8953 8880 +5130 5203 5204 5131 8952 9025 9026 8953 +5203 2771 5269 5204 9025 9098 9099 9026 +2747 5133 5134 5077 8882 8955 8956 8883 +5133 5206 5207 5134 8955 9028 9029 8956 +5206 2772 5271 5207 9028 9101 9102 9029 +2748 5136 5137 5079 8885 8958 8959 8886 +5136 5209 5210 5137 8958 9031 9032 8959 +5209 2773 5273 5210 9031 9104 9105 9032 +2749 5139 5140 5081 8888 8961 8962 8889 +5139 5212 5213 5140 8961 9034 9035 8962 +5212 2774 5275 5213 9034 9107 9108 9035 +2750 5142 5143 5083 8891 8964 8965 8892 +5142 5215 5216 5143 8964 9037 9038 8965 +5215 2775 5277 5216 9037 9110 9111 9038 +2751 5145 5146 5085 8894 8967 8968 8895 +5145 5218 5219 5146 8967 9040 9041 8968 +5218 2776 5279 5219 9040 9113 9114 9041 +2752 5148 5149 5087 8897 8970 8971 8898 +5148 5221 5222 5149 8970 9043 9044 8971 +5221 2777 5281 5222 9043 9116 9117 9044 +2753 5151 5152 5089 8900 8973 8974 8901 +5151 5224 5225 5152 8973 9046 9047 8974 +5224 2778 5283 5225 9046 9119 9120 9047 +2754 5154 5155 5091 8903 8976 8977 8904 +5154 5227 5228 5155 8976 9049 9050 8977 +5227 2779 5285 5228 9049 9122 9123 9050 +2755 5157 5158 5093 8906 8979 8980 8907 +5157 5230 5231 5158 8979 9052 9053 8980 +5230 2780 5287 5231 9052 9125 9126 9053 +2756 5160 5161 5095 8909 8982 8983 8910 +5160 5233 5234 5161 8982 9055 9056 8983 +5233 2781 5289 5234 9055 9128 9129 9056 +2757 5163 5164 5097 8912 8985 8986 8913 +5163 5236 5237 5164 8985 9058 9059 8986 +5236 2782 5291 5237 9058 9131 9132 9059 +2758 5166 5167 5099 8915 8988 8989 8916 +5166 5239 5240 5167 8988 9061 9062 8989 +5239 2783 5293 5240 9061 9134 9135 9062 +2759 5169 5170 5101 8918 8991 8992 8919 +5169 5242 5243 5170 8991 9064 9065 8992 +5242 2784 5295 5243 9064 9137 9138 9065 +2760 5172 5173 5103 8921 8994 8995 8922 +5172 5245 5246 5173 8994 9067 9068 8995 +5245 2785 5297 5246 9067 9140 9141 9068 +2761 5175 5176 5105 8924 8997 8998 8925 +5175 5248 5249 5176 8997 9070 9071 8998 +5248 2786 5299 5249 9070 9143 9144 9071 +2762 5178 5179 5107 8927 9000 9001 8928 +5178 5251 5252 5179 9000 9073 9074 9001 +5251 2787 5301 5252 9073 9146 9147 9074 +5256 5305 5306 2765 9079 9152 9153 9080 +5305 5378 5379 5306 9152 9225 9226 9153 +5378 5450 2790 5379 9225 9298 9299 9226 +5258 5308 5309 2766 9082 9155 9156 9083 +5308 5381 5382 5309 9155 9228 9229 9156 +5381 5452 2791 5382 9228 9301 9302 9229 +5260 5311 5312 2767 9085 9158 9159 9086 +5311 5384 5385 5312 9158 9231 9232 9159 +5384 5454 2792 5385 9231 9304 9305 9232 +5262 5314 5315 2768 9088 9161 9162 9089 +5314 5387 5388 5315 9161 9234 9235 9162 +5387 5456 2793 5388 9234 9307 9308 9235 +5264 5317 5318 2769 9091 9164 9165 9092 +5317 5390 5391 5318 9164 9237 9238 9165 +5390 5458 2794 5391 9237 9310 9311 9238 +5266 5320 5321 2770 9094 9167 9168 9095 +5320 5393 5394 5321 9167 9240 9241 9168 +5393 5460 2795 5394 9240 9313 9314 9241 +5268 5323 5324 2771 9097 9170 9171 9098 +5323 5396 5397 5324 9170 9243 9244 9171 +5396 5462 2796 5397 9243 9316 9317 9244 +5270 5326 5327 2772 9100 9173 9174 9101 +5326 5399 5400 5327 9173 9246 9247 9174 +5399 5464 2797 5400 9246 9319 9320 9247 +5272 5329 5330 2773 9103 9176 9177 9104 +5329 5402 5403 5330 9176 9249 9250 9177 +5402 5466 2798 5403 9249 9322 9323 9250 +5274 5332 5333 2774 9106 9179 9180 9107 +5332 5405 5406 5333 9179 9252 9253 9180 +5405 5468 2799 5406 9252 9325 9326 9253 +5276 5335 5336 2775 9109 9182 9183 9110 +5335 5408 5409 5336 9182 9255 9256 9183 +5408 5470 2800 5409 9255 9328 9329 9256 +5278 5338 5339 2776 9112 9185 9186 9113 +5338 5411 5412 5339 9185 9258 9259 9186 +5411 5472 2801 5412 9258 9331 9332 9259 +5280 5341 5342 2777 9115 9188 9189 9116 +5341 5414 5415 5342 9188 9261 9262 9189 +5414 5474 2802 5415 9261 9334 9335 9262 +5282 5344 5345 2778 9118 9191 9192 9119 +5344 5417 5418 5345 9191 9264 9265 9192 +5417 5476 2803 5418 9264 9337 9338 9265 +5284 5347 5348 2779 9121 9194 9195 9122 +5347 5420 5421 5348 9194 9267 9268 9195 +5420 5478 2804 5421 9267 9340 9341 9268 +5286 5350 5351 2780 9124 9197 9198 9125 +5350 5423 5424 5351 9197 9270 9271 9198 +5423 5480 2805 5424 9270 9343 9344 9271 +5288 5353 5354 2781 9127 9200 9201 9128 +5353 5426 5427 5354 9200 9273 9274 9201 +5426 5482 2806 5427 9273 9346 9347 9274 +5290 5356 5357 2782 9130 9203 9204 9131 +5356 5429 5430 5357 9203 9276 9277 9204 +5429 5484 2807 5430 9276 9349 9350 9277 +5292 5359 5360 2783 9133 9206 9207 9134 +5359 5432 5433 5360 9206 9279 9280 9207 +5432 5486 2808 5433 9279 9352 9353 9280 +5294 5362 5363 2784 9136 9209 9210 9137 +5362 5435 5436 5363 9209 9282 9283 9210 +5435 5488 2809 5436 9282 9355 9356 9283 +5296 5365 5366 2785 9139 9212 9213 9140 +5365 5438 5439 5366 9212 9285 9286 9213 +5438 5490 2810 5439 9285 9358 9359 9286 +5298 5368 5369 2786 9142 9215 9216 9143 +5368 5441 5442 5369 9215 9288 9289 9216 +5441 5492 2811 5442 9288 9361 9362 9289 +5300 5371 5372 2787 9145 9218 9219 9146 +5371 5444 5445 5372 9218 9291 9292 9219 +5444 5494 2812 5445 9291 9364 9365 9292 +5302 5374 5375 2788 9148 9221 9222 9149 +5374 5447 5448 5375 9221 9294 9295 9222 +5447 5496 2813 5448 9294 9367 9368 9295 +5255 5304 5305 5256 9078 9151 9152 9079 +5304 5377 5378 5305 9151 9224 9225 9152 +5377 5449 5450 5378 9224 9297 9298 9225 +5257 5307 5308 5258 9081 9154 9155 9082 +5307 5380 5381 5308 9154 9227 9228 9155 +5380 5451 5452 5381 9227 9300 9301 9228 +5259 5310 5311 5260 9084 9157 9158 9085 +5310 5383 5384 5311 9157 9230 9231 9158 +5383 5453 5454 5384 9230 9303 9304 9231 +5261 5313 5314 5262 9087 9160 9161 9088 +5313 5386 5387 5314 9160 9233 9234 9161 +5386 5455 5456 5387 9233 9306 9307 9234 +5263 5316 5317 5264 9090 9163 9164 9091 +5316 5389 5390 5317 9163 9236 9237 9164 +5389 5457 5458 5390 9236 9309 9310 9237 +5265 5319 5320 5266 9093 9166 9167 9094 +5319 5392 5393 5320 9166 9239 9240 9167 +5392 5459 5460 5393 9239 9312 9313 9240 +5267 5322 5323 5268 9096 9169 9170 9097 +5322 5395 5396 5323 9169 9242 9243 9170 +5395 5461 5462 5396 9242 9315 9316 9243 +5269 5325 5326 5270 9099 9172 9173 9100 +5325 5398 5399 5326 9172 9245 9246 9173 +5398 5463 5464 5399 9245 9318 9319 9246 +5271 5328 5329 5272 9102 9175 9176 9103 +5328 5401 5402 5329 9175 9248 9249 9176 +5401 5465 5466 5402 9248 9321 9322 9249 +5273 5331 5332 5274 9105 9178 9179 9106 +5331 5404 5405 5332 9178 9251 9252 9179 +5404 5467 5468 5405 9251 9324 9325 9252 +5275 5334 5335 5276 9108 9181 9182 9109 +5334 5407 5408 5335 9181 9254 9255 9182 +5407 5469 5470 5408 9254 9327 9328 9255 +5277 5337 5338 5278 9111 9184 9185 9112 +5337 5410 5411 5338 9184 9257 9258 9185 +5410 5471 5472 5411 9257 9330 9331 9258 +5279 5340 5341 5280 9114 9187 9188 9115 +5340 5413 5414 5341 9187 9260 9261 9188 +5413 5473 5474 5414 9260 9333 9334 9261 +5281 5343 5344 5282 9117 9190 9191 9118 +5343 5416 5417 5344 9190 9263 9264 9191 +5416 5475 5476 5417 9263 9336 9337 9264 +5283 5346 5347 5284 9120 9193 9194 9121 +5346 5419 5420 5347 9193 9266 9267 9194 +5419 5477 5478 5420 9266 9339 9340 9267 +5285 5349 5350 5286 9123 9196 9197 9124 +5349 5422 5423 5350 9196 9269 9270 9197 +5422 5479 5480 5423 9269 9342 9343 9270 +5287 5352 5353 5288 9126 9199 9200 9127 +5352 5425 5426 5353 9199 9272 9273 9200 +5425 5481 5482 5426 9272 9345 9346 9273 +5289 5355 5356 5290 9129 9202 9203 9130 +5355 5428 5429 5356 9202 9275 9276 9203 +5428 5483 5484 5429 9275 9348 9349 9276 +5291 5358 5359 5292 9132 9205 9206 9133 +5358 5431 5432 5359 9205 9278 9279 9206 +5431 5485 5486 5432 9278 9351 9352 9279 +5293 5361 5362 5294 9135 9208 9209 9136 +5361 5434 5435 5362 9208 9281 9282 9209 +5434 5487 5488 5435 9281 9354 9355 9282 +5295 5364 5365 5296 9138 9211 9212 9139 +5364 5437 5438 5365 9211 9284 9285 9212 +5437 5489 5490 5438 9284 9357 9358 9285 +5297 5367 5368 5298 9141 9214 9215 9142 +5367 5440 5441 5368 9214 9287 9288 9215 +5440 5491 5492 5441 9287 9360 9361 9288 +5299 5370 5371 5300 9144 9217 9218 9145 +5370 5443 5444 5371 9217 9290 9291 9218 +5443 5493 5494 5444 9290 9363 9364 9291 +5301 5373 5374 5302 9147 9220 9221 9148 +5373 5446 5447 5374 9220 9293 9294 9221 +5446 5495 5496 5447 9293 9366 9367 9294 +2764 5303 5304 5255 9077 9150 9151 9078 +5303 5376 5377 5304 9150 9223 9224 9151 +5376 2789 5449 5377 9223 9296 9297 9224 +2765 5306 5307 5257 9080 9153 9154 9081 +5306 5379 5380 5307 9153 9226 9227 9154 +5379 2790 5451 5380 9226 9299 9300 9227 +2766 5309 5310 5259 9083 9156 9157 9084 +5309 5382 5383 5310 9156 9229 9230 9157 +5382 2791 5453 5383 9229 9302 9303 9230 +2767 5312 5313 5261 9086 9159 9160 9087 +5312 5385 5386 5313 9159 9232 9233 9160 +5385 2792 5455 5386 9232 9305 9306 9233 +2768 5315 5316 5263 9089 9162 9163 9090 +5315 5388 5389 5316 9162 9235 9236 9163 +5388 2793 5457 5389 9235 9308 9309 9236 +2769 5318 5319 5265 9092 9165 9166 9093 +5318 5391 5392 5319 9165 9238 9239 9166 +5391 2794 5459 5392 9238 9311 9312 9239 +2770 5321 5322 5267 9095 9168 9169 9096 +5321 5394 5395 5322 9168 9241 9242 9169 +5394 2795 5461 5395 9241 9314 9315 9242 +2771 5324 5325 5269 9098 9171 9172 9099 +5324 5397 5398 5325 9171 9244 9245 9172 +5397 2796 5463 5398 9244 9317 9318 9245 +2772 5327 5328 5271 9101 9174 9175 9102 +5327 5400 5401 5328 9174 9247 9248 9175 +5400 2797 5465 5401 9247 9320 9321 9248 +2773 5330 5331 5273 9104 9177 9178 9105 +5330 5403 5404 5331 9177 9250 9251 9178 +5403 2798 5467 5404 9250 9323 9324 9251 +2774 5333 5334 5275 9107 9180 9181 9108 +5333 5406 5407 5334 9180 9253 9254 9181 +5406 2799 5469 5407 9253 9326 9327 9254 +2775 5336 5337 5277 9110 9183 9184 9111 +5336 5409 5410 5337 9183 9256 9257 9184 +5409 2800 5471 5410 9256 9329 9330 9257 +2776 5339 5340 5279 9113 9186 9187 9114 +5339 5412 5413 5340 9186 9259 9260 9187 +5412 2801 5473 5413 9259 9332 9333 9260 +2777 5342 5343 5281 9116 9189 9190 9117 +5342 5415 5416 5343 9189 9262 9263 9190 +5415 2802 5475 5416 9262 9335 9336 9263 +2778 5345 5346 5283 9119 9192 9193 9120 +5345 5418 5419 5346 9192 9265 9266 9193 +5418 2803 5477 5419 9265 9338 9339 9266 +2779 5348 5349 5285 9122 9195 9196 9123 +5348 5421 5422 5349 9195 9268 9269 9196 +5421 2804 5479 5422 9268 9341 9342 9269 +2780 5351 5352 5287 9125 9198 9199 9126 +5351 5424 5425 5352 9198 9271 9272 9199 +5424 2805 5481 5425 9271 9344 9345 9272 +2781 5354 5355 5289 9128 9201 9202 9129 +5354 5427 5428 5355 9201 9274 9275 9202 +5427 2806 5483 5428 9274 9347 9348 9275 +2782 5357 5358 5291 9131 9204 9205 9132 +5357 5430 5431 5358 9204 9277 9278 9205 +5430 2807 5485 5431 9277 9350 9351 9278 +2783 5360 5361 5293 9134 9207 9208 9135 +5360 5433 5434 5361 9207 9280 9281 9208 +5433 2808 5487 5434 9280 9353 9354 9281 +2784 5363 5364 5295 9137 9210 9211 9138 +5363 5436 5437 5364 9210 9283 9284 9211 +5436 2809 5489 5437 9283 9356 9357 9284 +2785 5366 5367 5297 9140 9213 9214 9141 +5366 5439 5440 5367 9213 9286 9287 9214 +5439 2810 5491 5440 9286 9359 9360 9287 +2786 5369 5370 5299 9143 9216 9217 9144 +5369 5442 5443 5370 9216 9289 9290 9217 +5442 2811 5493 5443 9289 9362 9363 9290 +2787 5372 5373 5301 9146 9219 9220 9147 +5372 5445 5446 5373 9219 9292 9293 9220 +5445 2812 5495 5446 9292 9365 9366 9293 +5450 5499 5500 2790 9298 9371 9372 9299 +5499 5572 5573 5500 9371 9444 9445 9372 +5572 5644 2815 5573 9444 9517 9518 9445 +5452 5502 5503 2791 9301 9374 9375 9302 +5502 5575 5576 5503 9374 9447 9448 9375 +5575 5646 2816 5576 9447 9520 9521 9448 +5454 5505 5506 2792 9304 9377 9378 9305 +5505 5578 5579 5506 9377 9450 9451 9378 +5578 5648 2817 5579 9450 9523 9524 9451 +5456 5508 5509 2793 9307 9380 9381 9308 +5508 5581 5582 5509 9380 9453 9454 9381 +5581 5650 2818 5582 9453 9526 9527 9454 +5458 5511 5512 2794 9310 9383 9384 9311 +5511 5584 5585 5512 9383 9456 9457 9384 +5584 5652 2819 5585 9456 9529 9530 9457 +5460 5514 5515 2795 9313 9386 9387 9314 +5514 5587 5588 5515 9386 9459 9460 9387 +5587 5654 2820 5588 9459 9532 9533 9460 +5462 5517 5518 2796 9316 9389 9390 9317 +5517 5590 5591 5518 9389 9462 9463 9390 +5590 5656 2821 5591 9462 9535 9536 9463 +5464 5520 5521 2797 9319 9392 9393 9320 +5520 5593 5594 5521 9392 9465 9466 9393 +5593 5658 2822 5594 9465 9538 9539 9466 +5466 5523 5524 2798 9322 9395 9396 9323 +5523 5596 5597 5524 9395 9468 9469 9396 +5596 5660 2823 5597 9468 9541 9542 9469 +5468 5526 5527 2799 9325 9398 9399 9326 +5526 5599 5600 5527 9398 9471 9472 9399 +5599 5662 2824 5600 9471 9544 9545 9472 +5470 5529 5530 2800 9328 9401 9402 9329 +5529 5602 5603 5530 9401 9474 9475 9402 +5602 5664 2825 5603 9474 9547 9548 9475 +5472 5532 5533 2801 9331 9404 9405 9332 +5532 5605 5606 5533 9404 9477 9478 9405 +5605 5666 2826 5606 9477 9550 9551 9478 +5474 5535 5536 2802 9334 9407 9408 9335 +5535 5608 5609 5536 9407 9480 9481 9408 +5608 5668 2827 5609 9480 9553 9554 9481 +5476 5538 5539 2803 9337 9410 9411 9338 +5538 5611 5612 5539 9410 9483 9484 9411 +5611 5670 2828 5612 9483 9556 9557 9484 +5478 5541 5542 2804 9340 9413 9414 9341 +5541 5614 5615 5542 9413 9486 9487 9414 +5614 5672 2829 5615 9486 9559 9560 9487 +5480 5544 5545 2805 9343 9416 9417 9344 +5544 5617 5618 5545 9416 9489 9490 9417 +5617 5674 2830 5618 9489 9562 9563 9490 +5482 5547 5548 2806 9346 9419 9420 9347 +5547 5620 5621 5548 9419 9492 9493 9420 +5620 5676 2831 5621 9492 9565 9566 9493 +5484 5550 5551 2807 9349 9422 9423 9350 +5550 5623 5624 5551 9422 9495 9496 9423 +5623 5678 2832 5624 9495 9568 9569 9496 +5486 5553 5554 2808 9352 9425 9426 9353 +5553 5626 5627 5554 9425 9498 9499 9426 +5626 5680 2833 5627 9498 9571 9572 9499 +5488 5556 5557 2809 9355 9428 9429 9356 +5556 5629 5630 5557 9428 9501 9502 9429 +5629 5682 2834 5630 9501 9574 9575 9502 +5490 5559 5560 2810 9358 9431 9432 9359 +5559 5632 5633 5560 9431 9504 9505 9432 +5632 5684 2835 5633 9504 9577 9578 9505 +5492 5562 5563 2811 9361 9434 9435 9362 +5562 5635 5636 5563 9434 9507 9508 9435 +5635 5686 2836 5636 9507 9580 9581 9508 +5494 5565 5566 2812 9364 9437 9438 9365 +5565 5638 5639 5566 9437 9510 9511 9438 +5638 5688 2837 5639 9510 9583 9584 9511 +5496 5568 5569 2813 9367 9440 9441 9368 +5568 5641 5642 5569 9440 9513 9514 9441 +5641 5690 2838 5642 9513 9586 9587 9514 +5449 5498 5499 5450 9297 9370 9371 9298 +5498 5571 5572 5499 9370 9443 9444 9371 +5571 5643 5644 5572 9443 9516 9517 9444 +5451 5501 5502 5452 9300 9373 9374 9301 +5501 5574 5575 5502 9373 9446 9447 9374 +5574 5645 5646 5575 9446 9519 9520 9447 +5453 5504 5505 5454 9303 9376 9377 9304 +5504 5577 5578 5505 9376 9449 9450 9377 +5577 5647 5648 5578 9449 9522 9523 9450 +5455 5507 5508 5456 9306 9379 9380 9307 +5507 5580 5581 5508 9379 9452 9453 9380 +5580 5649 5650 5581 9452 9525 9526 9453 +5457 5510 5511 5458 9309 9382 9383 9310 +5510 5583 5584 5511 9382 9455 9456 9383 +5583 5651 5652 5584 9455 9528 9529 9456 +5459 5513 5514 5460 9312 9385 9386 9313 +5513 5586 5587 5514 9385 9458 9459 9386 +5586 5653 5654 5587 9458 9531 9532 9459 +5461 5516 5517 5462 9315 9388 9389 9316 +5516 5589 5590 5517 9388 9461 9462 9389 +5589 5655 5656 5590 9461 9534 9535 9462 +5463 5519 5520 5464 9318 9391 9392 9319 +5519 5592 5593 5520 9391 9464 9465 9392 +5592 5657 5658 5593 9464 9537 9538 9465 +5465 5522 5523 5466 9321 9394 9395 9322 +5522 5595 5596 5523 9394 9467 9468 9395 +5595 5659 5660 5596 9467 9540 9541 9468 +5467 5525 5526 5468 9324 9397 9398 9325 +5525 5598 5599 5526 9397 9470 9471 9398 +5598 5661 5662 5599 9470 9543 9544 9471 +5469 5528 5529 5470 9327 9400 9401 9328 +5528 5601 5602 5529 9400 9473 9474 9401 +5601 5663 5664 5602 9473 9546 9547 9474 +5471 5531 5532 5472 9330 9403 9404 9331 +5531 5604 5605 5532 9403 9476 9477 9404 +5604 5665 5666 5605 9476 9549 9550 9477 +5473 5534 5535 5474 9333 9406 9407 9334 +5534 5607 5608 5535 9406 9479 9480 9407 +5607 5667 5668 5608 9479 9552 9553 9480 +5475 5537 5538 5476 9336 9409 9410 9337 +5537 5610 5611 5538 9409 9482 9483 9410 +5610 5669 5670 5611 9482 9555 9556 9483 +5477 5540 5541 5478 9339 9412 9413 9340 +5540 5613 5614 5541 9412 9485 9486 9413 +5613 5671 5672 5614 9485 9558 9559 9486 +5479 5543 5544 5480 9342 9415 9416 9343 +5543 5616 5617 5544 9415 9488 9489 9416 +5616 5673 5674 5617 9488 9561 9562 9489 +5481 5546 5547 5482 9345 9418 9419 9346 +5546 5619 5620 5547 9418 9491 9492 9419 +5619 5675 5676 5620 9491 9564 9565 9492 +5483 5549 5550 5484 9348 9421 9422 9349 +5549 5622 5623 5550 9421 9494 9495 9422 +5622 5677 5678 5623 9494 9567 9568 9495 +5485 5552 5553 5486 9351 9424 9425 9352 +5552 5625 5626 5553 9424 9497 9498 9425 +5625 5679 5680 5626 9497 9570 9571 9498 +5487 5555 5556 5488 9354 9427 9428 9355 +5555 5628 5629 5556 9427 9500 9501 9428 +5628 5681 5682 5629 9500 9573 9574 9501 +5489 5558 5559 5490 9357 9430 9431 9358 +5558 5631 5632 5559 9430 9503 9504 9431 +5631 5683 5684 5632 9503 9576 9577 9504 +5491 5561 5562 5492 9360 9433 9434 9361 +5561 5634 5635 5562 9433 9506 9507 9434 +5634 5685 5686 5635 9506 9579 9580 9507 +5493 5564 5565 5494 9363 9436 9437 9364 +5564 5637 5638 5565 9436 9509 9510 9437 +5637 5687 5688 5638 9509 9582 9583 9510 +5495 5567 5568 5496 9366 9439 9440 9367 +5567 5640 5641 5568 9439 9512 9513 9440 +5640 5689 5690 5641 9512 9585 9586 9513 +2789 5497 5498 5449 9296 9369 9370 9297 +5497 5570 5571 5498 9369 9442 9443 9370 +5570 2814 5643 5571 9442 9515 9516 9443 +2790 5500 5501 5451 9299 9372 9373 9300 +5500 5573 5574 5501 9372 9445 9446 9373 +5573 2815 5645 5574 9445 9518 9519 9446 +2791 5503 5504 5453 9302 9375 9376 9303 +5503 5576 5577 5504 9375 9448 9449 9376 +5576 2816 5647 5577 9448 9521 9522 9449 +2792 5506 5507 5455 9305 9378 9379 9306 +5506 5579 5580 5507 9378 9451 9452 9379 +5579 2817 5649 5580 9451 9524 9525 9452 +2793 5509 5510 5457 9308 9381 9382 9309 +5509 5582 5583 5510 9381 9454 9455 9382 +5582 2818 5651 5583 9454 9527 9528 9455 +2794 5512 5513 5459 9311 9384 9385 9312 +5512 5585 5586 5513 9384 9457 9458 9385 +5585 2819 5653 5586 9457 9530 9531 9458 +2795 5515 5516 5461 9314 9387 9388 9315 +5515 5588 5589 5516 9387 9460 9461 9388 +5588 2820 5655 5589 9460 9533 9534 9461 +2796 5518 5519 5463 9317 9390 9391 9318 +5518 5591 5592 5519 9390 9463 9464 9391 +5591 2821 5657 5592 9463 9536 9537 9464 +2797 5521 5522 5465 9320 9393 9394 9321 +5521 5594 5595 5522 9393 9466 9467 9394 +5594 2822 5659 5595 9466 9539 9540 9467 +2798 5524 5525 5467 9323 9396 9397 9324 +5524 5597 5598 5525 9396 9469 9470 9397 +5597 2823 5661 5598 9469 9542 9543 9470 +2799 5527 5528 5469 9326 9399 9400 9327 +5527 5600 5601 5528 9399 9472 9473 9400 +5600 2824 5663 5601 9472 9545 9546 9473 +2800 5530 5531 5471 9329 9402 9403 9330 +5530 5603 5604 5531 9402 9475 9476 9403 +5603 2825 5665 5604 9475 9548 9549 9476 +2801 5533 5534 5473 9332 9405 9406 9333 +5533 5606 5607 5534 9405 9478 9479 9406 +5606 2826 5667 5607 9478 9551 9552 9479 +2802 5536 5537 5475 9335 9408 9409 9336 +5536 5609 5610 5537 9408 9481 9482 9409 +5609 2827 5669 5610 9481 9554 9555 9482 +2803 5539 5540 5477 9338 9411 9412 9339 +5539 5612 5613 5540 9411 9484 9485 9412 +5612 2828 5671 5613 9484 9557 9558 9485 +2804 5542 5543 5479 9341 9414 9415 9342 +5542 5615 5616 5543 9414 9487 9488 9415 +5615 2829 5673 5616 9487 9560 9561 9488 +2805 5545 5546 5481 9344 9417 9418 9345 +5545 5618 5619 5546 9417 9490 9491 9418 +5618 2830 5675 5619 9490 9563 9564 9491 +2806 5548 5549 5483 9347 9420 9421 9348 +5548 5621 5622 5549 9420 9493 9494 9421 +5621 2831 5677 5622 9493 9566 9567 9494 +2807 5551 5552 5485 9350 9423 9424 9351 +5551 5624 5625 5552 9423 9496 9497 9424 +5624 2832 5679 5625 9496 9569 9570 9497 +2808 5554 5555 5487 9353 9426 9427 9354 +5554 5627 5628 5555 9426 9499 9500 9427 +5627 2833 5681 5628 9499 9572 9573 9500 +2809 5557 5558 5489 9356 9429 9430 9357 +5557 5630 5631 5558 9429 9502 9503 9430 +5630 2834 5683 5631 9502 9575 9576 9503 +2810 5560 5561 5491 9359 9432 9433 9360 +5560 5633 5634 5561 9432 9505 9506 9433 +5633 2835 5685 5634 9505 9578 9579 9506 +2811 5563 5564 5493 9362 9435 9436 9363 +5563 5636 5637 5564 9435 9508 9509 9436 +5636 2836 5687 5637 9508 9581 9582 9509 +2812 5566 5567 5495 9365 9438 9439 9366 +5566 5639 5640 5567 9438 9511 9512 9439 +5639 2837 5689 5640 9511 9584 9585 9512 +5644 5693 5694 2815 9517 9590 9591 9518 +5693 5766 5767 5694 9590 9663 9664 9591 +5766 5838 2840 5767 9663 9736 9737 9664 +5646 5696 5697 2816 9520 9593 9594 9521 +5696 5769 5770 5697 9593 9666 9667 9594 +5769 5840 2841 5770 9666 9739 9740 9667 +5648 5699 5700 2817 9523 9596 9597 9524 +5699 5772 5773 5700 9596 9669 9670 9597 +5772 5842 2842 5773 9669 9742 9743 9670 +5650 5702 5703 2818 9526 9599 9600 9527 +5702 5775 5776 5703 9599 9672 9673 9600 +5775 5844 2843 5776 9672 9745 9746 9673 +5652 5705 5706 2819 9529 9602 9603 9530 +5705 5778 5779 5706 9602 9675 9676 9603 +5778 5846 2844 5779 9675 9748 9749 9676 +5654 5708 5709 2820 9532 9605 9606 9533 +5708 5781 5782 5709 9605 9678 9679 9606 +5781 5848 2845 5782 9678 9751 9752 9679 +5656 5711 5712 2821 9535 9608 9609 9536 +5711 5784 5785 5712 9608 9681 9682 9609 +5784 5850 2846 5785 9681 9754 9755 9682 +5658 5714 5715 2822 9538 9611 9612 9539 +5714 5787 5788 5715 9611 9684 9685 9612 +5787 5852 2847 5788 9684 9757 9758 9685 +5660 5717 5718 2823 9541 9614 9615 9542 +5717 5790 5791 5718 9614 9687 9688 9615 +5790 5854 2848 5791 9687 9760 9761 9688 +5662 5720 5721 2824 9544 9617 9618 9545 +5720 5793 5794 5721 9617 9690 9691 9618 +5793 5856 2849 5794 9690 9763 9764 9691 +5664 5723 5724 2825 9547 9620 9621 9548 +5723 5796 5797 5724 9620 9693 9694 9621 +5796 5858 2850 5797 9693 9766 9767 9694 +5666 5726 5727 2826 9550 9623 9624 9551 +5726 5799 5800 5727 9623 9696 9697 9624 +5799 5860 2851 5800 9696 9769 9770 9697 +5668 5729 5730 2827 9553 9626 9627 9554 +5729 5802 5803 5730 9626 9699 9700 9627 +5802 5862 2852 5803 9699 9772 9773 9700 +5670 5732 5733 2828 9556 9629 9630 9557 +5732 5805 5806 5733 9629 9702 9703 9630 +5805 5864 2853 5806 9702 9775 9776 9703 +5672 5735 5736 2829 9559 9632 9633 9560 +5735 5808 5809 5736 9632 9705 9706 9633 +5808 5866 2854 5809 9705 9778 9779 9706 +5674 5738 5739 2830 9562 9635 9636 9563 +5738 5811 5812 5739 9635 9708 9709 9636 +5811 5868 2855 5812 9708 9781 9782 9709 +5676 5741 5742 2831 9565 9638 9639 9566 +5741 5814 5815 5742 9638 9711 9712 9639 +5814 5870 2856 5815 9711 9784 9785 9712 +5678 5744 5745 2832 9568 9641 9642 9569 +5744 5817 5818 5745 9641 9714 9715 9642 +5817 5872 2857 5818 9714 9787 9788 9715 +5680 5747 5748 2833 9571 9644 9645 9572 +5747 5820 5821 5748 9644 9717 9718 9645 +5820 5874 2858 5821 9717 9790 9791 9718 +5682 5750 5751 2834 9574 9647 9648 9575 +5750 5823 5824 5751 9647 9720 9721 9648 +5823 5876 2859 5824 9720 9793 9794 9721 +5684 5753 5754 2835 9577 9650 9651 9578 +5753 5826 5827 5754 9650 9723 9724 9651 +5826 5878 2860 5827 9723 9796 9797 9724 +5686 5756 5757 2836 9580 9653 9654 9581 +5756 5829 5830 5757 9653 9726 9727 9654 +5829 5880 2861 5830 9726 9799 9800 9727 +5688 5759 5760 2837 9583 9656 9657 9584 +5759 5832 5833 5760 9656 9729 9730 9657 +5832 5882 2862 5833 9729 9802 9803 9730 +5690 5762 5763 2838 9586 9659 9660 9587 +5762 5835 5836 5763 9659 9732 9733 9660 +5835 5884 2863 5836 9732 9805 9806 9733 +5643 5692 5693 5644 9516 9589 9590 9517 +5692 5765 5766 5693 9589 9662 9663 9590 +5765 5837 5838 5766 9662 9735 9736 9663 +5645 5695 5696 5646 9519 9592 9593 9520 +5695 5768 5769 5696 9592 9665 9666 9593 +5768 5839 5840 5769 9665 9738 9739 9666 +5647 5698 5699 5648 9522 9595 9596 9523 +5698 5771 5772 5699 9595 9668 9669 9596 +5771 5841 5842 5772 9668 9741 9742 9669 +5649 5701 5702 5650 9525 9598 9599 9526 +5701 5774 5775 5702 9598 9671 9672 9599 +5774 5843 5844 5775 9671 9744 9745 9672 +5651 5704 5705 5652 9528 9601 9602 9529 +5704 5777 5778 5705 9601 9674 9675 9602 +5777 5845 5846 5778 9674 9747 9748 9675 +5653 5707 5708 5654 9531 9604 9605 9532 +5707 5780 5781 5708 9604 9677 9678 9605 +5780 5847 5848 5781 9677 9750 9751 9678 +5655 5710 5711 5656 9534 9607 9608 9535 +5710 5783 5784 5711 9607 9680 9681 9608 +5783 5849 5850 5784 9680 9753 9754 9681 +5657 5713 5714 5658 9537 9610 9611 9538 +5713 5786 5787 5714 9610 9683 9684 9611 +5786 5851 5852 5787 9683 9756 9757 9684 +5659 5716 5717 5660 9540 9613 9614 9541 +5716 5789 5790 5717 9613 9686 9687 9614 +5789 5853 5854 5790 9686 9759 9760 9687 +5661 5719 5720 5662 9543 9616 9617 9544 +5719 5792 5793 5720 9616 9689 9690 9617 +5792 5855 5856 5793 9689 9762 9763 9690 +5663 5722 5723 5664 9546 9619 9620 9547 +5722 5795 5796 5723 9619 9692 9693 9620 +5795 5857 5858 5796 9692 9765 9766 9693 +5665 5725 5726 5666 9549 9622 9623 9550 +5725 5798 5799 5726 9622 9695 9696 9623 +5798 5859 5860 5799 9695 9768 9769 9696 +5667 5728 5729 5668 9552 9625 9626 9553 +5728 5801 5802 5729 9625 9698 9699 9626 +5801 5861 5862 5802 9698 9771 9772 9699 +5669 5731 5732 5670 9555 9628 9629 9556 +5731 5804 5805 5732 9628 9701 9702 9629 +5804 5863 5864 5805 9701 9774 9775 9702 +5671 5734 5735 5672 9558 9631 9632 9559 +5734 5807 5808 5735 9631 9704 9705 9632 +5807 5865 5866 5808 9704 9777 9778 9705 +5673 5737 5738 5674 9561 9634 9635 9562 +5737 5810 5811 5738 9634 9707 9708 9635 +5810 5867 5868 5811 9707 9780 9781 9708 +5675 5740 5741 5676 9564 9637 9638 9565 +5740 5813 5814 5741 9637 9710 9711 9638 +5813 5869 5870 5814 9710 9783 9784 9711 +5677 5743 5744 5678 9567 9640 9641 9568 +5743 5816 5817 5744 9640 9713 9714 9641 +5816 5871 5872 5817 9713 9786 9787 9714 +5679 5746 5747 5680 9570 9643 9644 9571 +5746 5819 5820 5747 9643 9716 9717 9644 +5819 5873 5874 5820 9716 9789 9790 9717 +5681 5749 5750 5682 9573 9646 9647 9574 +5749 5822 5823 5750 9646 9719 9720 9647 +5822 5875 5876 5823 9719 9792 9793 9720 +5683 5752 5753 5684 9576 9649 9650 9577 +5752 5825 5826 5753 9649 9722 9723 9650 +5825 5877 5878 5826 9722 9795 9796 9723 +5685 5755 5756 5686 9579 9652 9653 9580 +5755 5828 5829 5756 9652 9725 9726 9653 +5828 5879 5880 5829 9725 9798 9799 9726 +5687 5758 5759 5688 9582 9655 9656 9583 +5758 5831 5832 5759 9655 9728 9729 9656 +5831 5881 5882 5832 9728 9801 9802 9729 +5689 5761 5762 5690 9585 9658 9659 9586 +5761 5834 5835 5762 9658 9731 9732 9659 +5834 5883 5884 5835 9731 9804 9805 9732 +2814 5691 5692 5643 9515 9588 9589 9516 +5691 5764 5765 5692 9588 9661 9662 9589 +5764 2839 5837 5765 9661 9734 9735 9662 +2815 5694 5695 5645 9518 9591 9592 9519 +5694 5767 5768 5695 9591 9664 9665 9592 +5767 2840 5839 5768 9664 9737 9738 9665 +2816 5697 5698 5647 9521 9594 9595 9522 +5697 5770 5771 5698 9594 9667 9668 9595 +5770 2841 5841 5771 9667 9740 9741 9668 +2817 5700 5701 5649 9524 9597 9598 9525 +5700 5773 5774 5701 9597 9670 9671 9598 +5773 2842 5843 5774 9670 9743 9744 9671 +2818 5703 5704 5651 9527 9600 9601 9528 +5703 5776 5777 5704 9600 9673 9674 9601 +5776 2843 5845 5777 9673 9746 9747 9674 +2819 5706 5707 5653 9530 9603 9604 9531 +5706 5779 5780 5707 9603 9676 9677 9604 +5779 2844 5847 5780 9676 9749 9750 9677 +2820 5709 5710 5655 9533 9606 9607 9534 +5709 5782 5783 5710 9606 9679 9680 9607 +5782 2845 5849 5783 9679 9752 9753 9680 +2821 5712 5713 5657 9536 9609 9610 9537 +5712 5785 5786 5713 9609 9682 9683 9610 +5785 2846 5851 5786 9682 9755 9756 9683 +2822 5715 5716 5659 9539 9612 9613 9540 +5715 5788 5789 5716 9612 9685 9686 9613 +5788 2847 5853 5789 9685 9758 9759 9686 +2823 5718 5719 5661 9542 9615 9616 9543 +5718 5791 5792 5719 9615 9688 9689 9616 +5791 2848 5855 5792 9688 9761 9762 9689 +2824 5721 5722 5663 9545 9618 9619 9546 +5721 5794 5795 5722 9618 9691 9692 9619 +5794 2849 5857 5795 9691 9764 9765 9692 +2825 5724 5725 5665 9548 9621 9622 9549 +5724 5797 5798 5725 9621 9694 9695 9622 +5797 2850 5859 5798 9694 9767 9768 9695 +2826 5727 5728 5667 9551 9624 9625 9552 +5727 5800 5801 5728 9624 9697 9698 9625 +5800 2851 5861 5801 9697 9770 9771 9698 +2827 5730 5731 5669 9554 9627 9628 9555 +5730 5803 5804 5731 9627 9700 9701 9628 +5803 2852 5863 5804 9700 9773 9774 9701 +2828 5733 5734 5671 9557 9630 9631 9558 +5733 5806 5807 5734 9630 9703 9704 9631 +5806 2853 5865 5807 9703 9776 9777 9704 +2829 5736 5737 5673 9560 9633 9634 9561 +5736 5809 5810 5737 9633 9706 9707 9634 +5809 2854 5867 5810 9706 9779 9780 9707 +2830 5739 5740 5675 9563 9636 9637 9564 +5739 5812 5813 5740 9636 9709 9710 9637 +5812 2855 5869 5813 9709 9782 9783 9710 +2831 5742 5743 5677 9566 9639 9640 9567 +5742 5815 5816 5743 9639 9712 9713 9640 +5815 2856 5871 5816 9712 9785 9786 9713 +2832 5745 5746 5679 9569 9642 9643 9570 +5745 5818 5819 5746 9642 9715 9716 9643 +5818 2857 5873 5819 9715 9788 9789 9716 +2833 5748 5749 5681 9572 9645 9646 9573 +5748 5821 5822 5749 9645 9718 9719 9646 +5821 2858 5875 5822 9718 9791 9792 9719 +2834 5751 5752 5683 9575 9648 9649 9576 +5751 5824 5825 5752 9648 9721 9722 9649 +5824 2859 5877 5825 9721 9794 9795 9722 +2835 5754 5755 5685 9578 9651 9652 9579 +5754 5827 5828 5755 9651 9724 9725 9652 +5827 2860 5879 5828 9724 9797 9798 9725 +2836 5757 5758 5687 9581 9654 9655 9582 +5757 5830 5831 5758 9654 9727 9728 9655 +5830 2861 5881 5831 9727 9800 9801 9728 +2837 5760 5761 5689 9584 9657 9658 9585 +5760 5833 5834 5761 9657 9730 9731 9658 +5833 2862 5883 5834 9730 9803 9804 9731 +5838 5887 5888 2840 9736 9809 9810 9737 +5887 5960 5961 5888 9809 9882 9883 9810 +5960 6032 2865 5961 9882 9955 9956 9883 +5840 5890 5891 2841 9739 9812 9813 9740 +5890 5963 5964 5891 9812 9885 9886 9813 +5963 6034 2866 5964 9885 9958 9959 9886 +5842 5893 5894 2842 9742 9815 9816 9743 +5893 5966 5967 5894 9815 9888 9889 9816 +5966 6036 2867 5967 9888 9961 9962 9889 +5844 5896 5897 2843 9745 9818 9819 9746 +5896 5969 5970 5897 9818 9891 9892 9819 +5969 6038 2868 5970 9891 9964 9965 9892 +5846 5899 5900 2844 9748 9821 9822 9749 +5899 5972 5973 5900 9821 9894 9895 9822 +5972 6040 2869 5973 9894 9967 9968 9895 +5848 5902 5903 2845 9751 9824 9825 9752 +5902 5975 5976 5903 9824 9897 9898 9825 +5975 6042 2870 5976 9897 9970 9971 9898 +5850 5905 5906 2846 9754 9827 9828 9755 +5905 5978 5979 5906 9827 9900 9901 9828 +5978 6044 2871 5979 9900 9973 9974 9901 +5852 5908 5909 2847 9757 9830 9831 9758 +5908 5981 5982 5909 9830 9903 9904 9831 +5981 6046 2872 5982 9903 9976 9977 9904 +5854 5911 5912 2848 9760 9833 9834 9761 +5911 5984 5985 5912 9833 9906 9907 9834 +5984 6048 2873 5985 9906 9979 9980 9907 +5856 5914 5915 2849 9763 9836 9837 9764 +5914 5987 5988 5915 9836 9909 9910 9837 +5987 6050 2874 5988 9909 9982 9983 9910 +5858 5917 5918 2850 9766 9839 9840 9767 +5917 5990 5991 5918 9839 9912 9913 9840 +5990 6052 2875 5991 9912 9985 9986 9913 +5860 5920 5921 2851 9769 9842 9843 9770 +5920 5993 5994 5921 9842 9915 9916 9843 +5993 6054 2876 5994 9915 9988 9989 9916 +5862 5923 5924 2852 9772 9845 9846 9773 +5923 5996 5997 5924 9845 9918 9919 9846 +5996 6056 2877 5997 9918 9991 9992 9919 +5864 5926 5927 2853 9775 9848 9849 9776 +5926 5999 6000 5927 9848 9921 9922 9849 +5999 6058 2878 6000 9921 9994 9995 9922 +5866 5929 5930 2854 9778 9851 9852 9779 +5929 6002 6003 5930 9851 9924 9925 9852 +6002 6060 2879 6003 9924 9997 9998 9925 +5868 5932 5933 2855 9781 9854 9855 9782 +5932 6005 6006 5933 9854 9927 9928 9855 +6005 6062 2880 6006 9927 10000 10001 9928 +5870 5935 5936 2856 9784 9857 9858 9785 +5935 6008 6009 5936 9857 9930 9931 9858 +6008 6064 2881 6009 9930 10003 10004 9931 +5872 5938 5939 2857 9787 9860 9861 9788 +5938 6011 6012 5939 9860 9933 9934 9861 +6011 6066 2882 6012 9933 10006 10007 9934 +5874 5941 5942 2858 9790 9863 9864 9791 +5941 6014 6015 5942 9863 9936 9937 9864 +6014 6068 2883 6015 9936 10009 10010 9937 +5876 5944 5945 2859 9793 9866 9867 9794 +5944 6017 6018 5945 9866 9939 9940 9867 +6017 6070 2884 6018 9939 10012 10013 9940 +5878 5947 5948 2860 9796 9869 9870 9797 +5947 6020 6021 5948 9869 9942 9943 9870 +6020 6072 2885 6021 9942 10015 10016 9943 +5880 5950 5951 2861 9799 9872 9873 9800 +5950 6023 6024 5951 9872 9945 9946 9873 +6023 6074 2886 6024 9945 10018 10019 9946 +5882 5953 5954 2862 9802 9875 9876 9803 +5953 6026 6027 5954 9875 9948 9949 9876 +6026 6076 2887 6027 9948 10021 10022 9949 +5884 5956 5957 2863 9805 9878 9879 9806 +5956 6029 6030 5957 9878 9951 9952 9879 +6029 6078 2888 6030 9951 10024 10025 9952 +5837 5886 5887 5838 9735 9808 9809 9736 +5886 5959 5960 5887 9808 9881 9882 9809 +5959 6031 6032 5960 9881 9954 9955 9882 +5839 5889 5890 5840 9738 9811 9812 9739 +5889 5962 5963 5890 9811 9884 9885 9812 +5962 6033 6034 5963 9884 9957 9958 9885 +5841 5892 5893 5842 9741 9814 9815 9742 +5892 5965 5966 5893 9814 9887 9888 9815 +5965 6035 6036 5966 9887 9960 9961 9888 +5843 5895 5896 5844 9744 9817 9818 9745 +5895 5968 5969 5896 9817 9890 9891 9818 +5968 6037 6038 5969 9890 9963 9964 9891 +5845 5898 5899 5846 9747 9820 9821 9748 +5898 5971 5972 5899 9820 9893 9894 9821 +5971 6039 6040 5972 9893 9966 9967 9894 +5847 5901 5902 5848 9750 9823 9824 9751 +5901 5974 5975 5902 9823 9896 9897 9824 +5974 6041 6042 5975 9896 9969 9970 9897 +5849 5904 5905 5850 9753 9826 9827 9754 +5904 5977 5978 5905 9826 9899 9900 9827 +5977 6043 6044 5978 9899 9972 9973 9900 +5851 5907 5908 5852 9756 9829 9830 9757 +5907 5980 5981 5908 9829 9902 9903 9830 +5980 6045 6046 5981 9902 9975 9976 9903 +5853 5910 5911 5854 9759 9832 9833 9760 +5910 5983 5984 5911 9832 9905 9906 9833 +5983 6047 6048 5984 9905 9978 9979 9906 +5855 5913 5914 5856 9762 9835 9836 9763 +5913 5986 5987 5914 9835 9908 9909 9836 +5986 6049 6050 5987 9908 9981 9982 9909 +5857 5916 5917 5858 9765 9838 9839 9766 +5916 5989 5990 5917 9838 9911 9912 9839 +5989 6051 6052 5990 9911 9984 9985 9912 +5859 5919 5920 5860 9768 9841 9842 9769 +5919 5992 5993 5920 9841 9914 9915 9842 +5992 6053 6054 5993 9914 9987 9988 9915 +5861 5922 5923 5862 9771 9844 9845 9772 +5922 5995 5996 5923 9844 9917 9918 9845 +5995 6055 6056 5996 9917 9990 9991 9918 +5863 5925 5926 5864 9774 9847 9848 9775 +5925 5998 5999 5926 9847 9920 9921 9848 +5998 6057 6058 5999 9920 9993 9994 9921 +5865 5928 5929 5866 9777 9850 9851 9778 +5928 6001 6002 5929 9850 9923 9924 9851 +6001 6059 6060 6002 9923 9996 9997 9924 +5867 5931 5932 5868 9780 9853 9854 9781 +5931 6004 6005 5932 9853 9926 9927 9854 +6004 6061 6062 6005 9926 9999 10000 9927 +5869 5934 5935 5870 9783 9856 9857 9784 +5934 6007 6008 5935 9856 9929 9930 9857 +6007 6063 6064 6008 9929 10002 10003 9930 +5871 5937 5938 5872 9786 9859 9860 9787 +5937 6010 6011 5938 9859 9932 9933 9860 +6010 6065 6066 6011 9932 10005 10006 9933 +5873 5940 5941 5874 9789 9862 9863 9790 +5940 6013 6014 5941 9862 9935 9936 9863 +6013 6067 6068 6014 9935 10008 10009 9936 +5875 5943 5944 5876 9792 9865 9866 9793 +5943 6016 6017 5944 9865 9938 9939 9866 +6016 6069 6070 6017 9938 10011 10012 9939 +5877 5946 5947 5878 9795 9868 9869 9796 +5946 6019 6020 5947 9868 9941 9942 9869 +6019 6071 6072 6020 9941 10014 10015 9942 +5879 5949 5950 5880 9798 9871 9872 9799 +5949 6022 6023 5950 9871 9944 9945 9872 +6022 6073 6074 6023 9944 10017 10018 9945 +5881 5952 5953 5882 9801 9874 9875 9802 +5952 6025 6026 5953 9874 9947 9948 9875 +6025 6075 6076 6026 9947 10020 10021 9948 +5883 5955 5956 5884 9804 9877 9878 9805 +5955 6028 6029 5956 9877 9950 9951 9878 +6028 6077 6078 6029 9950 10023 10024 9951 +2839 5885 5886 5837 9734 9807 9808 9735 +5885 5958 5959 5886 9807 9880 9881 9808 +5958 2864 6031 5959 9880 9953 9954 9881 +2840 5888 5889 5839 9737 9810 9811 9738 +5888 5961 5962 5889 9810 9883 9884 9811 +5961 2865 6033 5962 9883 9956 9957 9884 +2841 5891 5892 5841 9740 9813 9814 9741 +5891 5964 5965 5892 9813 9886 9887 9814 +5964 2866 6035 5965 9886 9959 9960 9887 +2842 5894 5895 5843 9743 9816 9817 9744 +5894 5967 5968 5895 9816 9889 9890 9817 +5967 2867 6037 5968 9889 9962 9963 9890 +2843 5897 5898 5845 9746 9819 9820 9747 +5897 5970 5971 5898 9819 9892 9893 9820 +5970 2868 6039 5971 9892 9965 9966 9893 +2844 5900 5901 5847 9749 9822 9823 9750 +5900 5973 5974 5901 9822 9895 9896 9823 +5973 2869 6041 5974 9895 9968 9969 9896 +2845 5903 5904 5849 9752 9825 9826 9753 +5903 5976 5977 5904 9825 9898 9899 9826 +5976 2870 6043 5977 9898 9971 9972 9899 +2846 5906 5907 5851 9755 9828 9829 9756 +5906 5979 5980 5907 9828 9901 9902 9829 +5979 2871 6045 5980 9901 9974 9975 9902 +2847 5909 5910 5853 9758 9831 9832 9759 +5909 5982 5983 5910 9831 9904 9905 9832 +5982 2872 6047 5983 9904 9977 9978 9905 +2848 5912 5913 5855 9761 9834 9835 9762 +5912 5985 5986 5913 9834 9907 9908 9835 +5985 2873 6049 5986 9907 9980 9981 9908 +2849 5915 5916 5857 9764 9837 9838 9765 +5915 5988 5989 5916 9837 9910 9911 9838 +5988 2874 6051 5989 9910 9983 9984 9911 +2850 5918 5919 5859 9767 9840 9841 9768 +5918 5991 5992 5919 9840 9913 9914 9841 +5991 2875 6053 5992 9913 9986 9987 9914 +2851 5921 5922 5861 9770 9843 9844 9771 +5921 5994 5995 5922 9843 9916 9917 9844 +5994 2876 6055 5995 9916 9989 9990 9917 +2852 5924 5925 5863 9773 9846 9847 9774 +5924 5997 5998 5925 9846 9919 9920 9847 +5997 2877 6057 5998 9919 9992 9993 9920 +2853 5927 5928 5865 9776 9849 9850 9777 +5927 6000 6001 5928 9849 9922 9923 9850 +6000 2878 6059 6001 9922 9995 9996 9923 +2854 5930 5931 5867 9779 9852 9853 9780 +5930 6003 6004 5931 9852 9925 9926 9853 +6003 2879 6061 6004 9925 9998 9999 9926 +2855 5933 5934 5869 9782 9855 9856 9783 +5933 6006 6007 5934 9855 9928 9929 9856 +6006 2880 6063 6007 9928 10001 10002 9929 +2856 5936 5937 5871 9785 9858 9859 9786 +5936 6009 6010 5937 9858 9931 9932 9859 +6009 2881 6065 6010 9931 10004 10005 9932 +2857 5939 5940 5873 9788 9861 9862 9789 +5939 6012 6013 5940 9861 9934 9935 9862 +6012 2882 6067 6013 9934 10007 10008 9935 +2858 5942 5943 5875 9791 9864 9865 9792 +5942 6015 6016 5943 9864 9937 9938 9865 +6015 2883 6069 6016 9937 10010 10011 9938 +2859 5945 5946 5877 9794 9867 9868 9795 +5945 6018 6019 5946 9867 9940 9941 9868 +6018 2884 6071 6019 9940 10013 10014 9941 +2860 5948 5949 5879 9797 9870 9871 9798 +5948 6021 6022 5949 9870 9943 9944 9871 +6021 2885 6073 6022 9943 10016 10017 9944 +2861 5951 5952 5881 9800 9873 9874 9801 +5951 6024 6025 5952 9873 9946 9947 9874 +6024 2886 6075 6025 9946 10019 10020 9947 +2862 5954 5955 5883 9803 9876 9877 9804 +5954 6027 6028 5955 9876 9949 9950 9877 +6027 2887 6077 6028 9949 10022 10023 9950 +6032 6081 6082 2865 9955 10028 10029 9956 +6081 6154 6155 6082 10028 10101 10102 10029 +6154 6226 2890 6155 10101 10174 10175 10102 +6034 6084 6085 2866 9958 10031 10032 9959 +6084 6157 6158 6085 10031 10104 10105 10032 +6157 6228 2891 6158 10104 10177 10178 10105 +6036 6087 6088 2867 9961 10034 10035 9962 +6087 6160 6161 6088 10034 10107 10108 10035 +6160 6230 2892 6161 10107 10180 10181 10108 +6038 6090 6091 2868 9964 10037 10038 9965 +6090 6163 6164 6091 10037 10110 10111 10038 +6163 6232 2893 6164 10110 10183 10184 10111 +6040 6093 6094 2869 9967 10040 10041 9968 +6093 6166 6167 6094 10040 10113 10114 10041 +6166 6234 2894 6167 10113 10186 10187 10114 +6042 6096 6097 2870 9970 10043 10044 9971 +6096 6169 6170 6097 10043 10116 10117 10044 +6169 6236 2895 6170 10116 10189 10190 10117 +6044 6099 6100 2871 9973 10046 10047 9974 +6099 6172 6173 6100 10046 10119 10120 10047 +6172 6238 2896 6173 10119 10192 10193 10120 +6046 6102 6103 2872 9976 10049 10050 9977 +6102 6175 6176 6103 10049 10122 10123 10050 +6175 6240 2897 6176 10122 10195 10196 10123 +6048 6105 6106 2873 9979 10052 10053 9980 +6105 6178 6179 6106 10052 10125 10126 10053 +6178 6242 2898 6179 10125 10198 10199 10126 +6050 6108 6109 2874 9982 10055 10056 9983 +6108 6181 6182 6109 10055 10128 10129 10056 +6181 6244 2899 6182 10128 10201 10202 10129 +6052 6111 6112 2875 9985 10058 10059 9986 +6111 6184 6185 6112 10058 10131 10132 10059 +6184 6246 2900 6185 10131 10204 10205 10132 +6054 6114 6115 2876 9988 10061 10062 9989 +6114 6187 6188 6115 10061 10134 10135 10062 +6187 6248 2901 6188 10134 10207 10208 10135 +6056 6117 6118 2877 9991 10064 10065 9992 +6117 6190 6191 6118 10064 10137 10138 10065 +6190 6250 2902 6191 10137 10210 10211 10138 +6058 6120 6121 2878 9994 10067 10068 9995 +6120 6193 6194 6121 10067 10140 10141 10068 +6193 6252 2903 6194 10140 10213 10214 10141 +6060 6123 6124 2879 9997 10070 10071 9998 +6123 6196 6197 6124 10070 10143 10144 10071 +6196 6254 2904 6197 10143 10216 10217 10144 +6062 6126 6127 2880 10000 10073 10074 10001 +6126 6199 6200 6127 10073 10146 10147 10074 +6199 6256 2905 6200 10146 10219 10220 10147 +6064 6129 6130 2881 10003 10076 10077 10004 +6129 6202 6203 6130 10076 10149 10150 10077 +6202 6258 2906 6203 10149 10222 10223 10150 +6066 6132 6133 2882 10006 10079 10080 10007 +6132 6205 6206 6133 10079 10152 10153 10080 +6205 6260 2907 6206 10152 10225 10226 10153 +6068 6135 6136 2883 10009 10082 10083 10010 +6135 6208 6209 6136 10082 10155 10156 10083 +6208 6262 2908 6209 10155 10228 10229 10156 +6070 6138 6139 2884 10012 10085 10086 10013 +6138 6211 6212 6139 10085 10158 10159 10086 +6211 6264 2909 6212 10158 10231 10232 10159 +6072 6141 6142 2885 10015 10088 10089 10016 +6141 6214 6215 6142 10088 10161 10162 10089 +6214 6266 2910 6215 10161 10234 10235 10162 +6074 6144 6145 2886 10018 10091 10092 10019 +6144 6217 6218 6145 10091 10164 10165 10092 +6217 6268 2911 6218 10164 10237 10238 10165 +6076 6147 6148 2887 10021 10094 10095 10022 +6147 6220 6221 6148 10094 10167 10168 10095 +6220 6270 2912 6221 10167 10240 10241 10168 +6078 6150 6151 2888 10024 10097 10098 10025 +6150 6223 6224 6151 10097 10170 10171 10098 +6223 6272 2913 6224 10170 10243 10244 10171 +6031 6080 6081 6032 9954 10027 10028 9955 +6080 6153 6154 6081 10027 10100 10101 10028 +6153 6225 6226 6154 10100 10173 10174 10101 +6033 6083 6084 6034 9957 10030 10031 9958 +6083 6156 6157 6084 10030 10103 10104 10031 +6156 6227 6228 6157 10103 10176 10177 10104 +6035 6086 6087 6036 9960 10033 10034 9961 +6086 6159 6160 6087 10033 10106 10107 10034 +6159 6229 6230 6160 10106 10179 10180 10107 +6037 6089 6090 6038 9963 10036 10037 9964 +6089 6162 6163 6090 10036 10109 10110 10037 +6162 6231 6232 6163 10109 10182 10183 10110 +6039 6092 6093 6040 9966 10039 10040 9967 +6092 6165 6166 6093 10039 10112 10113 10040 +6165 6233 6234 6166 10112 10185 10186 10113 +6041 6095 6096 6042 9969 10042 10043 9970 +6095 6168 6169 6096 10042 10115 10116 10043 +6168 6235 6236 6169 10115 10188 10189 10116 +6043 6098 6099 6044 9972 10045 10046 9973 +6098 6171 6172 6099 10045 10118 10119 10046 +6171 6237 6238 6172 10118 10191 10192 10119 +6045 6101 6102 6046 9975 10048 10049 9976 +6101 6174 6175 6102 10048 10121 10122 10049 +6174 6239 6240 6175 10121 10194 10195 10122 +6047 6104 6105 6048 9978 10051 10052 9979 +6104 6177 6178 6105 10051 10124 10125 10052 +6177 6241 6242 6178 10124 10197 10198 10125 +6049 6107 6108 6050 9981 10054 10055 9982 +6107 6180 6181 6108 10054 10127 10128 10055 +6180 6243 6244 6181 10127 10200 10201 10128 +6051 6110 6111 6052 9984 10057 10058 9985 +6110 6183 6184 6111 10057 10130 10131 10058 +6183 6245 6246 6184 10130 10203 10204 10131 +6053 6113 6114 6054 9987 10060 10061 9988 +6113 6186 6187 6114 10060 10133 10134 10061 +6186 6247 6248 6187 10133 10206 10207 10134 +6055 6116 6117 6056 9990 10063 10064 9991 +6116 6189 6190 6117 10063 10136 10137 10064 +6189 6249 6250 6190 10136 10209 10210 10137 +6057 6119 6120 6058 9993 10066 10067 9994 +6119 6192 6193 6120 10066 10139 10140 10067 +6192 6251 6252 6193 10139 10212 10213 10140 +6059 6122 6123 6060 9996 10069 10070 9997 +6122 6195 6196 6123 10069 10142 10143 10070 +6195 6253 6254 6196 10142 10215 10216 10143 +6061 6125 6126 6062 9999 10072 10073 10000 +6125 6198 6199 6126 10072 10145 10146 10073 +6198 6255 6256 6199 10145 10218 10219 10146 +6063 6128 6129 6064 10002 10075 10076 10003 +6128 6201 6202 6129 10075 10148 10149 10076 +6201 6257 6258 6202 10148 10221 10222 10149 +6065 6131 6132 6066 10005 10078 10079 10006 +6131 6204 6205 6132 10078 10151 10152 10079 +6204 6259 6260 6205 10151 10224 10225 10152 +6067 6134 6135 6068 10008 10081 10082 10009 +6134 6207 6208 6135 10081 10154 10155 10082 +6207 6261 6262 6208 10154 10227 10228 10155 +6069 6137 6138 6070 10011 10084 10085 10012 +6137 6210 6211 6138 10084 10157 10158 10085 +6210 6263 6264 6211 10157 10230 10231 10158 +6071 6140 6141 6072 10014 10087 10088 10015 +6140 6213 6214 6141 10087 10160 10161 10088 +6213 6265 6266 6214 10160 10233 10234 10161 +6073 6143 6144 6074 10017 10090 10091 10018 +6143 6216 6217 6144 10090 10163 10164 10091 +6216 6267 6268 6217 10163 10236 10237 10164 +6075 6146 6147 6076 10020 10093 10094 10021 +6146 6219 6220 6147 10093 10166 10167 10094 +6219 6269 6270 6220 10166 10239 10240 10167 +6077 6149 6150 6078 10023 10096 10097 10024 +6149 6222 6223 6150 10096 10169 10170 10097 +6222 6271 6272 6223 10169 10242 10243 10170 +2864 6079 6080 6031 9953 10026 10027 9954 +6079 6152 6153 6080 10026 10099 10100 10027 +6152 2889 6225 6153 10099 10172 10173 10100 +2865 6082 6083 6033 9956 10029 10030 9957 +6082 6155 6156 6083 10029 10102 10103 10030 +6155 2890 6227 6156 10102 10175 10176 10103 +2866 6085 6086 6035 9959 10032 10033 9960 +6085 6158 6159 6086 10032 10105 10106 10033 +6158 2891 6229 6159 10105 10178 10179 10106 +2867 6088 6089 6037 9962 10035 10036 9963 +6088 6161 6162 6089 10035 10108 10109 10036 +6161 2892 6231 6162 10108 10181 10182 10109 +2868 6091 6092 6039 9965 10038 10039 9966 +6091 6164 6165 6092 10038 10111 10112 10039 +6164 2893 6233 6165 10111 10184 10185 10112 +2869 6094 6095 6041 9968 10041 10042 9969 +6094 6167 6168 6095 10041 10114 10115 10042 +6167 2894 6235 6168 10114 10187 10188 10115 +2870 6097 6098 6043 9971 10044 10045 9972 +6097 6170 6171 6098 10044 10117 10118 10045 +6170 2895 6237 6171 10117 10190 10191 10118 +2871 6100 6101 6045 9974 10047 10048 9975 +6100 6173 6174 6101 10047 10120 10121 10048 +6173 2896 6239 6174 10120 10193 10194 10121 +2872 6103 6104 6047 9977 10050 10051 9978 +6103 6176 6177 6104 10050 10123 10124 10051 +6176 2897 6241 6177 10123 10196 10197 10124 +2873 6106 6107 6049 9980 10053 10054 9981 +6106 6179 6180 6107 10053 10126 10127 10054 +6179 2898 6243 6180 10126 10199 10200 10127 +2874 6109 6110 6051 9983 10056 10057 9984 +6109 6182 6183 6110 10056 10129 10130 10057 +6182 2899 6245 6183 10129 10202 10203 10130 +2875 6112 6113 6053 9986 10059 10060 9987 +6112 6185 6186 6113 10059 10132 10133 10060 +6185 2900 6247 6186 10132 10205 10206 10133 +2876 6115 6116 6055 9989 10062 10063 9990 +6115 6188 6189 6116 10062 10135 10136 10063 +6188 2901 6249 6189 10135 10208 10209 10136 +2877 6118 6119 6057 9992 10065 10066 9993 +6118 6191 6192 6119 10065 10138 10139 10066 +6191 2902 6251 6192 10138 10211 10212 10139 +2878 6121 6122 6059 9995 10068 10069 9996 +6121 6194 6195 6122 10068 10141 10142 10069 +6194 2903 6253 6195 10141 10214 10215 10142 +2879 6124 6125 6061 9998 10071 10072 9999 +6124 6197 6198 6125 10071 10144 10145 10072 +6197 2904 6255 6198 10144 10217 10218 10145 +2880 6127 6128 6063 10001 10074 10075 10002 +6127 6200 6201 6128 10074 10147 10148 10075 +6200 2905 6257 6201 10147 10220 10221 10148 +2881 6130 6131 6065 10004 10077 10078 10005 +6130 6203 6204 6131 10077 10150 10151 10078 +6203 2906 6259 6204 10150 10223 10224 10151 +2882 6133 6134 6067 10007 10080 10081 10008 +6133 6206 6207 6134 10080 10153 10154 10081 +6206 2907 6261 6207 10153 10226 10227 10154 +2883 6136 6137 6069 10010 10083 10084 10011 +6136 6209 6210 6137 10083 10156 10157 10084 +6209 2908 6263 6210 10156 10229 10230 10157 +2884 6139 6140 6071 10013 10086 10087 10014 +6139 6212 6213 6140 10086 10159 10160 10087 +6212 2909 6265 6213 10159 10232 10233 10160 +2885 6142 6143 6073 10016 10089 10090 10017 +6142 6215 6216 6143 10089 10162 10163 10090 +6215 2910 6267 6216 10162 10235 10236 10163 +2886 6145 6146 6075 10019 10092 10093 10020 +6145 6218 6219 6146 10092 10165 10166 10093 +6218 2911 6269 6219 10165 10238 10239 10166 +2887 6148 6149 6077 10022 10095 10096 10023 +6148 6221 6222 6149 10095 10168 10169 10096 +6221 2912 6271 6222 10168 10241 10242 10169 +6226 6275 6276 2890 10174 10247 10248 10175 +6275 6348 6349 6276 10247 10320 10321 10248 +6348 6420 2915 6349 10320 10393 10394 10321 +6228 6278 6279 2891 10177 10250 10251 10178 +6278 6351 6352 6279 10250 10323 10324 10251 +6351 6422 2916 6352 10323 10396 10397 10324 +6230 6281 6282 2892 10180 10253 10254 10181 +6281 6354 6355 6282 10253 10326 10327 10254 +6354 6424 2917 6355 10326 10399 10400 10327 +6232 6284 6285 2893 10183 10256 10257 10184 +6284 6357 6358 6285 10256 10329 10330 10257 +6357 6426 2918 6358 10329 10402 10403 10330 +6234 6287 6288 2894 10186 10259 10260 10187 +6287 6360 6361 6288 10259 10332 10333 10260 +6360 6428 2919 6361 10332 10405 10406 10333 +6236 6290 6291 2895 10189 10262 10263 10190 +6290 6363 6364 6291 10262 10335 10336 10263 +6363 6430 2920 6364 10335 10408 10409 10336 +6238 6293 6294 2896 10192 10265 10266 10193 +6293 6366 6367 6294 10265 10338 10339 10266 +6366 6432 2921 6367 10338 10411 10412 10339 +6240 6296 6297 2897 10195 10268 10269 10196 +6296 6369 6370 6297 10268 10341 10342 10269 +6369 6434 2922 6370 10341 10414 10415 10342 +6242 6299 6300 2898 10198 10271 10272 10199 +6299 6372 6373 6300 10271 10344 10345 10272 +6372 6436 2923 6373 10344 10417 10418 10345 +6244 6302 6303 2899 10201 10274 10275 10202 +6302 6375 6376 6303 10274 10347 10348 10275 +6375 6438 2924 6376 10347 10420 10421 10348 +6246 6305 6306 2900 10204 10277 10278 10205 +6305 6378 6379 6306 10277 10350 10351 10278 +6378 6440 2925 6379 10350 10423 10424 10351 +6248 6308 6309 2901 10207 10280 10281 10208 +6308 6381 6382 6309 10280 10353 10354 10281 +6381 6442 2926 6382 10353 10426 10427 10354 +6250 6311 6312 2902 10210 10283 10284 10211 +6311 6384 6385 6312 10283 10356 10357 10284 +6384 6444 2927 6385 10356 10429 10430 10357 +6252 6314 6315 2903 10213 10286 10287 10214 +6314 6387 6388 6315 10286 10359 10360 10287 +6387 6446 2928 6388 10359 10432 10433 10360 +6254 6317 6318 2904 10216 10289 10290 10217 +6317 6390 6391 6318 10289 10362 10363 10290 +6390 6448 2929 6391 10362 10435 10436 10363 +6256 6320 6321 2905 10219 10292 10293 10220 +6320 6393 6394 6321 10292 10365 10366 10293 +6393 6450 2930 6394 10365 10438 10439 10366 +6258 6323 6324 2906 10222 10295 10296 10223 +6323 6396 6397 6324 10295 10368 10369 10296 +6396 6452 2931 6397 10368 10441 10442 10369 +6260 6326 6327 2907 10225 10298 10299 10226 +6326 6399 6400 6327 10298 10371 10372 10299 +6399 6454 2932 6400 10371 10444 10445 10372 +6262 6329 6330 2908 10228 10301 10302 10229 +6329 6402 6403 6330 10301 10374 10375 10302 +6402 6456 2933 6403 10374 10447 10448 10375 +6264 6332 6333 2909 10231 10304 10305 10232 +6332 6405 6406 6333 10304 10377 10378 10305 +6405 6458 2934 6406 10377 10450 10451 10378 +6266 6335 6336 2910 10234 10307 10308 10235 +6335 6408 6409 6336 10307 10380 10381 10308 +6408 6460 2935 6409 10380 10453 10454 10381 +6268 6338 6339 2911 10237 10310 10311 10238 +6338 6411 6412 6339 10310 10383 10384 10311 +6411 6462 2936 6412 10383 10456 10457 10384 +6270 6341 6342 2912 10240 10313 10314 10241 +6341 6414 6415 6342 10313 10386 10387 10314 +6414 6464 2937 6415 10386 10459 10460 10387 +6272 6344 6345 2913 10243 10316 10317 10244 +6344 6417 6418 6345 10316 10389 10390 10317 +6417 6466 2938 6418 10389 10462 10463 10390 +6225 6274 6275 6226 10173 10246 10247 10174 +6274 6347 6348 6275 10246 10319 10320 10247 +6347 6419 6420 6348 10319 10392 10393 10320 +6227 6277 6278 6228 10176 10249 10250 10177 +6277 6350 6351 6278 10249 10322 10323 10250 +6350 6421 6422 6351 10322 10395 10396 10323 +6229 6280 6281 6230 10179 10252 10253 10180 +6280 6353 6354 6281 10252 10325 10326 10253 +6353 6423 6424 6354 10325 10398 10399 10326 +6231 6283 6284 6232 10182 10255 10256 10183 +6283 6356 6357 6284 10255 10328 10329 10256 +6356 6425 6426 6357 10328 10401 10402 10329 +6233 6286 6287 6234 10185 10258 10259 10186 +6286 6359 6360 6287 10258 10331 10332 10259 +6359 6427 6428 6360 10331 10404 10405 10332 +6235 6289 6290 6236 10188 10261 10262 10189 +6289 6362 6363 6290 10261 10334 10335 10262 +6362 6429 6430 6363 10334 10407 10408 10335 +6237 6292 6293 6238 10191 10264 10265 10192 +6292 6365 6366 6293 10264 10337 10338 10265 +6365 6431 6432 6366 10337 10410 10411 10338 +6239 6295 6296 6240 10194 10267 10268 10195 +6295 6368 6369 6296 10267 10340 10341 10268 +6368 6433 6434 6369 10340 10413 10414 10341 +6241 6298 6299 6242 10197 10270 10271 10198 +6298 6371 6372 6299 10270 10343 10344 10271 +6371 6435 6436 6372 10343 10416 10417 10344 +6243 6301 6302 6244 10200 10273 10274 10201 +6301 6374 6375 6302 10273 10346 10347 10274 +6374 6437 6438 6375 10346 10419 10420 10347 +6245 6304 6305 6246 10203 10276 10277 10204 +6304 6377 6378 6305 10276 10349 10350 10277 +6377 6439 6440 6378 10349 10422 10423 10350 +6247 6307 6308 6248 10206 10279 10280 10207 +6307 6380 6381 6308 10279 10352 10353 10280 +6380 6441 6442 6381 10352 10425 10426 10353 +6249 6310 6311 6250 10209 10282 10283 10210 +6310 6383 6384 6311 10282 10355 10356 10283 +6383 6443 6444 6384 10355 10428 10429 10356 +6251 6313 6314 6252 10212 10285 10286 10213 +6313 6386 6387 6314 10285 10358 10359 10286 +6386 6445 6446 6387 10358 10431 10432 10359 +6253 6316 6317 6254 10215 10288 10289 10216 +6316 6389 6390 6317 10288 10361 10362 10289 +6389 6447 6448 6390 10361 10434 10435 10362 +6255 6319 6320 6256 10218 10291 10292 10219 +6319 6392 6393 6320 10291 10364 10365 10292 +6392 6449 6450 6393 10364 10437 10438 10365 +6257 6322 6323 6258 10221 10294 10295 10222 +6322 6395 6396 6323 10294 10367 10368 10295 +6395 6451 6452 6396 10367 10440 10441 10368 +6259 6325 6326 6260 10224 10297 10298 10225 +6325 6398 6399 6326 10297 10370 10371 10298 +6398 6453 6454 6399 10370 10443 10444 10371 +6261 6328 6329 6262 10227 10300 10301 10228 +6328 6401 6402 6329 10300 10373 10374 10301 +6401 6455 6456 6402 10373 10446 10447 10374 +6263 6331 6332 6264 10230 10303 10304 10231 +6331 6404 6405 6332 10303 10376 10377 10304 +6404 6457 6458 6405 10376 10449 10450 10377 +6265 6334 6335 6266 10233 10306 10307 10234 +6334 6407 6408 6335 10306 10379 10380 10307 +6407 6459 6460 6408 10379 10452 10453 10380 +6267 6337 6338 6268 10236 10309 10310 10237 +6337 6410 6411 6338 10309 10382 10383 10310 +6410 6461 6462 6411 10382 10455 10456 10383 +6269 6340 6341 6270 10239 10312 10313 10240 +6340 6413 6414 6341 10312 10385 10386 10313 +6413 6463 6464 6414 10385 10458 10459 10386 +6271 6343 6344 6272 10242 10315 10316 10243 +6343 6416 6417 6344 10315 10388 10389 10316 +6416 6465 6466 6417 10388 10461 10462 10389 +2889 6273 6274 6225 10172 10245 10246 10173 +6273 6346 6347 6274 10245 10318 10319 10246 +6346 2914 6419 6347 10318 10391 10392 10319 +2890 6276 6277 6227 10175 10248 10249 10176 +6276 6349 6350 6277 10248 10321 10322 10249 +6349 2915 6421 6350 10321 10394 10395 10322 +2891 6279 6280 6229 10178 10251 10252 10179 +6279 6352 6353 6280 10251 10324 10325 10252 +6352 2916 6423 6353 10324 10397 10398 10325 +2892 6282 6283 6231 10181 10254 10255 10182 +6282 6355 6356 6283 10254 10327 10328 10255 +6355 2917 6425 6356 10327 10400 10401 10328 +2893 6285 6286 6233 10184 10257 10258 10185 +6285 6358 6359 6286 10257 10330 10331 10258 +6358 2918 6427 6359 10330 10403 10404 10331 +2894 6288 6289 6235 10187 10260 10261 10188 +6288 6361 6362 6289 10260 10333 10334 10261 +6361 2919 6429 6362 10333 10406 10407 10334 +2895 6291 6292 6237 10190 10263 10264 10191 +6291 6364 6365 6292 10263 10336 10337 10264 +6364 2920 6431 6365 10336 10409 10410 10337 +2896 6294 6295 6239 10193 10266 10267 10194 +6294 6367 6368 6295 10266 10339 10340 10267 +6367 2921 6433 6368 10339 10412 10413 10340 +2897 6297 6298 6241 10196 10269 10270 10197 +6297 6370 6371 6298 10269 10342 10343 10270 +6370 2922 6435 6371 10342 10415 10416 10343 +2898 6300 6301 6243 10199 10272 10273 10200 +6300 6373 6374 6301 10272 10345 10346 10273 +6373 2923 6437 6374 10345 10418 10419 10346 +2899 6303 6304 6245 10202 10275 10276 10203 +6303 6376 6377 6304 10275 10348 10349 10276 +6376 2924 6439 6377 10348 10421 10422 10349 +2900 6306 6307 6247 10205 10278 10279 10206 +6306 6379 6380 6307 10278 10351 10352 10279 +6379 2925 6441 6380 10351 10424 10425 10352 +2901 6309 6310 6249 10208 10281 10282 10209 +6309 6382 6383 6310 10281 10354 10355 10282 +6382 2926 6443 6383 10354 10427 10428 10355 +2902 6312 6313 6251 10211 10284 10285 10212 +6312 6385 6386 6313 10284 10357 10358 10285 +6385 2927 6445 6386 10357 10430 10431 10358 +2903 6315 6316 6253 10214 10287 10288 10215 +6315 6388 6389 6316 10287 10360 10361 10288 +6388 2928 6447 6389 10360 10433 10434 10361 +2904 6318 6319 6255 10217 10290 10291 10218 +6318 6391 6392 6319 10290 10363 10364 10291 +6391 2929 6449 6392 10363 10436 10437 10364 +2905 6321 6322 6257 10220 10293 10294 10221 +6321 6394 6395 6322 10293 10366 10367 10294 +6394 2930 6451 6395 10366 10439 10440 10367 +2906 6324 6325 6259 10223 10296 10297 10224 +6324 6397 6398 6325 10296 10369 10370 10297 +6397 2931 6453 6398 10369 10442 10443 10370 +2907 6327 6328 6261 10226 10299 10300 10227 +6327 6400 6401 6328 10299 10372 10373 10300 +6400 2932 6455 6401 10372 10445 10446 10373 +2908 6330 6331 6263 10229 10302 10303 10230 +6330 6403 6404 6331 10302 10375 10376 10303 +6403 2933 6457 6404 10375 10448 10449 10376 +2909 6333 6334 6265 10232 10305 10306 10233 +6333 6406 6407 6334 10305 10378 10379 10306 +6406 2934 6459 6407 10378 10451 10452 10379 +2910 6336 6337 6267 10235 10308 10309 10236 +6336 6409 6410 6337 10308 10381 10382 10309 +6409 2935 6461 6410 10381 10454 10455 10382 +2911 6339 6340 6269 10238 10311 10312 10239 +6339 6412 6413 6340 10311 10384 10385 10312 +6412 2936 6463 6413 10384 10457 10458 10385 +2912 6342 6343 6271 10241 10314 10315 10242 +6342 6415 6416 6343 10314 10387 10388 10315 +6415 2937 6465 6416 10387 10460 10461 10388 +6467 6468 6469 6470 10464 10465 10466 10467 +6468 6471 6472 6469 10465 10468 10469 10466 +6469 6472 6473 6474 10466 10469 10470 10471 +6469 6474 6475 6470 10466 10471 10472 10467 +6471 6476 6477 6472 10468 10473 10474 10469 +6472 6477 6478 6473 10469 10474 10475 10470 +6473 6478 6479 6480 10470 10475 10476 10477 +6473 6480 6481 6474 10470 10477 10478 10471 +6474 6481 6482 6475 10471 10478 10479 10472 +6476 6483 6484 6477 10473 10480 10481 10474 +6477 6484 6485 6478 10474 10481 10482 10475 +6478 6485 6486 6479 10475 10482 10483 10476 +6479 6486 6487 6488 10476 10483 10484 10485 +6479 6488 6489 6480 10476 10485 10486 10477 +6480 6489 6490 6481 10477 10486 10487 10478 +6481 6490 6491 6482 10478 10487 10488 10479 +6483 6492 6493 6484 10480 10489 10490 10481 +6484 6493 6494 6485 10481 10490 10491 10482 +6485 6494 6495 6486 10482 10491 10492 10483 +6486 6495 6496 6487 10483 10492 10493 10484 +6487 6496 6497 6498 10484 10493 10494 10495 +6487 6498 6499 6488 10484 10495 10496 10485 +6488 6499 6500 6489 10485 10496 10497 10486 +6489 6500 6501 6490 10486 10497 10498 10487 +6490 6501 6502 6491 10487 10498 10499 10488 +6492 6503 6504 6493 10489 10500 10501 10490 +6493 6504 6505 6494 10490 10501 10502 10491 +6494 6505 6506 6495 10491 10502 10503 10492 +6495 6506 6507 6496 10492 10503 10504 10493 +6496 6507 6508 6497 10493 10504 10505 10494 +6497 6508 6509 6510 10494 10505 10506 10507 +6497 6510 6511 6498 10494 10507 10508 10495 +6498 6511 6512 6499 10495 10508 10509 10496 +6499 6512 6513 6500 10496 10509 10510 10497 +6500 6513 6514 6501 10497 10510 10511 10498 +6501 6514 6515 6502 10498 10511 10512 10499 +6503 6516 6517 6504 10500 10513 10514 10501 +6504 6517 6518 6505 10501 10514 10515 10502 +6505 6518 6519 6506 10502 10515 10516 10503 +6506 6519 6520 6507 10503 10516 10517 10504 +6507 6520 6521 6508 10504 10517 10518 10505 +6508 6521 6522 6509 10505 10518 10519 10506 +6509 6522 6523 6524 10506 10519 10520 10521 +6509 6524 6525 6510 10506 10521 10522 10507 +6510 6525 6526 6511 10507 10522 10523 10508 +6511 6526 6527 6512 10508 10523 10524 10509 +6512 6527 6528 6513 10509 10524 10525 10510 +6513 6528 6529 6514 10510 10525 10526 10511 +6514 6529 6530 6515 10511 10526 10527 10512 +6516 6531 6532 6517 10513 10528 10529 10514 +6517 6532 6533 6518 10514 10529 10530 10515 +6518 6533 6534 6519 10515 10530 10531 10516 +6519 6534 6535 6520 10516 10531 10532 10517 +6520 6535 6536 6521 10517 10532 10533 10518 +6521 6536 6537 6522 10518 10533 10534 10519 +6522 6537 6538 6523 10519 10534 10535 10520 +6523 6538 6539 6540 10520 10535 10536 10537 +6523 6540 6541 6524 10520 10537 10538 10521 +6524 6541 6542 6525 10521 10538 10539 10522 +6525 6542 6543 6526 10522 10539 10540 10523 +6526 6543 6544 6527 10523 10540 10541 10524 +6527 6544 6545 6528 10524 10541 10542 10525 +6528 6545 6546 6529 10525 10542 10543 10526 +6529 6546 6547 6530 10526 10543 10544 10527 +6531 6548 6549 6532 10528 10545 10546 10529 +6532 6549 6550 6533 10529 10546 10547 10530 +6533 6550 6551 6534 10530 10547 10548 10531 +6534 6551 6552 6535 10531 10548 10549 10532 +6535 6552 6553 6536 10532 10549 10550 10533 +6536 6553 6554 6537 10533 10550 10551 10534 +6537 6554 6555 6538 10534 10551 10552 10535 +6538 6555 6556 6539 10535 10552 10553 10536 +6539 6556 6557 6558 10536 10553 10554 10555 +6539 6558 6559 6540 10536 10555 10556 10537 +6540 6559 6560 6541 10537 10556 10557 10538 +6541 6560 6561 6542 10538 10557 10558 10539 +6542 6561 6562 6543 10539 10558 10559 10540 +6543 6562 6563 6544 10540 10559 10560 10541 +6544 6563 6564 6545 10541 10560 10561 10542 +6545 6564 6565 6546 10542 10561 10562 10543 +6546 6565 6566 6547 10543 10562 10563 10544 +6548 6567 6568 6549 10545 10564 10565 10546 +6549 6568 6569 6550 10546 10565 10566 10547 +6550 6569 6570 6551 10547 10566 10567 10548 +6551 6570 6571 6552 10548 10567 10568 10549 +6552 6571 6572 6553 10549 10568 10569 10550 +6553 6572 6573 6554 10550 10569 10570 10551 +6554 6573 6574 6555 10551 10570 10571 10552 +6555 6574 6575 6556 10552 10571 10572 10553 +6556 6575 6576 6557 10553 10572 10573 10554 +6557 6576 6577 6578 10554 10573 10574 10575 +6557 6578 6579 6558 10554 10575 10576 10555 +6558 6579 6580 6559 10555 10576 10577 10556 +6559 6580 6581 6560 10556 10577 10578 10557 +6560 6581 6582 6561 10557 10578 10579 10558 +6561 6582 6583 6562 10558 10579 10580 10559 +6562 6583 6584 6563 10559 10580 10581 10560 +6563 6584 6585 6564 10560 10581 10582 10561 +6564 6585 6586 6565 10561 10582 10583 10562 +6565 6586 6587 6566 10562 10583 10584 10563 +6567 6588 6589 6568 10564 10585 10586 10565 +6568 6589 6590 6569 10565 10586 10587 10566 +6569 6590 6591 6570 10566 10587 10588 10567 +6570 6591 6592 6571 10567 10588 10589 10568 +6571 6592 6593 6572 10568 10589 10590 10569 +6572 6593 6594 6573 10569 10590 10591 10570 +6573 6594 6595 6574 10570 10591 10592 10571 +6574 6595 6596 6575 10571 10592 10593 10572 +6575 6596 6597 6576 10572 10593 10594 10573 +6576 6597 6598 6577 10573 10594 10595 10574 +6577 6598 6599 6600 10574 10595 10596 10597 +6577 6600 6601 6578 10574 10597 10598 10575 +6578 6601 6602 6579 10575 10598 10599 10576 +6579 6602 6603 6580 10576 10599 10600 10577 +6580 6603 6604 6581 10577 10600 10601 10578 +6581 6604 6605 6582 10578 10601 10602 10579 +6582 6605 6606 6583 10579 10602 10603 10580 +6583 6606 6607 6584 10580 10603 10604 10581 +6584 6607 6608 6585 10581 10604 10605 10582 +6585 6608 6609 6586 10582 10605 10606 10583 +6586 6609 6610 6587 10583 10606 10607 10584 +6588 6611 6612 6589 10585 10608 10609 10586 +6589 6612 6613 6590 10586 10609 10610 10587 +6590 6613 6614 6591 10587 10610 10611 10588 +6591 6614 6615 6592 10588 10611 10612 10589 +6592 6615 6616 6593 10589 10612 10613 10590 +6593 6616 6617 6594 10590 10613 10614 10591 +6594 6617 6618 6595 10591 10614 10615 10592 +6595 6618 6619 6596 10592 10615 10616 10593 +6596 6619 6620 6597 10593 10616 10617 10594 +6597 6620 6621 6598 10594 10617 10618 10595 +6598 6621 6622 6599 10595 10618 10619 10596 +6599 6622 6623 6624 10596 10619 10620 10621 +6599 6624 6625 6600 10596 10621 10622 10597 +6600 6625 6626 6601 10597 10622 10623 10598 +6601 6626 6627 6602 10598 10623 10624 10599 +6602 6627 6628 6603 10599 10624 10625 10600 +6603 6628 6629 6604 10600 10625 10626 10601 +6604 6629 6630 6605 10601 10626 10627 10602 +6605 6630 6631 6606 10602 10627 10628 10603 +6606 6631 6632 6607 10603 10628 10629 10604 +6607 6632 6633 6608 10604 10629 10630 10605 +6608 6633 6634 6609 10605 10630 10631 10606 +6609 6634 6635 6610 10606 10631 10632 10607 +6611 6636 6637 6612 10608 10633 10634 10609 +6612 6637 6638 6613 10609 10634 10635 10610 +6613 6638 6639 6614 10610 10635 10636 10611 +6614 6639 6640 6615 10611 10636 10637 10612 +6615 6640 6641 6616 10612 10637 10638 10613 +6616 6641 6642 6617 10613 10638 10639 10614 +6617 6642 6643 6618 10614 10639 10640 10615 +6618 6643 6644 6619 10615 10640 10641 10616 +6619 6644 6645 6620 10616 10641 10642 10617 +6620 6645 6646 6621 10617 10642 10643 10618 +6621 6646 6647 6622 10618 10643 10644 10619 +6622 6647 6648 6623 10619 10644 10645 10620 +6623 6648 6649 6650 10620 10645 10646 10647 +6623 6650 6651 6624 10620 10647 10648 10621 +6624 6651 6652 6625 10621 10648 10649 10622 +6625 6652 6653 6626 10622 10649 10650 10623 +6626 6653 6654 6627 10623 10650 10651 10624 +6627 6654 6655 6628 10624 10651 10652 10625 +6628 6655 6656 6629 10625 10652 10653 10626 +6629 6656 6657 6630 10626 10653 10654 10627 +6630 6657 6658 6631 10627 10654 10655 10628 +6631 6658 6659 6632 10628 10655 10656 10629 +6632 6659 6660 6633 10629 10656 10657 10630 +6633 6660 6661 6634 10630 10657 10658 10631 +6634 6661 6662 6635 10631 10658 10659 10632 +6636 6663 6664 6637 10633 10660 10661 10634 +6637 6664 6665 6638 10634 10661 10662 10635 +6638 6665 6666 6639 10635 10662 10663 10636 +6639 6666 6667 6640 10636 10663 10664 10637 +6640 6667 6668 6641 10637 10664 10665 10638 +6641 6668 6669 6642 10638 10665 10666 10639 +6642 6669 6670 6643 10639 10666 10667 10640 +6643 6670 6671 6644 10640 10667 10668 10641 +6644 6671 6672 6645 10641 10668 10669 10642 +6645 6672 6673 6646 10642 10669 10670 10643 +6646 6673 6674 6647 10643 10670 10671 10644 +6647 6674 6675 6648 10644 10671 10672 10645 +6648 6675 6676 6649 10645 10672 10673 10646 +6649 6676 6677 6678 10646 10673 10674 10675 +6649 6678 6679 6650 10646 10675 10676 10647 +6650 6679 6680 6651 10647 10676 10677 10648 +6651 6680 6681 6652 10648 10677 10678 10649 +6652 6681 6682 6653 10649 10678 10679 10650 +6653 6682 6683 6654 10650 10679 10680 10651 +6654 6683 6684 6655 10651 10680 10681 10652 +6655 6684 6685 6656 10652 10681 10682 10653 +6656 6685 6686 6657 10653 10682 10683 10654 +6657 6686 6687 6658 10654 10683 10684 10655 +6658 6687 6688 6659 10655 10684 10685 10656 +6659 6688 6689 6660 10656 10685 10686 10657 +6660 6689 6690 6661 10657 10686 10687 10658 +6661 6690 6691 6662 10658 10687 10688 10659 +6663 6692 6693 6664 10660 10689 10690 10661 +6664 6693 6694 6665 10661 10690 10691 10662 +6665 6694 6695 6666 10662 10691 10692 10663 +6666 6695 6696 6667 10663 10692 10693 10664 +6667 6696 6697 6668 10664 10693 10694 10665 +6668 6697 6698 6669 10665 10694 10695 10666 +6669 6698 6699 6670 10666 10695 10696 10667 +6670 6699 6700 6671 10667 10696 10697 10668 +6671 6700 6701 6672 10668 10697 10698 10669 +6672 6701 6702 6673 10669 10698 10699 10670 +6673 6702 6703 6674 10670 10699 10700 10671 +6674 6703 6704 6675 10671 10700 10701 10672 +6675 6704 6705 6676 10672 10701 10702 10673 +6676 6705 6706 6677 10673 10702 10703 10674 +6677 6706 6707 6708 10674 10703 10704 10705 +6677 6708 6709 6678 10674 10705 10706 10675 +6678 6709 6710 6679 10675 10706 10707 10676 +6679 6710 6711 6680 10676 10707 10708 10677 +6680 6711 6712 6681 10677 10708 10709 10678 +6681 6712 6713 6682 10678 10709 10710 10679 +6682 6713 6714 6683 10679 10710 10711 10680 +6683 6714 6715 6684 10680 10711 10712 10681 +6684 6715 6716 6685 10681 10712 10713 10682 +6685 6716 6717 6686 10682 10713 10714 10683 +6686 6717 6718 6687 10683 10714 10715 10684 +6687 6718 6719 6688 10684 10715 10716 10685 +6688 6719 6720 6689 10685 10716 10717 10686 +6689 6720 6721 6690 10686 10717 10718 10687 +6690 6721 6722 6691 10687 10718 10719 10688 +6692 6723 6724 6693 10689 10720 10721 10690 +6693 6724 6725 6694 10690 10721 10722 10691 +6694 6725 6726 6695 10691 10722 10723 10692 +6695 6726 6727 6696 10692 10723 10724 10693 +6696 6727 6728 6697 10693 10724 10725 10694 +6697 6728 6729 6698 10694 10725 10726 10695 +6698 6729 6730 6699 10695 10726 10727 10696 +6699 6730 6731 6700 10696 10727 10728 10697 +6700 6731 6732 6701 10697 10728 10729 10698 +6701 6732 6733 6702 10698 10729 10730 10699 +6702 6733 6734 6703 10699 10730 10731 10700 +6703 6734 6735 6704 10700 10731 10732 10701 +6704 6735 6736 6705 10701 10732 10733 10702 +6705 6736 6737 6706 10702 10733 10734 10703 +6706 6737 6738 6707 10703 10734 10735 10704 +6707 6738 6739 6740 10704 10735 10736 10737 +6707 6740 6741 6708 10704 10737 10738 10705 +6708 6741 6742 6709 10705 10738 10739 10706 +6709 6742 6743 6710 10706 10739 10740 10707 +6710 6743 6744 6711 10707 10740 10741 10708 +6711 6744 6745 6712 10708 10741 10742 10709 +6712 6745 6746 6713 10709 10742 10743 10710 +6713 6746 6747 6714 10710 10743 10744 10711 +6714 6747 6748 6715 10711 10744 10745 10712 +6715 6748 6749 6716 10712 10745 10746 10713 +6716 6749 6750 6717 10713 10746 10747 10714 +6717 6750 6751 6718 10714 10747 10748 10715 +6718 6751 6752 6719 10715 10748 10749 10716 +6719 6752 6753 6720 10716 10749 10750 10717 +6720 6753 6754 6721 10717 10750 10751 10718 +6721 6754 6755 6722 10718 10751 10752 10719 +6723 6756 6757 6724 10720 10753 10754 10721 +6724 6757 6758 6725 10721 10754 10755 10722 +6725 6758 6759 6726 10722 10755 10756 10723 +6726 6759 6760 6727 10723 10756 10757 10724 +6727 6760 6761 6728 10724 10757 10758 10725 +6728 6761 6762 6729 10725 10758 10759 10726 +6729 6762 6763 6730 10726 10759 10760 10727 +6730 6763 6764 6731 10727 10760 10761 10728 +6731 6764 6765 6732 10728 10761 10762 10729 +6732 6765 6766 6733 10729 10762 10763 10730 +6733 6766 6767 6734 10730 10763 10764 10731 +6734 6767 6768 6735 10731 10764 10765 10732 +6735 6768 6769 6736 10732 10765 10766 10733 +6736 6769 6770 6737 10733 10766 10767 10734 +6737 6770 6771 6738 10734 10767 10768 10735 +6738 6771 6772 6739 10735 10768 10769 10736 +6739 6772 6773 6774 10736 10769 10770 10771 +6739 6774 6775 6740 10736 10771 10772 10737 +6740 6775 6776 6741 10737 10772 10773 10738 +6741 6776 6777 6742 10738 10773 10774 10739 +6742 6777 6778 6743 10739 10774 10775 10740 +6743 6778 6779 6744 10740 10775 10776 10741 +6744 6779 6780 6745 10741 10776 10777 10742 +6745 6780 6781 6746 10742 10777 10778 10743 +6746 6781 6782 6747 10743 10778 10779 10744 +6747 6782 6783 6748 10744 10779 10780 10745 +6748 6783 6784 6749 10745 10780 10781 10746 +6749 6784 6785 6750 10746 10781 10782 10747 +6750 6785 6786 6751 10747 10782 10783 10748 +6751 6786 6787 6752 10748 10783 10784 10749 +6752 6787 6788 6753 10749 10784 10785 10750 +6753 6788 6789 6754 10750 10785 10786 10751 +6754 6789 6790 6755 10751 10786 10787 10752 +6756 6791 6792 6757 10753 10788 10789 10754 +6757 6792 6793 6758 10754 10789 10790 10755 +6758 6793 6794 6759 10755 10790 10791 10756 +6759 6794 6795 6760 10756 10791 10792 10757 +6760 6795 6796 6761 10757 10792 10793 10758 +6761 6796 6797 6762 10758 10793 10794 10759 +6762 6797 6798 6763 10759 10794 10795 10760 +6763 6798 6799 6764 10760 10795 10796 10761 +6764 6799 6800 6765 10761 10796 10797 10762 +6765 6800 6801 6766 10762 10797 10798 10763 +6766 6801 6802 6767 10763 10798 10799 10764 +6767 6802 6803 6768 10764 10799 10800 10765 +6768 6803 6804 6769 10765 10800 10801 10766 +6769 6804 6805 6770 10766 10801 10802 10767 +6770 6805 6806 6771 10767 10802 10803 10768 +6771 6806 6807 6772 10768 10803 10804 10769 +6772 6807 6808 6773 10769 10804 10805 10770 +6773 6808 6809 6810 10770 10805 10806 10807 +6773 6810 6811 6774 10770 10807 10808 10771 +6774 6811 6812 6775 10771 10808 10809 10772 +6775 6812 6813 6776 10772 10809 10810 10773 +6776 6813 6814 6777 10773 10810 10811 10774 +6777 6814 6815 6778 10774 10811 10812 10775 +6778 6815 6816 6779 10775 10812 10813 10776 +6779 6816 6817 6780 10776 10813 10814 10777 +6780 6817 6818 6781 10777 10814 10815 10778 +6781 6818 6819 6782 10778 10815 10816 10779 +6782 6819 6820 6783 10779 10816 10817 10780 +6783 6820 6821 6784 10780 10817 10818 10781 +6784 6821 6822 6785 10781 10818 10819 10782 +6785 6822 6823 6786 10782 10819 10820 10783 +6786 6823 6824 6787 10783 10820 10821 10784 +6787 6824 6825 6788 10784 10821 10822 10785 +6788 6825 6826 6789 10785 10822 10823 10786 +6789 6826 6827 6790 10786 10823 10824 10787 +6791 6828 6829 6792 10788 10825 10826 10789 +6792 6829 6830 6793 10789 10826 10827 10790 +6793 6830 6831 6794 10790 10827 10828 10791 +6794 6831 6832 6795 10791 10828 10829 10792 +6795 6832 6833 6796 10792 10829 10830 10793 +6796 6833 6834 6797 10793 10830 10831 10794 +6797 6834 6835 6798 10794 10831 10832 10795 +6798 6835 6836 6799 10795 10832 10833 10796 +6799 6836 6837 6800 10796 10833 10834 10797 +6800 6837 6838 6801 10797 10834 10835 10798 +6801 6838 6839 6802 10798 10835 10836 10799 +6802 6839 6840 6803 10799 10836 10837 10800 +6803 6840 6841 6804 10800 10837 10838 10801 +6804 6841 6842 6805 10801 10838 10839 10802 +6805 6842 6843 6806 10802 10839 10840 10803 +6806 6843 6844 6807 10803 10840 10841 10804 +6807 6844 6845 6808 10804 10841 10842 10805 +6808 6845 6846 6809 10805 10842 10843 10806 +6809 6846 6847 6848 10806 10843 10844 10845 +6809 6848 6849 6810 10806 10845 10846 10807 +6810 6849 6850 6811 10807 10846 10847 10808 +6811 6850 6851 6812 10808 10847 10848 10809 +6812 6851 6852 6813 10809 10848 10849 10810 +6813 6852 6853 6814 10810 10849 10850 10811 +6814 6853 6854 6815 10811 10850 10851 10812 +6815 6854 6855 6816 10812 10851 10852 10813 +6816 6855 6856 6817 10813 10852 10853 10814 +6817 6856 6857 6818 10814 10853 10854 10815 +6818 6857 6858 6819 10815 10854 10855 10816 +6819 6858 6859 6820 10816 10855 10856 10817 +6820 6859 6860 6821 10817 10856 10857 10818 +6821 6860 6861 6822 10818 10857 10858 10819 +6822 6861 6862 6823 10819 10858 10859 10820 +6823 6862 6863 6824 10820 10859 10860 10821 +6824 6863 6864 6825 10821 10860 10861 10822 +6825 6864 6865 6826 10822 10861 10862 10823 +6826 6865 6866 6827 10823 10862 10863 10824 +6828 6867 6868 6829 10825 10864 10865 10826 +6829 6868 6869 6830 10826 10865 10866 10827 +6830 6869 6870 6831 10827 10866 10867 10828 +6831 6870 6871 6832 10828 10867 10868 10829 +6832 6871 6872 6833 10829 10868 10869 10830 +6833 6872 6873 6834 10830 10869 10870 10831 +6834 6873 6874 6835 10831 10870 10871 10832 +6835 6874 6875 6836 10832 10871 10872 10833 +6836 6875 6876 6837 10833 10872 10873 10834 +6837 6876 6877 6838 10834 10873 10874 10835 +6838 6877 6878 6839 10835 10874 10875 10836 +6839 6878 6879 6840 10836 10875 10876 10837 +6840 6879 6880 6841 10837 10876 10877 10838 +6841 6880 6881 6842 10838 10877 10878 10839 +6842 6881 6882 6843 10839 10878 10879 10840 +6843 6882 6883 6844 10840 10879 10880 10841 +6844 6883 6884 6845 10841 10880 10881 10842 +6845 6884 6885 6846 10842 10881 10882 10843 +6846 6885 6886 6847 10843 10882 10883 10844 +6847 6886 6887 6888 10844 10883 10884 10885 +6847 6888 6889 6848 10844 10885 10886 10845 +6848 6889 6890 6849 10845 10886 10887 10846 +6849 6890 6891 6850 10846 10887 10888 10847 +6850 6891 6892 6851 10847 10888 10889 10848 +6851 6892 6893 6852 10848 10889 10890 10849 +6852 6893 6894 6853 10849 10890 10891 10850 +6853 6894 6895 6854 10850 10891 10892 10851 +6854 6895 6896 6855 10851 10892 10893 10852 +6855 6896 6897 6856 10852 10893 10894 10853 +6856 6897 6898 6857 10853 10894 10895 10854 +6857 6898 6899 6858 10854 10895 10896 10855 +6858 6899 6900 6859 10855 10896 10897 10856 +6859 6900 6901 6860 10856 10897 10898 10857 +6860 6901 6902 6861 10857 10898 10899 10858 +6861 6902 6903 6862 10858 10899 10900 10859 +6862 6903 6904 6863 10859 10900 10901 10860 +6863 6904 6905 6864 10860 10901 10902 10861 +6864 6905 6906 6865 10861 10902 10903 10862 +6865 6906 6907 6866 10862 10903 10904 10863 +6867 6908 6909 6868 10864 10905 10906 10865 +6868 6909 6910 6869 10865 10906 10907 10866 +6869 6910 6911 6870 10866 10907 10908 10867 +6870 6911 6912 6871 10867 10908 10909 10868 +6871 6912 6913 6872 10868 10909 10910 10869 +6872 6913 6914 6873 10869 10910 10911 10870 +6873 6914 6915 6874 10870 10911 10912 10871 +6874 6915 6916 6875 10871 10912 10913 10872 +6875 6916 6917 6876 10872 10913 10914 10873 +6876 6917 6918 6877 10873 10914 10915 10874 +6877 6918 6919 6878 10874 10915 10916 10875 +6878 6919 6920 6879 10875 10916 10917 10876 +6879 6920 6921 6880 10876 10917 10918 10877 +6880 6921 6922 6881 10877 10918 10919 10878 +6881 6922 6923 6882 10878 10919 10920 10879 +6882 6923 6924 6883 10879 10920 10921 10880 +6883 6924 6925 6884 10880 10921 10922 10881 +6884 6925 6926 6885 10881 10922 10923 10882 +6885 6926 6927 6886 10882 10923 10924 10883 +6886 6927 6928 6887 10883 10924 10925 10884 +6887 6928 6929 6930 10884 10925 10926 10927 +6887 6930 6931 6888 10884 10927 10928 10885 +6888 6931 6932 6889 10885 10928 10929 10886 +6889 6932 6933 6890 10886 10929 10930 10887 +6890 6933 6934 6891 10887 10930 10931 10888 +6891 6934 6935 6892 10888 10931 10932 10889 +6892 6935 6936 6893 10889 10932 10933 10890 +6893 6936 6937 6894 10890 10933 10934 10891 +6894 6937 6938 6895 10891 10934 10935 10892 +6895 6938 6939 6896 10892 10935 10936 10893 +6896 6939 6940 6897 10893 10936 10937 10894 +6897 6940 6941 6898 10894 10937 10938 10895 +6898 6941 6942 6899 10895 10938 10939 10896 +6899 6942 6943 6900 10896 10939 10940 10897 +6900 6943 6944 6901 10897 10940 10941 10898 +6901 6944 6945 6902 10898 10941 10942 10899 +6902 6945 6946 6903 10899 10942 10943 10900 +6903 6946 6947 6904 10900 10943 10944 10901 +6904 6947 6948 6905 10901 10944 10945 10902 +6905 6948 6949 6906 10902 10945 10946 10903 +6906 6949 6950 6907 10903 10946 10947 10904 +6908 6951 6952 6909 10905 10948 10949 10906 +6909 6952 6953 6910 10906 10949 10950 10907 +6910 6953 6954 6911 10907 10950 10951 10908 +6911 6954 6955 6912 10908 10951 10952 10909 +6912 6955 6956 6913 10909 10952 10953 10910 +6913 6956 6957 6914 10910 10953 10954 10911 +6914 6957 6958 6915 10911 10954 10955 10912 +6915 6958 6959 6916 10912 10955 10956 10913 +6916 6959 6960 6917 10913 10956 10957 10914 +6917 6960 6961 6918 10914 10957 10958 10915 +6918 6961 6962 6919 10915 10958 10959 10916 +6919 6962 6963 6920 10916 10959 10960 10917 +6920 6963 6964 6921 10917 10960 10961 10918 +6921 6964 6965 6922 10918 10961 10962 10919 +6922 6965 6966 6923 10919 10962 10963 10920 +6923 6966 6967 6924 10920 10963 10964 10921 +6924 6967 6968 6925 10921 10964 10965 10922 +6925 6968 6969 6926 10922 10965 10966 10923 +6926 6969 6970 6927 10923 10966 10967 10924 +6927 6970 6971 6928 10924 10967 10968 10925 +6928 6971 6972 6929 10925 10968 10969 10926 +6929 6972 6973 6974 10926 10969 10970 10971 +6929 6974 6975 6930 10926 10971 10972 10927 +6930 6975 6976 6931 10927 10972 10973 10928 +6931 6976 6977 6932 10928 10973 10974 10929 +6932 6977 6978 6933 10929 10974 10975 10930 +6933 6978 6979 6934 10930 10975 10976 10931 +6934 6979 6980 6935 10931 10976 10977 10932 +6935 6980 6981 6936 10932 10977 10978 10933 +6936 6981 6982 6937 10933 10978 10979 10934 +6937 6982 6983 6938 10934 10979 10980 10935 +6938 6983 6984 6939 10935 10980 10981 10936 +6939 6984 6985 6940 10936 10981 10982 10937 +6940 6985 6986 6941 10937 10982 10983 10938 +6941 6986 6987 6942 10938 10983 10984 10939 +6942 6987 6988 6943 10939 10984 10985 10940 +6943 6988 6989 6944 10940 10985 10986 10941 +6944 6989 6990 6945 10941 10986 10987 10942 +6945 6990 6991 6946 10942 10987 10988 10943 +6946 6991 6992 6947 10943 10988 10989 10944 +6947 6992 6993 6948 10944 10989 10990 10945 +6948 6993 6994 6949 10945 10990 10991 10946 +6949 6994 6995 6950 10946 10991 10992 10947 +6951 6996 6997 6952 10948 10993 10994 10949 +6952 6997 6998 6953 10949 10994 10995 10950 +6953 6998 6999 6954 10950 10995 10996 10951 +6954 6999 7000 6955 10951 10996 10997 10952 +6955 7000 7001 6956 10952 10997 10998 10953 +6956 7001 7002 6957 10953 10998 10999 10954 +6957 7002 7003 6958 10954 10999 11000 10955 +6958 7003 7004 6959 10955 11000 11001 10956 +6959 7004 7005 6960 10956 11001 11002 10957 +6960 7005 7006 6961 10957 11002 11003 10958 +6961 7006 7007 6962 10958 11003 11004 10959 +6962 7007 7008 6963 10959 11004 11005 10960 +6963 7008 7009 6964 10960 11005 11006 10961 +6964 7009 7010 6965 10961 11006 11007 10962 +6965 7010 7011 6966 10962 11007 11008 10963 +6966 7011 7012 6967 10963 11008 11009 10964 +6967 7012 7013 6968 10964 11009 11010 10965 +6968 7013 7014 6969 10965 11010 11011 10966 +6969 7014 7015 6970 10966 11011 11012 10967 +6970 7015 7016 6971 10967 11012 11013 10968 +6971 7016 7017 6972 10968 11013 11014 10969 +6972 7017 7018 6973 10969 11014 11015 10970 +6973 7018 7019 7020 10970 11015 11016 11017 +6973 7020 7021 6974 10970 11017 11018 10971 +6974 7021 7022 6975 10971 11018 11019 10972 +6975 7022 7023 6976 10972 11019 11020 10973 +6976 7023 7024 6977 10973 11020 11021 10974 +6977 7024 7025 6978 10974 11021 11022 10975 +6978 7025 7026 6979 10975 11022 11023 10976 +6979 7026 7027 6980 10976 11023 11024 10977 +6980 7027 7028 6981 10977 11024 11025 10978 +6981 7028 7029 6982 10978 11025 11026 10979 +6982 7029 7030 6983 10979 11026 11027 10980 +6983 7030 7031 6984 10980 11027 11028 10981 +6984 7031 7032 6985 10981 11028 11029 10982 +6985 7032 7033 6986 10982 11029 11030 10983 +6986 7033 7034 6987 10983 11030 11031 10984 +6987 7034 7035 6988 10984 11031 11032 10985 +6988 7035 7036 6989 10985 11032 11033 10986 +6989 7036 7037 6990 10986 11033 11034 10987 +6990 7037 7038 6991 10987 11034 11035 10988 +6991 7038 7039 6992 10988 11035 11036 10989 +6992 7039 7040 6993 10989 11036 11037 10990 +6993 7040 7041 6994 10990 11037 11038 10991 +6994 7041 7042 6995 10991 11038 11039 10992 +6996 7043 7044 6997 10993 11040 11041 10994 +6997 7044 7045 6998 10994 11041 11042 10995 +6998 7045 7046 6999 10995 11042 11043 10996 +6999 7046 7047 7000 10996 11043 11044 10997 +7000 7047 7048 7001 10997 11044 11045 10998 +7001 7048 7049 7002 10998 11045 11046 10999 +7002 7049 7050 7003 10999 11046 11047 11000 +7003 7050 7051 7004 11000 11047 11048 11001 +7004 7051 7052 7005 11001 11048 11049 11002 +7005 7052 7053 7006 11002 11049 11050 11003 +7006 7053 7054 7007 11003 11050 11051 11004 +7007 7054 7055 7008 11004 11051 11052 11005 +7008 7055 7056 7009 11005 11052 11053 11006 +7009 7056 7057 7010 11006 11053 11054 11007 +7010 7057 7058 7011 11007 11054 11055 11008 +7011 7058 7059 7012 11008 11055 11056 11009 +7012 7059 7060 7013 11009 11056 11057 11010 +7013 7060 7061 7014 11010 11057 11058 11011 +7014 7061 7062 7015 11011 11058 11059 11012 +7015 7062 7063 7016 11012 11059 11060 11013 +7016 7063 7064 7017 11013 11060 11061 11014 +7017 7064 7065 7018 11014 11061 11062 11015 +7018 7065 7066 7019 11015 11062 11063 11016 +7019 7066 7067 7068 11016 11063 11064 11065 +7019 7068 7069 7020 11016 11065 11066 11017 +7020 7069 7070 7021 11017 11066 11067 11018 +7021 7070 7071 7022 11018 11067 11068 11019 +7022 7071 7072 7023 11019 11068 11069 11020 +7023 7072 7073 7024 11020 11069 11070 11021 +7024 7073 7074 7025 11021 11070 11071 11022 +7025 7074 7075 7026 11022 11071 11072 11023 +7026 7075 7076 7027 11023 11072 11073 11024 +7027 7076 7077 7028 11024 11073 11074 11025 +7028 7077 7078 7029 11025 11074 11075 11026 +7029 7078 7079 7030 11026 11075 11076 11027 +7030 7079 7080 7031 11027 11076 11077 11028 +7031 7080 7081 7032 11028 11077 11078 11029 +7032 7081 7082 7033 11029 11078 11079 11030 +7033 7082 7083 7034 11030 11079 11080 11031 +7034 7083 7084 7035 11031 11080 11081 11032 +7035 7084 7085 7036 11032 11081 11082 11033 +7036 7085 7086 7037 11033 11082 11083 11034 +7037 7086 7087 7038 11034 11083 11084 11035 +7038 7087 7088 7039 11035 11084 11085 11036 +7039 7088 7089 7040 11036 11085 11086 11037 +7040 7089 7090 7041 11037 11086 11087 11038 +7041 7090 7091 7042 11038 11087 11088 11039 +7043 7092 7093 7044 11040 11089 11090 11041 +7044 7093 7094 7045 11041 11090 11091 11042 +7045 7094 7095 7046 11042 11091 11092 11043 +7046 7095 7096 7047 11043 11092 11093 11044 +7047 7096 7097 7048 11044 11093 11094 11045 +7048 7097 7098 7049 11045 11094 11095 11046 +7049 7098 7099 7050 11046 11095 11096 11047 +7050 7099 7100 7051 11047 11096 11097 11048 +7051 7100 7101 7052 11048 11097 11098 11049 +7052 7101 7102 7053 11049 11098 11099 11050 +7053 7102 7103 7054 11050 11099 11100 11051 +7054 7103 7104 7055 11051 11100 11101 11052 +7055 7104 7105 7056 11052 11101 11102 11053 +7056 7105 7106 7057 11053 11102 11103 11054 +7057 7106 7107 7058 11054 11103 11104 11055 +7058 7107 7108 7059 11055 11104 11105 11056 +7059 7108 7109 7060 11056 11105 11106 11057 +7060 7109 7110 7061 11057 11106 11107 11058 +7061 7110 7111 7062 11058 11107 11108 11059 +7062 7111 7112 7063 11059 11108 11109 11060 +7063 7112 7113 7064 11060 11109 11110 11061 +7064 7113 7114 7065 11061 11110 11111 11062 +7065 7114 7115 7066 11062 11111 11112 11063 +7066 7115 7116 7067 11063 11112 11113 11064 +7067 7116 7117 7118 11064 11113 11114 11115 +7067 7118 7119 7068 11064 11115 11116 11065 +7068 7119 7120 7069 11065 11116 11117 11066 +7069 7120 7121 7070 11066 11117 11118 11067 +7070 7121 7122 7071 11067 11118 11119 11068 +7071 7122 7123 7072 11068 11119 11120 11069 +7072 7123 7124 7073 11069 11120 11121 11070 +7073 7124 7125 7074 11070 11121 11122 11071 +7074 7125 7126 7075 11071 11122 11123 11072 +7075 7126 7127 7076 11072 11123 11124 11073 +7076 7127 7128 7077 11073 11124 11125 11074 +7077 7128 7129 7078 11074 11125 11126 11075 +7078 7129 7130 7079 11075 11126 11127 11076 +7079 7130 7131 7080 11076 11127 11128 11077 +7080 7131 7132 7081 11077 11128 11129 11078 +7081 7132 7133 7082 11078 11129 11130 11079 +7082 7133 7134 7083 11079 11130 11131 11080 +7083 7134 7135 7084 11080 11131 11132 11081 +7084 7135 7136 7085 11081 11132 11133 11082 +7085 7136 7137 7086 11082 11133 11134 11083 +7086 7137 7138 7087 11083 11134 11135 11084 +7087 7138 7139 7088 11084 11135 11136 11085 +7088 7139 7140 7089 11085 11136 11137 11086 +7089 7140 7141 7090 11086 11137 11138 11087 +7090 7141 7142 7091 11087 11138 11139 11088 +7092 7143 7144 7093 11089 11140 11141 11090 +7093 7144 7145 7094 11090 11141 11142 11091 +7094 7145 7146 7095 11091 11142 11143 11092 +7095 7146 7147 7096 11092 11143 11144 11093 +7096 7147 7148 7097 11093 11144 11145 11094 +7097 7148 7149 7098 11094 11145 11146 11095 +7098 7149 7150 7099 11095 11146 11147 11096 +7099 7150 7151 7100 11096 11147 11148 11097 +7100 7151 7152 7101 11097 11148 11149 11098 +7101 7152 7153 7102 11098 11149 11150 11099 +7102 7153 7154 7103 11099 11150 11151 11100 +7103 7154 7155 7104 11100 11151 11152 11101 +7104 7155 7156 7105 11101 11152 11153 11102 +7105 7156 7157 7106 11102 11153 11154 11103 +7106 7157 7158 7107 11103 11154 11155 11104 +7107 7158 7159 7108 11104 11155 11156 11105 +7108 7159 7160 7109 11105 11156 11157 11106 +7109 7160 7161 7110 11106 11157 11158 11107 +7110 7161 7162 7111 11107 11158 11159 11108 +7111 7162 7163 7112 11108 11159 11160 11109 +7112 7163 7164 7113 11109 11160 11161 11110 +7113 7164 7165 7114 11110 11161 11162 11111 +7114 7165 7166 7115 11111 11162 11163 11112 +7115 7166 7167 7116 11112 11163 11164 11113 +7116 7167 7168 7117 11113 11164 11165 11114 +7117 7168 7169 7170 11114 11165 11166 11167 +7117 7170 7171 7118 11114 11167 11168 11115 +7118 7171 7172 7119 11115 11168 11169 11116 +7119 7172 7173 7120 11116 11169 11170 11117 +7120 7173 7174 7121 11117 11170 11171 11118 +7121 7174 7175 7122 11118 11171 11172 11119 +7122 7175 7176 7123 11119 11172 11173 11120 +7123 7176 7177 7124 11120 11173 11174 11121 +7124 7177 7178 7125 11121 11174 11175 11122 +7125 7178 7179 7126 11122 11175 11176 11123 +7126 7179 7180 7127 11123 11176 11177 11124 +7127 7180 7181 7128 11124 11177 11178 11125 +7128 7181 7182 7129 11125 11178 11179 11126 +7129 7182 7183 7130 11126 11179 11180 11127 +7130 7183 7184 7131 11127 11180 11181 11128 +7131 7184 7185 7132 11128 11181 11182 11129 +7132 7185 7186 7133 11129 11182 11183 11130 +7133 7186 7187 7134 11130 11183 11184 11131 +7134 7187 7188 7135 11131 11184 11185 11132 +7135 7188 7189 7136 11132 11185 11186 11133 +7136 7189 7190 7137 11133 11186 11187 11134 +7137 7190 7191 7138 11134 11187 11188 11135 +7138 7191 7192 7139 11135 11188 11189 11136 +7139 7192 7193 7140 11136 11189 11190 11137 +7140 7193 7194 7141 11137 11190 11191 11138 +7141 7194 7195 7142 11138 11191 11192 11139 +7143 7196 7197 7144 11140 11193 11194 11141 +7144 7197 7198 7145 11141 11194 11195 11142 +7145 7198 7199 7146 11142 11195 11196 11143 +7146 7199 7200 7147 11143 11196 11197 11144 +7147 7200 7201 7148 11144 11197 11198 11145 +7148 7201 7202 7149 11145 11198 11199 11146 +7149 7202 7203 7150 11146 11199 11200 11147 +7150 7203 7204 7151 11147 11200 11201 11148 +7151 7204 7205 7152 11148 11201 11202 11149 +7152 7205 7206 7153 11149 11202 11203 11150 +7153 7206 7207 7154 11150 11203 11204 11151 +7154 7207 7208 7155 11151 11204 11205 11152 +7155 7208 7209 7156 11152 11205 11206 11153 +7156 7209 7210 7157 11153 11206 11207 11154 +7157 7210 7211 7158 11154 11207 11208 11155 +7158 7211 7212 7159 11155 11208 11209 11156 +7159 7212 7213 7160 11156 11209 11210 11157 +7160 7213 7214 7161 11157 11210 11211 11158 +7161 7214 7215 7162 11158 11211 11212 11159 +7162 7215 7216 7163 11159 11212 11213 11160 +7163 7216 7217 7164 11160 11213 11214 11161 +7164 7217 7218 7165 11161 11214 11215 11162 +7165 7218 7219 7166 11162 11215 11216 11163 +7166 7219 7220 7167 11163 11216 11217 11164 +7167 7220 7221 7168 11164 11217 11218 11165 +7168 7221 7222 7169 11165 11218 11219 11166 +7169 7222 7223 7224 11166 11219 11220 11221 +7169 7224 7225 7170 11166 11221 11222 11167 +7170 7225 7226 7171 11167 11222 11223 11168 +7171 7226 7227 7172 11168 11223 11224 11169 +7172 7227 7228 7173 11169 11224 11225 11170 +7173 7228 7229 7174 11170 11225 11226 11171 +7174 7229 7230 7175 11171 11226 11227 11172 +7175 7230 7231 7176 11172 11227 11228 11173 +7176 7231 7232 7177 11173 11228 11229 11174 +7177 7232 7233 7178 11174 11229 11230 11175 +7178 7233 7234 7179 11175 11230 11231 11176 +7179 7234 7235 7180 11176 11231 11232 11177 +7180 7235 7236 7181 11177 11232 11233 11178 +7181 7236 7237 7182 11178 11233 11234 11179 +7182 7237 7238 7183 11179 11234 11235 11180 +7183 7238 7239 7184 11180 11235 11236 11181 +7184 7239 7240 7185 11181 11236 11237 11182 +7185 7240 7241 7186 11182 11237 11238 11183 +7186 7241 7242 7187 11183 11238 11239 11184 +7187 7242 7243 7188 11184 11239 11240 11185 +7188 7243 7244 7189 11185 11240 11241 11186 +7189 7244 7245 7190 11186 11241 11242 11187 +7190 7245 7246 7191 11187 11242 11243 11188 +7191 7246 7247 7192 11188 11243 11244 11189 +7192 7247 7248 7193 11189 11244 11245 11190 +7193 7248 7249 7194 11190 11245 11246 11191 +7194 7249 7250 7195 11191 11246 11247 11192 +7196 7251 7252 7197 11193 11248 11249 11194 +7197 7252 7253 7198 11194 11249 11250 11195 +7198 7253 7254 7199 11195 11250 11251 11196 +7199 7254 7255 7200 11196 11251 11252 11197 +7200 7255 7256 7201 11197 11252 11253 11198 +7201 7256 7257 7202 11198 11253 11254 11199 +7202 7257 7258 7203 11199 11254 11255 11200 +7203 7258 7259 7204 11200 11255 11256 11201 +7204 7259 7260 7205 11201 11256 11257 11202 +7205 7260 7261 7206 11202 11257 11258 11203 +7206 7261 7262 7207 11203 11258 11259 11204 +7207 7262 7263 7208 11204 11259 11260 11205 +7208 7263 7264 7209 11205 11260 11261 11206 +7209 7264 7265 7210 11206 11261 11262 11207 +7210 7265 7266 7211 11207 11262 11263 11208 +7211 7266 7267 7212 11208 11263 11264 11209 +7212 7267 7268 7213 11209 11264 11265 11210 +7213 7268 7269 7214 11210 11265 11266 11211 +7214 7269 7270 7215 11211 11266 11267 11212 +7215 7270 7271 7216 11212 11267 11268 11213 +7216 7271 7272 7217 11213 11268 11269 11214 +7217 7272 7273 7218 11214 11269 11270 11215 +7218 7273 7274 7219 11215 11270 11271 11216 +7219 7274 7275 7220 11216 11271 11272 11217 +7220 7275 7276 7221 11217 11272 11273 11218 +7221 7276 7277 7222 11218 11273 11274 11219 +7222 7277 7278 7223 11219 11274 11275 11220 +7223 7278 7279 7280 11220 11275 11276 11277 +7223 7280 7281 7224 11220 11277 11278 11221 +7224 7281 7282 7225 11221 11278 11279 11222 +7225 7282 7283 7226 11222 11279 11280 11223 +7226 7283 7284 7227 11223 11280 11281 11224 +7227 7284 7285 7228 11224 11281 11282 11225 +7228 7285 7286 7229 11225 11282 11283 11226 +7229 7286 7287 7230 11226 11283 11284 11227 +7230 7287 7288 7231 11227 11284 11285 11228 +7231 7288 7289 7232 11228 11285 11286 11229 +7232 7289 7290 7233 11229 11286 11287 11230 +7233 7290 7291 7234 11230 11287 11288 11231 +7234 7291 7292 7235 11231 11288 11289 11232 +7235 7292 7293 7236 11232 11289 11290 11233 +7236 7293 7294 7237 11233 11290 11291 11234 +7237 7294 7295 7238 11234 11291 11292 11235 +7238 7295 7296 7239 11235 11292 11293 11236 +7239 7296 7297 7240 11236 11293 11294 11237 +7240 7297 7298 7241 11237 11294 11295 11238 +7241 7298 7299 7242 11238 11295 11296 11239 +7242 7299 7300 7243 11239 11296 11297 11240 +7243 7300 7301 7244 11240 11297 11298 11241 +7244 7301 7302 7245 11241 11298 11299 11242 +7245 7302 7303 7246 11242 11299 11300 11243 +7246 7303 7304 7247 11243 11300 11301 11244 +7247 7304 7305 7248 11244 11301 11302 11245 +7248 7305 7306 7249 11245 11302 11303 11246 +7249 7306 7307 7250 11246 11303 11304 11247 +7251 7308 7309 7252 11248 11305 11306 11249 +7252 7309 7310 7253 11249 11306 11307 11250 +7253 7310 7311 7254 11250 11307 11308 11251 +7254 7311 7312 7255 11251 11308 11309 11252 +7255 7312 7313 7256 11252 11309 11310 11253 +7256 7313 7314 7257 11253 11310 11311 11254 +7257 7314 7315 7258 11254 11311 11312 11255 +7258 7315 7316 7259 11255 11312 11313 11256 +7259 7316 7317 7260 11256 11313 11314 11257 +7260 7317 7318 7261 11257 11314 11315 11258 +7261 7318 7319 7262 11258 11315 11316 11259 +7262 7319 7320 7263 11259 11316 11317 11260 +7263 7320 7321 7264 11260 11317 11318 11261 +7264 7321 7322 7265 11261 11318 11319 11262 +7265 7322 7323 7266 11262 11319 11320 11263 +7266 7323 7324 7267 11263 11320 11321 11264 +7267 7324 7325 7268 11264 11321 11322 11265 +7268 7325 7326 7269 11265 11322 11323 11266 +7269 7326 7327 7270 11266 11323 11324 11267 +7270 7327 7328 7271 11267 11324 11325 11268 +7271 7328 7329 7272 11268 11325 11326 11269 +7272 7329 7330 7273 11269 11326 11327 11270 +7273 7330 7331 7274 11270 11327 11328 11271 +7274 7331 7332 7275 11271 11328 11329 11272 +7275 7332 7333 7276 11272 11329 11330 11273 +7276 7333 7334 7277 11273 11330 11331 11274 +7277 7334 7335 7278 11274 11331 11332 11275 +7278 7335 7336 7279 11275 11332 11333 11276 +7279 7336 7337 7338 11276 11333 11334 11335 +7279 7338 7339 7280 11276 11335 11336 11277 +7280 7339 7340 7281 11277 11336 11337 11278 +7281 7340 7341 7282 11278 11337 11338 11279 +7282 7341 7342 7283 11279 11338 11339 11280 +7283 7342 7343 7284 11280 11339 11340 11281 +7284 7343 7344 7285 11281 11340 11341 11282 +7285 7344 7345 7286 11282 11341 11342 11283 +7286 7345 7346 7287 11283 11342 11343 11284 +7287 7346 7347 7288 11284 11343 11344 11285 +7288 7347 7348 7289 11285 11344 11345 11286 +7289 7348 7349 7290 11286 11345 11346 11287 +7290 7349 7350 7291 11287 11346 11347 11288 +7291 7350 7351 7292 11288 11347 11348 11289 +7292 7351 7352 7293 11289 11348 11349 11290 +7293 7352 7353 7294 11290 11349 11350 11291 +7294 7353 7354 7295 11291 11350 11351 11292 +7295 7354 7355 7296 11292 11351 11352 11293 +7296 7355 7356 7297 11293 11352 11353 11294 +7297 7356 7357 7298 11294 11353 11354 11295 +7298 7357 7358 7299 11295 11354 11355 11296 +7299 7358 7359 7300 11296 11355 11356 11297 +7300 7359 7360 7301 11297 11356 11357 11298 +7301 7360 7361 7302 11298 11357 11358 11299 +7302 7361 7362 7303 11299 11358 11359 11300 +7303 7362 7363 7304 11300 11359 11360 11301 +7304 7363 7364 7305 11301 11360 11361 11302 +7305 7364 7365 7306 11302 11361 11362 11303 +7306 7365 7366 7307 11303 11362 11363 11304 +7308 7367 7368 7309 11305 11364 11365 11306 +7309 7368 7369 7310 11306 11365 11366 11307 +7310 7369 7370 7311 11307 11366 11367 11308 +7311 7370 7371 7312 11308 11367 11368 11309 +7312 7371 7372 7313 11309 11368 11369 11310 +7313 7372 7373 7314 11310 11369 11370 11311 +7314 7373 7374 7315 11311 11370 11371 11312 +7315 7374 7375 7316 11312 11371 11372 11313 +7316 7375 7376 7317 11313 11372 11373 11314 +7317 7376 7377 7318 11314 11373 11374 11315 +7318 7377 7378 7319 11315 11374 11375 11316 +7319 7378 7379 7320 11316 11375 11376 11317 +7320 7379 7380 7321 11317 11376 11377 11318 +7321 7380 7381 7322 11318 11377 11378 11319 +7322 7381 7382 7323 11319 11378 11379 11320 +7323 7382 7383 7324 11320 11379 11380 11321 +7324 7383 7384 7325 11321 11380 11381 11322 +7325 7384 7385 7326 11322 11381 11382 11323 +7326 7385 7386 7327 11323 11382 11383 11324 +7327 7386 7387 7328 11324 11383 11384 11325 +7328 7387 7388 7329 11325 11384 11385 11326 +7329 7388 7389 7330 11326 11385 11386 11327 +7330 7389 7390 7331 11327 11386 11387 11328 +7331 7390 7391 7332 11328 11387 11388 11329 +7332 7391 7392 7333 11329 11388 11389 11330 +7333 7392 7393 7334 11330 11389 11390 11331 +7334 7393 7394 7335 11331 11390 11391 11332 +7335 7394 7395 7336 11332 11391 11392 11333 +7336 7395 7396 7337 11333 11392 11393 11334 +7337 7396 7397 7398 11334 11393 11394 11395 +7337 7398 7399 7338 11334 11395 11396 11335 +7338 7399 7400 7339 11335 11396 11397 11336 +7339 7400 7401 7340 11336 11397 11398 11337 +7340 7401 7402 7341 11337 11398 11399 11338 +7341 7402 7403 7342 11338 11399 11400 11339 +7342 7403 7404 7343 11339 11400 11401 11340 +7343 7404 7405 7344 11340 11401 11402 11341 +7344 7405 7406 7345 11341 11402 11403 11342 +7345 7406 7407 7346 11342 11403 11404 11343 +7346 7407 7408 7347 11343 11404 11405 11344 +7347 7408 7409 7348 11344 11405 11406 11345 +7348 7409 7410 7349 11345 11406 11407 11346 +7349 7410 7411 7350 11346 11407 11408 11347 +7350 7411 7412 7351 11347 11408 11409 11348 +7351 7412 7413 7352 11348 11409 11410 11349 +7352 7413 7414 7353 11349 11410 11411 11350 +7353 7414 7415 7354 11350 11411 11412 11351 +7354 7415 7416 7355 11351 11412 11413 11352 +7355 7416 7417 7356 11352 11413 11414 11353 +7356 7417 7418 7357 11353 11414 11415 11354 +7357 7418 7419 7358 11354 11415 11416 11355 +7358 7419 7420 7359 11355 11416 11417 11356 +7359 7420 7421 7360 11356 11417 11418 11357 +7360 7421 7422 7361 11357 11418 11419 11358 +7361 7422 7423 7362 11358 11419 11420 11359 +7362 7423 7424 7363 11359 11420 11421 11360 +7363 7424 7425 7364 11360 11421 11422 11361 +7364 7425 7426 7365 11361 11422 11423 11362 +7365 7426 7427 7366 11362 11423 11424 11363 +7367 7428 7429 7368 11364 11425 11426 11365 +7368 7429 7430 7369 11365 11426 11427 11366 +7369 7430 7431 7370 11366 11427 11428 11367 +7370 7431 7432 7371 11367 11428 11429 11368 +7371 7432 7433 7372 11368 11429 11430 11369 +7372 7433 7434 7373 11369 11430 11431 11370 +7373 7434 7435 7374 11370 11431 11432 11371 +7374 7435 7436 7375 11371 11432 11433 11372 +7375 7436 7437 7376 11372 11433 11434 11373 +7376 7437 7438 7377 11373 11434 11435 11374 +7377 7438 7439 7378 11374 11435 11436 11375 +7378 7439 7440 7379 11375 11436 11437 11376 +7379 7440 7441 7380 11376 11437 11438 11377 +7380 7441 7442 7381 11377 11438 11439 11378 +7381 7442 7443 7382 11378 11439 11440 11379 +7382 7443 7444 7383 11379 11440 11441 11380 +7383 7444 7445 7384 11380 11441 11442 11381 +7384 7445 7446 7385 11381 11442 11443 11382 +7385 7446 7447 7386 11382 11443 11444 11383 +7386 7447 7448 7387 11383 11444 11445 11384 +7387 7448 7449 7388 11384 11445 11446 11385 +7388 7449 7450 7389 11385 11446 11447 11386 +7389 7450 7451 7390 11386 11447 11448 11387 +7390 7451 7452 7391 11387 11448 11449 11388 +7391 7452 7453 7392 11388 11449 11450 11389 +7392 7453 7454 7393 11389 11450 11451 11390 +7393 7454 7455 7394 11390 11451 11452 11391 +7394 7455 7456 7395 11391 11452 11453 11392 +7395 7456 7457 7396 11392 11453 11454 11393 +7396 7457 7458 7397 11393 11454 11455 11394 +7397 7458 7459 7460 11394 11455 11456 11457 +7397 7460 7461 7398 11394 11457 11458 11395 +7398 7461 7462 7399 11395 11458 11459 11396 +7399 7462 7463 7400 11396 11459 11460 11397 +7400 7463 7464 7401 11397 11460 11461 11398 +7401 7464 7465 7402 11398 11461 11462 11399 +7402 7465 7466 7403 11399 11462 11463 11400 +7403 7466 7467 7404 11400 11463 11464 11401 +7404 7467 7468 7405 11401 11464 11465 11402 +7405 7468 7469 7406 11402 11465 11466 11403 +7406 7469 7470 7407 11403 11466 11467 11404 +7407 7470 7471 7408 11404 11467 11468 11405 +7408 7471 7472 7409 11405 11468 11469 11406 +7409 7472 7473 7410 11406 11469 11470 11407 +7410 7473 7474 7411 11407 11470 11471 11408 +7411 7474 7475 7412 11408 11471 11472 11409 +7412 7475 7476 7413 11409 11472 11473 11410 +7413 7476 7477 7414 11410 11473 11474 11411 +7414 7477 7478 7415 11411 11474 11475 11412 +7415 7478 7479 7416 11412 11475 11476 11413 +7416 7479 7480 7417 11413 11476 11477 11414 +7417 7480 7481 7418 11414 11477 11478 11415 +7418 7481 7482 7419 11415 11478 11479 11416 +7419 7482 7483 7420 11416 11479 11480 11417 +7420 7483 7484 7421 11417 11480 11481 11418 +7421 7484 7485 7422 11418 11481 11482 11419 +7422 7485 7486 7423 11419 11482 11483 11420 +7423 7486 7487 7424 11420 11483 11484 11421 +7424 7487 7488 7425 11421 11484 11485 11422 +7425 7488 7489 7426 11422 11485 11486 11423 +7426 7489 7490 7427 11423 11486 11487 11424 +7428 7491 7492 7429 11425 11488 11489 11426 +7429 7492 7493 7430 11426 11489 11490 11427 +7430 7493 7494 7431 11427 11490 11491 11428 +7431 7494 7495 7432 11428 11491 11492 11429 +7432 7495 7496 7433 11429 11492 11493 11430 +7433 7496 7497 7434 11430 11493 11494 11431 +7434 7497 7498 7435 11431 11494 11495 11432 +7435 7498 7499 7436 11432 11495 11496 11433 +7436 7499 7500 7437 11433 11496 11497 11434 +7437 7500 7501 7438 11434 11497 11498 11435 +7438 7501 7502 7439 11435 11498 11499 11436 +7439 7502 7503 7440 11436 11499 11500 11437 +7440 7503 7504 7441 11437 11500 11501 11438 +7441 7504 7505 7442 11438 11501 11502 11439 +7442 7505 7506 7443 11439 11502 11503 11440 +7443 7506 7507 7444 11440 11503 11504 11441 +7444 7507 7508 7445 11441 11504 11505 11442 +7445 7508 7509 7446 11442 11505 11506 11443 +7446 7509 7510 7447 11443 11506 11507 11444 +7447 7510 7511 7448 11444 11507 11508 11445 +7448 7511 7512 7449 11445 11508 11509 11446 +7449 7512 7513 7450 11446 11509 11510 11447 +7450 7513 7514 7451 11447 11510 11511 11448 +7451 7514 7515 7452 11448 11511 11512 11449 +7452 7515 7516 7453 11449 11512 11513 11450 +7453 7516 7517 7454 11450 11513 11514 11451 +7454 7517 7518 7455 11451 11514 11515 11452 +7455 7518 7519 7456 11452 11515 11516 11453 +7456 7519 7520 7457 11453 11516 11517 11454 +7457 7520 7521 7458 11454 11517 11518 11455 +7458 7521 7522 7459 11455 11518 11519 11456 +7459 7522 7523 7524 11456 11519 11520 11521 +7459 7524 7525 7460 11456 11521 11522 11457 +7460 7525 7526 7461 11457 11522 11523 11458 +7461 7526 7527 7462 11458 11523 11524 11459 +7462 7527 7528 7463 11459 11524 11525 11460 +7463 7528 7529 7464 11460 11525 11526 11461 +7464 7529 7530 7465 11461 11526 11527 11462 +7465 7530 7531 7466 11462 11527 11528 11463 +7466 7531 7532 7467 11463 11528 11529 11464 +7467 7532 7533 7468 11464 11529 11530 11465 +7468 7533 7534 7469 11465 11530 11531 11466 +7469 7534 7535 7470 11466 11531 11532 11467 +7470 7535 7536 7471 11467 11532 11533 11468 +7471 7536 7537 7472 11468 11533 11534 11469 +7472 7537 7538 7473 11469 11534 11535 11470 +7473 7538 7539 7474 11470 11535 11536 11471 +7474 7539 7540 7475 11471 11536 11537 11472 +7475 7540 7541 7476 11472 11537 11538 11473 +7476 7541 7542 7477 11473 11538 11539 11474 +7477 7542 7543 7478 11474 11539 11540 11475 +7478 7543 7544 7479 11475 11540 11541 11476 +7479 7544 7545 7480 11476 11541 11542 11477 +7480 7545 7546 7481 11477 11542 11543 11478 +7481 7546 7547 7482 11478 11543 11544 11479 +7482 7547 7548 7483 11479 11544 11545 11480 +7483 7548 7549 7484 11480 11545 11546 11481 +7484 7549 7550 7485 11481 11546 11547 11482 +7485 7550 7551 7486 11482 11547 11548 11483 +7486 7551 7552 7487 11483 11548 11549 11484 +7487 7552 7553 7488 11484 11549 11550 11485 +7488 7553 7554 7489 11485 11550 11551 11486 +7489 7554 7555 7490 11486 11551 11552 11487 +7491 7556 7557 7492 11488 11553 11554 11489 +7492 7557 7558 7493 11489 11554 11555 11490 +7493 7558 7559 7494 11490 11555 11556 11491 +7494 7559 7560 7495 11491 11556 11557 11492 +7495 7560 7561 7496 11492 11557 11558 11493 +7496 7561 7562 7497 11493 11558 11559 11494 +7497 7562 7563 7498 11494 11559 11560 11495 +7498 7563 7564 7499 11495 11560 11561 11496 +7499 7564 7565 7500 11496 11561 11562 11497 +7500 7565 7566 7501 11497 11562 11563 11498 +7501 7566 7567 7502 11498 11563 11564 11499 +7502 7567 7568 7503 11499 11564 11565 11500 +7503 7568 7569 7504 11500 11565 11566 11501 +7504 7569 7570 7505 11501 11566 11567 11502 +7505 7570 7571 7506 11502 11567 11568 11503 +7506 7571 7572 7507 11503 11568 11569 11504 +7507 7572 7573 7508 11504 11569 11570 11505 +7508 7573 7574 7509 11505 11570 11571 11506 +7509 7574 7575 7510 11506 11571 11572 11507 +7510 7575 7576 7511 11507 11572 11573 11508 +7511 7576 7577 7512 11508 11573 11574 11509 +7512 7577 7578 7513 11509 11574 11575 11510 +7513 7578 7579 7514 11510 11575 11576 11511 +7514 7579 7580 7515 11511 11576 11577 11512 +7515 7580 7581 7516 11512 11577 11578 11513 +7516 7581 7582 7517 11513 11578 11579 11514 +7517 7582 7583 7518 11514 11579 11580 11515 +7518 7583 7584 7519 11515 11580 11581 11516 +7519 7584 7585 7520 11516 11581 11582 11517 +7520 7585 7586 7521 11517 11582 11583 11518 +7521 7586 7587 7522 11518 11583 11584 11519 +7522 7587 7588 7523 11519 11584 11585 11520 +7523 7588 7589 7590 11520 11585 11586 11587 +7523 7590 7591 7524 11520 11587 11588 11521 +7524 7591 7592 7525 11521 11588 11589 11522 +7525 7592 7593 7526 11522 11589 11590 11523 +7526 7593 7594 7527 11523 11590 11591 11524 +7527 7594 7595 7528 11524 11591 11592 11525 +7528 7595 7596 7529 11525 11592 11593 11526 +7529 7596 7597 7530 11526 11593 11594 11527 +7530 7597 7598 7531 11527 11594 11595 11528 +7531 7598 7599 7532 11528 11595 11596 11529 +7532 7599 7600 7533 11529 11596 11597 11530 +7533 7600 7601 7534 11530 11597 11598 11531 +7534 7601 7602 7535 11531 11598 11599 11532 +7535 7602 7603 7536 11532 11599 11600 11533 +7536 7603 7604 7537 11533 11600 11601 11534 +7537 7604 7605 7538 11534 11601 11602 11535 +7538 7605 7606 7539 11535 11602 11603 11536 +7539 7606 7607 7540 11536 11603 11604 11537 +7540 7607 7608 7541 11537 11604 11605 11538 +7541 7608 7609 7542 11538 11605 11606 11539 +7542 7609 7610 7543 11539 11606 11607 11540 +7543 7610 7611 7544 11540 11607 11608 11541 +7544 7611 7612 7545 11541 11608 11609 11542 +7545 7612 7613 7546 11542 11609 11610 11543 +7546 7613 7614 7547 11543 11610 11611 11544 +7547 7614 7615 7548 11544 11611 11612 11545 +7548 7615 7616 7549 11545 11612 11613 11546 +7549 7616 7617 7550 11546 11613 11614 11547 +7550 7617 7618 7551 11547 11614 11615 11548 +7551 7618 7619 7552 11548 11615 11616 11549 +7552 7619 7620 7553 11549 11616 11617 11550 +7553 7620 7621 7554 11550 11617 11618 11551 +7554 7621 7622 7555 11551 11618 11619 11552 +7556 7623 7624 7557 11553 11620 11621 11554 +7557 7624 7625 7558 11554 11621 11622 11555 +7558 7625 7626 7559 11555 11622 11623 11556 +7559 7626 7627 7560 11556 11623 11624 11557 +7560 7627 7628 7561 11557 11624 11625 11558 +7561 7628 7629 7562 11558 11625 11626 11559 +7562 7629 7630 7563 11559 11626 11627 11560 +7563 7630 7631 7564 11560 11627 11628 11561 +7564 7631 7632 7565 11561 11628 11629 11562 +7565 7632 7633 7566 11562 11629 11630 11563 +7566 7633 7634 7567 11563 11630 11631 11564 +7567 7634 7635 7568 11564 11631 11632 11565 +7568 7635 7636 7569 11565 11632 11633 11566 +7569 7636 7637 7570 11566 11633 11634 11567 +7570 7637 7638 7571 11567 11634 11635 11568 +7571 7638 7639 7572 11568 11635 11636 11569 +7572 7639 7640 7573 11569 11636 11637 11570 +7573 7640 7641 7574 11570 11637 11638 11571 +7574 7641 7642 7575 11571 11638 11639 11572 +7575 7642 7643 7576 11572 11639 11640 11573 +7576 7643 7644 7577 11573 11640 11641 11574 +7577 7644 7645 7578 11574 11641 11642 11575 +7578 7645 7646 7579 11575 11642 11643 11576 +7579 7646 7647 7580 11576 11643 11644 11577 +7580 7647 7648 7581 11577 11644 11645 11578 +7581 7648 7649 7582 11578 11645 11646 11579 +7582 7649 7650 7583 11579 11646 11647 11580 +7583 7650 7651 7584 11580 11647 11648 11581 +7584 7651 7652 7585 11581 11648 11649 11582 +7585 7652 7653 7586 11582 11649 11650 11583 +7586 7653 7654 7587 11583 11650 11651 11584 +7587 7654 7655 7588 11584 11651 11652 11585 +7588 7655 7656 7589 11585 11652 11653 11586 +7589 7656 7657 7658 11586 11653 11654 11655 +7589 7658 7659 7590 11586 11655 11656 11587 +7590 7659 7660 7591 11587 11656 11657 11588 +7591 7660 7661 7592 11588 11657 11658 11589 +7592 7661 7662 7593 11589 11658 11659 11590 +7593 7662 7663 7594 11590 11659 11660 11591 +7594 7663 7664 7595 11591 11660 11661 11592 +7595 7664 7665 7596 11592 11661 11662 11593 +7596 7665 7666 7597 11593 11662 11663 11594 +7597 7666 7667 7598 11594 11663 11664 11595 +7598 7667 7668 7599 11595 11664 11665 11596 +7599 7668 7669 7600 11596 11665 11666 11597 +7600 7669 7670 7601 11597 11666 11667 11598 +7601 7670 7671 7602 11598 11667 11668 11599 +7602 7671 7672 7603 11599 11668 11669 11600 +7603 7672 7673 7604 11600 11669 11670 11601 +7604 7673 7674 7605 11601 11670 11671 11602 +7605 7674 7675 7606 11602 11671 11672 11603 +7606 7675 7676 7607 11603 11672 11673 11604 +7607 7676 7677 7608 11604 11673 11674 11605 +7608 7677 7678 7609 11605 11674 11675 11606 +7609 7678 7679 7610 11606 11675 11676 11607 +7610 7679 7680 7611 11607 11676 11677 11608 +7611 7680 7681 7612 11608 11677 11678 11609 +7612 7681 7682 7613 11609 11678 11679 11610 +7613 7682 7683 7614 11610 11679 11680 11611 +7614 7683 7684 7615 11611 11680 11681 11612 +7615 7684 7685 7616 11612 11681 11682 11613 +7616 7685 7686 7617 11613 11682 11683 11614 +7617 7686 7687 7618 11614 11683 11684 11615 +7618 7687 7688 7619 11615 11684 11685 11616 +7619 7688 7689 7620 11616 11685 11686 11617 +7620 7689 7690 7621 11617 11686 11687 11618 +7621 7690 7691 7622 11618 11687 11688 11619 +7623 7692 7693 7624 11620 11689 11690 11621 +7624 7693 7694 7625 11621 11690 11691 11622 +7625 7694 7695 7626 11622 11691 11692 11623 +7626 7695 7696 7627 11623 11692 11693 11624 +7627 7696 7697 7628 11624 11693 11694 11625 +7628 7697 7698 7629 11625 11694 11695 11626 +7629 7698 7699 7630 11626 11695 11696 11627 +7630 7699 7700 7631 11627 11696 11697 11628 +7631 7700 7701 7632 11628 11697 11698 11629 +7632 7701 7702 7633 11629 11698 11699 11630 +7633 7702 7703 7634 11630 11699 11700 11631 +7634 7703 7704 7635 11631 11700 11701 11632 +7635 7704 7705 7636 11632 11701 11702 11633 +7636 7705 7706 7637 11633 11702 11703 11634 +7637 7706 7707 7638 11634 11703 11704 11635 +7638 7707 7708 7639 11635 11704 11705 11636 +7639 7708 7709 7640 11636 11705 11706 11637 +7640 7709 7710 7641 11637 11706 11707 11638 +7641 7710 7711 7642 11638 11707 11708 11639 +7642 7711 7712 7643 11639 11708 11709 11640 +7643 7712 7713 7644 11640 11709 11710 11641 +7644 7713 7714 7645 11641 11710 11711 11642 +7645 7714 7715 7646 11642 11711 11712 11643 +7646 7715 7716 7647 11643 11712 11713 11644 +7647 7716 7717 7648 11644 11713 11714 11645 +7648 7717 7718 7649 11645 11714 11715 11646 +7649 7718 7719 7650 11646 11715 11716 11647 +7650 7719 7720 7651 11647 11716 11717 11648 +7651 7720 7721 7652 11648 11717 11718 11649 +7652 7721 7722 7653 11649 11718 11719 11650 +7653 7722 7723 7654 11650 11719 11720 11651 +7654 7723 7724 7655 11651 11720 11721 11652 +7655 7724 7725 7656 11652 11721 11722 11653 +7656 7725 7726 7657 11653 11722 11723 11654 +7657 7726 7727 7728 11654 11723 11724 11725 +7657 7728 7729 7658 11654 11725 11726 11655 +7658 7729 7730 7659 11655 11726 11727 11656 +7659 7730 7731 7660 11656 11727 11728 11657 +7660 7731 7732 7661 11657 11728 11729 11658 +7661 7732 7733 7662 11658 11729 11730 11659 +7662 7733 7734 7663 11659 11730 11731 11660 +7663 7734 7735 7664 11660 11731 11732 11661 +7664 7735 7736 7665 11661 11732 11733 11662 +7665 7736 7737 7666 11662 11733 11734 11663 +7666 7737 7738 7667 11663 11734 11735 11664 +7667 7738 7739 7668 11664 11735 11736 11665 +7668 7739 7740 7669 11665 11736 11737 11666 +7669 7740 7741 7670 11666 11737 11738 11667 +7670 7741 7742 7671 11667 11738 11739 11668 +7671 7742 7743 7672 11668 11739 11740 11669 +7672 7743 7744 7673 11669 11740 11741 11670 +7673 7744 7745 7674 11670 11741 11742 11671 +7674 7745 7746 7675 11671 11742 11743 11672 +7675 7746 7747 7676 11672 11743 11744 11673 +7676 7747 7748 7677 11673 11744 11745 11674 +7677 7748 7749 7678 11674 11745 11746 11675 +7678 7749 7750 7679 11675 11746 11747 11676 +7679 7750 7751 7680 11676 11747 11748 11677 +7680 7751 7752 7681 11677 11748 11749 11678 +7681 7752 7753 7682 11678 11749 11750 11679 +7682 7753 7754 7683 11679 11750 11751 11680 +7683 7754 7755 7684 11680 11751 11752 11681 +7684 7755 7756 7685 11681 11752 11753 11682 +7685 7756 7757 7686 11682 11753 11754 11683 +7686 7757 7758 7687 11683 11754 11755 11684 +7687 7758 7759 7688 11684 11755 11756 11685 +7688 7759 7760 7689 11685 11756 11757 11686 +7689 7760 7761 7690 11686 11757 11758 11687 +7690 7761 7762 7691 11687 11758 11759 11688 +7692 7763 7764 7693 11689 11760 11761 11690 +7693 7764 7765 7694 11690 11761 11762 11691 +7694 7765 7766 7695 11691 11762 11763 11692 +7695 7766 7767 7696 11692 11763 11764 11693 +7696 7767 7768 7697 11693 11764 11765 11694 +7697 7768 7769 7698 11694 11765 11766 11695 +7698 7769 7770 7699 11695 11766 11767 11696 +7699 7770 7771 7700 11696 11767 11768 11697 +7700 7771 7772 7701 11697 11768 11769 11698 +7701 7772 7773 7702 11698 11769 11770 11699 +7702 7773 7774 7703 11699 11770 11771 11700 +7703 7774 7775 7704 11700 11771 11772 11701 +7704 7775 7776 7705 11701 11772 11773 11702 +7705 7776 7777 7706 11702 11773 11774 11703 +7706 7777 7778 7707 11703 11774 11775 11704 +7707 7778 7779 7708 11704 11775 11776 11705 +7708 7779 7780 7709 11705 11776 11777 11706 +7709 7780 7781 7710 11706 11777 11778 11707 +7710 7781 7782 7711 11707 11778 11779 11708 +7711 7782 7783 7712 11708 11779 11780 11709 +7712 7783 7784 7713 11709 11780 11781 11710 +7713 7784 7785 7714 11710 11781 11782 11711 +7714 7785 7786 7715 11711 11782 11783 11712 +7715 7786 7787 7716 11712 11783 11784 11713 +7716 7787 7788 7717 11713 11784 11785 11714 +7717 7788 7789 7718 11714 11785 11786 11715 +7718 7789 7790 7719 11715 11786 11787 11716 +7719 7790 7791 7720 11716 11787 11788 11717 +7720 7791 7792 7721 11717 11788 11789 11718 +7721 7792 7793 7722 11718 11789 11790 11719 +7722 7793 7794 7723 11719 11790 11791 11720 +7723 7794 7795 7724 11720 11791 11792 11721 +7724 7795 7796 7725 11721 11792 11793 11722 +7725 7796 7797 7726 11722 11793 11794 11723 +7726 7797 7798 7727 11723 11794 11795 11724 +7727 7798 7799 7800 11724 11795 11796 11797 +7727 7800 7801 7728 11724 11797 11798 11725 +7728 7801 7802 7729 11725 11798 11799 11726 +7729 7802 7803 7730 11726 11799 11800 11727 +7730 7803 7804 7731 11727 11800 11801 11728 +7731 7804 7805 7732 11728 11801 11802 11729 +7732 7805 7806 7733 11729 11802 11803 11730 +7733 7806 7807 7734 11730 11803 11804 11731 +7734 7807 7808 7735 11731 11804 11805 11732 +7735 7808 7809 7736 11732 11805 11806 11733 +7736 7809 7810 7737 11733 11806 11807 11734 +7737 7810 7811 7738 11734 11807 11808 11735 +7738 7811 7812 7739 11735 11808 11809 11736 +7739 7812 7813 7740 11736 11809 11810 11737 +7740 7813 7814 7741 11737 11810 11811 11738 +7741 7814 7815 7742 11738 11811 11812 11739 +7742 7815 7816 7743 11739 11812 11813 11740 +7743 7816 7817 7744 11740 11813 11814 11741 +7744 7817 7818 7745 11741 11814 11815 11742 +7745 7818 7819 7746 11742 11815 11816 11743 +7746 7819 7820 7747 11743 11816 11817 11744 +7747 7820 7821 7748 11744 11817 11818 11745 +7748 7821 7822 7749 11745 11818 11819 11746 +7749 7822 7823 7750 11746 11819 11820 11747 +7750 7823 7824 7751 11747 11820 11821 11748 +7751 7824 7825 7752 11748 11821 11822 11749 +7752 7825 7826 7753 11749 11822 11823 11750 +7753 7826 7827 7754 11750 11823 11824 11751 +7754 7827 7828 7755 11751 11824 11825 11752 +7755 7828 7829 7756 11752 11825 11826 11753 +7756 7829 7830 7757 11753 11826 11827 11754 +7757 7830 7831 7758 11754 11827 11828 11755 +7758 7831 7832 7759 11755 11828 11829 11756 +7759 7832 7833 7760 11756 11829 11830 11757 +7760 7833 7834 7761 11757 11830 11831 11758 +7761 7834 7835 7762 11758 11831 11832 11759 +7763 7836 7837 7764 11760 11833 11834 11761 +7764 7837 7838 7765 11761 11834 11835 11762 +7765 7838 7839 7766 11762 11835 11836 11763 +7766 7839 7840 7767 11763 11836 11837 11764 +7767 7840 7841 7768 11764 11837 11838 11765 +7768 7841 7842 7769 11765 11838 11839 11766 +7769 7842 7843 7770 11766 11839 11840 11767 +7770 7843 7844 7771 11767 11840 11841 11768 +7771 7844 7845 7772 11768 11841 11842 11769 +7772 7845 7846 7773 11769 11842 11843 11770 +7773 7846 7847 7774 11770 11843 11844 11771 +7774 7847 7848 7775 11771 11844 11845 11772 +7775 7848 7849 7776 11772 11845 11846 11773 +7776 7849 7850 7777 11773 11846 11847 11774 +7777 7850 7851 7778 11774 11847 11848 11775 +7778 7851 7852 7779 11775 11848 11849 11776 +7779 7852 7853 7780 11776 11849 11850 11777 +7780 7853 7854 7781 11777 11850 11851 11778 +7781 7854 7855 7782 11778 11851 11852 11779 +7782 7855 7856 7783 11779 11852 11853 11780 +7783 7856 7857 7784 11780 11853 11854 11781 +7784 7857 7858 7785 11781 11854 11855 11782 +7785 7858 7859 7786 11782 11855 11856 11783 +7786 7859 7860 7787 11783 11856 11857 11784 +7787 7860 7861 7788 11784 11857 11858 11785 +7788 7861 7862 7789 11785 11858 11859 11786 +7789 7862 7863 7790 11786 11859 11860 11787 +7790 7863 7864 7791 11787 11860 11861 11788 +7791 7864 7865 7792 11788 11861 11862 11789 +7792 7865 7866 7793 11789 11862 11863 11790 +7793 7866 7867 7794 11790 11863 11864 11791 +7794 7867 7868 7795 11791 11864 11865 11792 +7795 7868 7869 7796 11792 11865 11866 11793 +7796 7869 7870 7797 11793 11866 11867 11794 +7797 7870 7871 7798 11794 11867 11868 11795 +7798 7871 7872 7799 11795 11868 11869 11796 +7799 7872 7873 7800 11796 11869 11870 11797 +7800 7873 7874 7801 11797 11870 11871 11798 +7801 7874 7875 7802 11798 11871 11872 11799 +7802 7875 7876 7803 11799 11872 11873 11800 +7803 7876 7877 7804 11800 11873 11874 11801 +7804 7877 7878 7805 11801 11874 11875 11802 +7805 7878 7879 7806 11802 11875 11876 11803 +7806 7879 7880 7807 11803 11876 11877 11804 +7807 7880 7881 7808 11804 11877 11878 11805 +7808 7881 7882 7809 11805 11878 11879 11806 +7809 7882 7883 7810 11806 11879 11880 11807 +7810 7883 7884 7811 11807 11880 11881 11808 +7811 7884 7885 7812 11808 11881 11882 11809 +7812 7885 7886 7813 11809 11882 11883 11810 +7813 7886 7887 7814 11810 11883 11884 11811 +7814 7887 7888 7815 11811 11884 11885 11812 +7815 7888 7889 7816 11812 11885 11886 11813 +7816 7889 7890 7817 11813 11886 11887 11814 +7817 7890 7891 7818 11814 11887 11888 11815 +7818 7891 7892 7819 11815 11888 11889 11816 +7819 7892 7893 7820 11816 11889 11890 11817 +7820 7893 7894 7821 11817 11890 11891 11818 +7821 7894 7895 7822 11818 11891 11892 11819 +7822 7895 7896 7823 11819 11892 11893 11820 +7823 7896 7897 7824 11820 11893 11894 11821 +7824 7897 7898 7825 11821 11894 11895 11822 +7825 7898 7899 7826 11822 11895 11896 11823 +7826 7899 7900 7827 11823 11896 11897 11824 +7827 7900 7901 7828 11824 11897 11898 11825 +7828 7901 7902 7829 11825 11898 11899 11826 +7829 7902 7903 7830 11826 11899 11900 11827 +7830 7903 7904 7831 11827 11900 11901 11828 +7831 7904 7905 7832 11828 11901 11902 11829 +7832 7905 7906 7833 11829 11902 11903 11830 +7833 7906 7907 7834 11830 11903 11904 11831 +7834 7907 7908 7835 11831 11904 11905 11832 +7836 7909 7910 7837 11833 11906 11907 11834 +7837 7910 7911 7838 11834 11907 11908 11835 +7838 7911 7912 7839 11835 11908 11909 11836 +7839 7912 7913 7840 11836 11909 11910 11837 +7840 7913 7914 7841 11837 11910 11911 11838 +7841 7914 7915 7842 11838 11911 11912 11839 +7842 7915 7916 7843 11839 11912 11913 11840 +7843 7916 7917 7844 11840 11913 11914 11841 +7844 7917 7918 7845 11841 11914 11915 11842 +7845 7918 7919 7846 11842 11915 11916 11843 +7846 7919 7920 7847 11843 11916 11917 11844 +7847 7920 7921 7848 11844 11917 11918 11845 +7848 7921 7922 7849 11845 11918 11919 11846 +7849 7922 7923 7850 11846 11919 11920 11847 +7850 7923 7924 7851 11847 11920 11921 11848 +7851 7924 7925 7852 11848 11921 11922 11849 +7852 7925 7926 7853 11849 11922 11923 11850 +7853 7926 7927 7854 11850 11923 11924 11851 +7854 7927 7928 7855 11851 11924 11925 11852 +7855 7928 7929 7856 11852 11925 11926 11853 +7856 7929 7930 7857 11853 11926 11927 11854 +7857 7930 7931 7858 11854 11927 11928 11855 +7858 7931 7932 7859 11855 11928 11929 11856 +7859 7932 7933 7860 11856 11929 11930 11857 +7860 7933 7934 7861 11857 11930 11931 11858 +7861 7934 7935 7862 11858 11931 11932 11859 +7862 7935 7936 7863 11859 11932 11933 11860 +7863 7936 7937 7864 11860 11933 11934 11861 +7864 7937 7938 7865 11861 11934 11935 11862 +7865 7938 7939 7866 11862 11935 11936 11863 +7866 7939 7940 7867 11863 11936 11937 11864 +7867 7940 7941 7868 11864 11937 11938 11865 +7868 7941 7942 7869 11865 11938 11939 11866 +7869 7942 7943 7870 11866 11939 11940 11867 +7870 7943 7944 7871 11867 11940 11941 11868 +7871 7944 7945 7872 11868 11941 11942 11869 +7872 7945 7946 7873 11869 11942 11943 11870 +7873 7946 7947 7874 11870 11943 11944 11871 +7874 7947 7948 7875 11871 11944 11945 11872 +7875 7948 7949 7876 11872 11945 11946 11873 +7876 7949 7950 7877 11873 11946 11947 11874 +7877 7950 7951 7878 11874 11947 11948 11875 +7878 7951 7952 7879 11875 11948 11949 11876 +7879 7952 7953 7880 11876 11949 11950 11877 +7880 7953 7954 7881 11877 11950 11951 11878 +7881 7954 7955 7882 11878 11951 11952 11879 +7882 7955 7956 7883 11879 11952 11953 11880 +7883 7956 7957 7884 11880 11953 11954 11881 +7884 7957 7958 7885 11881 11954 11955 11882 +7885 7958 7959 7886 11882 11955 11956 11883 +7886 7959 7960 7887 11883 11956 11957 11884 +7887 7960 7961 7888 11884 11957 11958 11885 +7888 7961 7962 7889 11885 11958 11959 11886 +7889 7962 7963 7890 11886 11959 11960 11887 +7890 7963 7964 7891 11887 11960 11961 11888 +7891 7964 7965 7892 11888 11961 11962 11889 +7892 7965 7966 7893 11889 11962 11963 11890 +7893 7966 7967 7894 11890 11963 11964 11891 +7894 7967 7968 7895 11891 11964 11965 11892 +7895 7968 7969 7896 11892 11965 11966 11893 +7896 7969 7970 7897 11893 11966 11967 11894 +7897 7970 7971 7898 11894 11967 11968 11895 +7898 7971 7972 7899 11895 11968 11969 11896 +7899 7972 7973 7900 11896 11969 11970 11897 +7900 7973 7974 7901 11897 11970 11971 11898 +7901 7974 7975 7902 11898 11971 11972 11899 +7902 7975 7976 7903 11899 11972 11973 11900 +7903 7976 7977 7904 11900 11973 11974 11901 +7904 7977 7978 7905 11901 11974 11975 11902 +7905 7978 7979 7906 11902 11975 11976 11903 +7906 7979 7980 7907 11903 11976 11977 11904 +7907 7980 7981 7908 11904 11977 11978 11905 +7909 7982 7983 7910 11906 11979 11980 11907 +7910 7983 7984 7911 11907 11980 11981 11908 +7911 7984 7985 7912 11908 11981 11982 11909 +7912 7985 7986 7913 11909 11982 11983 11910 +7913 7986 7987 7914 11910 11983 11984 11911 +7914 7987 7988 7915 11911 11984 11985 11912 +7915 7988 7989 7916 11912 11985 11986 11913 +7916 7989 7990 7917 11913 11986 11987 11914 +7917 7990 7991 7918 11914 11987 11988 11915 +7918 7991 7992 7919 11915 11988 11989 11916 +7919 7992 7993 7920 11916 11989 11990 11917 +7920 7993 7994 7921 11917 11990 11991 11918 +7921 7994 7995 7922 11918 11991 11992 11919 +7922 7995 7996 7923 11919 11992 11993 11920 +7923 7996 7997 7924 11920 11993 11994 11921 +7924 7997 7998 7925 11921 11994 11995 11922 +7925 7998 7999 7926 11922 11995 11996 11923 +7926 7999 8000 7927 11923 11996 11997 11924 +7927 8000 8001 7928 11924 11997 11998 11925 +7928 8001 8002 7929 11925 11998 11999 11926 +7929 8002 8003 7930 11926 11999 12000 11927 +7930 8003 8004 7931 11927 12000 12001 11928 +7931 8004 8005 7932 11928 12001 12002 11929 +7932 8005 8006 7933 11929 12002 12003 11930 +7933 8006 8007 7934 11930 12003 12004 11931 +7934 8007 8008 7935 11931 12004 12005 11932 +7935 8008 8009 7936 11932 12005 12006 11933 +7936 8009 8010 7937 11933 12006 12007 11934 +7937 8010 8011 7938 11934 12007 12008 11935 +7938 8011 8012 7939 11935 12008 12009 11936 +7939 8012 8013 7940 11936 12009 12010 11937 +7940 8013 8014 7941 11937 12010 12011 11938 +7941 8014 8015 7942 11938 12011 12012 11939 +7942 8015 8016 7943 11939 12012 12013 11940 +7943 8016 8017 7944 11940 12013 12014 11941 +7944 8017 8018 7945 11941 12014 12015 11942 +7945 8018 8019 7946 11942 12015 12016 11943 +7946 8019 8020 7947 11943 12016 12017 11944 +7947 8020 8021 7948 11944 12017 12018 11945 +7948 8021 8022 7949 11945 12018 12019 11946 +7949 8022 8023 7950 11946 12019 12020 11947 +7950 8023 8024 7951 11947 12020 12021 11948 +7951 8024 8025 7952 11948 12021 12022 11949 +7952 8025 8026 7953 11949 12022 12023 11950 +7953 8026 8027 7954 11950 12023 12024 11951 +7954 8027 8028 7955 11951 12024 12025 11952 +7955 8028 8029 7956 11952 12025 12026 11953 +7956 8029 8030 7957 11953 12026 12027 11954 +7957 8030 8031 7958 11954 12027 12028 11955 +7958 8031 8032 7959 11955 12028 12029 11956 +7959 8032 8033 7960 11956 12029 12030 11957 +7960 8033 8034 7961 11957 12030 12031 11958 +7961 8034 8035 7962 11958 12031 12032 11959 +7962 8035 8036 7963 11959 12032 12033 11960 +7963 8036 8037 7964 11960 12033 12034 11961 +7964 8037 8038 7965 11961 12034 12035 11962 +7965 8038 8039 7966 11962 12035 12036 11963 +7966 8039 8040 7967 11963 12036 12037 11964 +7967 8040 8041 7968 11964 12037 12038 11965 +7968 8041 8042 7969 11965 12038 12039 11966 +7969 8042 8043 7970 11966 12039 12040 11967 +7970 8043 8044 7971 11967 12040 12041 11968 +7971 8044 8045 7972 11968 12041 12042 11969 +7972 8045 8046 7973 11969 12042 12043 11970 +7973 8046 8047 7974 11970 12043 12044 11971 +7974 8047 8048 7975 11971 12044 12045 11972 +7975 8048 8049 7976 11972 12045 12046 11973 +7976 8049 8050 7977 11973 12046 12047 11974 +7977 8050 8051 7978 11974 12047 12048 11975 +7978 8051 8052 7979 11975 12048 12049 11976 +7979 8052 8053 7980 11976 12049 12050 11977 +7980 8053 8054 7981 11977 12050 12051 11978 +7982 8055 8056 7983 11979 12052 12053 11980 +7983 8056 8057 7984 11980 12053 12054 11981 +7984 8057 8058 7985 11981 12054 12055 11982 +7985 8058 8059 7986 11982 12055 12056 11983 +7986 8059 8060 7987 11983 12056 12057 11984 +7987 8060 8061 7988 11984 12057 12058 11985 +7988 8061 8062 7989 11985 12058 12059 11986 +7989 8062 8063 7990 11986 12059 12060 11987 +7990 8063 8064 7991 11987 12060 12061 11988 +7991 8064 8065 7992 11988 12061 12062 11989 +7992 8065 8066 7993 11989 12062 12063 11990 +7993 8066 8067 7994 11990 12063 12064 11991 +7994 8067 8068 7995 11991 12064 12065 11992 +7995 8068 8069 7996 11992 12065 12066 11993 +7996 8069 8070 7997 11993 12066 12067 11994 +7997 8070 8071 7998 11994 12067 12068 11995 +7998 8071 8072 7999 11995 12068 12069 11996 +7999 8072 8073 8000 11996 12069 12070 11997 +8000 8073 8074 8001 11997 12070 12071 11998 +8001 8074 8075 8002 11998 12071 12072 11999 +8002 8075 8076 8003 11999 12072 12073 12000 +8003 8076 8077 8004 12000 12073 12074 12001 +8004 8077 8078 8005 12001 12074 12075 12002 +8005 8078 8079 8006 12002 12075 12076 12003 +8006 8079 8080 8007 12003 12076 12077 12004 +8007 8080 8081 8008 12004 12077 12078 12005 +8008 8081 8082 8009 12005 12078 12079 12006 +8009 8082 8083 8010 12006 12079 12080 12007 +8010 8083 8084 8011 12007 12080 12081 12008 +8011 8084 8085 8012 12008 12081 12082 12009 +8012 8085 8086 8013 12009 12082 12083 12010 +8013 8086 8087 8014 12010 12083 12084 12011 +8014 8087 8088 8015 12011 12084 12085 12012 +8015 8088 8089 8016 12012 12085 12086 12013 +8016 8089 8090 8017 12013 12086 12087 12014 +8017 8090 8091 8018 12014 12087 12088 12015 +8018 8091 8092 8019 12015 12088 12089 12016 +8019 8092 8093 8020 12016 12089 12090 12017 +8020 8093 8094 8021 12017 12090 12091 12018 +8021 8094 8095 8022 12018 12091 12092 12019 +8022 8095 8096 8023 12019 12092 12093 12020 +8023 8096 8097 8024 12020 12093 12094 12021 +8024 8097 8098 8025 12021 12094 12095 12022 +8025 8098 8099 8026 12022 12095 12096 12023 +8026 8099 8100 8027 12023 12096 12097 12024 +8027 8100 8101 8028 12024 12097 12098 12025 +8028 8101 8102 8029 12025 12098 12099 12026 +8029 8102 8103 8030 12026 12099 12100 12027 +8030 8103 8104 8031 12027 12100 12101 12028 +8031 8104 8105 8032 12028 12101 12102 12029 +8032 8105 8106 8033 12029 12102 12103 12030 +8033 8106 8107 8034 12030 12103 12104 12031 +8034 8107 8108 8035 12031 12104 12105 12032 +8035 8108 8109 8036 12032 12105 12106 12033 +8036 8109 8110 8037 12033 12106 12107 12034 +8037 8110 8111 8038 12034 12107 12108 12035 +8038 8111 8112 8039 12035 12108 12109 12036 +8039 8112 8113 8040 12036 12109 12110 12037 +8040 8113 8114 8041 12037 12110 12111 12038 +8041 8114 8115 8042 12038 12111 12112 12039 +8042 8115 8116 8043 12039 12112 12113 12040 +8043 8116 8117 8044 12040 12113 12114 12041 +8044 8117 8118 8045 12041 12114 12115 12042 +8045 8118 8119 8046 12042 12115 12116 12043 +8046 8119 8120 8047 12043 12116 12117 12044 +8047 8120 8121 8048 12044 12117 12118 12045 +8048 8121 8122 8049 12045 12118 12119 12046 +8049 8122 8123 8050 12046 12119 12120 12047 +8050 8123 8124 8051 12047 12120 12121 12048 +8051 8124 8125 8052 12048 12121 12122 12049 +8052 8125 8126 8053 12049 12122 12123 12050 +8053 8126 8127 8054 12050 12123 12124 12051 +8055 8128 8129 8056 12052 12125 12126 12053 +8056 8129 8130 8057 12053 12126 12127 12054 +8057 8130 8131 8058 12054 12127 12128 12055 +8058 8131 8132 8059 12055 12128 12129 12056 +8059 8132 8133 8060 12056 12129 12130 12057 +8060 8133 8134 8061 12057 12130 12131 12058 +8061 8134 8135 8062 12058 12131 12132 12059 +8062 8135 8136 8063 12059 12132 12133 12060 +8063 8136 8137 8064 12060 12133 12134 12061 +8064 8137 8138 8065 12061 12134 12135 12062 +8065 8138 8139 8066 12062 12135 12136 12063 +8066 8139 8140 8067 12063 12136 12137 12064 +8067 8140 8141 8068 12064 12137 12138 12065 +8068 8141 8142 8069 12065 12138 12139 12066 +8069 8142 8143 8070 12066 12139 12140 12067 +8070 8143 8144 8071 12067 12140 12141 12068 +8071 8144 8145 8072 12068 12141 12142 12069 +8072 8145 8146 8073 12069 12142 12143 12070 +8073 8146 8147 8074 12070 12143 12144 12071 +8074 8147 8148 8075 12071 12144 12145 12072 +8075 8148 8149 8076 12072 12145 12146 12073 +8076 8149 8150 8077 12073 12146 12147 12074 +8077 8150 8151 8078 12074 12147 12148 12075 +8078 8151 8152 8079 12075 12148 12149 12076 +8079 8152 8153 8080 12076 12149 12150 12077 +8080 8153 8154 8081 12077 12150 12151 12078 +8081 8154 8155 8082 12078 12151 12152 12079 +8082 8155 8156 8083 12079 12152 12153 12080 +8083 8156 8157 8084 12080 12153 12154 12081 +8084 8157 8158 8085 12081 12154 12155 12082 +8085 8158 8159 8086 12082 12155 12156 12083 +8086 8159 8160 8087 12083 12156 12157 12084 +8087 8160 8161 8088 12084 12157 12158 12085 +8088 8161 8162 8089 12085 12158 12159 12086 +8089 8162 8163 8090 12086 12159 12160 12087 +8090 8163 8164 8091 12087 12160 12161 12088 +8091 8164 8165 8092 12088 12161 12162 12089 +8092 8165 8166 8093 12089 12162 12163 12090 +8093 8166 8167 8094 12090 12163 12164 12091 +8094 8167 8168 8095 12091 12164 12165 12092 +8095 8168 8169 8096 12092 12165 12166 12093 +8096 8169 8170 8097 12093 12166 12167 12094 +8097 8170 8171 8098 12094 12167 12168 12095 +8098 8171 8172 8099 12095 12168 12169 12096 +8099 8172 8173 8100 12096 12169 12170 12097 +8100 8173 8174 8101 12097 12170 12171 12098 +8101 8174 8175 8102 12098 12171 12172 12099 +8102 8175 8176 8103 12099 12172 12173 12100 +8103 8176 8177 8104 12100 12173 12174 12101 +8104 8177 8178 8105 12101 12174 12175 12102 +8105 8178 8179 8106 12102 12175 12176 12103 +8106 8179 8180 8107 12103 12176 12177 12104 +8107 8180 8181 8108 12104 12177 12178 12105 +8108 8181 8182 8109 12105 12178 12179 12106 +8109 8182 8183 8110 12106 12179 12180 12107 +8110 8183 8184 8111 12107 12180 12181 12108 +8111 8184 8185 8112 12108 12181 12182 12109 +8112 8185 8186 8113 12109 12182 12183 12110 +8113 8186 8187 8114 12110 12183 12184 12111 +8114 8187 8188 8115 12111 12184 12185 12112 +8115 8188 8189 8116 12112 12185 12186 12113 +8116 8189 8190 8117 12113 12186 12187 12114 +8117 8190 8191 8118 12114 12187 12188 12115 +8118 8191 8192 8119 12115 12188 12189 12116 +8119 8192 8193 8120 12116 12189 12190 12117 +8120 8193 8194 8121 12117 12190 12191 12118 +8121 8194 8195 8122 12118 12191 12192 12119 +8122 8195 8196 8123 12119 12192 12193 12120 +8123 8196 8197 8124 12120 12193 12194 12121 +8124 8197 8198 8125 12121 12194 12195 12122 +8125 8198 8199 8126 12122 12195 12196 12123 +8126 8199 8200 8127 12123 12196 12197 12124 +8128 8201 8202 8129 12125 12198 12199 12126 +8129 8202 8203 8130 12126 12199 12200 12127 +8130 8203 8204 8131 12127 12200 12201 12128 +8131 8204 8205 8132 12128 12201 12202 12129 +8132 8205 8206 8133 12129 12202 12203 12130 +8133 8206 8207 8134 12130 12203 12204 12131 +8134 8207 8208 8135 12131 12204 12205 12132 +8135 8208 8209 8136 12132 12205 12206 12133 +8136 8209 8210 8137 12133 12206 12207 12134 +8137 8210 8211 8138 12134 12207 12208 12135 +8138 8211 8212 8139 12135 12208 12209 12136 +8139 8212 8213 8140 12136 12209 12210 12137 +8140 8213 8214 8141 12137 12210 12211 12138 +8141 8214 8215 8142 12138 12211 12212 12139 +8142 8215 8216 8143 12139 12212 12213 12140 +8143 8216 8217 8144 12140 12213 12214 12141 +8144 8217 8218 8145 12141 12214 12215 12142 +8145 8218 8219 8146 12142 12215 12216 12143 +8146 8219 8220 8147 12143 12216 12217 12144 +8147 8220 8221 8148 12144 12217 12218 12145 +8148 8221 8222 8149 12145 12218 12219 12146 +8149 8222 8223 8150 12146 12219 12220 12147 +8150 8223 8224 8151 12147 12220 12221 12148 +8151 8224 8225 8152 12148 12221 12222 12149 +8152 8225 8226 8153 12149 12222 12223 12150 +8153 8226 8227 8154 12150 12223 12224 12151 +8154 8227 8228 8155 12151 12224 12225 12152 +8155 8228 8229 8156 12152 12225 12226 12153 +8156 8229 8230 8157 12153 12226 12227 12154 +8157 8230 8231 8158 12154 12227 12228 12155 +8158 8231 8232 8159 12155 12228 12229 12156 +8159 8232 8233 8160 12156 12229 12230 12157 +8160 8233 8234 8161 12157 12230 12231 12158 +8161 8234 8235 8162 12158 12231 12232 12159 +8162 8235 8236 8163 12159 12232 12233 12160 +8163 8236 8237 8164 12160 12233 12234 12161 +8164 8237 8238 8165 12161 12234 12235 12162 +8165 8238 8239 8166 12162 12235 12236 12163 +8166 8239 8240 8167 12163 12236 12237 12164 +8167 8240 8241 8168 12164 12237 12238 12165 +8168 8241 8242 8169 12165 12238 12239 12166 +8169 8242 8243 8170 12166 12239 12240 12167 +8170 8243 8244 8171 12167 12240 12241 12168 +8171 8244 8245 8172 12168 12241 12242 12169 +8172 8245 8246 8173 12169 12242 12243 12170 +8173 8246 8247 8174 12170 12243 12244 12171 +8174 8247 8248 8175 12171 12244 12245 12172 +8175 8248 8249 8176 12172 12245 12246 12173 +8176 8249 8250 8177 12173 12246 12247 12174 +8177 8250 8251 8178 12174 12247 12248 12175 +8178 8251 8252 8179 12175 12248 12249 12176 +8179 8252 8253 8180 12176 12249 12250 12177 +8180 8253 8254 8181 12177 12250 12251 12178 +8181 8254 8255 8182 12178 12251 12252 12179 +8182 8255 8256 8183 12179 12252 12253 12180 +8183 8256 8257 8184 12180 12253 12254 12181 +8184 8257 8258 8185 12181 12254 12255 12182 +8185 8258 8259 8186 12182 12255 12256 12183 +8186 8259 8260 8187 12183 12256 12257 12184 +8187 8260 8261 8188 12184 12257 12258 12185 +8188 8261 8262 8189 12185 12258 12259 12186 +8189 8262 8263 8190 12186 12259 12260 12187 +8190 8263 8264 8191 12187 12260 12261 12188 +8191 8264 8265 8192 12188 12261 12262 12189 +8192 8265 8266 8193 12189 12262 12263 12190 +8193 8266 8267 8194 12190 12263 12264 12191 +8194 8267 8268 8195 12191 12264 12265 12192 +8195 8268 8269 8196 12192 12265 12266 12193 +8196 8269 8270 8197 12193 12266 12267 12194 +8197 8270 8271 8198 12194 12267 12268 12195 +8198 8271 8272 8199 12195 12268 12269 12196 +8199 8272 8273 8200 12196 12269 12270 12197 +8201 8274 8275 8202 12198 12271 12272 12199 +8202 8275 8276 8203 12199 12272 12273 12200 +8203 8276 8277 8204 12200 12273 12274 12201 +8204 8277 8278 8205 12201 12274 12275 12202 +8205 8278 8279 8206 12202 12275 12276 12203 +8206 8279 8280 8207 12203 12276 12277 12204 +8207 8280 8281 8208 12204 12277 12278 12205 +8208 8281 8282 8209 12205 12278 12279 12206 +8209 8282 8283 8210 12206 12279 12280 12207 +8210 8283 8284 8211 12207 12280 12281 12208 +8211 8284 8285 8212 12208 12281 12282 12209 +8212 8285 8286 8213 12209 12282 12283 12210 +8213 8286 8287 8214 12210 12283 12284 12211 +8214 8287 8288 8215 12211 12284 12285 12212 +8215 8288 8289 8216 12212 12285 12286 12213 +8216 8289 8290 8217 12213 12286 12287 12214 +8217 8290 8291 8218 12214 12287 12288 12215 +8218 8291 8292 8219 12215 12288 12289 12216 +8219 8292 8293 8220 12216 12289 12290 12217 +8220 8293 8294 8221 12217 12290 12291 12218 +8221 8294 8295 8222 12218 12291 12292 12219 +8222 8295 8296 8223 12219 12292 12293 12220 +8223 8296 8297 8224 12220 12293 12294 12221 +8224 8297 8298 8225 12221 12294 12295 12222 +8225 8298 8299 8226 12222 12295 12296 12223 +8226 8299 8300 8227 12223 12296 12297 12224 +8227 8300 8301 8228 12224 12297 12298 12225 +8228 8301 8302 8229 12225 12298 12299 12226 +8229 8302 8303 8230 12226 12299 12300 12227 +8230 8303 8304 8231 12227 12300 12301 12228 +8231 8304 8305 8232 12228 12301 12302 12229 +8232 8305 8306 8233 12229 12302 12303 12230 +8233 8306 8307 8234 12230 12303 12304 12231 +8234 8307 8308 8235 12231 12304 12305 12232 +8235 8308 8309 8236 12232 12305 12306 12233 +8236 8309 8310 8237 12233 12306 12307 12234 +8237 8310 8311 8238 12234 12307 12308 12235 +8238 8311 8312 8239 12235 12308 12309 12236 +8239 8312 8313 8240 12236 12309 12310 12237 +8240 8313 8314 8241 12237 12310 12311 12238 +8241 8314 8315 8242 12238 12311 12312 12239 +8242 8315 8316 8243 12239 12312 12313 12240 +8243 8316 8317 8244 12240 12313 12314 12241 +8244 8317 8318 8245 12241 12314 12315 12242 +8245 8318 8319 8246 12242 12315 12316 12243 +8246 8319 8320 8247 12243 12316 12317 12244 +8247 8320 8321 8248 12244 12317 12318 12245 +8248 8321 8322 8249 12245 12318 12319 12246 +8249 8322 8323 8250 12246 12319 12320 12247 +8250 8323 8324 8251 12247 12320 12321 12248 +8251 8324 8325 8252 12248 12321 12322 12249 +8252 8325 8326 8253 12249 12322 12323 12250 +8253 8326 8327 8254 12250 12323 12324 12251 +8254 8327 8328 8255 12251 12324 12325 12252 +8255 8328 8329 8256 12252 12325 12326 12253 +8256 8329 8330 8257 12253 12326 12327 12254 +8257 8330 8331 8258 12254 12327 12328 12255 +8258 8331 8332 8259 12255 12328 12329 12256 +8259 8332 8333 8260 12256 12329 12330 12257 +8260 8333 8334 8261 12257 12330 12331 12258 +8261 8334 8335 8262 12258 12331 12332 12259 +8262 8335 8336 8263 12259 12332 12333 12260 +8263 8336 8337 8264 12260 12333 12334 12261 +8264 8337 8338 8265 12261 12334 12335 12262 +8265 8338 8339 8266 12262 12335 12336 12263 +8266 8339 8340 8267 12263 12336 12337 12264 +8267 8340 8341 8268 12264 12337 12338 12265 +8268 8341 8342 8269 12265 12338 12339 12266 +8269 8342 8343 8270 12266 12339 12340 12267 +8270 8343 8344 8271 12267 12340 12341 12268 +8271 8344 8345 8272 12268 12341 12342 12269 +8272 8345 8346 8273 12269 12342 12343 12270 +8274 8347 8348 8275 12271 12344 12345 12272 +8275 8348 8349 8276 12272 12345 12346 12273 +8276 8349 8350 8277 12273 12346 12347 12274 +8277 8350 8351 8278 12274 12347 12348 12275 +8278 8351 8352 8279 12275 12348 12349 12276 +8279 8352 8353 8280 12276 12349 12350 12277 +8280 8353 8354 8281 12277 12350 12351 12278 +8281 8354 8355 8282 12278 12351 12352 12279 +8282 8355 8356 8283 12279 12352 12353 12280 +8283 8356 8357 8284 12280 12353 12354 12281 +8284 8357 8358 8285 12281 12354 12355 12282 +8285 8358 8359 8286 12282 12355 12356 12283 +8286 8359 8360 8287 12283 12356 12357 12284 +8287 8360 8361 8288 12284 12357 12358 12285 +8288 8361 8362 8289 12285 12358 12359 12286 +8289 8362 8363 8290 12286 12359 12360 12287 +8290 8363 8364 8291 12287 12360 12361 12288 +8291 8364 8365 8292 12288 12361 12362 12289 +8292 8365 8366 8293 12289 12362 12363 12290 +8293 8366 8367 8294 12290 12363 12364 12291 +8294 8367 8368 8295 12291 12364 12365 12292 +8295 8368 8369 8296 12292 12365 12366 12293 +8296 8369 8370 8297 12293 12366 12367 12294 +8297 8370 8371 8298 12294 12367 12368 12295 +8298 8371 8372 8299 12295 12368 12369 12296 +8299 8372 8373 8300 12296 12369 12370 12297 +8300 8373 8374 8301 12297 12370 12371 12298 +8301 8374 8375 8302 12298 12371 12372 12299 +8302 8375 8376 8303 12299 12372 12373 12300 +8303 8376 8377 8304 12300 12373 12374 12301 +8304 8377 8378 8305 12301 12374 12375 12302 +8305 8378 8379 8306 12302 12375 12376 12303 +8306 8379 8380 8307 12303 12376 12377 12304 +8307 8380 8381 8308 12304 12377 12378 12305 +8308 8381 8382 8309 12305 12378 12379 12306 +8309 8382 8383 8310 12306 12379 12380 12307 +8310 8383 8384 8311 12307 12380 12381 12308 +8311 8384 8385 8312 12308 12381 12382 12309 +8312 8385 8386 8313 12309 12382 12383 12310 +8313 8386 8387 8314 12310 12383 12384 12311 +8314 8387 8388 8315 12311 12384 12385 12312 +8315 8388 8389 8316 12312 12385 12386 12313 +8316 8389 8390 8317 12313 12386 12387 12314 +8317 8390 8391 8318 12314 12387 12388 12315 +8318 8391 8392 8319 12315 12388 12389 12316 +8319 8392 8393 8320 12316 12389 12390 12317 +8320 8393 8394 8321 12317 12390 12391 12318 +8321 8394 8395 8322 12318 12391 12392 12319 +8322 8395 8396 8323 12319 12392 12393 12320 +8323 8396 8397 8324 12320 12393 12394 12321 +8324 8397 8398 8325 12321 12394 12395 12322 +8325 8398 8399 8326 12322 12395 12396 12323 +8326 8399 8400 8327 12323 12396 12397 12324 +8327 8400 8401 8328 12324 12397 12398 12325 +8328 8401 8402 8329 12325 12398 12399 12326 +8329 8402 8403 8330 12326 12399 12400 12327 +8330 8403 8404 8331 12327 12400 12401 12328 +8331 8404 8405 8332 12328 12401 12402 12329 +8332 8405 8406 8333 12329 12402 12403 12330 +8333 8406 8407 8334 12330 12403 12404 12331 +8334 8407 8408 8335 12331 12404 12405 12332 +8335 8408 8409 8336 12332 12405 12406 12333 +8336 8409 8410 8337 12333 12406 12407 12334 +8337 8410 8411 8338 12334 12407 12408 12335 +8338 8411 8412 8339 12335 12408 12409 12336 +8339 8412 8413 8340 12336 12409 12410 12337 +8340 8413 8414 8341 12337 12410 12411 12338 +8341 8414 8415 8342 12338 12411 12412 12339 +8342 8415 8416 8343 12339 12412 12413 12340 +8343 8416 8417 8344 12340 12413 12414 12341 +8344 8417 8418 8345 12341 12414 12415 12342 +8345 8418 8419 8346 12342 12415 12416 12343 +8347 8420 8421 8348 12344 12417 12418 12345 +8348 8421 8422 8349 12345 12418 12419 12346 +8349 8422 8423 8350 12346 12419 12420 12347 +8350 8423 8424 8351 12347 12420 12421 12348 +8351 8424 8425 8352 12348 12421 12422 12349 +8352 8425 8426 8353 12349 12422 12423 12350 +8353 8426 8427 8354 12350 12423 12424 12351 +8354 8427 8428 8355 12351 12424 12425 12352 +8355 8428 8429 8356 12352 12425 12426 12353 +8356 8429 8430 8357 12353 12426 12427 12354 +8357 8430 8431 8358 12354 12427 12428 12355 +8358 8431 8432 8359 12355 12428 12429 12356 +8359 8432 8433 8360 12356 12429 12430 12357 +8360 8433 8434 8361 12357 12430 12431 12358 +8361 8434 8435 8362 12358 12431 12432 12359 +8362 8435 8436 8363 12359 12432 12433 12360 +8363 8436 8437 8364 12360 12433 12434 12361 +8364 8437 8438 8365 12361 12434 12435 12362 +8365 8438 8439 8366 12362 12435 12436 12363 +8366 8439 8440 8367 12363 12436 12437 12364 +8367 8440 8441 8368 12364 12437 12438 12365 +8368 8441 8442 8369 12365 12438 12439 12366 +8369 8442 8443 8370 12366 12439 12440 12367 +8370 8443 8444 8371 12367 12440 12441 12368 +8371 8444 8445 8372 12368 12441 12442 12369 +8372 8445 8446 8373 12369 12442 12443 12370 +8373 8446 8447 8374 12370 12443 12444 12371 +8374 8447 8448 8375 12371 12444 12445 12372 +8375 8448 8449 8376 12372 12445 12446 12373 +8376 8449 8450 8377 12373 12446 12447 12374 +8377 8450 8451 8378 12374 12447 12448 12375 +8378 8451 8452 8379 12375 12448 12449 12376 +8379 8452 8453 8380 12376 12449 12450 12377 +8380 8453 8454 8381 12377 12450 12451 12378 +8381 8454 8455 8382 12378 12451 12452 12379 +8382 8455 8456 8383 12379 12452 12453 12380 +8383 8456 8457 8384 12380 12453 12454 12381 +8384 8457 8458 8385 12381 12454 12455 12382 +8385 8458 8459 8386 12382 12455 12456 12383 +8386 8459 8460 8387 12383 12456 12457 12384 +8387 8460 8461 8388 12384 12457 12458 12385 +8388 8461 8462 8389 12385 12458 12459 12386 +8389 8462 8463 8390 12386 12459 12460 12387 +8390 8463 8464 8391 12387 12460 12461 12388 +8391 8464 8465 8392 12388 12461 12462 12389 +8392 8465 8466 8393 12389 12462 12463 12390 +8393 8466 8467 8394 12390 12463 12464 12391 +8394 8467 8468 8395 12391 12464 12465 12392 +8395 8468 8469 8396 12392 12465 12466 12393 +8396 8469 8470 8397 12393 12466 12467 12394 +8397 8470 8471 8398 12394 12467 12468 12395 +8398 8471 8472 8399 12395 12468 12469 12396 +8399 8472 8473 8400 12396 12469 12470 12397 +8400 8473 8474 8401 12397 12470 12471 12398 +8401 8474 8475 8402 12398 12471 12472 12399 +8402 8475 8476 8403 12399 12472 12473 12400 +8403 8476 8477 8404 12400 12473 12474 12401 +8404 8477 8478 8405 12401 12474 12475 12402 +8405 8478 8479 8406 12402 12475 12476 12403 +8406 8479 8480 8407 12403 12476 12477 12404 +8407 8480 8481 8408 12404 12477 12478 12405 +8408 8481 8482 8409 12405 12478 12479 12406 +8409 8482 8483 8410 12406 12479 12480 12407 +8410 8483 8484 8411 12407 12480 12481 12408 +8411 8484 8485 8412 12408 12481 12482 12409 +8412 8485 8486 8413 12409 12482 12483 12410 +8413 8486 8487 8414 12410 12483 12484 12411 +8414 8487 8488 8415 12411 12484 12485 12412 +8415 8488 8489 8416 12412 12485 12486 12413 +8416 8489 8490 8417 12413 12486 12487 12414 +8417 8490 8491 8418 12414 12487 12488 12415 +8418 8491 8492 8419 12415 12488 12489 12416 +8420 8493 8494 8421 12417 12490 12491 12418 +8421 8494 8495 8422 12418 12491 12492 12419 +8422 8495 8496 8423 12419 12492 12493 12420 +8423 8496 8497 8424 12420 12493 12494 12421 +8424 8497 8498 8425 12421 12494 12495 12422 +8425 8498 8499 8426 12422 12495 12496 12423 +8426 8499 8500 8427 12423 12496 12497 12424 +8427 8500 8501 8428 12424 12497 12498 12425 +8428 8501 8502 8429 12425 12498 12499 12426 +8429 8502 8503 8430 12426 12499 12500 12427 +8430 8503 8504 8431 12427 12500 12501 12428 +8431 8504 8505 8432 12428 12501 12502 12429 +8432 8505 8506 8433 12429 12502 12503 12430 +8433 8506 8507 8434 12430 12503 12504 12431 +8434 8507 8508 8435 12431 12504 12505 12432 +8435 8508 8509 8436 12432 12505 12506 12433 +8436 8509 8510 8437 12433 12506 12507 12434 +8437 8510 8511 8438 12434 12507 12508 12435 +8438 8511 8512 8439 12435 12508 12509 12436 +8439 8512 8513 8440 12436 12509 12510 12437 +8440 8513 8514 8441 12437 12510 12511 12438 +8441 8514 8515 8442 12438 12511 12512 12439 +8442 8515 8516 8443 12439 12512 12513 12440 +8443 8516 8517 8444 12440 12513 12514 12441 +8444 8517 8518 8445 12441 12514 12515 12442 +8445 8518 8519 8446 12442 12515 12516 12443 +8446 8519 8520 8447 12443 12516 12517 12444 +8447 8520 8521 8448 12444 12517 12518 12445 +8448 8521 8522 8449 12445 12518 12519 12446 +8449 8522 8523 8450 12446 12519 12520 12447 +8450 8523 8524 8451 12447 12520 12521 12448 +8451 8524 8525 8452 12448 12521 12522 12449 +8452 8525 8526 8453 12449 12522 12523 12450 +8453 8526 8527 8454 12450 12523 12524 12451 +8454 8527 8528 8455 12451 12524 12525 12452 +8455 8528 8529 8456 12452 12525 12526 12453 +8456 8529 8530 8457 12453 12526 12527 12454 +8457 8530 8531 8458 12454 12527 12528 12455 +8458 8531 8532 8459 12455 12528 12529 12456 +8459 8532 8533 8460 12456 12529 12530 12457 +8460 8533 8534 8461 12457 12530 12531 12458 +8461 8534 8535 8462 12458 12531 12532 12459 +8462 8535 8536 8463 12459 12532 12533 12460 +8463 8536 8537 8464 12460 12533 12534 12461 +8464 8537 8538 8465 12461 12534 12535 12462 +8465 8538 8539 8466 12462 12535 12536 12463 +8466 8539 8540 8467 12463 12536 12537 12464 +8467 8540 8541 8468 12464 12537 12538 12465 +8468 8541 8542 8469 12465 12538 12539 12466 +8469 8542 8543 8470 12466 12539 12540 12467 +8470 8543 8544 8471 12467 12540 12541 12468 +8471 8544 8545 8472 12468 12541 12542 12469 +8472 8545 8546 8473 12469 12542 12543 12470 +8473 8546 8547 8474 12470 12543 12544 12471 +8474 8547 8548 8475 12471 12544 12545 12472 +8475 8548 8549 8476 12472 12545 12546 12473 +8476 8549 8550 8477 12473 12546 12547 12474 +8477 8550 8551 8478 12474 12547 12548 12475 +8478 8551 8552 8479 12475 12548 12549 12476 +8479 8552 8553 8480 12476 12549 12550 12477 +8480 8553 8554 8481 12477 12550 12551 12478 +8481 8554 8555 8482 12478 12551 12552 12479 +8482 8555 8556 8483 12479 12552 12553 12480 +8483 8556 8557 8484 12480 12553 12554 12481 +8484 8557 8558 8485 12481 12554 12555 12482 +8485 8558 8559 8486 12482 12555 12556 12483 +8486 8559 8560 8487 12483 12556 12557 12484 +8487 8560 8561 8488 12484 12557 12558 12485 +8488 8561 8562 8489 12485 12558 12559 12486 +8489 8562 8563 8490 12486 12559 12560 12487 +8490 8563 8564 8491 12487 12560 12561 12488 +8491 8564 8565 8492 12488 12561 12562 12489 +8493 8566 8567 8494 12490 12563 12564 12491 +8494 8567 8568 8495 12491 12564 12565 12492 +8495 8568 8569 8496 12492 12565 12566 12493 +8496 8569 8570 8497 12493 12566 12567 12494 +8497 8570 8571 8498 12494 12567 12568 12495 +8498 8571 8572 8499 12495 12568 12569 12496 +8499 8572 8573 8500 12496 12569 12570 12497 +8500 8573 8574 8501 12497 12570 12571 12498 +8501 8574 8575 8502 12498 12571 12572 12499 +8502 8575 8576 8503 12499 12572 12573 12500 +8503 8576 8577 8504 12500 12573 12574 12501 +8504 8577 8578 8505 12501 12574 12575 12502 +8505 8578 8579 8506 12502 12575 12576 12503 +8506 8579 8580 8507 12503 12576 12577 12504 +8507 8580 8581 8508 12504 12577 12578 12505 +8508 8581 8582 8509 12505 12578 12579 12506 +8509 8582 8583 8510 12506 12579 12580 12507 +8510 8583 8584 8511 12507 12580 12581 12508 +8511 8584 8585 8512 12508 12581 12582 12509 +8512 8585 8586 8513 12509 12582 12583 12510 +8513 8586 8587 8514 12510 12583 12584 12511 +8514 8587 8588 8515 12511 12584 12585 12512 +8515 8588 8589 8516 12512 12585 12586 12513 +8516 8589 8590 8517 12513 12586 12587 12514 +8517 8590 8591 8518 12514 12587 12588 12515 +8518 8591 8592 8519 12515 12588 12589 12516 +8519 8592 8593 8520 12516 12589 12590 12517 +8520 8593 8594 8521 12517 12590 12591 12518 +8521 8594 8595 8522 12518 12591 12592 12519 +8522 8595 8596 8523 12519 12592 12593 12520 +8523 8596 8597 8524 12520 12593 12594 12521 +8524 8597 8598 8525 12521 12594 12595 12522 +8525 8598 8599 8526 12522 12595 12596 12523 +8526 8599 8600 8527 12523 12596 12597 12524 +8527 8600 8601 8528 12524 12597 12598 12525 +8528 8601 8602 8529 12525 12598 12599 12526 +8529 8602 8603 8530 12526 12599 12600 12527 +8530 8603 8604 8531 12527 12600 12601 12528 +8531 8604 8605 8532 12528 12601 12602 12529 +8532 8605 8606 8533 12529 12602 12603 12530 +8533 8606 8607 8534 12530 12603 12604 12531 +8534 8607 8608 8535 12531 12604 12605 12532 +8535 8608 8609 8536 12532 12605 12606 12533 +8536 8609 8610 8537 12533 12606 12607 12534 +8537 8610 8611 8538 12534 12607 12608 12535 +8538 8611 8612 8539 12535 12608 12609 12536 +8539 8612 8613 8540 12536 12609 12610 12537 +8540 8613 8614 8541 12537 12610 12611 12538 +8541 8614 8615 8542 12538 12611 12612 12539 +8542 8615 8616 8543 12539 12612 12613 12540 +8543 8616 8617 8544 12540 12613 12614 12541 +8544 8617 8618 8545 12541 12614 12615 12542 +8545 8618 8619 8546 12542 12615 12616 12543 +8546 8619 8620 8547 12543 12616 12617 12544 +8547 8620 8621 8548 12544 12617 12618 12545 +8548 8621 8622 8549 12545 12618 12619 12546 +8549 8622 8623 8550 12546 12619 12620 12547 +8550 8623 8624 8551 12547 12620 12621 12548 +8551 8624 8625 8552 12548 12621 12622 12549 +8552 8625 8626 8553 12549 12622 12623 12550 +8553 8626 8627 8554 12550 12623 12624 12551 +8554 8627 8628 8555 12551 12624 12625 12552 +8555 8628 8629 8556 12552 12625 12626 12553 +8556 8629 8630 8557 12553 12626 12627 12554 +8557 8630 8631 8558 12554 12627 12628 12555 +8558 8631 8632 8559 12555 12628 12629 12556 +8559 8632 8633 8560 12556 12629 12630 12557 +8560 8633 8634 8561 12557 12630 12631 12558 +8561 8634 8635 8562 12558 12631 12632 12559 +8562 8635 8636 8563 12559 12632 12633 12560 +8563 8636 8637 8564 12560 12633 12634 12561 +8564 8637 8638 8565 12561 12634 12635 12562 +8566 8639 8640 8567 12563 12636 12637 12564 +8567 8640 8641 8568 12564 12637 12638 12565 +8568 8641 8642 8569 12565 12638 12639 12566 +8569 8642 8643 8570 12566 12639 12640 12567 +8570 8643 8644 8571 12567 12640 12641 12568 +8571 8644 8645 8572 12568 12641 12642 12569 +8572 8645 8646 8573 12569 12642 12643 12570 +8573 8646 8647 8574 12570 12643 12644 12571 +8574 8647 8648 8575 12571 12644 12645 12572 +8575 8648 8649 8576 12572 12645 12646 12573 +8576 8649 8650 8577 12573 12646 12647 12574 +8577 8650 8651 8578 12574 12647 12648 12575 +8578 8651 8652 8579 12575 12648 12649 12576 +8579 8652 8653 8580 12576 12649 12650 12577 +8580 8653 8654 8581 12577 12650 12651 12578 +8581 8654 8655 8582 12578 12651 12652 12579 +8582 8655 8656 8583 12579 12652 12653 12580 +8583 8656 8657 8584 12580 12653 12654 12581 +8584 8657 8658 8585 12581 12654 12655 12582 +8585 8658 8659 8586 12582 12655 12656 12583 +8586 8659 8660 8587 12583 12656 12657 12584 +8587 8660 8661 8588 12584 12657 12658 12585 +8588 8661 8662 8589 12585 12658 12659 12586 +8589 8662 8663 8590 12586 12659 12660 12587 +8590 8663 8664 8591 12587 12660 12661 12588 +8591 8664 8665 8592 12588 12661 12662 12589 +8592 8665 8666 8593 12589 12662 12663 12590 +8593 8666 8667 8594 12590 12663 12664 12591 +8594 8667 8668 8595 12591 12664 12665 12592 +8595 8668 8669 8596 12592 12665 12666 12593 +8596 8669 8670 8597 12593 12666 12667 12594 +8597 8670 8671 8598 12594 12667 12668 12595 +8598 8671 8672 8599 12595 12668 12669 12596 +8599 8672 8673 8600 12596 12669 12670 12597 +8600 8673 8674 8601 12597 12670 12671 12598 +8601 8674 8675 8602 12598 12671 12672 12599 +8602 8675 8676 8603 12599 12672 12673 12600 +8603 8676 8677 8604 12600 12673 12674 12601 +8604 8677 8678 8605 12601 12674 12675 12602 +8605 8678 8679 8606 12602 12675 12676 12603 +8606 8679 8680 8607 12603 12676 12677 12604 +8607 8680 8681 8608 12604 12677 12678 12605 +8608 8681 8682 8609 12605 12678 12679 12606 +8609 8682 8683 8610 12606 12679 12680 12607 +8610 8683 8684 8611 12607 12680 12681 12608 +8611 8684 8685 8612 12608 12681 12682 12609 +8612 8685 8686 8613 12609 12682 12683 12610 +8613 8686 8687 8614 12610 12683 12684 12611 +8614 8687 8688 8615 12611 12684 12685 12612 +8615 8688 8689 8616 12612 12685 12686 12613 +8616 8689 8690 8617 12613 12686 12687 12614 +8617 8690 8691 8618 12614 12687 12688 12615 +8618 8691 8692 8619 12615 12688 12689 12616 +8619 8692 8693 8620 12616 12689 12690 12617 +8620 8693 8694 8621 12617 12690 12691 12618 +8621 8694 8695 8622 12618 12691 12692 12619 +8622 8695 8696 8623 12619 12692 12693 12620 +8623 8696 8697 8624 12620 12693 12694 12621 +8624 8697 8698 8625 12621 12694 12695 12622 +8625 8698 8699 8626 12622 12695 12696 12623 +8626 8699 8700 8627 12623 12696 12697 12624 +8627 8700 8701 8628 12624 12697 12698 12625 +8628 8701 8702 8629 12625 12698 12699 12626 +8629 8702 8703 8630 12626 12699 12700 12627 +8630 8703 8704 8631 12627 12700 12701 12628 +8631 8704 8705 8632 12628 12701 12702 12629 +8632 8705 8706 8633 12629 12702 12703 12630 +8633 8706 8707 8634 12630 12703 12704 12631 +8634 8707 8708 8635 12631 12704 12705 12632 +8635 8708 8709 8636 12632 12705 12706 12633 +8636 8709 8710 8637 12633 12706 12707 12634 +8637 8710 8711 8638 12634 12707 12708 12635 +8639 8712 8713 8640 12636 12709 12710 12637 +8640 8713 8714 8641 12637 12710 12711 12638 +8641 8714 8715 8642 12638 12711 12712 12639 +8642 8715 8716 8643 12639 12712 12713 12640 +8643 8716 8717 8644 12640 12713 12714 12641 +8644 8717 8718 8645 12641 12714 12715 12642 +8645 8718 8719 8646 12642 12715 12716 12643 +8646 8719 8720 8647 12643 12716 12717 12644 +8647 8720 8721 8648 12644 12717 12718 12645 +8648 8721 8722 8649 12645 12718 12719 12646 +8649 8722 8723 8650 12646 12719 12720 12647 +8650 8723 8724 8651 12647 12720 12721 12648 +8651 8724 8725 8652 12648 12721 12722 12649 +8652 8725 8726 8653 12649 12722 12723 12650 +8653 8726 8727 8654 12650 12723 12724 12651 +8654 8727 8728 8655 12651 12724 12725 12652 +8655 8728 8729 8656 12652 12725 12726 12653 +8656 8729 8730 8657 12653 12726 12727 12654 +8657 8730 8731 8658 12654 12727 12728 12655 +8658 8731 8732 8659 12655 12728 12729 12656 +8659 8732 8733 8660 12656 12729 12730 12657 +8660 8733 8734 8661 12657 12730 12731 12658 +8661 8734 8735 8662 12658 12731 12732 12659 +8662 8735 8736 8663 12659 12732 12733 12660 +8663 8736 8737 8664 12660 12733 12734 12661 +8664 8737 8738 8665 12661 12734 12735 12662 +8665 8738 8739 8666 12662 12735 12736 12663 +8666 8739 8740 8667 12663 12736 12737 12664 +8667 8740 8741 8668 12664 12737 12738 12665 +8668 8741 8742 8669 12665 12738 12739 12666 +8669 8742 8743 8670 12666 12739 12740 12667 +8670 8743 8744 8671 12667 12740 12741 12668 +8671 8744 8745 8672 12668 12741 12742 12669 +8672 8745 8746 8673 12669 12742 12743 12670 +8673 8746 8747 8674 12670 12743 12744 12671 +8674 8747 8748 8675 12671 12744 12745 12672 +8675 8748 8749 8676 12672 12745 12746 12673 +8676 8749 8750 8677 12673 12746 12747 12674 +8677 8750 8751 8678 12674 12747 12748 12675 +8678 8751 8752 8679 12675 12748 12749 12676 +8679 8752 8753 8680 12676 12749 12750 12677 +8680 8753 8754 8681 12677 12750 12751 12678 +8681 8754 8755 8682 12678 12751 12752 12679 +8682 8755 8756 8683 12679 12752 12753 12680 +8683 8756 8757 8684 12680 12753 12754 12681 +8684 8757 8758 8685 12681 12754 12755 12682 +8685 8758 8759 8686 12682 12755 12756 12683 +8686 8759 8760 8687 12683 12756 12757 12684 +8687 8760 8761 8688 12684 12757 12758 12685 +8688 8761 8762 8689 12685 12758 12759 12686 +8689 8762 8763 8690 12686 12759 12760 12687 +8690 8763 8764 8691 12687 12760 12761 12688 +8691 8764 8765 8692 12688 12761 12762 12689 +8692 8765 8766 8693 12689 12762 12763 12690 +8693 8766 8767 8694 12690 12763 12764 12691 +8694 8767 8768 8695 12691 12764 12765 12692 +8695 8768 8769 8696 12692 12765 12766 12693 +8696 8769 8770 8697 12693 12766 12767 12694 +8697 8770 8771 8698 12694 12767 12768 12695 +8698 8771 8772 8699 12695 12768 12769 12696 +8699 8772 8773 8700 12696 12769 12770 12697 +8700 8773 8774 8701 12697 12770 12771 12698 +8701 8774 8775 8702 12698 12771 12772 12699 +8702 8775 8776 8703 12699 12772 12773 12700 +8703 8776 8777 8704 12700 12773 12774 12701 +8704 8777 8778 8705 12701 12774 12775 12702 +8705 8778 8779 8706 12702 12775 12776 12703 +8706 8779 8780 8707 12703 12776 12777 12704 +8707 8780 8781 8708 12704 12777 12778 12705 +8708 8781 8782 8709 12705 12778 12779 12706 +8709 8782 8783 8710 12706 12779 12780 12707 +8710 8783 8784 8711 12707 12780 12781 12708 +8712 8785 8786 8713 12709 12782 12783 12710 +8713 8786 8787 8714 12710 12783 12784 12711 +8714 8787 8788 8715 12711 12784 12785 12712 +8715 8788 8789 8716 12712 12785 12786 12713 +8716 8789 8790 8717 12713 12786 12787 12714 +8717 8790 8791 8718 12714 12787 12788 12715 +8718 8791 8792 8719 12715 12788 12789 12716 +8719 8792 8793 8720 12716 12789 12790 12717 +8720 8793 8794 8721 12717 12790 12791 12718 +8721 8794 8795 8722 12718 12791 12792 12719 +8722 8795 8796 8723 12719 12792 12793 12720 +8723 8796 8797 8724 12720 12793 12794 12721 +8724 8797 8798 8725 12721 12794 12795 12722 +8725 8798 8799 8726 12722 12795 12796 12723 +8726 8799 8800 8727 12723 12796 12797 12724 +8727 8800 8801 8728 12724 12797 12798 12725 +8728 8801 8802 8729 12725 12798 12799 12726 +8729 8802 8803 8730 12726 12799 12800 12727 +8730 8803 8804 8731 12727 12800 12801 12728 +8731 8804 8805 8732 12728 12801 12802 12729 +8732 8805 8806 8733 12729 12802 12803 12730 +8733 8806 8807 8734 12730 12803 12804 12731 +8734 8807 8808 8735 12731 12804 12805 12732 +8735 8808 8809 8736 12732 12805 12806 12733 +8736 8809 8810 8737 12733 12806 12807 12734 +8737 8810 8811 8738 12734 12807 12808 12735 +8738 8811 8812 8739 12735 12808 12809 12736 +8739 8812 8813 8740 12736 12809 12810 12737 +8740 8813 8814 8741 12737 12810 12811 12738 +8741 8814 8815 8742 12738 12811 12812 12739 +8742 8815 8816 8743 12739 12812 12813 12740 +8743 8816 8817 8744 12740 12813 12814 12741 +8744 8817 8818 8745 12741 12814 12815 12742 +8745 8818 8819 8746 12742 12815 12816 12743 +8746 8819 8820 8747 12743 12816 12817 12744 +8747 8820 8821 8748 12744 12817 12818 12745 +8748 8821 8822 8749 12745 12818 12819 12746 +8749 8822 8823 8750 12746 12819 12820 12747 +8750 8823 8824 8751 12747 12820 12821 12748 +8751 8824 8825 8752 12748 12821 12822 12749 +8752 8825 8826 8753 12749 12822 12823 12750 +8753 8826 8827 8754 12750 12823 12824 12751 +8754 8827 8828 8755 12751 12824 12825 12752 +8755 8828 8829 8756 12752 12825 12826 12753 +8756 8829 8830 8757 12753 12826 12827 12754 +8757 8830 8831 8758 12754 12827 12828 12755 +8758 8831 8832 8759 12755 12828 12829 12756 +8759 8832 8833 8760 12756 12829 12830 12757 +8760 8833 8834 8761 12757 12830 12831 12758 +8761 8834 8835 8762 12758 12831 12832 12759 +8762 8835 8836 8763 12759 12832 12833 12760 +8763 8836 8837 8764 12760 12833 12834 12761 +8764 8837 8838 8765 12761 12834 12835 12762 +8765 8838 8839 8766 12762 12835 12836 12763 +8766 8839 8840 8767 12763 12836 12837 12764 +8767 8840 8841 8768 12764 12837 12838 12765 +8768 8841 8842 8769 12765 12838 12839 12766 +8769 8842 8843 8770 12766 12839 12840 12767 +8770 8843 8844 8771 12767 12840 12841 12768 +8771 8844 8845 8772 12768 12841 12842 12769 +8772 8845 8846 8773 12769 12842 12843 12770 +8773 8846 8847 8774 12770 12843 12844 12771 +8774 8847 8848 8775 12771 12844 12845 12772 +8775 8848 8849 8776 12772 12845 12846 12773 +8776 8849 8850 8777 12773 12846 12847 12774 +8777 8850 8851 8778 12774 12847 12848 12775 +8778 8851 8852 8779 12775 12848 12849 12776 +8779 8852 8853 8780 12776 12849 12850 12777 +8780 8853 8854 8781 12777 12850 12851 12778 +8781 8854 8855 8782 12778 12851 12852 12779 +8782 8855 8856 8783 12779 12852 12853 12780 +8783 8856 8857 8784 12780 12853 12854 12781 +8785 8858 8859 8786 12782 12855 12856 12783 +8786 8859 8860 8787 12783 12856 12857 12784 +8787 8860 8861 8788 12784 12857 12858 12785 +8788 8861 8862 8789 12785 12858 12859 12786 +8789 8862 8863 8790 12786 12859 12860 12787 +8790 8863 8864 8791 12787 12860 12861 12788 +8791 8864 8865 8792 12788 12861 12862 12789 +8792 8865 8866 8793 12789 12862 12863 12790 +8793 8866 8867 8794 12790 12863 12864 12791 +8794 8867 8868 8795 12791 12864 12865 12792 +8795 8868 8869 8796 12792 12865 12866 12793 +8796 8869 8870 8797 12793 12866 12867 12794 +8797 8870 8871 8798 12794 12867 12868 12795 +8798 8871 8872 8799 12795 12868 12869 12796 +8799 8872 8873 8800 12796 12869 12870 12797 +8800 8873 8874 8801 12797 12870 12871 12798 +8801 8874 8875 8802 12798 12871 12872 12799 +8802 8875 8876 8803 12799 12872 12873 12800 +8803 8876 8877 8804 12800 12873 12874 12801 +8804 8877 8878 8805 12801 12874 12875 12802 +8805 8878 8879 8806 12802 12875 12876 12803 +8806 8879 8880 8807 12803 12876 12877 12804 +8807 8880 8881 8808 12804 12877 12878 12805 +8808 8881 8882 8809 12805 12878 12879 12806 +8809 8882 8883 8810 12806 12879 12880 12807 +8810 8883 8884 8811 12807 12880 12881 12808 +8811 8884 8885 8812 12808 12881 12882 12809 +8812 8885 8886 8813 12809 12882 12883 12810 +8813 8886 8887 8814 12810 12883 12884 12811 +8814 8887 8888 8815 12811 12884 12885 12812 +8815 8888 8889 8816 12812 12885 12886 12813 +8816 8889 8890 8817 12813 12886 12887 12814 +8817 8890 8891 8818 12814 12887 12888 12815 +8818 8891 8892 8819 12815 12888 12889 12816 +8819 8892 8893 8820 12816 12889 12890 12817 +8820 8893 8894 8821 12817 12890 12891 12818 +8821 8894 8895 8822 12818 12891 12892 12819 +8822 8895 8896 8823 12819 12892 12893 12820 +8823 8896 8897 8824 12820 12893 12894 12821 +8824 8897 8898 8825 12821 12894 12895 12822 +8825 8898 8899 8826 12822 12895 12896 12823 +8826 8899 8900 8827 12823 12896 12897 12824 +8827 8900 8901 8828 12824 12897 12898 12825 +8828 8901 8902 8829 12825 12898 12899 12826 +8829 8902 8903 8830 12826 12899 12900 12827 +8830 8903 8904 8831 12827 12900 12901 12828 +8831 8904 8905 8832 12828 12901 12902 12829 +8832 8905 8906 8833 12829 12902 12903 12830 +8833 8906 8907 8834 12830 12903 12904 12831 +8834 8907 8908 8835 12831 12904 12905 12832 +8835 8908 8909 8836 12832 12905 12906 12833 +8836 8909 8910 8837 12833 12906 12907 12834 +8837 8910 8911 8838 12834 12907 12908 12835 +8838 8911 8912 8839 12835 12908 12909 12836 +8839 8912 8913 8840 12836 12909 12910 12837 +8840 8913 8914 8841 12837 12910 12911 12838 +8841 8914 8915 8842 12838 12911 12912 12839 +8842 8915 8916 8843 12839 12912 12913 12840 +8843 8916 8917 8844 12840 12913 12914 12841 +8844 8917 8918 8845 12841 12914 12915 12842 +8845 8918 8919 8846 12842 12915 12916 12843 +8846 8919 8920 8847 12843 12916 12917 12844 +8847 8920 8921 8848 12844 12917 12918 12845 +8848 8921 8922 8849 12845 12918 12919 12846 +8849 8922 8923 8850 12846 12919 12920 12847 +8850 8923 8924 8851 12847 12920 12921 12848 +8851 8924 8925 8852 12848 12921 12922 12849 +8852 8925 8926 8853 12849 12922 12923 12850 +8853 8926 8927 8854 12850 12923 12924 12851 +8854 8927 8928 8855 12851 12924 12925 12852 +8855 8928 8929 8856 12852 12925 12926 12853 +8856 8929 8930 8857 12853 12926 12927 12854 +8858 8931 8932 8859 12855 12928 12929 12856 +8859 8932 8933 8860 12856 12929 12930 12857 +8860 8933 8934 8861 12857 12930 12931 12858 +8861 8934 8935 8862 12858 12931 12932 12859 +8862 8935 8936 8863 12859 12932 12933 12860 +8863 8936 8937 8864 12860 12933 12934 12861 +8864 8937 8938 8865 12861 12934 12935 12862 +8865 8938 8939 8866 12862 12935 12936 12863 +8866 8939 8940 8867 12863 12936 12937 12864 +8867 8940 8941 8868 12864 12937 12938 12865 +8868 8941 8942 8869 12865 12938 12939 12866 +8869 8942 8943 8870 12866 12939 12940 12867 +8870 8943 8944 8871 12867 12940 12941 12868 +8871 8944 8945 8872 12868 12941 12942 12869 +8872 8945 8946 8873 12869 12942 12943 12870 +8873 8946 8947 8874 12870 12943 12944 12871 +8874 8947 8948 8875 12871 12944 12945 12872 +8875 8948 8949 8876 12872 12945 12946 12873 +8876 8949 8950 8877 12873 12946 12947 12874 +8877 8950 8951 8878 12874 12947 12948 12875 +8878 8951 8952 8879 12875 12948 12949 12876 +8879 8952 8953 8880 12876 12949 12950 12877 +8880 8953 8954 8881 12877 12950 12951 12878 +8881 8954 8955 8882 12878 12951 12952 12879 +8882 8955 8956 8883 12879 12952 12953 12880 +8883 8956 8957 8884 12880 12953 12954 12881 +8884 8957 8958 8885 12881 12954 12955 12882 +8885 8958 8959 8886 12882 12955 12956 12883 +8886 8959 8960 8887 12883 12956 12957 12884 +8887 8960 8961 8888 12884 12957 12958 12885 +8888 8961 8962 8889 12885 12958 12959 12886 +8889 8962 8963 8890 12886 12959 12960 12887 +8890 8963 8964 8891 12887 12960 12961 12888 +8891 8964 8965 8892 12888 12961 12962 12889 +8892 8965 8966 8893 12889 12962 12963 12890 +8893 8966 8967 8894 12890 12963 12964 12891 +8894 8967 8968 8895 12891 12964 12965 12892 +8895 8968 8969 8896 12892 12965 12966 12893 +8896 8969 8970 8897 12893 12966 12967 12894 +8897 8970 8971 8898 12894 12967 12968 12895 +8898 8971 8972 8899 12895 12968 12969 12896 +8899 8972 8973 8900 12896 12969 12970 12897 +8900 8973 8974 8901 12897 12970 12971 12898 +8901 8974 8975 8902 12898 12971 12972 12899 +8902 8975 8976 8903 12899 12972 12973 12900 +8903 8976 8977 8904 12900 12973 12974 12901 +8904 8977 8978 8905 12901 12974 12975 12902 +8905 8978 8979 8906 12902 12975 12976 12903 +8906 8979 8980 8907 12903 12976 12977 12904 +8907 8980 8981 8908 12904 12977 12978 12905 +8908 8981 8982 8909 12905 12978 12979 12906 +8909 8982 8983 8910 12906 12979 12980 12907 +8910 8983 8984 8911 12907 12980 12981 12908 +8911 8984 8985 8912 12908 12981 12982 12909 +8912 8985 8986 8913 12909 12982 12983 12910 +8913 8986 8987 8914 12910 12983 12984 12911 +8914 8987 8988 8915 12911 12984 12985 12912 +8915 8988 8989 8916 12912 12985 12986 12913 +8916 8989 8990 8917 12913 12986 12987 12914 +8917 8990 8991 8918 12914 12987 12988 12915 +8918 8991 8992 8919 12915 12988 12989 12916 +8919 8992 8993 8920 12916 12989 12990 12917 +8920 8993 8994 8921 12917 12990 12991 12918 +8921 8994 8995 8922 12918 12991 12992 12919 +8922 8995 8996 8923 12919 12992 12993 12920 +8923 8996 8997 8924 12920 12993 12994 12921 +8924 8997 8998 8925 12921 12994 12995 12922 +8925 8998 8999 8926 12922 12995 12996 12923 +8926 8999 9000 8927 12923 12996 12997 12924 +8927 9000 9001 8928 12924 12997 12998 12925 +8928 9001 9002 8929 12925 12998 12999 12926 +8929 9002 9003 8930 12926 12999 13000 12927 +8931 9004 9005 8932 12928 13001 13002 12929 +8932 9005 9006 8933 12929 13002 13003 12930 +8933 9006 9007 8934 12930 13003 13004 12931 +8934 9007 9008 8935 12931 13004 13005 12932 +8935 9008 9009 8936 12932 13005 13006 12933 +8936 9009 9010 8937 12933 13006 13007 12934 +8937 9010 9011 8938 12934 13007 13008 12935 +8938 9011 9012 8939 12935 13008 13009 12936 +8939 9012 9013 8940 12936 13009 13010 12937 +8940 9013 9014 8941 12937 13010 13011 12938 +8941 9014 9015 8942 12938 13011 13012 12939 +8942 9015 9016 8943 12939 13012 13013 12940 +8943 9016 9017 8944 12940 13013 13014 12941 +8944 9017 9018 8945 12941 13014 13015 12942 +8945 9018 9019 8946 12942 13015 13016 12943 +8946 9019 9020 8947 12943 13016 13017 12944 +8947 9020 9021 8948 12944 13017 13018 12945 +8948 9021 9022 8949 12945 13018 13019 12946 +8949 9022 9023 8950 12946 13019 13020 12947 +8950 9023 9024 8951 12947 13020 13021 12948 +8951 9024 9025 8952 12948 13021 13022 12949 +8952 9025 9026 8953 12949 13022 13023 12950 +8953 9026 9027 8954 12950 13023 13024 12951 +8954 9027 9028 8955 12951 13024 13025 12952 +8955 9028 9029 8956 12952 13025 13026 12953 +8956 9029 9030 8957 12953 13026 13027 12954 +8957 9030 9031 8958 12954 13027 13028 12955 +8958 9031 9032 8959 12955 13028 13029 12956 +8959 9032 9033 8960 12956 13029 13030 12957 +8960 9033 9034 8961 12957 13030 13031 12958 +8961 9034 9035 8962 12958 13031 13032 12959 +8962 9035 9036 8963 12959 13032 13033 12960 +8963 9036 9037 8964 12960 13033 13034 12961 +8964 9037 9038 8965 12961 13034 13035 12962 +8965 9038 9039 8966 12962 13035 13036 12963 +8966 9039 9040 8967 12963 13036 13037 12964 +8967 9040 9041 8968 12964 13037 13038 12965 +8968 9041 9042 8969 12965 13038 13039 12966 +8969 9042 9043 8970 12966 13039 13040 12967 +8970 9043 9044 8971 12967 13040 13041 12968 +8971 9044 9045 8972 12968 13041 13042 12969 +8972 9045 9046 8973 12969 13042 13043 12970 +8973 9046 9047 8974 12970 13043 13044 12971 +8974 9047 9048 8975 12971 13044 13045 12972 +8975 9048 9049 8976 12972 13045 13046 12973 +8976 9049 9050 8977 12973 13046 13047 12974 +8977 9050 9051 8978 12974 13047 13048 12975 +8978 9051 9052 8979 12975 13048 13049 12976 +8979 9052 9053 8980 12976 13049 13050 12977 +8980 9053 9054 8981 12977 13050 13051 12978 +8981 9054 9055 8982 12978 13051 13052 12979 +8982 9055 9056 8983 12979 13052 13053 12980 +8983 9056 9057 8984 12980 13053 13054 12981 +8984 9057 9058 8985 12981 13054 13055 12982 +8985 9058 9059 8986 12982 13055 13056 12983 +8986 9059 9060 8987 12983 13056 13057 12984 +8987 9060 9061 8988 12984 13057 13058 12985 +8988 9061 9062 8989 12985 13058 13059 12986 +8989 9062 9063 8990 12986 13059 13060 12987 +8990 9063 9064 8991 12987 13060 13061 12988 +8991 9064 9065 8992 12988 13061 13062 12989 +8992 9065 9066 8993 12989 13062 13063 12990 +8993 9066 9067 8994 12990 13063 13064 12991 +8994 9067 9068 8995 12991 13064 13065 12992 +8995 9068 9069 8996 12992 13065 13066 12993 +8996 9069 9070 8997 12993 13066 13067 12994 +8997 9070 9071 8998 12994 13067 13068 12995 +8998 9071 9072 8999 12995 13068 13069 12996 +8999 9072 9073 9000 12996 13069 13070 12997 +9000 9073 9074 9001 12997 13070 13071 12998 +9001 9074 9075 9002 12998 13071 13072 12999 +9002 9075 9076 9003 12999 13072 13073 13000 +9004 9077 9078 9005 13001 13074 13075 13002 +9005 9078 9079 9006 13002 13075 13076 13003 +9006 9079 9080 9007 13003 13076 13077 13004 +9007 9080 9081 9008 13004 13077 13078 13005 +9008 9081 9082 9009 13005 13078 13079 13006 +9009 9082 9083 9010 13006 13079 13080 13007 +9010 9083 9084 9011 13007 13080 13081 13008 +9011 9084 9085 9012 13008 13081 13082 13009 +9012 9085 9086 9013 13009 13082 13083 13010 +9013 9086 9087 9014 13010 13083 13084 13011 +9014 9087 9088 9015 13011 13084 13085 13012 +9015 9088 9089 9016 13012 13085 13086 13013 +9016 9089 9090 9017 13013 13086 13087 13014 +9017 9090 9091 9018 13014 13087 13088 13015 +9018 9091 9092 9019 13015 13088 13089 13016 +9019 9092 9093 9020 13016 13089 13090 13017 +9020 9093 9094 9021 13017 13090 13091 13018 +9021 9094 9095 9022 13018 13091 13092 13019 +9022 9095 9096 9023 13019 13092 13093 13020 +9023 9096 9097 9024 13020 13093 13094 13021 +9024 9097 9098 9025 13021 13094 13095 13022 +9025 9098 9099 9026 13022 13095 13096 13023 +9026 9099 9100 9027 13023 13096 13097 13024 +9027 9100 9101 9028 13024 13097 13098 13025 +9028 9101 9102 9029 13025 13098 13099 13026 +9029 9102 9103 9030 13026 13099 13100 13027 +9030 9103 9104 9031 13027 13100 13101 13028 +9031 9104 9105 9032 13028 13101 13102 13029 +9032 9105 9106 9033 13029 13102 13103 13030 +9033 9106 9107 9034 13030 13103 13104 13031 +9034 9107 9108 9035 13031 13104 13105 13032 +9035 9108 9109 9036 13032 13105 13106 13033 +9036 9109 9110 9037 13033 13106 13107 13034 +9037 9110 9111 9038 13034 13107 13108 13035 +9038 9111 9112 9039 13035 13108 13109 13036 +9039 9112 9113 9040 13036 13109 13110 13037 +9040 9113 9114 9041 13037 13110 13111 13038 +9041 9114 9115 9042 13038 13111 13112 13039 +9042 9115 9116 9043 13039 13112 13113 13040 +9043 9116 9117 9044 13040 13113 13114 13041 +9044 9117 9118 9045 13041 13114 13115 13042 +9045 9118 9119 9046 13042 13115 13116 13043 +9046 9119 9120 9047 13043 13116 13117 13044 +9047 9120 9121 9048 13044 13117 13118 13045 +9048 9121 9122 9049 13045 13118 13119 13046 +9049 9122 9123 9050 13046 13119 13120 13047 +9050 9123 9124 9051 13047 13120 13121 13048 +9051 9124 9125 9052 13048 13121 13122 13049 +9052 9125 9126 9053 13049 13122 13123 13050 +9053 9126 9127 9054 13050 13123 13124 13051 +9054 9127 9128 9055 13051 13124 13125 13052 +9055 9128 9129 9056 13052 13125 13126 13053 +9056 9129 9130 9057 13053 13126 13127 13054 +9057 9130 9131 9058 13054 13127 13128 13055 +9058 9131 9132 9059 13055 13128 13129 13056 +9059 9132 9133 9060 13056 13129 13130 13057 +9060 9133 9134 9061 13057 13130 13131 13058 +9061 9134 9135 9062 13058 13131 13132 13059 +9062 9135 9136 9063 13059 13132 13133 13060 +9063 9136 9137 9064 13060 13133 13134 13061 +9064 9137 9138 9065 13061 13134 13135 13062 +9065 9138 9139 9066 13062 13135 13136 13063 +9066 9139 9140 9067 13063 13136 13137 13064 +9067 9140 9141 9068 13064 13137 13138 13065 +9068 9141 9142 9069 13065 13138 13139 13066 +9069 9142 9143 9070 13066 13139 13140 13067 +9070 9143 9144 9071 13067 13140 13141 13068 +9071 9144 9145 9072 13068 13141 13142 13069 +9072 9145 9146 9073 13069 13142 13143 13070 +9073 9146 9147 9074 13070 13143 13144 13071 +9074 9147 9148 9075 13071 13144 13145 13072 +9075 9148 9149 9076 13072 13145 13146 13073 +9077 9150 9151 9078 13074 13147 13148 13075 +9078 9151 9152 9079 13075 13148 13149 13076 +9079 9152 9153 9080 13076 13149 13150 13077 +9080 9153 9154 9081 13077 13150 13151 13078 +9081 9154 9155 9082 13078 13151 13152 13079 +9082 9155 9156 9083 13079 13152 13153 13080 +9083 9156 9157 9084 13080 13153 13154 13081 +9084 9157 9158 9085 13081 13154 13155 13082 +9085 9158 9159 9086 13082 13155 13156 13083 +9086 9159 9160 9087 13083 13156 13157 13084 +9087 9160 9161 9088 13084 13157 13158 13085 +9088 9161 9162 9089 13085 13158 13159 13086 +9089 9162 9163 9090 13086 13159 13160 13087 +9090 9163 9164 9091 13087 13160 13161 13088 +9091 9164 9165 9092 13088 13161 13162 13089 +9092 9165 9166 9093 13089 13162 13163 13090 +9093 9166 9167 9094 13090 13163 13164 13091 +9094 9167 9168 9095 13091 13164 13165 13092 +9095 9168 9169 9096 13092 13165 13166 13093 +9096 9169 9170 9097 13093 13166 13167 13094 +9097 9170 9171 9098 13094 13167 13168 13095 +9098 9171 9172 9099 13095 13168 13169 13096 +9099 9172 9173 9100 13096 13169 13170 13097 +9100 9173 9174 9101 13097 13170 13171 13098 +9101 9174 9175 9102 13098 13171 13172 13099 +9102 9175 9176 9103 13099 13172 13173 13100 +9103 9176 9177 9104 13100 13173 13174 13101 +9104 9177 9178 9105 13101 13174 13175 13102 +9105 9178 9179 9106 13102 13175 13176 13103 +9106 9179 9180 9107 13103 13176 13177 13104 +9107 9180 9181 9108 13104 13177 13178 13105 +9108 9181 9182 9109 13105 13178 13179 13106 +9109 9182 9183 9110 13106 13179 13180 13107 +9110 9183 9184 9111 13107 13180 13181 13108 +9111 9184 9185 9112 13108 13181 13182 13109 +9112 9185 9186 9113 13109 13182 13183 13110 +9113 9186 9187 9114 13110 13183 13184 13111 +9114 9187 9188 9115 13111 13184 13185 13112 +9115 9188 9189 9116 13112 13185 13186 13113 +9116 9189 9190 9117 13113 13186 13187 13114 +9117 9190 9191 9118 13114 13187 13188 13115 +9118 9191 9192 9119 13115 13188 13189 13116 +9119 9192 9193 9120 13116 13189 13190 13117 +9120 9193 9194 9121 13117 13190 13191 13118 +9121 9194 9195 9122 13118 13191 13192 13119 +9122 9195 9196 9123 13119 13192 13193 13120 +9123 9196 9197 9124 13120 13193 13194 13121 +9124 9197 9198 9125 13121 13194 13195 13122 +9125 9198 9199 9126 13122 13195 13196 13123 +9126 9199 9200 9127 13123 13196 13197 13124 +9127 9200 9201 9128 13124 13197 13198 13125 +9128 9201 9202 9129 13125 13198 13199 13126 +9129 9202 9203 9130 13126 13199 13200 13127 +9130 9203 9204 9131 13127 13200 13201 13128 +9131 9204 9205 9132 13128 13201 13202 13129 +9132 9205 9206 9133 13129 13202 13203 13130 +9133 9206 9207 9134 13130 13203 13204 13131 +9134 9207 9208 9135 13131 13204 13205 13132 +9135 9208 9209 9136 13132 13205 13206 13133 +9136 9209 9210 9137 13133 13206 13207 13134 +9137 9210 9211 9138 13134 13207 13208 13135 +9138 9211 9212 9139 13135 13208 13209 13136 +9139 9212 9213 9140 13136 13209 13210 13137 +9140 9213 9214 9141 13137 13210 13211 13138 +9141 9214 9215 9142 13138 13211 13212 13139 +9142 9215 9216 9143 13139 13212 13213 13140 +9143 9216 9217 9144 13140 13213 13214 13141 +9144 9217 9218 9145 13141 13214 13215 13142 +9145 9218 9219 9146 13142 13215 13216 13143 +9146 9219 9220 9147 13143 13216 13217 13144 +9147 9220 9221 9148 13144 13217 13218 13145 +9148 9221 9222 9149 13145 13218 13219 13146 +9150 9223 9224 9151 13147 13220 13221 13148 +9151 9224 9225 9152 13148 13221 13222 13149 +9152 9225 9226 9153 13149 13222 13223 13150 +9153 9226 9227 9154 13150 13223 13224 13151 +9154 9227 9228 9155 13151 13224 13225 13152 +9155 9228 9229 9156 13152 13225 13226 13153 +9156 9229 9230 9157 13153 13226 13227 13154 +9157 9230 9231 9158 13154 13227 13228 13155 +9158 9231 9232 9159 13155 13228 13229 13156 +9159 9232 9233 9160 13156 13229 13230 13157 +9160 9233 9234 9161 13157 13230 13231 13158 +9161 9234 9235 9162 13158 13231 13232 13159 +9162 9235 9236 9163 13159 13232 13233 13160 +9163 9236 9237 9164 13160 13233 13234 13161 +9164 9237 9238 9165 13161 13234 13235 13162 +9165 9238 9239 9166 13162 13235 13236 13163 +9166 9239 9240 9167 13163 13236 13237 13164 +9167 9240 9241 9168 13164 13237 13238 13165 +9168 9241 9242 9169 13165 13238 13239 13166 +9169 9242 9243 9170 13166 13239 13240 13167 +9170 9243 9244 9171 13167 13240 13241 13168 +9171 9244 9245 9172 13168 13241 13242 13169 +9172 9245 9246 9173 13169 13242 13243 13170 +9173 9246 9247 9174 13170 13243 13244 13171 +9174 9247 9248 9175 13171 13244 13245 13172 +9175 9248 9249 9176 13172 13245 13246 13173 +9176 9249 9250 9177 13173 13246 13247 13174 +9177 9250 9251 9178 13174 13247 13248 13175 +9178 9251 9252 9179 13175 13248 13249 13176 +9179 9252 9253 9180 13176 13249 13250 13177 +9180 9253 9254 9181 13177 13250 13251 13178 +9181 9254 9255 9182 13178 13251 13252 13179 +9182 9255 9256 9183 13179 13252 13253 13180 +9183 9256 9257 9184 13180 13253 13254 13181 +9184 9257 9258 9185 13181 13254 13255 13182 +9185 9258 9259 9186 13182 13255 13256 13183 +9186 9259 9260 9187 13183 13256 13257 13184 +9187 9260 9261 9188 13184 13257 13258 13185 +9188 9261 9262 9189 13185 13258 13259 13186 +9189 9262 9263 9190 13186 13259 13260 13187 +9190 9263 9264 9191 13187 13260 13261 13188 +9191 9264 9265 9192 13188 13261 13262 13189 +9192 9265 9266 9193 13189 13262 13263 13190 +9193 9266 9267 9194 13190 13263 13264 13191 +9194 9267 9268 9195 13191 13264 13265 13192 +9195 9268 9269 9196 13192 13265 13266 13193 +9196 9269 9270 9197 13193 13266 13267 13194 +9197 9270 9271 9198 13194 13267 13268 13195 +9198 9271 9272 9199 13195 13268 13269 13196 +9199 9272 9273 9200 13196 13269 13270 13197 +9200 9273 9274 9201 13197 13270 13271 13198 +9201 9274 9275 9202 13198 13271 13272 13199 +9202 9275 9276 9203 13199 13272 13273 13200 +9203 9276 9277 9204 13200 13273 13274 13201 +9204 9277 9278 9205 13201 13274 13275 13202 +9205 9278 9279 9206 13202 13275 13276 13203 +9206 9279 9280 9207 13203 13276 13277 13204 +9207 9280 9281 9208 13204 13277 13278 13205 +9208 9281 9282 9209 13205 13278 13279 13206 +9209 9282 9283 9210 13206 13279 13280 13207 +9210 9283 9284 9211 13207 13280 13281 13208 +9211 9284 9285 9212 13208 13281 13282 13209 +9212 9285 9286 9213 13209 13282 13283 13210 +9213 9286 9287 9214 13210 13283 13284 13211 +9214 9287 9288 9215 13211 13284 13285 13212 +9215 9288 9289 9216 13212 13285 13286 13213 +9216 9289 9290 9217 13213 13286 13287 13214 +9217 9290 9291 9218 13214 13287 13288 13215 +9218 9291 9292 9219 13215 13288 13289 13216 +9219 9292 9293 9220 13216 13289 13290 13217 +9220 9293 9294 9221 13217 13290 13291 13218 +9221 9294 9295 9222 13218 13291 13292 13219 +9223 9296 9297 9224 13220 13293 13294 13221 +9224 9297 9298 9225 13221 13294 13295 13222 +9225 9298 9299 9226 13222 13295 13296 13223 +9226 9299 9300 9227 13223 13296 13297 13224 +9227 9300 9301 9228 13224 13297 13298 13225 +9228 9301 9302 9229 13225 13298 13299 13226 +9229 9302 9303 9230 13226 13299 13300 13227 +9230 9303 9304 9231 13227 13300 13301 13228 +9231 9304 9305 9232 13228 13301 13302 13229 +9232 9305 9306 9233 13229 13302 13303 13230 +9233 9306 9307 9234 13230 13303 13304 13231 +9234 9307 9308 9235 13231 13304 13305 13232 +9235 9308 9309 9236 13232 13305 13306 13233 +9236 9309 9310 9237 13233 13306 13307 13234 +9237 9310 9311 9238 13234 13307 13308 13235 +9238 9311 9312 9239 13235 13308 13309 13236 +9239 9312 9313 9240 13236 13309 13310 13237 +9240 9313 9314 9241 13237 13310 13311 13238 +9241 9314 9315 9242 13238 13311 13312 13239 +9242 9315 9316 9243 13239 13312 13313 13240 +9243 9316 9317 9244 13240 13313 13314 13241 +9244 9317 9318 9245 13241 13314 13315 13242 +9245 9318 9319 9246 13242 13315 13316 13243 +9246 9319 9320 9247 13243 13316 13317 13244 +9247 9320 9321 9248 13244 13317 13318 13245 +9248 9321 9322 9249 13245 13318 13319 13246 +9249 9322 9323 9250 13246 13319 13320 13247 +9250 9323 9324 9251 13247 13320 13321 13248 +9251 9324 9325 9252 13248 13321 13322 13249 +9252 9325 9326 9253 13249 13322 13323 13250 +9253 9326 9327 9254 13250 13323 13324 13251 +9254 9327 9328 9255 13251 13324 13325 13252 +9255 9328 9329 9256 13252 13325 13326 13253 +9256 9329 9330 9257 13253 13326 13327 13254 +9257 9330 9331 9258 13254 13327 13328 13255 +9258 9331 9332 9259 13255 13328 13329 13256 +9259 9332 9333 9260 13256 13329 13330 13257 +9260 9333 9334 9261 13257 13330 13331 13258 +9261 9334 9335 9262 13258 13331 13332 13259 +9262 9335 9336 9263 13259 13332 13333 13260 +9263 9336 9337 9264 13260 13333 13334 13261 +9264 9337 9338 9265 13261 13334 13335 13262 +9265 9338 9339 9266 13262 13335 13336 13263 +9266 9339 9340 9267 13263 13336 13337 13264 +9267 9340 9341 9268 13264 13337 13338 13265 +9268 9341 9342 9269 13265 13338 13339 13266 +9269 9342 9343 9270 13266 13339 13340 13267 +9270 9343 9344 9271 13267 13340 13341 13268 +9271 9344 9345 9272 13268 13341 13342 13269 +9272 9345 9346 9273 13269 13342 13343 13270 +9273 9346 9347 9274 13270 13343 13344 13271 +9274 9347 9348 9275 13271 13344 13345 13272 +9275 9348 9349 9276 13272 13345 13346 13273 +9276 9349 9350 9277 13273 13346 13347 13274 +9277 9350 9351 9278 13274 13347 13348 13275 +9278 9351 9352 9279 13275 13348 13349 13276 +9279 9352 9353 9280 13276 13349 13350 13277 +9280 9353 9354 9281 13277 13350 13351 13278 +9281 9354 9355 9282 13278 13351 13352 13279 +9282 9355 9356 9283 13279 13352 13353 13280 +9283 9356 9357 9284 13280 13353 13354 13281 +9284 9357 9358 9285 13281 13354 13355 13282 +9285 9358 9359 9286 13282 13355 13356 13283 +9286 9359 9360 9287 13283 13356 13357 13284 +9287 9360 9361 9288 13284 13357 13358 13285 +9288 9361 9362 9289 13285 13358 13359 13286 +9289 9362 9363 9290 13286 13359 13360 13287 +9290 9363 9364 9291 13287 13360 13361 13288 +9291 9364 9365 9292 13288 13361 13362 13289 +9292 9365 9366 9293 13289 13362 13363 13290 +9293 9366 9367 9294 13290 13363 13364 13291 +9294 9367 9368 9295 13291 13364 13365 13292 +9296 9369 9370 9297 13293 13366 13367 13294 +9297 9370 9371 9298 13294 13367 13368 13295 +9298 9371 9372 9299 13295 13368 13369 13296 +9299 9372 9373 9300 13296 13369 13370 13297 +9300 9373 9374 9301 13297 13370 13371 13298 +9301 9374 9375 9302 13298 13371 13372 13299 +9302 9375 9376 9303 13299 13372 13373 13300 +9303 9376 9377 9304 13300 13373 13374 13301 +9304 9377 9378 9305 13301 13374 13375 13302 +9305 9378 9379 9306 13302 13375 13376 13303 +9306 9379 9380 9307 13303 13376 13377 13304 +9307 9380 9381 9308 13304 13377 13378 13305 +9308 9381 9382 9309 13305 13378 13379 13306 +9309 9382 9383 9310 13306 13379 13380 13307 +9310 9383 9384 9311 13307 13380 13381 13308 +9311 9384 9385 9312 13308 13381 13382 13309 +9312 9385 9386 9313 13309 13382 13383 13310 +9313 9386 9387 9314 13310 13383 13384 13311 +9314 9387 9388 9315 13311 13384 13385 13312 +9315 9388 9389 9316 13312 13385 13386 13313 +9316 9389 9390 9317 13313 13386 13387 13314 +9317 9390 9391 9318 13314 13387 13388 13315 +9318 9391 9392 9319 13315 13388 13389 13316 +9319 9392 9393 9320 13316 13389 13390 13317 +9320 9393 9394 9321 13317 13390 13391 13318 +9321 9394 9395 9322 13318 13391 13392 13319 +9322 9395 9396 9323 13319 13392 13393 13320 +9323 9396 9397 9324 13320 13393 13394 13321 +9324 9397 9398 9325 13321 13394 13395 13322 +9325 9398 9399 9326 13322 13395 13396 13323 +9326 9399 9400 9327 13323 13396 13397 13324 +9327 9400 9401 9328 13324 13397 13398 13325 +9328 9401 9402 9329 13325 13398 13399 13326 +9329 9402 9403 9330 13326 13399 13400 13327 +9330 9403 9404 9331 13327 13400 13401 13328 +9331 9404 9405 9332 13328 13401 13402 13329 +9332 9405 9406 9333 13329 13402 13403 13330 +9333 9406 9407 9334 13330 13403 13404 13331 +9334 9407 9408 9335 13331 13404 13405 13332 +9335 9408 9409 9336 13332 13405 13406 13333 +9336 9409 9410 9337 13333 13406 13407 13334 +9337 9410 9411 9338 13334 13407 13408 13335 +9338 9411 9412 9339 13335 13408 13409 13336 +9339 9412 9413 9340 13336 13409 13410 13337 +9340 9413 9414 9341 13337 13410 13411 13338 +9341 9414 9415 9342 13338 13411 13412 13339 +9342 9415 9416 9343 13339 13412 13413 13340 +9343 9416 9417 9344 13340 13413 13414 13341 +9344 9417 9418 9345 13341 13414 13415 13342 +9345 9418 9419 9346 13342 13415 13416 13343 +9346 9419 9420 9347 13343 13416 13417 13344 +9347 9420 9421 9348 13344 13417 13418 13345 +9348 9421 9422 9349 13345 13418 13419 13346 +9349 9422 9423 9350 13346 13419 13420 13347 +9350 9423 9424 9351 13347 13420 13421 13348 +9351 9424 9425 9352 13348 13421 13422 13349 +9352 9425 9426 9353 13349 13422 13423 13350 +9353 9426 9427 9354 13350 13423 13424 13351 +9354 9427 9428 9355 13351 13424 13425 13352 +9355 9428 9429 9356 13352 13425 13426 13353 +9356 9429 9430 9357 13353 13426 13427 13354 +9357 9430 9431 9358 13354 13427 13428 13355 +9358 9431 9432 9359 13355 13428 13429 13356 +9359 9432 9433 9360 13356 13429 13430 13357 +9360 9433 9434 9361 13357 13430 13431 13358 +9361 9434 9435 9362 13358 13431 13432 13359 +9362 9435 9436 9363 13359 13432 13433 13360 +9363 9436 9437 9364 13360 13433 13434 13361 +9364 9437 9438 9365 13361 13434 13435 13362 +9365 9438 9439 9366 13362 13435 13436 13363 +9366 9439 9440 9367 13363 13436 13437 13364 +9367 9440 9441 9368 13364 13437 13438 13365 +9369 9442 9443 9370 13366 13439 13440 13367 +9370 9443 9444 9371 13367 13440 13441 13368 +9371 9444 9445 9372 13368 13441 13442 13369 +9372 9445 9446 9373 13369 13442 13443 13370 +9373 9446 9447 9374 13370 13443 13444 13371 +9374 9447 9448 9375 13371 13444 13445 13372 +9375 9448 9449 9376 13372 13445 13446 13373 +9376 9449 9450 9377 13373 13446 13447 13374 +9377 9450 9451 9378 13374 13447 13448 13375 +9378 9451 9452 9379 13375 13448 13449 13376 +9379 9452 9453 9380 13376 13449 13450 13377 +9380 9453 9454 9381 13377 13450 13451 13378 +9381 9454 9455 9382 13378 13451 13452 13379 +9382 9455 9456 9383 13379 13452 13453 13380 +9383 9456 9457 9384 13380 13453 13454 13381 +9384 9457 9458 9385 13381 13454 13455 13382 +9385 9458 9459 9386 13382 13455 13456 13383 +9386 9459 9460 9387 13383 13456 13457 13384 +9387 9460 9461 9388 13384 13457 13458 13385 +9388 9461 9462 9389 13385 13458 13459 13386 +9389 9462 9463 9390 13386 13459 13460 13387 +9390 9463 9464 9391 13387 13460 13461 13388 +9391 9464 9465 9392 13388 13461 13462 13389 +9392 9465 9466 9393 13389 13462 13463 13390 +9393 9466 9467 9394 13390 13463 13464 13391 +9394 9467 9468 9395 13391 13464 13465 13392 +9395 9468 9469 9396 13392 13465 13466 13393 +9396 9469 9470 9397 13393 13466 13467 13394 +9397 9470 9471 9398 13394 13467 13468 13395 +9398 9471 9472 9399 13395 13468 13469 13396 +9399 9472 9473 9400 13396 13469 13470 13397 +9400 9473 9474 9401 13397 13470 13471 13398 +9401 9474 9475 9402 13398 13471 13472 13399 +9402 9475 9476 9403 13399 13472 13473 13400 +9403 9476 9477 9404 13400 13473 13474 13401 +9404 9477 9478 9405 13401 13474 13475 13402 +9405 9478 9479 9406 13402 13475 13476 13403 +9406 9479 9480 9407 13403 13476 13477 13404 +9407 9480 9481 9408 13404 13477 13478 13405 +9408 9481 9482 9409 13405 13478 13479 13406 +9409 9482 9483 9410 13406 13479 13480 13407 +9410 9483 9484 9411 13407 13480 13481 13408 +9411 9484 9485 9412 13408 13481 13482 13409 +9412 9485 9486 9413 13409 13482 13483 13410 +9413 9486 9487 9414 13410 13483 13484 13411 +9414 9487 9488 9415 13411 13484 13485 13412 +9415 9488 9489 9416 13412 13485 13486 13413 +9416 9489 9490 9417 13413 13486 13487 13414 +9417 9490 9491 9418 13414 13487 13488 13415 +9418 9491 9492 9419 13415 13488 13489 13416 +9419 9492 9493 9420 13416 13489 13490 13417 +9420 9493 9494 9421 13417 13490 13491 13418 +9421 9494 9495 9422 13418 13491 13492 13419 +9422 9495 9496 9423 13419 13492 13493 13420 +9423 9496 9497 9424 13420 13493 13494 13421 +9424 9497 9498 9425 13421 13494 13495 13422 +9425 9498 9499 9426 13422 13495 13496 13423 +9426 9499 9500 9427 13423 13496 13497 13424 +9427 9500 9501 9428 13424 13497 13498 13425 +9428 9501 9502 9429 13425 13498 13499 13426 +9429 9502 9503 9430 13426 13499 13500 13427 +9430 9503 9504 9431 13427 13500 13501 13428 +9431 9504 9505 9432 13428 13501 13502 13429 +9432 9505 9506 9433 13429 13502 13503 13430 +9433 9506 9507 9434 13430 13503 13504 13431 +9434 9507 9508 9435 13431 13504 13505 13432 +9435 9508 9509 9436 13432 13505 13506 13433 +9436 9509 9510 9437 13433 13506 13507 13434 +9437 9510 9511 9438 13434 13507 13508 13435 +9438 9511 9512 9439 13435 13508 13509 13436 +9439 9512 9513 9440 13436 13509 13510 13437 +9440 9513 9514 9441 13437 13510 13511 13438 +9442 9515 9516 9443 13439 13512 13513 13440 +9443 9516 9517 9444 13440 13513 13514 13441 +9444 9517 9518 9445 13441 13514 13515 13442 +9445 9518 9519 9446 13442 13515 13516 13443 +9446 9519 9520 9447 13443 13516 13517 13444 +9447 9520 9521 9448 13444 13517 13518 13445 +9448 9521 9522 9449 13445 13518 13519 13446 +9449 9522 9523 9450 13446 13519 13520 13447 +9450 9523 9524 9451 13447 13520 13521 13448 +9451 9524 9525 9452 13448 13521 13522 13449 +9452 9525 9526 9453 13449 13522 13523 13450 +9453 9526 9527 9454 13450 13523 13524 13451 +9454 9527 9528 9455 13451 13524 13525 13452 +9455 9528 9529 9456 13452 13525 13526 13453 +9456 9529 9530 9457 13453 13526 13527 13454 +9457 9530 9531 9458 13454 13527 13528 13455 +9458 9531 9532 9459 13455 13528 13529 13456 +9459 9532 9533 9460 13456 13529 13530 13457 +9460 9533 9534 9461 13457 13530 13531 13458 +9461 9534 9535 9462 13458 13531 13532 13459 +9462 9535 9536 9463 13459 13532 13533 13460 +9463 9536 9537 9464 13460 13533 13534 13461 +9464 9537 9538 9465 13461 13534 13535 13462 +9465 9538 9539 9466 13462 13535 13536 13463 +9466 9539 9540 9467 13463 13536 13537 13464 +9467 9540 9541 9468 13464 13537 13538 13465 +9468 9541 9542 9469 13465 13538 13539 13466 +9469 9542 9543 9470 13466 13539 13540 13467 +9470 9543 9544 9471 13467 13540 13541 13468 +9471 9544 9545 9472 13468 13541 13542 13469 +9472 9545 9546 9473 13469 13542 13543 13470 +9473 9546 9547 9474 13470 13543 13544 13471 +9474 9547 9548 9475 13471 13544 13545 13472 +9475 9548 9549 9476 13472 13545 13546 13473 +9476 9549 9550 9477 13473 13546 13547 13474 +9477 9550 9551 9478 13474 13547 13548 13475 +9478 9551 9552 9479 13475 13548 13549 13476 +9479 9552 9553 9480 13476 13549 13550 13477 +9480 9553 9554 9481 13477 13550 13551 13478 +9481 9554 9555 9482 13478 13551 13552 13479 +9482 9555 9556 9483 13479 13552 13553 13480 +9483 9556 9557 9484 13480 13553 13554 13481 +9484 9557 9558 9485 13481 13554 13555 13482 +9485 9558 9559 9486 13482 13555 13556 13483 +9486 9559 9560 9487 13483 13556 13557 13484 +9487 9560 9561 9488 13484 13557 13558 13485 +9488 9561 9562 9489 13485 13558 13559 13486 +9489 9562 9563 9490 13486 13559 13560 13487 +9490 9563 9564 9491 13487 13560 13561 13488 +9491 9564 9565 9492 13488 13561 13562 13489 +9492 9565 9566 9493 13489 13562 13563 13490 +9493 9566 9567 9494 13490 13563 13564 13491 +9494 9567 9568 9495 13491 13564 13565 13492 +9495 9568 9569 9496 13492 13565 13566 13493 +9496 9569 9570 9497 13493 13566 13567 13494 +9497 9570 9571 9498 13494 13567 13568 13495 +9498 9571 9572 9499 13495 13568 13569 13496 +9499 9572 9573 9500 13496 13569 13570 13497 +9500 9573 9574 9501 13497 13570 13571 13498 +9501 9574 9575 9502 13498 13571 13572 13499 +9502 9575 9576 9503 13499 13572 13573 13500 +9503 9576 9577 9504 13500 13573 13574 13501 +9504 9577 9578 9505 13501 13574 13575 13502 +9505 9578 9579 9506 13502 13575 13576 13503 +9506 9579 9580 9507 13503 13576 13577 13504 +9507 9580 9581 9508 13504 13577 13578 13505 +9508 9581 9582 9509 13505 13578 13579 13506 +9509 9582 9583 9510 13506 13579 13580 13507 +9510 9583 9584 9511 13507 13580 13581 13508 +9511 9584 9585 9512 13508 13581 13582 13509 +9512 9585 9586 9513 13509 13582 13583 13510 +9513 9586 9587 9514 13510 13583 13584 13511 +9515 9588 9589 9516 13512 13585 13586 13513 +9516 9589 9590 9517 13513 13586 13587 13514 +9517 9590 9591 9518 13514 13587 13588 13515 +9518 9591 9592 9519 13515 13588 13589 13516 +9519 9592 9593 9520 13516 13589 13590 13517 +9520 9593 9594 9521 13517 13590 13591 13518 +9521 9594 9595 9522 13518 13591 13592 13519 +9522 9595 9596 9523 13519 13592 13593 13520 +9523 9596 9597 9524 13520 13593 13594 13521 +9524 9597 9598 9525 13521 13594 13595 13522 +9525 9598 9599 9526 13522 13595 13596 13523 +9526 9599 9600 9527 13523 13596 13597 13524 +9527 9600 9601 9528 13524 13597 13598 13525 +9528 9601 9602 9529 13525 13598 13599 13526 +9529 9602 9603 9530 13526 13599 13600 13527 +9530 9603 9604 9531 13527 13600 13601 13528 +9531 9604 9605 9532 13528 13601 13602 13529 +9532 9605 9606 9533 13529 13602 13603 13530 +9533 9606 9607 9534 13530 13603 13604 13531 +9534 9607 9608 9535 13531 13604 13605 13532 +9535 9608 9609 9536 13532 13605 13606 13533 +9536 9609 9610 9537 13533 13606 13607 13534 +9537 9610 9611 9538 13534 13607 13608 13535 +9538 9611 9612 9539 13535 13608 13609 13536 +9539 9612 9613 9540 13536 13609 13610 13537 +9540 9613 9614 9541 13537 13610 13611 13538 +9541 9614 9615 9542 13538 13611 13612 13539 +9542 9615 9616 9543 13539 13612 13613 13540 +9543 9616 9617 9544 13540 13613 13614 13541 +9544 9617 9618 9545 13541 13614 13615 13542 +9545 9618 9619 9546 13542 13615 13616 13543 +9546 9619 9620 9547 13543 13616 13617 13544 +9547 9620 9621 9548 13544 13617 13618 13545 +9548 9621 9622 9549 13545 13618 13619 13546 +9549 9622 9623 9550 13546 13619 13620 13547 +9550 9623 9624 9551 13547 13620 13621 13548 +9551 9624 9625 9552 13548 13621 13622 13549 +9552 9625 9626 9553 13549 13622 13623 13550 +9553 9626 9627 9554 13550 13623 13624 13551 +9554 9627 9628 9555 13551 13624 13625 13552 +9555 9628 9629 9556 13552 13625 13626 13553 +9556 9629 9630 9557 13553 13626 13627 13554 +9557 9630 9631 9558 13554 13627 13628 13555 +9558 9631 9632 9559 13555 13628 13629 13556 +9559 9632 9633 9560 13556 13629 13630 13557 +9560 9633 9634 9561 13557 13630 13631 13558 +9561 9634 9635 9562 13558 13631 13632 13559 +9562 9635 9636 9563 13559 13632 13633 13560 +9563 9636 9637 9564 13560 13633 13634 13561 +9564 9637 9638 9565 13561 13634 13635 13562 +9565 9638 9639 9566 13562 13635 13636 13563 +9566 9639 9640 9567 13563 13636 13637 13564 +9567 9640 9641 9568 13564 13637 13638 13565 +9568 9641 9642 9569 13565 13638 13639 13566 +9569 9642 9643 9570 13566 13639 13640 13567 +9570 9643 9644 9571 13567 13640 13641 13568 +9571 9644 9645 9572 13568 13641 13642 13569 +9572 9645 9646 9573 13569 13642 13643 13570 +9573 9646 9647 9574 13570 13643 13644 13571 +9574 9647 9648 9575 13571 13644 13645 13572 +9575 9648 9649 9576 13572 13645 13646 13573 +9576 9649 9650 9577 13573 13646 13647 13574 +9577 9650 9651 9578 13574 13647 13648 13575 +9578 9651 9652 9579 13575 13648 13649 13576 +9579 9652 9653 9580 13576 13649 13650 13577 +9580 9653 9654 9581 13577 13650 13651 13578 +9581 9654 9655 9582 13578 13651 13652 13579 +9582 9655 9656 9583 13579 13652 13653 13580 +9583 9656 9657 9584 13580 13653 13654 13581 +9584 9657 9658 9585 13581 13654 13655 13582 +9585 9658 9659 9586 13582 13655 13656 13583 +9586 9659 9660 9587 13583 13656 13657 13584 +9588 9661 9662 9589 13585 13658 13659 13586 +9589 9662 9663 9590 13586 13659 13660 13587 +9590 9663 9664 9591 13587 13660 13661 13588 +9591 9664 9665 9592 13588 13661 13662 13589 +9592 9665 9666 9593 13589 13662 13663 13590 +9593 9666 9667 9594 13590 13663 13664 13591 +9594 9667 9668 9595 13591 13664 13665 13592 +9595 9668 9669 9596 13592 13665 13666 13593 +9596 9669 9670 9597 13593 13666 13667 13594 +9597 9670 9671 9598 13594 13667 13668 13595 +9598 9671 9672 9599 13595 13668 13669 13596 +9599 9672 9673 9600 13596 13669 13670 13597 +9600 9673 9674 9601 13597 13670 13671 13598 +9601 9674 9675 9602 13598 13671 13672 13599 +9602 9675 9676 9603 13599 13672 13673 13600 +9603 9676 9677 9604 13600 13673 13674 13601 +9604 9677 9678 9605 13601 13674 13675 13602 +9605 9678 9679 9606 13602 13675 13676 13603 +9606 9679 9680 9607 13603 13676 13677 13604 +9607 9680 9681 9608 13604 13677 13678 13605 +9608 9681 9682 9609 13605 13678 13679 13606 +9609 9682 9683 9610 13606 13679 13680 13607 +9610 9683 9684 9611 13607 13680 13681 13608 +9611 9684 9685 9612 13608 13681 13682 13609 +9612 9685 9686 9613 13609 13682 13683 13610 +9613 9686 9687 9614 13610 13683 13684 13611 +9614 9687 9688 9615 13611 13684 13685 13612 +9615 9688 9689 9616 13612 13685 13686 13613 +9616 9689 9690 9617 13613 13686 13687 13614 +9617 9690 9691 9618 13614 13687 13688 13615 +9618 9691 9692 9619 13615 13688 13689 13616 +9619 9692 9693 9620 13616 13689 13690 13617 +9620 9693 9694 9621 13617 13690 13691 13618 +9621 9694 9695 9622 13618 13691 13692 13619 +9622 9695 9696 9623 13619 13692 13693 13620 +9623 9696 9697 9624 13620 13693 13694 13621 +9624 9697 9698 9625 13621 13694 13695 13622 +9625 9698 9699 9626 13622 13695 13696 13623 +9626 9699 9700 9627 13623 13696 13697 13624 +9627 9700 9701 9628 13624 13697 13698 13625 +9628 9701 9702 9629 13625 13698 13699 13626 +9629 9702 9703 9630 13626 13699 13700 13627 +9630 9703 9704 9631 13627 13700 13701 13628 +9631 9704 9705 9632 13628 13701 13702 13629 +9632 9705 9706 9633 13629 13702 13703 13630 +9633 9706 9707 9634 13630 13703 13704 13631 +9634 9707 9708 9635 13631 13704 13705 13632 +9635 9708 9709 9636 13632 13705 13706 13633 +9636 9709 9710 9637 13633 13706 13707 13634 +9637 9710 9711 9638 13634 13707 13708 13635 +9638 9711 9712 9639 13635 13708 13709 13636 +9639 9712 9713 9640 13636 13709 13710 13637 +9640 9713 9714 9641 13637 13710 13711 13638 +9641 9714 9715 9642 13638 13711 13712 13639 +9642 9715 9716 9643 13639 13712 13713 13640 +9643 9716 9717 9644 13640 13713 13714 13641 +9644 9717 9718 9645 13641 13714 13715 13642 +9645 9718 9719 9646 13642 13715 13716 13643 +9646 9719 9720 9647 13643 13716 13717 13644 +9647 9720 9721 9648 13644 13717 13718 13645 +9648 9721 9722 9649 13645 13718 13719 13646 +9649 9722 9723 9650 13646 13719 13720 13647 +9650 9723 9724 9651 13647 13720 13721 13648 +9651 9724 9725 9652 13648 13721 13722 13649 +9652 9725 9726 9653 13649 13722 13723 13650 +9653 9726 9727 9654 13650 13723 13724 13651 +9654 9727 9728 9655 13651 13724 13725 13652 +9655 9728 9729 9656 13652 13725 13726 13653 +9656 9729 9730 9657 13653 13726 13727 13654 +9657 9730 9731 9658 13654 13727 13728 13655 +9658 9731 9732 9659 13655 13728 13729 13656 +9659 9732 9733 9660 13656 13729 13730 13657 +9661 9734 9735 9662 13658 13731 13732 13659 +9662 9735 9736 9663 13659 13732 13733 13660 +9663 9736 9737 9664 13660 13733 13734 13661 +9664 9737 9738 9665 13661 13734 13735 13662 +9665 9738 9739 9666 13662 13735 13736 13663 +9666 9739 9740 9667 13663 13736 13737 13664 +9667 9740 9741 9668 13664 13737 13738 13665 +9668 9741 9742 9669 13665 13738 13739 13666 +9669 9742 9743 9670 13666 13739 13740 13667 +9670 9743 9744 9671 13667 13740 13741 13668 +9671 9744 9745 9672 13668 13741 13742 13669 +9672 9745 9746 9673 13669 13742 13743 13670 +9673 9746 9747 9674 13670 13743 13744 13671 +9674 9747 9748 9675 13671 13744 13745 13672 +9675 9748 9749 9676 13672 13745 13746 13673 +9676 9749 9750 9677 13673 13746 13747 13674 +9677 9750 9751 9678 13674 13747 13748 13675 +9678 9751 9752 9679 13675 13748 13749 13676 +9679 9752 9753 9680 13676 13749 13750 13677 +9680 9753 9754 9681 13677 13750 13751 13678 +9681 9754 9755 9682 13678 13751 13752 13679 +9682 9755 9756 9683 13679 13752 13753 13680 +9683 9756 9757 9684 13680 13753 13754 13681 +9684 9757 9758 9685 13681 13754 13755 13682 +9685 9758 9759 9686 13682 13755 13756 13683 +9686 9759 9760 9687 13683 13756 13757 13684 +9687 9760 9761 9688 13684 13757 13758 13685 +9688 9761 9762 9689 13685 13758 13759 13686 +9689 9762 9763 9690 13686 13759 13760 13687 +9690 9763 9764 9691 13687 13760 13761 13688 +9691 9764 9765 9692 13688 13761 13762 13689 +9692 9765 9766 9693 13689 13762 13763 13690 +9693 9766 9767 9694 13690 13763 13764 13691 +9694 9767 9768 9695 13691 13764 13765 13692 +9695 9768 9769 9696 13692 13765 13766 13693 +9696 9769 9770 9697 13693 13766 13767 13694 +9697 9770 9771 9698 13694 13767 13768 13695 +9698 9771 9772 9699 13695 13768 13769 13696 +9699 9772 9773 9700 13696 13769 13770 13697 +9700 9773 9774 9701 13697 13770 13771 13698 +9701 9774 9775 9702 13698 13771 13772 13699 +9702 9775 9776 9703 13699 13772 13773 13700 +9703 9776 9777 9704 13700 13773 13774 13701 +9704 9777 9778 9705 13701 13774 13775 13702 +9705 9778 9779 9706 13702 13775 13776 13703 +9706 9779 9780 9707 13703 13776 13777 13704 +9707 9780 9781 9708 13704 13777 13778 13705 +9708 9781 9782 9709 13705 13778 13779 13706 +9709 9782 9783 9710 13706 13779 13780 13707 +9710 9783 9784 9711 13707 13780 13781 13708 +9711 9784 9785 9712 13708 13781 13782 13709 +9712 9785 9786 9713 13709 13782 13783 13710 +9713 9786 9787 9714 13710 13783 13784 13711 +9714 9787 9788 9715 13711 13784 13785 13712 +9715 9788 9789 9716 13712 13785 13786 13713 +9716 9789 9790 9717 13713 13786 13787 13714 +9717 9790 9791 9718 13714 13787 13788 13715 +9718 9791 9792 9719 13715 13788 13789 13716 +9719 9792 9793 9720 13716 13789 13790 13717 +9720 9793 9794 9721 13717 13790 13791 13718 +9721 9794 9795 9722 13718 13791 13792 13719 +9722 9795 9796 9723 13719 13792 13793 13720 +9723 9796 9797 9724 13720 13793 13794 13721 +9724 9797 9798 9725 13721 13794 13795 13722 +9725 9798 9799 9726 13722 13795 13796 13723 +9726 9799 9800 9727 13723 13796 13797 13724 +9727 9800 9801 9728 13724 13797 13798 13725 +9728 9801 9802 9729 13725 13798 13799 13726 +9729 9802 9803 9730 13726 13799 13800 13727 +9730 9803 9804 9731 13727 13800 13801 13728 +9731 9804 9805 9732 13728 13801 13802 13729 +9732 9805 9806 9733 13729 13802 13803 13730 +9734 9807 9808 9735 13731 13804 13805 13732 +9735 9808 9809 9736 13732 13805 13806 13733 +9736 9809 9810 9737 13733 13806 13807 13734 +9737 9810 9811 9738 13734 13807 13808 13735 +9738 9811 9812 9739 13735 13808 13809 13736 +9739 9812 9813 9740 13736 13809 13810 13737 +9740 9813 9814 9741 13737 13810 13811 13738 +9741 9814 9815 9742 13738 13811 13812 13739 +9742 9815 9816 9743 13739 13812 13813 13740 +9743 9816 9817 9744 13740 13813 13814 13741 +9744 9817 9818 9745 13741 13814 13815 13742 +9745 9818 9819 9746 13742 13815 13816 13743 +9746 9819 9820 9747 13743 13816 13817 13744 +9747 9820 9821 9748 13744 13817 13818 13745 +9748 9821 9822 9749 13745 13818 13819 13746 +9749 9822 9823 9750 13746 13819 13820 13747 +9750 9823 9824 9751 13747 13820 13821 13748 +9751 9824 9825 9752 13748 13821 13822 13749 +9752 9825 9826 9753 13749 13822 13823 13750 +9753 9826 9827 9754 13750 13823 13824 13751 +9754 9827 9828 9755 13751 13824 13825 13752 +9755 9828 9829 9756 13752 13825 13826 13753 +9756 9829 9830 9757 13753 13826 13827 13754 +9757 9830 9831 9758 13754 13827 13828 13755 +9758 9831 9832 9759 13755 13828 13829 13756 +9759 9832 9833 9760 13756 13829 13830 13757 +9760 9833 9834 9761 13757 13830 13831 13758 +9761 9834 9835 9762 13758 13831 13832 13759 +9762 9835 9836 9763 13759 13832 13833 13760 +9763 9836 9837 9764 13760 13833 13834 13761 +9764 9837 9838 9765 13761 13834 13835 13762 +9765 9838 9839 9766 13762 13835 13836 13763 +9766 9839 9840 9767 13763 13836 13837 13764 +9767 9840 9841 9768 13764 13837 13838 13765 +9768 9841 9842 9769 13765 13838 13839 13766 +9769 9842 9843 9770 13766 13839 13840 13767 +9770 9843 9844 9771 13767 13840 13841 13768 +9771 9844 9845 9772 13768 13841 13842 13769 +9772 9845 9846 9773 13769 13842 13843 13770 +9773 9846 9847 9774 13770 13843 13844 13771 +9774 9847 9848 9775 13771 13844 13845 13772 +9775 9848 9849 9776 13772 13845 13846 13773 +9776 9849 9850 9777 13773 13846 13847 13774 +9777 9850 9851 9778 13774 13847 13848 13775 +9778 9851 9852 9779 13775 13848 13849 13776 +9779 9852 9853 9780 13776 13849 13850 13777 +9780 9853 9854 9781 13777 13850 13851 13778 +9781 9854 9855 9782 13778 13851 13852 13779 +9782 9855 9856 9783 13779 13852 13853 13780 +9783 9856 9857 9784 13780 13853 13854 13781 +9784 9857 9858 9785 13781 13854 13855 13782 +9785 9858 9859 9786 13782 13855 13856 13783 +9786 9859 9860 9787 13783 13856 13857 13784 +9787 9860 9861 9788 13784 13857 13858 13785 +9788 9861 9862 9789 13785 13858 13859 13786 +9789 9862 9863 9790 13786 13859 13860 13787 +9790 9863 9864 9791 13787 13860 13861 13788 +9791 9864 9865 9792 13788 13861 13862 13789 +9792 9865 9866 9793 13789 13862 13863 13790 +9793 9866 9867 9794 13790 13863 13864 13791 +9794 9867 9868 9795 13791 13864 13865 13792 +9795 9868 9869 9796 13792 13865 13866 13793 +9796 9869 9870 9797 13793 13866 13867 13794 +9797 9870 9871 9798 13794 13867 13868 13795 +9798 9871 9872 9799 13795 13868 13869 13796 +9799 9872 9873 9800 13796 13869 13870 13797 +9800 9873 9874 9801 13797 13870 13871 13798 +9801 9874 9875 9802 13798 13871 13872 13799 +9802 9875 9876 9803 13799 13872 13873 13800 +9803 9876 9877 9804 13800 13873 13874 13801 +9804 9877 9878 9805 13801 13874 13875 13802 +9805 9878 9879 9806 13802 13875 13876 13803 +9807 9880 9881 9808 13804 13877 13878 13805 +9808 9881 9882 9809 13805 13878 13879 13806 +9809 9882 9883 9810 13806 13879 13880 13807 +9810 9883 9884 9811 13807 13880 13881 13808 +9811 9884 9885 9812 13808 13881 13882 13809 +9812 9885 9886 9813 13809 13882 13883 13810 +9813 9886 9887 9814 13810 13883 13884 13811 +9814 9887 9888 9815 13811 13884 13885 13812 +9815 9888 9889 9816 13812 13885 13886 13813 +9816 9889 9890 9817 13813 13886 13887 13814 +9817 9890 9891 9818 13814 13887 13888 13815 +9818 9891 9892 9819 13815 13888 13889 13816 +9819 9892 9893 9820 13816 13889 13890 13817 +9820 9893 9894 9821 13817 13890 13891 13818 +9821 9894 9895 9822 13818 13891 13892 13819 +9822 9895 9896 9823 13819 13892 13893 13820 +9823 9896 9897 9824 13820 13893 13894 13821 +9824 9897 9898 9825 13821 13894 13895 13822 +9825 9898 9899 9826 13822 13895 13896 13823 +9826 9899 9900 9827 13823 13896 13897 13824 +9827 9900 9901 9828 13824 13897 13898 13825 +9828 9901 9902 9829 13825 13898 13899 13826 +9829 9902 9903 9830 13826 13899 13900 13827 +9830 9903 9904 9831 13827 13900 13901 13828 +9831 9904 9905 9832 13828 13901 13902 13829 +9832 9905 9906 9833 13829 13902 13903 13830 +9833 9906 9907 9834 13830 13903 13904 13831 +9834 9907 9908 9835 13831 13904 13905 13832 +9835 9908 9909 9836 13832 13905 13906 13833 +9836 9909 9910 9837 13833 13906 13907 13834 +9837 9910 9911 9838 13834 13907 13908 13835 +9838 9911 9912 9839 13835 13908 13909 13836 +9839 9912 9913 9840 13836 13909 13910 13837 +9840 9913 9914 9841 13837 13910 13911 13838 +9841 9914 9915 9842 13838 13911 13912 13839 +9842 9915 9916 9843 13839 13912 13913 13840 +9843 9916 9917 9844 13840 13913 13914 13841 +9844 9917 9918 9845 13841 13914 13915 13842 +9845 9918 9919 9846 13842 13915 13916 13843 +9846 9919 9920 9847 13843 13916 13917 13844 +9847 9920 9921 9848 13844 13917 13918 13845 +9848 9921 9922 9849 13845 13918 13919 13846 +9849 9922 9923 9850 13846 13919 13920 13847 +9850 9923 9924 9851 13847 13920 13921 13848 +9851 9924 9925 9852 13848 13921 13922 13849 +9852 9925 9926 9853 13849 13922 13923 13850 +9853 9926 9927 9854 13850 13923 13924 13851 +9854 9927 9928 9855 13851 13924 13925 13852 +9855 9928 9929 9856 13852 13925 13926 13853 +9856 9929 9930 9857 13853 13926 13927 13854 +9857 9930 9931 9858 13854 13927 13928 13855 +9858 9931 9932 9859 13855 13928 13929 13856 +9859 9932 9933 9860 13856 13929 13930 13857 +9860 9933 9934 9861 13857 13930 13931 13858 +9861 9934 9935 9862 13858 13931 13932 13859 +9862 9935 9936 9863 13859 13932 13933 13860 +9863 9936 9937 9864 13860 13933 13934 13861 +9864 9937 9938 9865 13861 13934 13935 13862 +9865 9938 9939 9866 13862 13935 13936 13863 +9866 9939 9940 9867 13863 13936 13937 13864 +9867 9940 9941 9868 13864 13937 13938 13865 +9868 9941 9942 9869 13865 13938 13939 13866 +9869 9942 9943 9870 13866 13939 13940 13867 +9870 9943 9944 9871 13867 13940 13941 13868 +9871 9944 9945 9872 13868 13941 13942 13869 +9872 9945 9946 9873 13869 13942 13943 13870 +9873 9946 9947 9874 13870 13943 13944 13871 +9874 9947 9948 9875 13871 13944 13945 13872 +9875 9948 9949 9876 13872 13945 13946 13873 +9876 9949 9950 9877 13873 13946 13947 13874 +9877 9950 9951 9878 13874 13947 13948 13875 +9878 9951 9952 9879 13875 13948 13949 13876 +9880 9953 9954 9881 13877 13950 13951 13878 +9881 9954 9955 9882 13878 13951 13952 13879 +9882 9955 9956 9883 13879 13952 13953 13880 +9883 9956 9957 9884 13880 13953 13954 13881 +9884 9957 9958 9885 13881 13954 13955 13882 +9885 9958 9959 9886 13882 13955 13956 13883 +9886 9959 9960 9887 13883 13956 13957 13884 +9887 9960 9961 9888 13884 13957 13958 13885 +9888 9961 9962 9889 13885 13958 13959 13886 +9889 9962 9963 9890 13886 13959 13960 13887 +9890 9963 9964 9891 13887 13960 13961 13888 +9891 9964 9965 9892 13888 13961 13962 13889 +9892 9965 9966 9893 13889 13962 13963 13890 +9893 9966 9967 9894 13890 13963 13964 13891 +9894 9967 9968 9895 13891 13964 13965 13892 +9895 9968 9969 9896 13892 13965 13966 13893 +9896 9969 9970 9897 13893 13966 13967 13894 +9897 9970 9971 9898 13894 13967 13968 13895 +9898 9971 9972 9899 13895 13968 13969 13896 +9899 9972 9973 9900 13896 13969 13970 13897 +9900 9973 9974 9901 13897 13970 13971 13898 +9901 9974 9975 9902 13898 13971 13972 13899 +9902 9975 9976 9903 13899 13972 13973 13900 +9903 9976 9977 9904 13900 13973 13974 13901 +9904 9977 9978 9905 13901 13974 13975 13902 +9905 9978 9979 9906 13902 13975 13976 13903 +9906 9979 9980 9907 13903 13976 13977 13904 +9907 9980 9981 9908 13904 13977 13978 13905 +9908 9981 9982 9909 13905 13978 13979 13906 +9909 9982 9983 9910 13906 13979 13980 13907 +9910 9983 9984 9911 13907 13980 13981 13908 +9911 9984 9985 9912 13908 13981 13982 13909 +9912 9985 9986 9913 13909 13982 13983 13910 +9913 9986 9987 9914 13910 13983 13984 13911 +9914 9987 9988 9915 13911 13984 13985 13912 +9915 9988 9989 9916 13912 13985 13986 13913 +9916 9989 9990 9917 13913 13986 13987 13914 +9917 9990 9991 9918 13914 13987 13988 13915 +9918 9991 9992 9919 13915 13988 13989 13916 +9919 9992 9993 9920 13916 13989 13990 13917 +9920 9993 9994 9921 13917 13990 13991 13918 +9921 9994 9995 9922 13918 13991 13992 13919 +9922 9995 9996 9923 13919 13992 13993 13920 +9923 9996 9997 9924 13920 13993 13994 13921 +9924 9997 9998 9925 13921 13994 13995 13922 +9925 9998 9999 9926 13922 13995 13996 13923 +9926 9999 10000 9927 13923 13996 13997 13924 +9927 10000 10001 9928 13924 13997 13998 13925 +9928 10001 10002 9929 13925 13998 13999 13926 +9929 10002 10003 9930 13926 13999 14000 13927 +9930 10003 10004 9931 13927 14000 14001 13928 +9931 10004 10005 9932 13928 14001 14002 13929 +9932 10005 10006 9933 13929 14002 14003 13930 +9933 10006 10007 9934 13930 14003 14004 13931 +9934 10007 10008 9935 13931 14004 14005 13932 +9935 10008 10009 9936 13932 14005 14006 13933 +9936 10009 10010 9937 13933 14006 14007 13934 +9937 10010 10011 9938 13934 14007 14008 13935 +9938 10011 10012 9939 13935 14008 14009 13936 +9939 10012 10013 9940 13936 14009 14010 13937 +9940 10013 10014 9941 13937 14010 14011 13938 +9941 10014 10015 9942 13938 14011 14012 13939 +9942 10015 10016 9943 13939 14012 14013 13940 +9943 10016 10017 9944 13940 14013 14014 13941 +9944 10017 10018 9945 13941 14014 14015 13942 +9945 10018 10019 9946 13942 14015 14016 13943 +9946 10019 10020 9947 13943 14016 14017 13944 +9947 10020 10021 9948 13944 14017 14018 13945 +9948 10021 10022 9949 13945 14018 14019 13946 +9949 10022 10023 9950 13946 14019 14020 13947 +9950 10023 10024 9951 13947 14020 14021 13948 +9951 10024 10025 9952 13948 14021 14022 13949 +9953 10026 10027 9954 13950 14023 14024 13951 +9954 10027 10028 9955 13951 14024 14025 13952 +9955 10028 10029 9956 13952 14025 14026 13953 +9956 10029 10030 9957 13953 14026 14027 13954 +9957 10030 10031 9958 13954 14027 14028 13955 +9958 10031 10032 9959 13955 14028 14029 13956 +9959 10032 10033 9960 13956 14029 14030 13957 +9960 10033 10034 9961 13957 14030 14031 13958 +9961 10034 10035 9962 13958 14031 14032 13959 +9962 10035 10036 9963 13959 14032 14033 13960 +9963 10036 10037 9964 13960 14033 14034 13961 +9964 10037 10038 9965 13961 14034 14035 13962 +9965 10038 10039 9966 13962 14035 14036 13963 +9966 10039 10040 9967 13963 14036 14037 13964 +9967 10040 10041 9968 13964 14037 14038 13965 +9968 10041 10042 9969 13965 14038 14039 13966 +9969 10042 10043 9970 13966 14039 14040 13967 +9970 10043 10044 9971 13967 14040 14041 13968 +9971 10044 10045 9972 13968 14041 14042 13969 +9972 10045 10046 9973 13969 14042 14043 13970 +9973 10046 10047 9974 13970 14043 14044 13971 +9974 10047 10048 9975 13971 14044 14045 13972 +9975 10048 10049 9976 13972 14045 14046 13973 +9976 10049 10050 9977 13973 14046 14047 13974 +9977 10050 10051 9978 13974 14047 14048 13975 +9978 10051 10052 9979 13975 14048 14049 13976 +9979 10052 10053 9980 13976 14049 14050 13977 +9980 10053 10054 9981 13977 14050 14051 13978 +9981 10054 10055 9982 13978 14051 14052 13979 +9982 10055 10056 9983 13979 14052 14053 13980 +9983 10056 10057 9984 13980 14053 14054 13981 +9984 10057 10058 9985 13981 14054 14055 13982 +9985 10058 10059 9986 13982 14055 14056 13983 +9986 10059 10060 9987 13983 14056 14057 13984 +9987 10060 10061 9988 13984 14057 14058 13985 +9988 10061 10062 9989 13985 14058 14059 13986 +9989 10062 10063 9990 13986 14059 14060 13987 +9990 10063 10064 9991 13987 14060 14061 13988 +9991 10064 10065 9992 13988 14061 14062 13989 +9992 10065 10066 9993 13989 14062 14063 13990 +9993 10066 10067 9994 13990 14063 14064 13991 +9994 10067 10068 9995 13991 14064 14065 13992 +9995 10068 10069 9996 13992 14065 14066 13993 +9996 10069 10070 9997 13993 14066 14067 13994 +9997 10070 10071 9998 13994 14067 14068 13995 +9998 10071 10072 9999 13995 14068 14069 13996 +9999 10072 10073 10000 13996 14069 14070 13997 +10000 10073 10074 10001 13997 14070 14071 13998 +10001 10074 10075 10002 13998 14071 14072 13999 +10002 10075 10076 10003 13999 14072 14073 14000 +10003 10076 10077 10004 14000 14073 14074 14001 +10004 10077 10078 10005 14001 14074 14075 14002 +10005 10078 10079 10006 14002 14075 14076 14003 +10006 10079 10080 10007 14003 14076 14077 14004 +10007 10080 10081 10008 14004 14077 14078 14005 +10008 10081 10082 10009 14005 14078 14079 14006 +10009 10082 10083 10010 14006 14079 14080 14007 +10010 10083 10084 10011 14007 14080 14081 14008 +10011 10084 10085 10012 14008 14081 14082 14009 +10012 10085 10086 10013 14009 14082 14083 14010 +10013 10086 10087 10014 14010 14083 14084 14011 +10014 10087 10088 10015 14011 14084 14085 14012 +10015 10088 10089 10016 14012 14085 14086 14013 +10016 10089 10090 10017 14013 14086 14087 14014 +10017 10090 10091 10018 14014 14087 14088 14015 +10018 10091 10092 10019 14015 14088 14089 14016 +10019 10092 10093 10020 14016 14089 14090 14017 +10020 10093 10094 10021 14017 14090 14091 14018 +10021 10094 10095 10022 14018 14091 14092 14019 +10022 10095 10096 10023 14019 14092 14093 14020 +10023 10096 10097 10024 14020 14093 14094 14021 +10024 10097 10098 10025 14021 14094 14095 14022 +10026 10099 10100 10027 14023 14096 14097 14024 +10027 10100 10101 10028 14024 14097 14098 14025 +10028 10101 10102 10029 14025 14098 14099 14026 +10029 10102 10103 10030 14026 14099 14100 14027 +10030 10103 10104 10031 14027 14100 14101 14028 +10031 10104 10105 10032 14028 14101 14102 14029 +10032 10105 10106 10033 14029 14102 14103 14030 +10033 10106 10107 10034 14030 14103 14104 14031 +10034 10107 10108 10035 14031 14104 14105 14032 +10035 10108 10109 10036 14032 14105 14106 14033 +10036 10109 10110 10037 14033 14106 14107 14034 +10037 10110 10111 10038 14034 14107 14108 14035 +10038 10111 10112 10039 14035 14108 14109 14036 +10039 10112 10113 10040 14036 14109 14110 14037 +10040 10113 10114 10041 14037 14110 14111 14038 +10041 10114 10115 10042 14038 14111 14112 14039 +10042 10115 10116 10043 14039 14112 14113 14040 +10043 10116 10117 10044 14040 14113 14114 14041 +10044 10117 10118 10045 14041 14114 14115 14042 +10045 10118 10119 10046 14042 14115 14116 14043 +10046 10119 10120 10047 14043 14116 14117 14044 +10047 10120 10121 10048 14044 14117 14118 14045 +10048 10121 10122 10049 14045 14118 14119 14046 +10049 10122 10123 10050 14046 14119 14120 14047 +10050 10123 10124 10051 14047 14120 14121 14048 +10051 10124 10125 10052 14048 14121 14122 14049 +10052 10125 10126 10053 14049 14122 14123 14050 +10053 10126 10127 10054 14050 14123 14124 14051 +10054 10127 10128 10055 14051 14124 14125 14052 +10055 10128 10129 10056 14052 14125 14126 14053 +10056 10129 10130 10057 14053 14126 14127 14054 +10057 10130 10131 10058 14054 14127 14128 14055 +10058 10131 10132 10059 14055 14128 14129 14056 +10059 10132 10133 10060 14056 14129 14130 14057 +10060 10133 10134 10061 14057 14130 14131 14058 +10061 10134 10135 10062 14058 14131 14132 14059 +10062 10135 10136 10063 14059 14132 14133 14060 +10063 10136 10137 10064 14060 14133 14134 14061 +10064 10137 10138 10065 14061 14134 14135 14062 +10065 10138 10139 10066 14062 14135 14136 14063 +10066 10139 10140 10067 14063 14136 14137 14064 +10067 10140 10141 10068 14064 14137 14138 14065 +10068 10141 10142 10069 14065 14138 14139 14066 +10069 10142 10143 10070 14066 14139 14140 14067 +10070 10143 10144 10071 14067 14140 14141 14068 +10071 10144 10145 10072 14068 14141 14142 14069 +10072 10145 10146 10073 14069 14142 14143 14070 +10073 10146 10147 10074 14070 14143 14144 14071 +10074 10147 10148 10075 14071 14144 14145 14072 +10075 10148 10149 10076 14072 14145 14146 14073 +10076 10149 10150 10077 14073 14146 14147 14074 +10077 10150 10151 10078 14074 14147 14148 14075 +10078 10151 10152 10079 14075 14148 14149 14076 +10079 10152 10153 10080 14076 14149 14150 14077 +10080 10153 10154 10081 14077 14150 14151 14078 +10081 10154 10155 10082 14078 14151 14152 14079 +10082 10155 10156 10083 14079 14152 14153 14080 +10083 10156 10157 10084 14080 14153 14154 14081 +10084 10157 10158 10085 14081 14154 14155 14082 +10085 10158 10159 10086 14082 14155 14156 14083 +10086 10159 10160 10087 14083 14156 14157 14084 +10087 10160 10161 10088 14084 14157 14158 14085 +10088 10161 10162 10089 14085 14158 14159 14086 +10089 10162 10163 10090 14086 14159 14160 14087 +10090 10163 10164 10091 14087 14160 14161 14088 +10091 10164 10165 10092 14088 14161 14162 14089 +10092 10165 10166 10093 14089 14162 14163 14090 +10093 10166 10167 10094 14090 14163 14164 14091 +10094 10167 10168 10095 14091 14164 14165 14092 +10095 10168 10169 10096 14092 14165 14166 14093 +10096 10169 10170 10097 14093 14166 14167 14094 +10097 10170 10171 10098 14094 14167 14168 14095 +10099 10172 10173 10100 14096 14169 14170 14097 +10100 10173 10174 10101 14097 14170 14171 14098 +10101 10174 10175 10102 14098 14171 14172 14099 +10102 10175 10176 10103 14099 14172 14173 14100 +10103 10176 10177 10104 14100 14173 14174 14101 +10104 10177 10178 10105 14101 14174 14175 14102 +10105 10178 10179 10106 14102 14175 14176 14103 +10106 10179 10180 10107 14103 14176 14177 14104 +10107 10180 10181 10108 14104 14177 14178 14105 +10108 10181 10182 10109 14105 14178 14179 14106 +10109 10182 10183 10110 14106 14179 14180 14107 +10110 10183 10184 10111 14107 14180 14181 14108 +10111 10184 10185 10112 14108 14181 14182 14109 +10112 10185 10186 10113 14109 14182 14183 14110 +10113 10186 10187 10114 14110 14183 14184 14111 +10114 10187 10188 10115 14111 14184 14185 14112 +10115 10188 10189 10116 14112 14185 14186 14113 +10116 10189 10190 10117 14113 14186 14187 14114 +10117 10190 10191 10118 14114 14187 14188 14115 +10118 10191 10192 10119 14115 14188 14189 14116 +10119 10192 10193 10120 14116 14189 14190 14117 +10120 10193 10194 10121 14117 14190 14191 14118 +10121 10194 10195 10122 14118 14191 14192 14119 +10122 10195 10196 10123 14119 14192 14193 14120 +10123 10196 10197 10124 14120 14193 14194 14121 +10124 10197 10198 10125 14121 14194 14195 14122 +10125 10198 10199 10126 14122 14195 14196 14123 +10126 10199 10200 10127 14123 14196 14197 14124 +10127 10200 10201 10128 14124 14197 14198 14125 +10128 10201 10202 10129 14125 14198 14199 14126 +10129 10202 10203 10130 14126 14199 14200 14127 +10130 10203 10204 10131 14127 14200 14201 14128 +10131 10204 10205 10132 14128 14201 14202 14129 +10132 10205 10206 10133 14129 14202 14203 14130 +10133 10206 10207 10134 14130 14203 14204 14131 +10134 10207 10208 10135 14131 14204 14205 14132 +10135 10208 10209 10136 14132 14205 14206 14133 +10136 10209 10210 10137 14133 14206 14207 14134 +10137 10210 10211 10138 14134 14207 14208 14135 +10138 10211 10212 10139 14135 14208 14209 14136 +10139 10212 10213 10140 14136 14209 14210 14137 +10140 10213 10214 10141 14137 14210 14211 14138 +10141 10214 10215 10142 14138 14211 14212 14139 +10142 10215 10216 10143 14139 14212 14213 14140 +10143 10216 10217 10144 14140 14213 14214 14141 +10144 10217 10218 10145 14141 14214 14215 14142 +10145 10218 10219 10146 14142 14215 14216 14143 +10146 10219 10220 10147 14143 14216 14217 14144 +10147 10220 10221 10148 14144 14217 14218 14145 +10148 10221 10222 10149 14145 14218 14219 14146 +10149 10222 10223 10150 14146 14219 14220 14147 +10150 10223 10224 10151 14147 14220 14221 14148 +10151 10224 10225 10152 14148 14221 14222 14149 +10152 10225 10226 10153 14149 14222 14223 14150 +10153 10226 10227 10154 14150 14223 14224 14151 +10154 10227 10228 10155 14151 14224 14225 14152 +10155 10228 10229 10156 14152 14225 14226 14153 +10156 10229 10230 10157 14153 14226 14227 14154 +10157 10230 10231 10158 14154 14227 14228 14155 +10158 10231 10232 10159 14155 14228 14229 14156 +10159 10232 10233 10160 14156 14229 14230 14157 +10160 10233 10234 10161 14157 14230 14231 14158 +10161 10234 10235 10162 14158 14231 14232 14159 +10162 10235 10236 10163 14159 14232 14233 14160 +10163 10236 10237 10164 14160 14233 14234 14161 +10164 10237 10238 10165 14161 14234 14235 14162 +10165 10238 10239 10166 14162 14235 14236 14163 +10166 10239 10240 10167 14163 14236 14237 14164 +10167 10240 10241 10168 14164 14237 14238 14165 +10168 10241 10242 10169 14165 14238 14239 14166 +10169 10242 10243 10170 14166 14239 14240 14167 +10170 10243 10244 10171 14167 14240 14241 14168 +10172 10245 10246 10173 14169 14242 14243 14170 +10173 10246 10247 10174 14170 14243 14244 14171 +10174 10247 10248 10175 14171 14244 14245 14172 +10175 10248 10249 10176 14172 14245 14246 14173 +10176 10249 10250 10177 14173 14246 14247 14174 +10177 10250 10251 10178 14174 14247 14248 14175 +10178 10251 10252 10179 14175 14248 14249 14176 +10179 10252 10253 10180 14176 14249 14250 14177 +10180 10253 10254 10181 14177 14250 14251 14178 +10181 10254 10255 10182 14178 14251 14252 14179 +10182 10255 10256 10183 14179 14252 14253 14180 +10183 10256 10257 10184 14180 14253 14254 14181 +10184 10257 10258 10185 14181 14254 14255 14182 +10185 10258 10259 10186 14182 14255 14256 14183 +10186 10259 10260 10187 14183 14256 14257 14184 +10187 10260 10261 10188 14184 14257 14258 14185 +10188 10261 10262 10189 14185 14258 14259 14186 +10189 10262 10263 10190 14186 14259 14260 14187 +10190 10263 10264 10191 14187 14260 14261 14188 +10191 10264 10265 10192 14188 14261 14262 14189 +10192 10265 10266 10193 14189 14262 14263 14190 +10193 10266 10267 10194 14190 14263 14264 14191 +10194 10267 10268 10195 14191 14264 14265 14192 +10195 10268 10269 10196 14192 14265 14266 14193 +10196 10269 10270 10197 14193 14266 14267 14194 +10197 10270 10271 10198 14194 14267 14268 14195 +10198 10271 10272 10199 14195 14268 14269 14196 +10199 10272 10273 10200 14196 14269 14270 14197 +10200 10273 10274 10201 14197 14270 14271 14198 +10201 10274 10275 10202 14198 14271 14272 14199 +10202 10275 10276 10203 14199 14272 14273 14200 +10203 10276 10277 10204 14200 14273 14274 14201 +10204 10277 10278 10205 14201 14274 14275 14202 +10205 10278 10279 10206 14202 14275 14276 14203 +10206 10279 10280 10207 14203 14276 14277 14204 +10207 10280 10281 10208 14204 14277 14278 14205 +10208 10281 10282 10209 14205 14278 14279 14206 +10209 10282 10283 10210 14206 14279 14280 14207 +10210 10283 10284 10211 14207 14280 14281 14208 +10211 10284 10285 10212 14208 14281 14282 14209 +10212 10285 10286 10213 14209 14282 14283 14210 +10213 10286 10287 10214 14210 14283 14284 14211 +10214 10287 10288 10215 14211 14284 14285 14212 +10215 10288 10289 10216 14212 14285 14286 14213 +10216 10289 10290 10217 14213 14286 14287 14214 +10217 10290 10291 10218 14214 14287 14288 14215 +10218 10291 10292 10219 14215 14288 14289 14216 +10219 10292 10293 10220 14216 14289 14290 14217 +10220 10293 10294 10221 14217 14290 14291 14218 +10221 10294 10295 10222 14218 14291 14292 14219 +10222 10295 10296 10223 14219 14292 14293 14220 +10223 10296 10297 10224 14220 14293 14294 14221 +10224 10297 10298 10225 14221 14294 14295 14222 +10225 10298 10299 10226 14222 14295 14296 14223 +10226 10299 10300 10227 14223 14296 14297 14224 +10227 10300 10301 10228 14224 14297 14298 14225 +10228 10301 10302 10229 14225 14298 14299 14226 +10229 10302 10303 10230 14226 14299 14300 14227 +10230 10303 10304 10231 14227 14300 14301 14228 +10231 10304 10305 10232 14228 14301 14302 14229 +10232 10305 10306 10233 14229 14302 14303 14230 +10233 10306 10307 10234 14230 14303 14304 14231 +10234 10307 10308 10235 14231 14304 14305 14232 +10235 10308 10309 10236 14232 14305 14306 14233 +10236 10309 10310 10237 14233 14306 14307 14234 +10237 10310 10311 10238 14234 14307 14308 14235 +10238 10311 10312 10239 14235 14308 14309 14236 +10239 10312 10313 10240 14236 14309 14310 14237 +10240 10313 10314 10241 14237 14310 14311 14238 +10241 10314 10315 10242 14238 14311 14312 14239 +10242 10315 10316 10243 14239 14312 14313 14240 +10243 10316 10317 10244 14240 14313 14314 14241 +10245 10318 10319 10246 14242 14315 14316 14243 +10246 10319 10320 10247 14243 14316 14317 14244 +10247 10320 10321 10248 14244 14317 14318 14245 +10248 10321 10322 10249 14245 14318 14319 14246 +10249 10322 10323 10250 14246 14319 14320 14247 +10250 10323 10324 10251 14247 14320 14321 14248 +10251 10324 10325 10252 14248 14321 14322 14249 +10252 10325 10326 10253 14249 14322 14323 14250 +10253 10326 10327 10254 14250 14323 14324 14251 +10254 10327 10328 10255 14251 14324 14325 14252 +10255 10328 10329 10256 14252 14325 14326 14253 +10256 10329 10330 10257 14253 14326 14327 14254 +10257 10330 10331 10258 14254 14327 14328 14255 +10258 10331 10332 10259 14255 14328 14329 14256 +10259 10332 10333 10260 14256 14329 14330 14257 +10260 10333 10334 10261 14257 14330 14331 14258 +10261 10334 10335 10262 14258 14331 14332 14259 +10262 10335 10336 10263 14259 14332 14333 14260 +10263 10336 10337 10264 14260 14333 14334 14261 +10264 10337 10338 10265 14261 14334 14335 14262 +10265 10338 10339 10266 14262 14335 14336 14263 +10266 10339 10340 10267 14263 14336 14337 14264 +10267 10340 10341 10268 14264 14337 14338 14265 +10268 10341 10342 10269 14265 14338 14339 14266 +10269 10342 10343 10270 14266 14339 14340 14267 +10270 10343 10344 10271 14267 14340 14341 14268 +10271 10344 10345 10272 14268 14341 14342 14269 +10272 10345 10346 10273 14269 14342 14343 14270 +10273 10346 10347 10274 14270 14343 14344 14271 +10274 10347 10348 10275 14271 14344 14345 14272 +10275 10348 10349 10276 14272 14345 14346 14273 +10276 10349 10350 10277 14273 14346 14347 14274 +10277 10350 10351 10278 14274 14347 14348 14275 +10278 10351 10352 10279 14275 14348 14349 14276 +10279 10352 10353 10280 14276 14349 14350 14277 +10280 10353 10354 10281 14277 14350 14351 14278 +10281 10354 10355 10282 14278 14351 14352 14279 +10282 10355 10356 10283 14279 14352 14353 14280 +10283 10356 10357 10284 14280 14353 14354 14281 +10284 10357 10358 10285 14281 14354 14355 14282 +10285 10358 10359 10286 14282 14355 14356 14283 +10286 10359 10360 10287 14283 14356 14357 14284 +10287 10360 10361 10288 14284 14357 14358 14285 +10288 10361 10362 10289 14285 14358 14359 14286 +10289 10362 10363 10290 14286 14359 14360 14287 +10290 10363 10364 10291 14287 14360 14361 14288 +10291 10364 10365 10292 14288 14361 14362 14289 +10292 10365 10366 10293 14289 14362 14363 14290 +10293 10366 10367 10294 14290 14363 14364 14291 +10294 10367 10368 10295 14291 14364 14365 14292 +10295 10368 10369 10296 14292 14365 14366 14293 +10296 10369 10370 10297 14293 14366 14367 14294 +10297 10370 10371 10298 14294 14367 14368 14295 +10298 10371 10372 10299 14295 14368 14369 14296 +10299 10372 10373 10300 14296 14369 14370 14297 +10300 10373 10374 10301 14297 14370 14371 14298 +10301 10374 10375 10302 14298 14371 14372 14299 +10302 10375 10376 10303 14299 14372 14373 14300 +10303 10376 10377 10304 14300 14373 14374 14301 +10304 10377 10378 10305 14301 14374 14375 14302 +10305 10378 10379 10306 14302 14375 14376 14303 +10306 10379 10380 10307 14303 14376 14377 14304 +10307 10380 10381 10308 14304 14377 14378 14305 +10308 10381 10382 10309 14305 14378 14379 14306 +10309 10382 10383 10310 14306 14379 14380 14307 +10310 10383 10384 10311 14307 14380 14381 14308 +10311 10384 10385 10312 14308 14381 14382 14309 +10312 10385 10386 10313 14309 14382 14383 14310 +10313 10386 10387 10314 14310 14383 14384 14311 +10314 10387 10388 10315 14311 14384 14385 14312 +10315 10388 10389 10316 14312 14385 14386 14313 +10316 10389 10390 10317 14313 14386 14387 14314 +10318 10391 10392 10319 14315 14388 14389 14316 +10319 10392 10393 10320 14316 14389 14390 14317 +10320 10393 10394 10321 14317 14390 14391 14318 +10321 10394 10395 10322 14318 14391 14392 14319 +10322 10395 10396 10323 14319 14392 14393 14320 +10323 10396 10397 10324 14320 14393 14394 14321 +10324 10397 10398 10325 14321 14394 14395 14322 +10325 10398 10399 10326 14322 14395 14396 14323 +10326 10399 10400 10327 14323 14396 14397 14324 +10327 10400 10401 10328 14324 14397 14398 14325 +10328 10401 10402 10329 14325 14398 14399 14326 +10329 10402 10403 10330 14326 14399 14400 14327 +10330 10403 10404 10331 14327 14400 14401 14328 +10331 10404 10405 10332 14328 14401 14402 14329 +10332 10405 10406 10333 14329 14402 14403 14330 +10333 10406 10407 10334 14330 14403 14404 14331 +10334 10407 10408 10335 14331 14404 14405 14332 +10335 10408 10409 10336 14332 14405 14406 14333 +10336 10409 10410 10337 14333 14406 14407 14334 +10337 10410 10411 10338 14334 14407 14408 14335 +10338 10411 10412 10339 14335 14408 14409 14336 +10339 10412 10413 10340 14336 14409 14410 14337 +10340 10413 10414 10341 14337 14410 14411 14338 +10341 10414 10415 10342 14338 14411 14412 14339 +10342 10415 10416 10343 14339 14412 14413 14340 +10343 10416 10417 10344 14340 14413 14414 14341 +10344 10417 10418 10345 14341 14414 14415 14342 +10345 10418 10419 10346 14342 14415 14416 14343 +10346 10419 10420 10347 14343 14416 14417 14344 +10347 10420 10421 10348 14344 14417 14418 14345 +10348 10421 10422 10349 14345 14418 14419 14346 +10349 10422 10423 10350 14346 14419 14420 14347 +10350 10423 10424 10351 14347 14420 14421 14348 +10351 10424 10425 10352 14348 14421 14422 14349 +10352 10425 10426 10353 14349 14422 14423 14350 +10353 10426 10427 10354 14350 14423 14424 14351 +10354 10427 10428 10355 14351 14424 14425 14352 +10355 10428 10429 10356 14352 14425 14426 14353 +10356 10429 10430 10357 14353 14426 14427 14354 +10357 10430 10431 10358 14354 14427 14428 14355 +10358 10431 10432 10359 14355 14428 14429 14356 +10359 10432 10433 10360 14356 14429 14430 14357 +10360 10433 10434 10361 14357 14430 14431 14358 +10361 10434 10435 10362 14358 14431 14432 14359 +10362 10435 10436 10363 14359 14432 14433 14360 +10363 10436 10437 10364 14360 14433 14434 14361 +10364 10437 10438 10365 14361 14434 14435 14362 +10365 10438 10439 10366 14362 14435 14436 14363 +10366 10439 10440 10367 14363 14436 14437 14364 +10367 10440 10441 10368 14364 14437 14438 14365 +10368 10441 10442 10369 14365 14438 14439 14366 +10369 10442 10443 10370 14366 14439 14440 14367 +10370 10443 10444 10371 14367 14440 14441 14368 +10371 10444 10445 10372 14368 14441 14442 14369 +10372 10445 10446 10373 14369 14442 14443 14370 +10373 10446 10447 10374 14370 14443 14444 14371 +10374 10447 10448 10375 14371 14444 14445 14372 +10375 10448 10449 10376 14372 14445 14446 14373 +10376 10449 10450 10377 14373 14446 14447 14374 +10377 10450 10451 10378 14374 14447 14448 14375 +10378 10451 10452 10379 14375 14448 14449 14376 +10379 10452 10453 10380 14376 14449 14450 14377 +10380 10453 10454 10381 14377 14450 14451 14378 +10381 10454 10455 10382 14378 14451 14452 14379 +10382 10455 10456 10383 14379 14452 14453 14380 +10383 10456 10457 10384 14380 14453 14454 14381 +10384 10457 10458 10385 14381 14454 14455 14382 +10385 10458 10459 10386 14382 14455 14456 14383 +10386 10459 10460 10387 14383 14456 14457 14384 +10387 10460 10461 10388 14384 14457 14458 14385 +10388 10461 10462 10389 14385 14458 14459 14386 +10389 10462 10463 10390 14386 14459 14460 14387 +10464 10465 10466 10467 14461 14462 14463 14464 +10465 10468 10469 10466 14462 14465 14466 14463 +10466 10469 10470 10471 14463 14466 14467 14468 +10466 10471 10472 10467 14463 14468 14469 14464 +10468 10473 10474 10469 14465 14470 14471 14466 +10469 10474 10475 10470 14466 14471 14472 14467 +10470 10475 10476 10477 14467 14472 14473 14474 +10470 10477 10478 10471 14467 14474 14475 14468 +10471 10478 10479 10472 14468 14475 14476 14469 +10473 10480 10481 10474 14470 14477 14478 14471 +10474 10481 10482 10475 14471 14478 14479 14472 +10475 10482 10483 10476 14472 14479 14480 14473 +10476 10483 10484 10485 14473 14480 14481 14482 +10476 10485 10486 10477 14473 14482 14483 14474 +10477 10486 10487 10478 14474 14483 14484 14475 +10478 10487 10488 10479 14475 14484 14485 14476 +10480 10489 10490 10481 14477 14486 14487 14478 +10481 10490 10491 10482 14478 14487 14488 14479 +10482 10491 10492 10483 14479 14488 14489 14480 +10483 10492 10493 10484 14480 14489 14490 14481 +10484 10493 10494 10495 14481 14490 14491 14492 +10484 10495 10496 10485 14481 14492 14493 14482 +10485 10496 10497 10486 14482 14493 14494 14483 +10486 10497 10498 10487 14483 14494 14495 14484 +10487 10498 10499 10488 14484 14495 14496 14485 +10489 10500 10501 10490 14486 14497 14498 14487 +10490 10501 10502 10491 14487 14498 14499 14488 +10491 10502 10503 10492 14488 14499 14500 14489 +10492 10503 10504 10493 14489 14500 14501 14490 +10493 10504 10505 10494 14490 14501 14502 14491 +10494 10505 10506 10507 14491 14502 14503 14504 +10494 10507 10508 10495 14491 14504 14505 14492 +10495 10508 10509 10496 14492 14505 14506 14493 +10496 10509 10510 10497 14493 14506 14507 14494 +10497 10510 10511 10498 14494 14507 14508 14495 +10498 10511 10512 10499 14495 14508 14509 14496 +10500 10513 10514 10501 14497 14510 14511 14498 +10501 10514 10515 10502 14498 14511 14512 14499 +10502 10515 10516 10503 14499 14512 14513 14500 +10503 10516 10517 10504 14500 14513 14514 14501 +10504 10517 10518 10505 14501 14514 14515 14502 +10505 10518 10519 10506 14502 14515 14516 14503 +10506 10519 10520 10521 14503 14516 14517 14518 +10506 10521 10522 10507 14503 14518 14519 14504 +10507 10522 10523 10508 14504 14519 14520 14505 +10508 10523 10524 10509 14505 14520 14521 14506 +10509 10524 10525 10510 14506 14521 14522 14507 +10510 10525 10526 10511 14507 14522 14523 14508 +10511 10526 10527 10512 14508 14523 14524 14509 +10513 10528 10529 10514 14510 14525 14526 14511 +10514 10529 10530 10515 14511 14526 14527 14512 +10515 10530 10531 10516 14512 14527 14528 14513 +10516 10531 10532 10517 14513 14528 14529 14514 +10517 10532 10533 10518 14514 14529 14530 14515 +10518 10533 10534 10519 14515 14530 14531 14516 +10519 10534 10535 10520 14516 14531 14532 14517 +10520 10535 10536 10537 14517 14532 14533 14534 +10520 10537 10538 10521 14517 14534 14535 14518 +10521 10538 10539 10522 14518 14535 14536 14519 +10522 10539 10540 10523 14519 14536 14537 14520 +10523 10540 10541 10524 14520 14537 14538 14521 +10524 10541 10542 10525 14521 14538 14539 14522 +10525 10542 10543 10526 14522 14539 14540 14523 +10526 10543 10544 10527 14523 14540 14541 14524 +10528 10545 10546 10529 14525 14542 14543 14526 +10529 10546 10547 10530 14526 14543 14544 14527 +10530 10547 10548 10531 14527 14544 14545 14528 +10531 10548 10549 10532 14528 14545 14546 14529 +10532 10549 10550 10533 14529 14546 14547 14530 +10533 10550 10551 10534 14530 14547 14548 14531 +10534 10551 10552 10535 14531 14548 14549 14532 +10535 10552 10553 10536 14532 14549 14550 14533 +10536 10553 10554 10555 14533 14550 14551 14552 +10536 10555 10556 10537 14533 14552 14553 14534 +10537 10556 10557 10538 14534 14553 14554 14535 +10538 10557 10558 10539 14535 14554 14555 14536 +10539 10558 10559 10540 14536 14555 14556 14537 +10540 10559 10560 10541 14537 14556 14557 14538 +10541 10560 10561 10542 14538 14557 14558 14539 +10542 10561 10562 10543 14539 14558 14559 14540 +10543 10562 10563 10544 14540 14559 14560 14541 +10545 10564 10565 10546 14542 14561 14562 14543 +10546 10565 10566 10547 14543 14562 14563 14544 +10547 10566 10567 10548 14544 14563 14564 14545 +10548 10567 10568 10549 14545 14564 14565 14546 +10549 10568 10569 10550 14546 14565 14566 14547 +10550 10569 10570 10551 14547 14566 14567 14548 +10551 10570 10571 10552 14548 14567 14568 14549 +10552 10571 10572 10553 14549 14568 14569 14550 +10553 10572 10573 10554 14550 14569 14570 14551 +10554 10573 10574 10575 14551 14570 14571 14572 +10554 10575 10576 10555 14551 14572 14573 14552 +10555 10576 10577 10556 14552 14573 14574 14553 +10556 10577 10578 10557 14553 14574 14575 14554 +10557 10578 10579 10558 14554 14575 14576 14555 +10558 10579 10580 10559 14555 14576 14577 14556 +10559 10580 10581 10560 14556 14577 14578 14557 +10560 10581 10582 10561 14557 14578 14579 14558 +10561 10582 10583 10562 14558 14579 14580 14559 +10562 10583 10584 10563 14559 14580 14581 14560 +10564 10585 10586 10565 14561 14582 14583 14562 +10565 10586 10587 10566 14562 14583 14584 14563 +10566 10587 10588 10567 14563 14584 14585 14564 +10567 10588 10589 10568 14564 14585 14586 14565 +10568 10589 10590 10569 14565 14586 14587 14566 +10569 10590 10591 10570 14566 14587 14588 14567 +10570 10591 10592 10571 14567 14588 14589 14568 +10571 10592 10593 10572 14568 14589 14590 14569 +10572 10593 10594 10573 14569 14590 14591 14570 +10573 10594 10595 10574 14570 14591 14592 14571 +10574 10595 10596 10597 14571 14592 14593 14594 +10574 10597 10598 10575 14571 14594 14595 14572 +10575 10598 10599 10576 14572 14595 14596 14573 +10576 10599 10600 10577 14573 14596 14597 14574 +10577 10600 10601 10578 14574 14597 14598 14575 +10578 10601 10602 10579 14575 14598 14599 14576 +10579 10602 10603 10580 14576 14599 14600 14577 +10580 10603 10604 10581 14577 14600 14601 14578 +10581 10604 10605 10582 14578 14601 14602 14579 +10582 10605 10606 10583 14579 14602 14603 14580 +10583 10606 10607 10584 14580 14603 14604 14581 +10585 10608 10609 10586 14582 14605 14606 14583 +10586 10609 10610 10587 14583 14606 14607 14584 +10587 10610 10611 10588 14584 14607 14608 14585 +10588 10611 10612 10589 14585 14608 14609 14586 +10589 10612 10613 10590 14586 14609 14610 14587 +10590 10613 10614 10591 14587 14610 14611 14588 +10591 10614 10615 10592 14588 14611 14612 14589 +10592 10615 10616 10593 14589 14612 14613 14590 +10593 10616 10617 10594 14590 14613 14614 14591 +10594 10617 10618 10595 14591 14614 14615 14592 +10595 10618 10619 10596 14592 14615 14616 14593 +10596 10619 10620 10621 14593 14616 14617 14618 +10596 10621 10622 10597 14593 14618 14619 14594 +10597 10622 10623 10598 14594 14619 14620 14595 +10598 10623 10624 10599 14595 14620 14621 14596 +10599 10624 10625 10600 14596 14621 14622 14597 +10600 10625 10626 10601 14597 14622 14623 14598 +10601 10626 10627 10602 14598 14623 14624 14599 +10602 10627 10628 10603 14599 14624 14625 14600 +10603 10628 10629 10604 14600 14625 14626 14601 +10604 10629 10630 10605 14601 14626 14627 14602 +10605 10630 10631 10606 14602 14627 14628 14603 +10606 10631 10632 10607 14603 14628 14629 14604 +10608 10633 10634 10609 14605 14630 14631 14606 +10609 10634 10635 10610 14606 14631 14632 14607 +10610 10635 10636 10611 14607 14632 14633 14608 +10611 10636 10637 10612 14608 14633 14634 14609 +10612 10637 10638 10613 14609 14634 14635 14610 +10613 10638 10639 10614 14610 14635 14636 14611 +10614 10639 10640 10615 14611 14636 14637 14612 +10615 10640 10641 10616 14612 14637 14638 14613 +10616 10641 10642 10617 14613 14638 14639 14614 +10617 10642 10643 10618 14614 14639 14640 14615 +10618 10643 10644 10619 14615 14640 14641 14616 +10619 10644 10645 10620 14616 14641 14642 14617 +10620 10645 10646 10647 14617 14642 14643 14644 +10620 10647 10648 10621 14617 14644 14645 14618 +10621 10648 10649 10622 14618 14645 14646 14619 +10622 10649 10650 10623 14619 14646 14647 14620 +10623 10650 10651 10624 14620 14647 14648 14621 +10624 10651 10652 10625 14621 14648 14649 14622 +10625 10652 10653 10626 14622 14649 14650 14623 +10626 10653 10654 10627 14623 14650 14651 14624 +10627 10654 10655 10628 14624 14651 14652 14625 +10628 10655 10656 10629 14625 14652 14653 14626 +10629 10656 10657 10630 14626 14653 14654 14627 +10630 10657 10658 10631 14627 14654 14655 14628 +10631 10658 10659 10632 14628 14655 14656 14629 +10633 10660 10661 10634 14630 14657 14658 14631 +10634 10661 10662 10635 14631 14658 14659 14632 +10635 10662 10663 10636 14632 14659 14660 14633 +10636 10663 10664 10637 14633 14660 14661 14634 +10637 10664 10665 10638 14634 14661 14662 14635 +10638 10665 10666 10639 14635 14662 14663 14636 +10639 10666 10667 10640 14636 14663 14664 14637 +10640 10667 10668 10641 14637 14664 14665 14638 +10641 10668 10669 10642 14638 14665 14666 14639 +10642 10669 10670 10643 14639 14666 14667 14640 +10643 10670 10671 10644 14640 14667 14668 14641 +10644 10671 10672 10645 14641 14668 14669 14642 +10645 10672 10673 10646 14642 14669 14670 14643 +10646 10673 10674 10675 14643 14670 14671 14672 +10646 10675 10676 10647 14643 14672 14673 14644 +10647 10676 10677 10648 14644 14673 14674 14645 +10648 10677 10678 10649 14645 14674 14675 14646 +10649 10678 10679 10650 14646 14675 14676 14647 +10650 10679 10680 10651 14647 14676 14677 14648 +10651 10680 10681 10652 14648 14677 14678 14649 +10652 10681 10682 10653 14649 14678 14679 14650 +10653 10682 10683 10654 14650 14679 14680 14651 +10654 10683 10684 10655 14651 14680 14681 14652 +10655 10684 10685 10656 14652 14681 14682 14653 +10656 10685 10686 10657 14653 14682 14683 14654 +10657 10686 10687 10658 14654 14683 14684 14655 +10658 10687 10688 10659 14655 14684 14685 14656 +10660 10689 10690 10661 14657 14686 14687 14658 +10661 10690 10691 10662 14658 14687 14688 14659 +10662 10691 10692 10663 14659 14688 14689 14660 +10663 10692 10693 10664 14660 14689 14690 14661 +10664 10693 10694 10665 14661 14690 14691 14662 +10665 10694 10695 10666 14662 14691 14692 14663 +10666 10695 10696 10667 14663 14692 14693 14664 +10667 10696 10697 10668 14664 14693 14694 14665 +10668 10697 10698 10669 14665 14694 14695 14666 +10669 10698 10699 10670 14666 14695 14696 14667 +10670 10699 10700 10671 14667 14696 14697 14668 +10671 10700 10701 10672 14668 14697 14698 14669 +10672 10701 10702 10673 14669 14698 14699 14670 +10673 10702 10703 10674 14670 14699 14700 14671 +10674 10703 10704 10705 14671 14700 14701 14702 +10674 10705 10706 10675 14671 14702 14703 14672 +10675 10706 10707 10676 14672 14703 14704 14673 +10676 10707 10708 10677 14673 14704 14705 14674 +10677 10708 10709 10678 14674 14705 14706 14675 +10678 10709 10710 10679 14675 14706 14707 14676 +10679 10710 10711 10680 14676 14707 14708 14677 +10680 10711 10712 10681 14677 14708 14709 14678 +10681 10712 10713 10682 14678 14709 14710 14679 +10682 10713 10714 10683 14679 14710 14711 14680 +10683 10714 10715 10684 14680 14711 14712 14681 +10684 10715 10716 10685 14681 14712 14713 14682 +10685 10716 10717 10686 14682 14713 14714 14683 +10686 10717 10718 10687 14683 14714 14715 14684 +10687 10718 10719 10688 14684 14715 14716 14685 +10689 10720 10721 10690 14686 14717 14718 14687 +10690 10721 10722 10691 14687 14718 14719 14688 +10691 10722 10723 10692 14688 14719 14720 14689 +10692 10723 10724 10693 14689 14720 14721 14690 +10693 10724 10725 10694 14690 14721 14722 14691 +10694 10725 10726 10695 14691 14722 14723 14692 +10695 10726 10727 10696 14692 14723 14724 14693 +10696 10727 10728 10697 14693 14724 14725 14694 +10697 10728 10729 10698 14694 14725 14726 14695 +10698 10729 10730 10699 14695 14726 14727 14696 +10699 10730 10731 10700 14696 14727 14728 14697 +10700 10731 10732 10701 14697 14728 14729 14698 +10701 10732 10733 10702 14698 14729 14730 14699 +10702 10733 10734 10703 14699 14730 14731 14700 +10703 10734 10735 10704 14700 14731 14732 14701 +10704 10735 10736 10737 14701 14732 14733 14734 +10704 10737 10738 10705 14701 14734 14735 14702 +10705 10738 10739 10706 14702 14735 14736 14703 +10706 10739 10740 10707 14703 14736 14737 14704 +10707 10740 10741 10708 14704 14737 14738 14705 +10708 10741 10742 10709 14705 14738 14739 14706 +10709 10742 10743 10710 14706 14739 14740 14707 +10710 10743 10744 10711 14707 14740 14741 14708 +10711 10744 10745 10712 14708 14741 14742 14709 +10712 10745 10746 10713 14709 14742 14743 14710 +10713 10746 10747 10714 14710 14743 14744 14711 +10714 10747 10748 10715 14711 14744 14745 14712 +10715 10748 10749 10716 14712 14745 14746 14713 +10716 10749 10750 10717 14713 14746 14747 14714 +10717 10750 10751 10718 14714 14747 14748 14715 +10718 10751 10752 10719 14715 14748 14749 14716 +10720 10753 10754 10721 14717 14750 14751 14718 +10721 10754 10755 10722 14718 14751 14752 14719 +10722 10755 10756 10723 14719 14752 14753 14720 +10723 10756 10757 10724 14720 14753 14754 14721 +10724 10757 10758 10725 14721 14754 14755 14722 +10725 10758 10759 10726 14722 14755 14756 14723 +10726 10759 10760 10727 14723 14756 14757 14724 +10727 10760 10761 10728 14724 14757 14758 14725 +10728 10761 10762 10729 14725 14758 14759 14726 +10729 10762 10763 10730 14726 14759 14760 14727 +10730 10763 10764 10731 14727 14760 14761 14728 +10731 10764 10765 10732 14728 14761 14762 14729 +10732 10765 10766 10733 14729 14762 14763 14730 +10733 10766 10767 10734 14730 14763 14764 14731 +10734 10767 10768 10735 14731 14764 14765 14732 +10735 10768 10769 10736 14732 14765 14766 14733 +10736 10769 10770 10771 14733 14766 14767 14768 +10736 10771 10772 10737 14733 14768 14769 14734 +10737 10772 10773 10738 14734 14769 14770 14735 +10738 10773 10774 10739 14735 14770 14771 14736 +10739 10774 10775 10740 14736 14771 14772 14737 +10740 10775 10776 10741 14737 14772 14773 14738 +10741 10776 10777 10742 14738 14773 14774 14739 +10742 10777 10778 10743 14739 14774 14775 14740 +10743 10778 10779 10744 14740 14775 14776 14741 +10744 10779 10780 10745 14741 14776 14777 14742 +10745 10780 10781 10746 14742 14777 14778 14743 +10746 10781 10782 10747 14743 14778 14779 14744 +10747 10782 10783 10748 14744 14779 14780 14745 +10748 10783 10784 10749 14745 14780 14781 14746 +10749 10784 10785 10750 14746 14781 14782 14747 +10750 10785 10786 10751 14747 14782 14783 14748 +10751 10786 10787 10752 14748 14783 14784 14749 +10753 10788 10789 10754 14750 14785 14786 14751 +10754 10789 10790 10755 14751 14786 14787 14752 +10755 10790 10791 10756 14752 14787 14788 14753 +10756 10791 10792 10757 14753 14788 14789 14754 +10757 10792 10793 10758 14754 14789 14790 14755 +10758 10793 10794 10759 14755 14790 14791 14756 +10759 10794 10795 10760 14756 14791 14792 14757 +10760 10795 10796 10761 14757 14792 14793 14758 +10761 10796 10797 10762 14758 14793 14794 14759 +10762 10797 10798 10763 14759 14794 14795 14760 +10763 10798 10799 10764 14760 14795 14796 14761 +10764 10799 10800 10765 14761 14796 14797 14762 +10765 10800 10801 10766 14762 14797 14798 14763 +10766 10801 10802 10767 14763 14798 14799 14764 +10767 10802 10803 10768 14764 14799 14800 14765 +10768 10803 10804 10769 14765 14800 14801 14766 +10769 10804 10805 10770 14766 14801 14802 14767 +10770 10805 10806 10807 14767 14802 14803 14804 +10770 10807 10808 10771 14767 14804 14805 14768 +10771 10808 10809 10772 14768 14805 14806 14769 +10772 10809 10810 10773 14769 14806 14807 14770 +10773 10810 10811 10774 14770 14807 14808 14771 +10774 10811 10812 10775 14771 14808 14809 14772 +10775 10812 10813 10776 14772 14809 14810 14773 +10776 10813 10814 10777 14773 14810 14811 14774 +10777 10814 10815 10778 14774 14811 14812 14775 +10778 10815 10816 10779 14775 14812 14813 14776 +10779 10816 10817 10780 14776 14813 14814 14777 +10780 10817 10818 10781 14777 14814 14815 14778 +10781 10818 10819 10782 14778 14815 14816 14779 +10782 10819 10820 10783 14779 14816 14817 14780 +10783 10820 10821 10784 14780 14817 14818 14781 +10784 10821 10822 10785 14781 14818 14819 14782 +10785 10822 10823 10786 14782 14819 14820 14783 +10786 10823 10824 10787 14783 14820 14821 14784 +10788 10825 10826 10789 14785 14822 14823 14786 +10789 10826 10827 10790 14786 14823 14824 14787 +10790 10827 10828 10791 14787 14824 14825 14788 +10791 10828 10829 10792 14788 14825 14826 14789 +10792 10829 10830 10793 14789 14826 14827 14790 +10793 10830 10831 10794 14790 14827 14828 14791 +10794 10831 10832 10795 14791 14828 14829 14792 +10795 10832 10833 10796 14792 14829 14830 14793 +10796 10833 10834 10797 14793 14830 14831 14794 +10797 10834 10835 10798 14794 14831 14832 14795 +10798 10835 10836 10799 14795 14832 14833 14796 +10799 10836 10837 10800 14796 14833 14834 14797 +10800 10837 10838 10801 14797 14834 14835 14798 +10801 10838 10839 10802 14798 14835 14836 14799 +10802 10839 10840 10803 14799 14836 14837 14800 +10803 10840 10841 10804 14800 14837 14838 14801 +10804 10841 10842 10805 14801 14838 14839 14802 +10805 10842 10843 10806 14802 14839 14840 14803 +10806 10843 10844 10845 14803 14840 14841 14842 +10806 10845 10846 10807 14803 14842 14843 14804 +10807 10846 10847 10808 14804 14843 14844 14805 +10808 10847 10848 10809 14805 14844 14845 14806 +10809 10848 10849 10810 14806 14845 14846 14807 +10810 10849 10850 10811 14807 14846 14847 14808 +10811 10850 10851 10812 14808 14847 14848 14809 +10812 10851 10852 10813 14809 14848 14849 14810 +10813 10852 10853 10814 14810 14849 14850 14811 +10814 10853 10854 10815 14811 14850 14851 14812 +10815 10854 10855 10816 14812 14851 14852 14813 +10816 10855 10856 10817 14813 14852 14853 14814 +10817 10856 10857 10818 14814 14853 14854 14815 +10818 10857 10858 10819 14815 14854 14855 14816 +10819 10858 10859 10820 14816 14855 14856 14817 +10820 10859 10860 10821 14817 14856 14857 14818 +10821 10860 10861 10822 14818 14857 14858 14819 +10822 10861 10862 10823 14819 14858 14859 14820 +10823 10862 10863 10824 14820 14859 14860 14821 +10825 10864 10865 10826 14822 14861 14862 14823 +10826 10865 10866 10827 14823 14862 14863 14824 +10827 10866 10867 10828 14824 14863 14864 14825 +10828 10867 10868 10829 14825 14864 14865 14826 +10829 10868 10869 10830 14826 14865 14866 14827 +10830 10869 10870 10831 14827 14866 14867 14828 +10831 10870 10871 10832 14828 14867 14868 14829 +10832 10871 10872 10833 14829 14868 14869 14830 +10833 10872 10873 10834 14830 14869 14870 14831 +10834 10873 10874 10835 14831 14870 14871 14832 +10835 10874 10875 10836 14832 14871 14872 14833 +10836 10875 10876 10837 14833 14872 14873 14834 +10837 10876 10877 10838 14834 14873 14874 14835 +10838 10877 10878 10839 14835 14874 14875 14836 +10839 10878 10879 10840 14836 14875 14876 14837 +10840 10879 10880 10841 14837 14876 14877 14838 +10841 10880 10881 10842 14838 14877 14878 14839 +10842 10881 10882 10843 14839 14878 14879 14840 +10843 10882 10883 10844 14840 14879 14880 14841 +10844 10883 10884 10885 14841 14880 14881 14882 +10844 10885 10886 10845 14841 14882 14883 14842 +10845 10886 10887 10846 14842 14883 14884 14843 +10846 10887 10888 10847 14843 14884 14885 14844 +10847 10888 10889 10848 14844 14885 14886 14845 +10848 10889 10890 10849 14845 14886 14887 14846 +10849 10890 10891 10850 14846 14887 14888 14847 +10850 10891 10892 10851 14847 14888 14889 14848 +10851 10892 10893 10852 14848 14889 14890 14849 +10852 10893 10894 10853 14849 14890 14891 14850 +10853 10894 10895 10854 14850 14891 14892 14851 +10854 10895 10896 10855 14851 14892 14893 14852 +10855 10896 10897 10856 14852 14893 14894 14853 +10856 10897 10898 10857 14853 14894 14895 14854 +10857 10898 10899 10858 14854 14895 14896 14855 +10858 10899 10900 10859 14855 14896 14897 14856 +10859 10900 10901 10860 14856 14897 14898 14857 +10860 10901 10902 10861 14857 14898 14899 14858 +10861 10902 10903 10862 14858 14899 14900 14859 +10862 10903 10904 10863 14859 14900 14901 14860 +10864 10905 10906 10865 14861 14902 14903 14862 +10865 10906 10907 10866 14862 14903 14904 14863 +10866 10907 10908 10867 14863 14904 14905 14864 +10867 10908 10909 10868 14864 14905 14906 14865 +10868 10909 10910 10869 14865 14906 14907 14866 +10869 10910 10911 10870 14866 14907 14908 14867 +10870 10911 10912 10871 14867 14908 14909 14868 +10871 10912 10913 10872 14868 14909 14910 14869 +10872 10913 10914 10873 14869 14910 14911 14870 +10873 10914 10915 10874 14870 14911 14912 14871 +10874 10915 10916 10875 14871 14912 14913 14872 +10875 10916 10917 10876 14872 14913 14914 14873 +10876 10917 10918 10877 14873 14914 14915 14874 +10877 10918 10919 10878 14874 14915 14916 14875 +10878 10919 10920 10879 14875 14916 14917 14876 +10879 10920 10921 10880 14876 14917 14918 14877 +10880 10921 10922 10881 14877 14918 14919 14878 +10881 10922 10923 10882 14878 14919 14920 14879 +10882 10923 10924 10883 14879 14920 14921 14880 +10883 10924 10925 10884 14880 14921 14922 14881 +10884 10925 10926 10927 14881 14922 14923 14924 +10884 10927 10928 10885 14881 14924 14925 14882 +10885 10928 10929 10886 14882 14925 14926 14883 +10886 10929 10930 10887 14883 14926 14927 14884 +10887 10930 10931 10888 14884 14927 14928 14885 +10888 10931 10932 10889 14885 14928 14929 14886 +10889 10932 10933 10890 14886 14929 14930 14887 +10890 10933 10934 10891 14887 14930 14931 14888 +10891 10934 10935 10892 14888 14931 14932 14889 +10892 10935 10936 10893 14889 14932 14933 14890 +10893 10936 10937 10894 14890 14933 14934 14891 +10894 10937 10938 10895 14891 14934 14935 14892 +10895 10938 10939 10896 14892 14935 14936 14893 +10896 10939 10940 10897 14893 14936 14937 14894 +10897 10940 10941 10898 14894 14937 14938 14895 +10898 10941 10942 10899 14895 14938 14939 14896 +10899 10942 10943 10900 14896 14939 14940 14897 +10900 10943 10944 10901 14897 14940 14941 14898 +10901 10944 10945 10902 14898 14941 14942 14899 +10902 10945 10946 10903 14899 14942 14943 14900 +10903 10946 10947 10904 14900 14943 14944 14901 +10905 10948 10949 10906 14902 14945 14946 14903 +10906 10949 10950 10907 14903 14946 14947 14904 +10907 10950 10951 10908 14904 14947 14948 14905 +10908 10951 10952 10909 14905 14948 14949 14906 +10909 10952 10953 10910 14906 14949 14950 14907 +10910 10953 10954 10911 14907 14950 14951 14908 +10911 10954 10955 10912 14908 14951 14952 14909 +10912 10955 10956 10913 14909 14952 14953 14910 +10913 10956 10957 10914 14910 14953 14954 14911 +10914 10957 10958 10915 14911 14954 14955 14912 +10915 10958 10959 10916 14912 14955 14956 14913 +10916 10959 10960 10917 14913 14956 14957 14914 +10917 10960 10961 10918 14914 14957 14958 14915 +10918 10961 10962 10919 14915 14958 14959 14916 +10919 10962 10963 10920 14916 14959 14960 14917 +10920 10963 10964 10921 14917 14960 14961 14918 +10921 10964 10965 10922 14918 14961 14962 14919 +10922 10965 10966 10923 14919 14962 14963 14920 +10923 10966 10967 10924 14920 14963 14964 14921 +10924 10967 10968 10925 14921 14964 14965 14922 +10925 10968 10969 10926 14922 14965 14966 14923 +10926 10969 10970 10971 14923 14966 14967 14968 +10926 10971 10972 10927 14923 14968 14969 14924 +10927 10972 10973 10928 14924 14969 14970 14925 +10928 10973 10974 10929 14925 14970 14971 14926 +10929 10974 10975 10930 14926 14971 14972 14927 +10930 10975 10976 10931 14927 14972 14973 14928 +10931 10976 10977 10932 14928 14973 14974 14929 +10932 10977 10978 10933 14929 14974 14975 14930 +10933 10978 10979 10934 14930 14975 14976 14931 +10934 10979 10980 10935 14931 14976 14977 14932 +10935 10980 10981 10936 14932 14977 14978 14933 +10936 10981 10982 10937 14933 14978 14979 14934 +10937 10982 10983 10938 14934 14979 14980 14935 +10938 10983 10984 10939 14935 14980 14981 14936 +10939 10984 10985 10940 14936 14981 14982 14937 +10940 10985 10986 10941 14937 14982 14983 14938 +10941 10986 10987 10942 14938 14983 14984 14939 +10942 10987 10988 10943 14939 14984 14985 14940 +10943 10988 10989 10944 14940 14985 14986 14941 +10944 10989 10990 10945 14941 14986 14987 14942 +10945 10990 10991 10946 14942 14987 14988 14943 +10946 10991 10992 10947 14943 14988 14989 14944 +10948 10993 10994 10949 14945 14990 14991 14946 +10949 10994 10995 10950 14946 14991 14992 14947 +10950 10995 10996 10951 14947 14992 14993 14948 +10951 10996 10997 10952 14948 14993 14994 14949 +10952 10997 10998 10953 14949 14994 14995 14950 +10953 10998 10999 10954 14950 14995 14996 14951 +10954 10999 11000 10955 14951 14996 14997 14952 +10955 11000 11001 10956 14952 14997 14998 14953 +10956 11001 11002 10957 14953 14998 14999 14954 +10957 11002 11003 10958 14954 14999 15000 14955 +10958 11003 11004 10959 14955 15000 15001 14956 +10959 11004 11005 10960 14956 15001 15002 14957 +10960 11005 11006 10961 14957 15002 15003 14958 +10961 11006 11007 10962 14958 15003 15004 14959 +10962 11007 11008 10963 14959 15004 15005 14960 +10963 11008 11009 10964 14960 15005 15006 14961 +10964 11009 11010 10965 14961 15006 15007 14962 +10965 11010 11011 10966 14962 15007 15008 14963 +10966 11011 11012 10967 14963 15008 15009 14964 +10967 11012 11013 10968 14964 15009 15010 14965 +10968 11013 11014 10969 14965 15010 15011 14966 +10969 11014 11015 10970 14966 15011 15012 14967 +10970 11015 11016 11017 14967 15012 15013 15014 +10970 11017 11018 10971 14967 15014 15015 14968 +10971 11018 11019 10972 14968 15015 15016 14969 +10972 11019 11020 10973 14969 15016 15017 14970 +10973 11020 11021 10974 14970 15017 15018 14971 +10974 11021 11022 10975 14971 15018 15019 14972 +10975 11022 11023 10976 14972 15019 15020 14973 +10976 11023 11024 10977 14973 15020 15021 14974 +10977 11024 11025 10978 14974 15021 15022 14975 +10978 11025 11026 10979 14975 15022 15023 14976 +10979 11026 11027 10980 14976 15023 15024 14977 +10980 11027 11028 10981 14977 15024 15025 14978 +10981 11028 11029 10982 14978 15025 15026 14979 +10982 11029 11030 10983 14979 15026 15027 14980 +10983 11030 11031 10984 14980 15027 15028 14981 +10984 11031 11032 10985 14981 15028 15029 14982 +10985 11032 11033 10986 14982 15029 15030 14983 +10986 11033 11034 10987 14983 15030 15031 14984 +10987 11034 11035 10988 14984 15031 15032 14985 +10988 11035 11036 10989 14985 15032 15033 14986 +10989 11036 11037 10990 14986 15033 15034 14987 +10990 11037 11038 10991 14987 15034 15035 14988 +10991 11038 11039 10992 14988 15035 15036 14989 +10993 11040 11041 10994 14990 15037 15038 14991 +10994 11041 11042 10995 14991 15038 15039 14992 +10995 11042 11043 10996 14992 15039 15040 14993 +10996 11043 11044 10997 14993 15040 15041 14994 +10997 11044 11045 10998 14994 15041 15042 14995 +10998 11045 11046 10999 14995 15042 15043 14996 +10999 11046 11047 11000 14996 15043 15044 14997 +11000 11047 11048 11001 14997 15044 15045 14998 +11001 11048 11049 11002 14998 15045 15046 14999 +11002 11049 11050 11003 14999 15046 15047 15000 +11003 11050 11051 11004 15000 15047 15048 15001 +11004 11051 11052 11005 15001 15048 15049 15002 +11005 11052 11053 11006 15002 15049 15050 15003 +11006 11053 11054 11007 15003 15050 15051 15004 +11007 11054 11055 11008 15004 15051 15052 15005 +11008 11055 11056 11009 15005 15052 15053 15006 +11009 11056 11057 11010 15006 15053 15054 15007 +11010 11057 11058 11011 15007 15054 15055 15008 +11011 11058 11059 11012 15008 15055 15056 15009 +11012 11059 11060 11013 15009 15056 15057 15010 +11013 11060 11061 11014 15010 15057 15058 15011 +11014 11061 11062 11015 15011 15058 15059 15012 +11015 11062 11063 11016 15012 15059 15060 15013 +11016 11063 11064 11065 15013 15060 15061 15062 +11016 11065 11066 11017 15013 15062 15063 15014 +11017 11066 11067 11018 15014 15063 15064 15015 +11018 11067 11068 11019 15015 15064 15065 15016 +11019 11068 11069 11020 15016 15065 15066 15017 +11020 11069 11070 11021 15017 15066 15067 15018 +11021 11070 11071 11022 15018 15067 15068 15019 +11022 11071 11072 11023 15019 15068 15069 15020 +11023 11072 11073 11024 15020 15069 15070 15021 +11024 11073 11074 11025 15021 15070 15071 15022 +11025 11074 11075 11026 15022 15071 15072 15023 +11026 11075 11076 11027 15023 15072 15073 15024 +11027 11076 11077 11028 15024 15073 15074 15025 +11028 11077 11078 11029 15025 15074 15075 15026 +11029 11078 11079 11030 15026 15075 15076 15027 +11030 11079 11080 11031 15027 15076 15077 15028 +11031 11080 11081 11032 15028 15077 15078 15029 +11032 11081 11082 11033 15029 15078 15079 15030 +11033 11082 11083 11034 15030 15079 15080 15031 +11034 11083 11084 11035 15031 15080 15081 15032 +11035 11084 11085 11036 15032 15081 15082 15033 +11036 11085 11086 11037 15033 15082 15083 15034 +11037 11086 11087 11038 15034 15083 15084 15035 +11038 11087 11088 11039 15035 15084 15085 15036 +11040 11089 11090 11041 15037 15086 15087 15038 +11041 11090 11091 11042 15038 15087 15088 15039 +11042 11091 11092 11043 15039 15088 15089 15040 +11043 11092 11093 11044 15040 15089 15090 15041 +11044 11093 11094 11045 15041 15090 15091 15042 +11045 11094 11095 11046 15042 15091 15092 15043 +11046 11095 11096 11047 15043 15092 15093 15044 +11047 11096 11097 11048 15044 15093 15094 15045 +11048 11097 11098 11049 15045 15094 15095 15046 +11049 11098 11099 11050 15046 15095 15096 15047 +11050 11099 11100 11051 15047 15096 15097 15048 +11051 11100 11101 11052 15048 15097 15098 15049 +11052 11101 11102 11053 15049 15098 15099 15050 +11053 11102 11103 11054 15050 15099 15100 15051 +11054 11103 11104 11055 15051 15100 15101 15052 +11055 11104 11105 11056 15052 15101 15102 15053 +11056 11105 11106 11057 15053 15102 15103 15054 +11057 11106 11107 11058 15054 15103 15104 15055 +11058 11107 11108 11059 15055 15104 15105 15056 +11059 11108 11109 11060 15056 15105 15106 15057 +11060 11109 11110 11061 15057 15106 15107 15058 +11061 11110 11111 11062 15058 15107 15108 15059 +11062 11111 11112 11063 15059 15108 15109 15060 +11063 11112 11113 11064 15060 15109 15110 15061 +11064 11113 11114 11115 15061 15110 15111 15112 +11064 11115 11116 11065 15061 15112 15113 15062 +11065 11116 11117 11066 15062 15113 15114 15063 +11066 11117 11118 11067 15063 15114 15115 15064 +11067 11118 11119 11068 15064 15115 15116 15065 +11068 11119 11120 11069 15065 15116 15117 15066 +11069 11120 11121 11070 15066 15117 15118 15067 +11070 11121 11122 11071 15067 15118 15119 15068 +11071 11122 11123 11072 15068 15119 15120 15069 +11072 11123 11124 11073 15069 15120 15121 15070 +11073 11124 11125 11074 15070 15121 15122 15071 +11074 11125 11126 11075 15071 15122 15123 15072 +11075 11126 11127 11076 15072 15123 15124 15073 +11076 11127 11128 11077 15073 15124 15125 15074 +11077 11128 11129 11078 15074 15125 15126 15075 +11078 11129 11130 11079 15075 15126 15127 15076 +11079 11130 11131 11080 15076 15127 15128 15077 +11080 11131 11132 11081 15077 15128 15129 15078 +11081 11132 11133 11082 15078 15129 15130 15079 +11082 11133 11134 11083 15079 15130 15131 15080 +11083 11134 11135 11084 15080 15131 15132 15081 +11084 11135 11136 11085 15081 15132 15133 15082 +11085 11136 11137 11086 15082 15133 15134 15083 +11086 11137 11138 11087 15083 15134 15135 15084 +11087 11138 11139 11088 15084 15135 15136 15085 +11089 11140 11141 11090 15086 15137 15138 15087 +11090 11141 11142 11091 15087 15138 15139 15088 +11091 11142 11143 11092 15088 15139 15140 15089 +11092 11143 11144 11093 15089 15140 15141 15090 +11093 11144 11145 11094 15090 15141 15142 15091 +11094 11145 11146 11095 15091 15142 15143 15092 +11095 11146 11147 11096 15092 15143 15144 15093 +11096 11147 11148 11097 15093 15144 15145 15094 +11097 11148 11149 11098 15094 15145 15146 15095 +11098 11149 11150 11099 15095 15146 15147 15096 +11099 11150 11151 11100 15096 15147 15148 15097 +11100 11151 11152 11101 15097 15148 15149 15098 +11101 11152 11153 11102 15098 15149 15150 15099 +11102 11153 11154 11103 15099 15150 15151 15100 +11103 11154 11155 11104 15100 15151 15152 15101 +11104 11155 11156 11105 15101 15152 15153 15102 +11105 11156 11157 11106 15102 15153 15154 15103 +11106 11157 11158 11107 15103 15154 15155 15104 +11107 11158 11159 11108 15104 15155 15156 15105 +11108 11159 11160 11109 15105 15156 15157 15106 +11109 11160 11161 11110 15106 15157 15158 15107 +11110 11161 11162 11111 15107 15158 15159 15108 +11111 11162 11163 11112 15108 15159 15160 15109 +11112 11163 11164 11113 15109 15160 15161 15110 +11113 11164 11165 11114 15110 15161 15162 15111 +11114 11165 11166 11167 15111 15162 15163 15164 +11114 11167 11168 11115 15111 15164 15165 15112 +11115 11168 11169 11116 15112 15165 15166 15113 +11116 11169 11170 11117 15113 15166 15167 15114 +11117 11170 11171 11118 15114 15167 15168 15115 +11118 11171 11172 11119 15115 15168 15169 15116 +11119 11172 11173 11120 15116 15169 15170 15117 +11120 11173 11174 11121 15117 15170 15171 15118 +11121 11174 11175 11122 15118 15171 15172 15119 +11122 11175 11176 11123 15119 15172 15173 15120 +11123 11176 11177 11124 15120 15173 15174 15121 +11124 11177 11178 11125 15121 15174 15175 15122 +11125 11178 11179 11126 15122 15175 15176 15123 +11126 11179 11180 11127 15123 15176 15177 15124 +11127 11180 11181 11128 15124 15177 15178 15125 +11128 11181 11182 11129 15125 15178 15179 15126 +11129 11182 11183 11130 15126 15179 15180 15127 +11130 11183 11184 11131 15127 15180 15181 15128 +11131 11184 11185 11132 15128 15181 15182 15129 +11132 11185 11186 11133 15129 15182 15183 15130 +11133 11186 11187 11134 15130 15183 15184 15131 +11134 11187 11188 11135 15131 15184 15185 15132 +11135 11188 11189 11136 15132 15185 15186 15133 +11136 11189 11190 11137 15133 15186 15187 15134 +11137 11190 11191 11138 15134 15187 15188 15135 +11138 11191 11192 11139 15135 15188 15189 15136 +11140 11193 11194 11141 15137 15190 15191 15138 +11141 11194 11195 11142 15138 15191 15192 15139 +11142 11195 11196 11143 15139 15192 15193 15140 +11143 11196 11197 11144 15140 15193 15194 15141 +11144 11197 11198 11145 15141 15194 15195 15142 +11145 11198 11199 11146 15142 15195 15196 15143 +11146 11199 11200 11147 15143 15196 15197 15144 +11147 11200 11201 11148 15144 15197 15198 15145 +11148 11201 11202 11149 15145 15198 15199 15146 +11149 11202 11203 11150 15146 15199 15200 15147 +11150 11203 11204 11151 15147 15200 15201 15148 +11151 11204 11205 11152 15148 15201 15202 15149 +11152 11205 11206 11153 15149 15202 15203 15150 +11153 11206 11207 11154 15150 15203 15204 15151 +11154 11207 11208 11155 15151 15204 15205 15152 +11155 11208 11209 11156 15152 15205 15206 15153 +11156 11209 11210 11157 15153 15206 15207 15154 +11157 11210 11211 11158 15154 15207 15208 15155 +11158 11211 11212 11159 15155 15208 15209 15156 +11159 11212 11213 11160 15156 15209 15210 15157 +11160 11213 11214 11161 15157 15210 15211 15158 +11161 11214 11215 11162 15158 15211 15212 15159 +11162 11215 11216 11163 15159 15212 15213 15160 +11163 11216 11217 11164 15160 15213 15214 15161 +11164 11217 11218 11165 15161 15214 15215 15162 +11165 11218 11219 11166 15162 15215 15216 15163 +11166 11219 11220 11221 15163 15216 15217 15218 +11166 11221 11222 11167 15163 15218 15219 15164 +11167 11222 11223 11168 15164 15219 15220 15165 +11168 11223 11224 11169 15165 15220 15221 15166 +11169 11224 11225 11170 15166 15221 15222 15167 +11170 11225 11226 11171 15167 15222 15223 15168 +11171 11226 11227 11172 15168 15223 15224 15169 +11172 11227 11228 11173 15169 15224 15225 15170 +11173 11228 11229 11174 15170 15225 15226 15171 +11174 11229 11230 11175 15171 15226 15227 15172 +11175 11230 11231 11176 15172 15227 15228 15173 +11176 11231 11232 11177 15173 15228 15229 15174 +11177 11232 11233 11178 15174 15229 15230 15175 +11178 11233 11234 11179 15175 15230 15231 15176 +11179 11234 11235 11180 15176 15231 15232 15177 +11180 11235 11236 11181 15177 15232 15233 15178 +11181 11236 11237 11182 15178 15233 15234 15179 +11182 11237 11238 11183 15179 15234 15235 15180 +11183 11238 11239 11184 15180 15235 15236 15181 +11184 11239 11240 11185 15181 15236 15237 15182 +11185 11240 11241 11186 15182 15237 15238 15183 +11186 11241 11242 11187 15183 15238 15239 15184 +11187 11242 11243 11188 15184 15239 15240 15185 +11188 11243 11244 11189 15185 15240 15241 15186 +11189 11244 11245 11190 15186 15241 15242 15187 +11190 11245 11246 11191 15187 15242 15243 15188 +11191 11246 11247 11192 15188 15243 15244 15189 +11193 11248 11249 11194 15190 15245 15246 15191 +11194 11249 11250 11195 15191 15246 15247 15192 +11195 11250 11251 11196 15192 15247 15248 15193 +11196 11251 11252 11197 15193 15248 15249 15194 +11197 11252 11253 11198 15194 15249 15250 15195 +11198 11253 11254 11199 15195 15250 15251 15196 +11199 11254 11255 11200 15196 15251 15252 15197 +11200 11255 11256 11201 15197 15252 15253 15198 +11201 11256 11257 11202 15198 15253 15254 15199 +11202 11257 11258 11203 15199 15254 15255 15200 +11203 11258 11259 11204 15200 15255 15256 15201 +11204 11259 11260 11205 15201 15256 15257 15202 +11205 11260 11261 11206 15202 15257 15258 15203 +11206 11261 11262 11207 15203 15258 15259 15204 +11207 11262 11263 11208 15204 15259 15260 15205 +11208 11263 11264 11209 15205 15260 15261 15206 +11209 11264 11265 11210 15206 15261 15262 15207 +11210 11265 11266 11211 15207 15262 15263 15208 +11211 11266 11267 11212 15208 15263 15264 15209 +11212 11267 11268 11213 15209 15264 15265 15210 +11213 11268 11269 11214 15210 15265 15266 15211 +11214 11269 11270 11215 15211 15266 15267 15212 +11215 11270 11271 11216 15212 15267 15268 15213 +11216 11271 11272 11217 15213 15268 15269 15214 +11217 11272 11273 11218 15214 15269 15270 15215 +11218 11273 11274 11219 15215 15270 15271 15216 +11219 11274 11275 11220 15216 15271 15272 15217 +11220 11275 11276 11277 15217 15272 15273 15274 +11220 11277 11278 11221 15217 15274 15275 15218 +11221 11278 11279 11222 15218 15275 15276 15219 +11222 11279 11280 11223 15219 15276 15277 15220 +11223 11280 11281 11224 15220 15277 15278 15221 +11224 11281 11282 11225 15221 15278 15279 15222 +11225 11282 11283 11226 15222 15279 15280 15223 +11226 11283 11284 11227 15223 15280 15281 15224 +11227 11284 11285 11228 15224 15281 15282 15225 +11228 11285 11286 11229 15225 15282 15283 15226 +11229 11286 11287 11230 15226 15283 15284 15227 +11230 11287 11288 11231 15227 15284 15285 15228 +11231 11288 11289 11232 15228 15285 15286 15229 +11232 11289 11290 11233 15229 15286 15287 15230 +11233 11290 11291 11234 15230 15287 15288 15231 +11234 11291 11292 11235 15231 15288 15289 15232 +11235 11292 11293 11236 15232 15289 15290 15233 +11236 11293 11294 11237 15233 15290 15291 15234 +11237 11294 11295 11238 15234 15291 15292 15235 +11238 11295 11296 11239 15235 15292 15293 15236 +11239 11296 11297 11240 15236 15293 15294 15237 +11240 11297 11298 11241 15237 15294 15295 15238 +11241 11298 11299 11242 15238 15295 15296 15239 +11242 11299 11300 11243 15239 15296 15297 15240 +11243 11300 11301 11244 15240 15297 15298 15241 +11244 11301 11302 11245 15241 15298 15299 15242 +11245 11302 11303 11246 15242 15299 15300 15243 +11246 11303 11304 11247 15243 15300 15301 15244 +11248 11305 11306 11249 15245 15302 15303 15246 +11249 11306 11307 11250 15246 15303 15304 15247 +11250 11307 11308 11251 15247 15304 15305 15248 +11251 11308 11309 11252 15248 15305 15306 15249 +11252 11309 11310 11253 15249 15306 15307 15250 +11253 11310 11311 11254 15250 15307 15308 15251 +11254 11311 11312 11255 15251 15308 15309 15252 +11255 11312 11313 11256 15252 15309 15310 15253 +11256 11313 11314 11257 15253 15310 15311 15254 +11257 11314 11315 11258 15254 15311 15312 15255 +11258 11315 11316 11259 15255 15312 15313 15256 +11259 11316 11317 11260 15256 15313 15314 15257 +11260 11317 11318 11261 15257 15314 15315 15258 +11261 11318 11319 11262 15258 15315 15316 15259 +11262 11319 11320 11263 15259 15316 15317 15260 +11263 11320 11321 11264 15260 15317 15318 15261 +11264 11321 11322 11265 15261 15318 15319 15262 +11265 11322 11323 11266 15262 15319 15320 15263 +11266 11323 11324 11267 15263 15320 15321 15264 +11267 11324 11325 11268 15264 15321 15322 15265 +11268 11325 11326 11269 15265 15322 15323 15266 +11269 11326 11327 11270 15266 15323 15324 15267 +11270 11327 11328 11271 15267 15324 15325 15268 +11271 11328 11329 11272 15268 15325 15326 15269 +11272 11329 11330 11273 15269 15326 15327 15270 +11273 11330 11331 11274 15270 15327 15328 15271 +11274 11331 11332 11275 15271 15328 15329 15272 +11275 11332 11333 11276 15272 15329 15330 15273 +11276 11333 11334 11335 15273 15330 15331 15332 +11276 11335 11336 11277 15273 15332 15333 15274 +11277 11336 11337 11278 15274 15333 15334 15275 +11278 11337 11338 11279 15275 15334 15335 15276 +11279 11338 11339 11280 15276 15335 15336 15277 +11280 11339 11340 11281 15277 15336 15337 15278 +11281 11340 11341 11282 15278 15337 15338 15279 +11282 11341 11342 11283 15279 15338 15339 15280 +11283 11342 11343 11284 15280 15339 15340 15281 +11284 11343 11344 11285 15281 15340 15341 15282 +11285 11344 11345 11286 15282 15341 15342 15283 +11286 11345 11346 11287 15283 15342 15343 15284 +11287 11346 11347 11288 15284 15343 15344 15285 +11288 11347 11348 11289 15285 15344 15345 15286 +11289 11348 11349 11290 15286 15345 15346 15287 +11290 11349 11350 11291 15287 15346 15347 15288 +11291 11350 11351 11292 15288 15347 15348 15289 +11292 11351 11352 11293 15289 15348 15349 15290 +11293 11352 11353 11294 15290 15349 15350 15291 +11294 11353 11354 11295 15291 15350 15351 15292 +11295 11354 11355 11296 15292 15351 15352 15293 +11296 11355 11356 11297 15293 15352 15353 15294 +11297 11356 11357 11298 15294 15353 15354 15295 +11298 11357 11358 11299 15295 15354 15355 15296 +11299 11358 11359 11300 15296 15355 15356 15297 +11300 11359 11360 11301 15297 15356 15357 15298 +11301 11360 11361 11302 15298 15357 15358 15299 +11302 11361 11362 11303 15299 15358 15359 15300 +11303 11362 11363 11304 15300 15359 15360 15301 +11305 11364 11365 11306 15302 15361 15362 15303 +11306 11365 11366 11307 15303 15362 15363 15304 +11307 11366 11367 11308 15304 15363 15364 15305 +11308 11367 11368 11309 15305 15364 15365 15306 +11309 11368 11369 11310 15306 15365 15366 15307 +11310 11369 11370 11311 15307 15366 15367 15308 +11311 11370 11371 11312 15308 15367 15368 15309 +11312 11371 11372 11313 15309 15368 15369 15310 +11313 11372 11373 11314 15310 15369 15370 15311 +11314 11373 11374 11315 15311 15370 15371 15312 +11315 11374 11375 11316 15312 15371 15372 15313 +11316 11375 11376 11317 15313 15372 15373 15314 +11317 11376 11377 11318 15314 15373 15374 15315 +11318 11377 11378 11319 15315 15374 15375 15316 +11319 11378 11379 11320 15316 15375 15376 15317 +11320 11379 11380 11321 15317 15376 15377 15318 +11321 11380 11381 11322 15318 15377 15378 15319 +11322 11381 11382 11323 15319 15378 15379 15320 +11323 11382 11383 11324 15320 15379 15380 15321 +11324 11383 11384 11325 15321 15380 15381 15322 +11325 11384 11385 11326 15322 15381 15382 15323 +11326 11385 11386 11327 15323 15382 15383 15324 +11327 11386 11387 11328 15324 15383 15384 15325 +11328 11387 11388 11329 15325 15384 15385 15326 +11329 11388 11389 11330 15326 15385 15386 15327 +11330 11389 11390 11331 15327 15386 15387 15328 +11331 11390 11391 11332 15328 15387 15388 15329 +11332 11391 11392 11333 15329 15388 15389 15330 +11333 11392 11393 11334 15330 15389 15390 15331 +11334 11393 11394 11395 15331 15390 15391 15392 +11334 11395 11396 11335 15331 15392 15393 15332 +11335 11396 11397 11336 15332 15393 15394 15333 +11336 11397 11398 11337 15333 15394 15395 15334 +11337 11398 11399 11338 15334 15395 15396 15335 +11338 11399 11400 11339 15335 15396 15397 15336 +11339 11400 11401 11340 15336 15397 15398 15337 +11340 11401 11402 11341 15337 15398 15399 15338 +11341 11402 11403 11342 15338 15399 15400 15339 +11342 11403 11404 11343 15339 15400 15401 15340 +11343 11404 11405 11344 15340 15401 15402 15341 +11344 11405 11406 11345 15341 15402 15403 15342 +11345 11406 11407 11346 15342 15403 15404 15343 +11346 11407 11408 11347 15343 15404 15405 15344 +11347 11408 11409 11348 15344 15405 15406 15345 +11348 11409 11410 11349 15345 15406 15407 15346 +11349 11410 11411 11350 15346 15407 15408 15347 +11350 11411 11412 11351 15347 15408 15409 15348 +11351 11412 11413 11352 15348 15409 15410 15349 +11352 11413 11414 11353 15349 15410 15411 15350 +11353 11414 11415 11354 15350 15411 15412 15351 +11354 11415 11416 11355 15351 15412 15413 15352 +11355 11416 11417 11356 15352 15413 15414 15353 +11356 11417 11418 11357 15353 15414 15415 15354 +11357 11418 11419 11358 15354 15415 15416 15355 +11358 11419 11420 11359 15355 15416 15417 15356 +11359 11420 11421 11360 15356 15417 15418 15357 +11360 11421 11422 11361 15357 15418 15419 15358 +11361 11422 11423 11362 15358 15419 15420 15359 +11362 11423 11424 11363 15359 15420 15421 15360 +11364 11425 11426 11365 15361 15422 15423 15362 +11365 11426 11427 11366 15362 15423 15424 15363 +11366 11427 11428 11367 15363 15424 15425 15364 +11367 11428 11429 11368 15364 15425 15426 15365 +11368 11429 11430 11369 15365 15426 15427 15366 +11369 11430 11431 11370 15366 15427 15428 15367 +11370 11431 11432 11371 15367 15428 15429 15368 +11371 11432 11433 11372 15368 15429 15430 15369 +11372 11433 11434 11373 15369 15430 15431 15370 +11373 11434 11435 11374 15370 15431 15432 15371 +11374 11435 11436 11375 15371 15432 15433 15372 +11375 11436 11437 11376 15372 15433 15434 15373 +11376 11437 11438 11377 15373 15434 15435 15374 +11377 11438 11439 11378 15374 15435 15436 15375 +11378 11439 11440 11379 15375 15436 15437 15376 +11379 11440 11441 11380 15376 15437 15438 15377 +11380 11441 11442 11381 15377 15438 15439 15378 +11381 11442 11443 11382 15378 15439 15440 15379 +11382 11443 11444 11383 15379 15440 15441 15380 +11383 11444 11445 11384 15380 15441 15442 15381 +11384 11445 11446 11385 15381 15442 15443 15382 +11385 11446 11447 11386 15382 15443 15444 15383 +11386 11447 11448 11387 15383 15444 15445 15384 +11387 11448 11449 11388 15384 15445 15446 15385 +11388 11449 11450 11389 15385 15446 15447 15386 +11389 11450 11451 11390 15386 15447 15448 15387 +11390 11451 11452 11391 15387 15448 15449 15388 +11391 11452 11453 11392 15388 15449 15450 15389 +11392 11453 11454 11393 15389 15450 15451 15390 +11393 11454 11455 11394 15390 15451 15452 15391 +11394 11455 11456 11457 15391 15452 15453 15454 +11394 11457 11458 11395 15391 15454 15455 15392 +11395 11458 11459 11396 15392 15455 15456 15393 +11396 11459 11460 11397 15393 15456 15457 15394 +11397 11460 11461 11398 15394 15457 15458 15395 +11398 11461 11462 11399 15395 15458 15459 15396 +11399 11462 11463 11400 15396 15459 15460 15397 +11400 11463 11464 11401 15397 15460 15461 15398 +11401 11464 11465 11402 15398 15461 15462 15399 +11402 11465 11466 11403 15399 15462 15463 15400 +11403 11466 11467 11404 15400 15463 15464 15401 +11404 11467 11468 11405 15401 15464 15465 15402 +11405 11468 11469 11406 15402 15465 15466 15403 +11406 11469 11470 11407 15403 15466 15467 15404 +11407 11470 11471 11408 15404 15467 15468 15405 +11408 11471 11472 11409 15405 15468 15469 15406 +11409 11472 11473 11410 15406 15469 15470 15407 +11410 11473 11474 11411 15407 15470 15471 15408 +11411 11474 11475 11412 15408 15471 15472 15409 +11412 11475 11476 11413 15409 15472 15473 15410 +11413 11476 11477 11414 15410 15473 15474 15411 +11414 11477 11478 11415 15411 15474 15475 15412 +11415 11478 11479 11416 15412 15475 15476 15413 +11416 11479 11480 11417 15413 15476 15477 15414 +11417 11480 11481 11418 15414 15477 15478 15415 +11418 11481 11482 11419 15415 15478 15479 15416 +11419 11482 11483 11420 15416 15479 15480 15417 +11420 11483 11484 11421 15417 15480 15481 15418 +11421 11484 11485 11422 15418 15481 15482 15419 +11422 11485 11486 11423 15419 15482 15483 15420 +11423 11486 11487 11424 15420 15483 15484 15421 +11425 11488 11489 11426 15422 15485 15486 15423 +11426 11489 11490 11427 15423 15486 15487 15424 +11427 11490 11491 11428 15424 15487 15488 15425 +11428 11491 11492 11429 15425 15488 15489 15426 +11429 11492 11493 11430 15426 15489 15490 15427 +11430 11493 11494 11431 15427 15490 15491 15428 +11431 11494 11495 11432 15428 15491 15492 15429 +11432 11495 11496 11433 15429 15492 15493 15430 +11433 11496 11497 11434 15430 15493 15494 15431 +11434 11497 11498 11435 15431 15494 15495 15432 +11435 11498 11499 11436 15432 15495 15496 15433 +11436 11499 11500 11437 15433 15496 15497 15434 +11437 11500 11501 11438 15434 15497 15498 15435 +11438 11501 11502 11439 15435 15498 15499 15436 +11439 11502 11503 11440 15436 15499 15500 15437 +11440 11503 11504 11441 15437 15500 15501 15438 +11441 11504 11505 11442 15438 15501 15502 15439 +11442 11505 11506 11443 15439 15502 15503 15440 +11443 11506 11507 11444 15440 15503 15504 15441 +11444 11507 11508 11445 15441 15504 15505 15442 +11445 11508 11509 11446 15442 15505 15506 15443 +11446 11509 11510 11447 15443 15506 15507 15444 +11447 11510 11511 11448 15444 15507 15508 15445 +11448 11511 11512 11449 15445 15508 15509 15446 +11449 11512 11513 11450 15446 15509 15510 15447 +11450 11513 11514 11451 15447 15510 15511 15448 +11451 11514 11515 11452 15448 15511 15512 15449 +11452 11515 11516 11453 15449 15512 15513 15450 +11453 11516 11517 11454 15450 15513 15514 15451 +11454 11517 11518 11455 15451 15514 15515 15452 +11455 11518 11519 11456 15452 15515 15516 15453 +11456 11519 11520 11521 15453 15516 15517 15518 +11456 11521 11522 11457 15453 15518 15519 15454 +11457 11522 11523 11458 15454 15519 15520 15455 +11458 11523 11524 11459 15455 15520 15521 15456 +11459 11524 11525 11460 15456 15521 15522 15457 +11460 11525 11526 11461 15457 15522 15523 15458 +11461 11526 11527 11462 15458 15523 15524 15459 +11462 11527 11528 11463 15459 15524 15525 15460 +11463 11528 11529 11464 15460 15525 15526 15461 +11464 11529 11530 11465 15461 15526 15527 15462 +11465 11530 11531 11466 15462 15527 15528 15463 +11466 11531 11532 11467 15463 15528 15529 15464 +11467 11532 11533 11468 15464 15529 15530 15465 +11468 11533 11534 11469 15465 15530 15531 15466 +11469 11534 11535 11470 15466 15531 15532 15467 +11470 11535 11536 11471 15467 15532 15533 15468 +11471 11536 11537 11472 15468 15533 15534 15469 +11472 11537 11538 11473 15469 15534 15535 15470 +11473 11538 11539 11474 15470 15535 15536 15471 +11474 11539 11540 11475 15471 15536 15537 15472 +11475 11540 11541 11476 15472 15537 15538 15473 +11476 11541 11542 11477 15473 15538 15539 15474 +11477 11542 11543 11478 15474 15539 15540 15475 +11478 11543 11544 11479 15475 15540 15541 15476 +11479 11544 11545 11480 15476 15541 15542 15477 +11480 11545 11546 11481 15477 15542 15543 15478 +11481 11546 11547 11482 15478 15543 15544 15479 +11482 11547 11548 11483 15479 15544 15545 15480 +11483 11548 11549 11484 15480 15545 15546 15481 +11484 11549 11550 11485 15481 15546 15547 15482 +11485 11550 11551 11486 15482 15547 15548 15483 +11486 11551 11552 11487 15483 15548 15549 15484 +11488 11553 11554 11489 15485 15550 15551 15486 +11489 11554 11555 11490 15486 15551 15552 15487 +11490 11555 11556 11491 15487 15552 15553 15488 +11491 11556 11557 11492 15488 15553 15554 15489 +11492 11557 11558 11493 15489 15554 15555 15490 +11493 11558 11559 11494 15490 15555 15556 15491 +11494 11559 11560 11495 15491 15556 15557 15492 +11495 11560 11561 11496 15492 15557 15558 15493 +11496 11561 11562 11497 15493 15558 15559 15494 +11497 11562 11563 11498 15494 15559 15560 15495 +11498 11563 11564 11499 15495 15560 15561 15496 +11499 11564 11565 11500 15496 15561 15562 15497 +11500 11565 11566 11501 15497 15562 15563 15498 +11501 11566 11567 11502 15498 15563 15564 15499 +11502 11567 11568 11503 15499 15564 15565 15500 +11503 11568 11569 11504 15500 15565 15566 15501 +11504 11569 11570 11505 15501 15566 15567 15502 +11505 11570 11571 11506 15502 15567 15568 15503 +11506 11571 11572 11507 15503 15568 15569 15504 +11507 11572 11573 11508 15504 15569 15570 15505 +11508 11573 11574 11509 15505 15570 15571 15506 +11509 11574 11575 11510 15506 15571 15572 15507 +11510 11575 11576 11511 15507 15572 15573 15508 +11511 11576 11577 11512 15508 15573 15574 15509 +11512 11577 11578 11513 15509 15574 15575 15510 +11513 11578 11579 11514 15510 15575 15576 15511 +11514 11579 11580 11515 15511 15576 15577 15512 +11515 11580 11581 11516 15512 15577 15578 15513 +11516 11581 11582 11517 15513 15578 15579 15514 +11517 11582 11583 11518 15514 15579 15580 15515 +11518 11583 11584 11519 15515 15580 15581 15516 +11519 11584 11585 11520 15516 15581 15582 15517 +11520 11585 11586 11587 15517 15582 15583 15584 +11520 11587 11588 11521 15517 15584 15585 15518 +11521 11588 11589 11522 15518 15585 15586 15519 +11522 11589 11590 11523 15519 15586 15587 15520 +11523 11590 11591 11524 15520 15587 15588 15521 +11524 11591 11592 11525 15521 15588 15589 15522 +11525 11592 11593 11526 15522 15589 15590 15523 +11526 11593 11594 11527 15523 15590 15591 15524 +11527 11594 11595 11528 15524 15591 15592 15525 +11528 11595 11596 11529 15525 15592 15593 15526 +11529 11596 11597 11530 15526 15593 15594 15527 +11530 11597 11598 11531 15527 15594 15595 15528 +11531 11598 11599 11532 15528 15595 15596 15529 +11532 11599 11600 11533 15529 15596 15597 15530 +11533 11600 11601 11534 15530 15597 15598 15531 +11534 11601 11602 11535 15531 15598 15599 15532 +11535 11602 11603 11536 15532 15599 15600 15533 +11536 11603 11604 11537 15533 15600 15601 15534 +11537 11604 11605 11538 15534 15601 15602 15535 +11538 11605 11606 11539 15535 15602 15603 15536 +11539 11606 11607 11540 15536 15603 15604 15537 +11540 11607 11608 11541 15537 15604 15605 15538 +11541 11608 11609 11542 15538 15605 15606 15539 +11542 11609 11610 11543 15539 15606 15607 15540 +11543 11610 11611 11544 15540 15607 15608 15541 +11544 11611 11612 11545 15541 15608 15609 15542 +11545 11612 11613 11546 15542 15609 15610 15543 +11546 11613 11614 11547 15543 15610 15611 15544 +11547 11614 11615 11548 15544 15611 15612 15545 +11548 11615 11616 11549 15545 15612 15613 15546 +11549 11616 11617 11550 15546 15613 15614 15547 +11550 11617 11618 11551 15547 15614 15615 15548 +11551 11618 11619 11552 15548 15615 15616 15549 +11553 11620 11621 11554 15550 15617 15618 15551 +11554 11621 11622 11555 15551 15618 15619 15552 +11555 11622 11623 11556 15552 15619 15620 15553 +11556 11623 11624 11557 15553 15620 15621 15554 +11557 11624 11625 11558 15554 15621 15622 15555 +11558 11625 11626 11559 15555 15622 15623 15556 +11559 11626 11627 11560 15556 15623 15624 15557 +11560 11627 11628 11561 15557 15624 15625 15558 +11561 11628 11629 11562 15558 15625 15626 15559 +11562 11629 11630 11563 15559 15626 15627 15560 +11563 11630 11631 11564 15560 15627 15628 15561 +11564 11631 11632 11565 15561 15628 15629 15562 +11565 11632 11633 11566 15562 15629 15630 15563 +11566 11633 11634 11567 15563 15630 15631 15564 +11567 11634 11635 11568 15564 15631 15632 15565 +11568 11635 11636 11569 15565 15632 15633 15566 +11569 11636 11637 11570 15566 15633 15634 15567 +11570 11637 11638 11571 15567 15634 15635 15568 +11571 11638 11639 11572 15568 15635 15636 15569 +11572 11639 11640 11573 15569 15636 15637 15570 +11573 11640 11641 11574 15570 15637 15638 15571 +11574 11641 11642 11575 15571 15638 15639 15572 +11575 11642 11643 11576 15572 15639 15640 15573 +11576 11643 11644 11577 15573 15640 15641 15574 +11577 11644 11645 11578 15574 15641 15642 15575 +11578 11645 11646 11579 15575 15642 15643 15576 +11579 11646 11647 11580 15576 15643 15644 15577 +11580 11647 11648 11581 15577 15644 15645 15578 +11581 11648 11649 11582 15578 15645 15646 15579 +11582 11649 11650 11583 15579 15646 15647 15580 +11583 11650 11651 11584 15580 15647 15648 15581 +11584 11651 11652 11585 15581 15648 15649 15582 +11585 11652 11653 11586 15582 15649 15650 15583 +11586 11653 11654 11655 15583 15650 15651 15652 +11586 11655 11656 11587 15583 15652 15653 15584 +11587 11656 11657 11588 15584 15653 15654 15585 +11588 11657 11658 11589 15585 15654 15655 15586 +11589 11658 11659 11590 15586 15655 15656 15587 +11590 11659 11660 11591 15587 15656 15657 15588 +11591 11660 11661 11592 15588 15657 15658 15589 +11592 11661 11662 11593 15589 15658 15659 15590 +11593 11662 11663 11594 15590 15659 15660 15591 +11594 11663 11664 11595 15591 15660 15661 15592 +11595 11664 11665 11596 15592 15661 15662 15593 +11596 11665 11666 11597 15593 15662 15663 15594 +11597 11666 11667 11598 15594 15663 15664 15595 +11598 11667 11668 11599 15595 15664 15665 15596 +11599 11668 11669 11600 15596 15665 15666 15597 +11600 11669 11670 11601 15597 15666 15667 15598 +11601 11670 11671 11602 15598 15667 15668 15599 +11602 11671 11672 11603 15599 15668 15669 15600 +11603 11672 11673 11604 15600 15669 15670 15601 +11604 11673 11674 11605 15601 15670 15671 15602 +11605 11674 11675 11606 15602 15671 15672 15603 +11606 11675 11676 11607 15603 15672 15673 15604 +11607 11676 11677 11608 15604 15673 15674 15605 +11608 11677 11678 11609 15605 15674 15675 15606 +11609 11678 11679 11610 15606 15675 15676 15607 +11610 11679 11680 11611 15607 15676 15677 15608 +11611 11680 11681 11612 15608 15677 15678 15609 +11612 11681 11682 11613 15609 15678 15679 15610 +11613 11682 11683 11614 15610 15679 15680 15611 +11614 11683 11684 11615 15611 15680 15681 15612 +11615 11684 11685 11616 15612 15681 15682 15613 +11616 11685 11686 11617 15613 15682 15683 15614 +11617 11686 11687 11618 15614 15683 15684 15615 +11618 11687 11688 11619 15615 15684 15685 15616 +11620 11689 11690 11621 15617 15686 15687 15618 +11621 11690 11691 11622 15618 15687 15688 15619 +11622 11691 11692 11623 15619 15688 15689 15620 +11623 11692 11693 11624 15620 15689 15690 15621 +11624 11693 11694 11625 15621 15690 15691 15622 +11625 11694 11695 11626 15622 15691 15692 15623 +11626 11695 11696 11627 15623 15692 15693 15624 +11627 11696 11697 11628 15624 15693 15694 15625 +11628 11697 11698 11629 15625 15694 15695 15626 +11629 11698 11699 11630 15626 15695 15696 15627 +11630 11699 11700 11631 15627 15696 15697 15628 +11631 11700 11701 11632 15628 15697 15698 15629 +11632 11701 11702 11633 15629 15698 15699 15630 +11633 11702 11703 11634 15630 15699 15700 15631 +11634 11703 11704 11635 15631 15700 15701 15632 +11635 11704 11705 11636 15632 15701 15702 15633 +11636 11705 11706 11637 15633 15702 15703 15634 +11637 11706 11707 11638 15634 15703 15704 15635 +11638 11707 11708 11639 15635 15704 15705 15636 +11639 11708 11709 11640 15636 15705 15706 15637 +11640 11709 11710 11641 15637 15706 15707 15638 +11641 11710 11711 11642 15638 15707 15708 15639 +11642 11711 11712 11643 15639 15708 15709 15640 +11643 11712 11713 11644 15640 15709 15710 15641 +11644 11713 11714 11645 15641 15710 15711 15642 +11645 11714 11715 11646 15642 15711 15712 15643 +11646 11715 11716 11647 15643 15712 15713 15644 +11647 11716 11717 11648 15644 15713 15714 15645 +11648 11717 11718 11649 15645 15714 15715 15646 +11649 11718 11719 11650 15646 15715 15716 15647 +11650 11719 11720 11651 15647 15716 15717 15648 +11651 11720 11721 11652 15648 15717 15718 15649 +11652 11721 11722 11653 15649 15718 15719 15650 +11653 11722 11723 11654 15650 15719 15720 15651 +11654 11723 11724 11725 15651 15720 15721 15722 +11654 11725 11726 11655 15651 15722 15723 15652 +11655 11726 11727 11656 15652 15723 15724 15653 +11656 11727 11728 11657 15653 15724 15725 15654 +11657 11728 11729 11658 15654 15725 15726 15655 +11658 11729 11730 11659 15655 15726 15727 15656 +11659 11730 11731 11660 15656 15727 15728 15657 +11660 11731 11732 11661 15657 15728 15729 15658 +11661 11732 11733 11662 15658 15729 15730 15659 +11662 11733 11734 11663 15659 15730 15731 15660 +11663 11734 11735 11664 15660 15731 15732 15661 +11664 11735 11736 11665 15661 15732 15733 15662 +11665 11736 11737 11666 15662 15733 15734 15663 +11666 11737 11738 11667 15663 15734 15735 15664 +11667 11738 11739 11668 15664 15735 15736 15665 +11668 11739 11740 11669 15665 15736 15737 15666 +11669 11740 11741 11670 15666 15737 15738 15667 +11670 11741 11742 11671 15667 15738 15739 15668 +11671 11742 11743 11672 15668 15739 15740 15669 +11672 11743 11744 11673 15669 15740 15741 15670 +11673 11744 11745 11674 15670 15741 15742 15671 +11674 11745 11746 11675 15671 15742 15743 15672 +11675 11746 11747 11676 15672 15743 15744 15673 +11676 11747 11748 11677 15673 15744 15745 15674 +11677 11748 11749 11678 15674 15745 15746 15675 +11678 11749 11750 11679 15675 15746 15747 15676 +11679 11750 11751 11680 15676 15747 15748 15677 +11680 11751 11752 11681 15677 15748 15749 15678 +11681 11752 11753 11682 15678 15749 15750 15679 +11682 11753 11754 11683 15679 15750 15751 15680 +11683 11754 11755 11684 15680 15751 15752 15681 +11684 11755 11756 11685 15681 15752 15753 15682 +11685 11756 11757 11686 15682 15753 15754 15683 +11686 11757 11758 11687 15683 15754 15755 15684 +11687 11758 11759 11688 15684 15755 15756 15685 +11689 11760 11761 11690 15686 15757 15758 15687 +11690 11761 11762 11691 15687 15758 15759 15688 +11691 11762 11763 11692 15688 15759 15760 15689 +11692 11763 11764 11693 15689 15760 15761 15690 +11693 11764 11765 11694 15690 15761 15762 15691 +11694 11765 11766 11695 15691 15762 15763 15692 +11695 11766 11767 11696 15692 15763 15764 15693 +11696 11767 11768 11697 15693 15764 15765 15694 +11697 11768 11769 11698 15694 15765 15766 15695 +11698 11769 11770 11699 15695 15766 15767 15696 +11699 11770 11771 11700 15696 15767 15768 15697 +11700 11771 11772 11701 15697 15768 15769 15698 +11701 11772 11773 11702 15698 15769 15770 15699 +11702 11773 11774 11703 15699 15770 15771 15700 +11703 11774 11775 11704 15700 15771 15772 15701 +11704 11775 11776 11705 15701 15772 15773 15702 +11705 11776 11777 11706 15702 15773 15774 15703 +11706 11777 11778 11707 15703 15774 15775 15704 +11707 11778 11779 11708 15704 15775 15776 15705 +11708 11779 11780 11709 15705 15776 15777 15706 +11709 11780 11781 11710 15706 15777 15778 15707 +11710 11781 11782 11711 15707 15778 15779 15708 +11711 11782 11783 11712 15708 15779 15780 15709 +11712 11783 11784 11713 15709 15780 15781 15710 +11713 11784 11785 11714 15710 15781 15782 15711 +11714 11785 11786 11715 15711 15782 15783 15712 +11715 11786 11787 11716 15712 15783 15784 15713 +11716 11787 11788 11717 15713 15784 15785 15714 +11717 11788 11789 11718 15714 15785 15786 15715 +11718 11789 11790 11719 15715 15786 15787 15716 +11719 11790 11791 11720 15716 15787 15788 15717 +11720 11791 11792 11721 15717 15788 15789 15718 +11721 11792 11793 11722 15718 15789 15790 15719 +11722 11793 11794 11723 15719 15790 15791 15720 +11723 11794 11795 11724 15720 15791 15792 15721 +11724 11795 11796 11797 15721 15792 15793 15794 +11724 11797 11798 11725 15721 15794 15795 15722 +11725 11798 11799 11726 15722 15795 15796 15723 +11726 11799 11800 11727 15723 15796 15797 15724 +11727 11800 11801 11728 15724 15797 15798 15725 +11728 11801 11802 11729 15725 15798 15799 15726 +11729 11802 11803 11730 15726 15799 15800 15727 +11730 11803 11804 11731 15727 15800 15801 15728 +11731 11804 11805 11732 15728 15801 15802 15729 +11732 11805 11806 11733 15729 15802 15803 15730 +11733 11806 11807 11734 15730 15803 15804 15731 +11734 11807 11808 11735 15731 15804 15805 15732 +11735 11808 11809 11736 15732 15805 15806 15733 +11736 11809 11810 11737 15733 15806 15807 15734 +11737 11810 11811 11738 15734 15807 15808 15735 +11738 11811 11812 11739 15735 15808 15809 15736 +11739 11812 11813 11740 15736 15809 15810 15737 +11740 11813 11814 11741 15737 15810 15811 15738 +11741 11814 11815 11742 15738 15811 15812 15739 +11742 11815 11816 11743 15739 15812 15813 15740 +11743 11816 11817 11744 15740 15813 15814 15741 +11744 11817 11818 11745 15741 15814 15815 15742 +11745 11818 11819 11746 15742 15815 15816 15743 +11746 11819 11820 11747 15743 15816 15817 15744 +11747 11820 11821 11748 15744 15817 15818 15745 +11748 11821 11822 11749 15745 15818 15819 15746 +11749 11822 11823 11750 15746 15819 15820 15747 +11750 11823 11824 11751 15747 15820 15821 15748 +11751 11824 11825 11752 15748 15821 15822 15749 +11752 11825 11826 11753 15749 15822 15823 15750 +11753 11826 11827 11754 15750 15823 15824 15751 +11754 11827 11828 11755 15751 15824 15825 15752 +11755 11828 11829 11756 15752 15825 15826 15753 +11756 11829 11830 11757 15753 15826 15827 15754 +11757 11830 11831 11758 15754 15827 15828 15755 +11758 11831 11832 11759 15755 15828 15829 15756 +11760 11833 11834 11761 15757 15830 15831 15758 +11761 11834 11835 11762 15758 15831 15832 15759 +11762 11835 11836 11763 15759 15832 15833 15760 +11763 11836 11837 11764 15760 15833 15834 15761 +11764 11837 11838 11765 15761 15834 15835 15762 +11765 11838 11839 11766 15762 15835 15836 15763 +11766 11839 11840 11767 15763 15836 15837 15764 +11767 11840 11841 11768 15764 15837 15838 15765 +11768 11841 11842 11769 15765 15838 15839 15766 +11769 11842 11843 11770 15766 15839 15840 15767 +11770 11843 11844 11771 15767 15840 15841 15768 +11771 11844 11845 11772 15768 15841 15842 15769 +11772 11845 11846 11773 15769 15842 15843 15770 +11773 11846 11847 11774 15770 15843 15844 15771 +11774 11847 11848 11775 15771 15844 15845 15772 +11775 11848 11849 11776 15772 15845 15846 15773 +11776 11849 11850 11777 15773 15846 15847 15774 +11777 11850 11851 11778 15774 15847 15848 15775 +11778 11851 11852 11779 15775 15848 15849 15776 +11779 11852 11853 11780 15776 15849 15850 15777 +11780 11853 11854 11781 15777 15850 15851 15778 +11781 11854 11855 11782 15778 15851 15852 15779 +11782 11855 11856 11783 15779 15852 15853 15780 +11783 11856 11857 11784 15780 15853 15854 15781 +11784 11857 11858 11785 15781 15854 15855 15782 +11785 11858 11859 11786 15782 15855 15856 15783 +11786 11859 11860 11787 15783 15856 15857 15784 +11787 11860 11861 11788 15784 15857 15858 15785 +11788 11861 11862 11789 15785 15858 15859 15786 +11789 11862 11863 11790 15786 15859 15860 15787 +11790 11863 11864 11791 15787 15860 15861 15788 +11791 11864 11865 11792 15788 15861 15862 15789 +11792 11865 11866 11793 15789 15862 15863 15790 +11793 11866 11867 11794 15790 15863 15864 15791 +11794 11867 11868 11795 15791 15864 15865 15792 +11795 11868 11869 11796 15792 15865 15866 15793 +11796 11869 11870 11797 15793 15866 15867 15794 +11797 11870 11871 11798 15794 15867 15868 15795 +11798 11871 11872 11799 15795 15868 15869 15796 +11799 11872 11873 11800 15796 15869 15870 15797 +11800 11873 11874 11801 15797 15870 15871 15798 +11801 11874 11875 11802 15798 15871 15872 15799 +11802 11875 11876 11803 15799 15872 15873 15800 +11803 11876 11877 11804 15800 15873 15874 15801 +11804 11877 11878 11805 15801 15874 15875 15802 +11805 11878 11879 11806 15802 15875 15876 15803 +11806 11879 11880 11807 15803 15876 15877 15804 +11807 11880 11881 11808 15804 15877 15878 15805 +11808 11881 11882 11809 15805 15878 15879 15806 +11809 11882 11883 11810 15806 15879 15880 15807 +11810 11883 11884 11811 15807 15880 15881 15808 +11811 11884 11885 11812 15808 15881 15882 15809 +11812 11885 11886 11813 15809 15882 15883 15810 +11813 11886 11887 11814 15810 15883 15884 15811 +11814 11887 11888 11815 15811 15884 15885 15812 +11815 11888 11889 11816 15812 15885 15886 15813 +11816 11889 11890 11817 15813 15886 15887 15814 +11817 11890 11891 11818 15814 15887 15888 15815 +11818 11891 11892 11819 15815 15888 15889 15816 +11819 11892 11893 11820 15816 15889 15890 15817 +11820 11893 11894 11821 15817 15890 15891 15818 +11821 11894 11895 11822 15818 15891 15892 15819 +11822 11895 11896 11823 15819 15892 15893 15820 +11823 11896 11897 11824 15820 15893 15894 15821 +11824 11897 11898 11825 15821 15894 15895 15822 +11825 11898 11899 11826 15822 15895 15896 15823 +11826 11899 11900 11827 15823 15896 15897 15824 +11827 11900 11901 11828 15824 15897 15898 15825 +11828 11901 11902 11829 15825 15898 15899 15826 +11829 11902 11903 11830 15826 15899 15900 15827 +11830 11903 11904 11831 15827 15900 15901 15828 +11831 11904 11905 11832 15828 15901 15902 15829 +11833 11906 11907 11834 15830 15903 15904 15831 +11834 11907 11908 11835 15831 15904 15905 15832 +11835 11908 11909 11836 15832 15905 15906 15833 +11836 11909 11910 11837 15833 15906 15907 15834 +11837 11910 11911 11838 15834 15907 15908 15835 +11838 11911 11912 11839 15835 15908 15909 15836 +11839 11912 11913 11840 15836 15909 15910 15837 +11840 11913 11914 11841 15837 15910 15911 15838 +11841 11914 11915 11842 15838 15911 15912 15839 +11842 11915 11916 11843 15839 15912 15913 15840 +11843 11916 11917 11844 15840 15913 15914 15841 +11844 11917 11918 11845 15841 15914 15915 15842 +11845 11918 11919 11846 15842 15915 15916 15843 +11846 11919 11920 11847 15843 15916 15917 15844 +11847 11920 11921 11848 15844 15917 15918 15845 +11848 11921 11922 11849 15845 15918 15919 15846 +11849 11922 11923 11850 15846 15919 15920 15847 +11850 11923 11924 11851 15847 15920 15921 15848 +11851 11924 11925 11852 15848 15921 15922 15849 +11852 11925 11926 11853 15849 15922 15923 15850 +11853 11926 11927 11854 15850 15923 15924 15851 +11854 11927 11928 11855 15851 15924 15925 15852 +11855 11928 11929 11856 15852 15925 15926 15853 +11856 11929 11930 11857 15853 15926 15927 15854 +11857 11930 11931 11858 15854 15927 15928 15855 +11858 11931 11932 11859 15855 15928 15929 15856 +11859 11932 11933 11860 15856 15929 15930 15857 +11860 11933 11934 11861 15857 15930 15931 15858 +11861 11934 11935 11862 15858 15931 15932 15859 +11862 11935 11936 11863 15859 15932 15933 15860 +11863 11936 11937 11864 15860 15933 15934 15861 +11864 11937 11938 11865 15861 15934 15935 15862 +11865 11938 11939 11866 15862 15935 15936 15863 +11866 11939 11940 11867 15863 15936 15937 15864 +11867 11940 11941 11868 15864 15937 15938 15865 +11868 11941 11942 11869 15865 15938 15939 15866 +11869 11942 11943 11870 15866 15939 15940 15867 +11870 11943 11944 11871 15867 15940 15941 15868 +11871 11944 11945 11872 15868 15941 15942 15869 +11872 11945 11946 11873 15869 15942 15943 15870 +11873 11946 11947 11874 15870 15943 15944 15871 +11874 11947 11948 11875 15871 15944 15945 15872 +11875 11948 11949 11876 15872 15945 15946 15873 +11876 11949 11950 11877 15873 15946 15947 15874 +11877 11950 11951 11878 15874 15947 15948 15875 +11878 11951 11952 11879 15875 15948 15949 15876 +11879 11952 11953 11880 15876 15949 15950 15877 +11880 11953 11954 11881 15877 15950 15951 15878 +11881 11954 11955 11882 15878 15951 15952 15879 +11882 11955 11956 11883 15879 15952 15953 15880 +11883 11956 11957 11884 15880 15953 15954 15881 +11884 11957 11958 11885 15881 15954 15955 15882 +11885 11958 11959 11886 15882 15955 15956 15883 +11886 11959 11960 11887 15883 15956 15957 15884 +11887 11960 11961 11888 15884 15957 15958 15885 +11888 11961 11962 11889 15885 15958 15959 15886 +11889 11962 11963 11890 15886 15959 15960 15887 +11890 11963 11964 11891 15887 15960 15961 15888 +11891 11964 11965 11892 15888 15961 15962 15889 +11892 11965 11966 11893 15889 15962 15963 15890 +11893 11966 11967 11894 15890 15963 15964 15891 +11894 11967 11968 11895 15891 15964 15965 15892 +11895 11968 11969 11896 15892 15965 15966 15893 +11896 11969 11970 11897 15893 15966 15967 15894 +11897 11970 11971 11898 15894 15967 15968 15895 +11898 11971 11972 11899 15895 15968 15969 15896 +11899 11972 11973 11900 15896 15969 15970 15897 +11900 11973 11974 11901 15897 15970 15971 15898 +11901 11974 11975 11902 15898 15971 15972 15899 +11902 11975 11976 11903 15899 15972 15973 15900 +11903 11976 11977 11904 15900 15973 15974 15901 +11904 11977 11978 11905 15901 15974 15975 15902 +11906 11979 11980 11907 15903 15976 15977 15904 +11907 11980 11981 11908 15904 15977 15978 15905 +11908 11981 11982 11909 15905 15978 15979 15906 +11909 11982 11983 11910 15906 15979 15980 15907 +11910 11983 11984 11911 15907 15980 15981 15908 +11911 11984 11985 11912 15908 15981 15982 15909 +11912 11985 11986 11913 15909 15982 15983 15910 +11913 11986 11987 11914 15910 15983 15984 15911 +11914 11987 11988 11915 15911 15984 15985 15912 +11915 11988 11989 11916 15912 15985 15986 15913 +11916 11989 11990 11917 15913 15986 15987 15914 +11917 11990 11991 11918 15914 15987 15988 15915 +11918 11991 11992 11919 15915 15988 15989 15916 +11919 11992 11993 11920 15916 15989 15990 15917 +11920 11993 11994 11921 15917 15990 15991 15918 +11921 11994 11995 11922 15918 15991 15992 15919 +11922 11995 11996 11923 15919 15992 15993 15920 +11923 11996 11997 11924 15920 15993 15994 15921 +11924 11997 11998 11925 15921 15994 15995 15922 +11925 11998 11999 11926 15922 15995 15996 15923 +11926 11999 12000 11927 15923 15996 15997 15924 +11927 12000 12001 11928 15924 15997 15998 15925 +11928 12001 12002 11929 15925 15998 15999 15926 +11929 12002 12003 11930 15926 15999 16000 15927 +11930 12003 12004 11931 15927 16000 16001 15928 +11931 12004 12005 11932 15928 16001 16002 15929 +11932 12005 12006 11933 15929 16002 16003 15930 +11933 12006 12007 11934 15930 16003 16004 15931 +11934 12007 12008 11935 15931 16004 16005 15932 +11935 12008 12009 11936 15932 16005 16006 15933 +11936 12009 12010 11937 15933 16006 16007 15934 +11937 12010 12011 11938 15934 16007 16008 15935 +11938 12011 12012 11939 15935 16008 16009 15936 +11939 12012 12013 11940 15936 16009 16010 15937 +11940 12013 12014 11941 15937 16010 16011 15938 +11941 12014 12015 11942 15938 16011 16012 15939 +11942 12015 12016 11943 15939 16012 16013 15940 +11943 12016 12017 11944 15940 16013 16014 15941 +11944 12017 12018 11945 15941 16014 16015 15942 +11945 12018 12019 11946 15942 16015 16016 15943 +11946 12019 12020 11947 15943 16016 16017 15944 +11947 12020 12021 11948 15944 16017 16018 15945 +11948 12021 12022 11949 15945 16018 16019 15946 +11949 12022 12023 11950 15946 16019 16020 15947 +11950 12023 12024 11951 15947 16020 16021 15948 +11951 12024 12025 11952 15948 16021 16022 15949 +11952 12025 12026 11953 15949 16022 16023 15950 +11953 12026 12027 11954 15950 16023 16024 15951 +11954 12027 12028 11955 15951 16024 16025 15952 +11955 12028 12029 11956 15952 16025 16026 15953 +11956 12029 12030 11957 15953 16026 16027 15954 +11957 12030 12031 11958 15954 16027 16028 15955 +11958 12031 12032 11959 15955 16028 16029 15956 +11959 12032 12033 11960 15956 16029 16030 15957 +11960 12033 12034 11961 15957 16030 16031 15958 +11961 12034 12035 11962 15958 16031 16032 15959 +11962 12035 12036 11963 15959 16032 16033 15960 +11963 12036 12037 11964 15960 16033 16034 15961 +11964 12037 12038 11965 15961 16034 16035 15962 +11965 12038 12039 11966 15962 16035 16036 15963 +11966 12039 12040 11967 15963 16036 16037 15964 +11967 12040 12041 11968 15964 16037 16038 15965 +11968 12041 12042 11969 15965 16038 16039 15966 +11969 12042 12043 11970 15966 16039 16040 15967 +11970 12043 12044 11971 15967 16040 16041 15968 +11971 12044 12045 11972 15968 16041 16042 15969 +11972 12045 12046 11973 15969 16042 16043 15970 +11973 12046 12047 11974 15970 16043 16044 15971 +11974 12047 12048 11975 15971 16044 16045 15972 +11975 12048 12049 11976 15972 16045 16046 15973 +11976 12049 12050 11977 15973 16046 16047 15974 +11977 12050 12051 11978 15974 16047 16048 15975 +11979 12052 12053 11980 15976 16049 16050 15977 +11980 12053 12054 11981 15977 16050 16051 15978 +11981 12054 12055 11982 15978 16051 16052 15979 +11982 12055 12056 11983 15979 16052 16053 15980 +11983 12056 12057 11984 15980 16053 16054 15981 +11984 12057 12058 11985 15981 16054 16055 15982 +11985 12058 12059 11986 15982 16055 16056 15983 +11986 12059 12060 11987 15983 16056 16057 15984 +11987 12060 12061 11988 15984 16057 16058 15985 +11988 12061 12062 11989 15985 16058 16059 15986 +11989 12062 12063 11990 15986 16059 16060 15987 +11990 12063 12064 11991 15987 16060 16061 15988 +11991 12064 12065 11992 15988 16061 16062 15989 +11992 12065 12066 11993 15989 16062 16063 15990 +11993 12066 12067 11994 15990 16063 16064 15991 +11994 12067 12068 11995 15991 16064 16065 15992 +11995 12068 12069 11996 15992 16065 16066 15993 +11996 12069 12070 11997 15993 16066 16067 15994 +11997 12070 12071 11998 15994 16067 16068 15995 +11998 12071 12072 11999 15995 16068 16069 15996 +11999 12072 12073 12000 15996 16069 16070 15997 +12000 12073 12074 12001 15997 16070 16071 15998 +12001 12074 12075 12002 15998 16071 16072 15999 +12002 12075 12076 12003 15999 16072 16073 16000 +12003 12076 12077 12004 16000 16073 16074 16001 +12004 12077 12078 12005 16001 16074 16075 16002 +12005 12078 12079 12006 16002 16075 16076 16003 +12006 12079 12080 12007 16003 16076 16077 16004 +12007 12080 12081 12008 16004 16077 16078 16005 +12008 12081 12082 12009 16005 16078 16079 16006 +12009 12082 12083 12010 16006 16079 16080 16007 +12010 12083 12084 12011 16007 16080 16081 16008 +12011 12084 12085 12012 16008 16081 16082 16009 +12012 12085 12086 12013 16009 16082 16083 16010 +12013 12086 12087 12014 16010 16083 16084 16011 +12014 12087 12088 12015 16011 16084 16085 16012 +12015 12088 12089 12016 16012 16085 16086 16013 +12016 12089 12090 12017 16013 16086 16087 16014 +12017 12090 12091 12018 16014 16087 16088 16015 +12018 12091 12092 12019 16015 16088 16089 16016 +12019 12092 12093 12020 16016 16089 16090 16017 +12020 12093 12094 12021 16017 16090 16091 16018 +12021 12094 12095 12022 16018 16091 16092 16019 +12022 12095 12096 12023 16019 16092 16093 16020 +12023 12096 12097 12024 16020 16093 16094 16021 +12024 12097 12098 12025 16021 16094 16095 16022 +12025 12098 12099 12026 16022 16095 16096 16023 +12026 12099 12100 12027 16023 16096 16097 16024 +12027 12100 12101 12028 16024 16097 16098 16025 +12028 12101 12102 12029 16025 16098 16099 16026 +12029 12102 12103 12030 16026 16099 16100 16027 +12030 12103 12104 12031 16027 16100 16101 16028 +12031 12104 12105 12032 16028 16101 16102 16029 +12032 12105 12106 12033 16029 16102 16103 16030 +12033 12106 12107 12034 16030 16103 16104 16031 +12034 12107 12108 12035 16031 16104 16105 16032 +12035 12108 12109 12036 16032 16105 16106 16033 +12036 12109 12110 12037 16033 16106 16107 16034 +12037 12110 12111 12038 16034 16107 16108 16035 +12038 12111 12112 12039 16035 16108 16109 16036 +12039 12112 12113 12040 16036 16109 16110 16037 +12040 12113 12114 12041 16037 16110 16111 16038 +12041 12114 12115 12042 16038 16111 16112 16039 +12042 12115 12116 12043 16039 16112 16113 16040 +12043 12116 12117 12044 16040 16113 16114 16041 +12044 12117 12118 12045 16041 16114 16115 16042 +12045 12118 12119 12046 16042 16115 16116 16043 +12046 12119 12120 12047 16043 16116 16117 16044 +12047 12120 12121 12048 16044 16117 16118 16045 +12048 12121 12122 12049 16045 16118 16119 16046 +12049 12122 12123 12050 16046 16119 16120 16047 +12050 12123 12124 12051 16047 16120 16121 16048 +12052 12125 12126 12053 16049 16122 16123 16050 +12053 12126 12127 12054 16050 16123 16124 16051 +12054 12127 12128 12055 16051 16124 16125 16052 +12055 12128 12129 12056 16052 16125 16126 16053 +12056 12129 12130 12057 16053 16126 16127 16054 +12057 12130 12131 12058 16054 16127 16128 16055 +12058 12131 12132 12059 16055 16128 16129 16056 +12059 12132 12133 12060 16056 16129 16130 16057 +12060 12133 12134 12061 16057 16130 16131 16058 +12061 12134 12135 12062 16058 16131 16132 16059 +12062 12135 12136 12063 16059 16132 16133 16060 +12063 12136 12137 12064 16060 16133 16134 16061 +12064 12137 12138 12065 16061 16134 16135 16062 +12065 12138 12139 12066 16062 16135 16136 16063 +12066 12139 12140 12067 16063 16136 16137 16064 +12067 12140 12141 12068 16064 16137 16138 16065 +12068 12141 12142 12069 16065 16138 16139 16066 +12069 12142 12143 12070 16066 16139 16140 16067 +12070 12143 12144 12071 16067 16140 16141 16068 +12071 12144 12145 12072 16068 16141 16142 16069 +12072 12145 12146 12073 16069 16142 16143 16070 +12073 12146 12147 12074 16070 16143 16144 16071 +12074 12147 12148 12075 16071 16144 16145 16072 +12075 12148 12149 12076 16072 16145 16146 16073 +12076 12149 12150 12077 16073 16146 16147 16074 +12077 12150 12151 12078 16074 16147 16148 16075 +12078 12151 12152 12079 16075 16148 16149 16076 +12079 12152 12153 12080 16076 16149 16150 16077 +12080 12153 12154 12081 16077 16150 16151 16078 +12081 12154 12155 12082 16078 16151 16152 16079 +12082 12155 12156 12083 16079 16152 16153 16080 +12083 12156 12157 12084 16080 16153 16154 16081 +12084 12157 12158 12085 16081 16154 16155 16082 +12085 12158 12159 12086 16082 16155 16156 16083 +12086 12159 12160 12087 16083 16156 16157 16084 +12087 12160 12161 12088 16084 16157 16158 16085 +12088 12161 12162 12089 16085 16158 16159 16086 +12089 12162 12163 12090 16086 16159 16160 16087 +12090 12163 12164 12091 16087 16160 16161 16088 +12091 12164 12165 12092 16088 16161 16162 16089 +12092 12165 12166 12093 16089 16162 16163 16090 +12093 12166 12167 12094 16090 16163 16164 16091 +12094 12167 12168 12095 16091 16164 16165 16092 +12095 12168 12169 12096 16092 16165 16166 16093 +12096 12169 12170 12097 16093 16166 16167 16094 +12097 12170 12171 12098 16094 16167 16168 16095 +12098 12171 12172 12099 16095 16168 16169 16096 +12099 12172 12173 12100 16096 16169 16170 16097 +12100 12173 12174 12101 16097 16170 16171 16098 +12101 12174 12175 12102 16098 16171 16172 16099 +12102 12175 12176 12103 16099 16172 16173 16100 +12103 12176 12177 12104 16100 16173 16174 16101 +12104 12177 12178 12105 16101 16174 16175 16102 +12105 12178 12179 12106 16102 16175 16176 16103 +12106 12179 12180 12107 16103 16176 16177 16104 +12107 12180 12181 12108 16104 16177 16178 16105 +12108 12181 12182 12109 16105 16178 16179 16106 +12109 12182 12183 12110 16106 16179 16180 16107 +12110 12183 12184 12111 16107 16180 16181 16108 +12111 12184 12185 12112 16108 16181 16182 16109 +12112 12185 12186 12113 16109 16182 16183 16110 +12113 12186 12187 12114 16110 16183 16184 16111 +12114 12187 12188 12115 16111 16184 16185 16112 +12115 12188 12189 12116 16112 16185 16186 16113 +12116 12189 12190 12117 16113 16186 16187 16114 +12117 12190 12191 12118 16114 16187 16188 16115 +12118 12191 12192 12119 16115 16188 16189 16116 +12119 12192 12193 12120 16116 16189 16190 16117 +12120 12193 12194 12121 16117 16190 16191 16118 +12121 12194 12195 12122 16118 16191 16192 16119 +12122 12195 12196 12123 16119 16192 16193 16120 +12123 12196 12197 12124 16120 16193 16194 16121 +12125 12198 12199 12126 16122 16195 16196 16123 +12126 12199 12200 12127 16123 16196 16197 16124 +12127 12200 12201 12128 16124 16197 16198 16125 +12128 12201 12202 12129 16125 16198 16199 16126 +12129 12202 12203 12130 16126 16199 16200 16127 +12130 12203 12204 12131 16127 16200 16201 16128 +12131 12204 12205 12132 16128 16201 16202 16129 +12132 12205 12206 12133 16129 16202 16203 16130 +12133 12206 12207 12134 16130 16203 16204 16131 +12134 12207 12208 12135 16131 16204 16205 16132 +12135 12208 12209 12136 16132 16205 16206 16133 +12136 12209 12210 12137 16133 16206 16207 16134 +12137 12210 12211 12138 16134 16207 16208 16135 +12138 12211 12212 12139 16135 16208 16209 16136 +12139 12212 12213 12140 16136 16209 16210 16137 +12140 12213 12214 12141 16137 16210 16211 16138 +12141 12214 12215 12142 16138 16211 16212 16139 +12142 12215 12216 12143 16139 16212 16213 16140 +12143 12216 12217 12144 16140 16213 16214 16141 +12144 12217 12218 12145 16141 16214 16215 16142 +12145 12218 12219 12146 16142 16215 16216 16143 +12146 12219 12220 12147 16143 16216 16217 16144 +12147 12220 12221 12148 16144 16217 16218 16145 +12148 12221 12222 12149 16145 16218 16219 16146 +12149 12222 12223 12150 16146 16219 16220 16147 +12150 12223 12224 12151 16147 16220 16221 16148 +12151 12224 12225 12152 16148 16221 16222 16149 +12152 12225 12226 12153 16149 16222 16223 16150 +12153 12226 12227 12154 16150 16223 16224 16151 +12154 12227 12228 12155 16151 16224 16225 16152 +12155 12228 12229 12156 16152 16225 16226 16153 +12156 12229 12230 12157 16153 16226 16227 16154 +12157 12230 12231 12158 16154 16227 16228 16155 +12158 12231 12232 12159 16155 16228 16229 16156 +12159 12232 12233 12160 16156 16229 16230 16157 +12160 12233 12234 12161 16157 16230 16231 16158 +12161 12234 12235 12162 16158 16231 16232 16159 +12162 12235 12236 12163 16159 16232 16233 16160 +12163 12236 12237 12164 16160 16233 16234 16161 +12164 12237 12238 12165 16161 16234 16235 16162 +12165 12238 12239 12166 16162 16235 16236 16163 +12166 12239 12240 12167 16163 16236 16237 16164 +12167 12240 12241 12168 16164 16237 16238 16165 +12168 12241 12242 12169 16165 16238 16239 16166 +12169 12242 12243 12170 16166 16239 16240 16167 +12170 12243 12244 12171 16167 16240 16241 16168 +12171 12244 12245 12172 16168 16241 16242 16169 +12172 12245 12246 12173 16169 16242 16243 16170 +12173 12246 12247 12174 16170 16243 16244 16171 +12174 12247 12248 12175 16171 16244 16245 16172 +12175 12248 12249 12176 16172 16245 16246 16173 +12176 12249 12250 12177 16173 16246 16247 16174 +12177 12250 12251 12178 16174 16247 16248 16175 +12178 12251 12252 12179 16175 16248 16249 16176 +12179 12252 12253 12180 16176 16249 16250 16177 +12180 12253 12254 12181 16177 16250 16251 16178 +12181 12254 12255 12182 16178 16251 16252 16179 +12182 12255 12256 12183 16179 16252 16253 16180 +12183 12256 12257 12184 16180 16253 16254 16181 +12184 12257 12258 12185 16181 16254 16255 16182 +12185 12258 12259 12186 16182 16255 16256 16183 +12186 12259 12260 12187 16183 16256 16257 16184 +12187 12260 12261 12188 16184 16257 16258 16185 +12188 12261 12262 12189 16185 16258 16259 16186 +12189 12262 12263 12190 16186 16259 16260 16187 +12190 12263 12264 12191 16187 16260 16261 16188 +12191 12264 12265 12192 16188 16261 16262 16189 +12192 12265 12266 12193 16189 16262 16263 16190 +12193 12266 12267 12194 16190 16263 16264 16191 +12194 12267 12268 12195 16191 16264 16265 16192 +12195 12268 12269 12196 16192 16265 16266 16193 +12196 12269 12270 12197 16193 16266 16267 16194 +12198 12271 12272 12199 16195 16268 16269 16196 +12199 12272 12273 12200 16196 16269 16270 16197 +12200 12273 12274 12201 16197 16270 16271 16198 +12201 12274 12275 12202 16198 16271 16272 16199 +12202 12275 12276 12203 16199 16272 16273 16200 +12203 12276 12277 12204 16200 16273 16274 16201 +12204 12277 12278 12205 16201 16274 16275 16202 +12205 12278 12279 12206 16202 16275 16276 16203 +12206 12279 12280 12207 16203 16276 16277 16204 +12207 12280 12281 12208 16204 16277 16278 16205 +12208 12281 12282 12209 16205 16278 16279 16206 +12209 12282 12283 12210 16206 16279 16280 16207 +12210 12283 12284 12211 16207 16280 16281 16208 +12211 12284 12285 12212 16208 16281 16282 16209 +12212 12285 12286 12213 16209 16282 16283 16210 +12213 12286 12287 12214 16210 16283 16284 16211 +12214 12287 12288 12215 16211 16284 16285 16212 +12215 12288 12289 12216 16212 16285 16286 16213 +12216 12289 12290 12217 16213 16286 16287 16214 +12217 12290 12291 12218 16214 16287 16288 16215 +12218 12291 12292 12219 16215 16288 16289 16216 +12219 12292 12293 12220 16216 16289 16290 16217 +12220 12293 12294 12221 16217 16290 16291 16218 +12221 12294 12295 12222 16218 16291 16292 16219 +12222 12295 12296 12223 16219 16292 16293 16220 +12223 12296 12297 12224 16220 16293 16294 16221 +12224 12297 12298 12225 16221 16294 16295 16222 +12225 12298 12299 12226 16222 16295 16296 16223 +12226 12299 12300 12227 16223 16296 16297 16224 +12227 12300 12301 12228 16224 16297 16298 16225 +12228 12301 12302 12229 16225 16298 16299 16226 +12229 12302 12303 12230 16226 16299 16300 16227 +12230 12303 12304 12231 16227 16300 16301 16228 +12231 12304 12305 12232 16228 16301 16302 16229 +12232 12305 12306 12233 16229 16302 16303 16230 +12233 12306 12307 12234 16230 16303 16304 16231 +12234 12307 12308 12235 16231 16304 16305 16232 +12235 12308 12309 12236 16232 16305 16306 16233 +12236 12309 12310 12237 16233 16306 16307 16234 +12237 12310 12311 12238 16234 16307 16308 16235 +12238 12311 12312 12239 16235 16308 16309 16236 +12239 12312 12313 12240 16236 16309 16310 16237 +12240 12313 12314 12241 16237 16310 16311 16238 +12241 12314 12315 12242 16238 16311 16312 16239 +12242 12315 12316 12243 16239 16312 16313 16240 +12243 12316 12317 12244 16240 16313 16314 16241 +12244 12317 12318 12245 16241 16314 16315 16242 +12245 12318 12319 12246 16242 16315 16316 16243 +12246 12319 12320 12247 16243 16316 16317 16244 +12247 12320 12321 12248 16244 16317 16318 16245 +12248 12321 12322 12249 16245 16318 16319 16246 +12249 12322 12323 12250 16246 16319 16320 16247 +12250 12323 12324 12251 16247 16320 16321 16248 +12251 12324 12325 12252 16248 16321 16322 16249 +12252 12325 12326 12253 16249 16322 16323 16250 +12253 12326 12327 12254 16250 16323 16324 16251 +12254 12327 12328 12255 16251 16324 16325 16252 +12255 12328 12329 12256 16252 16325 16326 16253 +12256 12329 12330 12257 16253 16326 16327 16254 +12257 12330 12331 12258 16254 16327 16328 16255 +12258 12331 12332 12259 16255 16328 16329 16256 +12259 12332 12333 12260 16256 16329 16330 16257 +12260 12333 12334 12261 16257 16330 16331 16258 +12261 12334 12335 12262 16258 16331 16332 16259 +12262 12335 12336 12263 16259 16332 16333 16260 +12263 12336 12337 12264 16260 16333 16334 16261 +12264 12337 12338 12265 16261 16334 16335 16262 +12265 12338 12339 12266 16262 16335 16336 16263 +12266 12339 12340 12267 16263 16336 16337 16264 +12267 12340 12341 12268 16264 16337 16338 16265 +12268 12341 12342 12269 16265 16338 16339 16266 +12269 12342 12343 12270 16266 16339 16340 16267 +12271 12344 12345 12272 16268 16341 16342 16269 +12272 12345 12346 12273 16269 16342 16343 16270 +12273 12346 12347 12274 16270 16343 16344 16271 +12274 12347 12348 12275 16271 16344 16345 16272 +12275 12348 12349 12276 16272 16345 16346 16273 +12276 12349 12350 12277 16273 16346 16347 16274 +12277 12350 12351 12278 16274 16347 16348 16275 +12278 12351 12352 12279 16275 16348 16349 16276 +12279 12352 12353 12280 16276 16349 16350 16277 +12280 12353 12354 12281 16277 16350 16351 16278 +12281 12354 12355 12282 16278 16351 16352 16279 +12282 12355 12356 12283 16279 16352 16353 16280 +12283 12356 12357 12284 16280 16353 16354 16281 +12284 12357 12358 12285 16281 16354 16355 16282 +12285 12358 12359 12286 16282 16355 16356 16283 +12286 12359 12360 12287 16283 16356 16357 16284 +12287 12360 12361 12288 16284 16357 16358 16285 +12288 12361 12362 12289 16285 16358 16359 16286 +12289 12362 12363 12290 16286 16359 16360 16287 +12290 12363 12364 12291 16287 16360 16361 16288 +12291 12364 12365 12292 16288 16361 16362 16289 +12292 12365 12366 12293 16289 16362 16363 16290 +12293 12366 12367 12294 16290 16363 16364 16291 +12294 12367 12368 12295 16291 16364 16365 16292 +12295 12368 12369 12296 16292 16365 16366 16293 +12296 12369 12370 12297 16293 16366 16367 16294 +12297 12370 12371 12298 16294 16367 16368 16295 +12298 12371 12372 12299 16295 16368 16369 16296 +12299 12372 12373 12300 16296 16369 16370 16297 +12300 12373 12374 12301 16297 16370 16371 16298 +12301 12374 12375 12302 16298 16371 16372 16299 +12302 12375 12376 12303 16299 16372 16373 16300 +12303 12376 12377 12304 16300 16373 16374 16301 +12304 12377 12378 12305 16301 16374 16375 16302 +12305 12378 12379 12306 16302 16375 16376 16303 +12306 12379 12380 12307 16303 16376 16377 16304 +12307 12380 12381 12308 16304 16377 16378 16305 +12308 12381 12382 12309 16305 16378 16379 16306 +12309 12382 12383 12310 16306 16379 16380 16307 +12310 12383 12384 12311 16307 16380 16381 16308 +12311 12384 12385 12312 16308 16381 16382 16309 +12312 12385 12386 12313 16309 16382 16383 16310 +12313 12386 12387 12314 16310 16383 16384 16311 +12314 12387 12388 12315 16311 16384 16385 16312 +12315 12388 12389 12316 16312 16385 16386 16313 +12316 12389 12390 12317 16313 16386 16387 16314 +12317 12390 12391 12318 16314 16387 16388 16315 +12318 12391 12392 12319 16315 16388 16389 16316 +12319 12392 12393 12320 16316 16389 16390 16317 +12320 12393 12394 12321 16317 16390 16391 16318 +12321 12394 12395 12322 16318 16391 16392 16319 +12322 12395 12396 12323 16319 16392 16393 16320 +12323 12396 12397 12324 16320 16393 16394 16321 +12324 12397 12398 12325 16321 16394 16395 16322 +12325 12398 12399 12326 16322 16395 16396 16323 +12326 12399 12400 12327 16323 16396 16397 16324 +12327 12400 12401 12328 16324 16397 16398 16325 +12328 12401 12402 12329 16325 16398 16399 16326 +12329 12402 12403 12330 16326 16399 16400 16327 +12330 12403 12404 12331 16327 16400 16401 16328 +12331 12404 12405 12332 16328 16401 16402 16329 +12332 12405 12406 12333 16329 16402 16403 16330 +12333 12406 12407 12334 16330 16403 16404 16331 +12334 12407 12408 12335 16331 16404 16405 16332 +12335 12408 12409 12336 16332 16405 16406 16333 +12336 12409 12410 12337 16333 16406 16407 16334 +12337 12410 12411 12338 16334 16407 16408 16335 +12338 12411 12412 12339 16335 16408 16409 16336 +12339 12412 12413 12340 16336 16409 16410 16337 +12340 12413 12414 12341 16337 16410 16411 16338 +12341 12414 12415 12342 16338 16411 16412 16339 +12342 12415 12416 12343 16339 16412 16413 16340 +12344 12417 12418 12345 16341 16414 16415 16342 +12345 12418 12419 12346 16342 16415 16416 16343 +12346 12419 12420 12347 16343 16416 16417 16344 +12347 12420 12421 12348 16344 16417 16418 16345 +12348 12421 12422 12349 16345 16418 16419 16346 +12349 12422 12423 12350 16346 16419 16420 16347 +12350 12423 12424 12351 16347 16420 16421 16348 +12351 12424 12425 12352 16348 16421 16422 16349 +12352 12425 12426 12353 16349 16422 16423 16350 +12353 12426 12427 12354 16350 16423 16424 16351 +12354 12427 12428 12355 16351 16424 16425 16352 +12355 12428 12429 12356 16352 16425 16426 16353 +12356 12429 12430 12357 16353 16426 16427 16354 +12357 12430 12431 12358 16354 16427 16428 16355 +12358 12431 12432 12359 16355 16428 16429 16356 +12359 12432 12433 12360 16356 16429 16430 16357 +12360 12433 12434 12361 16357 16430 16431 16358 +12361 12434 12435 12362 16358 16431 16432 16359 +12362 12435 12436 12363 16359 16432 16433 16360 +12363 12436 12437 12364 16360 16433 16434 16361 +12364 12437 12438 12365 16361 16434 16435 16362 +12365 12438 12439 12366 16362 16435 16436 16363 +12366 12439 12440 12367 16363 16436 16437 16364 +12367 12440 12441 12368 16364 16437 16438 16365 +12368 12441 12442 12369 16365 16438 16439 16366 +12369 12442 12443 12370 16366 16439 16440 16367 +12370 12443 12444 12371 16367 16440 16441 16368 +12371 12444 12445 12372 16368 16441 16442 16369 +12372 12445 12446 12373 16369 16442 16443 16370 +12373 12446 12447 12374 16370 16443 16444 16371 +12374 12447 12448 12375 16371 16444 16445 16372 +12375 12448 12449 12376 16372 16445 16446 16373 +12376 12449 12450 12377 16373 16446 16447 16374 +12377 12450 12451 12378 16374 16447 16448 16375 +12378 12451 12452 12379 16375 16448 16449 16376 +12379 12452 12453 12380 16376 16449 16450 16377 +12380 12453 12454 12381 16377 16450 16451 16378 +12381 12454 12455 12382 16378 16451 16452 16379 +12382 12455 12456 12383 16379 16452 16453 16380 +12383 12456 12457 12384 16380 16453 16454 16381 +12384 12457 12458 12385 16381 16454 16455 16382 +12385 12458 12459 12386 16382 16455 16456 16383 +12386 12459 12460 12387 16383 16456 16457 16384 +12387 12460 12461 12388 16384 16457 16458 16385 +12388 12461 12462 12389 16385 16458 16459 16386 +12389 12462 12463 12390 16386 16459 16460 16387 +12390 12463 12464 12391 16387 16460 16461 16388 +12391 12464 12465 12392 16388 16461 16462 16389 +12392 12465 12466 12393 16389 16462 16463 16390 +12393 12466 12467 12394 16390 16463 16464 16391 +12394 12467 12468 12395 16391 16464 16465 16392 +12395 12468 12469 12396 16392 16465 16466 16393 +12396 12469 12470 12397 16393 16466 16467 16394 +12397 12470 12471 12398 16394 16467 16468 16395 +12398 12471 12472 12399 16395 16468 16469 16396 +12399 12472 12473 12400 16396 16469 16470 16397 +12400 12473 12474 12401 16397 16470 16471 16398 +12401 12474 12475 12402 16398 16471 16472 16399 +12402 12475 12476 12403 16399 16472 16473 16400 +12403 12476 12477 12404 16400 16473 16474 16401 +12404 12477 12478 12405 16401 16474 16475 16402 +12405 12478 12479 12406 16402 16475 16476 16403 +12406 12479 12480 12407 16403 16476 16477 16404 +12407 12480 12481 12408 16404 16477 16478 16405 +12408 12481 12482 12409 16405 16478 16479 16406 +12409 12482 12483 12410 16406 16479 16480 16407 +12410 12483 12484 12411 16407 16480 16481 16408 +12411 12484 12485 12412 16408 16481 16482 16409 +12412 12485 12486 12413 16409 16482 16483 16410 +12413 12486 12487 12414 16410 16483 16484 16411 +12414 12487 12488 12415 16411 16484 16485 16412 +12415 12488 12489 12416 16412 16485 16486 16413 +12417 12490 12491 12418 16414 16487 16488 16415 +12418 12491 12492 12419 16415 16488 16489 16416 +12419 12492 12493 12420 16416 16489 16490 16417 +12420 12493 12494 12421 16417 16490 16491 16418 +12421 12494 12495 12422 16418 16491 16492 16419 +12422 12495 12496 12423 16419 16492 16493 16420 +12423 12496 12497 12424 16420 16493 16494 16421 +12424 12497 12498 12425 16421 16494 16495 16422 +12425 12498 12499 12426 16422 16495 16496 16423 +12426 12499 12500 12427 16423 16496 16497 16424 +12427 12500 12501 12428 16424 16497 16498 16425 +12428 12501 12502 12429 16425 16498 16499 16426 +12429 12502 12503 12430 16426 16499 16500 16427 +12430 12503 12504 12431 16427 16500 16501 16428 +12431 12504 12505 12432 16428 16501 16502 16429 +12432 12505 12506 12433 16429 16502 16503 16430 +12433 12506 12507 12434 16430 16503 16504 16431 +12434 12507 12508 12435 16431 16504 16505 16432 +12435 12508 12509 12436 16432 16505 16506 16433 +12436 12509 12510 12437 16433 16506 16507 16434 +12437 12510 12511 12438 16434 16507 16508 16435 +12438 12511 12512 12439 16435 16508 16509 16436 +12439 12512 12513 12440 16436 16509 16510 16437 +12440 12513 12514 12441 16437 16510 16511 16438 +12441 12514 12515 12442 16438 16511 16512 16439 +12442 12515 12516 12443 16439 16512 16513 16440 +12443 12516 12517 12444 16440 16513 16514 16441 +12444 12517 12518 12445 16441 16514 16515 16442 +12445 12518 12519 12446 16442 16515 16516 16443 +12446 12519 12520 12447 16443 16516 16517 16444 +12447 12520 12521 12448 16444 16517 16518 16445 +12448 12521 12522 12449 16445 16518 16519 16446 +12449 12522 12523 12450 16446 16519 16520 16447 +12450 12523 12524 12451 16447 16520 16521 16448 +12451 12524 12525 12452 16448 16521 16522 16449 +12452 12525 12526 12453 16449 16522 16523 16450 +12453 12526 12527 12454 16450 16523 16524 16451 +12454 12527 12528 12455 16451 16524 16525 16452 +12455 12528 12529 12456 16452 16525 16526 16453 +12456 12529 12530 12457 16453 16526 16527 16454 +12457 12530 12531 12458 16454 16527 16528 16455 +12458 12531 12532 12459 16455 16528 16529 16456 +12459 12532 12533 12460 16456 16529 16530 16457 +12460 12533 12534 12461 16457 16530 16531 16458 +12461 12534 12535 12462 16458 16531 16532 16459 +12462 12535 12536 12463 16459 16532 16533 16460 +12463 12536 12537 12464 16460 16533 16534 16461 +12464 12537 12538 12465 16461 16534 16535 16462 +12465 12538 12539 12466 16462 16535 16536 16463 +12466 12539 12540 12467 16463 16536 16537 16464 +12467 12540 12541 12468 16464 16537 16538 16465 +12468 12541 12542 12469 16465 16538 16539 16466 +12469 12542 12543 12470 16466 16539 16540 16467 +12470 12543 12544 12471 16467 16540 16541 16468 +12471 12544 12545 12472 16468 16541 16542 16469 +12472 12545 12546 12473 16469 16542 16543 16470 +12473 12546 12547 12474 16470 16543 16544 16471 +12474 12547 12548 12475 16471 16544 16545 16472 +12475 12548 12549 12476 16472 16545 16546 16473 +12476 12549 12550 12477 16473 16546 16547 16474 +12477 12550 12551 12478 16474 16547 16548 16475 +12478 12551 12552 12479 16475 16548 16549 16476 +12479 12552 12553 12480 16476 16549 16550 16477 +12480 12553 12554 12481 16477 16550 16551 16478 +12481 12554 12555 12482 16478 16551 16552 16479 +12482 12555 12556 12483 16479 16552 16553 16480 +12483 12556 12557 12484 16480 16553 16554 16481 +12484 12557 12558 12485 16481 16554 16555 16482 +12485 12558 12559 12486 16482 16555 16556 16483 +12486 12559 12560 12487 16483 16556 16557 16484 +12487 12560 12561 12488 16484 16557 16558 16485 +12488 12561 12562 12489 16485 16558 16559 16486 +12490 12563 12564 12491 16487 16560 16561 16488 +12491 12564 12565 12492 16488 16561 16562 16489 +12492 12565 12566 12493 16489 16562 16563 16490 +12493 12566 12567 12494 16490 16563 16564 16491 +12494 12567 12568 12495 16491 16564 16565 16492 +12495 12568 12569 12496 16492 16565 16566 16493 +12496 12569 12570 12497 16493 16566 16567 16494 +12497 12570 12571 12498 16494 16567 16568 16495 +12498 12571 12572 12499 16495 16568 16569 16496 +12499 12572 12573 12500 16496 16569 16570 16497 +12500 12573 12574 12501 16497 16570 16571 16498 +12501 12574 12575 12502 16498 16571 16572 16499 +12502 12575 12576 12503 16499 16572 16573 16500 +12503 12576 12577 12504 16500 16573 16574 16501 +12504 12577 12578 12505 16501 16574 16575 16502 +12505 12578 12579 12506 16502 16575 16576 16503 +12506 12579 12580 12507 16503 16576 16577 16504 +12507 12580 12581 12508 16504 16577 16578 16505 +12508 12581 12582 12509 16505 16578 16579 16506 +12509 12582 12583 12510 16506 16579 16580 16507 +12510 12583 12584 12511 16507 16580 16581 16508 +12511 12584 12585 12512 16508 16581 16582 16509 +12512 12585 12586 12513 16509 16582 16583 16510 +12513 12586 12587 12514 16510 16583 16584 16511 +12514 12587 12588 12515 16511 16584 16585 16512 +12515 12588 12589 12516 16512 16585 16586 16513 +12516 12589 12590 12517 16513 16586 16587 16514 +12517 12590 12591 12518 16514 16587 16588 16515 +12518 12591 12592 12519 16515 16588 16589 16516 +12519 12592 12593 12520 16516 16589 16590 16517 +12520 12593 12594 12521 16517 16590 16591 16518 +12521 12594 12595 12522 16518 16591 16592 16519 +12522 12595 12596 12523 16519 16592 16593 16520 +12523 12596 12597 12524 16520 16593 16594 16521 +12524 12597 12598 12525 16521 16594 16595 16522 +12525 12598 12599 12526 16522 16595 16596 16523 +12526 12599 12600 12527 16523 16596 16597 16524 +12527 12600 12601 12528 16524 16597 16598 16525 +12528 12601 12602 12529 16525 16598 16599 16526 +12529 12602 12603 12530 16526 16599 16600 16527 +12530 12603 12604 12531 16527 16600 16601 16528 +12531 12604 12605 12532 16528 16601 16602 16529 +12532 12605 12606 12533 16529 16602 16603 16530 +12533 12606 12607 12534 16530 16603 16604 16531 +12534 12607 12608 12535 16531 16604 16605 16532 +12535 12608 12609 12536 16532 16605 16606 16533 +12536 12609 12610 12537 16533 16606 16607 16534 +12537 12610 12611 12538 16534 16607 16608 16535 +12538 12611 12612 12539 16535 16608 16609 16536 +12539 12612 12613 12540 16536 16609 16610 16537 +12540 12613 12614 12541 16537 16610 16611 16538 +12541 12614 12615 12542 16538 16611 16612 16539 +12542 12615 12616 12543 16539 16612 16613 16540 +12543 12616 12617 12544 16540 16613 16614 16541 +12544 12617 12618 12545 16541 16614 16615 16542 +12545 12618 12619 12546 16542 16615 16616 16543 +12546 12619 12620 12547 16543 16616 16617 16544 +12547 12620 12621 12548 16544 16617 16618 16545 +12548 12621 12622 12549 16545 16618 16619 16546 +12549 12622 12623 12550 16546 16619 16620 16547 +12550 12623 12624 12551 16547 16620 16621 16548 +12551 12624 12625 12552 16548 16621 16622 16549 +12552 12625 12626 12553 16549 16622 16623 16550 +12553 12626 12627 12554 16550 16623 16624 16551 +12554 12627 12628 12555 16551 16624 16625 16552 +12555 12628 12629 12556 16552 16625 16626 16553 +12556 12629 12630 12557 16553 16626 16627 16554 +12557 12630 12631 12558 16554 16627 16628 16555 +12558 12631 12632 12559 16555 16628 16629 16556 +12559 12632 12633 12560 16556 16629 16630 16557 +12560 12633 12634 12561 16557 16630 16631 16558 +12561 12634 12635 12562 16558 16631 16632 16559 +12563 12636 12637 12564 16560 16633 16634 16561 +12564 12637 12638 12565 16561 16634 16635 16562 +12565 12638 12639 12566 16562 16635 16636 16563 +12566 12639 12640 12567 16563 16636 16637 16564 +12567 12640 12641 12568 16564 16637 16638 16565 +12568 12641 12642 12569 16565 16638 16639 16566 +12569 12642 12643 12570 16566 16639 16640 16567 +12570 12643 12644 12571 16567 16640 16641 16568 +12571 12644 12645 12572 16568 16641 16642 16569 +12572 12645 12646 12573 16569 16642 16643 16570 +12573 12646 12647 12574 16570 16643 16644 16571 +12574 12647 12648 12575 16571 16644 16645 16572 +12575 12648 12649 12576 16572 16645 16646 16573 +12576 12649 12650 12577 16573 16646 16647 16574 +12577 12650 12651 12578 16574 16647 16648 16575 +12578 12651 12652 12579 16575 16648 16649 16576 +12579 12652 12653 12580 16576 16649 16650 16577 +12580 12653 12654 12581 16577 16650 16651 16578 +12581 12654 12655 12582 16578 16651 16652 16579 +12582 12655 12656 12583 16579 16652 16653 16580 +12583 12656 12657 12584 16580 16653 16654 16581 +12584 12657 12658 12585 16581 16654 16655 16582 +12585 12658 12659 12586 16582 16655 16656 16583 +12586 12659 12660 12587 16583 16656 16657 16584 +12587 12660 12661 12588 16584 16657 16658 16585 +12588 12661 12662 12589 16585 16658 16659 16586 +12589 12662 12663 12590 16586 16659 16660 16587 +12590 12663 12664 12591 16587 16660 16661 16588 +12591 12664 12665 12592 16588 16661 16662 16589 +12592 12665 12666 12593 16589 16662 16663 16590 +12593 12666 12667 12594 16590 16663 16664 16591 +12594 12667 12668 12595 16591 16664 16665 16592 +12595 12668 12669 12596 16592 16665 16666 16593 +12596 12669 12670 12597 16593 16666 16667 16594 +12597 12670 12671 12598 16594 16667 16668 16595 +12598 12671 12672 12599 16595 16668 16669 16596 +12599 12672 12673 12600 16596 16669 16670 16597 +12600 12673 12674 12601 16597 16670 16671 16598 +12601 12674 12675 12602 16598 16671 16672 16599 +12602 12675 12676 12603 16599 16672 16673 16600 +12603 12676 12677 12604 16600 16673 16674 16601 +12604 12677 12678 12605 16601 16674 16675 16602 +12605 12678 12679 12606 16602 16675 16676 16603 +12606 12679 12680 12607 16603 16676 16677 16604 +12607 12680 12681 12608 16604 16677 16678 16605 +12608 12681 12682 12609 16605 16678 16679 16606 +12609 12682 12683 12610 16606 16679 16680 16607 +12610 12683 12684 12611 16607 16680 16681 16608 +12611 12684 12685 12612 16608 16681 16682 16609 +12612 12685 12686 12613 16609 16682 16683 16610 +12613 12686 12687 12614 16610 16683 16684 16611 +12614 12687 12688 12615 16611 16684 16685 16612 +12615 12688 12689 12616 16612 16685 16686 16613 +12616 12689 12690 12617 16613 16686 16687 16614 +12617 12690 12691 12618 16614 16687 16688 16615 +12618 12691 12692 12619 16615 16688 16689 16616 +12619 12692 12693 12620 16616 16689 16690 16617 +12620 12693 12694 12621 16617 16690 16691 16618 +12621 12694 12695 12622 16618 16691 16692 16619 +12622 12695 12696 12623 16619 16692 16693 16620 +12623 12696 12697 12624 16620 16693 16694 16621 +12624 12697 12698 12625 16621 16694 16695 16622 +12625 12698 12699 12626 16622 16695 16696 16623 +12626 12699 12700 12627 16623 16696 16697 16624 +12627 12700 12701 12628 16624 16697 16698 16625 +12628 12701 12702 12629 16625 16698 16699 16626 +12629 12702 12703 12630 16626 16699 16700 16627 +12630 12703 12704 12631 16627 16700 16701 16628 +12631 12704 12705 12632 16628 16701 16702 16629 +12632 12705 12706 12633 16629 16702 16703 16630 +12633 12706 12707 12634 16630 16703 16704 16631 +12634 12707 12708 12635 16631 16704 16705 16632 +12636 12709 12710 12637 16633 16706 16707 16634 +12637 12710 12711 12638 16634 16707 16708 16635 +12638 12711 12712 12639 16635 16708 16709 16636 +12639 12712 12713 12640 16636 16709 16710 16637 +12640 12713 12714 12641 16637 16710 16711 16638 +12641 12714 12715 12642 16638 16711 16712 16639 +12642 12715 12716 12643 16639 16712 16713 16640 +12643 12716 12717 12644 16640 16713 16714 16641 +12644 12717 12718 12645 16641 16714 16715 16642 +12645 12718 12719 12646 16642 16715 16716 16643 +12646 12719 12720 12647 16643 16716 16717 16644 +12647 12720 12721 12648 16644 16717 16718 16645 +12648 12721 12722 12649 16645 16718 16719 16646 +12649 12722 12723 12650 16646 16719 16720 16647 +12650 12723 12724 12651 16647 16720 16721 16648 +12651 12724 12725 12652 16648 16721 16722 16649 +12652 12725 12726 12653 16649 16722 16723 16650 +12653 12726 12727 12654 16650 16723 16724 16651 +12654 12727 12728 12655 16651 16724 16725 16652 +12655 12728 12729 12656 16652 16725 16726 16653 +12656 12729 12730 12657 16653 16726 16727 16654 +12657 12730 12731 12658 16654 16727 16728 16655 +12658 12731 12732 12659 16655 16728 16729 16656 +12659 12732 12733 12660 16656 16729 16730 16657 +12660 12733 12734 12661 16657 16730 16731 16658 +12661 12734 12735 12662 16658 16731 16732 16659 +12662 12735 12736 12663 16659 16732 16733 16660 +12663 12736 12737 12664 16660 16733 16734 16661 +12664 12737 12738 12665 16661 16734 16735 16662 +12665 12738 12739 12666 16662 16735 16736 16663 +12666 12739 12740 12667 16663 16736 16737 16664 +12667 12740 12741 12668 16664 16737 16738 16665 +12668 12741 12742 12669 16665 16738 16739 16666 +12669 12742 12743 12670 16666 16739 16740 16667 +12670 12743 12744 12671 16667 16740 16741 16668 +12671 12744 12745 12672 16668 16741 16742 16669 +12672 12745 12746 12673 16669 16742 16743 16670 +12673 12746 12747 12674 16670 16743 16744 16671 +12674 12747 12748 12675 16671 16744 16745 16672 +12675 12748 12749 12676 16672 16745 16746 16673 +12676 12749 12750 12677 16673 16746 16747 16674 +12677 12750 12751 12678 16674 16747 16748 16675 +12678 12751 12752 12679 16675 16748 16749 16676 +12679 12752 12753 12680 16676 16749 16750 16677 +12680 12753 12754 12681 16677 16750 16751 16678 +12681 12754 12755 12682 16678 16751 16752 16679 +12682 12755 12756 12683 16679 16752 16753 16680 +12683 12756 12757 12684 16680 16753 16754 16681 +12684 12757 12758 12685 16681 16754 16755 16682 +12685 12758 12759 12686 16682 16755 16756 16683 +12686 12759 12760 12687 16683 16756 16757 16684 +12687 12760 12761 12688 16684 16757 16758 16685 +12688 12761 12762 12689 16685 16758 16759 16686 +12689 12762 12763 12690 16686 16759 16760 16687 +12690 12763 12764 12691 16687 16760 16761 16688 +12691 12764 12765 12692 16688 16761 16762 16689 +12692 12765 12766 12693 16689 16762 16763 16690 +12693 12766 12767 12694 16690 16763 16764 16691 +12694 12767 12768 12695 16691 16764 16765 16692 +12695 12768 12769 12696 16692 16765 16766 16693 +12696 12769 12770 12697 16693 16766 16767 16694 +12697 12770 12771 12698 16694 16767 16768 16695 +12698 12771 12772 12699 16695 16768 16769 16696 +12699 12772 12773 12700 16696 16769 16770 16697 +12700 12773 12774 12701 16697 16770 16771 16698 +12701 12774 12775 12702 16698 16771 16772 16699 +12702 12775 12776 12703 16699 16772 16773 16700 +12703 12776 12777 12704 16700 16773 16774 16701 +12704 12777 12778 12705 16701 16774 16775 16702 +12705 12778 12779 12706 16702 16775 16776 16703 +12706 12779 12780 12707 16703 16776 16777 16704 +12707 12780 12781 12708 16704 16777 16778 16705 +12709 12782 12783 12710 16706 16779 16780 16707 +12710 12783 12784 12711 16707 16780 16781 16708 +12711 12784 12785 12712 16708 16781 16782 16709 +12712 12785 12786 12713 16709 16782 16783 16710 +12713 12786 12787 12714 16710 16783 16784 16711 +12714 12787 12788 12715 16711 16784 16785 16712 +12715 12788 12789 12716 16712 16785 16786 16713 +12716 12789 12790 12717 16713 16786 16787 16714 +12717 12790 12791 12718 16714 16787 16788 16715 +12718 12791 12792 12719 16715 16788 16789 16716 +12719 12792 12793 12720 16716 16789 16790 16717 +12720 12793 12794 12721 16717 16790 16791 16718 +12721 12794 12795 12722 16718 16791 16792 16719 +12722 12795 12796 12723 16719 16792 16793 16720 +12723 12796 12797 12724 16720 16793 16794 16721 +12724 12797 12798 12725 16721 16794 16795 16722 +12725 12798 12799 12726 16722 16795 16796 16723 +12726 12799 12800 12727 16723 16796 16797 16724 +12727 12800 12801 12728 16724 16797 16798 16725 +12728 12801 12802 12729 16725 16798 16799 16726 +12729 12802 12803 12730 16726 16799 16800 16727 +12730 12803 12804 12731 16727 16800 16801 16728 +12731 12804 12805 12732 16728 16801 16802 16729 +12732 12805 12806 12733 16729 16802 16803 16730 +12733 12806 12807 12734 16730 16803 16804 16731 +12734 12807 12808 12735 16731 16804 16805 16732 +12735 12808 12809 12736 16732 16805 16806 16733 +12736 12809 12810 12737 16733 16806 16807 16734 +12737 12810 12811 12738 16734 16807 16808 16735 +12738 12811 12812 12739 16735 16808 16809 16736 +12739 12812 12813 12740 16736 16809 16810 16737 +12740 12813 12814 12741 16737 16810 16811 16738 +12741 12814 12815 12742 16738 16811 16812 16739 +12742 12815 12816 12743 16739 16812 16813 16740 +12743 12816 12817 12744 16740 16813 16814 16741 +12744 12817 12818 12745 16741 16814 16815 16742 +12745 12818 12819 12746 16742 16815 16816 16743 +12746 12819 12820 12747 16743 16816 16817 16744 +12747 12820 12821 12748 16744 16817 16818 16745 +12748 12821 12822 12749 16745 16818 16819 16746 +12749 12822 12823 12750 16746 16819 16820 16747 +12750 12823 12824 12751 16747 16820 16821 16748 +12751 12824 12825 12752 16748 16821 16822 16749 +12752 12825 12826 12753 16749 16822 16823 16750 +12753 12826 12827 12754 16750 16823 16824 16751 +12754 12827 12828 12755 16751 16824 16825 16752 +12755 12828 12829 12756 16752 16825 16826 16753 +12756 12829 12830 12757 16753 16826 16827 16754 +12757 12830 12831 12758 16754 16827 16828 16755 +12758 12831 12832 12759 16755 16828 16829 16756 +12759 12832 12833 12760 16756 16829 16830 16757 +12760 12833 12834 12761 16757 16830 16831 16758 +12761 12834 12835 12762 16758 16831 16832 16759 +12762 12835 12836 12763 16759 16832 16833 16760 +12763 12836 12837 12764 16760 16833 16834 16761 +12764 12837 12838 12765 16761 16834 16835 16762 +12765 12838 12839 12766 16762 16835 16836 16763 +12766 12839 12840 12767 16763 16836 16837 16764 +12767 12840 12841 12768 16764 16837 16838 16765 +12768 12841 12842 12769 16765 16838 16839 16766 +12769 12842 12843 12770 16766 16839 16840 16767 +12770 12843 12844 12771 16767 16840 16841 16768 +12771 12844 12845 12772 16768 16841 16842 16769 +12772 12845 12846 12773 16769 16842 16843 16770 +12773 12846 12847 12774 16770 16843 16844 16771 +12774 12847 12848 12775 16771 16844 16845 16772 +12775 12848 12849 12776 16772 16845 16846 16773 +12776 12849 12850 12777 16773 16846 16847 16774 +12777 12850 12851 12778 16774 16847 16848 16775 +12778 12851 12852 12779 16775 16848 16849 16776 +12779 12852 12853 12780 16776 16849 16850 16777 +12780 12853 12854 12781 16777 16850 16851 16778 +12782 12855 12856 12783 16779 16852 16853 16780 +12783 12856 12857 12784 16780 16853 16854 16781 +12784 12857 12858 12785 16781 16854 16855 16782 +12785 12858 12859 12786 16782 16855 16856 16783 +12786 12859 12860 12787 16783 16856 16857 16784 +12787 12860 12861 12788 16784 16857 16858 16785 +12788 12861 12862 12789 16785 16858 16859 16786 +12789 12862 12863 12790 16786 16859 16860 16787 +12790 12863 12864 12791 16787 16860 16861 16788 +12791 12864 12865 12792 16788 16861 16862 16789 +12792 12865 12866 12793 16789 16862 16863 16790 +12793 12866 12867 12794 16790 16863 16864 16791 +12794 12867 12868 12795 16791 16864 16865 16792 +12795 12868 12869 12796 16792 16865 16866 16793 +12796 12869 12870 12797 16793 16866 16867 16794 +12797 12870 12871 12798 16794 16867 16868 16795 +12798 12871 12872 12799 16795 16868 16869 16796 +12799 12872 12873 12800 16796 16869 16870 16797 +12800 12873 12874 12801 16797 16870 16871 16798 +12801 12874 12875 12802 16798 16871 16872 16799 +12802 12875 12876 12803 16799 16872 16873 16800 +12803 12876 12877 12804 16800 16873 16874 16801 +12804 12877 12878 12805 16801 16874 16875 16802 +12805 12878 12879 12806 16802 16875 16876 16803 +12806 12879 12880 12807 16803 16876 16877 16804 +12807 12880 12881 12808 16804 16877 16878 16805 +12808 12881 12882 12809 16805 16878 16879 16806 +12809 12882 12883 12810 16806 16879 16880 16807 +12810 12883 12884 12811 16807 16880 16881 16808 +12811 12884 12885 12812 16808 16881 16882 16809 +12812 12885 12886 12813 16809 16882 16883 16810 +12813 12886 12887 12814 16810 16883 16884 16811 +12814 12887 12888 12815 16811 16884 16885 16812 +12815 12888 12889 12816 16812 16885 16886 16813 +12816 12889 12890 12817 16813 16886 16887 16814 +12817 12890 12891 12818 16814 16887 16888 16815 +12818 12891 12892 12819 16815 16888 16889 16816 +12819 12892 12893 12820 16816 16889 16890 16817 +12820 12893 12894 12821 16817 16890 16891 16818 +12821 12894 12895 12822 16818 16891 16892 16819 +12822 12895 12896 12823 16819 16892 16893 16820 +12823 12896 12897 12824 16820 16893 16894 16821 +12824 12897 12898 12825 16821 16894 16895 16822 +12825 12898 12899 12826 16822 16895 16896 16823 +12826 12899 12900 12827 16823 16896 16897 16824 +12827 12900 12901 12828 16824 16897 16898 16825 +12828 12901 12902 12829 16825 16898 16899 16826 +12829 12902 12903 12830 16826 16899 16900 16827 +12830 12903 12904 12831 16827 16900 16901 16828 +12831 12904 12905 12832 16828 16901 16902 16829 +12832 12905 12906 12833 16829 16902 16903 16830 +12833 12906 12907 12834 16830 16903 16904 16831 +12834 12907 12908 12835 16831 16904 16905 16832 +12835 12908 12909 12836 16832 16905 16906 16833 +12836 12909 12910 12837 16833 16906 16907 16834 +12837 12910 12911 12838 16834 16907 16908 16835 +12838 12911 12912 12839 16835 16908 16909 16836 +12839 12912 12913 12840 16836 16909 16910 16837 +12840 12913 12914 12841 16837 16910 16911 16838 +12841 12914 12915 12842 16838 16911 16912 16839 +12842 12915 12916 12843 16839 16912 16913 16840 +12843 12916 12917 12844 16840 16913 16914 16841 +12844 12917 12918 12845 16841 16914 16915 16842 +12845 12918 12919 12846 16842 16915 16916 16843 +12846 12919 12920 12847 16843 16916 16917 16844 +12847 12920 12921 12848 16844 16917 16918 16845 +12848 12921 12922 12849 16845 16918 16919 16846 +12849 12922 12923 12850 16846 16919 16920 16847 +12850 12923 12924 12851 16847 16920 16921 16848 +12851 12924 12925 12852 16848 16921 16922 16849 +12852 12925 12926 12853 16849 16922 16923 16850 +12853 12926 12927 12854 16850 16923 16924 16851 +12855 12928 12929 12856 16852 16925 16926 16853 +12856 12929 12930 12857 16853 16926 16927 16854 +12857 12930 12931 12858 16854 16927 16928 16855 +12858 12931 12932 12859 16855 16928 16929 16856 +12859 12932 12933 12860 16856 16929 16930 16857 +12860 12933 12934 12861 16857 16930 16931 16858 +12861 12934 12935 12862 16858 16931 16932 16859 +12862 12935 12936 12863 16859 16932 16933 16860 +12863 12936 12937 12864 16860 16933 16934 16861 +12864 12937 12938 12865 16861 16934 16935 16862 +12865 12938 12939 12866 16862 16935 16936 16863 +12866 12939 12940 12867 16863 16936 16937 16864 +12867 12940 12941 12868 16864 16937 16938 16865 +12868 12941 12942 12869 16865 16938 16939 16866 +12869 12942 12943 12870 16866 16939 16940 16867 +12870 12943 12944 12871 16867 16940 16941 16868 +12871 12944 12945 12872 16868 16941 16942 16869 +12872 12945 12946 12873 16869 16942 16943 16870 +12873 12946 12947 12874 16870 16943 16944 16871 +12874 12947 12948 12875 16871 16944 16945 16872 +12875 12948 12949 12876 16872 16945 16946 16873 +12876 12949 12950 12877 16873 16946 16947 16874 +12877 12950 12951 12878 16874 16947 16948 16875 +12878 12951 12952 12879 16875 16948 16949 16876 +12879 12952 12953 12880 16876 16949 16950 16877 +12880 12953 12954 12881 16877 16950 16951 16878 +12881 12954 12955 12882 16878 16951 16952 16879 +12882 12955 12956 12883 16879 16952 16953 16880 +12883 12956 12957 12884 16880 16953 16954 16881 +12884 12957 12958 12885 16881 16954 16955 16882 +12885 12958 12959 12886 16882 16955 16956 16883 +12886 12959 12960 12887 16883 16956 16957 16884 +12887 12960 12961 12888 16884 16957 16958 16885 +12888 12961 12962 12889 16885 16958 16959 16886 +12889 12962 12963 12890 16886 16959 16960 16887 +12890 12963 12964 12891 16887 16960 16961 16888 +12891 12964 12965 12892 16888 16961 16962 16889 +12892 12965 12966 12893 16889 16962 16963 16890 +12893 12966 12967 12894 16890 16963 16964 16891 +12894 12967 12968 12895 16891 16964 16965 16892 +12895 12968 12969 12896 16892 16965 16966 16893 +12896 12969 12970 12897 16893 16966 16967 16894 +12897 12970 12971 12898 16894 16967 16968 16895 +12898 12971 12972 12899 16895 16968 16969 16896 +12899 12972 12973 12900 16896 16969 16970 16897 +12900 12973 12974 12901 16897 16970 16971 16898 +12901 12974 12975 12902 16898 16971 16972 16899 +12902 12975 12976 12903 16899 16972 16973 16900 +12903 12976 12977 12904 16900 16973 16974 16901 +12904 12977 12978 12905 16901 16974 16975 16902 +12905 12978 12979 12906 16902 16975 16976 16903 +12906 12979 12980 12907 16903 16976 16977 16904 +12907 12980 12981 12908 16904 16977 16978 16905 +12908 12981 12982 12909 16905 16978 16979 16906 +12909 12982 12983 12910 16906 16979 16980 16907 +12910 12983 12984 12911 16907 16980 16981 16908 +12911 12984 12985 12912 16908 16981 16982 16909 +12912 12985 12986 12913 16909 16982 16983 16910 +12913 12986 12987 12914 16910 16983 16984 16911 +12914 12987 12988 12915 16911 16984 16985 16912 +12915 12988 12989 12916 16912 16985 16986 16913 +12916 12989 12990 12917 16913 16986 16987 16914 +12917 12990 12991 12918 16914 16987 16988 16915 +12918 12991 12992 12919 16915 16988 16989 16916 +12919 12992 12993 12920 16916 16989 16990 16917 +12920 12993 12994 12921 16917 16990 16991 16918 +12921 12994 12995 12922 16918 16991 16992 16919 +12922 12995 12996 12923 16919 16992 16993 16920 +12923 12996 12997 12924 16920 16993 16994 16921 +12924 12997 12998 12925 16921 16994 16995 16922 +12925 12998 12999 12926 16922 16995 16996 16923 +12926 12999 13000 12927 16923 16996 16997 16924 +12928 13001 13002 12929 16925 16998 16999 16926 +12929 13002 13003 12930 16926 16999 17000 16927 +12930 13003 13004 12931 16927 17000 17001 16928 +12931 13004 13005 12932 16928 17001 17002 16929 +12932 13005 13006 12933 16929 17002 17003 16930 +12933 13006 13007 12934 16930 17003 17004 16931 +12934 13007 13008 12935 16931 17004 17005 16932 +12935 13008 13009 12936 16932 17005 17006 16933 +12936 13009 13010 12937 16933 17006 17007 16934 +12937 13010 13011 12938 16934 17007 17008 16935 +12938 13011 13012 12939 16935 17008 17009 16936 +12939 13012 13013 12940 16936 17009 17010 16937 +12940 13013 13014 12941 16937 17010 17011 16938 +12941 13014 13015 12942 16938 17011 17012 16939 +12942 13015 13016 12943 16939 17012 17013 16940 +12943 13016 13017 12944 16940 17013 17014 16941 +12944 13017 13018 12945 16941 17014 17015 16942 +12945 13018 13019 12946 16942 17015 17016 16943 +12946 13019 13020 12947 16943 17016 17017 16944 +12947 13020 13021 12948 16944 17017 17018 16945 +12948 13021 13022 12949 16945 17018 17019 16946 +12949 13022 13023 12950 16946 17019 17020 16947 +12950 13023 13024 12951 16947 17020 17021 16948 +12951 13024 13025 12952 16948 17021 17022 16949 +12952 13025 13026 12953 16949 17022 17023 16950 +12953 13026 13027 12954 16950 17023 17024 16951 +12954 13027 13028 12955 16951 17024 17025 16952 +12955 13028 13029 12956 16952 17025 17026 16953 +12956 13029 13030 12957 16953 17026 17027 16954 +12957 13030 13031 12958 16954 17027 17028 16955 +12958 13031 13032 12959 16955 17028 17029 16956 +12959 13032 13033 12960 16956 17029 17030 16957 +12960 13033 13034 12961 16957 17030 17031 16958 +12961 13034 13035 12962 16958 17031 17032 16959 +12962 13035 13036 12963 16959 17032 17033 16960 +12963 13036 13037 12964 16960 17033 17034 16961 +12964 13037 13038 12965 16961 17034 17035 16962 +12965 13038 13039 12966 16962 17035 17036 16963 +12966 13039 13040 12967 16963 17036 17037 16964 +12967 13040 13041 12968 16964 17037 17038 16965 +12968 13041 13042 12969 16965 17038 17039 16966 +12969 13042 13043 12970 16966 17039 17040 16967 +12970 13043 13044 12971 16967 17040 17041 16968 +12971 13044 13045 12972 16968 17041 17042 16969 +12972 13045 13046 12973 16969 17042 17043 16970 +12973 13046 13047 12974 16970 17043 17044 16971 +12974 13047 13048 12975 16971 17044 17045 16972 +12975 13048 13049 12976 16972 17045 17046 16973 +12976 13049 13050 12977 16973 17046 17047 16974 +12977 13050 13051 12978 16974 17047 17048 16975 +12978 13051 13052 12979 16975 17048 17049 16976 +12979 13052 13053 12980 16976 17049 17050 16977 +12980 13053 13054 12981 16977 17050 17051 16978 +12981 13054 13055 12982 16978 17051 17052 16979 +12982 13055 13056 12983 16979 17052 17053 16980 +12983 13056 13057 12984 16980 17053 17054 16981 +12984 13057 13058 12985 16981 17054 17055 16982 +12985 13058 13059 12986 16982 17055 17056 16983 +12986 13059 13060 12987 16983 17056 17057 16984 +12987 13060 13061 12988 16984 17057 17058 16985 +12988 13061 13062 12989 16985 17058 17059 16986 +12989 13062 13063 12990 16986 17059 17060 16987 +12990 13063 13064 12991 16987 17060 17061 16988 +12991 13064 13065 12992 16988 17061 17062 16989 +12992 13065 13066 12993 16989 17062 17063 16990 +12993 13066 13067 12994 16990 17063 17064 16991 +12994 13067 13068 12995 16991 17064 17065 16992 +12995 13068 13069 12996 16992 17065 17066 16993 +12996 13069 13070 12997 16993 17066 17067 16994 +12997 13070 13071 12998 16994 17067 17068 16995 +12998 13071 13072 12999 16995 17068 17069 16996 +12999 13072 13073 13000 16996 17069 17070 16997 +13001 13074 13075 13002 16998 17071 17072 16999 +13002 13075 13076 13003 16999 17072 17073 17000 +13003 13076 13077 13004 17000 17073 17074 17001 +13004 13077 13078 13005 17001 17074 17075 17002 +13005 13078 13079 13006 17002 17075 17076 17003 +13006 13079 13080 13007 17003 17076 17077 17004 +13007 13080 13081 13008 17004 17077 17078 17005 +13008 13081 13082 13009 17005 17078 17079 17006 +13009 13082 13083 13010 17006 17079 17080 17007 +13010 13083 13084 13011 17007 17080 17081 17008 +13011 13084 13085 13012 17008 17081 17082 17009 +13012 13085 13086 13013 17009 17082 17083 17010 +13013 13086 13087 13014 17010 17083 17084 17011 +13014 13087 13088 13015 17011 17084 17085 17012 +13015 13088 13089 13016 17012 17085 17086 17013 +13016 13089 13090 13017 17013 17086 17087 17014 +13017 13090 13091 13018 17014 17087 17088 17015 +13018 13091 13092 13019 17015 17088 17089 17016 +13019 13092 13093 13020 17016 17089 17090 17017 +13020 13093 13094 13021 17017 17090 17091 17018 +13021 13094 13095 13022 17018 17091 17092 17019 +13022 13095 13096 13023 17019 17092 17093 17020 +13023 13096 13097 13024 17020 17093 17094 17021 +13024 13097 13098 13025 17021 17094 17095 17022 +13025 13098 13099 13026 17022 17095 17096 17023 +13026 13099 13100 13027 17023 17096 17097 17024 +13027 13100 13101 13028 17024 17097 17098 17025 +13028 13101 13102 13029 17025 17098 17099 17026 +13029 13102 13103 13030 17026 17099 17100 17027 +13030 13103 13104 13031 17027 17100 17101 17028 +13031 13104 13105 13032 17028 17101 17102 17029 +13032 13105 13106 13033 17029 17102 17103 17030 +13033 13106 13107 13034 17030 17103 17104 17031 +13034 13107 13108 13035 17031 17104 17105 17032 +13035 13108 13109 13036 17032 17105 17106 17033 +13036 13109 13110 13037 17033 17106 17107 17034 +13037 13110 13111 13038 17034 17107 17108 17035 +13038 13111 13112 13039 17035 17108 17109 17036 +13039 13112 13113 13040 17036 17109 17110 17037 +13040 13113 13114 13041 17037 17110 17111 17038 +13041 13114 13115 13042 17038 17111 17112 17039 +13042 13115 13116 13043 17039 17112 17113 17040 +13043 13116 13117 13044 17040 17113 17114 17041 +13044 13117 13118 13045 17041 17114 17115 17042 +13045 13118 13119 13046 17042 17115 17116 17043 +13046 13119 13120 13047 17043 17116 17117 17044 +13047 13120 13121 13048 17044 17117 17118 17045 +13048 13121 13122 13049 17045 17118 17119 17046 +13049 13122 13123 13050 17046 17119 17120 17047 +13050 13123 13124 13051 17047 17120 17121 17048 +13051 13124 13125 13052 17048 17121 17122 17049 +13052 13125 13126 13053 17049 17122 17123 17050 +13053 13126 13127 13054 17050 17123 17124 17051 +13054 13127 13128 13055 17051 17124 17125 17052 +13055 13128 13129 13056 17052 17125 17126 17053 +13056 13129 13130 13057 17053 17126 17127 17054 +13057 13130 13131 13058 17054 17127 17128 17055 +13058 13131 13132 13059 17055 17128 17129 17056 +13059 13132 13133 13060 17056 17129 17130 17057 +13060 13133 13134 13061 17057 17130 17131 17058 +13061 13134 13135 13062 17058 17131 17132 17059 +13062 13135 13136 13063 17059 17132 17133 17060 +13063 13136 13137 13064 17060 17133 17134 17061 +13064 13137 13138 13065 17061 17134 17135 17062 +13065 13138 13139 13066 17062 17135 17136 17063 +13066 13139 13140 13067 17063 17136 17137 17064 +13067 13140 13141 13068 17064 17137 17138 17065 +13068 13141 13142 13069 17065 17138 17139 17066 +13069 13142 13143 13070 17066 17139 17140 17067 +13070 13143 13144 13071 17067 17140 17141 17068 +13071 13144 13145 13072 17068 17141 17142 17069 +13072 13145 13146 13073 17069 17142 17143 17070 +13074 13147 13148 13075 17071 17144 17145 17072 +13075 13148 13149 13076 17072 17145 17146 17073 +13076 13149 13150 13077 17073 17146 17147 17074 +13077 13150 13151 13078 17074 17147 17148 17075 +13078 13151 13152 13079 17075 17148 17149 17076 +13079 13152 13153 13080 17076 17149 17150 17077 +13080 13153 13154 13081 17077 17150 17151 17078 +13081 13154 13155 13082 17078 17151 17152 17079 +13082 13155 13156 13083 17079 17152 17153 17080 +13083 13156 13157 13084 17080 17153 17154 17081 +13084 13157 13158 13085 17081 17154 17155 17082 +13085 13158 13159 13086 17082 17155 17156 17083 +13086 13159 13160 13087 17083 17156 17157 17084 +13087 13160 13161 13088 17084 17157 17158 17085 +13088 13161 13162 13089 17085 17158 17159 17086 +13089 13162 13163 13090 17086 17159 17160 17087 +13090 13163 13164 13091 17087 17160 17161 17088 +13091 13164 13165 13092 17088 17161 17162 17089 +13092 13165 13166 13093 17089 17162 17163 17090 +13093 13166 13167 13094 17090 17163 17164 17091 +13094 13167 13168 13095 17091 17164 17165 17092 +13095 13168 13169 13096 17092 17165 17166 17093 +13096 13169 13170 13097 17093 17166 17167 17094 +13097 13170 13171 13098 17094 17167 17168 17095 +13098 13171 13172 13099 17095 17168 17169 17096 +13099 13172 13173 13100 17096 17169 17170 17097 +13100 13173 13174 13101 17097 17170 17171 17098 +13101 13174 13175 13102 17098 17171 17172 17099 +13102 13175 13176 13103 17099 17172 17173 17100 +13103 13176 13177 13104 17100 17173 17174 17101 +13104 13177 13178 13105 17101 17174 17175 17102 +13105 13178 13179 13106 17102 17175 17176 17103 +13106 13179 13180 13107 17103 17176 17177 17104 +13107 13180 13181 13108 17104 17177 17178 17105 +13108 13181 13182 13109 17105 17178 17179 17106 +13109 13182 13183 13110 17106 17179 17180 17107 +13110 13183 13184 13111 17107 17180 17181 17108 +13111 13184 13185 13112 17108 17181 17182 17109 +13112 13185 13186 13113 17109 17182 17183 17110 +13113 13186 13187 13114 17110 17183 17184 17111 +13114 13187 13188 13115 17111 17184 17185 17112 +13115 13188 13189 13116 17112 17185 17186 17113 +13116 13189 13190 13117 17113 17186 17187 17114 +13117 13190 13191 13118 17114 17187 17188 17115 +13118 13191 13192 13119 17115 17188 17189 17116 +13119 13192 13193 13120 17116 17189 17190 17117 +13120 13193 13194 13121 17117 17190 17191 17118 +13121 13194 13195 13122 17118 17191 17192 17119 +13122 13195 13196 13123 17119 17192 17193 17120 +13123 13196 13197 13124 17120 17193 17194 17121 +13124 13197 13198 13125 17121 17194 17195 17122 +13125 13198 13199 13126 17122 17195 17196 17123 +13126 13199 13200 13127 17123 17196 17197 17124 +13127 13200 13201 13128 17124 17197 17198 17125 +13128 13201 13202 13129 17125 17198 17199 17126 +13129 13202 13203 13130 17126 17199 17200 17127 +13130 13203 13204 13131 17127 17200 17201 17128 +13131 13204 13205 13132 17128 17201 17202 17129 +13132 13205 13206 13133 17129 17202 17203 17130 +13133 13206 13207 13134 17130 17203 17204 17131 +13134 13207 13208 13135 17131 17204 17205 17132 +13135 13208 13209 13136 17132 17205 17206 17133 +13136 13209 13210 13137 17133 17206 17207 17134 +13137 13210 13211 13138 17134 17207 17208 17135 +13138 13211 13212 13139 17135 17208 17209 17136 +13139 13212 13213 13140 17136 17209 17210 17137 +13140 13213 13214 13141 17137 17210 17211 17138 +13141 13214 13215 13142 17138 17211 17212 17139 +13142 13215 13216 13143 17139 17212 17213 17140 +13143 13216 13217 13144 17140 17213 17214 17141 +13144 13217 13218 13145 17141 17214 17215 17142 +13145 13218 13219 13146 17142 17215 17216 17143 +13147 13220 13221 13148 17144 17217 17218 17145 +13148 13221 13222 13149 17145 17218 17219 17146 +13149 13222 13223 13150 17146 17219 17220 17147 +13150 13223 13224 13151 17147 17220 17221 17148 +13151 13224 13225 13152 17148 17221 17222 17149 +13152 13225 13226 13153 17149 17222 17223 17150 +13153 13226 13227 13154 17150 17223 17224 17151 +13154 13227 13228 13155 17151 17224 17225 17152 +13155 13228 13229 13156 17152 17225 17226 17153 +13156 13229 13230 13157 17153 17226 17227 17154 +13157 13230 13231 13158 17154 17227 17228 17155 +13158 13231 13232 13159 17155 17228 17229 17156 +13159 13232 13233 13160 17156 17229 17230 17157 +13160 13233 13234 13161 17157 17230 17231 17158 +13161 13234 13235 13162 17158 17231 17232 17159 +13162 13235 13236 13163 17159 17232 17233 17160 +13163 13236 13237 13164 17160 17233 17234 17161 +13164 13237 13238 13165 17161 17234 17235 17162 +13165 13238 13239 13166 17162 17235 17236 17163 +13166 13239 13240 13167 17163 17236 17237 17164 +13167 13240 13241 13168 17164 17237 17238 17165 +13168 13241 13242 13169 17165 17238 17239 17166 +13169 13242 13243 13170 17166 17239 17240 17167 +13170 13243 13244 13171 17167 17240 17241 17168 +13171 13244 13245 13172 17168 17241 17242 17169 +13172 13245 13246 13173 17169 17242 17243 17170 +13173 13246 13247 13174 17170 17243 17244 17171 +13174 13247 13248 13175 17171 17244 17245 17172 +13175 13248 13249 13176 17172 17245 17246 17173 +13176 13249 13250 13177 17173 17246 17247 17174 +13177 13250 13251 13178 17174 17247 17248 17175 +13178 13251 13252 13179 17175 17248 17249 17176 +13179 13252 13253 13180 17176 17249 17250 17177 +13180 13253 13254 13181 17177 17250 17251 17178 +13181 13254 13255 13182 17178 17251 17252 17179 +13182 13255 13256 13183 17179 17252 17253 17180 +13183 13256 13257 13184 17180 17253 17254 17181 +13184 13257 13258 13185 17181 17254 17255 17182 +13185 13258 13259 13186 17182 17255 17256 17183 +13186 13259 13260 13187 17183 17256 17257 17184 +13187 13260 13261 13188 17184 17257 17258 17185 +13188 13261 13262 13189 17185 17258 17259 17186 +13189 13262 13263 13190 17186 17259 17260 17187 +13190 13263 13264 13191 17187 17260 17261 17188 +13191 13264 13265 13192 17188 17261 17262 17189 +13192 13265 13266 13193 17189 17262 17263 17190 +13193 13266 13267 13194 17190 17263 17264 17191 +13194 13267 13268 13195 17191 17264 17265 17192 +13195 13268 13269 13196 17192 17265 17266 17193 +13196 13269 13270 13197 17193 17266 17267 17194 +13197 13270 13271 13198 17194 17267 17268 17195 +13198 13271 13272 13199 17195 17268 17269 17196 +13199 13272 13273 13200 17196 17269 17270 17197 +13200 13273 13274 13201 17197 17270 17271 17198 +13201 13274 13275 13202 17198 17271 17272 17199 +13202 13275 13276 13203 17199 17272 17273 17200 +13203 13276 13277 13204 17200 17273 17274 17201 +13204 13277 13278 13205 17201 17274 17275 17202 +13205 13278 13279 13206 17202 17275 17276 17203 +13206 13279 13280 13207 17203 17276 17277 17204 +13207 13280 13281 13208 17204 17277 17278 17205 +13208 13281 13282 13209 17205 17278 17279 17206 +13209 13282 13283 13210 17206 17279 17280 17207 +13210 13283 13284 13211 17207 17280 17281 17208 +13211 13284 13285 13212 17208 17281 17282 17209 +13212 13285 13286 13213 17209 17282 17283 17210 +13213 13286 13287 13214 17210 17283 17284 17211 +13214 13287 13288 13215 17211 17284 17285 17212 +13215 13288 13289 13216 17212 17285 17286 17213 +13216 13289 13290 13217 17213 17286 17287 17214 +13217 13290 13291 13218 17214 17287 17288 17215 +13218 13291 13292 13219 17215 17288 17289 17216 +13220 13293 13294 13221 17217 17290 17291 17218 +13221 13294 13295 13222 17218 17291 17292 17219 +13222 13295 13296 13223 17219 17292 17293 17220 +13223 13296 13297 13224 17220 17293 17294 17221 +13224 13297 13298 13225 17221 17294 17295 17222 +13225 13298 13299 13226 17222 17295 17296 17223 +13226 13299 13300 13227 17223 17296 17297 17224 +13227 13300 13301 13228 17224 17297 17298 17225 +13228 13301 13302 13229 17225 17298 17299 17226 +13229 13302 13303 13230 17226 17299 17300 17227 +13230 13303 13304 13231 17227 17300 17301 17228 +13231 13304 13305 13232 17228 17301 17302 17229 +13232 13305 13306 13233 17229 17302 17303 17230 +13233 13306 13307 13234 17230 17303 17304 17231 +13234 13307 13308 13235 17231 17304 17305 17232 +13235 13308 13309 13236 17232 17305 17306 17233 +13236 13309 13310 13237 17233 17306 17307 17234 +13237 13310 13311 13238 17234 17307 17308 17235 +13238 13311 13312 13239 17235 17308 17309 17236 +13239 13312 13313 13240 17236 17309 17310 17237 +13240 13313 13314 13241 17237 17310 17311 17238 +13241 13314 13315 13242 17238 17311 17312 17239 +13242 13315 13316 13243 17239 17312 17313 17240 +13243 13316 13317 13244 17240 17313 17314 17241 +13244 13317 13318 13245 17241 17314 17315 17242 +13245 13318 13319 13246 17242 17315 17316 17243 +13246 13319 13320 13247 17243 17316 17317 17244 +13247 13320 13321 13248 17244 17317 17318 17245 +13248 13321 13322 13249 17245 17318 17319 17246 +13249 13322 13323 13250 17246 17319 17320 17247 +13250 13323 13324 13251 17247 17320 17321 17248 +13251 13324 13325 13252 17248 17321 17322 17249 +13252 13325 13326 13253 17249 17322 17323 17250 +13253 13326 13327 13254 17250 17323 17324 17251 +13254 13327 13328 13255 17251 17324 17325 17252 +13255 13328 13329 13256 17252 17325 17326 17253 +13256 13329 13330 13257 17253 17326 17327 17254 +13257 13330 13331 13258 17254 17327 17328 17255 +13258 13331 13332 13259 17255 17328 17329 17256 +13259 13332 13333 13260 17256 17329 17330 17257 +13260 13333 13334 13261 17257 17330 17331 17258 +13261 13334 13335 13262 17258 17331 17332 17259 +13262 13335 13336 13263 17259 17332 17333 17260 +13263 13336 13337 13264 17260 17333 17334 17261 +13264 13337 13338 13265 17261 17334 17335 17262 +13265 13338 13339 13266 17262 17335 17336 17263 +13266 13339 13340 13267 17263 17336 17337 17264 +13267 13340 13341 13268 17264 17337 17338 17265 +13268 13341 13342 13269 17265 17338 17339 17266 +13269 13342 13343 13270 17266 17339 17340 17267 +13270 13343 13344 13271 17267 17340 17341 17268 +13271 13344 13345 13272 17268 17341 17342 17269 +13272 13345 13346 13273 17269 17342 17343 17270 +13273 13346 13347 13274 17270 17343 17344 17271 +13274 13347 13348 13275 17271 17344 17345 17272 +13275 13348 13349 13276 17272 17345 17346 17273 +13276 13349 13350 13277 17273 17346 17347 17274 +13277 13350 13351 13278 17274 17347 17348 17275 +13278 13351 13352 13279 17275 17348 17349 17276 +13279 13352 13353 13280 17276 17349 17350 17277 +13280 13353 13354 13281 17277 17350 17351 17278 +13281 13354 13355 13282 17278 17351 17352 17279 +13282 13355 13356 13283 17279 17352 17353 17280 +13283 13356 13357 13284 17280 17353 17354 17281 +13284 13357 13358 13285 17281 17354 17355 17282 +13285 13358 13359 13286 17282 17355 17356 17283 +13286 13359 13360 13287 17283 17356 17357 17284 +13287 13360 13361 13288 17284 17357 17358 17285 +13288 13361 13362 13289 17285 17358 17359 17286 +13289 13362 13363 13290 17286 17359 17360 17287 +13290 13363 13364 13291 17287 17360 17361 17288 +13291 13364 13365 13292 17288 17361 17362 17289 +13293 13366 13367 13294 17290 17363 17364 17291 +13294 13367 13368 13295 17291 17364 17365 17292 +13295 13368 13369 13296 17292 17365 17366 17293 +13296 13369 13370 13297 17293 17366 17367 17294 +13297 13370 13371 13298 17294 17367 17368 17295 +13298 13371 13372 13299 17295 17368 17369 17296 +13299 13372 13373 13300 17296 17369 17370 17297 +13300 13373 13374 13301 17297 17370 17371 17298 +13301 13374 13375 13302 17298 17371 17372 17299 +13302 13375 13376 13303 17299 17372 17373 17300 +13303 13376 13377 13304 17300 17373 17374 17301 +13304 13377 13378 13305 17301 17374 17375 17302 +13305 13378 13379 13306 17302 17375 17376 17303 +13306 13379 13380 13307 17303 17376 17377 17304 +13307 13380 13381 13308 17304 17377 17378 17305 +13308 13381 13382 13309 17305 17378 17379 17306 +13309 13382 13383 13310 17306 17379 17380 17307 +13310 13383 13384 13311 17307 17380 17381 17308 +13311 13384 13385 13312 17308 17381 17382 17309 +13312 13385 13386 13313 17309 17382 17383 17310 +13313 13386 13387 13314 17310 17383 17384 17311 +13314 13387 13388 13315 17311 17384 17385 17312 +13315 13388 13389 13316 17312 17385 17386 17313 +13316 13389 13390 13317 17313 17386 17387 17314 +13317 13390 13391 13318 17314 17387 17388 17315 +13318 13391 13392 13319 17315 17388 17389 17316 +13319 13392 13393 13320 17316 17389 17390 17317 +13320 13393 13394 13321 17317 17390 17391 17318 +13321 13394 13395 13322 17318 17391 17392 17319 +13322 13395 13396 13323 17319 17392 17393 17320 +13323 13396 13397 13324 17320 17393 17394 17321 +13324 13397 13398 13325 17321 17394 17395 17322 +13325 13398 13399 13326 17322 17395 17396 17323 +13326 13399 13400 13327 17323 17396 17397 17324 +13327 13400 13401 13328 17324 17397 17398 17325 +13328 13401 13402 13329 17325 17398 17399 17326 +13329 13402 13403 13330 17326 17399 17400 17327 +13330 13403 13404 13331 17327 17400 17401 17328 +13331 13404 13405 13332 17328 17401 17402 17329 +13332 13405 13406 13333 17329 17402 17403 17330 +13333 13406 13407 13334 17330 17403 17404 17331 +13334 13407 13408 13335 17331 17404 17405 17332 +13335 13408 13409 13336 17332 17405 17406 17333 +13336 13409 13410 13337 17333 17406 17407 17334 +13337 13410 13411 13338 17334 17407 17408 17335 +13338 13411 13412 13339 17335 17408 17409 17336 +13339 13412 13413 13340 17336 17409 17410 17337 +13340 13413 13414 13341 17337 17410 17411 17338 +13341 13414 13415 13342 17338 17411 17412 17339 +13342 13415 13416 13343 17339 17412 17413 17340 +13343 13416 13417 13344 17340 17413 17414 17341 +13344 13417 13418 13345 17341 17414 17415 17342 +13345 13418 13419 13346 17342 17415 17416 17343 +13346 13419 13420 13347 17343 17416 17417 17344 +13347 13420 13421 13348 17344 17417 17418 17345 +13348 13421 13422 13349 17345 17418 17419 17346 +13349 13422 13423 13350 17346 17419 17420 17347 +13350 13423 13424 13351 17347 17420 17421 17348 +13351 13424 13425 13352 17348 17421 17422 17349 +13352 13425 13426 13353 17349 17422 17423 17350 +13353 13426 13427 13354 17350 17423 17424 17351 +13354 13427 13428 13355 17351 17424 17425 17352 +13355 13428 13429 13356 17352 17425 17426 17353 +13356 13429 13430 13357 17353 17426 17427 17354 +13357 13430 13431 13358 17354 17427 17428 17355 +13358 13431 13432 13359 17355 17428 17429 17356 +13359 13432 13433 13360 17356 17429 17430 17357 +13360 13433 13434 13361 17357 17430 17431 17358 +13361 13434 13435 13362 17358 17431 17432 17359 +13362 13435 13436 13363 17359 17432 17433 17360 +13363 13436 13437 13364 17360 17433 17434 17361 +13364 13437 13438 13365 17361 17434 17435 17362 +13366 13439 13440 13367 17363 17436 17437 17364 +13367 13440 13441 13368 17364 17437 17438 17365 +13368 13441 13442 13369 17365 17438 17439 17366 +13369 13442 13443 13370 17366 17439 17440 17367 +13370 13443 13444 13371 17367 17440 17441 17368 +13371 13444 13445 13372 17368 17441 17442 17369 +13372 13445 13446 13373 17369 17442 17443 17370 +13373 13446 13447 13374 17370 17443 17444 17371 +13374 13447 13448 13375 17371 17444 17445 17372 +13375 13448 13449 13376 17372 17445 17446 17373 +13376 13449 13450 13377 17373 17446 17447 17374 +13377 13450 13451 13378 17374 17447 17448 17375 +13378 13451 13452 13379 17375 17448 17449 17376 +13379 13452 13453 13380 17376 17449 17450 17377 +13380 13453 13454 13381 17377 17450 17451 17378 +13381 13454 13455 13382 17378 17451 17452 17379 +13382 13455 13456 13383 17379 17452 17453 17380 +13383 13456 13457 13384 17380 17453 17454 17381 +13384 13457 13458 13385 17381 17454 17455 17382 +13385 13458 13459 13386 17382 17455 17456 17383 +13386 13459 13460 13387 17383 17456 17457 17384 +13387 13460 13461 13388 17384 17457 17458 17385 +13388 13461 13462 13389 17385 17458 17459 17386 +13389 13462 13463 13390 17386 17459 17460 17387 +13390 13463 13464 13391 17387 17460 17461 17388 +13391 13464 13465 13392 17388 17461 17462 17389 +13392 13465 13466 13393 17389 17462 17463 17390 +13393 13466 13467 13394 17390 17463 17464 17391 +13394 13467 13468 13395 17391 17464 17465 17392 +13395 13468 13469 13396 17392 17465 17466 17393 +13396 13469 13470 13397 17393 17466 17467 17394 +13397 13470 13471 13398 17394 17467 17468 17395 +13398 13471 13472 13399 17395 17468 17469 17396 +13399 13472 13473 13400 17396 17469 17470 17397 +13400 13473 13474 13401 17397 17470 17471 17398 +13401 13474 13475 13402 17398 17471 17472 17399 +13402 13475 13476 13403 17399 17472 17473 17400 +13403 13476 13477 13404 17400 17473 17474 17401 +13404 13477 13478 13405 17401 17474 17475 17402 +13405 13478 13479 13406 17402 17475 17476 17403 +13406 13479 13480 13407 17403 17476 17477 17404 +13407 13480 13481 13408 17404 17477 17478 17405 +13408 13481 13482 13409 17405 17478 17479 17406 +13409 13482 13483 13410 17406 17479 17480 17407 +13410 13483 13484 13411 17407 17480 17481 17408 +13411 13484 13485 13412 17408 17481 17482 17409 +13412 13485 13486 13413 17409 17482 17483 17410 +13413 13486 13487 13414 17410 17483 17484 17411 +13414 13487 13488 13415 17411 17484 17485 17412 +13415 13488 13489 13416 17412 17485 17486 17413 +13416 13489 13490 13417 17413 17486 17487 17414 +13417 13490 13491 13418 17414 17487 17488 17415 +13418 13491 13492 13419 17415 17488 17489 17416 +13419 13492 13493 13420 17416 17489 17490 17417 +13420 13493 13494 13421 17417 17490 17491 17418 +13421 13494 13495 13422 17418 17491 17492 17419 +13422 13495 13496 13423 17419 17492 17493 17420 +13423 13496 13497 13424 17420 17493 17494 17421 +13424 13497 13498 13425 17421 17494 17495 17422 +13425 13498 13499 13426 17422 17495 17496 17423 +13426 13499 13500 13427 17423 17496 17497 17424 +13427 13500 13501 13428 17424 17497 17498 17425 +13428 13501 13502 13429 17425 17498 17499 17426 +13429 13502 13503 13430 17426 17499 17500 17427 +13430 13503 13504 13431 17427 17500 17501 17428 +13431 13504 13505 13432 17428 17501 17502 17429 +13432 13505 13506 13433 17429 17502 17503 17430 +13433 13506 13507 13434 17430 17503 17504 17431 +13434 13507 13508 13435 17431 17504 17505 17432 +13435 13508 13509 13436 17432 17505 17506 17433 +13436 13509 13510 13437 17433 17506 17507 17434 +13437 13510 13511 13438 17434 17507 17508 17435 +13439 13512 13513 13440 17436 17509 17510 17437 +13440 13513 13514 13441 17437 17510 17511 17438 +13441 13514 13515 13442 17438 17511 17512 17439 +13442 13515 13516 13443 17439 17512 17513 17440 +13443 13516 13517 13444 17440 17513 17514 17441 +13444 13517 13518 13445 17441 17514 17515 17442 +13445 13518 13519 13446 17442 17515 17516 17443 +13446 13519 13520 13447 17443 17516 17517 17444 +13447 13520 13521 13448 17444 17517 17518 17445 +13448 13521 13522 13449 17445 17518 17519 17446 +13449 13522 13523 13450 17446 17519 17520 17447 +13450 13523 13524 13451 17447 17520 17521 17448 +13451 13524 13525 13452 17448 17521 17522 17449 +13452 13525 13526 13453 17449 17522 17523 17450 +13453 13526 13527 13454 17450 17523 17524 17451 +13454 13527 13528 13455 17451 17524 17525 17452 +13455 13528 13529 13456 17452 17525 17526 17453 +13456 13529 13530 13457 17453 17526 17527 17454 +13457 13530 13531 13458 17454 17527 17528 17455 +13458 13531 13532 13459 17455 17528 17529 17456 +13459 13532 13533 13460 17456 17529 17530 17457 +13460 13533 13534 13461 17457 17530 17531 17458 +13461 13534 13535 13462 17458 17531 17532 17459 +13462 13535 13536 13463 17459 17532 17533 17460 +13463 13536 13537 13464 17460 17533 17534 17461 +13464 13537 13538 13465 17461 17534 17535 17462 +13465 13538 13539 13466 17462 17535 17536 17463 +13466 13539 13540 13467 17463 17536 17537 17464 +13467 13540 13541 13468 17464 17537 17538 17465 +13468 13541 13542 13469 17465 17538 17539 17466 +13469 13542 13543 13470 17466 17539 17540 17467 +13470 13543 13544 13471 17467 17540 17541 17468 +13471 13544 13545 13472 17468 17541 17542 17469 +13472 13545 13546 13473 17469 17542 17543 17470 +13473 13546 13547 13474 17470 17543 17544 17471 +13474 13547 13548 13475 17471 17544 17545 17472 +13475 13548 13549 13476 17472 17545 17546 17473 +13476 13549 13550 13477 17473 17546 17547 17474 +13477 13550 13551 13478 17474 17547 17548 17475 +13478 13551 13552 13479 17475 17548 17549 17476 +13479 13552 13553 13480 17476 17549 17550 17477 +13480 13553 13554 13481 17477 17550 17551 17478 +13481 13554 13555 13482 17478 17551 17552 17479 +13482 13555 13556 13483 17479 17552 17553 17480 +13483 13556 13557 13484 17480 17553 17554 17481 +13484 13557 13558 13485 17481 17554 17555 17482 +13485 13558 13559 13486 17482 17555 17556 17483 +13486 13559 13560 13487 17483 17556 17557 17484 +13487 13560 13561 13488 17484 17557 17558 17485 +13488 13561 13562 13489 17485 17558 17559 17486 +13489 13562 13563 13490 17486 17559 17560 17487 +13490 13563 13564 13491 17487 17560 17561 17488 +13491 13564 13565 13492 17488 17561 17562 17489 +13492 13565 13566 13493 17489 17562 17563 17490 +13493 13566 13567 13494 17490 17563 17564 17491 +13494 13567 13568 13495 17491 17564 17565 17492 +13495 13568 13569 13496 17492 17565 17566 17493 +13496 13569 13570 13497 17493 17566 17567 17494 +13497 13570 13571 13498 17494 17567 17568 17495 +13498 13571 13572 13499 17495 17568 17569 17496 +13499 13572 13573 13500 17496 17569 17570 17497 +13500 13573 13574 13501 17497 17570 17571 17498 +13501 13574 13575 13502 17498 17571 17572 17499 +13502 13575 13576 13503 17499 17572 17573 17500 +13503 13576 13577 13504 17500 17573 17574 17501 +13504 13577 13578 13505 17501 17574 17575 17502 +13505 13578 13579 13506 17502 17575 17576 17503 +13506 13579 13580 13507 17503 17576 17577 17504 +13507 13580 13581 13508 17504 17577 17578 17505 +13508 13581 13582 13509 17505 17578 17579 17506 +13509 13582 13583 13510 17506 17579 17580 17507 +13510 13583 13584 13511 17507 17580 17581 17508 +13512 13585 13586 13513 17509 17582 17583 17510 +13513 13586 13587 13514 17510 17583 17584 17511 +13514 13587 13588 13515 17511 17584 17585 17512 +13515 13588 13589 13516 17512 17585 17586 17513 +13516 13589 13590 13517 17513 17586 17587 17514 +13517 13590 13591 13518 17514 17587 17588 17515 +13518 13591 13592 13519 17515 17588 17589 17516 +13519 13592 13593 13520 17516 17589 17590 17517 +13520 13593 13594 13521 17517 17590 17591 17518 +13521 13594 13595 13522 17518 17591 17592 17519 +13522 13595 13596 13523 17519 17592 17593 17520 +13523 13596 13597 13524 17520 17593 17594 17521 +13524 13597 13598 13525 17521 17594 17595 17522 +13525 13598 13599 13526 17522 17595 17596 17523 +13526 13599 13600 13527 17523 17596 17597 17524 +13527 13600 13601 13528 17524 17597 17598 17525 +13528 13601 13602 13529 17525 17598 17599 17526 +13529 13602 13603 13530 17526 17599 17600 17527 +13530 13603 13604 13531 17527 17600 17601 17528 +13531 13604 13605 13532 17528 17601 17602 17529 +13532 13605 13606 13533 17529 17602 17603 17530 +13533 13606 13607 13534 17530 17603 17604 17531 +13534 13607 13608 13535 17531 17604 17605 17532 +13535 13608 13609 13536 17532 17605 17606 17533 +13536 13609 13610 13537 17533 17606 17607 17534 +13537 13610 13611 13538 17534 17607 17608 17535 +13538 13611 13612 13539 17535 17608 17609 17536 +13539 13612 13613 13540 17536 17609 17610 17537 +13540 13613 13614 13541 17537 17610 17611 17538 +13541 13614 13615 13542 17538 17611 17612 17539 +13542 13615 13616 13543 17539 17612 17613 17540 +13543 13616 13617 13544 17540 17613 17614 17541 +13544 13617 13618 13545 17541 17614 17615 17542 +13545 13618 13619 13546 17542 17615 17616 17543 +13546 13619 13620 13547 17543 17616 17617 17544 +13547 13620 13621 13548 17544 17617 17618 17545 +13548 13621 13622 13549 17545 17618 17619 17546 +13549 13622 13623 13550 17546 17619 17620 17547 +13550 13623 13624 13551 17547 17620 17621 17548 +13551 13624 13625 13552 17548 17621 17622 17549 +13552 13625 13626 13553 17549 17622 17623 17550 +13553 13626 13627 13554 17550 17623 17624 17551 +13554 13627 13628 13555 17551 17624 17625 17552 +13555 13628 13629 13556 17552 17625 17626 17553 +13556 13629 13630 13557 17553 17626 17627 17554 +13557 13630 13631 13558 17554 17627 17628 17555 +13558 13631 13632 13559 17555 17628 17629 17556 +13559 13632 13633 13560 17556 17629 17630 17557 +13560 13633 13634 13561 17557 17630 17631 17558 +13561 13634 13635 13562 17558 17631 17632 17559 +13562 13635 13636 13563 17559 17632 17633 17560 +13563 13636 13637 13564 17560 17633 17634 17561 +13564 13637 13638 13565 17561 17634 17635 17562 +13565 13638 13639 13566 17562 17635 17636 17563 +13566 13639 13640 13567 17563 17636 17637 17564 +13567 13640 13641 13568 17564 17637 17638 17565 +13568 13641 13642 13569 17565 17638 17639 17566 +13569 13642 13643 13570 17566 17639 17640 17567 +13570 13643 13644 13571 17567 17640 17641 17568 +13571 13644 13645 13572 17568 17641 17642 17569 +13572 13645 13646 13573 17569 17642 17643 17570 +13573 13646 13647 13574 17570 17643 17644 17571 +13574 13647 13648 13575 17571 17644 17645 17572 +13575 13648 13649 13576 17572 17645 17646 17573 +13576 13649 13650 13577 17573 17646 17647 17574 +13577 13650 13651 13578 17574 17647 17648 17575 +13578 13651 13652 13579 17575 17648 17649 17576 +13579 13652 13653 13580 17576 17649 17650 17577 +13580 13653 13654 13581 17577 17650 17651 17578 +13581 13654 13655 13582 17578 17651 17652 17579 +13582 13655 13656 13583 17579 17652 17653 17580 +13583 13656 13657 13584 17580 17653 17654 17581 +13585 13658 13659 13586 17582 17655 17656 17583 +13586 13659 13660 13587 17583 17656 17657 17584 +13587 13660 13661 13588 17584 17657 17658 17585 +13588 13661 13662 13589 17585 17658 17659 17586 +13589 13662 13663 13590 17586 17659 17660 17587 +13590 13663 13664 13591 17587 17660 17661 17588 +13591 13664 13665 13592 17588 17661 17662 17589 +13592 13665 13666 13593 17589 17662 17663 17590 +13593 13666 13667 13594 17590 17663 17664 17591 +13594 13667 13668 13595 17591 17664 17665 17592 +13595 13668 13669 13596 17592 17665 17666 17593 +13596 13669 13670 13597 17593 17666 17667 17594 +13597 13670 13671 13598 17594 17667 17668 17595 +13598 13671 13672 13599 17595 17668 17669 17596 +13599 13672 13673 13600 17596 17669 17670 17597 +13600 13673 13674 13601 17597 17670 17671 17598 +13601 13674 13675 13602 17598 17671 17672 17599 +13602 13675 13676 13603 17599 17672 17673 17600 +13603 13676 13677 13604 17600 17673 17674 17601 +13604 13677 13678 13605 17601 17674 17675 17602 +13605 13678 13679 13606 17602 17675 17676 17603 +13606 13679 13680 13607 17603 17676 17677 17604 +13607 13680 13681 13608 17604 17677 17678 17605 +13608 13681 13682 13609 17605 17678 17679 17606 +13609 13682 13683 13610 17606 17679 17680 17607 +13610 13683 13684 13611 17607 17680 17681 17608 +13611 13684 13685 13612 17608 17681 17682 17609 +13612 13685 13686 13613 17609 17682 17683 17610 +13613 13686 13687 13614 17610 17683 17684 17611 +13614 13687 13688 13615 17611 17684 17685 17612 +13615 13688 13689 13616 17612 17685 17686 17613 +13616 13689 13690 13617 17613 17686 17687 17614 +13617 13690 13691 13618 17614 17687 17688 17615 +13618 13691 13692 13619 17615 17688 17689 17616 +13619 13692 13693 13620 17616 17689 17690 17617 +13620 13693 13694 13621 17617 17690 17691 17618 +13621 13694 13695 13622 17618 17691 17692 17619 +13622 13695 13696 13623 17619 17692 17693 17620 +13623 13696 13697 13624 17620 17693 17694 17621 +13624 13697 13698 13625 17621 17694 17695 17622 +13625 13698 13699 13626 17622 17695 17696 17623 +13626 13699 13700 13627 17623 17696 17697 17624 +13627 13700 13701 13628 17624 17697 17698 17625 +13628 13701 13702 13629 17625 17698 17699 17626 +13629 13702 13703 13630 17626 17699 17700 17627 +13630 13703 13704 13631 17627 17700 17701 17628 +13631 13704 13705 13632 17628 17701 17702 17629 +13632 13705 13706 13633 17629 17702 17703 17630 +13633 13706 13707 13634 17630 17703 17704 17631 +13634 13707 13708 13635 17631 17704 17705 17632 +13635 13708 13709 13636 17632 17705 17706 17633 +13636 13709 13710 13637 17633 17706 17707 17634 +13637 13710 13711 13638 17634 17707 17708 17635 +13638 13711 13712 13639 17635 17708 17709 17636 +13639 13712 13713 13640 17636 17709 17710 17637 +13640 13713 13714 13641 17637 17710 17711 17638 +13641 13714 13715 13642 17638 17711 17712 17639 +13642 13715 13716 13643 17639 17712 17713 17640 +13643 13716 13717 13644 17640 17713 17714 17641 +13644 13717 13718 13645 17641 17714 17715 17642 +13645 13718 13719 13646 17642 17715 17716 17643 +13646 13719 13720 13647 17643 17716 17717 17644 +13647 13720 13721 13648 17644 17717 17718 17645 +13648 13721 13722 13649 17645 17718 17719 17646 +13649 13722 13723 13650 17646 17719 17720 17647 +13650 13723 13724 13651 17647 17720 17721 17648 +13651 13724 13725 13652 17648 17721 17722 17649 +13652 13725 13726 13653 17649 17722 17723 17650 +13653 13726 13727 13654 17650 17723 17724 17651 +13654 13727 13728 13655 17651 17724 17725 17652 +13655 13728 13729 13656 17652 17725 17726 17653 +13656 13729 13730 13657 17653 17726 17727 17654 +13658 13731 13732 13659 17655 17728 17729 17656 +13659 13732 13733 13660 17656 17729 17730 17657 +13660 13733 13734 13661 17657 17730 17731 17658 +13661 13734 13735 13662 17658 17731 17732 17659 +13662 13735 13736 13663 17659 17732 17733 17660 +13663 13736 13737 13664 17660 17733 17734 17661 +13664 13737 13738 13665 17661 17734 17735 17662 +13665 13738 13739 13666 17662 17735 17736 17663 +13666 13739 13740 13667 17663 17736 17737 17664 +13667 13740 13741 13668 17664 17737 17738 17665 +13668 13741 13742 13669 17665 17738 17739 17666 +13669 13742 13743 13670 17666 17739 17740 17667 +13670 13743 13744 13671 17667 17740 17741 17668 +13671 13744 13745 13672 17668 17741 17742 17669 +13672 13745 13746 13673 17669 17742 17743 17670 +13673 13746 13747 13674 17670 17743 17744 17671 +13674 13747 13748 13675 17671 17744 17745 17672 +13675 13748 13749 13676 17672 17745 17746 17673 +13676 13749 13750 13677 17673 17746 17747 17674 +13677 13750 13751 13678 17674 17747 17748 17675 +13678 13751 13752 13679 17675 17748 17749 17676 +13679 13752 13753 13680 17676 17749 17750 17677 +13680 13753 13754 13681 17677 17750 17751 17678 +13681 13754 13755 13682 17678 17751 17752 17679 +13682 13755 13756 13683 17679 17752 17753 17680 +13683 13756 13757 13684 17680 17753 17754 17681 +13684 13757 13758 13685 17681 17754 17755 17682 +13685 13758 13759 13686 17682 17755 17756 17683 +13686 13759 13760 13687 17683 17756 17757 17684 +13687 13760 13761 13688 17684 17757 17758 17685 +13688 13761 13762 13689 17685 17758 17759 17686 +13689 13762 13763 13690 17686 17759 17760 17687 +13690 13763 13764 13691 17687 17760 17761 17688 +13691 13764 13765 13692 17688 17761 17762 17689 +13692 13765 13766 13693 17689 17762 17763 17690 +13693 13766 13767 13694 17690 17763 17764 17691 +13694 13767 13768 13695 17691 17764 17765 17692 +13695 13768 13769 13696 17692 17765 17766 17693 +13696 13769 13770 13697 17693 17766 17767 17694 +13697 13770 13771 13698 17694 17767 17768 17695 +13698 13771 13772 13699 17695 17768 17769 17696 +13699 13772 13773 13700 17696 17769 17770 17697 +13700 13773 13774 13701 17697 17770 17771 17698 +13701 13774 13775 13702 17698 17771 17772 17699 +13702 13775 13776 13703 17699 17772 17773 17700 +13703 13776 13777 13704 17700 17773 17774 17701 +13704 13777 13778 13705 17701 17774 17775 17702 +13705 13778 13779 13706 17702 17775 17776 17703 +13706 13779 13780 13707 17703 17776 17777 17704 +13707 13780 13781 13708 17704 17777 17778 17705 +13708 13781 13782 13709 17705 17778 17779 17706 +13709 13782 13783 13710 17706 17779 17780 17707 +13710 13783 13784 13711 17707 17780 17781 17708 +13711 13784 13785 13712 17708 17781 17782 17709 +13712 13785 13786 13713 17709 17782 17783 17710 +13713 13786 13787 13714 17710 17783 17784 17711 +13714 13787 13788 13715 17711 17784 17785 17712 +13715 13788 13789 13716 17712 17785 17786 17713 +13716 13789 13790 13717 17713 17786 17787 17714 +13717 13790 13791 13718 17714 17787 17788 17715 +13718 13791 13792 13719 17715 17788 17789 17716 +13719 13792 13793 13720 17716 17789 17790 17717 +13720 13793 13794 13721 17717 17790 17791 17718 +13721 13794 13795 13722 17718 17791 17792 17719 +13722 13795 13796 13723 17719 17792 17793 17720 +13723 13796 13797 13724 17720 17793 17794 17721 +13724 13797 13798 13725 17721 17794 17795 17722 +13725 13798 13799 13726 17722 17795 17796 17723 +13726 13799 13800 13727 17723 17796 17797 17724 +13727 13800 13801 13728 17724 17797 17798 17725 +13728 13801 13802 13729 17725 17798 17799 17726 +13729 13802 13803 13730 17726 17799 17800 17727 +13731 13804 13805 13732 17728 17801 17802 17729 +13732 13805 13806 13733 17729 17802 17803 17730 +13733 13806 13807 13734 17730 17803 17804 17731 +13734 13807 13808 13735 17731 17804 17805 17732 +13735 13808 13809 13736 17732 17805 17806 17733 +13736 13809 13810 13737 17733 17806 17807 17734 +13737 13810 13811 13738 17734 17807 17808 17735 +13738 13811 13812 13739 17735 17808 17809 17736 +13739 13812 13813 13740 17736 17809 17810 17737 +13740 13813 13814 13741 17737 17810 17811 17738 +13741 13814 13815 13742 17738 17811 17812 17739 +13742 13815 13816 13743 17739 17812 17813 17740 +13743 13816 13817 13744 17740 17813 17814 17741 +13744 13817 13818 13745 17741 17814 17815 17742 +13745 13818 13819 13746 17742 17815 17816 17743 +13746 13819 13820 13747 17743 17816 17817 17744 +13747 13820 13821 13748 17744 17817 17818 17745 +13748 13821 13822 13749 17745 17818 17819 17746 +13749 13822 13823 13750 17746 17819 17820 17747 +13750 13823 13824 13751 17747 17820 17821 17748 +13751 13824 13825 13752 17748 17821 17822 17749 +13752 13825 13826 13753 17749 17822 17823 17750 +13753 13826 13827 13754 17750 17823 17824 17751 +13754 13827 13828 13755 17751 17824 17825 17752 +13755 13828 13829 13756 17752 17825 17826 17753 +13756 13829 13830 13757 17753 17826 17827 17754 +13757 13830 13831 13758 17754 17827 17828 17755 +13758 13831 13832 13759 17755 17828 17829 17756 +13759 13832 13833 13760 17756 17829 17830 17757 +13760 13833 13834 13761 17757 17830 17831 17758 +13761 13834 13835 13762 17758 17831 17832 17759 +13762 13835 13836 13763 17759 17832 17833 17760 +13763 13836 13837 13764 17760 17833 17834 17761 +13764 13837 13838 13765 17761 17834 17835 17762 +13765 13838 13839 13766 17762 17835 17836 17763 +13766 13839 13840 13767 17763 17836 17837 17764 +13767 13840 13841 13768 17764 17837 17838 17765 +13768 13841 13842 13769 17765 17838 17839 17766 +13769 13842 13843 13770 17766 17839 17840 17767 +13770 13843 13844 13771 17767 17840 17841 17768 +13771 13844 13845 13772 17768 17841 17842 17769 +13772 13845 13846 13773 17769 17842 17843 17770 +13773 13846 13847 13774 17770 17843 17844 17771 +13774 13847 13848 13775 17771 17844 17845 17772 +13775 13848 13849 13776 17772 17845 17846 17773 +13776 13849 13850 13777 17773 17846 17847 17774 +13777 13850 13851 13778 17774 17847 17848 17775 +13778 13851 13852 13779 17775 17848 17849 17776 +13779 13852 13853 13780 17776 17849 17850 17777 +13780 13853 13854 13781 17777 17850 17851 17778 +13781 13854 13855 13782 17778 17851 17852 17779 +13782 13855 13856 13783 17779 17852 17853 17780 +13783 13856 13857 13784 17780 17853 17854 17781 +13784 13857 13858 13785 17781 17854 17855 17782 +13785 13858 13859 13786 17782 17855 17856 17783 +13786 13859 13860 13787 17783 17856 17857 17784 +13787 13860 13861 13788 17784 17857 17858 17785 +13788 13861 13862 13789 17785 17858 17859 17786 +13789 13862 13863 13790 17786 17859 17860 17787 +13790 13863 13864 13791 17787 17860 17861 17788 +13791 13864 13865 13792 17788 17861 17862 17789 +13792 13865 13866 13793 17789 17862 17863 17790 +13793 13866 13867 13794 17790 17863 17864 17791 +13794 13867 13868 13795 17791 17864 17865 17792 +13795 13868 13869 13796 17792 17865 17866 17793 +13796 13869 13870 13797 17793 17866 17867 17794 +13797 13870 13871 13798 17794 17867 17868 17795 +13798 13871 13872 13799 17795 17868 17869 17796 +13799 13872 13873 13800 17796 17869 17870 17797 +13800 13873 13874 13801 17797 17870 17871 17798 +13801 13874 13875 13802 17798 17871 17872 17799 +13802 13875 13876 13803 17799 17872 17873 17800 +13804 13877 13878 13805 17801 17874 17875 17802 +13805 13878 13879 13806 17802 17875 17876 17803 +13806 13879 13880 13807 17803 17876 17877 17804 +13807 13880 13881 13808 17804 17877 17878 17805 +13808 13881 13882 13809 17805 17878 17879 17806 +13809 13882 13883 13810 17806 17879 17880 17807 +13810 13883 13884 13811 17807 17880 17881 17808 +13811 13884 13885 13812 17808 17881 17882 17809 +13812 13885 13886 13813 17809 17882 17883 17810 +13813 13886 13887 13814 17810 17883 17884 17811 +13814 13887 13888 13815 17811 17884 17885 17812 +13815 13888 13889 13816 17812 17885 17886 17813 +13816 13889 13890 13817 17813 17886 17887 17814 +13817 13890 13891 13818 17814 17887 17888 17815 +13818 13891 13892 13819 17815 17888 17889 17816 +13819 13892 13893 13820 17816 17889 17890 17817 +13820 13893 13894 13821 17817 17890 17891 17818 +13821 13894 13895 13822 17818 17891 17892 17819 +13822 13895 13896 13823 17819 17892 17893 17820 +13823 13896 13897 13824 17820 17893 17894 17821 +13824 13897 13898 13825 17821 17894 17895 17822 +13825 13898 13899 13826 17822 17895 17896 17823 +13826 13899 13900 13827 17823 17896 17897 17824 +13827 13900 13901 13828 17824 17897 17898 17825 +13828 13901 13902 13829 17825 17898 17899 17826 +13829 13902 13903 13830 17826 17899 17900 17827 +13830 13903 13904 13831 17827 17900 17901 17828 +13831 13904 13905 13832 17828 17901 17902 17829 +13832 13905 13906 13833 17829 17902 17903 17830 +13833 13906 13907 13834 17830 17903 17904 17831 +13834 13907 13908 13835 17831 17904 17905 17832 +13835 13908 13909 13836 17832 17905 17906 17833 +13836 13909 13910 13837 17833 17906 17907 17834 +13837 13910 13911 13838 17834 17907 17908 17835 +13838 13911 13912 13839 17835 17908 17909 17836 +13839 13912 13913 13840 17836 17909 17910 17837 +13840 13913 13914 13841 17837 17910 17911 17838 +13841 13914 13915 13842 17838 17911 17912 17839 +13842 13915 13916 13843 17839 17912 17913 17840 +13843 13916 13917 13844 17840 17913 17914 17841 +13844 13917 13918 13845 17841 17914 17915 17842 +13845 13918 13919 13846 17842 17915 17916 17843 +13846 13919 13920 13847 17843 17916 17917 17844 +13847 13920 13921 13848 17844 17917 17918 17845 +13848 13921 13922 13849 17845 17918 17919 17846 +13849 13922 13923 13850 17846 17919 17920 17847 +13850 13923 13924 13851 17847 17920 17921 17848 +13851 13924 13925 13852 17848 17921 17922 17849 +13852 13925 13926 13853 17849 17922 17923 17850 +13853 13926 13927 13854 17850 17923 17924 17851 +13854 13927 13928 13855 17851 17924 17925 17852 +13855 13928 13929 13856 17852 17925 17926 17853 +13856 13929 13930 13857 17853 17926 17927 17854 +13857 13930 13931 13858 17854 17927 17928 17855 +13858 13931 13932 13859 17855 17928 17929 17856 +13859 13932 13933 13860 17856 17929 17930 17857 +13860 13933 13934 13861 17857 17930 17931 17858 +13861 13934 13935 13862 17858 17931 17932 17859 +13862 13935 13936 13863 17859 17932 17933 17860 +13863 13936 13937 13864 17860 17933 17934 17861 +13864 13937 13938 13865 17861 17934 17935 17862 +13865 13938 13939 13866 17862 17935 17936 17863 +13866 13939 13940 13867 17863 17936 17937 17864 +13867 13940 13941 13868 17864 17937 17938 17865 +13868 13941 13942 13869 17865 17938 17939 17866 +13869 13942 13943 13870 17866 17939 17940 17867 +13870 13943 13944 13871 17867 17940 17941 17868 +13871 13944 13945 13872 17868 17941 17942 17869 +13872 13945 13946 13873 17869 17942 17943 17870 +13873 13946 13947 13874 17870 17943 17944 17871 +13874 13947 13948 13875 17871 17944 17945 17872 +13875 13948 13949 13876 17872 17945 17946 17873 +13877 13950 13951 13878 17874 17947 17948 17875 +13878 13951 13952 13879 17875 17948 17949 17876 +13879 13952 13953 13880 17876 17949 17950 17877 +13880 13953 13954 13881 17877 17950 17951 17878 +13881 13954 13955 13882 17878 17951 17952 17879 +13882 13955 13956 13883 17879 17952 17953 17880 +13883 13956 13957 13884 17880 17953 17954 17881 +13884 13957 13958 13885 17881 17954 17955 17882 +13885 13958 13959 13886 17882 17955 17956 17883 +13886 13959 13960 13887 17883 17956 17957 17884 +13887 13960 13961 13888 17884 17957 17958 17885 +13888 13961 13962 13889 17885 17958 17959 17886 +13889 13962 13963 13890 17886 17959 17960 17887 +13890 13963 13964 13891 17887 17960 17961 17888 +13891 13964 13965 13892 17888 17961 17962 17889 +13892 13965 13966 13893 17889 17962 17963 17890 +13893 13966 13967 13894 17890 17963 17964 17891 +13894 13967 13968 13895 17891 17964 17965 17892 +13895 13968 13969 13896 17892 17965 17966 17893 +13896 13969 13970 13897 17893 17966 17967 17894 +13897 13970 13971 13898 17894 17967 17968 17895 +13898 13971 13972 13899 17895 17968 17969 17896 +13899 13972 13973 13900 17896 17969 17970 17897 +13900 13973 13974 13901 17897 17970 17971 17898 +13901 13974 13975 13902 17898 17971 17972 17899 +13902 13975 13976 13903 17899 17972 17973 17900 +13903 13976 13977 13904 17900 17973 17974 17901 +13904 13977 13978 13905 17901 17974 17975 17902 +13905 13978 13979 13906 17902 17975 17976 17903 +13906 13979 13980 13907 17903 17976 17977 17904 +13907 13980 13981 13908 17904 17977 17978 17905 +13908 13981 13982 13909 17905 17978 17979 17906 +13909 13982 13983 13910 17906 17979 17980 17907 +13910 13983 13984 13911 17907 17980 17981 17908 +13911 13984 13985 13912 17908 17981 17982 17909 +13912 13985 13986 13913 17909 17982 17983 17910 +13913 13986 13987 13914 17910 17983 17984 17911 +13914 13987 13988 13915 17911 17984 17985 17912 +13915 13988 13989 13916 17912 17985 17986 17913 +13916 13989 13990 13917 17913 17986 17987 17914 +13917 13990 13991 13918 17914 17987 17988 17915 +13918 13991 13992 13919 17915 17988 17989 17916 +13919 13992 13993 13920 17916 17989 17990 17917 +13920 13993 13994 13921 17917 17990 17991 17918 +13921 13994 13995 13922 17918 17991 17992 17919 +13922 13995 13996 13923 17919 17992 17993 17920 +13923 13996 13997 13924 17920 17993 17994 17921 +13924 13997 13998 13925 17921 17994 17995 17922 +13925 13998 13999 13926 17922 17995 17996 17923 +13926 13999 14000 13927 17923 17996 17997 17924 +13927 14000 14001 13928 17924 17997 17998 17925 +13928 14001 14002 13929 17925 17998 17999 17926 +13929 14002 14003 13930 17926 17999 18000 17927 +13930 14003 14004 13931 17927 18000 18001 17928 +13931 14004 14005 13932 17928 18001 18002 17929 +13932 14005 14006 13933 17929 18002 18003 17930 +13933 14006 14007 13934 17930 18003 18004 17931 +13934 14007 14008 13935 17931 18004 18005 17932 +13935 14008 14009 13936 17932 18005 18006 17933 +13936 14009 14010 13937 17933 18006 18007 17934 +13937 14010 14011 13938 17934 18007 18008 17935 +13938 14011 14012 13939 17935 18008 18009 17936 +13939 14012 14013 13940 17936 18009 18010 17937 +13940 14013 14014 13941 17937 18010 18011 17938 +13941 14014 14015 13942 17938 18011 18012 17939 +13942 14015 14016 13943 17939 18012 18013 17940 +13943 14016 14017 13944 17940 18013 18014 17941 +13944 14017 14018 13945 17941 18014 18015 17942 +13945 14018 14019 13946 17942 18015 18016 17943 +13946 14019 14020 13947 17943 18016 18017 17944 +13947 14020 14021 13948 17944 18017 18018 17945 +13948 14021 14022 13949 17945 18018 18019 17946 +13950 14023 14024 13951 17947 18020 18021 17948 +13951 14024 14025 13952 17948 18021 18022 17949 +13952 14025 14026 13953 17949 18022 18023 17950 +13953 14026 14027 13954 17950 18023 18024 17951 +13954 14027 14028 13955 17951 18024 18025 17952 +13955 14028 14029 13956 17952 18025 18026 17953 +13956 14029 14030 13957 17953 18026 18027 17954 +13957 14030 14031 13958 17954 18027 18028 17955 +13958 14031 14032 13959 17955 18028 18029 17956 +13959 14032 14033 13960 17956 18029 18030 17957 +13960 14033 14034 13961 17957 18030 18031 17958 +13961 14034 14035 13962 17958 18031 18032 17959 +13962 14035 14036 13963 17959 18032 18033 17960 +13963 14036 14037 13964 17960 18033 18034 17961 +13964 14037 14038 13965 17961 18034 18035 17962 +13965 14038 14039 13966 17962 18035 18036 17963 +13966 14039 14040 13967 17963 18036 18037 17964 +13967 14040 14041 13968 17964 18037 18038 17965 +13968 14041 14042 13969 17965 18038 18039 17966 +13969 14042 14043 13970 17966 18039 18040 17967 +13970 14043 14044 13971 17967 18040 18041 17968 +13971 14044 14045 13972 17968 18041 18042 17969 +13972 14045 14046 13973 17969 18042 18043 17970 +13973 14046 14047 13974 17970 18043 18044 17971 +13974 14047 14048 13975 17971 18044 18045 17972 +13975 14048 14049 13976 17972 18045 18046 17973 +13976 14049 14050 13977 17973 18046 18047 17974 +13977 14050 14051 13978 17974 18047 18048 17975 +13978 14051 14052 13979 17975 18048 18049 17976 +13979 14052 14053 13980 17976 18049 18050 17977 +13980 14053 14054 13981 17977 18050 18051 17978 +13981 14054 14055 13982 17978 18051 18052 17979 +13982 14055 14056 13983 17979 18052 18053 17980 +13983 14056 14057 13984 17980 18053 18054 17981 +13984 14057 14058 13985 17981 18054 18055 17982 +13985 14058 14059 13986 17982 18055 18056 17983 +13986 14059 14060 13987 17983 18056 18057 17984 +13987 14060 14061 13988 17984 18057 18058 17985 +13988 14061 14062 13989 17985 18058 18059 17986 +13989 14062 14063 13990 17986 18059 18060 17987 +13990 14063 14064 13991 17987 18060 18061 17988 +13991 14064 14065 13992 17988 18061 18062 17989 +13992 14065 14066 13993 17989 18062 18063 17990 +13993 14066 14067 13994 17990 18063 18064 17991 +13994 14067 14068 13995 17991 18064 18065 17992 +13995 14068 14069 13996 17992 18065 18066 17993 +13996 14069 14070 13997 17993 18066 18067 17994 +13997 14070 14071 13998 17994 18067 18068 17995 +13998 14071 14072 13999 17995 18068 18069 17996 +13999 14072 14073 14000 17996 18069 18070 17997 +14000 14073 14074 14001 17997 18070 18071 17998 +14001 14074 14075 14002 17998 18071 18072 17999 +14002 14075 14076 14003 17999 18072 18073 18000 +14003 14076 14077 14004 18000 18073 18074 18001 +14004 14077 14078 14005 18001 18074 18075 18002 +14005 14078 14079 14006 18002 18075 18076 18003 +14006 14079 14080 14007 18003 18076 18077 18004 +14007 14080 14081 14008 18004 18077 18078 18005 +14008 14081 14082 14009 18005 18078 18079 18006 +14009 14082 14083 14010 18006 18079 18080 18007 +14010 14083 14084 14011 18007 18080 18081 18008 +14011 14084 14085 14012 18008 18081 18082 18009 +14012 14085 14086 14013 18009 18082 18083 18010 +14013 14086 14087 14014 18010 18083 18084 18011 +14014 14087 14088 14015 18011 18084 18085 18012 +14015 14088 14089 14016 18012 18085 18086 18013 +14016 14089 14090 14017 18013 18086 18087 18014 +14017 14090 14091 14018 18014 18087 18088 18015 +14018 14091 14092 14019 18015 18088 18089 18016 +14019 14092 14093 14020 18016 18089 18090 18017 +14020 14093 14094 14021 18017 18090 18091 18018 +14021 14094 14095 14022 18018 18091 18092 18019 +14023 14096 14097 14024 18020 18093 18094 18021 +14024 14097 14098 14025 18021 18094 18095 18022 +14025 14098 14099 14026 18022 18095 18096 18023 +14026 14099 14100 14027 18023 18096 18097 18024 +14027 14100 14101 14028 18024 18097 18098 18025 +14028 14101 14102 14029 18025 18098 18099 18026 +14029 14102 14103 14030 18026 18099 18100 18027 +14030 14103 14104 14031 18027 18100 18101 18028 +14031 14104 14105 14032 18028 18101 18102 18029 +14032 14105 14106 14033 18029 18102 18103 18030 +14033 14106 14107 14034 18030 18103 18104 18031 +14034 14107 14108 14035 18031 18104 18105 18032 +14035 14108 14109 14036 18032 18105 18106 18033 +14036 14109 14110 14037 18033 18106 18107 18034 +14037 14110 14111 14038 18034 18107 18108 18035 +14038 14111 14112 14039 18035 18108 18109 18036 +14039 14112 14113 14040 18036 18109 18110 18037 +14040 14113 14114 14041 18037 18110 18111 18038 +14041 14114 14115 14042 18038 18111 18112 18039 +14042 14115 14116 14043 18039 18112 18113 18040 +14043 14116 14117 14044 18040 18113 18114 18041 +14044 14117 14118 14045 18041 18114 18115 18042 +14045 14118 14119 14046 18042 18115 18116 18043 +14046 14119 14120 14047 18043 18116 18117 18044 +14047 14120 14121 14048 18044 18117 18118 18045 +14048 14121 14122 14049 18045 18118 18119 18046 +14049 14122 14123 14050 18046 18119 18120 18047 +14050 14123 14124 14051 18047 18120 18121 18048 +14051 14124 14125 14052 18048 18121 18122 18049 +14052 14125 14126 14053 18049 18122 18123 18050 +14053 14126 14127 14054 18050 18123 18124 18051 +14054 14127 14128 14055 18051 18124 18125 18052 +14055 14128 14129 14056 18052 18125 18126 18053 +14056 14129 14130 14057 18053 18126 18127 18054 +14057 14130 14131 14058 18054 18127 18128 18055 +14058 14131 14132 14059 18055 18128 18129 18056 +14059 14132 14133 14060 18056 18129 18130 18057 +14060 14133 14134 14061 18057 18130 18131 18058 +14061 14134 14135 14062 18058 18131 18132 18059 +14062 14135 14136 14063 18059 18132 18133 18060 +14063 14136 14137 14064 18060 18133 18134 18061 +14064 14137 14138 14065 18061 18134 18135 18062 +14065 14138 14139 14066 18062 18135 18136 18063 +14066 14139 14140 14067 18063 18136 18137 18064 +14067 14140 14141 14068 18064 18137 18138 18065 +14068 14141 14142 14069 18065 18138 18139 18066 +14069 14142 14143 14070 18066 18139 18140 18067 +14070 14143 14144 14071 18067 18140 18141 18068 +14071 14144 14145 14072 18068 18141 18142 18069 +14072 14145 14146 14073 18069 18142 18143 18070 +14073 14146 14147 14074 18070 18143 18144 18071 +14074 14147 14148 14075 18071 18144 18145 18072 +14075 14148 14149 14076 18072 18145 18146 18073 +14076 14149 14150 14077 18073 18146 18147 18074 +14077 14150 14151 14078 18074 18147 18148 18075 +14078 14151 14152 14079 18075 18148 18149 18076 +14079 14152 14153 14080 18076 18149 18150 18077 +14080 14153 14154 14081 18077 18150 18151 18078 +14081 14154 14155 14082 18078 18151 18152 18079 +14082 14155 14156 14083 18079 18152 18153 18080 +14083 14156 14157 14084 18080 18153 18154 18081 +14084 14157 14158 14085 18081 18154 18155 18082 +14085 14158 14159 14086 18082 18155 18156 18083 +14086 14159 14160 14087 18083 18156 18157 18084 +14087 14160 14161 14088 18084 18157 18158 18085 +14088 14161 14162 14089 18085 18158 18159 18086 +14089 14162 14163 14090 18086 18159 18160 18087 +14090 14163 14164 14091 18087 18160 18161 18088 +14091 14164 14165 14092 18088 18161 18162 18089 +14092 14165 14166 14093 18089 18162 18163 18090 +14093 14166 14167 14094 18090 18163 18164 18091 +14094 14167 14168 14095 18091 18164 18165 18092 +14096 14169 14170 14097 18093 18166 18167 18094 +14097 14170 14171 14098 18094 18167 18168 18095 +14098 14171 14172 14099 18095 18168 18169 18096 +14099 14172 14173 14100 18096 18169 18170 18097 +14100 14173 14174 14101 18097 18170 18171 18098 +14101 14174 14175 14102 18098 18171 18172 18099 +14102 14175 14176 14103 18099 18172 18173 18100 +14103 14176 14177 14104 18100 18173 18174 18101 +14104 14177 14178 14105 18101 18174 18175 18102 +14105 14178 14179 14106 18102 18175 18176 18103 +14106 14179 14180 14107 18103 18176 18177 18104 +14107 14180 14181 14108 18104 18177 18178 18105 +14108 14181 14182 14109 18105 18178 18179 18106 +14109 14182 14183 14110 18106 18179 18180 18107 +14110 14183 14184 14111 18107 18180 18181 18108 +14111 14184 14185 14112 18108 18181 18182 18109 +14112 14185 14186 14113 18109 18182 18183 18110 +14113 14186 14187 14114 18110 18183 18184 18111 +14114 14187 14188 14115 18111 18184 18185 18112 +14115 14188 14189 14116 18112 18185 18186 18113 +14116 14189 14190 14117 18113 18186 18187 18114 +14117 14190 14191 14118 18114 18187 18188 18115 +14118 14191 14192 14119 18115 18188 18189 18116 +14119 14192 14193 14120 18116 18189 18190 18117 +14120 14193 14194 14121 18117 18190 18191 18118 +14121 14194 14195 14122 18118 18191 18192 18119 +14122 14195 14196 14123 18119 18192 18193 18120 +14123 14196 14197 14124 18120 18193 18194 18121 +14124 14197 14198 14125 18121 18194 18195 18122 +14125 14198 14199 14126 18122 18195 18196 18123 +14126 14199 14200 14127 18123 18196 18197 18124 +14127 14200 14201 14128 18124 18197 18198 18125 +14128 14201 14202 14129 18125 18198 18199 18126 +14129 14202 14203 14130 18126 18199 18200 18127 +14130 14203 14204 14131 18127 18200 18201 18128 +14131 14204 14205 14132 18128 18201 18202 18129 +14132 14205 14206 14133 18129 18202 18203 18130 +14133 14206 14207 14134 18130 18203 18204 18131 +14134 14207 14208 14135 18131 18204 18205 18132 +14135 14208 14209 14136 18132 18205 18206 18133 +14136 14209 14210 14137 18133 18206 18207 18134 +14137 14210 14211 14138 18134 18207 18208 18135 +14138 14211 14212 14139 18135 18208 18209 18136 +14139 14212 14213 14140 18136 18209 18210 18137 +14140 14213 14214 14141 18137 18210 18211 18138 +14141 14214 14215 14142 18138 18211 18212 18139 +14142 14215 14216 14143 18139 18212 18213 18140 +14143 14216 14217 14144 18140 18213 18214 18141 +14144 14217 14218 14145 18141 18214 18215 18142 +14145 14218 14219 14146 18142 18215 18216 18143 +14146 14219 14220 14147 18143 18216 18217 18144 +14147 14220 14221 14148 18144 18217 18218 18145 +14148 14221 14222 14149 18145 18218 18219 18146 +14149 14222 14223 14150 18146 18219 18220 18147 +14150 14223 14224 14151 18147 18220 18221 18148 +14151 14224 14225 14152 18148 18221 18222 18149 +14152 14225 14226 14153 18149 18222 18223 18150 +14153 14226 14227 14154 18150 18223 18224 18151 +14154 14227 14228 14155 18151 18224 18225 18152 +14155 14228 14229 14156 18152 18225 18226 18153 +14156 14229 14230 14157 18153 18226 18227 18154 +14157 14230 14231 14158 18154 18227 18228 18155 +14158 14231 14232 14159 18155 18228 18229 18156 +14159 14232 14233 14160 18156 18229 18230 18157 +14160 14233 14234 14161 18157 18230 18231 18158 +14161 14234 14235 14162 18158 18231 18232 18159 +14162 14235 14236 14163 18159 18232 18233 18160 +14163 14236 14237 14164 18160 18233 18234 18161 +14164 14237 14238 14165 18161 18234 18235 18162 +14165 14238 14239 14166 18162 18235 18236 18163 +14166 14239 14240 14167 18163 18236 18237 18164 +14167 14240 14241 14168 18164 18237 18238 18165 +14169 14242 14243 14170 18166 18239 18240 18167 +14170 14243 14244 14171 18167 18240 18241 18168 +14171 14244 14245 14172 18168 18241 18242 18169 +14172 14245 14246 14173 18169 18242 18243 18170 +14173 14246 14247 14174 18170 18243 18244 18171 +14174 14247 14248 14175 18171 18244 18245 18172 +14175 14248 14249 14176 18172 18245 18246 18173 +14176 14249 14250 14177 18173 18246 18247 18174 +14177 14250 14251 14178 18174 18247 18248 18175 +14178 14251 14252 14179 18175 18248 18249 18176 +14179 14252 14253 14180 18176 18249 18250 18177 +14180 14253 14254 14181 18177 18250 18251 18178 +14181 14254 14255 14182 18178 18251 18252 18179 +14182 14255 14256 14183 18179 18252 18253 18180 +14183 14256 14257 14184 18180 18253 18254 18181 +14184 14257 14258 14185 18181 18254 18255 18182 +14185 14258 14259 14186 18182 18255 18256 18183 +14186 14259 14260 14187 18183 18256 18257 18184 +14187 14260 14261 14188 18184 18257 18258 18185 +14188 14261 14262 14189 18185 18258 18259 18186 +14189 14262 14263 14190 18186 18259 18260 18187 +14190 14263 14264 14191 18187 18260 18261 18188 +14191 14264 14265 14192 18188 18261 18262 18189 +14192 14265 14266 14193 18189 18262 18263 18190 +14193 14266 14267 14194 18190 18263 18264 18191 +14194 14267 14268 14195 18191 18264 18265 18192 +14195 14268 14269 14196 18192 18265 18266 18193 +14196 14269 14270 14197 18193 18266 18267 18194 +14197 14270 14271 14198 18194 18267 18268 18195 +14198 14271 14272 14199 18195 18268 18269 18196 +14199 14272 14273 14200 18196 18269 18270 18197 +14200 14273 14274 14201 18197 18270 18271 18198 +14201 14274 14275 14202 18198 18271 18272 18199 +14202 14275 14276 14203 18199 18272 18273 18200 +14203 14276 14277 14204 18200 18273 18274 18201 +14204 14277 14278 14205 18201 18274 18275 18202 +14205 14278 14279 14206 18202 18275 18276 18203 +14206 14279 14280 14207 18203 18276 18277 18204 +14207 14280 14281 14208 18204 18277 18278 18205 +14208 14281 14282 14209 18205 18278 18279 18206 +14209 14282 14283 14210 18206 18279 18280 18207 +14210 14283 14284 14211 18207 18280 18281 18208 +14211 14284 14285 14212 18208 18281 18282 18209 +14212 14285 14286 14213 18209 18282 18283 18210 +14213 14286 14287 14214 18210 18283 18284 18211 +14214 14287 14288 14215 18211 18284 18285 18212 +14215 14288 14289 14216 18212 18285 18286 18213 +14216 14289 14290 14217 18213 18286 18287 18214 +14217 14290 14291 14218 18214 18287 18288 18215 +14218 14291 14292 14219 18215 18288 18289 18216 +14219 14292 14293 14220 18216 18289 18290 18217 +14220 14293 14294 14221 18217 18290 18291 18218 +14221 14294 14295 14222 18218 18291 18292 18219 +14222 14295 14296 14223 18219 18292 18293 18220 +14223 14296 14297 14224 18220 18293 18294 18221 +14224 14297 14298 14225 18221 18294 18295 18222 +14225 14298 14299 14226 18222 18295 18296 18223 +14226 14299 14300 14227 18223 18296 18297 18224 +14227 14300 14301 14228 18224 18297 18298 18225 +14228 14301 14302 14229 18225 18298 18299 18226 +14229 14302 14303 14230 18226 18299 18300 18227 +14230 14303 14304 14231 18227 18300 18301 18228 +14231 14304 14305 14232 18228 18301 18302 18229 +14232 14305 14306 14233 18229 18302 18303 18230 +14233 14306 14307 14234 18230 18303 18304 18231 +14234 14307 14308 14235 18231 18304 18305 18232 +14235 14308 14309 14236 18232 18305 18306 18233 +14236 14309 14310 14237 18233 18306 18307 18234 +14237 14310 14311 14238 18234 18307 18308 18235 +14238 14311 14312 14239 18235 18308 18309 18236 +14239 14312 14313 14240 18236 18309 18310 18237 +14240 14313 14314 14241 18237 18310 18311 18238 +14242 14315 14316 14243 18239 18312 18313 18240 +14243 14316 14317 14244 18240 18313 18314 18241 +14244 14317 14318 14245 18241 18314 18315 18242 +14245 14318 14319 14246 18242 18315 18316 18243 +14246 14319 14320 14247 18243 18316 18317 18244 +14247 14320 14321 14248 18244 18317 18318 18245 +14248 14321 14322 14249 18245 18318 18319 18246 +14249 14322 14323 14250 18246 18319 18320 18247 +14250 14323 14324 14251 18247 18320 18321 18248 +14251 14324 14325 14252 18248 18321 18322 18249 +14252 14325 14326 14253 18249 18322 18323 18250 +14253 14326 14327 14254 18250 18323 18324 18251 +14254 14327 14328 14255 18251 18324 18325 18252 +14255 14328 14329 14256 18252 18325 18326 18253 +14256 14329 14330 14257 18253 18326 18327 18254 +14257 14330 14331 14258 18254 18327 18328 18255 +14258 14331 14332 14259 18255 18328 18329 18256 +14259 14332 14333 14260 18256 18329 18330 18257 +14260 14333 14334 14261 18257 18330 18331 18258 +14261 14334 14335 14262 18258 18331 18332 18259 +14262 14335 14336 14263 18259 18332 18333 18260 +14263 14336 14337 14264 18260 18333 18334 18261 +14264 14337 14338 14265 18261 18334 18335 18262 +14265 14338 14339 14266 18262 18335 18336 18263 +14266 14339 14340 14267 18263 18336 18337 18264 +14267 14340 14341 14268 18264 18337 18338 18265 +14268 14341 14342 14269 18265 18338 18339 18266 +14269 14342 14343 14270 18266 18339 18340 18267 +14270 14343 14344 14271 18267 18340 18341 18268 +14271 14344 14345 14272 18268 18341 18342 18269 +14272 14345 14346 14273 18269 18342 18343 18270 +14273 14346 14347 14274 18270 18343 18344 18271 +14274 14347 14348 14275 18271 18344 18345 18272 +14275 14348 14349 14276 18272 18345 18346 18273 +14276 14349 14350 14277 18273 18346 18347 18274 +14277 14350 14351 14278 18274 18347 18348 18275 +14278 14351 14352 14279 18275 18348 18349 18276 +14279 14352 14353 14280 18276 18349 18350 18277 +14280 14353 14354 14281 18277 18350 18351 18278 +14281 14354 14355 14282 18278 18351 18352 18279 +14282 14355 14356 14283 18279 18352 18353 18280 +14283 14356 14357 14284 18280 18353 18354 18281 +14284 14357 14358 14285 18281 18354 18355 18282 +14285 14358 14359 14286 18282 18355 18356 18283 +14286 14359 14360 14287 18283 18356 18357 18284 +14287 14360 14361 14288 18284 18357 18358 18285 +14288 14361 14362 14289 18285 18358 18359 18286 +14289 14362 14363 14290 18286 18359 18360 18287 +14290 14363 14364 14291 18287 18360 18361 18288 +14291 14364 14365 14292 18288 18361 18362 18289 +14292 14365 14366 14293 18289 18362 18363 18290 +14293 14366 14367 14294 18290 18363 18364 18291 +14294 14367 14368 14295 18291 18364 18365 18292 +14295 14368 14369 14296 18292 18365 18366 18293 +14296 14369 14370 14297 18293 18366 18367 18294 +14297 14370 14371 14298 18294 18367 18368 18295 +14298 14371 14372 14299 18295 18368 18369 18296 +14299 14372 14373 14300 18296 18369 18370 18297 +14300 14373 14374 14301 18297 18370 18371 18298 +14301 14374 14375 14302 18298 18371 18372 18299 +14302 14375 14376 14303 18299 18372 18373 18300 +14303 14376 14377 14304 18300 18373 18374 18301 +14304 14377 14378 14305 18301 18374 18375 18302 +14305 14378 14379 14306 18302 18375 18376 18303 +14306 14379 14380 14307 18303 18376 18377 18304 +14307 14380 14381 14308 18304 18377 18378 18305 +14308 14381 14382 14309 18305 18378 18379 18306 +14309 14382 14383 14310 18306 18379 18380 18307 +14310 14383 14384 14311 18307 18380 18381 18308 +14311 14384 14385 14312 18308 18381 18382 18309 +14312 14385 14386 14313 18309 18382 18383 18310 +14313 14386 14387 14314 18310 18383 18384 18311 +14315 14388 14389 14316 18312 18385 18386 18313 +14316 14389 14390 14317 18313 18386 18387 18314 +14317 14390 14391 14318 18314 18387 18388 18315 +14318 14391 14392 14319 18315 18388 18389 18316 +14319 14392 14393 14320 18316 18389 18390 18317 +14320 14393 14394 14321 18317 18390 18391 18318 +14321 14394 14395 14322 18318 18391 18392 18319 +14322 14395 14396 14323 18319 18392 18393 18320 +14323 14396 14397 14324 18320 18393 18394 18321 +14324 14397 14398 14325 18321 18394 18395 18322 +14325 14398 14399 14326 18322 18395 18396 18323 +14326 14399 14400 14327 18323 18396 18397 18324 +14327 14400 14401 14328 18324 18397 18398 18325 +14328 14401 14402 14329 18325 18398 18399 18326 +14329 14402 14403 14330 18326 18399 18400 18327 +14330 14403 14404 14331 18327 18400 18401 18328 +14331 14404 14405 14332 18328 18401 18402 18329 +14332 14405 14406 14333 18329 18402 18403 18330 +14333 14406 14407 14334 18330 18403 18404 18331 +14334 14407 14408 14335 18331 18404 18405 18332 +14335 14408 14409 14336 18332 18405 18406 18333 +14336 14409 14410 14337 18333 18406 18407 18334 +14337 14410 14411 14338 18334 18407 18408 18335 +14338 14411 14412 14339 18335 18408 18409 18336 +14339 14412 14413 14340 18336 18409 18410 18337 +14340 14413 14414 14341 18337 18410 18411 18338 +14341 14414 14415 14342 18338 18411 18412 18339 +14342 14415 14416 14343 18339 18412 18413 18340 +14343 14416 14417 14344 18340 18413 18414 18341 +14344 14417 14418 14345 18341 18414 18415 18342 +14345 14418 14419 14346 18342 18415 18416 18343 +14346 14419 14420 14347 18343 18416 18417 18344 +14347 14420 14421 14348 18344 18417 18418 18345 +14348 14421 14422 14349 18345 18418 18419 18346 +14349 14422 14423 14350 18346 18419 18420 18347 +14350 14423 14424 14351 18347 18420 18421 18348 +14351 14424 14425 14352 18348 18421 18422 18349 +14352 14425 14426 14353 18349 18422 18423 18350 +14353 14426 14427 14354 18350 18423 18424 18351 +14354 14427 14428 14355 18351 18424 18425 18352 +14355 14428 14429 14356 18352 18425 18426 18353 +14356 14429 14430 14357 18353 18426 18427 18354 +14357 14430 14431 14358 18354 18427 18428 18355 +14358 14431 14432 14359 18355 18428 18429 18356 +14359 14432 14433 14360 18356 18429 18430 18357 +14360 14433 14434 14361 18357 18430 18431 18358 +14361 14434 14435 14362 18358 18431 18432 18359 +14362 14435 14436 14363 18359 18432 18433 18360 +14363 14436 14437 14364 18360 18433 18434 18361 +14364 14437 14438 14365 18361 18434 18435 18362 +14365 14438 14439 14366 18362 18435 18436 18363 +14366 14439 14440 14367 18363 18436 18437 18364 +14367 14440 14441 14368 18364 18437 18438 18365 +14368 14441 14442 14369 18365 18438 18439 18366 +14369 14442 14443 14370 18366 18439 18440 18367 +14370 14443 14444 14371 18367 18440 18441 18368 +14371 14444 14445 14372 18368 18441 18442 18369 +14372 14445 14446 14373 18369 18442 18443 18370 +14373 14446 14447 14374 18370 18443 18444 18371 +14374 14447 14448 14375 18371 18444 18445 18372 +14375 14448 14449 14376 18372 18445 18446 18373 +14376 14449 14450 14377 18373 18446 18447 18374 +14377 14450 14451 14378 18374 18447 18448 18375 +14378 14451 14452 14379 18375 18448 18449 18376 +14379 14452 14453 14380 18376 18449 18450 18377 +14380 14453 14454 14381 18377 18450 18451 18378 +14381 14454 14455 14382 18378 18451 18452 18379 +14382 14455 14456 14383 18379 18452 18453 18380 +14383 14456 14457 14384 18380 18453 18454 18381 +14384 14457 14458 14385 18381 18454 18455 18382 +14385 14458 14459 14386 18382 18455 18456 18383 +14386 14459 14460 14387 18383 18456 18457 18384 +14461 14462 14463 14464 18458 18459 18460 18461 +14462 14465 14466 14463 18459 18462 18463 18460 +14463 14466 14467 14468 18460 18463 18464 18465 +14463 14468 14469 14464 18460 18465 18466 18461 +14465 14470 14471 14466 18462 18467 18468 18463 +14466 14471 14472 14467 18463 18468 18469 18464 +14467 14472 14473 14474 18464 18469 18470 18471 +14467 14474 14475 14468 18464 18471 18472 18465 +14468 14475 14476 14469 18465 18472 18473 18466 +14470 14477 14478 14471 18467 18474 18475 18468 +14471 14478 14479 14472 18468 18475 18476 18469 +14472 14479 14480 14473 18469 18476 18477 18470 +14473 14480 14481 14482 18470 18477 18478 18479 +14473 14482 14483 14474 18470 18479 18480 18471 +14474 14483 14484 14475 18471 18480 18481 18472 +14475 14484 14485 14476 18472 18481 18482 18473 +14477 14486 14487 14478 18474 18483 18484 18475 +14478 14487 14488 14479 18475 18484 18485 18476 +14479 14488 14489 14480 18476 18485 18486 18477 +14480 14489 14490 14481 18477 18486 18487 18478 +14481 14490 14491 14492 18478 18487 18488 18489 +14481 14492 14493 14482 18478 18489 18490 18479 +14482 14493 14494 14483 18479 18490 18491 18480 +14483 14494 14495 14484 18480 18491 18492 18481 +14484 14495 14496 14485 18481 18492 18493 18482 +14486 14497 14498 14487 18483 18494 18495 18484 +14487 14498 14499 14488 18484 18495 18496 18485 +14488 14499 14500 14489 18485 18496 18497 18486 +14489 14500 14501 14490 18486 18497 18498 18487 +14490 14501 14502 14491 18487 18498 18499 18488 +14491 14502 14503 14504 18488 18499 18500 18501 +14491 14504 14505 14492 18488 18501 18502 18489 +14492 14505 14506 14493 18489 18502 18503 18490 +14493 14506 14507 14494 18490 18503 18504 18491 +14494 14507 14508 14495 18491 18504 18505 18492 +14495 14508 14509 14496 18492 18505 18506 18493 +14497 14510 14511 14498 18494 18507 18508 18495 +14498 14511 14512 14499 18495 18508 18509 18496 +14499 14512 14513 14500 18496 18509 18510 18497 +14500 14513 14514 14501 18497 18510 18511 18498 +14501 14514 14515 14502 18498 18511 18512 18499 +14502 14515 14516 14503 18499 18512 18513 18500 +14503 14516 14517 14518 18500 18513 18514 18515 +14503 14518 14519 14504 18500 18515 18516 18501 +14504 14519 14520 14505 18501 18516 18517 18502 +14505 14520 14521 14506 18502 18517 18518 18503 +14506 14521 14522 14507 18503 18518 18519 18504 +14507 14522 14523 14508 18504 18519 18520 18505 +14508 14523 14524 14509 18505 18520 18521 18506 +14510 14525 14526 14511 18507 18522 18523 18508 +14511 14526 14527 14512 18508 18523 18524 18509 +14512 14527 14528 14513 18509 18524 18525 18510 +14513 14528 14529 14514 18510 18525 18526 18511 +14514 14529 14530 14515 18511 18526 18527 18512 +14515 14530 14531 14516 18512 18527 18528 18513 +14516 14531 14532 14517 18513 18528 18529 18514 +14517 14532 14533 14534 18514 18529 18530 18531 +14517 14534 14535 14518 18514 18531 18532 18515 +14518 14535 14536 14519 18515 18532 18533 18516 +14519 14536 14537 14520 18516 18533 18534 18517 +14520 14537 14538 14521 18517 18534 18535 18518 +14521 14538 14539 14522 18518 18535 18536 18519 +14522 14539 14540 14523 18519 18536 18537 18520 +14523 14540 14541 14524 18520 18537 18538 18521 +14525 14542 14543 14526 18522 18539 18540 18523 +14526 14543 14544 14527 18523 18540 18541 18524 +14527 14544 14545 14528 18524 18541 18542 18525 +14528 14545 14546 14529 18525 18542 18543 18526 +14529 14546 14547 14530 18526 18543 18544 18527 +14530 14547 14548 14531 18527 18544 18545 18528 +14531 14548 14549 14532 18528 18545 18546 18529 +14532 14549 14550 14533 18529 18546 18547 18530 +14533 14550 14551 14552 18530 18547 18548 18549 +14533 14552 14553 14534 18530 18549 18550 18531 +14534 14553 14554 14535 18531 18550 18551 18532 +14535 14554 14555 14536 18532 18551 18552 18533 +14536 14555 14556 14537 18533 18552 18553 18534 +14537 14556 14557 14538 18534 18553 18554 18535 +14538 14557 14558 14539 18535 18554 18555 18536 +14539 14558 14559 14540 18536 18555 18556 18537 +14540 14559 14560 14541 18537 18556 18557 18538 +14542 14561 14562 14543 18539 18558 18559 18540 +14543 14562 14563 14544 18540 18559 18560 18541 +14544 14563 14564 14545 18541 18560 18561 18542 +14545 14564 14565 14546 18542 18561 18562 18543 +14546 14565 14566 14547 18543 18562 18563 18544 +14547 14566 14567 14548 18544 18563 18564 18545 +14548 14567 14568 14549 18545 18564 18565 18546 +14549 14568 14569 14550 18546 18565 18566 18547 +14550 14569 14570 14551 18547 18566 18567 18548 +14551 14570 14571 14572 18548 18567 18568 18569 +14551 14572 14573 14552 18548 18569 18570 18549 +14552 14573 14574 14553 18549 18570 18571 18550 +14553 14574 14575 14554 18550 18571 18572 18551 +14554 14575 14576 14555 18551 18572 18573 18552 +14555 14576 14577 14556 18552 18573 18574 18553 +14556 14577 14578 14557 18553 18574 18575 18554 +14557 14578 14579 14558 18554 18575 18576 18555 +14558 14579 14580 14559 18555 18576 18577 18556 +14559 14580 14581 14560 18556 18577 18578 18557 +14561 14582 14583 14562 18558 18579 18580 18559 +14562 14583 14584 14563 18559 18580 18581 18560 +14563 14584 14585 14564 18560 18581 18582 18561 +14564 14585 14586 14565 18561 18582 18583 18562 +14565 14586 14587 14566 18562 18583 18584 18563 +14566 14587 14588 14567 18563 18584 18585 18564 +14567 14588 14589 14568 18564 18585 18586 18565 +14568 14589 14590 14569 18565 18586 18587 18566 +14569 14590 14591 14570 18566 18587 18588 18567 +14570 14591 14592 14571 18567 18588 18589 18568 +14571 14592 14593 14594 18568 18589 18590 18591 +14571 14594 14595 14572 18568 18591 18592 18569 +14572 14595 14596 14573 18569 18592 18593 18570 +14573 14596 14597 14574 18570 18593 18594 18571 +14574 14597 14598 14575 18571 18594 18595 18572 +14575 14598 14599 14576 18572 18595 18596 18573 +14576 14599 14600 14577 18573 18596 18597 18574 +14577 14600 14601 14578 18574 18597 18598 18575 +14578 14601 14602 14579 18575 18598 18599 18576 +14579 14602 14603 14580 18576 18599 18600 18577 +14580 14603 14604 14581 18577 18600 18601 18578 +14582 14605 14606 14583 18579 18602 18603 18580 +14583 14606 14607 14584 18580 18603 18604 18581 +14584 14607 14608 14585 18581 18604 18605 18582 +14585 14608 14609 14586 18582 18605 18606 18583 +14586 14609 14610 14587 18583 18606 18607 18584 +14587 14610 14611 14588 18584 18607 18608 18585 +14588 14611 14612 14589 18585 18608 18609 18586 +14589 14612 14613 14590 18586 18609 18610 18587 +14590 14613 14614 14591 18587 18610 18611 18588 +14591 14614 14615 14592 18588 18611 18612 18589 +14592 14615 14616 14593 18589 18612 18613 18590 +14593 14616 14617 14618 18590 18613 18614 18615 +14593 14618 14619 14594 18590 18615 18616 18591 +14594 14619 14620 14595 18591 18616 18617 18592 +14595 14620 14621 14596 18592 18617 18618 18593 +14596 14621 14622 14597 18593 18618 18619 18594 +14597 14622 14623 14598 18594 18619 18620 18595 +14598 14623 14624 14599 18595 18620 18621 18596 +14599 14624 14625 14600 18596 18621 18622 18597 +14600 14625 14626 14601 18597 18622 18623 18598 +14601 14626 14627 14602 18598 18623 18624 18599 +14602 14627 14628 14603 18599 18624 18625 18600 +14603 14628 14629 14604 18600 18625 18626 18601 +14605 14630 14631 14606 18602 18627 18628 18603 +14606 14631 14632 14607 18603 18628 18629 18604 +14607 14632 14633 14608 18604 18629 18630 18605 +14608 14633 14634 14609 18605 18630 18631 18606 +14609 14634 14635 14610 18606 18631 18632 18607 +14610 14635 14636 14611 18607 18632 18633 18608 +14611 14636 14637 14612 18608 18633 18634 18609 +14612 14637 14638 14613 18609 18634 18635 18610 +14613 14638 14639 14614 18610 18635 18636 18611 +14614 14639 14640 14615 18611 18636 18637 18612 +14615 14640 14641 14616 18612 18637 18638 18613 +14616 14641 14642 14617 18613 18638 18639 18614 +14617 14642 14643 14644 18614 18639 18640 18641 +14617 14644 14645 14618 18614 18641 18642 18615 +14618 14645 14646 14619 18615 18642 18643 18616 +14619 14646 14647 14620 18616 18643 18644 18617 +14620 14647 14648 14621 18617 18644 18645 18618 +14621 14648 14649 14622 18618 18645 18646 18619 +14622 14649 14650 14623 18619 18646 18647 18620 +14623 14650 14651 14624 18620 18647 18648 18621 +14624 14651 14652 14625 18621 18648 18649 18622 +14625 14652 14653 14626 18622 18649 18650 18623 +14626 14653 14654 14627 18623 18650 18651 18624 +14627 14654 14655 14628 18624 18651 18652 18625 +14628 14655 14656 14629 18625 18652 18653 18626 +14630 14657 14658 14631 18627 18654 18655 18628 +14631 14658 14659 14632 18628 18655 18656 18629 +14632 14659 14660 14633 18629 18656 18657 18630 +14633 14660 14661 14634 18630 18657 18658 18631 +14634 14661 14662 14635 18631 18658 18659 18632 +14635 14662 14663 14636 18632 18659 18660 18633 +14636 14663 14664 14637 18633 18660 18661 18634 +14637 14664 14665 14638 18634 18661 18662 18635 +14638 14665 14666 14639 18635 18662 18663 18636 +14639 14666 14667 14640 18636 18663 18664 18637 +14640 14667 14668 14641 18637 18664 18665 18638 +14641 14668 14669 14642 18638 18665 18666 18639 +14642 14669 14670 14643 18639 18666 18667 18640 +14643 14670 14671 14672 18640 18667 18668 18669 +14643 14672 14673 14644 18640 18669 18670 18641 +14644 14673 14674 14645 18641 18670 18671 18642 +14645 14674 14675 14646 18642 18671 18672 18643 +14646 14675 14676 14647 18643 18672 18673 18644 +14647 14676 14677 14648 18644 18673 18674 18645 +14648 14677 14678 14649 18645 18674 18675 18646 +14649 14678 14679 14650 18646 18675 18676 18647 +14650 14679 14680 14651 18647 18676 18677 18648 +14651 14680 14681 14652 18648 18677 18678 18649 +14652 14681 14682 14653 18649 18678 18679 18650 +14653 14682 14683 14654 18650 18679 18680 18651 +14654 14683 14684 14655 18651 18680 18681 18652 +14655 14684 14685 14656 18652 18681 18682 18653 +14657 14686 14687 14658 18654 18683 18684 18655 +14658 14687 14688 14659 18655 18684 18685 18656 +14659 14688 14689 14660 18656 18685 18686 18657 +14660 14689 14690 14661 18657 18686 18687 18658 +14661 14690 14691 14662 18658 18687 18688 18659 +14662 14691 14692 14663 18659 18688 18689 18660 +14663 14692 14693 14664 18660 18689 18690 18661 +14664 14693 14694 14665 18661 18690 18691 18662 +14665 14694 14695 14666 18662 18691 18692 18663 +14666 14695 14696 14667 18663 18692 18693 18664 +14667 14696 14697 14668 18664 18693 18694 18665 +14668 14697 14698 14669 18665 18694 18695 18666 +14669 14698 14699 14670 18666 18695 18696 18667 +14670 14699 14700 14671 18667 18696 18697 18668 +14671 14700 14701 14702 18668 18697 18698 18699 +14671 14702 14703 14672 18668 18699 18700 18669 +14672 14703 14704 14673 18669 18700 18701 18670 +14673 14704 14705 14674 18670 18701 18702 18671 +14674 14705 14706 14675 18671 18702 18703 18672 +14675 14706 14707 14676 18672 18703 18704 18673 +14676 14707 14708 14677 18673 18704 18705 18674 +14677 14708 14709 14678 18674 18705 18706 18675 +14678 14709 14710 14679 18675 18706 18707 18676 +14679 14710 14711 14680 18676 18707 18708 18677 +14680 14711 14712 14681 18677 18708 18709 18678 +14681 14712 14713 14682 18678 18709 18710 18679 +14682 14713 14714 14683 18679 18710 18711 18680 +14683 14714 14715 14684 18680 18711 18712 18681 +14684 14715 14716 14685 18681 18712 18713 18682 +14686 14717 14718 14687 18683 18714 18715 18684 +14687 14718 14719 14688 18684 18715 18716 18685 +14688 14719 14720 14689 18685 18716 18717 18686 +14689 14720 14721 14690 18686 18717 18718 18687 +14690 14721 14722 14691 18687 18718 18719 18688 +14691 14722 14723 14692 18688 18719 18720 18689 +14692 14723 14724 14693 18689 18720 18721 18690 +14693 14724 14725 14694 18690 18721 18722 18691 +14694 14725 14726 14695 18691 18722 18723 18692 +14695 14726 14727 14696 18692 18723 18724 18693 +14696 14727 14728 14697 18693 18724 18725 18694 +14697 14728 14729 14698 18694 18725 18726 18695 +14698 14729 14730 14699 18695 18726 18727 18696 +14699 14730 14731 14700 18696 18727 18728 18697 +14700 14731 14732 14701 18697 18728 18729 18698 +14701 14732 14733 14734 18698 18729 18730 18731 +14701 14734 14735 14702 18698 18731 18732 18699 +14702 14735 14736 14703 18699 18732 18733 18700 +14703 14736 14737 14704 18700 18733 18734 18701 +14704 14737 14738 14705 18701 18734 18735 18702 +14705 14738 14739 14706 18702 18735 18736 18703 +14706 14739 14740 14707 18703 18736 18737 18704 +14707 14740 14741 14708 18704 18737 18738 18705 +14708 14741 14742 14709 18705 18738 18739 18706 +14709 14742 14743 14710 18706 18739 18740 18707 +14710 14743 14744 14711 18707 18740 18741 18708 +14711 14744 14745 14712 18708 18741 18742 18709 +14712 14745 14746 14713 18709 18742 18743 18710 +14713 14746 14747 14714 18710 18743 18744 18711 +14714 14747 14748 14715 18711 18744 18745 18712 +14715 14748 14749 14716 18712 18745 18746 18713 +14717 14750 14751 14718 18714 18747 18748 18715 +14718 14751 14752 14719 18715 18748 18749 18716 +14719 14752 14753 14720 18716 18749 18750 18717 +14720 14753 14754 14721 18717 18750 18751 18718 +14721 14754 14755 14722 18718 18751 18752 18719 +14722 14755 14756 14723 18719 18752 18753 18720 +14723 14756 14757 14724 18720 18753 18754 18721 +14724 14757 14758 14725 18721 18754 18755 18722 +14725 14758 14759 14726 18722 18755 18756 18723 +14726 14759 14760 14727 18723 18756 18757 18724 +14727 14760 14761 14728 18724 18757 18758 18725 +14728 14761 14762 14729 18725 18758 18759 18726 +14729 14762 14763 14730 18726 18759 18760 18727 +14730 14763 14764 14731 18727 18760 18761 18728 +14731 14764 14765 14732 18728 18761 18762 18729 +14732 14765 14766 14733 18729 18762 18763 18730 +14733 14766 14767 14768 18730 18763 18764 18765 +14733 14768 14769 14734 18730 18765 18766 18731 +14734 14769 14770 14735 18731 18766 18767 18732 +14735 14770 14771 14736 18732 18767 18768 18733 +14736 14771 14772 14737 18733 18768 18769 18734 +14737 14772 14773 14738 18734 18769 18770 18735 +14738 14773 14774 14739 18735 18770 18771 18736 +14739 14774 14775 14740 18736 18771 18772 18737 +14740 14775 14776 14741 18737 18772 18773 18738 +14741 14776 14777 14742 18738 18773 18774 18739 +14742 14777 14778 14743 18739 18774 18775 18740 +14743 14778 14779 14744 18740 18775 18776 18741 +14744 14779 14780 14745 18741 18776 18777 18742 +14745 14780 14781 14746 18742 18777 18778 18743 +14746 14781 14782 14747 18743 18778 18779 18744 +14747 14782 14783 14748 18744 18779 18780 18745 +14748 14783 14784 14749 18745 18780 18781 18746 +14750 14785 14786 14751 18747 18782 18783 18748 +14751 14786 14787 14752 18748 18783 18784 18749 +14752 14787 14788 14753 18749 18784 18785 18750 +14753 14788 14789 14754 18750 18785 18786 18751 +14754 14789 14790 14755 18751 18786 18787 18752 +14755 14790 14791 14756 18752 18787 18788 18753 +14756 14791 14792 14757 18753 18788 18789 18754 +14757 14792 14793 14758 18754 18789 18790 18755 +14758 14793 14794 14759 18755 18790 18791 18756 +14759 14794 14795 14760 18756 18791 18792 18757 +14760 14795 14796 14761 18757 18792 18793 18758 +14761 14796 14797 14762 18758 18793 18794 18759 +14762 14797 14798 14763 18759 18794 18795 18760 +14763 14798 14799 14764 18760 18795 18796 18761 +14764 14799 14800 14765 18761 18796 18797 18762 +14765 14800 14801 14766 18762 18797 18798 18763 +14766 14801 14802 14767 18763 18798 18799 18764 +14767 14802 14803 14804 18764 18799 18800 18801 +14767 14804 14805 14768 18764 18801 18802 18765 +14768 14805 14806 14769 18765 18802 18803 18766 +14769 14806 14807 14770 18766 18803 18804 18767 +14770 14807 14808 14771 18767 18804 18805 18768 +14771 14808 14809 14772 18768 18805 18806 18769 +14772 14809 14810 14773 18769 18806 18807 18770 +14773 14810 14811 14774 18770 18807 18808 18771 +14774 14811 14812 14775 18771 18808 18809 18772 +14775 14812 14813 14776 18772 18809 18810 18773 +14776 14813 14814 14777 18773 18810 18811 18774 +14777 14814 14815 14778 18774 18811 18812 18775 +14778 14815 14816 14779 18775 18812 18813 18776 +14779 14816 14817 14780 18776 18813 18814 18777 +14780 14817 14818 14781 18777 18814 18815 18778 +14781 14818 14819 14782 18778 18815 18816 18779 +14782 14819 14820 14783 18779 18816 18817 18780 +14783 14820 14821 14784 18780 18817 18818 18781 +14785 14822 14823 14786 18782 18819 18820 18783 +14786 14823 14824 14787 18783 18820 18821 18784 +14787 14824 14825 14788 18784 18821 18822 18785 +14788 14825 14826 14789 18785 18822 18823 18786 +14789 14826 14827 14790 18786 18823 18824 18787 +14790 14827 14828 14791 18787 18824 18825 18788 +14791 14828 14829 14792 18788 18825 18826 18789 +14792 14829 14830 14793 18789 18826 18827 18790 +14793 14830 14831 14794 18790 18827 18828 18791 +14794 14831 14832 14795 18791 18828 18829 18792 +14795 14832 14833 14796 18792 18829 18830 18793 +14796 14833 14834 14797 18793 18830 18831 18794 +14797 14834 14835 14798 18794 18831 18832 18795 +14798 14835 14836 14799 18795 18832 18833 18796 +14799 14836 14837 14800 18796 18833 18834 18797 +14800 14837 14838 14801 18797 18834 18835 18798 +14801 14838 14839 14802 18798 18835 18836 18799 +14802 14839 14840 14803 18799 18836 18837 18800 +14803 14840 14841 14842 18800 18837 18838 18839 +14803 14842 14843 14804 18800 18839 18840 18801 +14804 14843 14844 14805 18801 18840 18841 18802 +14805 14844 14845 14806 18802 18841 18842 18803 +14806 14845 14846 14807 18803 18842 18843 18804 +14807 14846 14847 14808 18804 18843 18844 18805 +14808 14847 14848 14809 18805 18844 18845 18806 +14809 14848 14849 14810 18806 18845 18846 18807 +14810 14849 14850 14811 18807 18846 18847 18808 +14811 14850 14851 14812 18808 18847 18848 18809 +14812 14851 14852 14813 18809 18848 18849 18810 +14813 14852 14853 14814 18810 18849 18850 18811 +14814 14853 14854 14815 18811 18850 18851 18812 +14815 14854 14855 14816 18812 18851 18852 18813 +14816 14855 14856 14817 18813 18852 18853 18814 +14817 14856 14857 14818 18814 18853 18854 18815 +14818 14857 14858 14819 18815 18854 18855 18816 +14819 14858 14859 14820 18816 18855 18856 18817 +14820 14859 14860 14821 18817 18856 18857 18818 +14822 14861 14862 14823 18819 18858 18859 18820 +14823 14862 14863 14824 18820 18859 18860 18821 +14824 14863 14864 14825 18821 18860 18861 18822 +14825 14864 14865 14826 18822 18861 18862 18823 +14826 14865 14866 14827 18823 18862 18863 18824 +14827 14866 14867 14828 18824 18863 18864 18825 +14828 14867 14868 14829 18825 18864 18865 18826 +14829 14868 14869 14830 18826 18865 18866 18827 +14830 14869 14870 14831 18827 18866 18867 18828 +14831 14870 14871 14832 18828 18867 18868 18829 +14832 14871 14872 14833 18829 18868 18869 18830 +14833 14872 14873 14834 18830 18869 18870 18831 +14834 14873 14874 14835 18831 18870 18871 18832 +14835 14874 14875 14836 18832 18871 18872 18833 +14836 14875 14876 14837 18833 18872 18873 18834 +14837 14876 14877 14838 18834 18873 18874 18835 +14838 14877 14878 14839 18835 18874 18875 18836 +14839 14878 14879 14840 18836 18875 18876 18837 +14840 14879 14880 14841 18837 18876 18877 18838 +14841 14880 14881 14882 18838 18877 18878 18879 +14841 14882 14883 14842 18838 18879 18880 18839 +14842 14883 14884 14843 18839 18880 18881 18840 +14843 14884 14885 14844 18840 18881 18882 18841 +14844 14885 14886 14845 18841 18882 18883 18842 +14845 14886 14887 14846 18842 18883 18884 18843 +14846 14887 14888 14847 18843 18884 18885 18844 +14847 14888 14889 14848 18844 18885 18886 18845 +14848 14889 14890 14849 18845 18886 18887 18846 +14849 14890 14891 14850 18846 18887 18888 18847 +14850 14891 14892 14851 18847 18888 18889 18848 +14851 14892 14893 14852 18848 18889 18890 18849 +14852 14893 14894 14853 18849 18890 18891 18850 +14853 14894 14895 14854 18850 18891 18892 18851 +14854 14895 14896 14855 18851 18892 18893 18852 +14855 14896 14897 14856 18852 18893 18894 18853 +14856 14897 14898 14857 18853 18894 18895 18854 +14857 14898 14899 14858 18854 18895 18896 18855 +14858 14899 14900 14859 18855 18896 18897 18856 +14859 14900 14901 14860 18856 18897 18898 18857 +14861 14902 14903 14862 18858 18899 18900 18859 +14862 14903 14904 14863 18859 18900 18901 18860 +14863 14904 14905 14864 18860 18901 18902 18861 +14864 14905 14906 14865 18861 18902 18903 18862 +14865 14906 14907 14866 18862 18903 18904 18863 +14866 14907 14908 14867 18863 18904 18905 18864 +14867 14908 14909 14868 18864 18905 18906 18865 +14868 14909 14910 14869 18865 18906 18907 18866 +14869 14910 14911 14870 18866 18907 18908 18867 +14870 14911 14912 14871 18867 18908 18909 18868 +14871 14912 14913 14872 18868 18909 18910 18869 +14872 14913 14914 14873 18869 18910 18911 18870 +14873 14914 14915 14874 18870 18911 18912 18871 +14874 14915 14916 14875 18871 18912 18913 18872 +14875 14916 14917 14876 18872 18913 18914 18873 +14876 14917 14918 14877 18873 18914 18915 18874 +14877 14918 14919 14878 18874 18915 18916 18875 +14878 14919 14920 14879 18875 18916 18917 18876 +14879 14920 14921 14880 18876 18917 18918 18877 +14880 14921 14922 14881 18877 18918 18919 18878 +14881 14922 14923 14924 18878 18919 18920 18921 +14881 14924 14925 14882 18878 18921 18922 18879 +14882 14925 14926 14883 18879 18922 18923 18880 +14883 14926 14927 14884 18880 18923 18924 18881 +14884 14927 14928 14885 18881 18924 18925 18882 +14885 14928 14929 14886 18882 18925 18926 18883 +14886 14929 14930 14887 18883 18926 18927 18884 +14887 14930 14931 14888 18884 18927 18928 18885 +14888 14931 14932 14889 18885 18928 18929 18886 +14889 14932 14933 14890 18886 18929 18930 18887 +14890 14933 14934 14891 18887 18930 18931 18888 +14891 14934 14935 14892 18888 18931 18932 18889 +14892 14935 14936 14893 18889 18932 18933 18890 +14893 14936 14937 14894 18890 18933 18934 18891 +14894 14937 14938 14895 18891 18934 18935 18892 +14895 14938 14939 14896 18892 18935 18936 18893 +14896 14939 14940 14897 18893 18936 18937 18894 +14897 14940 14941 14898 18894 18937 18938 18895 +14898 14941 14942 14899 18895 18938 18939 18896 +14899 14942 14943 14900 18896 18939 18940 18897 +14900 14943 14944 14901 18897 18940 18941 18898 +14902 14945 14946 14903 18899 18942 18943 18900 +14903 14946 14947 14904 18900 18943 18944 18901 +14904 14947 14948 14905 18901 18944 18945 18902 +14905 14948 14949 14906 18902 18945 18946 18903 +14906 14949 14950 14907 18903 18946 18947 18904 +14907 14950 14951 14908 18904 18947 18948 18905 +14908 14951 14952 14909 18905 18948 18949 18906 +14909 14952 14953 14910 18906 18949 18950 18907 +14910 14953 14954 14911 18907 18950 18951 18908 +14911 14954 14955 14912 18908 18951 18952 18909 +14912 14955 14956 14913 18909 18952 18953 18910 +14913 14956 14957 14914 18910 18953 18954 18911 +14914 14957 14958 14915 18911 18954 18955 18912 +14915 14958 14959 14916 18912 18955 18956 18913 +14916 14959 14960 14917 18913 18956 18957 18914 +14917 14960 14961 14918 18914 18957 18958 18915 +14918 14961 14962 14919 18915 18958 18959 18916 +14919 14962 14963 14920 18916 18959 18960 18917 +14920 14963 14964 14921 18917 18960 18961 18918 +14921 14964 14965 14922 18918 18961 18962 18919 +14922 14965 14966 14923 18919 18962 18963 18920 +14923 14966 14967 14968 18920 18963 18964 18965 +14923 14968 14969 14924 18920 18965 18966 18921 +14924 14969 14970 14925 18921 18966 18967 18922 +14925 14970 14971 14926 18922 18967 18968 18923 +14926 14971 14972 14927 18923 18968 18969 18924 +14927 14972 14973 14928 18924 18969 18970 18925 +14928 14973 14974 14929 18925 18970 18971 18926 +14929 14974 14975 14930 18926 18971 18972 18927 +14930 14975 14976 14931 18927 18972 18973 18928 +14931 14976 14977 14932 18928 18973 18974 18929 +14932 14977 14978 14933 18929 18974 18975 18930 +14933 14978 14979 14934 18930 18975 18976 18931 +14934 14979 14980 14935 18931 18976 18977 18932 +14935 14980 14981 14936 18932 18977 18978 18933 +14936 14981 14982 14937 18933 18978 18979 18934 +14937 14982 14983 14938 18934 18979 18980 18935 +14938 14983 14984 14939 18935 18980 18981 18936 +14939 14984 14985 14940 18936 18981 18982 18937 +14940 14985 14986 14941 18937 18982 18983 18938 +14941 14986 14987 14942 18938 18983 18984 18939 +14942 14987 14988 14943 18939 18984 18985 18940 +14943 14988 14989 14944 18940 18985 18986 18941 +14945 14990 14991 14946 18942 18987 18988 18943 +14946 14991 14992 14947 18943 18988 18989 18944 +14947 14992 14993 14948 18944 18989 18990 18945 +14948 14993 14994 14949 18945 18990 18991 18946 +14949 14994 14995 14950 18946 18991 18992 18947 +14950 14995 14996 14951 18947 18992 18993 18948 +14951 14996 14997 14952 18948 18993 18994 18949 +14952 14997 14998 14953 18949 18994 18995 18950 +14953 14998 14999 14954 18950 18995 18996 18951 +14954 14999 15000 14955 18951 18996 18997 18952 +14955 15000 15001 14956 18952 18997 18998 18953 +14956 15001 15002 14957 18953 18998 18999 18954 +14957 15002 15003 14958 18954 18999 19000 18955 +14958 15003 15004 14959 18955 19000 19001 18956 +14959 15004 15005 14960 18956 19001 19002 18957 +14960 15005 15006 14961 18957 19002 19003 18958 +14961 15006 15007 14962 18958 19003 19004 18959 +14962 15007 15008 14963 18959 19004 19005 18960 +14963 15008 15009 14964 18960 19005 19006 18961 +14964 15009 15010 14965 18961 19006 19007 18962 +14965 15010 15011 14966 18962 19007 19008 18963 +14966 15011 15012 14967 18963 19008 19009 18964 +14967 15012 15013 15014 18964 19009 19010 19011 +14967 15014 15015 14968 18964 19011 19012 18965 +14968 15015 15016 14969 18965 19012 19013 18966 +14969 15016 15017 14970 18966 19013 19014 18967 +14970 15017 15018 14971 18967 19014 19015 18968 +14971 15018 15019 14972 18968 19015 19016 18969 +14972 15019 15020 14973 18969 19016 19017 18970 +14973 15020 15021 14974 18970 19017 19018 18971 +14974 15021 15022 14975 18971 19018 19019 18972 +14975 15022 15023 14976 18972 19019 19020 18973 +14976 15023 15024 14977 18973 19020 19021 18974 +14977 15024 15025 14978 18974 19021 19022 18975 +14978 15025 15026 14979 18975 19022 19023 18976 +14979 15026 15027 14980 18976 19023 19024 18977 +14980 15027 15028 14981 18977 19024 19025 18978 +14981 15028 15029 14982 18978 19025 19026 18979 +14982 15029 15030 14983 18979 19026 19027 18980 +14983 15030 15031 14984 18980 19027 19028 18981 +14984 15031 15032 14985 18981 19028 19029 18982 +14985 15032 15033 14986 18982 19029 19030 18983 +14986 15033 15034 14987 18983 19030 19031 18984 +14987 15034 15035 14988 18984 19031 19032 18985 +14988 15035 15036 14989 18985 19032 19033 18986 +14990 15037 15038 14991 18987 19034 19035 18988 +14991 15038 15039 14992 18988 19035 19036 18989 +14992 15039 15040 14993 18989 19036 19037 18990 +14993 15040 15041 14994 18990 19037 19038 18991 +14994 15041 15042 14995 18991 19038 19039 18992 +14995 15042 15043 14996 18992 19039 19040 18993 +14996 15043 15044 14997 18993 19040 19041 18994 +14997 15044 15045 14998 18994 19041 19042 18995 +14998 15045 15046 14999 18995 19042 19043 18996 +14999 15046 15047 15000 18996 19043 19044 18997 +15000 15047 15048 15001 18997 19044 19045 18998 +15001 15048 15049 15002 18998 19045 19046 18999 +15002 15049 15050 15003 18999 19046 19047 19000 +15003 15050 15051 15004 19000 19047 19048 19001 +15004 15051 15052 15005 19001 19048 19049 19002 +15005 15052 15053 15006 19002 19049 19050 19003 +15006 15053 15054 15007 19003 19050 19051 19004 +15007 15054 15055 15008 19004 19051 19052 19005 +15008 15055 15056 15009 19005 19052 19053 19006 +15009 15056 15057 15010 19006 19053 19054 19007 +15010 15057 15058 15011 19007 19054 19055 19008 +15011 15058 15059 15012 19008 19055 19056 19009 +15012 15059 15060 15013 19009 19056 19057 19010 +15013 15060 15061 15062 19010 19057 19058 19059 +15013 15062 15063 15014 19010 19059 19060 19011 +15014 15063 15064 15015 19011 19060 19061 19012 +15015 15064 15065 15016 19012 19061 19062 19013 +15016 15065 15066 15017 19013 19062 19063 19014 +15017 15066 15067 15018 19014 19063 19064 19015 +15018 15067 15068 15019 19015 19064 19065 19016 +15019 15068 15069 15020 19016 19065 19066 19017 +15020 15069 15070 15021 19017 19066 19067 19018 +15021 15070 15071 15022 19018 19067 19068 19019 +15022 15071 15072 15023 19019 19068 19069 19020 +15023 15072 15073 15024 19020 19069 19070 19021 +15024 15073 15074 15025 19021 19070 19071 19022 +15025 15074 15075 15026 19022 19071 19072 19023 +15026 15075 15076 15027 19023 19072 19073 19024 +15027 15076 15077 15028 19024 19073 19074 19025 +15028 15077 15078 15029 19025 19074 19075 19026 +15029 15078 15079 15030 19026 19075 19076 19027 +15030 15079 15080 15031 19027 19076 19077 19028 +15031 15080 15081 15032 19028 19077 19078 19029 +15032 15081 15082 15033 19029 19078 19079 19030 +15033 15082 15083 15034 19030 19079 19080 19031 +15034 15083 15084 15035 19031 19080 19081 19032 +15035 15084 15085 15036 19032 19081 19082 19033 +15037 15086 15087 15038 19034 19083 19084 19035 +15038 15087 15088 15039 19035 19084 19085 19036 +15039 15088 15089 15040 19036 19085 19086 19037 +15040 15089 15090 15041 19037 19086 19087 19038 +15041 15090 15091 15042 19038 19087 19088 19039 +15042 15091 15092 15043 19039 19088 19089 19040 +15043 15092 15093 15044 19040 19089 19090 19041 +15044 15093 15094 15045 19041 19090 19091 19042 +15045 15094 15095 15046 19042 19091 19092 19043 +15046 15095 15096 15047 19043 19092 19093 19044 +15047 15096 15097 15048 19044 19093 19094 19045 +15048 15097 15098 15049 19045 19094 19095 19046 +15049 15098 15099 15050 19046 19095 19096 19047 +15050 15099 15100 15051 19047 19096 19097 19048 +15051 15100 15101 15052 19048 19097 19098 19049 +15052 15101 15102 15053 19049 19098 19099 19050 +15053 15102 15103 15054 19050 19099 19100 19051 +15054 15103 15104 15055 19051 19100 19101 19052 +15055 15104 15105 15056 19052 19101 19102 19053 +15056 15105 15106 15057 19053 19102 19103 19054 +15057 15106 15107 15058 19054 19103 19104 19055 +15058 15107 15108 15059 19055 19104 19105 19056 +15059 15108 15109 15060 19056 19105 19106 19057 +15060 15109 15110 15061 19057 19106 19107 19058 +15061 15110 15111 15112 19058 19107 19108 19109 +15061 15112 15113 15062 19058 19109 19110 19059 +15062 15113 15114 15063 19059 19110 19111 19060 +15063 15114 15115 15064 19060 19111 19112 19061 +15064 15115 15116 15065 19061 19112 19113 19062 +15065 15116 15117 15066 19062 19113 19114 19063 +15066 15117 15118 15067 19063 19114 19115 19064 +15067 15118 15119 15068 19064 19115 19116 19065 +15068 15119 15120 15069 19065 19116 19117 19066 +15069 15120 15121 15070 19066 19117 19118 19067 +15070 15121 15122 15071 19067 19118 19119 19068 +15071 15122 15123 15072 19068 19119 19120 19069 +15072 15123 15124 15073 19069 19120 19121 19070 +15073 15124 15125 15074 19070 19121 19122 19071 +15074 15125 15126 15075 19071 19122 19123 19072 +15075 15126 15127 15076 19072 19123 19124 19073 +15076 15127 15128 15077 19073 19124 19125 19074 +15077 15128 15129 15078 19074 19125 19126 19075 +15078 15129 15130 15079 19075 19126 19127 19076 +15079 15130 15131 15080 19076 19127 19128 19077 +15080 15131 15132 15081 19077 19128 19129 19078 +15081 15132 15133 15082 19078 19129 19130 19079 +15082 15133 15134 15083 19079 19130 19131 19080 +15083 15134 15135 15084 19080 19131 19132 19081 +15084 15135 15136 15085 19081 19132 19133 19082 +15086 15137 15138 15087 19083 19134 19135 19084 +15087 15138 15139 15088 19084 19135 19136 19085 +15088 15139 15140 15089 19085 19136 19137 19086 +15089 15140 15141 15090 19086 19137 19138 19087 +15090 15141 15142 15091 19087 19138 19139 19088 +15091 15142 15143 15092 19088 19139 19140 19089 +15092 15143 15144 15093 19089 19140 19141 19090 +15093 15144 15145 15094 19090 19141 19142 19091 +15094 15145 15146 15095 19091 19142 19143 19092 +15095 15146 15147 15096 19092 19143 19144 19093 +15096 15147 15148 15097 19093 19144 19145 19094 +15097 15148 15149 15098 19094 19145 19146 19095 +15098 15149 15150 15099 19095 19146 19147 19096 +15099 15150 15151 15100 19096 19147 19148 19097 +15100 15151 15152 15101 19097 19148 19149 19098 +15101 15152 15153 15102 19098 19149 19150 19099 +15102 15153 15154 15103 19099 19150 19151 19100 +15103 15154 15155 15104 19100 19151 19152 19101 +15104 15155 15156 15105 19101 19152 19153 19102 +15105 15156 15157 15106 19102 19153 19154 19103 +15106 15157 15158 15107 19103 19154 19155 19104 +15107 15158 15159 15108 19104 19155 19156 19105 +15108 15159 15160 15109 19105 19156 19157 19106 +15109 15160 15161 15110 19106 19157 19158 19107 +15110 15161 15162 15111 19107 19158 19159 19108 +15111 15162 15163 15164 19108 19159 19160 19161 +15111 15164 15165 15112 19108 19161 19162 19109 +15112 15165 15166 15113 19109 19162 19163 19110 +15113 15166 15167 15114 19110 19163 19164 19111 +15114 15167 15168 15115 19111 19164 19165 19112 +15115 15168 15169 15116 19112 19165 19166 19113 +15116 15169 15170 15117 19113 19166 19167 19114 +15117 15170 15171 15118 19114 19167 19168 19115 +15118 15171 15172 15119 19115 19168 19169 19116 +15119 15172 15173 15120 19116 19169 19170 19117 +15120 15173 15174 15121 19117 19170 19171 19118 +15121 15174 15175 15122 19118 19171 19172 19119 +15122 15175 15176 15123 19119 19172 19173 19120 +15123 15176 15177 15124 19120 19173 19174 19121 +15124 15177 15178 15125 19121 19174 19175 19122 +15125 15178 15179 15126 19122 19175 19176 19123 +15126 15179 15180 15127 19123 19176 19177 19124 +15127 15180 15181 15128 19124 19177 19178 19125 +15128 15181 15182 15129 19125 19178 19179 19126 +15129 15182 15183 15130 19126 19179 19180 19127 +15130 15183 15184 15131 19127 19180 19181 19128 +15131 15184 15185 15132 19128 19181 19182 19129 +15132 15185 15186 15133 19129 19182 19183 19130 +15133 15186 15187 15134 19130 19183 19184 19131 +15134 15187 15188 15135 19131 19184 19185 19132 +15135 15188 15189 15136 19132 19185 19186 19133 +15137 15190 15191 15138 19134 19187 19188 19135 +15138 15191 15192 15139 19135 19188 19189 19136 +15139 15192 15193 15140 19136 19189 19190 19137 +15140 15193 15194 15141 19137 19190 19191 19138 +15141 15194 15195 15142 19138 19191 19192 19139 +15142 15195 15196 15143 19139 19192 19193 19140 +15143 15196 15197 15144 19140 19193 19194 19141 +15144 15197 15198 15145 19141 19194 19195 19142 +15145 15198 15199 15146 19142 19195 19196 19143 +15146 15199 15200 15147 19143 19196 19197 19144 +15147 15200 15201 15148 19144 19197 19198 19145 +15148 15201 15202 15149 19145 19198 19199 19146 +15149 15202 15203 15150 19146 19199 19200 19147 +15150 15203 15204 15151 19147 19200 19201 19148 +15151 15204 15205 15152 19148 19201 19202 19149 +15152 15205 15206 15153 19149 19202 19203 19150 +15153 15206 15207 15154 19150 19203 19204 19151 +15154 15207 15208 15155 19151 19204 19205 19152 +15155 15208 15209 15156 19152 19205 19206 19153 +15156 15209 15210 15157 19153 19206 19207 19154 +15157 15210 15211 15158 19154 19207 19208 19155 +15158 15211 15212 15159 19155 19208 19209 19156 +15159 15212 15213 15160 19156 19209 19210 19157 +15160 15213 15214 15161 19157 19210 19211 19158 +15161 15214 15215 15162 19158 19211 19212 19159 +15162 15215 15216 15163 19159 19212 19213 19160 +15163 15216 15217 15218 19160 19213 19214 19215 +15163 15218 15219 15164 19160 19215 19216 19161 +15164 15219 15220 15165 19161 19216 19217 19162 +15165 15220 15221 15166 19162 19217 19218 19163 +15166 15221 15222 15167 19163 19218 19219 19164 +15167 15222 15223 15168 19164 19219 19220 19165 +15168 15223 15224 15169 19165 19220 19221 19166 +15169 15224 15225 15170 19166 19221 19222 19167 +15170 15225 15226 15171 19167 19222 19223 19168 +15171 15226 15227 15172 19168 19223 19224 19169 +15172 15227 15228 15173 19169 19224 19225 19170 +15173 15228 15229 15174 19170 19225 19226 19171 +15174 15229 15230 15175 19171 19226 19227 19172 +15175 15230 15231 15176 19172 19227 19228 19173 +15176 15231 15232 15177 19173 19228 19229 19174 +15177 15232 15233 15178 19174 19229 19230 19175 +15178 15233 15234 15179 19175 19230 19231 19176 +15179 15234 15235 15180 19176 19231 19232 19177 +15180 15235 15236 15181 19177 19232 19233 19178 +15181 15236 15237 15182 19178 19233 19234 19179 +15182 15237 15238 15183 19179 19234 19235 19180 +15183 15238 15239 15184 19180 19235 19236 19181 +15184 15239 15240 15185 19181 19236 19237 19182 +15185 15240 15241 15186 19182 19237 19238 19183 +15186 15241 15242 15187 19183 19238 19239 19184 +15187 15242 15243 15188 19184 19239 19240 19185 +15188 15243 15244 15189 19185 19240 19241 19186 +15190 15245 15246 15191 19187 19242 19243 19188 +15191 15246 15247 15192 19188 19243 19244 19189 +15192 15247 15248 15193 19189 19244 19245 19190 +15193 15248 15249 15194 19190 19245 19246 19191 +15194 15249 15250 15195 19191 19246 19247 19192 +15195 15250 15251 15196 19192 19247 19248 19193 +15196 15251 15252 15197 19193 19248 19249 19194 +15197 15252 15253 15198 19194 19249 19250 19195 +15198 15253 15254 15199 19195 19250 19251 19196 +15199 15254 15255 15200 19196 19251 19252 19197 +15200 15255 15256 15201 19197 19252 19253 19198 +15201 15256 15257 15202 19198 19253 19254 19199 +15202 15257 15258 15203 19199 19254 19255 19200 +15203 15258 15259 15204 19200 19255 19256 19201 +15204 15259 15260 15205 19201 19256 19257 19202 +15205 15260 15261 15206 19202 19257 19258 19203 +15206 15261 15262 15207 19203 19258 19259 19204 +15207 15262 15263 15208 19204 19259 19260 19205 +15208 15263 15264 15209 19205 19260 19261 19206 +15209 15264 15265 15210 19206 19261 19262 19207 +15210 15265 15266 15211 19207 19262 19263 19208 +15211 15266 15267 15212 19208 19263 19264 19209 +15212 15267 15268 15213 19209 19264 19265 19210 +15213 15268 15269 15214 19210 19265 19266 19211 +15214 15269 15270 15215 19211 19266 19267 19212 +15215 15270 15271 15216 19212 19267 19268 19213 +15216 15271 15272 15217 19213 19268 19269 19214 +15217 15272 15273 15274 19214 19269 19270 19271 +15217 15274 15275 15218 19214 19271 19272 19215 +15218 15275 15276 15219 19215 19272 19273 19216 +15219 15276 15277 15220 19216 19273 19274 19217 +15220 15277 15278 15221 19217 19274 19275 19218 +15221 15278 15279 15222 19218 19275 19276 19219 +15222 15279 15280 15223 19219 19276 19277 19220 +15223 15280 15281 15224 19220 19277 19278 19221 +15224 15281 15282 15225 19221 19278 19279 19222 +15225 15282 15283 15226 19222 19279 19280 19223 +15226 15283 15284 15227 19223 19280 19281 19224 +15227 15284 15285 15228 19224 19281 19282 19225 +15228 15285 15286 15229 19225 19282 19283 19226 +15229 15286 15287 15230 19226 19283 19284 19227 +15230 15287 15288 15231 19227 19284 19285 19228 +15231 15288 15289 15232 19228 19285 19286 19229 +15232 15289 15290 15233 19229 19286 19287 19230 +15233 15290 15291 15234 19230 19287 19288 19231 +15234 15291 15292 15235 19231 19288 19289 19232 +15235 15292 15293 15236 19232 19289 19290 19233 +15236 15293 15294 15237 19233 19290 19291 19234 +15237 15294 15295 15238 19234 19291 19292 19235 +15238 15295 15296 15239 19235 19292 19293 19236 +15239 15296 15297 15240 19236 19293 19294 19237 +15240 15297 15298 15241 19237 19294 19295 19238 +15241 15298 15299 15242 19238 19295 19296 19239 +15242 15299 15300 15243 19239 19296 19297 19240 +15243 15300 15301 15244 19240 19297 19298 19241 +15245 15302 15303 15246 19242 19299 19300 19243 +15246 15303 15304 15247 19243 19300 19301 19244 +15247 15304 15305 15248 19244 19301 19302 19245 +15248 15305 15306 15249 19245 19302 19303 19246 +15249 15306 15307 15250 19246 19303 19304 19247 +15250 15307 15308 15251 19247 19304 19305 19248 +15251 15308 15309 15252 19248 19305 19306 19249 +15252 15309 15310 15253 19249 19306 19307 19250 +15253 15310 15311 15254 19250 19307 19308 19251 +15254 15311 15312 15255 19251 19308 19309 19252 +15255 15312 15313 15256 19252 19309 19310 19253 +15256 15313 15314 15257 19253 19310 19311 19254 +15257 15314 15315 15258 19254 19311 19312 19255 +15258 15315 15316 15259 19255 19312 19313 19256 +15259 15316 15317 15260 19256 19313 19314 19257 +15260 15317 15318 15261 19257 19314 19315 19258 +15261 15318 15319 15262 19258 19315 19316 19259 +15262 15319 15320 15263 19259 19316 19317 19260 +15263 15320 15321 15264 19260 19317 19318 19261 +15264 15321 15322 15265 19261 19318 19319 19262 +15265 15322 15323 15266 19262 19319 19320 19263 +15266 15323 15324 15267 19263 19320 19321 19264 +15267 15324 15325 15268 19264 19321 19322 19265 +15268 15325 15326 15269 19265 19322 19323 19266 +15269 15326 15327 15270 19266 19323 19324 19267 +15270 15327 15328 15271 19267 19324 19325 19268 +15271 15328 15329 15272 19268 19325 19326 19269 +15272 15329 15330 15273 19269 19326 19327 19270 +15273 15330 15331 15332 19270 19327 19328 19329 +15273 15332 15333 15274 19270 19329 19330 19271 +15274 15333 15334 15275 19271 19330 19331 19272 +15275 15334 15335 15276 19272 19331 19332 19273 +15276 15335 15336 15277 19273 19332 19333 19274 +15277 15336 15337 15278 19274 19333 19334 19275 +15278 15337 15338 15279 19275 19334 19335 19276 +15279 15338 15339 15280 19276 19335 19336 19277 +15280 15339 15340 15281 19277 19336 19337 19278 +15281 15340 15341 15282 19278 19337 19338 19279 +15282 15341 15342 15283 19279 19338 19339 19280 +15283 15342 15343 15284 19280 19339 19340 19281 +15284 15343 15344 15285 19281 19340 19341 19282 +15285 15344 15345 15286 19282 19341 19342 19283 +15286 15345 15346 15287 19283 19342 19343 19284 +15287 15346 15347 15288 19284 19343 19344 19285 +15288 15347 15348 15289 19285 19344 19345 19286 +15289 15348 15349 15290 19286 19345 19346 19287 +15290 15349 15350 15291 19287 19346 19347 19288 +15291 15350 15351 15292 19288 19347 19348 19289 +15292 15351 15352 15293 19289 19348 19349 19290 +15293 15352 15353 15294 19290 19349 19350 19291 +15294 15353 15354 15295 19291 19350 19351 19292 +15295 15354 15355 15296 19292 19351 19352 19293 +15296 15355 15356 15297 19293 19352 19353 19294 +15297 15356 15357 15298 19294 19353 19354 19295 +15298 15357 15358 15299 19295 19354 19355 19296 +15299 15358 15359 15300 19296 19355 19356 19297 +15300 15359 15360 15301 19297 19356 19357 19298 +15302 15361 15362 15303 19299 19358 19359 19300 +15303 15362 15363 15304 19300 19359 19360 19301 +15304 15363 15364 15305 19301 19360 19361 19302 +15305 15364 15365 15306 19302 19361 19362 19303 +15306 15365 15366 15307 19303 19362 19363 19304 +15307 15366 15367 15308 19304 19363 19364 19305 +15308 15367 15368 15309 19305 19364 19365 19306 +15309 15368 15369 15310 19306 19365 19366 19307 +15310 15369 15370 15311 19307 19366 19367 19308 +15311 15370 15371 15312 19308 19367 19368 19309 +15312 15371 15372 15313 19309 19368 19369 19310 +15313 15372 15373 15314 19310 19369 19370 19311 +15314 15373 15374 15315 19311 19370 19371 19312 +15315 15374 15375 15316 19312 19371 19372 19313 +15316 15375 15376 15317 19313 19372 19373 19314 +15317 15376 15377 15318 19314 19373 19374 19315 +15318 15377 15378 15319 19315 19374 19375 19316 +15319 15378 15379 15320 19316 19375 19376 19317 +15320 15379 15380 15321 19317 19376 19377 19318 +15321 15380 15381 15322 19318 19377 19378 19319 +15322 15381 15382 15323 19319 19378 19379 19320 +15323 15382 15383 15324 19320 19379 19380 19321 +15324 15383 15384 15325 19321 19380 19381 19322 +15325 15384 15385 15326 19322 19381 19382 19323 +15326 15385 15386 15327 19323 19382 19383 19324 +15327 15386 15387 15328 19324 19383 19384 19325 +15328 15387 15388 15329 19325 19384 19385 19326 +15329 15388 15389 15330 19326 19385 19386 19327 +15330 15389 15390 15331 19327 19386 19387 19328 +15331 15390 15391 15392 19328 19387 19388 19389 +15331 15392 15393 15332 19328 19389 19390 19329 +15332 15393 15394 15333 19329 19390 19391 19330 +15333 15394 15395 15334 19330 19391 19392 19331 +15334 15395 15396 15335 19331 19392 19393 19332 +15335 15396 15397 15336 19332 19393 19394 19333 +15336 15397 15398 15337 19333 19394 19395 19334 +15337 15398 15399 15338 19334 19395 19396 19335 +15338 15399 15400 15339 19335 19396 19397 19336 +15339 15400 15401 15340 19336 19397 19398 19337 +15340 15401 15402 15341 19337 19398 19399 19338 +15341 15402 15403 15342 19338 19399 19400 19339 +15342 15403 15404 15343 19339 19400 19401 19340 +15343 15404 15405 15344 19340 19401 19402 19341 +15344 15405 15406 15345 19341 19402 19403 19342 +15345 15406 15407 15346 19342 19403 19404 19343 +15346 15407 15408 15347 19343 19404 19405 19344 +15347 15408 15409 15348 19344 19405 19406 19345 +15348 15409 15410 15349 19345 19406 19407 19346 +15349 15410 15411 15350 19346 19407 19408 19347 +15350 15411 15412 15351 19347 19408 19409 19348 +15351 15412 15413 15352 19348 19409 19410 19349 +15352 15413 15414 15353 19349 19410 19411 19350 +15353 15414 15415 15354 19350 19411 19412 19351 +15354 15415 15416 15355 19351 19412 19413 19352 +15355 15416 15417 15356 19352 19413 19414 19353 +15356 15417 15418 15357 19353 19414 19415 19354 +15357 15418 15419 15358 19354 19415 19416 19355 +15358 15419 15420 15359 19355 19416 19417 19356 +15359 15420 15421 15360 19356 19417 19418 19357 +15361 15422 15423 15362 19358 19419 19420 19359 +15362 15423 15424 15363 19359 19420 19421 19360 +15363 15424 15425 15364 19360 19421 19422 19361 +15364 15425 15426 15365 19361 19422 19423 19362 +15365 15426 15427 15366 19362 19423 19424 19363 +15366 15427 15428 15367 19363 19424 19425 19364 +15367 15428 15429 15368 19364 19425 19426 19365 +15368 15429 15430 15369 19365 19426 19427 19366 +15369 15430 15431 15370 19366 19427 19428 19367 +15370 15431 15432 15371 19367 19428 19429 19368 +15371 15432 15433 15372 19368 19429 19430 19369 +15372 15433 15434 15373 19369 19430 19431 19370 +15373 15434 15435 15374 19370 19431 19432 19371 +15374 15435 15436 15375 19371 19432 19433 19372 +15375 15436 15437 15376 19372 19433 19434 19373 +15376 15437 15438 15377 19373 19434 19435 19374 +15377 15438 15439 15378 19374 19435 19436 19375 +15378 15439 15440 15379 19375 19436 19437 19376 +15379 15440 15441 15380 19376 19437 19438 19377 +15380 15441 15442 15381 19377 19438 19439 19378 +15381 15442 15443 15382 19378 19439 19440 19379 +15382 15443 15444 15383 19379 19440 19441 19380 +15383 15444 15445 15384 19380 19441 19442 19381 +15384 15445 15446 15385 19381 19442 19443 19382 +15385 15446 15447 15386 19382 19443 19444 19383 +15386 15447 15448 15387 19383 19444 19445 19384 +15387 15448 15449 15388 19384 19445 19446 19385 +15388 15449 15450 15389 19385 19446 19447 19386 +15389 15450 15451 15390 19386 19447 19448 19387 +15390 15451 15452 15391 19387 19448 19449 19388 +15391 15452 15453 15454 19388 19449 19450 19451 +15391 15454 15455 15392 19388 19451 19452 19389 +15392 15455 15456 15393 19389 19452 19453 19390 +15393 15456 15457 15394 19390 19453 19454 19391 +15394 15457 15458 15395 19391 19454 19455 19392 +15395 15458 15459 15396 19392 19455 19456 19393 +15396 15459 15460 15397 19393 19456 19457 19394 +15397 15460 15461 15398 19394 19457 19458 19395 +15398 15461 15462 15399 19395 19458 19459 19396 +15399 15462 15463 15400 19396 19459 19460 19397 +15400 15463 15464 15401 19397 19460 19461 19398 +15401 15464 15465 15402 19398 19461 19462 19399 +15402 15465 15466 15403 19399 19462 19463 19400 +15403 15466 15467 15404 19400 19463 19464 19401 +15404 15467 15468 15405 19401 19464 19465 19402 +15405 15468 15469 15406 19402 19465 19466 19403 +15406 15469 15470 15407 19403 19466 19467 19404 +15407 15470 15471 15408 19404 19467 19468 19405 +15408 15471 15472 15409 19405 19468 19469 19406 +15409 15472 15473 15410 19406 19469 19470 19407 +15410 15473 15474 15411 19407 19470 19471 19408 +15411 15474 15475 15412 19408 19471 19472 19409 +15412 15475 15476 15413 19409 19472 19473 19410 +15413 15476 15477 15414 19410 19473 19474 19411 +15414 15477 15478 15415 19411 19474 19475 19412 +15415 15478 15479 15416 19412 19475 19476 19413 +15416 15479 15480 15417 19413 19476 19477 19414 +15417 15480 15481 15418 19414 19477 19478 19415 +15418 15481 15482 15419 19415 19478 19479 19416 +15419 15482 15483 15420 19416 19479 19480 19417 +15420 15483 15484 15421 19417 19480 19481 19418 +15422 15485 15486 15423 19419 19482 19483 19420 +15423 15486 15487 15424 19420 19483 19484 19421 +15424 15487 15488 15425 19421 19484 19485 19422 +15425 15488 15489 15426 19422 19485 19486 19423 +15426 15489 15490 15427 19423 19486 19487 19424 +15427 15490 15491 15428 19424 19487 19488 19425 +15428 15491 15492 15429 19425 19488 19489 19426 +15429 15492 15493 15430 19426 19489 19490 19427 +15430 15493 15494 15431 19427 19490 19491 19428 +15431 15494 15495 15432 19428 19491 19492 19429 +15432 15495 15496 15433 19429 19492 19493 19430 +15433 15496 15497 15434 19430 19493 19494 19431 +15434 15497 15498 15435 19431 19494 19495 19432 +15435 15498 15499 15436 19432 19495 19496 19433 +15436 15499 15500 15437 19433 19496 19497 19434 +15437 15500 15501 15438 19434 19497 19498 19435 +15438 15501 15502 15439 19435 19498 19499 19436 +15439 15502 15503 15440 19436 19499 19500 19437 +15440 15503 15504 15441 19437 19500 19501 19438 +15441 15504 15505 15442 19438 19501 19502 19439 +15442 15505 15506 15443 19439 19502 19503 19440 +15443 15506 15507 15444 19440 19503 19504 19441 +15444 15507 15508 15445 19441 19504 19505 19442 +15445 15508 15509 15446 19442 19505 19506 19443 +15446 15509 15510 15447 19443 19506 19507 19444 +15447 15510 15511 15448 19444 19507 19508 19445 +15448 15511 15512 15449 19445 19508 19509 19446 +15449 15512 15513 15450 19446 19509 19510 19447 +15450 15513 15514 15451 19447 19510 19511 19448 +15451 15514 15515 15452 19448 19511 19512 19449 +15452 15515 15516 15453 19449 19512 19513 19450 +15453 15516 15517 15518 19450 19513 19514 19515 +15453 15518 15519 15454 19450 19515 19516 19451 +15454 15519 15520 15455 19451 19516 19517 19452 +15455 15520 15521 15456 19452 19517 19518 19453 +15456 15521 15522 15457 19453 19518 19519 19454 +15457 15522 15523 15458 19454 19519 19520 19455 +15458 15523 15524 15459 19455 19520 19521 19456 +15459 15524 15525 15460 19456 19521 19522 19457 +15460 15525 15526 15461 19457 19522 19523 19458 +15461 15526 15527 15462 19458 19523 19524 19459 +15462 15527 15528 15463 19459 19524 19525 19460 +15463 15528 15529 15464 19460 19525 19526 19461 +15464 15529 15530 15465 19461 19526 19527 19462 +15465 15530 15531 15466 19462 19527 19528 19463 +15466 15531 15532 15467 19463 19528 19529 19464 +15467 15532 15533 15468 19464 19529 19530 19465 +15468 15533 15534 15469 19465 19530 19531 19466 +15469 15534 15535 15470 19466 19531 19532 19467 +15470 15535 15536 15471 19467 19532 19533 19468 +15471 15536 15537 15472 19468 19533 19534 19469 +15472 15537 15538 15473 19469 19534 19535 19470 +15473 15538 15539 15474 19470 19535 19536 19471 +15474 15539 15540 15475 19471 19536 19537 19472 +15475 15540 15541 15476 19472 19537 19538 19473 +15476 15541 15542 15477 19473 19538 19539 19474 +15477 15542 15543 15478 19474 19539 19540 19475 +15478 15543 15544 15479 19475 19540 19541 19476 +15479 15544 15545 15480 19476 19541 19542 19477 +15480 15545 15546 15481 19477 19542 19543 19478 +15481 15546 15547 15482 19478 19543 19544 19479 +15482 15547 15548 15483 19479 19544 19545 19480 +15483 15548 15549 15484 19480 19545 19546 19481 +15485 15550 15551 15486 19482 19547 19548 19483 +15486 15551 15552 15487 19483 19548 19549 19484 +15487 15552 15553 15488 19484 19549 19550 19485 +15488 15553 15554 15489 19485 19550 19551 19486 +15489 15554 15555 15490 19486 19551 19552 19487 +15490 15555 15556 15491 19487 19552 19553 19488 +15491 15556 15557 15492 19488 19553 19554 19489 +15492 15557 15558 15493 19489 19554 19555 19490 +15493 15558 15559 15494 19490 19555 19556 19491 +15494 15559 15560 15495 19491 19556 19557 19492 +15495 15560 15561 15496 19492 19557 19558 19493 +15496 15561 15562 15497 19493 19558 19559 19494 +15497 15562 15563 15498 19494 19559 19560 19495 +15498 15563 15564 15499 19495 19560 19561 19496 +15499 15564 15565 15500 19496 19561 19562 19497 +15500 15565 15566 15501 19497 19562 19563 19498 +15501 15566 15567 15502 19498 19563 19564 19499 +15502 15567 15568 15503 19499 19564 19565 19500 +15503 15568 15569 15504 19500 19565 19566 19501 +15504 15569 15570 15505 19501 19566 19567 19502 +15505 15570 15571 15506 19502 19567 19568 19503 +15506 15571 15572 15507 19503 19568 19569 19504 +15507 15572 15573 15508 19504 19569 19570 19505 +15508 15573 15574 15509 19505 19570 19571 19506 +15509 15574 15575 15510 19506 19571 19572 19507 +15510 15575 15576 15511 19507 19572 19573 19508 +15511 15576 15577 15512 19508 19573 19574 19509 +15512 15577 15578 15513 19509 19574 19575 19510 +15513 15578 15579 15514 19510 19575 19576 19511 +15514 15579 15580 15515 19511 19576 19577 19512 +15515 15580 15581 15516 19512 19577 19578 19513 +15516 15581 15582 15517 19513 19578 19579 19514 +15517 15582 15583 15584 19514 19579 19580 19581 +15517 15584 15585 15518 19514 19581 19582 19515 +15518 15585 15586 15519 19515 19582 19583 19516 +15519 15586 15587 15520 19516 19583 19584 19517 +15520 15587 15588 15521 19517 19584 19585 19518 +15521 15588 15589 15522 19518 19585 19586 19519 +15522 15589 15590 15523 19519 19586 19587 19520 +15523 15590 15591 15524 19520 19587 19588 19521 +15524 15591 15592 15525 19521 19588 19589 19522 +15525 15592 15593 15526 19522 19589 19590 19523 +15526 15593 15594 15527 19523 19590 19591 19524 +15527 15594 15595 15528 19524 19591 19592 19525 +15528 15595 15596 15529 19525 19592 19593 19526 +15529 15596 15597 15530 19526 19593 19594 19527 +15530 15597 15598 15531 19527 19594 19595 19528 +15531 15598 15599 15532 19528 19595 19596 19529 +15532 15599 15600 15533 19529 19596 19597 19530 +15533 15600 15601 15534 19530 19597 19598 19531 +15534 15601 15602 15535 19531 19598 19599 19532 +15535 15602 15603 15536 19532 19599 19600 19533 +15536 15603 15604 15537 19533 19600 19601 19534 +15537 15604 15605 15538 19534 19601 19602 19535 +15538 15605 15606 15539 19535 19602 19603 19536 +15539 15606 15607 15540 19536 19603 19604 19537 +15540 15607 15608 15541 19537 19604 19605 19538 +15541 15608 15609 15542 19538 19605 19606 19539 +15542 15609 15610 15543 19539 19606 19607 19540 +15543 15610 15611 15544 19540 19607 19608 19541 +15544 15611 15612 15545 19541 19608 19609 19542 +15545 15612 15613 15546 19542 19609 19610 19543 +15546 15613 15614 15547 19543 19610 19611 19544 +15547 15614 15615 15548 19544 19611 19612 19545 +15548 15615 15616 15549 19545 19612 19613 19546 +15550 15617 15618 15551 19547 19614 19615 19548 +15551 15618 15619 15552 19548 19615 19616 19549 +15552 15619 15620 15553 19549 19616 19617 19550 +15553 15620 15621 15554 19550 19617 19618 19551 +15554 15621 15622 15555 19551 19618 19619 19552 +15555 15622 15623 15556 19552 19619 19620 19553 +15556 15623 15624 15557 19553 19620 19621 19554 +15557 15624 15625 15558 19554 19621 19622 19555 +15558 15625 15626 15559 19555 19622 19623 19556 +15559 15626 15627 15560 19556 19623 19624 19557 +15560 15627 15628 15561 19557 19624 19625 19558 +15561 15628 15629 15562 19558 19625 19626 19559 +15562 15629 15630 15563 19559 19626 19627 19560 +15563 15630 15631 15564 19560 19627 19628 19561 +15564 15631 15632 15565 19561 19628 19629 19562 +15565 15632 15633 15566 19562 19629 19630 19563 +15566 15633 15634 15567 19563 19630 19631 19564 +15567 15634 15635 15568 19564 19631 19632 19565 +15568 15635 15636 15569 19565 19632 19633 19566 +15569 15636 15637 15570 19566 19633 19634 19567 +15570 15637 15638 15571 19567 19634 19635 19568 +15571 15638 15639 15572 19568 19635 19636 19569 +15572 15639 15640 15573 19569 19636 19637 19570 +15573 15640 15641 15574 19570 19637 19638 19571 +15574 15641 15642 15575 19571 19638 19639 19572 +15575 15642 15643 15576 19572 19639 19640 19573 +15576 15643 15644 15577 19573 19640 19641 19574 +15577 15644 15645 15578 19574 19641 19642 19575 +15578 15645 15646 15579 19575 19642 19643 19576 +15579 15646 15647 15580 19576 19643 19644 19577 +15580 15647 15648 15581 19577 19644 19645 19578 +15581 15648 15649 15582 19578 19645 19646 19579 +15582 15649 15650 15583 19579 19646 19647 19580 +15583 15650 15651 15652 19580 19647 19648 19649 +15583 15652 15653 15584 19580 19649 19650 19581 +15584 15653 15654 15585 19581 19650 19651 19582 +15585 15654 15655 15586 19582 19651 19652 19583 +15586 15655 15656 15587 19583 19652 19653 19584 +15587 15656 15657 15588 19584 19653 19654 19585 +15588 15657 15658 15589 19585 19654 19655 19586 +15589 15658 15659 15590 19586 19655 19656 19587 +15590 15659 15660 15591 19587 19656 19657 19588 +15591 15660 15661 15592 19588 19657 19658 19589 +15592 15661 15662 15593 19589 19658 19659 19590 +15593 15662 15663 15594 19590 19659 19660 19591 +15594 15663 15664 15595 19591 19660 19661 19592 +15595 15664 15665 15596 19592 19661 19662 19593 +15596 15665 15666 15597 19593 19662 19663 19594 +15597 15666 15667 15598 19594 19663 19664 19595 +15598 15667 15668 15599 19595 19664 19665 19596 +15599 15668 15669 15600 19596 19665 19666 19597 +15600 15669 15670 15601 19597 19666 19667 19598 +15601 15670 15671 15602 19598 19667 19668 19599 +15602 15671 15672 15603 19599 19668 19669 19600 +15603 15672 15673 15604 19600 19669 19670 19601 +15604 15673 15674 15605 19601 19670 19671 19602 +15605 15674 15675 15606 19602 19671 19672 19603 +15606 15675 15676 15607 19603 19672 19673 19604 +15607 15676 15677 15608 19604 19673 19674 19605 +15608 15677 15678 15609 19605 19674 19675 19606 +15609 15678 15679 15610 19606 19675 19676 19607 +15610 15679 15680 15611 19607 19676 19677 19608 +15611 15680 15681 15612 19608 19677 19678 19609 +15612 15681 15682 15613 19609 19678 19679 19610 +15613 15682 15683 15614 19610 19679 19680 19611 +15614 15683 15684 15615 19611 19680 19681 19612 +15615 15684 15685 15616 19612 19681 19682 19613 +15617 15686 15687 15618 19614 19683 19684 19615 +15618 15687 15688 15619 19615 19684 19685 19616 +15619 15688 15689 15620 19616 19685 19686 19617 +15620 15689 15690 15621 19617 19686 19687 19618 +15621 15690 15691 15622 19618 19687 19688 19619 +15622 15691 15692 15623 19619 19688 19689 19620 +15623 15692 15693 15624 19620 19689 19690 19621 +15624 15693 15694 15625 19621 19690 19691 19622 +15625 15694 15695 15626 19622 19691 19692 19623 +15626 15695 15696 15627 19623 19692 19693 19624 +15627 15696 15697 15628 19624 19693 19694 19625 +15628 15697 15698 15629 19625 19694 19695 19626 +15629 15698 15699 15630 19626 19695 19696 19627 +15630 15699 15700 15631 19627 19696 19697 19628 +15631 15700 15701 15632 19628 19697 19698 19629 +15632 15701 15702 15633 19629 19698 19699 19630 +15633 15702 15703 15634 19630 19699 19700 19631 +15634 15703 15704 15635 19631 19700 19701 19632 +15635 15704 15705 15636 19632 19701 19702 19633 +15636 15705 15706 15637 19633 19702 19703 19634 +15637 15706 15707 15638 19634 19703 19704 19635 +15638 15707 15708 15639 19635 19704 19705 19636 +15639 15708 15709 15640 19636 19705 19706 19637 +15640 15709 15710 15641 19637 19706 19707 19638 +15641 15710 15711 15642 19638 19707 19708 19639 +15642 15711 15712 15643 19639 19708 19709 19640 +15643 15712 15713 15644 19640 19709 19710 19641 +15644 15713 15714 15645 19641 19710 19711 19642 +15645 15714 15715 15646 19642 19711 19712 19643 +15646 15715 15716 15647 19643 19712 19713 19644 +15647 15716 15717 15648 19644 19713 19714 19645 +15648 15717 15718 15649 19645 19714 19715 19646 +15649 15718 15719 15650 19646 19715 19716 19647 +15650 15719 15720 15651 19647 19716 19717 19648 +15651 15720 15721 15722 19648 19717 19718 19719 +15651 15722 15723 15652 19648 19719 19720 19649 +15652 15723 15724 15653 19649 19720 19721 19650 +15653 15724 15725 15654 19650 19721 19722 19651 +15654 15725 15726 15655 19651 19722 19723 19652 +15655 15726 15727 15656 19652 19723 19724 19653 +15656 15727 15728 15657 19653 19724 19725 19654 +15657 15728 15729 15658 19654 19725 19726 19655 +15658 15729 15730 15659 19655 19726 19727 19656 +15659 15730 15731 15660 19656 19727 19728 19657 +15660 15731 15732 15661 19657 19728 19729 19658 +15661 15732 15733 15662 19658 19729 19730 19659 +15662 15733 15734 15663 19659 19730 19731 19660 +15663 15734 15735 15664 19660 19731 19732 19661 +15664 15735 15736 15665 19661 19732 19733 19662 +15665 15736 15737 15666 19662 19733 19734 19663 +15666 15737 15738 15667 19663 19734 19735 19664 +15667 15738 15739 15668 19664 19735 19736 19665 +15668 15739 15740 15669 19665 19736 19737 19666 +15669 15740 15741 15670 19666 19737 19738 19667 +15670 15741 15742 15671 19667 19738 19739 19668 +15671 15742 15743 15672 19668 19739 19740 19669 +15672 15743 15744 15673 19669 19740 19741 19670 +15673 15744 15745 15674 19670 19741 19742 19671 +15674 15745 15746 15675 19671 19742 19743 19672 +15675 15746 15747 15676 19672 19743 19744 19673 +15676 15747 15748 15677 19673 19744 19745 19674 +15677 15748 15749 15678 19674 19745 19746 19675 +15678 15749 15750 15679 19675 19746 19747 19676 +15679 15750 15751 15680 19676 19747 19748 19677 +15680 15751 15752 15681 19677 19748 19749 19678 +15681 15752 15753 15682 19678 19749 19750 19679 +15682 15753 15754 15683 19679 19750 19751 19680 +15683 15754 15755 15684 19680 19751 19752 19681 +15684 15755 15756 15685 19681 19752 19753 19682 +15686 15757 15758 15687 19683 19754 19755 19684 +15687 15758 15759 15688 19684 19755 19756 19685 +15688 15759 15760 15689 19685 19756 19757 19686 +15689 15760 15761 15690 19686 19757 19758 19687 +15690 15761 15762 15691 19687 19758 19759 19688 +15691 15762 15763 15692 19688 19759 19760 19689 +15692 15763 15764 15693 19689 19760 19761 19690 +15693 15764 15765 15694 19690 19761 19762 19691 +15694 15765 15766 15695 19691 19762 19763 19692 +15695 15766 15767 15696 19692 19763 19764 19693 +15696 15767 15768 15697 19693 19764 19765 19694 +15697 15768 15769 15698 19694 19765 19766 19695 +15698 15769 15770 15699 19695 19766 19767 19696 +15699 15770 15771 15700 19696 19767 19768 19697 +15700 15771 15772 15701 19697 19768 19769 19698 +15701 15772 15773 15702 19698 19769 19770 19699 +15702 15773 15774 15703 19699 19770 19771 19700 +15703 15774 15775 15704 19700 19771 19772 19701 +15704 15775 15776 15705 19701 19772 19773 19702 +15705 15776 15777 15706 19702 19773 19774 19703 +15706 15777 15778 15707 19703 19774 19775 19704 +15707 15778 15779 15708 19704 19775 19776 19705 +15708 15779 15780 15709 19705 19776 19777 19706 +15709 15780 15781 15710 19706 19777 19778 19707 +15710 15781 15782 15711 19707 19778 19779 19708 +15711 15782 15783 15712 19708 19779 19780 19709 +15712 15783 15784 15713 19709 19780 19781 19710 +15713 15784 15785 15714 19710 19781 19782 19711 +15714 15785 15786 15715 19711 19782 19783 19712 +15715 15786 15787 15716 19712 19783 19784 19713 +15716 15787 15788 15717 19713 19784 19785 19714 +15717 15788 15789 15718 19714 19785 19786 19715 +15718 15789 15790 15719 19715 19786 19787 19716 +15719 15790 15791 15720 19716 19787 19788 19717 +15720 15791 15792 15721 19717 19788 19789 19718 +15721 15792 15793 15794 19718 19789 19790 19791 +15721 15794 15795 15722 19718 19791 19792 19719 +15722 15795 15796 15723 19719 19792 19793 19720 +15723 15796 15797 15724 19720 19793 19794 19721 +15724 15797 15798 15725 19721 19794 19795 19722 +15725 15798 15799 15726 19722 19795 19796 19723 +15726 15799 15800 15727 19723 19796 19797 19724 +15727 15800 15801 15728 19724 19797 19798 19725 +15728 15801 15802 15729 19725 19798 19799 19726 +15729 15802 15803 15730 19726 19799 19800 19727 +15730 15803 15804 15731 19727 19800 19801 19728 +15731 15804 15805 15732 19728 19801 19802 19729 +15732 15805 15806 15733 19729 19802 19803 19730 +15733 15806 15807 15734 19730 19803 19804 19731 +15734 15807 15808 15735 19731 19804 19805 19732 +15735 15808 15809 15736 19732 19805 19806 19733 +15736 15809 15810 15737 19733 19806 19807 19734 +15737 15810 15811 15738 19734 19807 19808 19735 +15738 15811 15812 15739 19735 19808 19809 19736 +15739 15812 15813 15740 19736 19809 19810 19737 +15740 15813 15814 15741 19737 19810 19811 19738 +15741 15814 15815 15742 19738 19811 19812 19739 +15742 15815 15816 15743 19739 19812 19813 19740 +15743 15816 15817 15744 19740 19813 19814 19741 +15744 15817 15818 15745 19741 19814 19815 19742 +15745 15818 15819 15746 19742 19815 19816 19743 +15746 15819 15820 15747 19743 19816 19817 19744 +15747 15820 15821 15748 19744 19817 19818 19745 +15748 15821 15822 15749 19745 19818 19819 19746 +15749 15822 15823 15750 19746 19819 19820 19747 +15750 15823 15824 15751 19747 19820 19821 19748 +15751 15824 15825 15752 19748 19821 19822 19749 +15752 15825 15826 15753 19749 19822 19823 19750 +15753 15826 15827 15754 19750 19823 19824 19751 +15754 15827 15828 15755 19751 19824 19825 19752 +15755 15828 15829 15756 19752 19825 19826 19753 +15757 15830 15831 15758 19754 19827 19828 19755 +15758 15831 15832 15759 19755 19828 19829 19756 +15759 15832 15833 15760 19756 19829 19830 19757 +15760 15833 15834 15761 19757 19830 19831 19758 +15761 15834 15835 15762 19758 19831 19832 19759 +15762 15835 15836 15763 19759 19832 19833 19760 +15763 15836 15837 15764 19760 19833 19834 19761 +15764 15837 15838 15765 19761 19834 19835 19762 +15765 15838 15839 15766 19762 19835 19836 19763 +15766 15839 15840 15767 19763 19836 19837 19764 +15767 15840 15841 15768 19764 19837 19838 19765 +15768 15841 15842 15769 19765 19838 19839 19766 +15769 15842 15843 15770 19766 19839 19840 19767 +15770 15843 15844 15771 19767 19840 19841 19768 +15771 15844 15845 15772 19768 19841 19842 19769 +15772 15845 15846 15773 19769 19842 19843 19770 +15773 15846 15847 15774 19770 19843 19844 19771 +15774 15847 15848 15775 19771 19844 19845 19772 +15775 15848 15849 15776 19772 19845 19846 19773 +15776 15849 15850 15777 19773 19846 19847 19774 +15777 15850 15851 15778 19774 19847 19848 19775 +15778 15851 15852 15779 19775 19848 19849 19776 +15779 15852 15853 15780 19776 19849 19850 19777 +15780 15853 15854 15781 19777 19850 19851 19778 +15781 15854 15855 15782 19778 19851 19852 19779 +15782 15855 15856 15783 19779 19852 19853 19780 +15783 15856 15857 15784 19780 19853 19854 19781 +15784 15857 15858 15785 19781 19854 19855 19782 +15785 15858 15859 15786 19782 19855 19856 19783 +15786 15859 15860 15787 19783 19856 19857 19784 +15787 15860 15861 15788 19784 19857 19858 19785 +15788 15861 15862 15789 19785 19858 19859 19786 +15789 15862 15863 15790 19786 19859 19860 19787 +15790 15863 15864 15791 19787 19860 19861 19788 +15791 15864 15865 15792 19788 19861 19862 19789 +15792 15865 15866 15793 19789 19862 19863 19790 +15793 15866 15867 15794 19790 19863 19864 19791 +15794 15867 15868 15795 19791 19864 19865 19792 +15795 15868 15869 15796 19792 19865 19866 19793 +15796 15869 15870 15797 19793 19866 19867 19794 +15797 15870 15871 15798 19794 19867 19868 19795 +15798 15871 15872 15799 19795 19868 19869 19796 +15799 15872 15873 15800 19796 19869 19870 19797 +15800 15873 15874 15801 19797 19870 19871 19798 +15801 15874 15875 15802 19798 19871 19872 19799 +15802 15875 15876 15803 19799 19872 19873 19800 +15803 15876 15877 15804 19800 19873 19874 19801 +15804 15877 15878 15805 19801 19874 19875 19802 +15805 15878 15879 15806 19802 19875 19876 19803 +15806 15879 15880 15807 19803 19876 19877 19804 +15807 15880 15881 15808 19804 19877 19878 19805 +15808 15881 15882 15809 19805 19878 19879 19806 +15809 15882 15883 15810 19806 19879 19880 19807 +15810 15883 15884 15811 19807 19880 19881 19808 +15811 15884 15885 15812 19808 19881 19882 19809 +15812 15885 15886 15813 19809 19882 19883 19810 +15813 15886 15887 15814 19810 19883 19884 19811 +15814 15887 15888 15815 19811 19884 19885 19812 +15815 15888 15889 15816 19812 19885 19886 19813 +15816 15889 15890 15817 19813 19886 19887 19814 +15817 15890 15891 15818 19814 19887 19888 19815 +15818 15891 15892 15819 19815 19888 19889 19816 +15819 15892 15893 15820 19816 19889 19890 19817 +15820 15893 15894 15821 19817 19890 19891 19818 +15821 15894 15895 15822 19818 19891 19892 19819 +15822 15895 15896 15823 19819 19892 19893 19820 +15823 15896 15897 15824 19820 19893 19894 19821 +15824 15897 15898 15825 19821 19894 19895 19822 +15825 15898 15899 15826 19822 19895 19896 19823 +15826 15899 15900 15827 19823 19896 19897 19824 +15827 15900 15901 15828 19824 19897 19898 19825 +15828 15901 15902 15829 19825 19898 19899 19826 +15830 15903 15904 15831 19827 19900 19901 19828 +15831 15904 15905 15832 19828 19901 19902 19829 +15832 15905 15906 15833 19829 19902 19903 19830 +15833 15906 15907 15834 19830 19903 19904 19831 +15834 15907 15908 15835 19831 19904 19905 19832 +15835 15908 15909 15836 19832 19905 19906 19833 +15836 15909 15910 15837 19833 19906 19907 19834 +15837 15910 15911 15838 19834 19907 19908 19835 +15838 15911 15912 15839 19835 19908 19909 19836 +15839 15912 15913 15840 19836 19909 19910 19837 +15840 15913 15914 15841 19837 19910 19911 19838 +15841 15914 15915 15842 19838 19911 19912 19839 +15842 15915 15916 15843 19839 19912 19913 19840 +15843 15916 15917 15844 19840 19913 19914 19841 +15844 15917 15918 15845 19841 19914 19915 19842 +15845 15918 15919 15846 19842 19915 19916 19843 +15846 15919 15920 15847 19843 19916 19917 19844 +15847 15920 15921 15848 19844 19917 19918 19845 +15848 15921 15922 15849 19845 19918 19919 19846 +15849 15922 15923 15850 19846 19919 19920 19847 +15850 15923 15924 15851 19847 19920 19921 19848 +15851 15924 15925 15852 19848 19921 19922 19849 +15852 15925 15926 15853 19849 19922 19923 19850 +15853 15926 15927 15854 19850 19923 19924 19851 +15854 15927 15928 15855 19851 19924 19925 19852 +15855 15928 15929 15856 19852 19925 19926 19853 +15856 15929 15930 15857 19853 19926 19927 19854 +15857 15930 15931 15858 19854 19927 19928 19855 +15858 15931 15932 15859 19855 19928 19929 19856 +15859 15932 15933 15860 19856 19929 19930 19857 +15860 15933 15934 15861 19857 19930 19931 19858 +15861 15934 15935 15862 19858 19931 19932 19859 +15862 15935 15936 15863 19859 19932 19933 19860 +15863 15936 15937 15864 19860 19933 19934 19861 +15864 15937 15938 15865 19861 19934 19935 19862 +15865 15938 15939 15866 19862 19935 19936 19863 +15866 15939 15940 15867 19863 19936 19937 19864 +15867 15940 15941 15868 19864 19937 19938 19865 +15868 15941 15942 15869 19865 19938 19939 19866 +15869 15942 15943 15870 19866 19939 19940 19867 +15870 15943 15944 15871 19867 19940 19941 19868 +15871 15944 15945 15872 19868 19941 19942 19869 +15872 15945 15946 15873 19869 19942 19943 19870 +15873 15946 15947 15874 19870 19943 19944 19871 +15874 15947 15948 15875 19871 19944 19945 19872 +15875 15948 15949 15876 19872 19945 19946 19873 +15876 15949 15950 15877 19873 19946 19947 19874 +15877 15950 15951 15878 19874 19947 19948 19875 +15878 15951 15952 15879 19875 19948 19949 19876 +15879 15952 15953 15880 19876 19949 19950 19877 +15880 15953 15954 15881 19877 19950 19951 19878 +15881 15954 15955 15882 19878 19951 19952 19879 +15882 15955 15956 15883 19879 19952 19953 19880 +15883 15956 15957 15884 19880 19953 19954 19881 +15884 15957 15958 15885 19881 19954 19955 19882 +15885 15958 15959 15886 19882 19955 19956 19883 +15886 15959 15960 15887 19883 19956 19957 19884 +15887 15960 15961 15888 19884 19957 19958 19885 +15888 15961 15962 15889 19885 19958 19959 19886 +15889 15962 15963 15890 19886 19959 19960 19887 +15890 15963 15964 15891 19887 19960 19961 19888 +15891 15964 15965 15892 19888 19961 19962 19889 +15892 15965 15966 15893 19889 19962 19963 19890 +15893 15966 15967 15894 19890 19963 19964 19891 +15894 15967 15968 15895 19891 19964 19965 19892 +15895 15968 15969 15896 19892 19965 19966 19893 +15896 15969 15970 15897 19893 19966 19967 19894 +15897 15970 15971 15898 19894 19967 19968 19895 +15898 15971 15972 15899 19895 19968 19969 19896 +15899 15972 15973 15900 19896 19969 19970 19897 +15900 15973 15974 15901 19897 19970 19971 19898 +15901 15974 15975 15902 19898 19971 19972 19899 +15903 15976 15977 15904 19900 19973 19974 19901 +15904 15977 15978 15905 19901 19974 19975 19902 +15905 15978 15979 15906 19902 19975 19976 19903 +15906 15979 15980 15907 19903 19976 19977 19904 +15907 15980 15981 15908 19904 19977 19978 19905 +15908 15981 15982 15909 19905 19978 19979 19906 +15909 15982 15983 15910 19906 19979 19980 19907 +15910 15983 15984 15911 19907 19980 19981 19908 +15911 15984 15985 15912 19908 19981 19982 19909 +15912 15985 15986 15913 19909 19982 19983 19910 +15913 15986 15987 15914 19910 19983 19984 19911 +15914 15987 15988 15915 19911 19984 19985 19912 +15915 15988 15989 15916 19912 19985 19986 19913 +15916 15989 15990 15917 19913 19986 19987 19914 +15917 15990 15991 15918 19914 19987 19988 19915 +15918 15991 15992 15919 19915 19988 19989 19916 +15919 15992 15993 15920 19916 19989 19990 19917 +15920 15993 15994 15921 19917 19990 19991 19918 +15921 15994 15995 15922 19918 19991 19992 19919 +15922 15995 15996 15923 19919 19992 19993 19920 +15923 15996 15997 15924 19920 19993 19994 19921 +15924 15997 15998 15925 19921 19994 19995 19922 +15925 15998 15999 15926 19922 19995 19996 19923 +15926 15999 16000 15927 19923 19996 19997 19924 +15927 16000 16001 15928 19924 19997 19998 19925 +15928 16001 16002 15929 19925 19998 19999 19926 +15929 16002 16003 15930 19926 19999 20000 19927 +15930 16003 16004 15931 19927 20000 20001 19928 +15931 16004 16005 15932 19928 20001 20002 19929 +15932 16005 16006 15933 19929 20002 20003 19930 +15933 16006 16007 15934 19930 20003 20004 19931 +15934 16007 16008 15935 19931 20004 20005 19932 +15935 16008 16009 15936 19932 20005 20006 19933 +15936 16009 16010 15937 19933 20006 20007 19934 +15937 16010 16011 15938 19934 20007 20008 19935 +15938 16011 16012 15939 19935 20008 20009 19936 +15939 16012 16013 15940 19936 20009 20010 19937 +15940 16013 16014 15941 19937 20010 20011 19938 +15941 16014 16015 15942 19938 20011 20012 19939 +15942 16015 16016 15943 19939 20012 20013 19940 +15943 16016 16017 15944 19940 20013 20014 19941 +15944 16017 16018 15945 19941 20014 20015 19942 +15945 16018 16019 15946 19942 20015 20016 19943 +15946 16019 16020 15947 19943 20016 20017 19944 +15947 16020 16021 15948 19944 20017 20018 19945 +15948 16021 16022 15949 19945 20018 20019 19946 +15949 16022 16023 15950 19946 20019 20020 19947 +15950 16023 16024 15951 19947 20020 20021 19948 +15951 16024 16025 15952 19948 20021 20022 19949 +15952 16025 16026 15953 19949 20022 20023 19950 +15953 16026 16027 15954 19950 20023 20024 19951 +15954 16027 16028 15955 19951 20024 20025 19952 +15955 16028 16029 15956 19952 20025 20026 19953 +15956 16029 16030 15957 19953 20026 20027 19954 +15957 16030 16031 15958 19954 20027 20028 19955 +15958 16031 16032 15959 19955 20028 20029 19956 +15959 16032 16033 15960 19956 20029 20030 19957 +15960 16033 16034 15961 19957 20030 20031 19958 +15961 16034 16035 15962 19958 20031 20032 19959 +15962 16035 16036 15963 19959 20032 20033 19960 +15963 16036 16037 15964 19960 20033 20034 19961 +15964 16037 16038 15965 19961 20034 20035 19962 +15965 16038 16039 15966 19962 20035 20036 19963 +15966 16039 16040 15967 19963 20036 20037 19964 +15967 16040 16041 15968 19964 20037 20038 19965 +15968 16041 16042 15969 19965 20038 20039 19966 +15969 16042 16043 15970 19966 20039 20040 19967 +15970 16043 16044 15971 19967 20040 20041 19968 +15971 16044 16045 15972 19968 20041 20042 19969 +15972 16045 16046 15973 19969 20042 20043 19970 +15973 16046 16047 15974 19970 20043 20044 19971 +15974 16047 16048 15975 19971 20044 20045 19972 +15976 16049 16050 15977 19973 20046 20047 19974 +15977 16050 16051 15978 19974 20047 20048 19975 +15978 16051 16052 15979 19975 20048 20049 19976 +15979 16052 16053 15980 19976 20049 20050 19977 +15980 16053 16054 15981 19977 20050 20051 19978 +15981 16054 16055 15982 19978 20051 20052 19979 +15982 16055 16056 15983 19979 20052 20053 19980 +15983 16056 16057 15984 19980 20053 20054 19981 +15984 16057 16058 15985 19981 20054 20055 19982 +15985 16058 16059 15986 19982 20055 20056 19983 +15986 16059 16060 15987 19983 20056 20057 19984 +15987 16060 16061 15988 19984 20057 20058 19985 +15988 16061 16062 15989 19985 20058 20059 19986 +15989 16062 16063 15990 19986 20059 20060 19987 +15990 16063 16064 15991 19987 20060 20061 19988 +15991 16064 16065 15992 19988 20061 20062 19989 +15992 16065 16066 15993 19989 20062 20063 19990 +15993 16066 16067 15994 19990 20063 20064 19991 +15994 16067 16068 15995 19991 20064 20065 19992 +15995 16068 16069 15996 19992 20065 20066 19993 +15996 16069 16070 15997 19993 20066 20067 19994 +15997 16070 16071 15998 19994 20067 20068 19995 +15998 16071 16072 15999 19995 20068 20069 19996 +15999 16072 16073 16000 19996 20069 20070 19997 +16000 16073 16074 16001 19997 20070 20071 19998 +16001 16074 16075 16002 19998 20071 20072 19999 +16002 16075 16076 16003 19999 20072 20073 20000 +16003 16076 16077 16004 20000 20073 20074 20001 +16004 16077 16078 16005 20001 20074 20075 20002 +16005 16078 16079 16006 20002 20075 20076 20003 +16006 16079 16080 16007 20003 20076 20077 20004 +16007 16080 16081 16008 20004 20077 20078 20005 +16008 16081 16082 16009 20005 20078 20079 20006 +16009 16082 16083 16010 20006 20079 20080 20007 +16010 16083 16084 16011 20007 20080 20081 20008 +16011 16084 16085 16012 20008 20081 20082 20009 +16012 16085 16086 16013 20009 20082 20083 20010 +16013 16086 16087 16014 20010 20083 20084 20011 +16014 16087 16088 16015 20011 20084 20085 20012 +16015 16088 16089 16016 20012 20085 20086 20013 +16016 16089 16090 16017 20013 20086 20087 20014 +16017 16090 16091 16018 20014 20087 20088 20015 +16018 16091 16092 16019 20015 20088 20089 20016 +16019 16092 16093 16020 20016 20089 20090 20017 +16020 16093 16094 16021 20017 20090 20091 20018 +16021 16094 16095 16022 20018 20091 20092 20019 +16022 16095 16096 16023 20019 20092 20093 20020 +16023 16096 16097 16024 20020 20093 20094 20021 +16024 16097 16098 16025 20021 20094 20095 20022 +16025 16098 16099 16026 20022 20095 20096 20023 +16026 16099 16100 16027 20023 20096 20097 20024 +16027 16100 16101 16028 20024 20097 20098 20025 +16028 16101 16102 16029 20025 20098 20099 20026 +16029 16102 16103 16030 20026 20099 20100 20027 +16030 16103 16104 16031 20027 20100 20101 20028 +16031 16104 16105 16032 20028 20101 20102 20029 +16032 16105 16106 16033 20029 20102 20103 20030 +16033 16106 16107 16034 20030 20103 20104 20031 +16034 16107 16108 16035 20031 20104 20105 20032 +16035 16108 16109 16036 20032 20105 20106 20033 +16036 16109 16110 16037 20033 20106 20107 20034 +16037 16110 16111 16038 20034 20107 20108 20035 +16038 16111 16112 16039 20035 20108 20109 20036 +16039 16112 16113 16040 20036 20109 20110 20037 +16040 16113 16114 16041 20037 20110 20111 20038 +16041 16114 16115 16042 20038 20111 20112 20039 +16042 16115 16116 16043 20039 20112 20113 20040 +16043 16116 16117 16044 20040 20113 20114 20041 +16044 16117 16118 16045 20041 20114 20115 20042 +16045 16118 16119 16046 20042 20115 20116 20043 +16046 16119 16120 16047 20043 20116 20117 20044 +16047 16120 16121 16048 20044 20117 20118 20045 +16049 16122 16123 16050 20046 20119 20120 20047 +16050 16123 16124 16051 20047 20120 20121 20048 +16051 16124 16125 16052 20048 20121 20122 20049 +16052 16125 16126 16053 20049 20122 20123 20050 +16053 16126 16127 16054 20050 20123 20124 20051 +16054 16127 16128 16055 20051 20124 20125 20052 +16055 16128 16129 16056 20052 20125 20126 20053 +16056 16129 16130 16057 20053 20126 20127 20054 +16057 16130 16131 16058 20054 20127 20128 20055 +16058 16131 16132 16059 20055 20128 20129 20056 +16059 16132 16133 16060 20056 20129 20130 20057 +16060 16133 16134 16061 20057 20130 20131 20058 +16061 16134 16135 16062 20058 20131 20132 20059 +16062 16135 16136 16063 20059 20132 20133 20060 +16063 16136 16137 16064 20060 20133 20134 20061 +16064 16137 16138 16065 20061 20134 20135 20062 +16065 16138 16139 16066 20062 20135 20136 20063 +16066 16139 16140 16067 20063 20136 20137 20064 +16067 16140 16141 16068 20064 20137 20138 20065 +16068 16141 16142 16069 20065 20138 20139 20066 +16069 16142 16143 16070 20066 20139 20140 20067 +16070 16143 16144 16071 20067 20140 20141 20068 +16071 16144 16145 16072 20068 20141 20142 20069 +16072 16145 16146 16073 20069 20142 20143 20070 +16073 16146 16147 16074 20070 20143 20144 20071 +16074 16147 16148 16075 20071 20144 20145 20072 +16075 16148 16149 16076 20072 20145 20146 20073 +16076 16149 16150 16077 20073 20146 20147 20074 +16077 16150 16151 16078 20074 20147 20148 20075 +16078 16151 16152 16079 20075 20148 20149 20076 +16079 16152 16153 16080 20076 20149 20150 20077 +16080 16153 16154 16081 20077 20150 20151 20078 +16081 16154 16155 16082 20078 20151 20152 20079 +16082 16155 16156 16083 20079 20152 20153 20080 +16083 16156 16157 16084 20080 20153 20154 20081 +16084 16157 16158 16085 20081 20154 20155 20082 +16085 16158 16159 16086 20082 20155 20156 20083 +16086 16159 16160 16087 20083 20156 20157 20084 +16087 16160 16161 16088 20084 20157 20158 20085 +16088 16161 16162 16089 20085 20158 20159 20086 +16089 16162 16163 16090 20086 20159 20160 20087 +16090 16163 16164 16091 20087 20160 20161 20088 +16091 16164 16165 16092 20088 20161 20162 20089 +16092 16165 16166 16093 20089 20162 20163 20090 +16093 16166 16167 16094 20090 20163 20164 20091 +16094 16167 16168 16095 20091 20164 20165 20092 +16095 16168 16169 16096 20092 20165 20166 20093 +16096 16169 16170 16097 20093 20166 20167 20094 +16097 16170 16171 16098 20094 20167 20168 20095 +16098 16171 16172 16099 20095 20168 20169 20096 +16099 16172 16173 16100 20096 20169 20170 20097 +16100 16173 16174 16101 20097 20170 20171 20098 +16101 16174 16175 16102 20098 20171 20172 20099 +16102 16175 16176 16103 20099 20172 20173 20100 +16103 16176 16177 16104 20100 20173 20174 20101 +16104 16177 16178 16105 20101 20174 20175 20102 +16105 16178 16179 16106 20102 20175 20176 20103 +16106 16179 16180 16107 20103 20176 20177 20104 +16107 16180 16181 16108 20104 20177 20178 20105 +16108 16181 16182 16109 20105 20178 20179 20106 +16109 16182 16183 16110 20106 20179 20180 20107 +16110 16183 16184 16111 20107 20180 20181 20108 +16111 16184 16185 16112 20108 20181 20182 20109 +16112 16185 16186 16113 20109 20182 20183 20110 +16113 16186 16187 16114 20110 20183 20184 20111 +16114 16187 16188 16115 20111 20184 20185 20112 +16115 16188 16189 16116 20112 20185 20186 20113 +16116 16189 16190 16117 20113 20186 20187 20114 +16117 16190 16191 16118 20114 20187 20188 20115 +16118 16191 16192 16119 20115 20188 20189 20116 +16119 16192 16193 16120 20116 20189 20190 20117 +16120 16193 16194 16121 20117 20190 20191 20118 +16122 16195 16196 16123 20119 20192 20193 20120 +16123 16196 16197 16124 20120 20193 20194 20121 +16124 16197 16198 16125 20121 20194 20195 20122 +16125 16198 16199 16126 20122 20195 20196 20123 +16126 16199 16200 16127 20123 20196 20197 20124 +16127 16200 16201 16128 20124 20197 20198 20125 +16128 16201 16202 16129 20125 20198 20199 20126 +16129 16202 16203 16130 20126 20199 20200 20127 +16130 16203 16204 16131 20127 20200 20201 20128 +16131 16204 16205 16132 20128 20201 20202 20129 +16132 16205 16206 16133 20129 20202 20203 20130 +16133 16206 16207 16134 20130 20203 20204 20131 +16134 16207 16208 16135 20131 20204 20205 20132 +16135 16208 16209 16136 20132 20205 20206 20133 +16136 16209 16210 16137 20133 20206 20207 20134 +16137 16210 16211 16138 20134 20207 20208 20135 +16138 16211 16212 16139 20135 20208 20209 20136 +16139 16212 16213 16140 20136 20209 20210 20137 +16140 16213 16214 16141 20137 20210 20211 20138 +16141 16214 16215 16142 20138 20211 20212 20139 +16142 16215 16216 16143 20139 20212 20213 20140 +16143 16216 16217 16144 20140 20213 20214 20141 +16144 16217 16218 16145 20141 20214 20215 20142 +16145 16218 16219 16146 20142 20215 20216 20143 +16146 16219 16220 16147 20143 20216 20217 20144 +16147 16220 16221 16148 20144 20217 20218 20145 +16148 16221 16222 16149 20145 20218 20219 20146 +16149 16222 16223 16150 20146 20219 20220 20147 +16150 16223 16224 16151 20147 20220 20221 20148 +16151 16224 16225 16152 20148 20221 20222 20149 +16152 16225 16226 16153 20149 20222 20223 20150 +16153 16226 16227 16154 20150 20223 20224 20151 +16154 16227 16228 16155 20151 20224 20225 20152 +16155 16228 16229 16156 20152 20225 20226 20153 +16156 16229 16230 16157 20153 20226 20227 20154 +16157 16230 16231 16158 20154 20227 20228 20155 +16158 16231 16232 16159 20155 20228 20229 20156 +16159 16232 16233 16160 20156 20229 20230 20157 +16160 16233 16234 16161 20157 20230 20231 20158 +16161 16234 16235 16162 20158 20231 20232 20159 +16162 16235 16236 16163 20159 20232 20233 20160 +16163 16236 16237 16164 20160 20233 20234 20161 +16164 16237 16238 16165 20161 20234 20235 20162 +16165 16238 16239 16166 20162 20235 20236 20163 +16166 16239 16240 16167 20163 20236 20237 20164 +16167 16240 16241 16168 20164 20237 20238 20165 +16168 16241 16242 16169 20165 20238 20239 20166 +16169 16242 16243 16170 20166 20239 20240 20167 +16170 16243 16244 16171 20167 20240 20241 20168 +16171 16244 16245 16172 20168 20241 20242 20169 +16172 16245 16246 16173 20169 20242 20243 20170 +16173 16246 16247 16174 20170 20243 20244 20171 +16174 16247 16248 16175 20171 20244 20245 20172 +16175 16248 16249 16176 20172 20245 20246 20173 +16176 16249 16250 16177 20173 20246 20247 20174 +16177 16250 16251 16178 20174 20247 20248 20175 +16178 16251 16252 16179 20175 20248 20249 20176 +16179 16252 16253 16180 20176 20249 20250 20177 +16180 16253 16254 16181 20177 20250 20251 20178 +16181 16254 16255 16182 20178 20251 20252 20179 +16182 16255 16256 16183 20179 20252 20253 20180 +16183 16256 16257 16184 20180 20253 20254 20181 +16184 16257 16258 16185 20181 20254 20255 20182 +16185 16258 16259 16186 20182 20255 20256 20183 +16186 16259 16260 16187 20183 20256 20257 20184 +16187 16260 16261 16188 20184 20257 20258 20185 +16188 16261 16262 16189 20185 20258 20259 20186 +16189 16262 16263 16190 20186 20259 20260 20187 +16190 16263 16264 16191 20187 20260 20261 20188 +16191 16264 16265 16192 20188 20261 20262 20189 +16192 16265 16266 16193 20189 20262 20263 20190 +16193 16266 16267 16194 20190 20263 20264 20191 +16195 16268 16269 16196 20192 20265 20266 20193 +16196 16269 16270 16197 20193 20266 20267 20194 +16197 16270 16271 16198 20194 20267 20268 20195 +16198 16271 16272 16199 20195 20268 20269 20196 +16199 16272 16273 16200 20196 20269 20270 20197 +16200 16273 16274 16201 20197 20270 20271 20198 +16201 16274 16275 16202 20198 20271 20272 20199 +16202 16275 16276 16203 20199 20272 20273 20200 +16203 16276 16277 16204 20200 20273 20274 20201 +16204 16277 16278 16205 20201 20274 20275 20202 +16205 16278 16279 16206 20202 20275 20276 20203 +16206 16279 16280 16207 20203 20276 20277 20204 +16207 16280 16281 16208 20204 20277 20278 20205 +16208 16281 16282 16209 20205 20278 20279 20206 +16209 16282 16283 16210 20206 20279 20280 20207 +16210 16283 16284 16211 20207 20280 20281 20208 +16211 16284 16285 16212 20208 20281 20282 20209 +16212 16285 16286 16213 20209 20282 20283 20210 +16213 16286 16287 16214 20210 20283 20284 20211 +16214 16287 16288 16215 20211 20284 20285 20212 +16215 16288 16289 16216 20212 20285 20286 20213 +16216 16289 16290 16217 20213 20286 20287 20214 +16217 16290 16291 16218 20214 20287 20288 20215 +16218 16291 16292 16219 20215 20288 20289 20216 +16219 16292 16293 16220 20216 20289 20290 20217 +16220 16293 16294 16221 20217 20290 20291 20218 +16221 16294 16295 16222 20218 20291 20292 20219 +16222 16295 16296 16223 20219 20292 20293 20220 +16223 16296 16297 16224 20220 20293 20294 20221 +16224 16297 16298 16225 20221 20294 20295 20222 +16225 16298 16299 16226 20222 20295 20296 20223 +16226 16299 16300 16227 20223 20296 20297 20224 +16227 16300 16301 16228 20224 20297 20298 20225 +16228 16301 16302 16229 20225 20298 20299 20226 +16229 16302 16303 16230 20226 20299 20300 20227 +16230 16303 16304 16231 20227 20300 20301 20228 +16231 16304 16305 16232 20228 20301 20302 20229 +16232 16305 16306 16233 20229 20302 20303 20230 +16233 16306 16307 16234 20230 20303 20304 20231 +16234 16307 16308 16235 20231 20304 20305 20232 +16235 16308 16309 16236 20232 20305 20306 20233 +16236 16309 16310 16237 20233 20306 20307 20234 +16237 16310 16311 16238 20234 20307 20308 20235 +16238 16311 16312 16239 20235 20308 20309 20236 +16239 16312 16313 16240 20236 20309 20310 20237 +16240 16313 16314 16241 20237 20310 20311 20238 +16241 16314 16315 16242 20238 20311 20312 20239 +16242 16315 16316 16243 20239 20312 20313 20240 +16243 16316 16317 16244 20240 20313 20314 20241 +16244 16317 16318 16245 20241 20314 20315 20242 +16245 16318 16319 16246 20242 20315 20316 20243 +16246 16319 16320 16247 20243 20316 20317 20244 +16247 16320 16321 16248 20244 20317 20318 20245 +16248 16321 16322 16249 20245 20318 20319 20246 +16249 16322 16323 16250 20246 20319 20320 20247 +16250 16323 16324 16251 20247 20320 20321 20248 +16251 16324 16325 16252 20248 20321 20322 20249 +16252 16325 16326 16253 20249 20322 20323 20250 +16253 16326 16327 16254 20250 20323 20324 20251 +16254 16327 16328 16255 20251 20324 20325 20252 +16255 16328 16329 16256 20252 20325 20326 20253 +16256 16329 16330 16257 20253 20326 20327 20254 +16257 16330 16331 16258 20254 20327 20328 20255 +16258 16331 16332 16259 20255 20328 20329 20256 +16259 16332 16333 16260 20256 20329 20330 20257 +16260 16333 16334 16261 20257 20330 20331 20258 +16261 16334 16335 16262 20258 20331 20332 20259 +16262 16335 16336 16263 20259 20332 20333 20260 +16263 16336 16337 16264 20260 20333 20334 20261 +16264 16337 16338 16265 20261 20334 20335 20262 +16265 16338 16339 16266 20262 20335 20336 20263 +16266 16339 16340 16267 20263 20336 20337 20264 +16268 16341 16342 16269 20265 20338 20339 20266 +16269 16342 16343 16270 20266 20339 20340 20267 +16270 16343 16344 16271 20267 20340 20341 20268 +16271 16344 16345 16272 20268 20341 20342 20269 +16272 16345 16346 16273 20269 20342 20343 20270 +16273 16346 16347 16274 20270 20343 20344 20271 +16274 16347 16348 16275 20271 20344 20345 20272 +16275 16348 16349 16276 20272 20345 20346 20273 +16276 16349 16350 16277 20273 20346 20347 20274 +16277 16350 16351 16278 20274 20347 20348 20275 +16278 16351 16352 16279 20275 20348 20349 20276 +16279 16352 16353 16280 20276 20349 20350 20277 +16280 16353 16354 16281 20277 20350 20351 20278 +16281 16354 16355 16282 20278 20351 20352 20279 +16282 16355 16356 16283 20279 20352 20353 20280 +16283 16356 16357 16284 20280 20353 20354 20281 +16284 16357 16358 16285 20281 20354 20355 20282 +16285 16358 16359 16286 20282 20355 20356 20283 +16286 16359 16360 16287 20283 20356 20357 20284 +16287 16360 16361 16288 20284 20357 20358 20285 +16288 16361 16362 16289 20285 20358 20359 20286 +16289 16362 16363 16290 20286 20359 20360 20287 +16290 16363 16364 16291 20287 20360 20361 20288 +16291 16364 16365 16292 20288 20361 20362 20289 +16292 16365 16366 16293 20289 20362 20363 20290 +16293 16366 16367 16294 20290 20363 20364 20291 +16294 16367 16368 16295 20291 20364 20365 20292 +16295 16368 16369 16296 20292 20365 20366 20293 +16296 16369 16370 16297 20293 20366 20367 20294 +16297 16370 16371 16298 20294 20367 20368 20295 +16298 16371 16372 16299 20295 20368 20369 20296 +16299 16372 16373 16300 20296 20369 20370 20297 +16300 16373 16374 16301 20297 20370 20371 20298 +16301 16374 16375 16302 20298 20371 20372 20299 +16302 16375 16376 16303 20299 20372 20373 20300 +16303 16376 16377 16304 20300 20373 20374 20301 +16304 16377 16378 16305 20301 20374 20375 20302 +16305 16378 16379 16306 20302 20375 20376 20303 +16306 16379 16380 16307 20303 20376 20377 20304 +16307 16380 16381 16308 20304 20377 20378 20305 +16308 16381 16382 16309 20305 20378 20379 20306 +16309 16382 16383 16310 20306 20379 20380 20307 +16310 16383 16384 16311 20307 20380 20381 20308 +16311 16384 16385 16312 20308 20381 20382 20309 +16312 16385 16386 16313 20309 20382 20383 20310 +16313 16386 16387 16314 20310 20383 20384 20311 +16314 16387 16388 16315 20311 20384 20385 20312 +16315 16388 16389 16316 20312 20385 20386 20313 +16316 16389 16390 16317 20313 20386 20387 20314 +16317 16390 16391 16318 20314 20387 20388 20315 +16318 16391 16392 16319 20315 20388 20389 20316 +16319 16392 16393 16320 20316 20389 20390 20317 +16320 16393 16394 16321 20317 20390 20391 20318 +16321 16394 16395 16322 20318 20391 20392 20319 +16322 16395 16396 16323 20319 20392 20393 20320 +16323 16396 16397 16324 20320 20393 20394 20321 +16324 16397 16398 16325 20321 20394 20395 20322 +16325 16398 16399 16326 20322 20395 20396 20323 +16326 16399 16400 16327 20323 20396 20397 20324 +16327 16400 16401 16328 20324 20397 20398 20325 +16328 16401 16402 16329 20325 20398 20399 20326 +16329 16402 16403 16330 20326 20399 20400 20327 +16330 16403 16404 16331 20327 20400 20401 20328 +16331 16404 16405 16332 20328 20401 20402 20329 +16332 16405 16406 16333 20329 20402 20403 20330 +16333 16406 16407 16334 20330 20403 20404 20331 +16334 16407 16408 16335 20331 20404 20405 20332 +16335 16408 16409 16336 20332 20405 20406 20333 +16336 16409 16410 16337 20333 20406 20407 20334 +16337 16410 16411 16338 20334 20407 20408 20335 +16338 16411 16412 16339 20335 20408 20409 20336 +16339 16412 16413 16340 20336 20409 20410 20337 +16341 16414 16415 16342 20338 20411 20412 20339 +16342 16415 16416 16343 20339 20412 20413 20340 +16343 16416 16417 16344 20340 20413 20414 20341 +16344 16417 16418 16345 20341 20414 20415 20342 +16345 16418 16419 16346 20342 20415 20416 20343 +16346 16419 16420 16347 20343 20416 20417 20344 +16347 16420 16421 16348 20344 20417 20418 20345 +16348 16421 16422 16349 20345 20418 20419 20346 +16349 16422 16423 16350 20346 20419 20420 20347 +16350 16423 16424 16351 20347 20420 20421 20348 +16351 16424 16425 16352 20348 20421 20422 20349 +16352 16425 16426 16353 20349 20422 20423 20350 +16353 16426 16427 16354 20350 20423 20424 20351 +16354 16427 16428 16355 20351 20424 20425 20352 +16355 16428 16429 16356 20352 20425 20426 20353 +16356 16429 16430 16357 20353 20426 20427 20354 +16357 16430 16431 16358 20354 20427 20428 20355 +16358 16431 16432 16359 20355 20428 20429 20356 +16359 16432 16433 16360 20356 20429 20430 20357 +16360 16433 16434 16361 20357 20430 20431 20358 +16361 16434 16435 16362 20358 20431 20432 20359 +16362 16435 16436 16363 20359 20432 20433 20360 +16363 16436 16437 16364 20360 20433 20434 20361 +16364 16437 16438 16365 20361 20434 20435 20362 +16365 16438 16439 16366 20362 20435 20436 20363 +16366 16439 16440 16367 20363 20436 20437 20364 +16367 16440 16441 16368 20364 20437 20438 20365 +16368 16441 16442 16369 20365 20438 20439 20366 +16369 16442 16443 16370 20366 20439 20440 20367 +16370 16443 16444 16371 20367 20440 20441 20368 +16371 16444 16445 16372 20368 20441 20442 20369 +16372 16445 16446 16373 20369 20442 20443 20370 +16373 16446 16447 16374 20370 20443 20444 20371 +16374 16447 16448 16375 20371 20444 20445 20372 +16375 16448 16449 16376 20372 20445 20446 20373 +16376 16449 16450 16377 20373 20446 20447 20374 +16377 16450 16451 16378 20374 20447 20448 20375 +16378 16451 16452 16379 20375 20448 20449 20376 +16379 16452 16453 16380 20376 20449 20450 20377 +16380 16453 16454 16381 20377 20450 20451 20378 +16381 16454 16455 16382 20378 20451 20452 20379 +16382 16455 16456 16383 20379 20452 20453 20380 +16383 16456 16457 16384 20380 20453 20454 20381 +16384 16457 16458 16385 20381 20454 20455 20382 +16385 16458 16459 16386 20382 20455 20456 20383 +16386 16459 16460 16387 20383 20456 20457 20384 +16387 16460 16461 16388 20384 20457 20458 20385 +16388 16461 16462 16389 20385 20458 20459 20386 +16389 16462 16463 16390 20386 20459 20460 20387 +16390 16463 16464 16391 20387 20460 20461 20388 +16391 16464 16465 16392 20388 20461 20462 20389 +16392 16465 16466 16393 20389 20462 20463 20390 +16393 16466 16467 16394 20390 20463 20464 20391 +16394 16467 16468 16395 20391 20464 20465 20392 +16395 16468 16469 16396 20392 20465 20466 20393 +16396 16469 16470 16397 20393 20466 20467 20394 +16397 16470 16471 16398 20394 20467 20468 20395 +16398 16471 16472 16399 20395 20468 20469 20396 +16399 16472 16473 16400 20396 20469 20470 20397 +16400 16473 16474 16401 20397 20470 20471 20398 +16401 16474 16475 16402 20398 20471 20472 20399 +16402 16475 16476 16403 20399 20472 20473 20400 +16403 16476 16477 16404 20400 20473 20474 20401 +16404 16477 16478 16405 20401 20474 20475 20402 +16405 16478 16479 16406 20402 20475 20476 20403 +16406 16479 16480 16407 20403 20476 20477 20404 +16407 16480 16481 16408 20404 20477 20478 20405 +16408 16481 16482 16409 20405 20478 20479 20406 +16409 16482 16483 16410 20406 20479 20480 20407 +16410 16483 16484 16411 20407 20480 20481 20408 +16411 16484 16485 16412 20408 20481 20482 20409 +16412 16485 16486 16413 20409 20482 20483 20410 +16414 16487 16488 16415 20411 20484 20485 20412 +16415 16488 16489 16416 20412 20485 20486 20413 +16416 16489 16490 16417 20413 20486 20487 20414 +16417 16490 16491 16418 20414 20487 20488 20415 +16418 16491 16492 16419 20415 20488 20489 20416 +16419 16492 16493 16420 20416 20489 20490 20417 +16420 16493 16494 16421 20417 20490 20491 20418 +16421 16494 16495 16422 20418 20491 20492 20419 +16422 16495 16496 16423 20419 20492 20493 20420 +16423 16496 16497 16424 20420 20493 20494 20421 +16424 16497 16498 16425 20421 20494 20495 20422 +16425 16498 16499 16426 20422 20495 20496 20423 +16426 16499 16500 16427 20423 20496 20497 20424 +16427 16500 16501 16428 20424 20497 20498 20425 +16428 16501 16502 16429 20425 20498 20499 20426 +16429 16502 16503 16430 20426 20499 20500 20427 +16430 16503 16504 16431 20427 20500 20501 20428 +16431 16504 16505 16432 20428 20501 20502 20429 +16432 16505 16506 16433 20429 20502 20503 20430 +16433 16506 16507 16434 20430 20503 20504 20431 +16434 16507 16508 16435 20431 20504 20505 20432 +16435 16508 16509 16436 20432 20505 20506 20433 +16436 16509 16510 16437 20433 20506 20507 20434 +16437 16510 16511 16438 20434 20507 20508 20435 +16438 16511 16512 16439 20435 20508 20509 20436 +16439 16512 16513 16440 20436 20509 20510 20437 +16440 16513 16514 16441 20437 20510 20511 20438 +16441 16514 16515 16442 20438 20511 20512 20439 +16442 16515 16516 16443 20439 20512 20513 20440 +16443 16516 16517 16444 20440 20513 20514 20441 +16444 16517 16518 16445 20441 20514 20515 20442 +16445 16518 16519 16446 20442 20515 20516 20443 +16446 16519 16520 16447 20443 20516 20517 20444 +16447 16520 16521 16448 20444 20517 20518 20445 +16448 16521 16522 16449 20445 20518 20519 20446 +16449 16522 16523 16450 20446 20519 20520 20447 +16450 16523 16524 16451 20447 20520 20521 20448 +16451 16524 16525 16452 20448 20521 20522 20449 +16452 16525 16526 16453 20449 20522 20523 20450 +16453 16526 16527 16454 20450 20523 20524 20451 +16454 16527 16528 16455 20451 20524 20525 20452 +16455 16528 16529 16456 20452 20525 20526 20453 +16456 16529 16530 16457 20453 20526 20527 20454 +16457 16530 16531 16458 20454 20527 20528 20455 +16458 16531 16532 16459 20455 20528 20529 20456 +16459 16532 16533 16460 20456 20529 20530 20457 +16460 16533 16534 16461 20457 20530 20531 20458 +16461 16534 16535 16462 20458 20531 20532 20459 +16462 16535 16536 16463 20459 20532 20533 20460 +16463 16536 16537 16464 20460 20533 20534 20461 +16464 16537 16538 16465 20461 20534 20535 20462 +16465 16538 16539 16466 20462 20535 20536 20463 +16466 16539 16540 16467 20463 20536 20537 20464 +16467 16540 16541 16468 20464 20537 20538 20465 +16468 16541 16542 16469 20465 20538 20539 20466 +16469 16542 16543 16470 20466 20539 20540 20467 +16470 16543 16544 16471 20467 20540 20541 20468 +16471 16544 16545 16472 20468 20541 20542 20469 +16472 16545 16546 16473 20469 20542 20543 20470 +16473 16546 16547 16474 20470 20543 20544 20471 +16474 16547 16548 16475 20471 20544 20545 20472 +16475 16548 16549 16476 20472 20545 20546 20473 +16476 16549 16550 16477 20473 20546 20547 20474 +16477 16550 16551 16478 20474 20547 20548 20475 +16478 16551 16552 16479 20475 20548 20549 20476 +16479 16552 16553 16480 20476 20549 20550 20477 +16480 16553 16554 16481 20477 20550 20551 20478 +16481 16554 16555 16482 20478 20551 20552 20479 +16482 16555 16556 16483 20479 20552 20553 20480 +16483 16556 16557 16484 20480 20553 20554 20481 +16484 16557 16558 16485 20481 20554 20555 20482 +16485 16558 16559 16486 20482 20555 20556 20483 +16487 16560 16561 16488 20484 20557 20558 20485 +16488 16561 16562 16489 20485 20558 20559 20486 +16489 16562 16563 16490 20486 20559 20560 20487 +16490 16563 16564 16491 20487 20560 20561 20488 +16491 16564 16565 16492 20488 20561 20562 20489 +16492 16565 16566 16493 20489 20562 20563 20490 +16493 16566 16567 16494 20490 20563 20564 20491 +16494 16567 16568 16495 20491 20564 20565 20492 +16495 16568 16569 16496 20492 20565 20566 20493 +16496 16569 16570 16497 20493 20566 20567 20494 +16497 16570 16571 16498 20494 20567 20568 20495 +16498 16571 16572 16499 20495 20568 20569 20496 +16499 16572 16573 16500 20496 20569 20570 20497 +16500 16573 16574 16501 20497 20570 20571 20498 +16501 16574 16575 16502 20498 20571 20572 20499 +16502 16575 16576 16503 20499 20572 20573 20500 +16503 16576 16577 16504 20500 20573 20574 20501 +16504 16577 16578 16505 20501 20574 20575 20502 +16505 16578 16579 16506 20502 20575 20576 20503 +16506 16579 16580 16507 20503 20576 20577 20504 +16507 16580 16581 16508 20504 20577 20578 20505 +16508 16581 16582 16509 20505 20578 20579 20506 +16509 16582 16583 16510 20506 20579 20580 20507 +16510 16583 16584 16511 20507 20580 20581 20508 +16511 16584 16585 16512 20508 20581 20582 20509 +16512 16585 16586 16513 20509 20582 20583 20510 +16513 16586 16587 16514 20510 20583 20584 20511 +16514 16587 16588 16515 20511 20584 20585 20512 +16515 16588 16589 16516 20512 20585 20586 20513 +16516 16589 16590 16517 20513 20586 20587 20514 +16517 16590 16591 16518 20514 20587 20588 20515 +16518 16591 16592 16519 20515 20588 20589 20516 +16519 16592 16593 16520 20516 20589 20590 20517 +16520 16593 16594 16521 20517 20590 20591 20518 +16521 16594 16595 16522 20518 20591 20592 20519 +16522 16595 16596 16523 20519 20592 20593 20520 +16523 16596 16597 16524 20520 20593 20594 20521 +16524 16597 16598 16525 20521 20594 20595 20522 +16525 16598 16599 16526 20522 20595 20596 20523 +16526 16599 16600 16527 20523 20596 20597 20524 +16527 16600 16601 16528 20524 20597 20598 20525 +16528 16601 16602 16529 20525 20598 20599 20526 +16529 16602 16603 16530 20526 20599 20600 20527 +16530 16603 16604 16531 20527 20600 20601 20528 +16531 16604 16605 16532 20528 20601 20602 20529 +16532 16605 16606 16533 20529 20602 20603 20530 +16533 16606 16607 16534 20530 20603 20604 20531 +16534 16607 16608 16535 20531 20604 20605 20532 +16535 16608 16609 16536 20532 20605 20606 20533 +16536 16609 16610 16537 20533 20606 20607 20534 +16537 16610 16611 16538 20534 20607 20608 20535 +16538 16611 16612 16539 20535 20608 20609 20536 +16539 16612 16613 16540 20536 20609 20610 20537 +16540 16613 16614 16541 20537 20610 20611 20538 +16541 16614 16615 16542 20538 20611 20612 20539 +16542 16615 16616 16543 20539 20612 20613 20540 +16543 16616 16617 16544 20540 20613 20614 20541 +16544 16617 16618 16545 20541 20614 20615 20542 +16545 16618 16619 16546 20542 20615 20616 20543 +16546 16619 16620 16547 20543 20616 20617 20544 +16547 16620 16621 16548 20544 20617 20618 20545 +16548 16621 16622 16549 20545 20618 20619 20546 +16549 16622 16623 16550 20546 20619 20620 20547 +16550 16623 16624 16551 20547 20620 20621 20548 +16551 16624 16625 16552 20548 20621 20622 20549 +16552 16625 16626 16553 20549 20622 20623 20550 +16553 16626 16627 16554 20550 20623 20624 20551 +16554 16627 16628 16555 20551 20624 20625 20552 +16555 16628 16629 16556 20552 20625 20626 20553 +16556 16629 16630 16557 20553 20626 20627 20554 +16557 16630 16631 16558 20554 20627 20628 20555 +16558 16631 16632 16559 20555 20628 20629 20556 +16560 16633 16634 16561 20557 20630 20631 20558 +16561 16634 16635 16562 20558 20631 20632 20559 +16562 16635 16636 16563 20559 20632 20633 20560 +16563 16636 16637 16564 20560 20633 20634 20561 +16564 16637 16638 16565 20561 20634 20635 20562 +16565 16638 16639 16566 20562 20635 20636 20563 +16566 16639 16640 16567 20563 20636 20637 20564 +16567 16640 16641 16568 20564 20637 20638 20565 +16568 16641 16642 16569 20565 20638 20639 20566 +16569 16642 16643 16570 20566 20639 20640 20567 +16570 16643 16644 16571 20567 20640 20641 20568 +16571 16644 16645 16572 20568 20641 20642 20569 +16572 16645 16646 16573 20569 20642 20643 20570 +16573 16646 16647 16574 20570 20643 20644 20571 +16574 16647 16648 16575 20571 20644 20645 20572 +16575 16648 16649 16576 20572 20645 20646 20573 +16576 16649 16650 16577 20573 20646 20647 20574 +16577 16650 16651 16578 20574 20647 20648 20575 +16578 16651 16652 16579 20575 20648 20649 20576 +16579 16652 16653 16580 20576 20649 20650 20577 +16580 16653 16654 16581 20577 20650 20651 20578 +16581 16654 16655 16582 20578 20651 20652 20579 +16582 16655 16656 16583 20579 20652 20653 20580 +16583 16656 16657 16584 20580 20653 20654 20581 +16584 16657 16658 16585 20581 20654 20655 20582 +16585 16658 16659 16586 20582 20655 20656 20583 +16586 16659 16660 16587 20583 20656 20657 20584 +16587 16660 16661 16588 20584 20657 20658 20585 +16588 16661 16662 16589 20585 20658 20659 20586 +16589 16662 16663 16590 20586 20659 20660 20587 +16590 16663 16664 16591 20587 20660 20661 20588 +16591 16664 16665 16592 20588 20661 20662 20589 +16592 16665 16666 16593 20589 20662 20663 20590 +16593 16666 16667 16594 20590 20663 20664 20591 +16594 16667 16668 16595 20591 20664 20665 20592 +16595 16668 16669 16596 20592 20665 20666 20593 +16596 16669 16670 16597 20593 20666 20667 20594 +16597 16670 16671 16598 20594 20667 20668 20595 +16598 16671 16672 16599 20595 20668 20669 20596 +16599 16672 16673 16600 20596 20669 20670 20597 +16600 16673 16674 16601 20597 20670 20671 20598 +16601 16674 16675 16602 20598 20671 20672 20599 +16602 16675 16676 16603 20599 20672 20673 20600 +16603 16676 16677 16604 20600 20673 20674 20601 +16604 16677 16678 16605 20601 20674 20675 20602 +16605 16678 16679 16606 20602 20675 20676 20603 +16606 16679 16680 16607 20603 20676 20677 20604 +16607 16680 16681 16608 20604 20677 20678 20605 +16608 16681 16682 16609 20605 20678 20679 20606 +16609 16682 16683 16610 20606 20679 20680 20607 +16610 16683 16684 16611 20607 20680 20681 20608 +16611 16684 16685 16612 20608 20681 20682 20609 +16612 16685 16686 16613 20609 20682 20683 20610 +16613 16686 16687 16614 20610 20683 20684 20611 +16614 16687 16688 16615 20611 20684 20685 20612 +16615 16688 16689 16616 20612 20685 20686 20613 +16616 16689 16690 16617 20613 20686 20687 20614 +16617 16690 16691 16618 20614 20687 20688 20615 +16618 16691 16692 16619 20615 20688 20689 20616 +16619 16692 16693 16620 20616 20689 20690 20617 +16620 16693 16694 16621 20617 20690 20691 20618 +16621 16694 16695 16622 20618 20691 20692 20619 +16622 16695 16696 16623 20619 20692 20693 20620 +16623 16696 16697 16624 20620 20693 20694 20621 +16624 16697 16698 16625 20621 20694 20695 20622 +16625 16698 16699 16626 20622 20695 20696 20623 +16626 16699 16700 16627 20623 20696 20697 20624 +16627 16700 16701 16628 20624 20697 20698 20625 +16628 16701 16702 16629 20625 20698 20699 20626 +16629 16702 16703 16630 20626 20699 20700 20627 +16630 16703 16704 16631 20627 20700 20701 20628 +16631 16704 16705 16632 20628 20701 20702 20629 +16633 16706 16707 16634 20630 20703 20704 20631 +16634 16707 16708 16635 20631 20704 20705 20632 +16635 16708 16709 16636 20632 20705 20706 20633 +16636 16709 16710 16637 20633 20706 20707 20634 +16637 16710 16711 16638 20634 20707 20708 20635 +16638 16711 16712 16639 20635 20708 20709 20636 +16639 16712 16713 16640 20636 20709 20710 20637 +16640 16713 16714 16641 20637 20710 20711 20638 +16641 16714 16715 16642 20638 20711 20712 20639 +16642 16715 16716 16643 20639 20712 20713 20640 +16643 16716 16717 16644 20640 20713 20714 20641 +16644 16717 16718 16645 20641 20714 20715 20642 +16645 16718 16719 16646 20642 20715 20716 20643 +16646 16719 16720 16647 20643 20716 20717 20644 +16647 16720 16721 16648 20644 20717 20718 20645 +16648 16721 16722 16649 20645 20718 20719 20646 +16649 16722 16723 16650 20646 20719 20720 20647 +16650 16723 16724 16651 20647 20720 20721 20648 +16651 16724 16725 16652 20648 20721 20722 20649 +16652 16725 16726 16653 20649 20722 20723 20650 +16653 16726 16727 16654 20650 20723 20724 20651 +16654 16727 16728 16655 20651 20724 20725 20652 +16655 16728 16729 16656 20652 20725 20726 20653 +16656 16729 16730 16657 20653 20726 20727 20654 +16657 16730 16731 16658 20654 20727 20728 20655 +16658 16731 16732 16659 20655 20728 20729 20656 +16659 16732 16733 16660 20656 20729 20730 20657 +16660 16733 16734 16661 20657 20730 20731 20658 +16661 16734 16735 16662 20658 20731 20732 20659 +16662 16735 16736 16663 20659 20732 20733 20660 +16663 16736 16737 16664 20660 20733 20734 20661 +16664 16737 16738 16665 20661 20734 20735 20662 +16665 16738 16739 16666 20662 20735 20736 20663 +16666 16739 16740 16667 20663 20736 20737 20664 +16667 16740 16741 16668 20664 20737 20738 20665 +16668 16741 16742 16669 20665 20738 20739 20666 +16669 16742 16743 16670 20666 20739 20740 20667 +16670 16743 16744 16671 20667 20740 20741 20668 +16671 16744 16745 16672 20668 20741 20742 20669 +16672 16745 16746 16673 20669 20742 20743 20670 +16673 16746 16747 16674 20670 20743 20744 20671 +16674 16747 16748 16675 20671 20744 20745 20672 +16675 16748 16749 16676 20672 20745 20746 20673 +16676 16749 16750 16677 20673 20746 20747 20674 +16677 16750 16751 16678 20674 20747 20748 20675 +16678 16751 16752 16679 20675 20748 20749 20676 +16679 16752 16753 16680 20676 20749 20750 20677 +16680 16753 16754 16681 20677 20750 20751 20678 +16681 16754 16755 16682 20678 20751 20752 20679 +16682 16755 16756 16683 20679 20752 20753 20680 +16683 16756 16757 16684 20680 20753 20754 20681 +16684 16757 16758 16685 20681 20754 20755 20682 +16685 16758 16759 16686 20682 20755 20756 20683 +16686 16759 16760 16687 20683 20756 20757 20684 +16687 16760 16761 16688 20684 20757 20758 20685 +16688 16761 16762 16689 20685 20758 20759 20686 +16689 16762 16763 16690 20686 20759 20760 20687 +16690 16763 16764 16691 20687 20760 20761 20688 +16691 16764 16765 16692 20688 20761 20762 20689 +16692 16765 16766 16693 20689 20762 20763 20690 +16693 16766 16767 16694 20690 20763 20764 20691 +16694 16767 16768 16695 20691 20764 20765 20692 +16695 16768 16769 16696 20692 20765 20766 20693 +16696 16769 16770 16697 20693 20766 20767 20694 +16697 16770 16771 16698 20694 20767 20768 20695 +16698 16771 16772 16699 20695 20768 20769 20696 +16699 16772 16773 16700 20696 20769 20770 20697 +16700 16773 16774 16701 20697 20770 20771 20698 +16701 16774 16775 16702 20698 20771 20772 20699 +16702 16775 16776 16703 20699 20772 20773 20700 +16703 16776 16777 16704 20700 20773 20774 20701 +16704 16777 16778 16705 20701 20774 20775 20702 +16706 16779 16780 16707 20703 20776 20777 20704 +16707 16780 16781 16708 20704 20777 20778 20705 +16708 16781 16782 16709 20705 20778 20779 20706 +16709 16782 16783 16710 20706 20779 20780 20707 +16710 16783 16784 16711 20707 20780 20781 20708 +16711 16784 16785 16712 20708 20781 20782 20709 +16712 16785 16786 16713 20709 20782 20783 20710 +16713 16786 16787 16714 20710 20783 20784 20711 +16714 16787 16788 16715 20711 20784 20785 20712 +16715 16788 16789 16716 20712 20785 20786 20713 +16716 16789 16790 16717 20713 20786 20787 20714 +16717 16790 16791 16718 20714 20787 20788 20715 +16718 16791 16792 16719 20715 20788 20789 20716 +16719 16792 16793 16720 20716 20789 20790 20717 +16720 16793 16794 16721 20717 20790 20791 20718 +16721 16794 16795 16722 20718 20791 20792 20719 +16722 16795 16796 16723 20719 20792 20793 20720 +16723 16796 16797 16724 20720 20793 20794 20721 +16724 16797 16798 16725 20721 20794 20795 20722 +16725 16798 16799 16726 20722 20795 20796 20723 +16726 16799 16800 16727 20723 20796 20797 20724 +16727 16800 16801 16728 20724 20797 20798 20725 +16728 16801 16802 16729 20725 20798 20799 20726 +16729 16802 16803 16730 20726 20799 20800 20727 +16730 16803 16804 16731 20727 20800 20801 20728 +16731 16804 16805 16732 20728 20801 20802 20729 +16732 16805 16806 16733 20729 20802 20803 20730 +16733 16806 16807 16734 20730 20803 20804 20731 +16734 16807 16808 16735 20731 20804 20805 20732 +16735 16808 16809 16736 20732 20805 20806 20733 +16736 16809 16810 16737 20733 20806 20807 20734 +16737 16810 16811 16738 20734 20807 20808 20735 +16738 16811 16812 16739 20735 20808 20809 20736 +16739 16812 16813 16740 20736 20809 20810 20737 +16740 16813 16814 16741 20737 20810 20811 20738 +16741 16814 16815 16742 20738 20811 20812 20739 +16742 16815 16816 16743 20739 20812 20813 20740 +16743 16816 16817 16744 20740 20813 20814 20741 +16744 16817 16818 16745 20741 20814 20815 20742 +16745 16818 16819 16746 20742 20815 20816 20743 +16746 16819 16820 16747 20743 20816 20817 20744 +16747 16820 16821 16748 20744 20817 20818 20745 +16748 16821 16822 16749 20745 20818 20819 20746 +16749 16822 16823 16750 20746 20819 20820 20747 +16750 16823 16824 16751 20747 20820 20821 20748 +16751 16824 16825 16752 20748 20821 20822 20749 +16752 16825 16826 16753 20749 20822 20823 20750 +16753 16826 16827 16754 20750 20823 20824 20751 +16754 16827 16828 16755 20751 20824 20825 20752 +16755 16828 16829 16756 20752 20825 20826 20753 +16756 16829 16830 16757 20753 20826 20827 20754 +16757 16830 16831 16758 20754 20827 20828 20755 +16758 16831 16832 16759 20755 20828 20829 20756 +16759 16832 16833 16760 20756 20829 20830 20757 +16760 16833 16834 16761 20757 20830 20831 20758 +16761 16834 16835 16762 20758 20831 20832 20759 +16762 16835 16836 16763 20759 20832 20833 20760 +16763 16836 16837 16764 20760 20833 20834 20761 +16764 16837 16838 16765 20761 20834 20835 20762 +16765 16838 16839 16766 20762 20835 20836 20763 +16766 16839 16840 16767 20763 20836 20837 20764 +16767 16840 16841 16768 20764 20837 20838 20765 +16768 16841 16842 16769 20765 20838 20839 20766 +16769 16842 16843 16770 20766 20839 20840 20767 +16770 16843 16844 16771 20767 20840 20841 20768 +16771 16844 16845 16772 20768 20841 20842 20769 +16772 16845 16846 16773 20769 20842 20843 20770 +16773 16846 16847 16774 20770 20843 20844 20771 +16774 16847 16848 16775 20771 20844 20845 20772 +16775 16848 16849 16776 20772 20845 20846 20773 +16776 16849 16850 16777 20773 20846 20847 20774 +16777 16850 16851 16778 20774 20847 20848 20775 +16779 16852 16853 16780 20776 20849 20850 20777 +16780 16853 16854 16781 20777 20850 20851 20778 +16781 16854 16855 16782 20778 20851 20852 20779 +16782 16855 16856 16783 20779 20852 20853 20780 +16783 16856 16857 16784 20780 20853 20854 20781 +16784 16857 16858 16785 20781 20854 20855 20782 +16785 16858 16859 16786 20782 20855 20856 20783 +16786 16859 16860 16787 20783 20856 20857 20784 +16787 16860 16861 16788 20784 20857 20858 20785 +16788 16861 16862 16789 20785 20858 20859 20786 +16789 16862 16863 16790 20786 20859 20860 20787 +16790 16863 16864 16791 20787 20860 20861 20788 +16791 16864 16865 16792 20788 20861 20862 20789 +16792 16865 16866 16793 20789 20862 20863 20790 +16793 16866 16867 16794 20790 20863 20864 20791 +16794 16867 16868 16795 20791 20864 20865 20792 +16795 16868 16869 16796 20792 20865 20866 20793 +16796 16869 16870 16797 20793 20866 20867 20794 +16797 16870 16871 16798 20794 20867 20868 20795 +16798 16871 16872 16799 20795 20868 20869 20796 +16799 16872 16873 16800 20796 20869 20870 20797 +16800 16873 16874 16801 20797 20870 20871 20798 +16801 16874 16875 16802 20798 20871 20872 20799 +16802 16875 16876 16803 20799 20872 20873 20800 +16803 16876 16877 16804 20800 20873 20874 20801 +16804 16877 16878 16805 20801 20874 20875 20802 +16805 16878 16879 16806 20802 20875 20876 20803 +16806 16879 16880 16807 20803 20876 20877 20804 +16807 16880 16881 16808 20804 20877 20878 20805 +16808 16881 16882 16809 20805 20878 20879 20806 +16809 16882 16883 16810 20806 20879 20880 20807 +16810 16883 16884 16811 20807 20880 20881 20808 +16811 16884 16885 16812 20808 20881 20882 20809 +16812 16885 16886 16813 20809 20882 20883 20810 +16813 16886 16887 16814 20810 20883 20884 20811 +16814 16887 16888 16815 20811 20884 20885 20812 +16815 16888 16889 16816 20812 20885 20886 20813 +16816 16889 16890 16817 20813 20886 20887 20814 +16817 16890 16891 16818 20814 20887 20888 20815 +16818 16891 16892 16819 20815 20888 20889 20816 +16819 16892 16893 16820 20816 20889 20890 20817 +16820 16893 16894 16821 20817 20890 20891 20818 +16821 16894 16895 16822 20818 20891 20892 20819 +16822 16895 16896 16823 20819 20892 20893 20820 +16823 16896 16897 16824 20820 20893 20894 20821 +16824 16897 16898 16825 20821 20894 20895 20822 +16825 16898 16899 16826 20822 20895 20896 20823 +16826 16899 16900 16827 20823 20896 20897 20824 +16827 16900 16901 16828 20824 20897 20898 20825 +16828 16901 16902 16829 20825 20898 20899 20826 +16829 16902 16903 16830 20826 20899 20900 20827 +16830 16903 16904 16831 20827 20900 20901 20828 +16831 16904 16905 16832 20828 20901 20902 20829 +16832 16905 16906 16833 20829 20902 20903 20830 +16833 16906 16907 16834 20830 20903 20904 20831 +16834 16907 16908 16835 20831 20904 20905 20832 +16835 16908 16909 16836 20832 20905 20906 20833 +16836 16909 16910 16837 20833 20906 20907 20834 +16837 16910 16911 16838 20834 20907 20908 20835 +16838 16911 16912 16839 20835 20908 20909 20836 +16839 16912 16913 16840 20836 20909 20910 20837 +16840 16913 16914 16841 20837 20910 20911 20838 +16841 16914 16915 16842 20838 20911 20912 20839 +16842 16915 16916 16843 20839 20912 20913 20840 +16843 16916 16917 16844 20840 20913 20914 20841 +16844 16917 16918 16845 20841 20914 20915 20842 +16845 16918 16919 16846 20842 20915 20916 20843 +16846 16919 16920 16847 20843 20916 20917 20844 +16847 16920 16921 16848 20844 20917 20918 20845 +16848 16921 16922 16849 20845 20918 20919 20846 +16849 16922 16923 16850 20846 20919 20920 20847 +16850 16923 16924 16851 20847 20920 20921 20848 +16852 16925 16926 16853 20849 20922 20923 20850 +16853 16926 16927 16854 20850 20923 20924 20851 +16854 16927 16928 16855 20851 20924 20925 20852 +16855 16928 16929 16856 20852 20925 20926 20853 +16856 16929 16930 16857 20853 20926 20927 20854 +16857 16930 16931 16858 20854 20927 20928 20855 +16858 16931 16932 16859 20855 20928 20929 20856 +16859 16932 16933 16860 20856 20929 20930 20857 +16860 16933 16934 16861 20857 20930 20931 20858 +16861 16934 16935 16862 20858 20931 20932 20859 +16862 16935 16936 16863 20859 20932 20933 20860 +16863 16936 16937 16864 20860 20933 20934 20861 +16864 16937 16938 16865 20861 20934 20935 20862 +16865 16938 16939 16866 20862 20935 20936 20863 +16866 16939 16940 16867 20863 20936 20937 20864 +16867 16940 16941 16868 20864 20937 20938 20865 +16868 16941 16942 16869 20865 20938 20939 20866 +16869 16942 16943 16870 20866 20939 20940 20867 +16870 16943 16944 16871 20867 20940 20941 20868 +16871 16944 16945 16872 20868 20941 20942 20869 +16872 16945 16946 16873 20869 20942 20943 20870 +16873 16946 16947 16874 20870 20943 20944 20871 +16874 16947 16948 16875 20871 20944 20945 20872 +16875 16948 16949 16876 20872 20945 20946 20873 +16876 16949 16950 16877 20873 20946 20947 20874 +16877 16950 16951 16878 20874 20947 20948 20875 +16878 16951 16952 16879 20875 20948 20949 20876 +16879 16952 16953 16880 20876 20949 20950 20877 +16880 16953 16954 16881 20877 20950 20951 20878 +16881 16954 16955 16882 20878 20951 20952 20879 +16882 16955 16956 16883 20879 20952 20953 20880 +16883 16956 16957 16884 20880 20953 20954 20881 +16884 16957 16958 16885 20881 20954 20955 20882 +16885 16958 16959 16886 20882 20955 20956 20883 +16886 16959 16960 16887 20883 20956 20957 20884 +16887 16960 16961 16888 20884 20957 20958 20885 +16888 16961 16962 16889 20885 20958 20959 20886 +16889 16962 16963 16890 20886 20959 20960 20887 +16890 16963 16964 16891 20887 20960 20961 20888 +16891 16964 16965 16892 20888 20961 20962 20889 +16892 16965 16966 16893 20889 20962 20963 20890 +16893 16966 16967 16894 20890 20963 20964 20891 +16894 16967 16968 16895 20891 20964 20965 20892 +16895 16968 16969 16896 20892 20965 20966 20893 +16896 16969 16970 16897 20893 20966 20967 20894 +16897 16970 16971 16898 20894 20967 20968 20895 +16898 16971 16972 16899 20895 20968 20969 20896 +16899 16972 16973 16900 20896 20969 20970 20897 +16900 16973 16974 16901 20897 20970 20971 20898 +16901 16974 16975 16902 20898 20971 20972 20899 +16902 16975 16976 16903 20899 20972 20973 20900 +16903 16976 16977 16904 20900 20973 20974 20901 +16904 16977 16978 16905 20901 20974 20975 20902 +16905 16978 16979 16906 20902 20975 20976 20903 +16906 16979 16980 16907 20903 20976 20977 20904 +16907 16980 16981 16908 20904 20977 20978 20905 +16908 16981 16982 16909 20905 20978 20979 20906 +16909 16982 16983 16910 20906 20979 20980 20907 +16910 16983 16984 16911 20907 20980 20981 20908 +16911 16984 16985 16912 20908 20981 20982 20909 +16912 16985 16986 16913 20909 20982 20983 20910 +16913 16986 16987 16914 20910 20983 20984 20911 +16914 16987 16988 16915 20911 20984 20985 20912 +16915 16988 16989 16916 20912 20985 20986 20913 +16916 16989 16990 16917 20913 20986 20987 20914 +16917 16990 16991 16918 20914 20987 20988 20915 +16918 16991 16992 16919 20915 20988 20989 20916 +16919 16992 16993 16920 20916 20989 20990 20917 +16920 16993 16994 16921 20917 20990 20991 20918 +16921 16994 16995 16922 20918 20991 20992 20919 +16922 16995 16996 16923 20919 20992 20993 20920 +16923 16996 16997 16924 20920 20993 20994 20921 +16925 16998 16999 16926 20922 20995 20996 20923 +16926 16999 17000 16927 20923 20996 20997 20924 +16927 17000 17001 16928 20924 20997 20998 20925 +16928 17001 17002 16929 20925 20998 20999 20926 +16929 17002 17003 16930 20926 20999 21000 20927 +16930 17003 17004 16931 20927 21000 21001 20928 +16931 17004 17005 16932 20928 21001 21002 20929 +16932 17005 17006 16933 20929 21002 21003 20930 +16933 17006 17007 16934 20930 21003 21004 20931 +16934 17007 17008 16935 20931 21004 21005 20932 +16935 17008 17009 16936 20932 21005 21006 20933 +16936 17009 17010 16937 20933 21006 21007 20934 +16937 17010 17011 16938 20934 21007 21008 20935 +16938 17011 17012 16939 20935 21008 21009 20936 +16939 17012 17013 16940 20936 21009 21010 20937 +16940 17013 17014 16941 20937 21010 21011 20938 +16941 17014 17015 16942 20938 21011 21012 20939 +16942 17015 17016 16943 20939 21012 21013 20940 +16943 17016 17017 16944 20940 21013 21014 20941 +16944 17017 17018 16945 20941 21014 21015 20942 +16945 17018 17019 16946 20942 21015 21016 20943 +16946 17019 17020 16947 20943 21016 21017 20944 +16947 17020 17021 16948 20944 21017 21018 20945 +16948 17021 17022 16949 20945 21018 21019 20946 +16949 17022 17023 16950 20946 21019 21020 20947 +16950 17023 17024 16951 20947 21020 21021 20948 +16951 17024 17025 16952 20948 21021 21022 20949 +16952 17025 17026 16953 20949 21022 21023 20950 +16953 17026 17027 16954 20950 21023 21024 20951 +16954 17027 17028 16955 20951 21024 21025 20952 +16955 17028 17029 16956 20952 21025 21026 20953 +16956 17029 17030 16957 20953 21026 21027 20954 +16957 17030 17031 16958 20954 21027 21028 20955 +16958 17031 17032 16959 20955 21028 21029 20956 +16959 17032 17033 16960 20956 21029 21030 20957 +16960 17033 17034 16961 20957 21030 21031 20958 +16961 17034 17035 16962 20958 21031 21032 20959 +16962 17035 17036 16963 20959 21032 21033 20960 +16963 17036 17037 16964 20960 21033 21034 20961 +16964 17037 17038 16965 20961 21034 21035 20962 +16965 17038 17039 16966 20962 21035 21036 20963 +16966 17039 17040 16967 20963 21036 21037 20964 +16967 17040 17041 16968 20964 21037 21038 20965 +16968 17041 17042 16969 20965 21038 21039 20966 +16969 17042 17043 16970 20966 21039 21040 20967 +16970 17043 17044 16971 20967 21040 21041 20968 +16971 17044 17045 16972 20968 21041 21042 20969 +16972 17045 17046 16973 20969 21042 21043 20970 +16973 17046 17047 16974 20970 21043 21044 20971 +16974 17047 17048 16975 20971 21044 21045 20972 +16975 17048 17049 16976 20972 21045 21046 20973 +16976 17049 17050 16977 20973 21046 21047 20974 +16977 17050 17051 16978 20974 21047 21048 20975 +16978 17051 17052 16979 20975 21048 21049 20976 +16979 17052 17053 16980 20976 21049 21050 20977 +16980 17053 17054 16981 20977 21050 21051 20978 +16981 17054 17055 16982 20978 21051 21052 20979 +16982 17055 17056 16983 20979 21052 21053 20980 +16983 17056 17057 16984 20980 21053 21054 20981 +16984 17057 17058 16985 20981 21054 21055 20982 +16985 17058 17059 16986 20982 21055 21056 20983 +16986 17059 17060 16987 20983 21056 21057 20984 +16987 17060 17061 16988 20984 21057 21058 20985 +16988 17061 17062 16989 20985 21058 21059 20986 +16989 17062 17063 16990 20986 21059 21060 20987 +16990 17063 17064 16991 20987 21060 21061 20988 +16991 17064 17065 16992 20988 21061 21062 20989 +16992 17065 17066 16993 20989 21062 21063 20990 +16993 17066 17067 16994 20990 21063 21064 20991 +16994 17067 17068 16995 20991 21064 21065 20992 +16995 17068 17069 16996 20992 21065 21066 20993 +16996 17069 17070 16997 20993 21066 21067 20994 +16998 17071 17072 16999 20995 21068 21069 20996 +16999 17072 17073 17000 20996 21069 21070 20997 +17000 17073 17074 17001 20997 21070 21071 20998 +17001 17074 17075 17002 20998 21071 21072 20999 +17002 17075 17076 17003 20999 21072 21073 21000 +17003 17076 17077 17004 21000 21073 21074 21001 +17004 17077 17078 17005 21001 21074 21075 21002 +17005 17078 17079 17006 21002 21075 21076 21003 +17006 17079 17080 17007 21003 21076 21077 21004 +17007 17080 17081 17008 21004 21077 21078 21005 +17008 17081 17082 17009 21005 21078 21079 21006 +17009 17082 17083 17010 21006 21079 21080 21007 +17010 17083 17084 17011 21007 21080 21081 21008 +17011 17084 17085 17012 21008 21081 21082 21009 +17012 17085 17086 17013 21009 21082 21083 21010 +17013 17086 17087 17014 21010 21083 21084 21011 +17014 17087 17088 17015 21011 21084 21085 21012 +17015 17088 17089 17016 21012 21085 21086 21013 +17016 17089 17090 17017 21013 21086 21087 21014 +17017 17090 17091 17018 21014 21087 21088 21015 +17018 17091 17092 17019 21015 21088 21089 21016 +17019 17092 17093 17020 21016 21089 21090 21017 +17020 17093 17094 17021 21017 21090 21091 21018 +17021 17094 17095 17022 21018 21091 21092 21019 +17022 17095 17096 17023 21019 21092 21093 21020 +17023 17096 17097 17024 21020 21093 21094 21021 +17024 17097 17098 17025 21021 21094 21095 21022 +17025 17098 17099 17026 21022 21095 21096 21023 +17026 17099 17100 17027 21023 21096 21097 21024 +17027 17100 17101 17028 21024 21097 21098 21025 +17028 17101 17102 17029 21025 21098 21099 21026 +17029 17102 17103 17030 21026 21099 21100 21027 +17030 17103 17104 17031 21027 21100 21101 21028 +17031 17104 17105 17032 21028 21101 21102 21029 +17032 17105 17106 17033 21029 21102 21103 21030 +17033 17106 17107 17034 21030 21103 21104 21031 +17034 17107 17108 17035 21031 21104 21105 21032 +17035 17108 17109 17036 21032 21105 21106 21033 +17036 17109 17110 17037 21033 21106 21107 21034 +17037 17110 17111 17038 21034 21107 21108 21035 +17038 17111 17112 17039 21035 21108 21109 21036 +17039 17112 17113 17040 21036 21109 21110 21037 +17040 17113 17114 17041 21037 21110 21111 21038 +17041 17114 17115 17042 21038 21111 21112 21039 +17042 17115 17116 17043 21039 21112 21113 21040 +17043 17116 17117 17044 21040 21113 21114 21041 +17044 17117 17118 17045 21041 21114 21115 21042 +17045 17118 17119 17046 21042 21115 21116 21043 +17046 17119 17120 17047 21043 21116 21117 21044 +17047 17120 17121 17048 21044 21117 21118 21045 +17048 17121 17122 17049 21045 21118 21119 21046 +17049 17122 17123 17050 21046 21119 21120 21047 +17050 17123 17124 17051 21047 21120 21121 21048 +17051 17124 17125 17052 21048 21121 21122 21049 +17052 17125 17126 17053 21049 21122 21123 21050 +17053 17126 17127 17054 21050 21123 21124 21051 +17054 17127 17128 17055 21051 21124 21125 21052 +17055 17128 17129 17056 21052 21125 21126 21053 +17056 17129 17130 17057 21053 21126 21127 21054 +17057 17130 17131 17058 21054 21127 21128 21055 +17058 17131 17132 17059 21055 21128 21129 21056 +17059 17132 17133 17060 21056 21129 21130 21057 +17060 17133 17134 17061 21057 21130 21131 21058 +17061 17134 17135 17062 21058 21131 21132 21059 +17062 17135 17136 17063 21059 21132 21133 21060 +17063 17136 17137 17064 21060 21133 21134 21061 +17064 17137 17138 17065 21061 21134 21135 21062 +17065 17138 17139 17066 21062 21135 21136 21063 +17066 17139 17140 17067 21063 21136 21137 21064 +17067 17140 17141 17068 21064 21137 21138 21065 +17068 17141 17142 17069 21065 21138 21139 21066 +17069 17142 17143 17070 21066 21139 21140 21067 +17071 17144 17145 17072 21068 21141 21142 21069 +17072 17145 17146 17073 21069 21142 21143 21070 +17073 17146 17147 17074 21070 21143 21144 21071 +17074 17147 17148 17075 21071 21144 21145 21072 +17075 17148 17149 17076 21072 21145 21146 21073 +17076 17149 17150 17077 21073 21146 21147 21074 +17077 17150 17151 17078 21074 21147 21148 21075 +17078 17151 17152 17079 21075 21148 21149 21076 +17079 17152 17153 17080 21076 21149 21150 21077 +17080 17153 17154 17081 21077 21150 21151 21078 +17081 17154 17155 17082 21078 21151 21152 21079 +17082 17155 17156 17083 21079 21152 21153 21080 +17083 17156 17157 17084 21080 21153 21154 21081 +17084 17157 17158 17085 21081 21154 21155 21082 +17085 17158 17159 17086 21082 21155 21156 21083 +17086 17159 17160 17087 21083 21156 21157 21084 +17087 17160 17161 17088 21084 21157 21158 21085 +17088 17161 17162 17089 21085 21158 21159 21086 +17089 17162 17163 17090 21086 21159 21160 21087 +17090 17163 17164 17091 21087 21160 21161 21088 +17091 17164 17165 17092 21088 21161 21162 21089 +17092 17165 17166 17093 21089 21162 21163 21090 +17093 17166 17167 17094 21090 21163 21164 21091 +17094 17167 17168 17095 21091 21164 21165 21092 +17095 17168 17169 17096 21092 21165 21166 21093 +17096 17169 17170 17097 21093 21166 21167 21094 +17097 17170 17171 17098 21094 21167 21168 21095 +17098 17171 17172 17099 21095 21168 21169 21096 +17099 17172 17173 17100 21096 21169 21170 21097 +17100 17173 17174 17101 21097 21170 21171 21098 +17101 17174 17175 17102 21098 21171 21172 21099 +17102 17175 17176 17103 21099 21172 21173 21100 +17103 17176 17177 17104 21100 21173 21174 21101 +17104 17177 17178 17105 21101 21174 21175 21102 +17105 17178 17179 17106 21102 21175 21176 21103 +17106 17179 17180 17107 21103 21176 21177 21104 +17107 17180 17181 17108 21104 21177 21178 21105 +17108 17181 17182 17109 21105 21178 21179 21106 +17109 17182 17183 17110 21106 21179 21180 21107 +17110 17183 17184 17111 21107 21180 21181 21108 +17111 17184 17185 17112 21108 21181 21182 21109 +17112 17185 17186 17113 21109 21182 21183 21110 +17113 17186 17187 17114 21110 21183 21184 21111 +17114 17187 17188 17115 21111 21184 21185 21112 +17115 17188 17189 17116 21112 21185 21186 21113 +17116 17189 17190 17117 21113 21186 21187 21114 +17117 17190 17191 17118 21114 21187 21188 21115 +17118 17191 17192 17119 21115 21188 21189 21116 +17119 17192 17193 17120 21116 21189 21190 21117 +17120 17193 17194 17121 21117 21190 21191 21118 +17121 17194 17195 17122 21118 21191 21192 21119 +17122 17195 17196 17123 21119 21192 21193 21120 +17123 17196 17197 17124 21120 21193 21194 21121 +17124 17197 17198 17125 21121 21194 21195 21122 +17125 17198 17199 17126 21122 21195 21196 21123 +17126 17199 17200 17127 21123 21196 21197 21124 +17127 17200 17201 17128 21124 21197 21198 21125 +17128 17201 17202 17129 21125 21198 21199 21126 +17129 17202 17203 17130 21126 21199 21200 21127 +17130 17203 17204 17131 21127 21200 21201 21128 +17131 17204 17205 17132 21128 21201 21202 21129 +17132 17205 17206 17133 21129 21202 21203 21130 +17133 17206 17207 17134 21130 21203 21204 21131 +17134 17207 17208 17135 21131 21204 21205 21132 +17135 17208 17209 17136 21132 21205 21206 21133 +17136 17209 17210 17137 21133 21206 21207 21134 +17137 17210 17211 17138 21134 21207 21208 21135 +17138 17211 17212 17139 21135 21208 21209 21136 +17139 17212 17213 17140 21136 21209 21210 21137 +17140 17213 17214 17141 21137 21210 21211 21138 +17141 17214 17215 17142 21138 21211 21212 21139 +17142 17215 17216 17143 21139 21212 21213 21140 +17144 17217 17218 17145 21141 21214 21215 21142 +17145 17218 17219 17146 21142 21215 21216 21143 +17146 17219 17220 17147 21143 21216 21217 21144 +17147 17220 17221 17148 21144 21217 21218 21145 +17148 17221 17222 17149 21145 21218 21219 21146 +17149 17222 17223 17150 21146 21219 21220 21147 +17150 17223 17224 17151 21147 21220 21221 21148 +17151 17224 17225 17152 21148 21221 21222 21149 +17152 17225 17226 17153 21149 21222 21223 21150 +17153 17226 17227 17154 21150 21223 21224 21151 +17154 17227 17228 17155 21151 21224 21225 21152 +17155 17228 17229 17156 21152 21225 21226 21153 +17156 17229 17230 17157 21153 21226 21227 21154 +17157 17230 17231 17158 21154 21227 21228 21155 +17158 17231 17232 17159 21155 21228 21229 21156 +17159 17232 17233 17160 21156 21229 21230 21157 +17160 17233 17234 17161 21157 21230 21231 21158 +17161 17234 17235 17162 21158 21231 21232 21159 +17162 17235 17236 17163 21159 21232 21233 21160 +17163 17236 17237 17164 21160 21233 21234 21161 +17164 17237 17238 17165 21161 21234 21235 21162 +17165 17238 17239 17166 21162 21235 21236 21163 +17166 17239 17240 17167 21163 21236 21237 21164 +17167 17240 17241 17168 21164 21237 21238 21165 +17168 17241 17242 17169 21165 21238 21239 21166 +17169 17242 17243 17170 21166 21239 21240 21167 +17170 17243 17244 17171 21167 21240 21241 21168 +17171 17244 17245 17172 21168 21241 21242 21169 +17172 17245 17246 17173 21169 21242 21243 21170 +17173 17246 17247 17174 21170 21243 21244 21171 +17174 17247 17248 17175 21171 21244 21245 21172 +17175 17248 17249 17176 21172 21245 21246 21173 +17176 17249 17250 17177 21173 21246 21247 21174 +17177 17250 17251 17178 21174 21247 21248 21175 +17178 17251 17252 17179 21175 21248 21249 21176 +17179 17252 17253 17180 21176 21249 21250 21177 +17180 17253 17254 17181 21177 21250 21251 21178 +17181 17254 17255 17182 21178 21251 21252 21179 +17182 17255 17256 17183 21179 21252 21253 21180 +17183 17256 17257 17184 21180 21253 21254 21181 +17184 17257 17258 17185 21181 21254 21255 21182 +17185 17258 17259 17186 21182 21255 21256 21183 +17186 17259 17260 17187 21183 21256 21257 21184 +17187 17260 17261 17188 21184 21257 21258 21185 +17188 17261 17262 17189 21185 21258 21259 21186 +17189 17262 17263 17190 21186 21259 21260 21187 +17190 17263 17264 17191 21187 21260 21261 21188 +17191 17264 17265 17192 21188 21261 21262 21189 +17192 17265 17266 17193 21189 21262 21263 21190 +17193 17266 17267 17194 21190 21263 21264 21191 +17194 17267 17268 17195 21191 21264 21265 21192 +17195 17268 17269 17196 21192 21265 21266 21193 +17196 17269 17270 17197 21193 21266 21267 21194 +17197 17270 17271 17198 21194 21267 21268 21195 +17198 17271 17272 17199 21195 21268 21269 21196 +17199 17272 17273 17200 21196 21269 21270 21197 +17200 17273 17274 17201 21197 21270 21271 21198 +17201 17274 17275 17202 21198 21271 21272 21199 +17202 17275 17276 17203 21199 21272 21273 21200 +17203 17276 17277 17204 21200 21273 21274 21201 +17204 17277 17278 17205 21201 21274 21275 21202 +17205 17278 17279 17206 21202 21275 21276 21203 +17206 17279 17280 17207 21203 21276 21277 21204 +17207 17280 17281 17208 21204 21277 21278 21205 +17208 17281 17282 17209 21205 21278 21279 21206 +17209 17282 17283 17210 21206 21279 21280 21207 +17210 17283 17284 17211 21207 21280 21281 21208 +17211 17284 17285 17212 21208 21281 21282 21209 +17212 17285 17286 17213 21209 21282 21283 21210 +17213 17286 17287 17214 21210 21283 21284 21211 +17214 17287 17288 17215 21211 21284 21285 21212 +17215 17288 17289 17216 21212 21285 21286 21213 +17217 17290 17291 17218 21214 21287 21288 21215 +17218 17291 17292 17219 21215 21288 21289 21216 +17219 17292 17293 17220 21216 21289 21290 21217 +17220 17293 17294 17221 21217 21290 21291 21218 +17221 17294 17295 17222 21218 21291 21292 21219 +17222 17295 17296 17223 21219 21292 21293 21220 +17223 17296 17297 17224 21220 21293 21294 21221 +17224 17297 17298 17225 21221 21294 21295 21222 +17225 17298 17299 17226 21222 21295 21296 21223 +17226 17299 17300 17227 21223 21296 21297 21224 +17227 17300 17301 17228 21224 21297 21298 21225 +17228 17301 17302 17229 21225 21298 21299 21226 +17229 17302 17303 17230 21226 21299 21300 21227 +17230 17303 17304 17231 21227 21300 21301 21228 +17231 17304 17305 17232 21228 21301 21302 21229 +17232 17305 17306 17233 21229 21302 21303 21230 +17233 17306 17307 17234 21230 21303 21304 21231 +17234 17307 17308 17235 21231 21304 21305 21232 +17235 17308 17309 17236 21232 21305 21306 21233 +17236 17309 17310 17237 21233 21306 21307 21234 +17237 17310 17311 17238 21234 21307 21308 21235 +17238 17311 17312 17239 21235 21308 21309 21236 +17239 17312 17313 17240 21236 21309 21310 21237 +17240 17313 17314 17241 21237 21310 21311 21238 +17241 17314 17315 17242 21238 21311 21312 21239 +17242 17315 17316 17243 21239 21312 21313 21240 +17243 17316 17317 17244 21240 21313 21314 21241 +17244 17317 17318 17245 21241 21314 21315 21242 +17245 17318 17319 17246 21242 21315 21316 21243 +17246 17319 17320 17247 21243 21316 21317 21244 +17247 17320 17321 17248 21244 21317 21318 21245 +17248 17321 17322 17249 21245 21318 21319 21246 +17249 17322 17323 17250 21246 21319 21320 21247 +17250 17323 17324 17251 21247 21320 21321 21248 +17251 17324 17325 17252 21248 21321 21322 21249 +17252 17325 17326 17253 21249 21322 21323 21250 +17253 17326 17327 17254 21250 21323 21324 21251 +17254 17327 17328 17255 21251 21324 21325 21252 +17255 17328 17329 17256 21252 21325 21326 21253 +17256 17329 17330 17257 21253 21326 21327 21254 +17257 17330 17331 17258 21254 21327 21328 21255 +17258 17331 17332 17259 21255 21328 21329 21256 +17259 17332 17333 17260 21256 21329 21330 21257 +17260 17333 17334 17261 21257 21330 21331 21258 +17261 17334 17335 17262 21258 21331 21332 21259 +17262 17335 17336 17263 21259 21332 21333 21260 +17263 17336 17337 17264 21260 21333 21334 21261 +17264 17337 17338 17265 21261 21334 21335 21262 +17265 17338 17339 17266 21262 21335 21336 21263 +17266 17339 17340 17267 21263 21336 21337 21264 +17267 17340 17341 17268 21264 21337 21338 21265 +17268 17341 17342 17269 21265 21338 21339 21266 +17269 17342 17343 17270 21266 21339 21340 21267 +17270 17343 17344 17271 21267 21340 21341 21268 +17271 17344 17345 17272 21268 21341 21342 21269 +17272 17345 17346 17273 21269 21342 21343 21270 +17273 17346 17347 17274 21270 21343 21344 21271 +17274 17347 17348 17275 21271 21344 21345 21272 +17275 17348 17349 17276 21272 21345 21346 21273 +17276 17349 17350 17277 21273 21346 21347 21274 +17277 17350 17351 17278 21274 21347 21348 21275 +17278 17351 17352 17279 21275 21348 21349 21276 +17279 17352 17353 17280 21276 21349 21350 21277 +17280 17353 17354 17281 21277 21350 21351 21278 +17281 17354 17355 17282 21278 21351 21352 21279 +17282 17355 17356 17283 21279 21352 21353 21280 +17283 17356 17357 17284 21280 21353 21354 21281 +17284 17357 17358 17285 21281 21354 21355 21282 +17285 17358 17359 17286 21282 21355 21356 21283 +17286 17359 17360 17287 21283 21356 21357 21284 +17287 17360 17361 17288 21284 21357 21358 21285 +17288 17361 17362 17289 21285 21358 21359 21286 +17290 17363 17364 17291 21287 21360 21361 21288 +17291 17364 17365 17292 21288 21361 21362 21289 +17292 17365 17366 17293 21289 21362 21363 21290 +17293 17366 17367 17294 21290 21363 21364 21291 +17294 17367 17368 17295 21291 21364 21365 21292 +17295 17368 17369 17296 21292 21365 21366 21293 +17296 17369 17370 17297 21293 21366 21367 21294 +17297 17370 17371 17298 21294 21367 21368 21295 +17298 17371 17372 17299 21295 21368 21369 21296 +17299 17372 17373 17300 21296 21369 21370 21297 +17300 17373 17374 17301 21297 21370 21371 21298 +17301 17374 17375 17302 21298 21371 21372 21299 +17302 17375 17376 17303 21299 21372 21373 21300 +17303 17376 17377 17304 21300 21373 21374 21301 +17304 17377 17378 17305 21301 21374 21375 21302 +17305 17378 17379 17306 21302 21375 21376 21303 +17306 17379 17380 17307 21303 21376 21377 21304 +17307 17380 17381 17308 21304 21377 21378 21305 +17308 17381 17382 17309 21305 21378 21379 21306 +17309 17382 17383 17310 21306 21379 21380 21307 +17310 17383 17384 17311 21307 21380 21381 21308 +17311 17384 17385 17312 21308 21381 21382 21309 +17312 17385 17386 17313 21309 21382 21383 21310 +17313 17386 17387 17314 21310 21383 21384 21311 +17314 17387 17388 17315 21311 21384 21385 21312 +17315 17388 17389 17316 21312 21385 21386 21313 +17316 17389 17390 17317 21313 21386 21387 21314 +17317 17390 17391 17318 21314 21387 21388 21315 +17318 17391 17392 17319 21315 21388 21389 21316 +17319 17392 17393 17320 21316 21389 21390 21317 +17320 17393 17394 17321 21317 21390 21391 21318 +17321 17394 17395 17322 21318 21391 21392 21319 +17322 17395 17396 17323 21319 21392 21393 21320 +17323 17396 17397 17324 21320 21393 21394 21321 +17324 17397 17398 17325 21321 21394 21395 21322 +17325 17398 17399 17326 21322 21395 21396 21323 +17326 17399 17400 17327 21323 21396 21397 21324 +17327 17400 17401 17328 21324 21397 21398 21325 +17328 17401 17402 17329 21325 21398 21399 21326 +17329 17402 17403 17330 21326 21399 21400 21327 +17330 17403 17404 17331 21327 21400 21401 21328 +17331 17404 17405 17332 21328 21401 21402 21329 +17332 17405 17406 17333 21329 21402 21403 21330 +17333 17406 17407 17334 21330 21403 21404 21331 +17334 17407 17408 17335 21331 21404 21405 21332 +17335 17408 17409 17336 21332 21405 21406 21333 +17336 17409 17410 17337 21333 21406 21407 21334 +17337 17410 17411 17338 21334 21407 21408 21335 +17338 17411 17412 17339 21335 21408 21409 21336 +17339 17412 17413 17340 21336 21409 21410 21337 +17340 17413 17414 17341 21337 21410 21411 21338 +17341 17414 17415 17342 21338 21411 21412 21339 +17342 17415 17416 17343 21339 21412 21413 21340 +17343 17416 17417 17344 21340 21413 21414 21341 +17344 17417 17418 17345 21341 21414 21415 21342 +17345 17418 17419 17346 21342 21415 21416 21343 +17346 17419 17420 17347 21343 21416 21417 21344 +17347 17420 17421 17348 21344 21417 21418 21345 +17348 17421 17422 17349 21345 21418 21419 21346 +17349 17422 17423 17350 21346 21419 21420 21347 +17350 17423 17424 17351 21347 21420 21421 21348 +17351 17424 17425 17352 21348 21421 21422 21349 +17352 17425 17426 17353 21349 21422 21423 21350 +17353 17426 17427 17354 21350 21423 21424 21351 +17354 17427 17428 17355 21351 21424 21425 21352 +17355 17428 17429 17356 21352 21425 21426 21353 +17356 17429 17430 17357 21353 21426 21427 21354 +17357 17430 17431 17358 21354 21427 21428 21355 +17358 17431 17432 17359 21355 21428 21429 21356 +17359 17432 17433 17360 21356 21429 21430 21357 +17360 17433 17434 17361 21357 21430 21431 21358 +17361 17434 17435 17362 21358 21431 21432 21359 +17363 17436 17437 17364 21360 21433 21434 21361 +17364 17437 17438 17365 21361 21434 21435 21362 +17365 17438 17439 17366 21362 21435 21436 21363 +17366 17439 17440 17367 21363 21436 21437 21364 +17367 17440 17441 17368 21364 21437 21438 21365 +17368 17441 17442 17369 21365 21438 21439 21366 +17369 17442 17443 17370 21366 21439 21440 21367 +17370 17443 17444 17371 21367 21440 21441 21368 +17371 17444 17445 17372 21368 21441 21442 21369 +17372 17445 17446 17373 21369 21442 21443 21370 +17373 17446 17447 17374 21370 21443 21444 21371 +17374 17447 17448 17375 21371 21444 21445 21372 +17375 17448 17449 17376 21372 21445 21446 21373 +17376 17449 17450 17377 21373 21446 21447 21374 +17377 17450 17451 17378 21374 21447 21448 21375 +17378 17451 17452 17379 21375 21448 21449 21376 +17379 17452 17453 17380 21376 21449 21450 21377 +17380 17453 17454 17381 21377 21450 21451 21378 +17381 17454 17455 17382 21378 21451 21452 21379 +17382 17455 17456 17383 21379 21452 21453 21380 +17383 17456 17457 17384 21380 21453 21454 21381 +17384 17457 17458 17385 21381 21454 21455 21382 +17385 17458 17459 17386 21382 21455 21456 21383 +17386 17459 17460 17387 21383 21456 21457 21384 +17387 17460 17461 17388 21384 21457 21458 21385 +17388 17461 17462 17389 21385 21458 21459 21386 +17389 17462 17463 17390 21386 21459 21460 21387 +17390 17463 17464 17391 21387 21460 21461 21388 +17391 17464 17465 17392 21388 21461 21462 21389 +17392 17465 17466 17393 21389 21462 21463 21390 +17393 17466 17467 17394 21390 21463 21464 21391 +17394 17467 17468 17395 21391 21464 21465 21392 +17395 17468 17469 17396 21392 21465 21466 21393 +17396 17469 17470 17397 21393 21466 21467 21394 +17397 17470 17471 17398 21394 21467 21468 21395 +17398 17471 17472 17399 21395 21468 21469 21396 +17399 17472 17473 17400 21396 21469 21470 21397 +17400 17473 17474 17401 21397 21470 21471 21398 +17401 17474 17475 17402 21398 21471 21472 21399 +17402 17475 17476 17403 21399 21472 21473 21400 +17403 17476 17477 17404 21400 21473 21474 21401 +17404 17477 17478 17405 21401 21474 21475 21402 +17405 17478 17479 17406 21402 21475 21476 21403 +17406 17479 17480 17407 21403 21476 21477 21404 +17407 17480 17481 17408 21404 21477 21478 21405 +17408 17481 17482 17409 21405 21478 21479 21406 +17409 17482 17483 17410 21406 21479 21480 21407 +17410 17483 17484 17411 21407 21480 21481 21408 +17411 17484 17485 17412 21408 21481 21482 21409 +17412 17485 17486 17413 21409 21482 21483 21410 +17413 17486 17487 17414 21410 21483 21484 21411 +17414 17487 17488 17415 21411 21484 21485 21412 +17415 17488 17489 17416 21412 21485 21486 21413 +17416 17489 17490 17417 21413 21486 21487 21414 +17417 17490 17491 17418 21414 21487 21488 21415 +17418 17491 17492 17419 21415 21488 21489 21416 +17419 17492 17493 17420 21416 21489 21490 21417 +17420 17493 17494 17421 21417 21490 21491 21418 +17421 17494 17495 17422 21418 21491 21492 21419 +17422 17495 17496 17423 21419 21492 21493 21420 +17423 17496 17497 17424 21420 21493 21494 21421 +17424 17497 17498 17425 21421 21494 21495 21422 +17425 17498 17499 17426 21422 21495 21496 21423 +17426 17499 17500 17427 21423 21496 21497 21424 +17427 17500 17501 17428 21424 21497 21498 21425 +17428 17501 17502 17429 21425 21498 21499 21426 +17429 17502 17503 17430 21426 21499 21500 21427 +17430 17503 17504 17431 21427 21500 21501 21428 +17431 17504 17505 17432 21428 21501 21502 21429 +17432 17505 17506 17433 21429 21502 21503 21430 +17433 17506 17507 17434 21430 21503 21504 21431 +17434 17507 17508 17435 21431 21504 21505 21432 +17436 17509 17510 17437 21433 21506 21507 21434 +17437 17510 17511 17438 21434 21507 21508 21435 +17438 17511 17512 17439 21435 21508 21509 21436 +17439 17512 17513 17440 21436 21509 21510 21437 +17440 17513 17514 17441 21437 21510 21511 21438 +17441 17514 17515 17442 21438 21511 21512 21439 +17442 17515 17516 17443 21439 21512 21513 21440 +17443 17516 17517 17444 21440 21513 21514 21441 +17444 17517 17518 17445 21441 21514 21515 21442 +17445 17518 17519 17446 21442 21515 21516 21443 +17446 17519 17520 17447 21443 21516 21517 21444 +17447 17520 17521 17448 21444 21517 21518 21445 +17448 17521 17522 17449 21445 21518 21519 21446 +17449 17522 17523 17450 21446 21519 21520 21447 +17450 17523 17524 17451 21447 21520 21521 21448 +17451 17524 17525 17452 21448 21521 21522 21449 +17452 17525 17526 17453 21449 21522 21523 21450 +17453 17526 17527 17454 21450 21523 21524 21451 +17454 17527 17528 17455 21451 21524 21525 21452 +17455 17528 17529 17456 21452 21525 21526 21453 +17456 17529 17530 17457 21453 21526 21527 21454 +17457 17530 17531 17458 21454 21527 21528 21455 +17458 17531 17532 17459 21455 21528 21529 21456 +17459 17532 17533 17460 21456 21529 21530 21457 +17460 17533 17534 17461 21457 21530 21531 21458 +17461 17534 17535 17462 21458 21531 21532 21459 +17462 17535 17536 17463 21459 21532 21533 21460 +17463 17536 17537 17464 21460 21533 21534 21461 +17464 17537 17538 17465 21461 21534 21535 21462 +17465 17538 17539 17466 21462 21535 21536 21463 +17466 17539 17540 17467 21463 21536 21537 21464 +17467 17540 17541 17468 21464 21537 21538 21465 +17468 17541 17542 17469 21465 21538 21539 21466 +17469 17542 17543 17470 21466 21539 21540 21467 +17470 17543 17544 17471 21467 21540 21541 21468 +17471 17544 17545 17472 21468 21541 21542 21469 +17472 17545 17546 17473 21469 21542 21543 21470 +17473 17546 17547 17474 21470 21543 21544 21471 +17474 17547 17548 17475 21471 21544 21545 21472 +17475 17548 17549 17476 21472 21545 21546 21473 +17476 17549 17550 17477 21473 21546 21547 21474 +17477 17550 17551 17478 21474 21547 21548 21475 +17478 17551 17552 17479 21475 21548 21549 21476 +17479 17552 17553 17480 21476 21549 21550 21477 +17480 17553 17554 17481 21477 21550 21551 21478 +17481 17554 17555 17482 21478 21551 21552 21479 +17482 17555 17556 17483 21479 21552 21553 21480 +17483 17556 17557 17484 21480 21553 21554 21481 +17484 17557 17558 17485 21481 21554 21555 21482 +17485 17558 17559 17486 21482 21555 21556 21483 +17486 17559 17560 17487 21483 21556 21557 21484 +17487 17560 17561 17488 21484 21557 21558 21485 +17488 17561 17562 17489 21485 21558 21559 21486 +17489 17562 17563 17490 21486 21559 21560 21487 +17490 17563 17564 17491 21487 21560 21561 21488 +17491 17564 17565 17492 21488 21561 21562 21489 +17492 17565 17566 17493 21489 21562 21563 21490 +17493 17566 17567 17494 21490 21563 21564 21491 +17494 17567 17568 17495 21491 21564 21565 21492 +17495 17568 17569 17496 21492 21565 21566 21493 +17496 17569 17570 17497 21493 21566 21567 21494 +17497 17570 17571 17498 21494 21567 21568 21495 +17498 17571 17572 17499 21495 21568 21569 21496 +17499 17572 17573 17500 21496 21569 21570 21497 +17500 17573 17574 17501 21497 21570 21571 21498 +17501 17574 17575 17502 21498 21571 21572 21499 +17502 17575 17576 17503 21499 21572 21573 21500 +17503 17576 17577 17504 21500 21573 21574 21501 +17504 17577 17578 17505 21501 21574 21575 21502 +17505 17578 17579 17506 21502 21575 21576 21503 +17506 17579 17580 17507 21503 21576 21577 21504 +17507 17580 17581 17508 21504 21577 21578 21505 +17509 17582 17583 17510 21506 21579 21580 21507 +17510 17583 17584 17511 21507 21580 21581 21508 +17511 17584 17585 17512 21508 21581 21582 21509 +17512 17585 17586 17513 21509 21582 21583 21510 +17513 17586 17587 17514 21510 21583 21584 21511 +17514 17587 17588 17515 21511 21584 21585 21512 +17515 17588 17589 17516 21512 21585 21586 21513 +17516 17589 17590 17517 21513 21586 21587 21514 +17517 17590 17591 17518 21514 21587 21588 21515 +17518 17591 17592 17519 21515 21588 21589 21516 +17519 17592 17593 17520 21516 21589 21590 21517 +17520 17593 17594 17521 21517 21590 21591 21518 +17521 17594 17595 17522 21518 21591 21592 21519 +17522 17595 17596 17523 21519 21592 21593 21520 +17523 17596 17597 17524 21520 21593 21594 21521 +17524 17597 17598 17525 21521 21594 21595 21522 +17525 17598 17599 17526 21522 21595 21596 21523 +17526 17599 17600 17527 21523 21596 21597 21524 +17527 17600 17601 17528 21524 21597 21598 21525 +17528 17601 17602 17529 21525 21598 21599 21526 +17529 17602 17603 17530 21526 21599 21600 21527 +17530 17603 17604 17531 21527 21600 21601 21528 +17531 17604 17605 17532 21528 21601 21602 21529 +17532 17605 17606 17533 21529 21602 21603 21530 +17533 17606 17607 17534 21530 21603 21604 21531 +17534 17607 17608 17535 21531 21604 21605 21532 +17535 17608 17609 17536 21532 21605 21606 21533 +17536 17609 17610 17537 21533 21606 21607 21534 +17537 17610 17611 17538 21534 21607 21608 21535 +17538 17611 17612 17539 21535 21608 21609 21536 +17539 17612 17613 17540 21536 21609 21610 21537 +17540 17613 17614 17541 21537 21610 21611 21538 +17541 17614 17615 17542 21538 21611 21612 21539 +17542 17615 17616 17543 21539 21612 21613 21540 +17543 17616 17617 17544 21540 21613 21614 21541 +17544 17617 17618 17545 21541 21614 21615 21542 +17545 17618 17619 17546 21542 21615 21616 21543 +17546 17619 17620 17547 21543 21616 21617 21544 +17547 17620 17621 17548 21544 21617 21618 21545 +17548 17621 17622 17549 21545 21618 21619 21546 +17549 17622 17623 17550 21546 21619 21620 21547 +17550 17623 17624 17551 21547 21620 21621 21548 +17551 17624 17625 17552 21548 21621 21622 21549 +17552 17625 17626 17553 21549 21622 21623 21550 +17553 17626 17627 17554 21550 21623 21624 21551 +17554 17627 17628 17555 21551 21624 21625 21552 +17555 17628 17629 17556 21552 21625 21626 21553 +17556 17629 17630 17557 21553 21626 21627 21554 +17557 17630 17631 17558 21554 21627 21628 21555 +17558 17631 17632 17559 21555 21628 21629 21556 +17559 17632 17633 17560 21556 21629 21630 21557 +17560 17633 17634 17561 21557 21630 21631 21558 +17561 17634 17635 17562 21558 21631 21632 21559 +17562 17635 17636 17563 21559 21632 21633 21560 +17563 17636 17637 17564 21560 21633 21634 21561 +17564 17637 17638 17565 21561 21634 21635 21562 +17565 17638 17639 17566 21562 21635 21636 21563 +17566 17639 17640 17567 21563 21636 21637 21564 +17567 17640 17641 17568 21564 21637 21638 21565 +17568 17641 17642 17569 21565 21638 21639 21566 +17569 17642 17643 17570 21566 21639 21640 21567 +17570 17643 17644 17571 21567 21640 21641 21568 +17571 17644 17645 17572 21568 21641 21642 21569 +17572 17645 17646 17573 21569 21642 21643 21570 +17573 17646 17647 17574 21570 21643 21644 21571 +17574 17647 17648 17575 21571 21644 21645 21572 +17575 17648 17649 17576 21572 21645 21646 21573 +17576 17649 17650 17577 21573 21646 21647 21574 +17577 17650 17651 17578 21574 21647 21648 21575 +17578 17651 17652 17579 21575 21648 21649 21576 +17579 17652 17653 17580 21576 21649 21650 21577 +17580 17653 17654 17581 21577 21650 21651 21578 +17582 17655 17656 17583 21579 21652 21653 21580 +17583 17656 17657 17584 21580 21653 21654 21581 +17584 17657 17658 17585 21581 21654 21655 21582 +17585 17658 17659 17586 21582 21655 21656 21583 +17586 17659 17660 17587 21583 21656 21657 21584 +17587 17660 17661 17588 21584 21657 21658 21585 +17588 17661 17662 17589 21585 21658 21659 21586 +17589 17662 17663 17590 21586 21659 21660 21587 +17590 17663 17664 17591 21587 21660 21661 21588 +17591 17664 17665 17592 21588 21661 21662 21589 +17592 17665 17666 17593 21589 21662 21663 21590 +17593 17666 17667 17594 21590 21663 21664 21591 +17594 17667 17668 17595 21591 21664 21665 21592 +17595 17668 17669 17596 21592 21665 21666 21593 +17596 17669 17670 17597 21593 21666 21667 21594 +17597 17670 17671 17598 21594 21667 21668 21595 +17598 17671 17672 17599 21595 21668 21669 21596 +17599 17672 17673 17600 21596 21669 21670 21597 +17600 17673 17674 17601 21597 21670 21671 21598 +17601 17674 17675 17602 21598 21671 21672 21599 +17602 17675 17676 17603 21599 21672 21673 21600 +17603 17676 17677 17604 21600 21673 21674 21601 +17604 17677 17678 17605 21601 21674 21675 21602 +17605 17678 17679 17606 21602 21675 21676 21603 +17606 17679 17680 17607 21603 21676 21677 21604 +17607 17680 17681 17608 21604 21677 21678 21605 +17608 17681 17682 17609 21605 21678 21679 21606 +17609 17682 17683 17610 21606 21679 21680 21607 +17610 17683 17684 17611 21607 21680 21681 21608 +17611 17684 17685 17612 21608 21681 21682 21609 +17612 17685 17686 17613 21609 21682 21683 21610 +17613 17686 17687 17614 21610 21683 21684 21611 +17614 17687 17688 17615 21611 21684 21685 21612 +17615 17688 17689 17616 21612 21685 21686 21613 +17616 17689 17690 17617 21613 21686 21687 21614 +17617 17690 17691 17618 21614 21687 21688 21615 +17618 17691 17692 17619 21615 21688 21689 21616 +17619 17692 17693 17620 21616 21689 21690 21617 +17620 17693 17694 17621 21617 21690 21691 21618 +17621 17694 17695 17622 21618 21691 21692 21619 +17622 17695 17696 17623 21619 21692 21693 21620 +17623 17696 17697 17624 21620 21693 21694 21621 +17624 17697 17698 17625 21621 21694 21695 21622 +17625 17698 17699 17626 21622 21695 21696 21623 +17626 17699 17700 17627 21623 21696 21697 21624 +17627 17700 17701 17628 21624 21697 21698 21625 +17628 17701 17702 17629 21625 21698 21699 21626 +17629 17702 17703 17630 21626 21699 21700 21627 +17630 17703 17704 17631 21627 21700 21701 21628 +17631 17704 17705 17632 21628 21701 21702 21629 +17632 17705 17706 17633 21629 21702 21703 21630 +17633 17706 17707 17634 21630 21703 21704 21631 +17634 17707 17708 17635 21631 21704 21705 21632 +17635 17708 17709 17636 21632 21705 21706 21633 +17636 17709 17710 17637 21633 21706 21707 21634 +17637 17710 17711 17638 21634 21707 21708 21635 +17638 17711 17712 17639 21635 21708 21709 21636 +17639 17712 17713 17640 21636 21709 21710 21637 +17640 17713 17714 17641 21637 21710 21711 21638 +17641 17714 17715 17642 21638 21711 21712 21639 +17642 17715 17716 17643 21639 21712 21713 21640 +17643 17716 17717 17644 21640 21713 21714 21641 +17644 17717 17718 17645 21641 21714 21715 21642 +17645 17718 17719 17646 21642 21715 21716 21643 +17646 17719 17720 17647 21643 21716 21717 21644 +17647 17720 17721 17648 21644 21717 21718 21645 +17648 17721 17722 17649 21645 21718 21719 21646 +17649 17722 17723 17650 21646 21719 21720 21647 +17650 17723 17724 17651 21647 21720 21721 21648 +17651 17724 17725 17652 21648 21721 21722 21649 +17652 17725 17726 17653 21649 21722 21723 21650 +17653 17726 17727 17654 21650 21723 21724 21651 +17655 17728 17729 17656 21652 21725 21726 21653 +17656 17729 17730 17657 21653 21726 21727 21654 +17657 17730 17731 17658 21654 21727 21728 21655 +17658 17731 17732 17659 21655 21728 21729 21656 +17659 17732 17733 17660 21656 21729 21730 21657 +17660 17733 17734 17661 21657 21730 21731 21658 +17661 17734 17735 17662 21658 21731 21732 21659 +17662 17735 17736 17663 21659 21732 21733 21660 +17663 17736 17737 17664 21660 21733 21734 21661 +17664 17737 17738 17665 21661 21734 21735 21662 +17665 17738 17739 17666 21662 21735 21736 21663 +17666 17739 17740 17667 21663 21736 21737 21664 +17667 17740 17741 17668 21664 21737 21738 21665 +17668 17741 17742 17669 21665 21738 21739 21666 +17669 17742 17743 17670 21666 21739 21740 21667 +17670 17743 17744 17671 21667 21740 21741 21668 +17671 17744 17745 17672 21668 21741 21742 21669 +17672 17745 17746 17673 21669 21742 21743 21670 +17673 17746 17747 17674 21670 21743 21744 21671 +17674 17747 17748 17675 21671 21744 21745 21672 +17675 17748 17749 17676 21672 21745 21746 21673 +17676 17749 17750 17677 21673 21746 21747 21674 +17677 17750 17751 17678 21674 21747 21748 21675 +17678 17751 17752 17679 21675 21748 21749 21676 +17679 17752 17753 17680 21676 21749 21750 21677 +17680 17753 17754 17681 21677 21750 21751 21678 +17681 17754 17755 17682 21678 21751 21752 21679 +17682 17755 17756 17683 21679 21752 21753 21680 +17683 17756 17757 17684 21680 21753 21754 21681 +17684 17757 17758 17685 21681 21754 21755 21682 +17685 17758 17759 17686 21682 21755 21756 21683 +17686 17759 17760 17687 21683 21756 21757 21684 +17687 17760 17761 17688 21684 21757 21758 21685 +17688 17761 17762 17689 21685 21758 21759 21686 +17689 17762 17763 17690 21686 21759 21760 21687 +17690 17763 17764 17691 21687 21760 21761 21688 +17691 17764 17765 17692 21688 21761 21762 21689 +17692 17765 17766 17693 21689 21762 21763 21690 +17693 17766 17767 17694 21690 21763 21764 21691 +17694 17767 17768 17695 21691 21764 21765 21692 +17695 17768 17769 17696 21692 21765 21766 21693 +17696 17769 17770 17697 21693 21766 21767 21694 +17697 17770 17771 17698 21694 21767 21768 21695 +17698 17771 17772 17699 21695 21768 21769 21696 +17699 17772 17773 17700 21696 21769 21770 21697 +17700 17773 17774 17701 21697 21770 21771 21698 +17701 17774 17775 17702 21698 21771 21772 21699 +17702 17775 17776 17703 21699 21772 21773 21700 +17703 17776 17777 17704 21700 21773 21774 21701 +17704 17777 17778 17705 21701 21774 21775 21702 +17705 17778 17779 17706 21702 21775 21776 21703 +17706 17779 17780 17707 21703 21776 21777 21704 +17707 17780 17781 17708 21704 21777 21778 21705 +17708 17781 17782 17709 21705 21778 21779 21706 +17709 17782 17783 17710 21706 21779 21780 21707 +17710 17783 17784 17711 21707 21780 21781 21708 +17711 17784 17785 17712 21708 21781 21782 21709 +17712 17785 17786 17713 21709 21782 21783 21710 +17713 17786 17787 17714 21710 21783 21784 21711 +17714 17787 17788 17715 21711 21784 21785 21712 +17715 17788 17789 17716 21712 21785 21786 21713 +17716 17789 17790 17717 21713 21786 21787 21714 +17717 17790 17791 17718 21714 21787 21788 21715 +17718 17791 17792 17719 21715 21788 21789 21716 +17719 17792 17793 17720 21716 21789 21790 21717 +17720 17793 17794 17721 21717 21790 21791 21718 +17721 17794 17795 17722 21718 21791 21792 21719 +17722 17795 17796 17723 21719 21792 21793 21720 +17723 17796 17797 17724 21720 21793 21794 21721 +17724 17797 17798 17725 21721 21794 21795 21722 +17725 17798 17799 17726 21722 21795 21796 21723 +17726 17799 17800 17727 21723 21796 21797 21724 +17728 17801 17802 17729 21725 21798 21799 21726 +17729 17802 17803 17730 21726 21799 21800 21727 +17730 17803 17804 17731 21727 21800 21801 21728 +17731 17804 17805 17732 21728 21801 21802 21729 +17732 17805 17806 17733 21729 21802 21803 21730 +17733 17806 17807 17734 21730 21803 21804 21731 +17734 17807 17808 17735 21731 21804 21805 21732 +17735 17808 17809 17736 21732 21805 21806 21733 +17736 17809 17810 17737 21733 21806 21807 21734 +17737 17810 17811 17738 21734 21807 21808 21735 +17738 17811 17812 17739 21735 21808 21809 21736 +17739 17812 17813 17740 21736 21809 21810 21737 +17740 17813 17814 17741 21737 21810 21811 21738 +17741 17814 17815 17742 21738 21811 21812 21739 +17742 17815 17816 17743 21739 21812 21813 21740 +17743 17816 17817 17744 21740 21813 21814 21741 +17744 17817 17818 17745 21741 21814 21815 21742 +17745 17818 17819 17746 21742 21815 21816 21743 +17746 17819 17820 17747 21743 21816 21817 21744 +17747 17820 17821 17748 21744 21817 21818 21745 +17748 17821 17822 17749 21745 21818 21819 21746 +17749 17822 17823 17750 21746 21819 21820 21747 +17750 17823 17824 17751 21747 21820 21821 21748 +17751 17824 17825 17752 21748 21821 21822 21749 +17752 17825 17826 17753 21749 21822 21823 21750 +17753 17826 17827 17754 21750 21823 21824 21751 +17754 17827 17828 17755 21751 21824 21825 21752 +17755 17828 17829 17756 21752 21825 21826 21753 +17756 17829 17830 17757 21753 21826 21827 21754 +17757 17830 17831 17758 21754 21827 21828 21755 +17758 17831 17832 17759 21755 21828 21829 21756 +17759 17832 17833 17760 21756 21829 21830 21757 +17760 17833 17834 17761 21757 21830 21831 21758 +17761 17834 17835 17762 21758 21831 21832 21759 +17762 17835 17836 17763 21759 21832 21833 21760 +17763 17836 17837 17764 21760 21833 21834 21761 +17764 17837 17838 17765 21761 21834 21835 21762 +17765 17838 17839 17766 21762 21835 21836 21763 +17766 17839 17840 17767 21763 21836 21837 21764 +17767 17840 17841 17768 21764 21837 21838 21765 +17768 17841 17842 17769 21765 21838 21839 21766 +17769 17842 17843 17770 21766 21839 21840 21767 +17770 17843 17844 17771 21767 21840 21841 21768 +17771 17844 17845 17772 21768 21841 21842 21769 +17772 17845 17846 17773 21769 21842 21843 21770 +17773 17846 17847 17774 21770 21843 21844 21771 +17774 17847 17848 17775 21771 21844 21845 21772 +17775 17848 17849 17776 21772 21845 21846 21773 +17776 17849 17850 17777 21773 21846 21847 21774 +17777 17850 17851 17778 21774 21847 21848 21775 +17778 17851 17852 17779 21775 21848 21849 21776 +17779 17852 17853 17780 21776 21849 21850 21777 +17780 17853 17854 17781 21777 21850 21851 21778 +17781 17854 17855 17782 21778 21851 21852 21779 +17782 17855 17856 17783 21779 21852 21853 21780 +17783 17856 17857 17784 21780 21853 21854 21781 +17784 17857 17858 17785 21781 21854 21855 21782 +17785 17858 17859 17786 21782 21855 21856 21783 +17786 17859 17860 17787 21783 21856 21857 21784 +17787 17860 17861 17788 21784 21857 21858 21785 +17788 17861 17862 17789 21785 21858 21859 21786 +17789 17862 17863 17790 21786 21859 21860 21787 +17790 17863 17864 17791 21787 21860 21861 21788 +17791 17864 17865 17792 21788 21861 21862 21789 +17792 17865 17866 17793 21789 21862 21863 21790 +17793 17866 17867 17794 21790 21863 21864 21791 +17794 17867 17868 17795 21791 21864 21865 21792 +17795 17868 17869 17796 21792 21865 21866 21793 +17796 17869 17870 17797 21793 21866 21867 21794 +17797 17870 17871 17798 21794 21867 21868 21795 +17798 17871 17872 17799 21795 21868 21869 21796 +17799 17872 17873 17800 21796 21869 21870 21797 +17801 17874 17875 17802 21798 21871 21872 21799 +17802 17875 17876 17803 21799 21872 21873 21800 +17803 17876 17877 17804 21800 21873 21874 21801 +17804 17877 17878 17805 21801 21874 21875 21802 +17805 17878 17879 17806 21802 21875 21876 21803 +17806 17879 17880 17807 21803 21876 21877 21804 +17807 17880 17881 17808 21804 21877 21878 21805 +17808 17881 17882 17809 21805 21878 21879 21806 +17809 17882 17883 17810 21806 21879 21880 21807 +17810 17883 17884 17811 21807 21880 21881 21808 +17811 17884 17885 17812 21808 21881 21882 21809 +17812 17885 17886 17813 21809 21882 21883 21810 +17813 17886 17887 17814 21810 21883 21884 21811 +17814 17887 17888 17815 21811 21884 21885 21812 +17815 17888 17889 17816 21812 21885 21886 21813 +17816 17889 17890 17817 21813 21886 21887 21814 +17817 17890 17891 17818 21814 21887 21888 21815 +17818 17891 17892 17819 21815 21888 21889 21816 +17819 17892 17893 17820 21816 21889 21890 21817 +17820 17893 17894 17821 21817 21890 21891 21818 +17821 17894 17895 17822 21818 21891 21892 21819 +17822 17895 17896 17823 21819 21892 21893 21820 +17823 17896 17897 17824 21820 21893 21894 21821 +17824 17897 17898 17825 21821 21894 21895 21822 +17825 17898 17899 17826 21822 21895 21896 21823 +17826 17899 17900 17827 21823 21896 21897 21824 +17827 17900 17901 17828 21824 21897 21898 21825 +17828 17901 17902 17829 21825 21898 21899 21826 +17829 17902 17903 17830 21826 21899 21900 21827 +17830 17903 17904 17831 21827 21900 21901 21828 +17831 17904 17905 17832 21828 21901 21902 21829 +17832 17905 17906 17833 21829 21902 21903 21830 +17833 17906 17907 17834 21830 21903 21904 21831 +17834 17907 17908 17835 21831 21904 21905 21832 +17835 17908 17909 17836 21832 21905 21906 21833 +17836 17909 17910 17837 21833 21906 21907 21834 +17837 17910 17911 17838 21834 21907 21908 21835 +17838 17911 17912 17839 21835 21908 21909 21836 +17839 17912 17913 17840 21836 21909 21910 21837 +17840 17913 17914 17841 21837 21910 21911 21838 +17841 17914 17915 17842 21838 21911 21912 21839 +17842 17915 17916 17843 21839 21912 21913 21840 +17843 17916 17917 17844 21840 21913 21914 21841 +17844 17917 17918 17845 21841 21914 21915 21842 +17845 17918 17919 17846 21842 21915 21916 21843 +17846 17919 17920 17847 21843 21916 21917 21844 +17847 17920 17921 17848 21844 21917 21918 21845 +17848 17921 17922 17849 21845 21918 21919 21846 +17849 17922 17923 17850 21846 21919 21920 21847 +17850 17923 17924 17851 21847 21920 21921 21848 +17851 17924 17925 17852 21848 21921 21922 21849 +17852 17925 17926 17853 21849 21922 21923 21850 +17853 17926 17927 17854 21850 21923 21924 21851 +17854 17927 17928 17855 21851 21924 21925 21852 +17855 17928 17929 17856 21852 21925 21926 21853 +17856 17929 17930 17857 21853 21926 21927 21854 +17857 17930 17931 17858 21854 21927 21928 21855 +17858 17931 17932 17859 21855 21928 21929 21856 +17859 17932 17933 17860 21856 21929 21930 21857 +17860 17933 17934 17861 21857 21930 21931 21858 +17861 17934 17935 17862 21858 21931 21932 21859 +17862 17935 17936 17863 21859 21932 21933 21860 +17863 17936 17937 17864 21860 21933 21934 21861 +17864 17937 17938 17865 21861 21934 21935 21862 +17865 17938 17939 17866 21862 21935 21936 21863 +17866 17939 17940 17867 21863 21936 21937 21864 +17867 17940 17941 17868 21864 21937 21938 21865 +17868 17941 17942 17869 21865 21938 21939 21866 +17869 17942 17943 17870 21866 21939 21940 21867 +17870 17943 17944 17871 21867 21940 21941 21868 +17871 17944 17945 17872 21868 21941 21942 21869 +17872 17945 17946 17873 21869 21942 21943 21870 +17874 17947 17948 17875 21871 21944 21945 21872 +17875 17948 17949 17876 21872 21945 21946 21873 +17876 17949 17950 17877 21873 21946 21947 21874 +17877 17950 17951 17878 21874 21947 21948 21875 +17878 17951 17952 17879 21875 21948 21949 21876 +17879 17952 17953 17880 21876 21949 21950 21877 +17880 17953 17954 17881 21877 21950 21951 21878 +17881 17954 17955 17882 21878 21951 21952 21879 +17882 17955 17956 17883 21879 21952 21953 21880 +17883 17956 17957 17884 21880 21953 21954 21881 +17884 17957 17958 17885 21881 21954 21955 21882 +17885 17958 17959 17886 21882 21955 21956 21883 +17886 17959 17960 17887 21883 21956 21957 21884 +17887 17960 17961 17888 21884 21957 21958 21885 +17888 17961 17962 17889 21885 21958 21959 21886 +17889 17962 17963 17890 21886 21959 21960 21887 +17890 17963 17964 17891 21887 21960 21961 21888 +17891 17964 17965 17892 21888 21961 21962 21889 +17892 17965 17966 17893 21889 21962 21963 21890 +17893 17966 17967 17894 21890 21963 21964 21891 +17894 17967 17968 17895 21891 21964 21965 21892 +17895 17968 17969 17896 21892 21965 21966 21893 +17896 17969 17970 17897 21893 21966 21967 21894 +17897 17970 17971 17898 21894 21967 21968 21895 +17898 17971 17972 17899 21895 21968 21969 21896 +17899 17972 17973 17900 21896 21969 21970 21897 +17900 17973 17974 17901 21897 21970 21971 21898 +17901 17974 17975 17902 21898 21971 21972 21899 +17902 17975 17976 17903 21899 21972 21973 21900 +17903 17976 17977 17904 21900 21973 21974 21901 +17904 17977 17978 17905 21901 21974 21975 21902 +17905 17978 17979 17906 21902 21975 21976 21903 +17906 17979 17980 17907 21903 21976 21977 21904 +17907 17980 17981 17908 21904 21977 21978 21905 +17908 17981 17982 17909 21905 21978 21979 21906 +17909 17982 17983 17910 21906 21979 21980 21907 +17910 17983 17984 17911 21907 21980 21981 21908 +17911 17984 17985 17912 21908 21981 21982 21909 +17912 17985 17986 17913 21909 21982 21983 21910 +17913 17986 17987 17914 21910 21983 21984 21911 +17914 17987 17988 17915 21911 21984 21985 21912 +17915 17988 17989 17916 21912 21985 21986 21913 +17916 17989 17990 17917 21913 21986 21987 21914 +17917 17990 17991 17918 21914 21987 21988 21915 +17918 17991 17992 17919 21915 21988 21989 21916 +17919 17992 17993 17920 21916 21989 21990 21917 +17920 17993 17994 17921 21917 21990 21991 21918 +17921 17994 17995 17922 21918 21991 21992 21919 +17922 17995 17996 17923 21919 21992 21993 21920 +17923 17996 17997 17924 21920 21993 21994 21921 +17924 17997 17998 17925 21921 21994 21995 21922 +17925 17998 17999 17926 21922 21995 21996 21923 +17926 17999 18000 17927 21923 21996 21997 21924 +17927 18000 18001 17928 21924 21997 21998 21925 +17928 18001 18002 17929 21925 21998 21999 21926 +17929 18002 18003 17930 21926 21999 22000 21927 +17930 18003 18004 17931 21927 22000 22001 21928 +17931 18004 18005 17932 21928 22001 22002 21929 +17932 18005 18006 17933 21929 22002 22003 21930 +17933 18006 18007 17934 21930 22003 22004 21931 +17934 18007 18008 17935 21931 22004 22005 21932 +17935 18008 18009 17936 21932 22005 22006 21933 +17936 18009 18010 17937 21933 22006 22007 21934 +17937 18010 18011 17938 21934 22007 22008 21935 +17938 18011 18012 17939 21935 22008 22009 21936 +17939 18012 18013 17940 21936 22009 22010 21937 +17940 18013 18014 17941 21937 22010 22011 21938 +17941 18014 18015 17942 21938 22011 22012 21939 +17942 18015 18016 17943 21939 22012 22013 21940 +17943 18016 18017 17944 21940 22013 22014 21941 +17944 18017 18018 17945 21941 22014 22015 21942 +17945 18018 18019 17946 21942 22015 22016 21943 +17947 18020 18021 17948 21944 22017 22018 21945 +17948 18021 18022 17949 21945 22018 22019 21946 +17949 18022 18023 17950 21946 22019 22020 21947 +17950 18023 18024 17951 21947 22020 22021 21948 +17951 18024 18025 17952 21948 22021 22022 21949 +17952 18025 18026 17953 21949 22022 22023 21950 +17953 18026 18027 17954 21950 22023 22024 21951 +17954 18027 18028 17955 21951 22024 22025 21952 +17955 18028 18029 17956 21952 22025 22026 21953 +17956 18029 18030 17957 21953 22026 22027 21954 +17957 18030 18031 17958 21954 22027 22028 21955 +17958 18031 18032 17959 21955 22028 22029 21956 +17959 18032 18033 17960 21956 22029 22030 21957 +17960 18033 18034 17961 21957 22030 22031 21958 +17961 18034 18035 17962 21958 22031 22032 21959 +17962 18035 18036 17963 21959 22032 22033 21960 +17963 18036 18037 17964 21960 22033 22034 21961 +17964 18037 18038 17965 21961 22034 22035 21962 +17965 18038 18039 17966 21962 22035 22036 21963 +17966 18039 18040 17967 21963 22036 22037 21964 +17967 18040 18041 17968 21964 22037 22038 21965 +17968 18041 18042 17969 21965 22038 22039 21966 +17969 18042 18043 17970 21966 22039 22040 21967 +17970 18043 18044 17971 21967 22040 22041 21968 +17971 18044 18045 17972 21968 22041 22042 21969 +17972 18045 18046 17973 21969 22042 22043 21970 +17973 18046 18047 17974 21970 22043 22044 21971 +17974 18047 18048 17975 21971 22044 22045 21972 +17975 18048 18049 17976 21972 22045 22046 21973 +17976 18049 18050 17977 21973 22046 22047 21974 +17977 18050 18051 17978 21974 22047 22048 21975 +17978 18051 18052 17979 21975 22048 22049 21976 +17979 18052 18053 17980 21976 22049 22050 21977 +17980 18053 18054 17981 21977 22050 22051 21978 +17981 18054 18055 17982 21978 22051 22052 21979 +17982 18055 18056 17983 21979 22052 22053 21980 +17983 18056 18057 17984 21980 22053 22054 21981 +17984 18057 18058 17985 21981 22054 22055 21982 +17985 18058 18059 17986 21982 22055 22056 21983 +17986 18059 18060 17987 21983 22056 22057 21984 +17987 18060 18061 17988 21984 22057 22058 21985 +17988 18061 18062 17989 21985 22058 22059 21986 +17989 18062 18063 17990 21986 22059 22060 21987 +17990 18063 18064 17991 21987 22060 22061 21988 +17991 18064 18065 17992 21988 22061 22062 21989 +17992 18065 18066 17993 21989 22062 22063 21990 +17993 18066 18067 17994 21990 22063 22064 21991 +17994 18067 18068 17995 21991 22064 22065 21992 +17995 18068 18069 17996 21992 22065 22066 21993 +17996 18069 18070 17997 21993 22066 22067 21994 +17997 18070 18071 17998 21994 22067 22068 21995 +17998 18071 18072 17999 21995 22068 22069 21996 +17999 18072 18073 18000 21996 22069 22070 21997 +18000 18073 18074 18001 21997 22070 22071 21998 +18001 18074 18075 18002 21998 22071 22072 21999 +18002 18075 18076 18003 21999 22072 22073 22000 +18003 18076 18077 18004 22000 22073 22074 22001 +18004 18077 18078 18005 22001 22074 22075 22002 +18005 18078 18079 18006 22002 22075 22076 22003 +18006 18079 18080 18007 22003 22076 22077 22004 +18007 18080 18081 18008 22004 22077 22078 22005 +18008 18081 18082 18009 22005 22078 22079 22006 +18009 18082 18083 18010 22006 22079 22080 22007 +18010 18083 18084 18011 22007 22080 22081 22008 +18011 18084 18085 18012 22008 22081 22082 22009 +18012 18085 18086 18013 22009 22082 22083 22010 +18013 18086 18087 18014 22010 22083 22084 22011 +18014 18087 18088 18015 22011 22084 22085 22012 +18015 18088 18089 18016 22012 22085 22086 22013 +18016 18089 18090 18017 22013 22086 22087 22014 +18017 18090 18091 18018 22014 22087 22088 22015 +18018 18091 18092 18019 22015 22088 22089 22016 +18020 18093 18094 18021 22017 22090 22091 22018 +18021 18094 18095 18022 22018 22091 22092 22019 +18022 18095 18096 18023 22019 22092 22093 22020 +18023 18096 18097 18024 22020 22093 22094 22021 +18024 18097 18098 18025 22021 22094 22095 22022 +18025 18098 18099 18026 22022 22095 22096 22023 +18026 18099 18100 18027 22023 22096 22097 22024 +18027 18100 18101 18028 22024 22097 22098 22025 +18028 18101 18102 18029 22025 22098 22099 22026 +18029 18102 18103 18030 22026 22099 22100 22027 +18030 18103 18104 18031 22027 22100 22101 22028 +18031 18104 18105 18032 22028 22101 22102 22029 +18032 18105 18106 18033 22029 22102 22103 22030 +18033 18106 18107 18034 22030 22103 22104 22031 +18034 18107 18108 18035 22031 22104 22105 22032 +18035 18108 18109 18036 22032 22105 22106 22033 +18036 18109 18110 18037 22033 22106 22107 22034 +18037 18110 18111 18038 22034 22107 22108 22035 +18038 18111 18112 18039 22035 22108 22109 22036 +18039 18112 18113 18040 22036 22109 22110 22037 +18040 18113 18114 18041 22037 22110 22111 22038 +18041 18114 18115 18042 22038 22111 22112 22039 +18042 18115 18116 18043 22039 22112 22113 22040 +18043 18116 18117 18044 22040 22113 22114 22041 +18044 18117 18118 18045 22041 22114 22115 22042 +18045 18118 18119 18046 22042 22115 22116 22043 +18046 18119 18120 18047 22043 22116 22117 22044 +18047 18120 18121 18048 22044 22117 22118 22045 +18048 18121 18122 18049 22045 22118 22119 22046 +18049 18122 18123 18050 22046 22119 22120 22047 +18050 18123 18124 18051 22047 22120 22121 22048 +18051 18124 18125 18052 22048 22121 22122 22049 +18052 18125 18126 18053 22049 22122 22123 22050 +18053 18126 18127 18054 22050 22123 22124 22051 +18054 18127 18128 18055 22051 22124 22125 22052 +18055 18128 18129 18056 22052 22125 22126 22053 +18056 18129 18130 18057 22053 22126 22127 22054 +18057 18130 18131 18058 22054 22127 22128 22055 +18058 18131 18132 18059 22055 22128 22129 22056 +18059 18132 18133 18060 22056 22129 22130 22057 +18060 18133 18134 18061 22057 22130 22131 22058 +18061 18134 18135 18062 22058 22131 22132 22059 +18062 18135 18136 18063 22059 22132 22133 22060 +18063 18136 18137 18064 22060 22133 22134 22061 +18064 18137 18138 18065 22061 22134 22135 22062 +18065 18138 18139 18066 22062 22135 22136 22063 +18066 18139 18140 18067 22063 22136 22137 22064 +18067 18140 18141 18068 22064 22137 22138 22065 +18068 18141 18142 18069 22065 22138 22139 22066 +18069 18142 18143 18070 22066 22139 22140 22067 +18070 18143 18144 18071 22067 22140 22141 22068 +18071 18144 18145 18072 22068 22141 22142 22069 +18072 18145 18146 18073 22069 22142 22143 22070 +18073 18146 18147 18074 22070 22143 22144 22071 +18074 18147 18148 18075 22071 22144 22145 22072 +18075 18148 18149 18076 22072 22145 22146 22073 +18076 18149 18150 18077 22073 22146 22147 22074 +18077 18150 18151 18078 22074 22147 22148 22075 +18078 18151 18152 18079 22075 22148 22149 22076 +18079 18152 18153 18080 22076 22149 22150 22077 +18080 18153 18154 18081 22077 22150 22151 22078 +18081 18154 18155 18082 22078 22151 22152 22079 +18082 18155 18156 18083 22079 22152 22153 22080 +18083 18156 18157 18084 22080 22153 22154 22081 +18084 18157 18158 18085 22081 22154 22155 22082 +18085 18158 18159 18086 22082 22155 22156 22083 +18086 18159 18160 18087 22083 22156 22157 22084 +18087 18160 18161 18088 22084 22157 22158 22085 +18088 18161 18162 18089 22085 22158 22159 22086 +18089 18162 18163 18090 22086 22159 22160 22087 +18090 18163 18164 18091 22087 22160 22161 22088 +18091 18164 18165 18092 22088 22161 22162 22089 +18093 18166 18167 18094 22090 22163 22164 22091 +18094 18167 18168 18095 22091 22164 22165 22092 +18095 18168 18169 18096 22092 22165 22166 22093 +18096 18169 18170 18097 22093 22166 22167 22094 +18097 18170 18171 18098 22094 22167 22168 22095 +18098 18171 18172 18099 22095 22168 22169 22096 +18099 18172 18173 18100 22096 22169 22170 22097 +18100 18173 18174 18101 22097 22170 22171 22098 +18101 18174 18175 18102 22098 22171 22172 22099 +18102 18175 18176 18103 22099 22172 22173 22100 +18103 18176 18177 18104 22100 22173 22174 22101 +18104 18177 18178 18105 22101 22174 22175 22102 +18105 18178 18179 18106 22102 22175 22176 22103 +18106 18179 18180 18107 22103 22176 22177 22104 +18107 18180 18181 18108 22104 22177 22178 22105 +18108 18181 18182 18109 22105 22178 22179 22106 +18109 18182 18183 18110 22106 22179 22180 22107 +18110 18183 18184 18111 22107 22180 22181 22108 +18111 18184 18185 18112 22108 22181 22182 22109 +18112 18185 18186 18113 22109 22182 22183 22110 +18113 18186 18187 18114 22110 22183 22184 22111 +18114 18187 18188 18115 22111 22184 22185 22112 +18115 18188 18189 18116 22112 22185 22186 22113 +18116 18189 18190 18117 22113 22186 22187 22114 +18117 18190 18191 18118 22114 22187 22188 22115 +18118 18191 18192 18119 22115 22188 22189 22116 +18119 18192 18193 18120 22116 22189 22190 22117 +18120 18193 18194 18121 22117 22190 22191 22118 +18121 18194 18195 18122 22118 22191 22192 22119 +18122 18195 18196 18123 22119 22192 22193 22120 +18123 18196 18197 18124 22120 22193 22194 22121 +18124 18197 18198 18125 22121 22194 22195 22122 +18125 18198 18199 18126 22122 22195 22196 22123 +18126 18199 18200 18127 22123 22196 22197 22124 +18127 18200 18201 18128 22124 22197 22198 22125 +18128 18201 18202 18129 22125 22198 22199 22126 +18129 18202 18203 18130 22126 22199 22200 22127 +18130 18203 18204 18131 22127 22200 22201 22128 +18131 18204 18205 18132 22128 22201 22202 22129 +18132 18205 18206 18133 22129 22202 22203 22130 +18133 18206 18207 18134 22130 22203 22204 22131 +18134 18207 18208 18135 22131 22204 22205 22132 +18135 18208 18209 18136 22132 22205 22206 22133 +18136 18209 18210 18137 22133 22206 22207 22134 +18137 18210 18211 18138 22134 22207 22208 22135 +18138 18211 18212 18139 22135 22208 22209 22136 +18139 18212 18213 18140 22136 22209 22210 22137 +18140 18213 18214 18141 22137 22210 22211 22138 +18141 18214 18215 18142 22138 22211 22212 22139 +18142 18215 18216 18143 22139 22212 22213 22140 +18143 18216 18217 18144 22140 22213 22214 22141 +18144 18217 18218 18145 22141 22214 22215 22142 +18145 18218 18219 18146 22142 22215 22216 22143 +18146 18219 18220 18147 22143 22216 22217 22144 +18147 18220 18221 18148 22144 22217 22218 22145 +18148 18221 18222 18149 22145 22218 22219 22146 +18149 18222 18223 18150 22146 22219 22220 22147 +18150 18223 18224 18151 22147 22220 22221 22148 +18151 18224 18225 18152 22148 22221 22222 22149 +18152 18225 18226 18153 22149 22222 22223 22150 +18153 18226 18227 18154 22150 22223 22224 22151 +18154 18227 18228 18155 22151 22224 22225 22152 +18155 18228 18229 18156 22152 22225 22226 22153 +18156 18229 18230 18157 22153 22226 22227 22154 +18157 18230 18231 18158 22154 22227 22228 22155 +18158 18231 18232 18159 22155 22228 22229 22156 +18159 18232 18233 18160 22156 22229 22230 22157 +18160 18233 18234 18161 22157 22230 22231 22158 +18161 18234 18235 18162 22158 22231 22232 22159 +18162 18235 18236 18163 22159 22232 22233 22160 +18163 18236 18237 18164 22160 22233 22234 22161 +18164 18237 18238 18165 22161 22234 22235 22162 +18166 18239 18240 18167 22163 22236 22237 22164 +18167 18240 18241 18168 22164 22237 22238 22165 +18168 18241 18242 18169 22165 22238 22239 22166 +18169 18242 18243 18170 22166 22239 22240 22167 +18170 18243 18244 18171 22167 22240 22241 22168 +18171 18244 18245 18172 22168 22241 22242 22169 +18172 18245 18246 18173 22169 22242 22243 22170 +18173 18246 18247 18174 22170 22243 22244 22171 +18174 18247 18248 18175 22171 22244 22245 22172 +18175 18248 18249 18176 22172 22245 22246 22173 +18176 18249 18250 18177 22173 22246 22247 22174 +18177 18250 18251 18178 22174 22247 22248 22175 +18178 18251 18252 18179 22175 22248 22249 22176 +18179 18252 18253 18180 22176 22249 22250 22177 +18180 18253 18254 18181 22177 22250 22251 22178 +18181 18254 18255 18182 22178 22251 22252 22179 +18182 18255 18256 18183 22179 22252 22253 22180 +18183 18256 18257 18184 22180 22253 22254 22181 +18184 18257 18258 18185 22181 22254 22255 22182 +18185 18258 18259 18186 22182 22255 22256 22183 +18186 18259 18260 18187 22183 22256 22257 22184 +18187 18260 18261 18188 22184 22257 22258 22185 +18188 18261 18262 18189 22185 22258 22259 22186 +18189 18262 18263 18190 22186 22259 22260 22187 +18190 18263 18264 18191 22187 22260 22261 22188 +18191 18264 18265 18192 22188 22261 22262 22189 +18192 18265 18266 18193 22189 22262 22263 22190 +18193 18266 18267 18194 22190 22263 22264 22191 +18194 18267 18268 18195 22191 22264 22265 22192 +18195 18268 18269 18196 22192 22265 22266 22193 +18196 18269 18270 18197 22193 22266 22267 22194 +18197 18270 18271 18198 22194 22267 22268 22195 +18198 18271 18272 18199 22195 22268 22269 22196 +18199 18272 18273 18200 22196 22269 22270 22197 +18200 18273 18274 18201 22197 22270 22271 22198 +18201 18274 18275 18202 22198 22271 22272 22199 +18202 18275 18276 18203 22199 22272 22273 22200 +18203 18276 18277 18204 22200 22273 22274 22201 +18204 18277 18278 18205 22201 22274 22275 22202 +18205 18278 18279 18206 22202 22275 22276 22203 +18206 18279 18280 18207 22203 22276 22277 22204 +18207 18280 18281 18208 22204 22277 22278 22205 +18208 18281 18282 18209 22205 22278 22279 22206 +18209 18282 18283 18210 22206 22279 22280 22207 +18210 18283 18284 18211 22207 22280 22281 22208 +18211 18284 18285 18212 22208 22281 22282 22209 +18212 18285 18286 18213 22209 22282 22283 22210 +18213 18286 18287 18214 22210 22283 22284 22211 +18214 18287 18288 18215 22211 22284 22285 22212 +18215 18288 18289 18216 22212 22285 22286 22213 +18216 18289 18290 18217 22213 22286 22287 22214 +18217 18290 18291 18218 22214 22287 22288 22215 +18218 18291 18292 18219 22215 22288 22289 22216 +18219 18292 18293 18220 22216 22289 22290 22217 +18220 18293 18294 18221 22217 22290 22291 22218 +18221 18294 18295 18222 22218 22291 22292 22219 +18222 18295 18296 18223 22219 22292 22293 22220 +18223 18296 18297 18224 22220 22293 22294 22221 +18224 18297 18298 18225 22221 22294 22295 22222 +18225 18298 18299 18226 22222 22295 22296 22223 +18226 18299 18300 18227 22223 22296 22297 22224 +18227 18300 18301 18228 22224 22297 22298 22225 +18228 18301 18302 18229 22225 22298 22299 22226 +18229 18302 18303 18230 22226 22299 22300 22227 +18230 18303 18304 18231 22227 22300 22301 22228 +18231 18304 18305 18232 22228 22301 22302 22229 +18232 18305 18306 18233 22229 22302 22303 22230 +18233 18306 18307 18234 22230 22303 22304 22231 +18234 18307 18308 18235 22231 22304 22305 22232 +18235 18308 18309 18236 22232 22305 22306 22233 +18236 18309 18310 18237 22233 22306 22307 22234 +18237 18310 18311 18238 22234 22307 22308 22235 +18239 18312 18313 18240 22236 22309 22310 22237 +18240 18313 18314 18241 22237 22310 22311 22238 +18241 18314 18315 18242 22238 22311 22312 22239 +18242 18315 18316 18243 22239 22312 22313 22240 +18243 18316 18317 18244 22240 22313 22314 22241 +18244 18317 18318 18245 22241 22314 22315 22242 +18245 18318 18319 18246 22242 22315 22316 22243 +18246 18319 18320 18247 22243 22316 22317 22244 +18247 18320 18321 18248 22244 22317 22318 22245 +18248 18321 18322 18249 22245 22318 22319 22246 +18249 18322 18323 18250 22246 22319 22320 22247 +18250 18323 18324 18251 22247 22320 22321 22248 +18251 18324 18325 18252 22248 22321 22322 22249 +18252 18325 18326 18253 22249 22322 22323 22250 +18253 18326 18327 18254 22250 22323 22324 22251 +18254 18327 18328 18255 22251 22324 22325 22252 +18255 18328 18329 18256 22252 22325 22326 22253 +18256 18329 18330 18257 22253 22326 22327 22254 +18257 18330 18331 18258 22254 22327 22328 22255 +18258 18331 18332 18259 22255 22328 22329 22256 +18259 18332 18333 18260 22256 22329 22330 22257 +18260 18333 18334 18261 22257 22330 22331 22258 +18261 18334 18335 18262 22258 22331 22332 22259 +18262 18335 18336 18263 22259 22332 22333 22260 +18263 18336 18337 18264 22260 22333 22334 22261 +18264 18337 18338 18265 22261 22334 22335 22262 +18265 18338 18339 18266 22262 22335 22336 22263 +18266 18339 18340 18267 22263 22336 22337 22264 +18267 18340 18341 18268 22264 22337 22338 22265 +18268 18341 18342 18269 22265 22338 22339 22266 +18269 18342 18343 18270 22266 22339 22340 22267 +18270 18343 18344 18271 22267 22340 22341 22268 +18271 18344 18345 18272 22268 22341 22342 22269 +18272 18345 18346 18273 22269 22342 22343 22270 +18273 18346 18347 18274 22270 22343 22344 22271 +18274 18347 18348 18275 22271 22344 22345 22272 +18275 18348 18349 18276 22272 22345 22346 22273 +18276 18349 18350 18277 22273 22346 22347 22274 +18277 18350 18351 18278 22274 22347 22348 22275 +18278 18351 18352 18279 22275 22348 22349 22276 +18279 18352 18353 18280 22276 22349 22350 22277 +18280 18353 18354 18281 22277 22350 22351 22278 +18281 18354 18355 18282 22278 22351 22352 22279 +18282 18355 18356 18283 22279 22352 22353 22280 +18283 18356 18357 18284 22280 22353 22354 22281 +18284 18357 18358 18285 22281 22354 22355 22282 +18285 18358 18359 18286 22282 22355 22356 22283 +18286 18359 18360 18287 22283 22356 22357 22284 +18287 18360 18361 18288 22284 22357 22358 22285 +18288 18361 18362 18289 22285 22358 22359 22286 +18289 18362 18363 18290 22286 22359 22360 22287 +18290 18363 18364 18291 22287 22360 22361 22288 +18291 18364 18365 18292 22288 22361 22362 22289 +18292 18365 18366 18293 22289 22362 22363 22290 +18293 18366 18367 18294 22290 22363 22364 22291 +18294 18367 18368 18295 22291 22364 22365 22292 +18295 18368 18369 18296 22292 22365 22366 22293 +18296 18369 18370 18297 22293 22366 22367 22294 +18297 18370 18371 18298 22294 22367 22368 22295 +18298 18371 18372 18299 22295 22368 22369 22296 +18299 18372 18373 18300 22296 22369 22370 22297 +18300 18373 18374 18301 22297 22370 22371 22298 +18301 18374 18375 18302 22298 22371 22372 22299 +18302 18375 18376 18303 22299 22372 22373 22300 +18303 18376 18377 18304 22300 22373 22374 22301 +18304 18377 18378 18305 22301 22374 22375 22302 +18305 18378 18379 18306 22302 22375 22376 22303 +18306 18379 18380 18307 22303 22376 22377 22304 +18307 18380 18381 18308 22304 22377 22378 22305 +18308 18381 18382 18309 22305 22378 22379 22306 +18309 18382 18383 18310 22306 22379 22380 22307 +18310 18383 18384 18311 22307 22380 22381 22308 +18312 18385 18386 18313 22309 22382 22383 22310 +18313 18386 18387 18314 22310 22383 22384 22311 +18314 18387 18388 18315 22311 22384 22385 22312 +18315 18388 18389 18316 22312 22385 22386 22313 +18316 18389 18390 18317 22313 22386 22387 22314 +18317 18390 18391 18318 22314 22387 22388 22315 +18318 18391 18392 18319 22315 22388 22389 22316 +18319 18392 18393 18320 22316 22389 22390 22317 +18320 18393 18394 18321 22317 22390 22391 22318 +18321 18394 18395 18322 22318 22391 22392 22319 +18322 18395 18396 18323 22319 22392 22393 22320 +18323 18396 18397 18324 22320 22393 22394 22321 +18324 18397 18398 18325 22321 22394 22395 22322 +18325 18398 18399 18326 22322 22395 22396 22323 +18326 18399 18400 18327 22323 22396 22397 22324 +18327 18400 18401 18328 22324 22397 22398 22325 +18328 18401 18402 18329 22325 22398 22399 22326 +18329 18402 18403 18330 22326 22399 22400 22327 +18330 18403 18404 18331 22327 22400 22401 22328 +18331 18404 18405 18332 22328 22401 22402 22329 +18332 18405 18406 18333 22329 22402 22403 22330 +18333 18406 18407 18334 22330 22403 22404 22331 +18334 18407 18408 18335 22331 22404 22405 22332 +18335 18408 18409 18336 22332 22405 22406 22333 +18336 18409 18410 18337 22333 22406 22407 22334 +18337 18410 18411 18338 22334 22407 22408 22335 +18338 18411 18412 18339 22335 22408 22409 22336 +18339 18412 18413 18340 22336 22409 22410 22337 +18340 18413 18414 18341 22337 22410 22411 22338 +18341 18414 18415 18342 22338 22411 22412 22339 +18342 18415 18416 18343 22339 22412 22413 22340 +18343 18416 18417 18344 22340 22413 22414 22341 +18344 18417 18418 18345 22341 22414 22415 22342 +18345 18418 18419 18346 22342 22415 22416 22343 +18346 18419 18420 18347 22343 22416 22417 22344 +18347 18420 18421 18348 22344 22417 22418 22345 +18348 18421 18422 18349 22345 22418 22419 22346 +18349 18422 18423 18350 22346 22419 22420 22347 +18350 18423 18424 18351 22347 22420 22421 22348 +18351 18424 18425 18352 22348 22421 22422 22349 +18352 18425 18426 18353 22349 22422 22423 22350 +18353 18426 18427 18354 22350 22423 22424 22351 +18354 18427 18428 18355 22351 22424 22425 22352 +18355 18428 18429 18356 22352 22425 22426 22353 +18356 18429 18430 18357 22353 22426 22427 22354 +18357 18430 18431 18358 22354 22427 22428 22355 +18358 18431 18432 18359 22355 22428 22429 22356 +18359 18432 18433 18360 22356 22429 22430 22357 +18360 18433 18434 18361 22357 22430 22431 22358 +18361 18434 18435 18362 22358 22431 22432 22359 +18362 18435 18436 18363 22359 22432 22433 22360 +18363 18436 18437 18364 22360 22433 22434 22361 +18364 18437 18438 18365 22361 22434 22435 22362 +18365 18438 18439 18366 22362 22435 22436 22363 +18366 18439 18440 18367 22363 22436 22437 22364 +18367 18440 18441 18368 22364 22437 22438 22365 +18368 18441 18442 18369 22365 22438 22439 22366 +18369 18442 18443 18370 22366 22439 22440 22367 +18370 18443 18444 18371 22367 22440 22441 22368 +18371 18444 18445 18372 22368 22441 22442 22369 +18372 18445 18446 18373 22369 22442 22443 22370 +18373 18446 18447 18374 22370 22443 22444 22371 +18374 18447 18448 18375 22371 22444 22445 22372 +18375 18448 18449 18376 22372 22445 22446 22373 +18376 18449 18450 18377 22373 22446 22447 22374 +18377 18450 18451 18378 22374 22447 22448 22375 +18378 18451 18452 18379 22375 22448 22449 22376 +18379 18452 18453 18380 22376 22449 22450 22377 +18380 18453 18454 18381 22377 22450 22451 22378 +18381 18454 18455 18382 22378 22451 22452 22379 +18382 18455 18456 18383 22379 22452 22453 22380 +18383 18456 18457 18384 22380 22453 22454 22381 +18458 18459 18460 18461 22455 22456 22457 22458 +18459 18462 18463 18460 22456 22459 22460 22457 +18460 18463 18464 18465 22457 22460 22461 22462 +18460 18465 18466 18461 22457 22462 22463 22458 +18462 18467 18468 18463 22459 22464 22465 22460 +18463 18468 18469 18464 22460 22465 22466 22461 +18464 18469 18470 18471 22461 22466 22467 22468 +18464 18471 18472 18465 22461 22468 22469 22462 +18465 18472 18473 18466 22462 22469 22470 22463 +18467 18474 18475 18468 22464 22471 22472 22465 +18468 18475 18476 18469 22465 22472 22473 22466 +18469 18476 18477 18470 22466 22473 22474 22467 +18470 18477 18478 18479 22467 22474 22475 22476 +18470 18479 18480 18471 22467 22476 22477 22468 +18471 18480 18481 18472 22468 22477 22478 22469 +18472 18481 18482 18473 22469 22478 22479 22470 +18474 18483 18484 18475 22471 22480 22481 22472 +18475 18484 18485 18476 22472 22481 22482 22473 +18476 18485 18486 18477 22473 22482 22483 22474 +18477 18486 18487 18478 22474 22483 22484 22475 +18478 18487 18488 18489 22475 22484 22485 22486 +18478 18489 18490 18479 22475 22486 22487 22476 +18479 18490 18491 18480 22476 22487 22488 22477 +18480 18491 18492 18481 22477 22488 22489 22478 +18481 18492 18493 18482 22478 22489 22490 22479 +18483 18494 18495 18484 22480 22491 22492 22481 +18484 18495 18496 18485 22481 22492 22493 22482 +18485 18496 18497 18486 22482 22493 22494 22483 +18486 18497 18498 18487 22483 22494 22495 22484 +18487 18498 18499 18488 22484 22495 22496 22485 +18488 18499 18500 18501 22485 22496 22497 22498 +18488 18501 18502 18489 22485 22498 22499 22486 +18489 18502 18503 18490 22486 22499 22500 22487 +18490 18503 18504 18491 22487 22500 22501 22488 +18491 18504 18505 18492 22488 22501 22502 22489 +18492 18505 18506 18493 22489 22502 22503 22490 +18494 18507 18508 18495 22491 22504 22505 22492 +18495 18508 18509 18496 22492 22505 22506 22493 +18496 18509 18510 18497 22493 22506 22507 22494 +18497 18510 18511 18498 22494 22507 22508 22495 +18498 18511 18512 18499 22495 22508 22509 22496 +18499 18512 18513 18500 22496 22509 22510 22497 +18500 18513 18514 18515 22497 22510 22511 22512 +18500 18515 18516 18501 22497 22512 22513 22498 +18501 18516 18517 18502 22498 22513 22514 22499 +18502 18517 18518 18503 22499 22514 22515 22500 +18503 18518 18519 18504 22500 22515 22516 22501 +18504 18519 18520 18505 22501 22516 22517 22502 +18505 18520 18521 18506 22502 22517 22518 22503 +18507 18522 18523 18508 22504 22519 22520 22505 +18508 18523 18524 18509 22505 22520 22521 22506 +18509 18524 18525 18510 22506 22521 22522 22507 +18510 18525 18526 18511 22507 22522 22523 22508 +18511 18526 18527 18512 22508 22523 22524 22509 +18512 18527 18528 18513 22509 22524 22525 22510 +18513 18528 18529 18514 22510 22525 22526 22511 +18514 18529 18530 18531 22511 22526 22527 22528 +18514 18531 18532 18515 22511 22528 22529 22512 +18515 18532 18533 18516 22512 22529 22530 22513 +18516 18533 18534 18517 22513 22530 22531 22514 +18517 18534 18535 18518 22514 22531 22532 22515 +18518 18535 18536 18519 22515 22532 22533 22516 +18519 18536 18537 18520 22516 22533 22534 22517 +18520 18537 18538 18521 22517 22534 22535 22518 +18522 18539 18540 18523 22519 22536 22537 22520 +18523 18540 18541 18524 22520 22537 22538 22521 +18524 18541 18542 18525 22521 22538 22539 22522 +18525 18542 18543 18526 22522 22539 22540 22523 +18526 18543 18544 18527 22523 22540 22541 22524 +18527 18544 18545 18528 22524 22541 22542 22525 +18528 18545 18546 18529 22525 22542 22543 22526 +18529 18546 18547 18530 22526 22543 22544 22527 +18530 18547 18548 18549 22527 22544 22545 22546 +18530 18549 18550 18531 22527 22546 22547 22528 +18531 18550 18551 18532 22528 22547 22548 22529 +18532 18551 18552 18533 22529 22548 22549 22530 +18533 18552 18553 18534 22530 22549 22550 22531 +18534 18553 18554 18535 22531 22550 22551 22532 +18535 18554 18555 18536 22532 22551 22552 22533 +18536 18555 18556 18537 22533 22552 22553 22534 +18537 18556 18557 18538 22534 22553 22554 22535 +18539 18558 18559 18540 22536 22555 22556 22537 +18540 18559 18560 18541 22537 22556 22557 22538 +18541 18560 18561 18542 22538 22557 22558 22539 +18542 18561 18562 18543 22539 22558 22559 22540 +18543 18562 18563 18544 22540 22559 22560 22541 +18544 18563 18564 18545 22541 22560 22561 22542 +18545 18564 18565 18546 22542 22561 22562 22543 +18546 18565 18566 18547 22543 22562 22563 22544 +18547 18566 18567 18548 22544 22563 22564 22545 +18548 18567 18568 18569 22545 22564 22565 22566 +18548 18569 18570 18549 22545 22566 22567 22546 +18549 18570 18571 18550 22546 22567 22568 22547 +18550 18571 18572 18551 22547 22568 22569 22548 +18551 18572 18573 18552 22548 22569 22570 22549 +18552 18573 18574 18553 22549 22570 22571 22550 +18553 18574 18575 18554 22550 22571 22572 22551 +18554 18575 18576 18555 22551 22572 22573 22552 +18555 18576 18577 18556 22552 22573 22574 22553 +18556 18577 18578 18557 22553 22574 22575 22554 +18558 18579 18580 18559 22555 22576 22577 22556 +18559 18580 18581 18560 22556 22577 22578 22557 +18560 18581 18582 18561 22557 22578 22579 22558 +18561 18582 18583 18562 22558 22579 22580 22559 +18562 18583 18584 18563 22559 22580 22581 22560 +18563 18584 18585 18564 22560 22581 22582 22561 +18564 18585 18586 18565 22561 22582 22583 22562 +18565 18586 18587 18566 22562 22583 22584 22563 +18566 18587 18588 18567 22563 22584 22585 22564 +18567 18588 18589 18568 22564 22585 22586 22565 +18568 18589 18590 18591 22565 22586 22587 22588 +18568 18591 18592 18569 22565 22588 22589 22566 +18569 18592 18593 18570 22566 22589 22590 22567 +18570 18593 18594 18571 22567 22590 22591 22568 +18571 18594 18595 18572 22568 22591 22592 22569 +18572 18595 18596 18573 22569 22592 22593 22570 +18573 18596 18597 18574 22570 22593 22594 22571 +18574 18597 18598 18575 22571 22594 22595 22572 +18575 18598 18599 18576 22572 22595 22596 22573 +18576 18599 18600 18577 22573 22596 22597 22574 +18577 18600 18601 18578 22574 22597 22598 22575 +18579 18602 18603 18580 22576 22599 22600 22577 +18580 18603 18604 18581 22577 22600 22601 22578 +18581 18604 18605 18582 22578 22601 22602 22579 +18582 18605 18606 18583 22579 22602 22603 22580 +18583 18606 18607 18584 22580 22603 22604 22581 +18584 18607 18608 18585 22581 22604 22605 22582 +18585 18608 18609 18586 22582 22605 22606 22583 +18586 18609 18610 18587 22583 22606 22607 22584 +18587 18610 18611 18588 22584 22607 22608 22585 +18588 18611 18612 18589 22585 22608 22609 22586 +18589 18612 18613 18590 22586 22609 22610 22587 +18590 18613 18614 18615 22587 22610 22611 22612 +18590 18615 18616 18591 22587 22612 22613 22588 +18591 18616 18617 18592 22588 22613 22614 22589 +18592 18617 18618 18593 22589 22614 22615 22590 +18593 18618 18619 18594 22590 22615 22616 22591 +18594 18619 18620 18595 22591 22616 22617 22592 +18595 18620 18621 18596 22592 22617 22618 22593 +18596 18621 18622 18597 22593 22618 22619 22594 +18597 18622 18623 18598 22594 22619 22620 22595 +18598 18623 18624 18599 22595 22620 22621 22596 +18599 18624 18625 18600 22596 22621 22622 22597 +18600 18625 18626 18601 22597 22622 22623 22598 +18602 18627 18628 18603 22599 22624 22625 22600 +18603 18628 18629 18604 22600 22625 22626 22601 +18604 18629 18630 18605 22601 22626 22627 22602 +18605 18630 18631 18606 22602 22627 22628 22603 +18606 18631 18632 18607 22603 22628 22629 22604 +18607 18632 18633 18608 22604 22629 22630 22605 +18608 18633 18634 18609 22605 22630 22631 22606 +18609 18634 18635 18610 22606 22631 22632 22607 +18610 18635 18636 18611 22607 22632 22633 22608 +18611 18636 18637 18612 22608 22633 22634 22609 +18612 18637 18638 18613 22609 22634 22635 22610 +18613 18638 18639 18614 22610 22635 22636 22611 +18614 18639 18640 18641 22611 22636 22637 22638 +18614 18641 18642 18615 22611 22638 22639 22612 +18615 18642 18643 18616 22612 22639 22640 22613 +18616 18643 18644 18617 22613 22640 22641 22614 +18617 18644 18645 18618 22614 22641 22642 22615 +18618 18645 18646 18619 22615 22642 22643 22616 +18619 18646 18647 18620 22616 22643 22644 22617 +18620 18647 18648 18621 22617 22644 22645 22618 +18621 18648 18649 18622 22618 22645 22646 22619 +18622 18649 18650 18623 22619 22646 22647 22620 +18623 18650 18651 18624 22620 22647 22648 22621 +18624 18651 18652 18625 22621 22648 22649 22622 +18625 18652 18653 18626 22622 22649 22650 22623 +18627 18654 18655 18628 22624 22651 22652 22625 +18628 18655 18656 18629 22625 22652 22653 22626 +18629 18656 18657 18630 22626 22653 22654 22627 +18630 18657 18658 18631 22627 22654 22655 22628 +18631 18658 18659 18632 22628 22655 22656 22629 +18632 18659 18660 18633 22629 22656 22657 22630 +18633 18660 18661 18634 22630 22657 22658 22631 +18634 18661 18662 18635 22631 22658 22659 22632 +18635 18662 18663 18636 22632 22659 22660 22633 +18636 18663 18664 18637 22633 22660 22661 22634 +18637 18664 18665 18638 22634 22661 22662 22635 +18638 18665 18666 18639 22635 22662 22663 22636 +18639 18666 18667 18640 22636 22663 22664 22637 +18640 18667 18668 18669 22637 22664 22665 22666 +18640 18669 18670 18641 22637 22666 22667 22638 +18641 18670 18671 18642 22638 22667 22668 22639 +18642 18671 18672 18643 22639 22668 22669 22640 +18643 18672 18673 18644 22640 22669 22670 22641 +18644 18673 18674 18645 22641 22670 22671 22642 +18645 18674 18675 18646 22642 22671 22672 22643 +18646 18675 18676 18647 22643 22672 22673 22644 +18647 18676 18677 18648 22644 22673 22674 22645 +18648 18677 18678 18649 22645 22674 22675 22646 +18649 18678 18679 18650 22646 22675 22676 22647 +18650 18679 18680 18651 22647 22676 22677 22648 +18651 18680 18681 18652 22648 22677 22678 22649 +18652 18681 18682 18653 22649 22678 22679 22650 +18654 18683 18684 18655 22651 22680 22681 22652 +18655 18684 18685 18656 22652 22681 22682 22653 +18656 18685 18686 18657 22653 22682 22683 22654 +18657 18686 18687 18658 22654 22683 22684 22655 +18658 18687 18688 18659 22655 22684 22685 22656 +18659 18688 18689 18660 22656 22685 22686 22657 +18660 18689 18690 18661 22657 22686 22687 22658 +18661 18690 18691 18662 22658 22687 22688 22659 +18662 18691 18692 18663 22659 22688 22689 22660 +18663 18692 18693 18664 22660 22689 22690 22661 +18664 18693 18694 18665 22661 22690 22691 22662 +18665 18694 18695 18666 22662 22691 22692 22663 +18666 18695 18696 18667 22663 22692 22693 22664 +18667 18696 18697 18668 22664 22693 22694 22665 +18668 18697 18698 18699 22665 22694 22695 22696 +18668 18699 18700 18669 22665 22696 22697 22666 +18669 18700 18701 18670 22666 22697 22698 22667 +18670 18701 18702 18671 22667 22698 22699 22668 +18671 18702 18703 18672 22668 22699 22700 22669 +18672 18703 18704 18673 22669 22700 22701 22670 +18673 18704 18705 18674 22670 22701 22702 22671 +18674 18705 18706 18675 22671 22702 22703 22672 +18675 18706 18707 18676 22672 22703 22704 22673 +18676 18707 18708 18677 22673 22704 22705 22674 +18677 18708 18709 18678 22674 22705 22706 22675 +18678 18709 18710 18679 22675 22706 22707 22676 +18679 18710 18711 18680 22676 22707 22708 22677 +18680 18711 18712 18681 22677 22708 22709 22678 +18681 18712 18713 18682 22678 22709 22710 22679 +18683 18714 18715 18684 22680 22711 22712 22681 +18684 18715 18716 18685 22681 22712 22713 22682 +18685 18716 18717 18686 22682 22713 22714 22683 +18686 18717 18718 18687 22683 22714 22715 22684 +18687 18718 18719 18688 22684 22715 22716 22685 +18688 18719 18720 18689 22685 22716 22717 22686 +18689 18720 18721 18690 22686 22717 22718 22687 +18690 18721 18722 18691 22687 22718 22719 22688 +18691 18722 18723 18692 22688 22719 22720 22689 +18692 18723 18724 18693 22689 22720 22721 22690 +18693 18724 18725 18694 22690 22721 22722 22691 +18694 18725 18726 18695 22691 22722 22723 22692 +18695 18726 18727 18696 22692 22723 22724 22693 +18696 18727 18728 18697 22693 22724 22725 22694 +18697 18728 18729 18698 22694 22725 22726 22695 +18698 18729 18730 18731 22695 22726 22727 22728 +18698 18731 18732 18699 22695 22728 22729 22696 +18699 18732 18733 18700 22696 22729 22730 22697 +18700 18733 18734 18701 22697 22730 22731 22698 +18701 18734 18735 18702 22698 22731 22732 22699 +18702 18735 18736 18703 22699 22732 22733 22700 +18703 18736 18737 18704 22700 22733 22734 22701 +18704 18737 18738 18705 22701 22734 22735 22702 +18705 18738 18739 18706 22702 22735 22736 22703 +18706 18739 18740 18707 22703 22736 22737 22704 +18707 18740 18741 18708 22704 22737 22738 22705 +18708 18741 18742 18709 22705 22738 22739 22706 +18709 18742 18743 18710 22706 22739 22740 22707 +18710 18743 18744 18711 22707 22740 22741 22708 +18711 18744 18745 18712 22708 22741 22742 22709 +18712 18745 18746 18713 22709 22742 22743 22710 +18714 18747 18748 18715 22711 22744 22745 22712 +18715 18748 18749 18716 22712 22745 22746 22713 +18716 18749 18750 18717 22713 22746 22747 22714 +18717 18750 18751 18718 22714 22747 22748 22715 +18718 18751 18752 18719 22715 22748 22749 22716 +18719 18752 18753 18720 22716 22749 22750 22717 +18720 18753 18754 18721 22717 22750 22751 22718 +18721 18754 18755 18722 22718 22751 22752 22719 +18722 18755 18756 18723 22719 22752 22753 22720 +18723 18756 18757 18724 22720 22753 22754 22721 +18724 18757 18758 18725 22721 22754 22755 22722 +18725 18758 18759 18726 22722 22755 22756 22723 +18726 18759 18760 18727 22723 22756 22757 22724 +18727 18760 18761 18728 22724 22757 22758 22725 +18728 18761 18762 18729 22725 22758 22759 22726 +18729 18762 18763 18730 22726 22759 22760 22727 +18730 18763 18764 18765 22727 22760 22761 22762 +18730 18765 18766 18731 22727 22762 22763 22728 +18731 18766 18767 18732 22728 22763 22764 22729 +18732 18767 18768 18733 22729 22764 22765 22730 +18733 18768 18769 18734 22730 22765 22766 22731 +18734 18769 18770 18735 22731 22766 22767 22732 +18735 18770 18771 18736 22732 22767 22768 22733 +18736 18771 18772 18737 22733 22768 22769 22734 +18737 18772 18773 18738 22734 22769 22770 22735 +18738 18773 18774 18739 22735 22770 22771 22736 +18739 18774 18775 18740 22736 22771 22772 22737 +18740 18775 18776 18741 22737 22772 22773 22738 +18741 18776 18777 18742 22738 22773 22774 22739 +18742 18777 18778 18743 22739 22774 22775 22740 +18743 18778 18779 18744 22740 22775 22776 22741 +18744 18779 18780 18745 22741 22776 22777 22742 +18745 18780 18781 18746 22742 22777 22778 22743 +18747 18782 18783 18748 22744 22779 22780 22745 +18748 18783 18784 18749 22745 22780 22781 22746 +18749 18784 18785 18750 22746 22781 22782 22747 +18750 18785 18786 18751 22747 22782 22783 22748 +18751 18786 18787 18752 22748 22783 22784 22749 +18752 18787 18788 18753 22749 22784 22785 22750 +18753 18788 18789 18754 22750 22785 22786 22751 +18754 18789 18790 18755 22751 22786 22787 22752 +18755 18790 18791 18756 22752 22787 22788 22753 +18756 18791 18792 18757 22753 22788 22789 22754 +18757 18792 18793 18758 22754 22789 22790 22755 +18758 18793 18794 18759 22755 22790 22791 22756 +18759 18794 18795 18760 22756 22791 22792 22757 +18760 18795 18796 18761 22757 22792 22793 22758 +18761 18796 18797 18762 22758 22793 22794 22759 +18762 18797 18798 18763 22759 22794 22795 22760 +18763 18798 18799 18764 22760 22795 22796 22761 +18764 18799 18800 18801 22761 22796 22797 22798 +18764 18801 18802 18765 22761 22798 22799 22762 +18765 18802 18803 18766 22762 22799 22800 22763 +18766 18803 18804 18767 22763 22800 22801 22764 +18767 18804 18805 18768 22764 22801 22802 22765 +18768 18805 18806 18769 22765 22802 22803 22766 +18769 18806 18807 18770 22766 22803 22804 22767 +18770 18807 18808 18771 22767 22804 22805 22768 +18771 18808 18809 18772 22768 22805 22806 22769 +18772 18809 18810 18773 22769 22806 22807 22770 +18773 18810 18811 18774 22770 22807 22808 22771 +18774 18811 18812 18775 22771 22808 22809 22772 +18775 18812 18813 18776 22772 22809 22810 22773 +18776 18813 18814 18777 22773 22810 22811 22774 +18777 18814 18815 18778 22774 22811 22812 22775 +18778 18815 18816 18779 22775 22812 22813 22776 +18779 18816 18817 18780 22776 22813 22814 22777 +18780 18817 18818 18781 22777 22814 22815 22778 +18782 18819 18820 18783 22779 22816 22817 22780 +18783 18820 18821 18784 22780 22817 22818 22781 +18784 18821 18822 18785 22781 22818 22819 22782 +18785 18822 18823 18786 22782 22819 22820 22783 +18786 18823 18824 18787 22783 22820 22821 22784 +18787 18824 18825 18788 22784 22821 22822 22785 +18788 18825 18826 18789 22785 22822 22823 22786 +18789 18826 18827 18790 22786 22823 22824 22787 +18790 18827 18828 18791 22787 22824 22825 22788 +18791 18828 18829 18792 22788 22825 22826 22789 +18792 18829 18830 18793 22789 22826 22827 22790 +18793 18830 18831 18794 22790 22827 22828 22791 +18794 18831 18832 18795 22791 22828 22829 22792 +18795 18832 18833 18796 22792 22829 22830 22793 +18796 18833 18834 18797 22793 22830 22831 22794 +18797 18834 18835 18798 22794 22831 22832 22795 +18798 18835 18836 18799 22795 22832 22833 22796 +18799 18836 18837 18800 22796 22833 22834 22797 +18800 18837 18838 18839 22797 22834 22835 22836 +18800 18839 18840 18801 22797 22836 22837 22798 +18801 18840 18841 18802 22798 22837 22838 22799 +18802 18841 18842 18803 22799 22838 22839 22800 +18803 18842 18843 18804 22800 22839 22840 22801 +18804 18843 18844 18805 22801 22840 22841 22802 +18805 18844 18845 18806 22802 22841 22842 22803 +18806 18845 18846 18807 22803 22842 22843 22804 +18807 18846 18847 18808 22804 22843 22844 22805 +18808 18847 18848 18809 22805 22844 22845 22806 +18809 18848 18849 18810 22806 22845 22846 22807 +18810 18849 18850 18811 22807 22846 22847 22808 +18811 18850 18851 18812 22808 22847 22848 22809 +18812 18851 18852 18813 22809 22848 22849 22810 +18813 18852 18853 18814 22810 22849 22850 22811 +18814 18853 18854 18815 22811 22850 22851 22812 +18815 18854 18855 18816 22812 22851 22852 22813 +18816 18855 18856 18817 22813 22852 22853 22814 +18817 18856 18857 18818 22814 22853 22854 22815 +18819 18858 18859 18820 22816 22855 22856 22817 +18820 18859 18860 18821 22817 22856 22857 22818 +18821 18860 18861 18822 22818 22857 22858 22819 +18822 18861 18862 18823 22819 22858 22859 22820 +18823 18862 18863 18824 22820 22859 22860 22821 +18824 18863 18864 18825 22821 22860 22861 22822 +18825 18864 18865 18826 22822 22861 22862 22823 +18826 18865 18866 18827 22823 22862 22863 22824 +18827 18866 18867 18828 22824 22863 22864 22825 +18828 18867 18868 18829 22825 22864 22865 22826 +18829 18868 18869 18830 22826 22865 22866 22827 +18830 18869 18870 18831 22827 22866 22867 22828 +18831 18870 18871 18832 22828 22867 22868 22829 +18832 18871 18872 18833 22829 22868 22869 22830 +18833 18872 18873 18834 22830 22869 22870 22831 +18834 18873 18874 18835 22831 22870 22871 22832 +18835 18874 18875 18836 22832 22871 22872 22833 +18836 18875 18876 18837 22833 22872 22873 22834 +18837 18876 18877 18838 22834 22873 22874 22835 +18838 18877 18878 18879 22835 22874 22875 22876 +18838 18879 18880 18839 22835 22876 22877 22836 +18839 18880 18881 18840 22836 22877 22878 22837 +18840 18881 18882 18841 22837 22878 22879 22838 +18841 18882 18883 18842 22838 22879 22880 22839 +18842 18883 18884 18843 22839 22880 22881 22840 +18843 18884 18885 18844 22840 22881 22882 22841 +18844 18885 18886 18845 22841 22882 22883 22842 +18845 18886 18887 18846 22842 22883 22884 22843 +18846 18887 18888 18847 22843 22884 22885 22844 +18847 18888 18889 18848 22844 22885 22886 22845 +18848 18889 18890 18849 22845 22886 22887 22846 +18849 18890 18891 18850 22846 22887 22888 22847 +18850 18891 18892 18851 22847 22888 22889 22848 +18851 18892 18893 18852 22848 22889 22890 22849 +18852 18893 18894 18853 22849 22890 22891 22850 +18853 18894 18895 18854 22850 22891 22892 22851 +18854 18895 18896 18855 22851 22892 22893 22852 +18855 18896 18897 18856 22852 22893 22894 22853 +18856 18897 18898 18857 22853 22894 22895 22854 +18858 18899 18900 18859 22855 22896 22897 22856 +18859 18900 18901 18860 22856 22897 22898 22857 +18860 18901 18902 18861 22857 22898 22899 22858 +18861 18902 18903 18862 22858 22899 22900 22859 +18862 18903 18904 18863 22859 22900 22901 22860 +18863 18904 18905 18864 22860 22901 22902 22861 +18864 18905 18906 18865 22861 22902 22903 22862 +18865 18906 18907 18866 22862 22903 22904 22863 +18866 18907 18908 18867 22863 22904 22905 22864 +18867 18908 18909 18868 22864 22905 22906 22865 +18868 18909 18910 18869 22865 22906 22907 22866 +18869 18910 18911 18870 22866 22907 22908 22867 +18870 18911 18912 18871 22867 22908 22909 22868 +18871 18912 18913 18872 22868 22909 22910 22869 +18872 18913 18914 18873 22869 22910 22911 22870 +18873 18914 18915 18874 22870 22911 22912 22871 +18874 18915 18916 18875 22871 22912 22913 22872 +18875 18916 18917 18876 22872 22913 22914 22873 +18876 18917 18918 18877 22873 22914 22915 22874 +18877 18918 18919 18878 22874 22915 22916 22875 +18878 18919 18920 18921 22875 22916 22917 22918 +18878 18921 18922 18879 22875 22918 22919 22876 +18879 18922 18923 18880 22876 22919 22920 22877 +18880 18923 18924 18881 22877 22920 22921 22878 +18881 18924 18925 18882 22878 22921 22922 22879 +18882 18925 18926 18883 22879 22922 22923 22880 +18883 18926 18927 18884 22880 22923 22924 22881 +18884 18927 18928 18885 22881 22924 22925 22882 +18885 18928 18929 18886 22882 22925 22926 22883 +18886 18929 18930 18887 22883 22926 22927 22884 +18887 18930 18931 18888 22884 22927 22928 22885 +18888 18931 18932 18889 22885 22928 22929 22886 +18889 18932 18933 18890 22886 22929 22930 22887 +18890 18933 18934 18891 22887 22930 22931 22888 +18891 18934 18935 18892 22888 22931 22932 22889 +18892 18935 18936 18893 22889 22932 22933 22890 +18893 18936 18937 18894 22890 22933 22934 22891 +18894 18937 18938 18895 22891 22934 22935 22892 +18895 18938 18939 18896 22892 22935 22936 22893 +18896 18939 18940 18897 22893 22936 22937 22894 +18897 18940 18941 18898 22894 22937 22938 22895 +18899 18942 18943 18900 22896 22939 22940 22897 +18900 18943 18944 18901 22897 22940 22941 22898 +18901 18944 18945 18902 22898 22941 22942 22899 +18902 18945 18946 18903 22899 22942 22943 22900 +18903 18946 18947 18904 22900 22943 22944 22901 +18904 18947 18948 18905 22901 22944 22945 22902 +18905 18948 18949 18906 22902 22945 22946 22903 +18906 18949 18950 18907 22903 22946 22947 22904 +18907 18950 18951 18908 22904 22947 22948 22905 +18908 18951 18952 18909 22905 22948 22949 22906 +18909 18952 18953 18910 22906 22949 22950 22907 +18910 18953 18954 18911 22907 22950 22951 22908 +18911 18954 18955 18912 22908 22951 22952 22909 +18912 18955 18956 18913 22909 22952 22953 22910 +18913 18956 18957 18914 22910 22953 22954 22911 +18914 18957 18958 18915 22911 22954 22955 22912 +18915 18958 18959 18916 22912 22955 22956 22913 +18916 18959 18960 18917 22913 22956 22957 22914 +18917 18960 18961 18918 22914 22957 22958 22915 +18918 18961 18962 18919 22915 22958 22959 22916 +18919 18962 18963 18920 22916 22959 22960 22917 +18920 18963 18964 18965 22917 22960 22961 22962 +18920 18965 18966 18921 22917 22962 22963 22918 +18921 18966 18967 18922 22918 22963 22964 22919 +18922 18967 18968 18923 22919 22964 22965 22920 +18923 18968 18969 18924 22920 22965 22966 22921 +18924 18969 18970 18925 22921 22966 22967 22922 +18925 18970 18971 18926 22922 22967 22968 22923 +18926 18971 18972 18927 22923 22968 22969 22924 +18927 18972 18973 18928 22924 22969 22970 22925 +18928 18973 18974 18929 22925 22970 22971 22926 +18929 18974 18975 18930 22926 22971 22972 22927 +18930 18975 18976 18931 22927 22972 22973 22928 +18931 18976 18977 18932 22928 22973 22974 22929 +18932 18977 18978 18933 22929 22974 22975 22930 +18933 18978 18979 18934 22930 22975 22976 22931 +18934 18979 18980 18935 22931 22976 22977 22932 +18935 18980 18981 18936 22932 22977 22978 22933 +18936 18981 18982 18937 22933 22978 22979 22934 +18937 18982 18983 18938 22934 22979 22980 22935 +18938 18983 18984 18939 22935 22980 22981 22936 +18939 18984 18985 18940 22936 22981 22982 22937 +18940 18985 18986 18941 22937 22982 22983 22938 +18942 18987 18988 18943 22939 22984 22985 22940 +18943 18988 18989 18944 22940 22985 22986 22941 +18944 18989 18990 18945 22941 22986 22987 22942 +18945 18990 18991 18946 22942 22987 22988 22943 +18946 18991 18992 18947 22943 22988 22989 22944 +18947 18992 18993 18948 22944 22989 22990 22945 +18948 18993 18994 18949 22945 22990 22991 22946 +18949 18994 18995 18950 22946 22991 22992 22947 +18950 18995 18996 18951 22947 22992 22993 22948 +18951 18996 18997 18952 22948 22993 22994 22949 +18952 18997 18998 18953 22949 22994 22995 22950 +18953 18998 18999 18954 22950 22995 22996 22951 +18954 18999 19000 18955 22951 22996 22997 22952 +18955 19000 19001 18956 22952 22997 22998 22953 +18956 19001 19002 18957 22953 22998 22999 22954 +18957 19002 19003 18958 22954 22999 23000 22955 +18958 19003 19004 18959 22955 23000 23001 22956 +18959 19004 19005 18960 22956 23001 23002 22957 +18960 19005 19006 18961 22957 23002 23003 22958 +18961 19006 19007 18962 22958 23003 23004 22959 +18962 19007 19008 18963 22959 23004 23005 22960 +18963 19008 19009 18964 22960 23005 23006 22961 +18964 19009 19010 19011 22961 23006 23007 23008 +18964 19011 19012 18965 22961 23008 23009 22962 +18965 19012 19013 18966 22962 23009 23010 22963 +18966 19013 19014 18967 22963 23010 23011 22964 +18967 19014 19015 18968 22964 23011 23012 22965 +18968 19015 19016 18969 22965 23012 23013 22966 +18969 19016 19017 18970 22966 23013 23014 22967 +18970 19017 19018 18971 22967 23014 23015 22968 +18971 19018 19019 18972 22968 23015 23016 22969 +18972 19019 19020 18973 22969 23016 23017 22970 +18973 19020 19021 18974 22970 23017 23018 22971 +18974 19021 19022 18975 22971 23018 23019 22972 +18975 19022 19023 18976 22972 23019 23020 22973 +18976 19023 19024 18977 22973 23020 23021 22974 +18977 19024 19025 18978 22974 23021 23022 22975 +18978 19025 19026 18979 22975 23022 23023 22976 +18979 19026 19027 18980 22976 23023 23024 22977 +18980 19027 19028 18981 22977 23024 23025 22978 +18981 19028 19029 18982 22978 23025 23026 22979 +18982 19029 19030 18983 22979 23026 23027 22980 +18983 19030 19031 18984 22980 23027 23028 22981 +18984 19031 19032 18985 22981 23028 23029 22982 +18985 19032 19033 18986 22982 23029 23030 22983 +18987 19034 19035 18988 22984 23031 23032 22985 +18988 19035 19036 18989 22985 23032 23033 22986 +18989 19036 19037 18990 22986 23033 23034 22987 +18990 19037 19038 18991 22987 23034 23035 22988 +18991 19038 19039 18992 22988 23035 23036 22989 +18992 19039 19040 18993 22989 23036 23037 22990 +18993 19040 19041 18994 22990 23037 23038 22991 +18994 19041 19042 18995 22991 23038 23039 22992 +18995 19042 19043 18996 22992 23039 23040 22993 +18996 19043 19044 18997 22993 23040 23041 22994 +18997 19044 19045 18998 22994 23041 23042 22995 +18998 19045 19046 18999 22995 23042 23043 22996 +18999 19046 19047 19000 22996 23043 23044 22997 +19000 19047 19048 19001 22997 23044 23045 22998 +19001 19048 19049 19002 22998 23045 23046 22999 +19002 19049 19050 19003 22999 23046 23047 23000 +19003 19050 19051 19004 23000 23047 23048 23001 +19004 19051 19052 19005 23001 23048 23049 23002 +19005 19052 19053 19006 23002 23049 23050 23003 +19006 19053 19054 19007 23003 23050 23051 23004 +19007 19054 19055 19008 23004 23051 23052 23005 +19008 19055 19056 19009 23005 23052 23053 23006 +19009 19056 19057 19010 23006 23053 23054 23007 +19010 19057 19058 19059 23007 23054 23055 23056 +19010 19059 19060 19011 23007 23056 23057 23008 +19011 19060 19061 19012 23008 23057 23058 23009 +19012 19061 19062 19013 23009 23058 23059 23010 +19013 19062 19063 19014 23010 23059 23060 23011 +19014 19063 19064 19015 23011 23060 23061 23012 +19015 19064 19065 19016 23012 23061 23062 23013 +19016 19065 19066 19017 23013 23062 23063 23014 +19017 19066 19067 19018 23014 23063 23064 23015 +19018 19067 19068 19019 23015 23064 23065 23016 +19019 19068 19069 19020 23016 23065 23066 23017 +19020 19069 19070 19021 23017 23066 23067 23018 +19021 19070 19071 19022 23018 23067 23068 23019 +19022 19071 19072 19023 23019 23068 23069 23020 +19023 19072 19073 19024 23020 23069 23070 23021 +19024 19073 19074 19025 23021 23070 23071 23022 +19025 19074 19075 19026 23022 23071 23072 23023 +19026 19075 19076 19027 23023 23072 23073 23024 +19027 19076 19077 19028 23024 23073 23074 23025 +19028 19077 19078 19029 23025 23074 23075 23026 +19029 19078 19079 19030 23026 23075 23076 23027 +19030 19079 19080 19031 23027 23076 23077 23028 +19031 19080 19081 19032 23028 23077 23078 23029 +19032 19081 19082 19033 23029 23078 23079 23030 +19034 19083 19084 19035 23031 23080 23081 23032 +19035 19084 19085 19036 23032 23081 23082 23033 +19036 19085 19086 19037 23033 23082 23083 23034 +19037 19086 19087 19038 23034 23083 23084 23035 +19038 19087 19088 19039 23035 23084 23085 23036 +19039 19088 19089 19040 23036 23085 23086 23037 +19040 19089 19090 19041 23037 23086 23087 23038 +19041 19090 19091 19042 23038 23087 23088 23039 +19042 19091 19092 19043 23039 23088 23089 23040 +19043 19092 19093 19044 23040 23089 23090 23041 +19044 19093 19094 19045 23041 23090 23091 23042 +19045 19094 19095 19046 23042 23091 23092 23043 +19046 19095 19096 19047 23043 23092 23093 23044 +19047 19096 19097 19048 23044 23093 23094 23045 +19048 19097 19098 19049 23045 23094 23095 23046 +19049 19098 19099 19050 23046 23095 23096 23047 +19050 19099 19100 19051 23047 23096 23097 23048 +19051 19100 19101 19052 23048 23097 23098 23049 +19052 19101 19102 19053 23049 23098 23099 23050 +19053 19102 19103 19054 23050 23099 23100 23051 +19054 19103 19104 19055 23051 23100 23101 23052 +19055 19104 19105 19056 23052 23101 23102 23053 +19056 19105 19106 19057 23053 23102 23103 23054 +19057 19106 19107 19058 23054 23103 23104 23055 +19058 19107 19108 19109 23055 23104 23105 23106 +19058 19109 19110 19059 23055 23106 23107 23056 +19059 19110 19111 19060 23056 23107 23108 23057 +19060 19111 19112 19061 23057 23108 23109 23058 +19061 19112 19113 19062 23058 23109 23110 23059 +19062 19113 19114 19063 23059 23110 23111 23060 +19063 19114 19115 19064 23060 23111 23112 23061 +19064 19115 19116 19065 23061 23112 23113 23062 +19065 19116 19117 19066 23062 23113 23114 23063 +19066 19117 19118 19067 23063 23114 23115 23064 +19067 19118 19119 19068 23064 23115 23116 23065 +19068 19119 19120 19069 23065 23116 23117 23066 +19069 19120 19121 19070 23066 23117 23118 23067 +19070 19121 19122 19071 23067 23118 23119 23068 +19071 19122 19123 19072 23068 23119 23120 23069 +19072 19123 19124 19073 23069 23120 23121 23070 +19073 19124 19125 19074 23070 23121 23122 23071 +19074 19125 19126 19075 23071 23122 23123 23072 +19075 19126 19127 19076 23072 23123 23124 23073 +19076 19127 19128 19077 23073 23124 23125 23074 +19077 19128 19129 19078 23074 23125 23126 23075 +19078 19129 19130 19079 23075 23126 23127 23076 +19079 19130 19131 19080 23076 23127 23128 23077 +19080 19131 19132 19081 23077 23128 23129 23078 +19081 19132 19133 19082 23078 23129 23130 23079 +19083 19134 19135 19084 23080 23131 23132 23081 +19084 19135 19136 19085 23081 23132 23133 23082 +19085 19136 19137 19086 23082 23133 23134 23083 +19086 19137 19138 19087 23083 23134 23135 23084 +19087 19138 19139 19088 23084 23135 23136 23085 +19088 19139 19140 19089 23085 23136 23137 23086 +19089 19140 19141 19090 23086 23137 23138 23087 +19090 19141 19142 19091 23087 23138 23139 23088 +19091 19142 19143 19092 23088 23139 23140 23089 +19092 19143 19144 19093 23089 23140 23141 23090 +19093 19144 19145 19094 23090 23141 23142 23091 +19094 19145 19146 19095 23091 23142 23143 23092 +19095 19146 19147 19096 23092 23143 23144 23093 +19096 19147 19148 19097 23093 23144 23145 23094 +19097 19148 19149 19098 23094 23145 23146 23095 +19098 19149 19150 19099 23095 23146 23147 23096 +19099 19150 19151 19100 23096 23147 23148 23097 +19100 19151 19152 19101 23097 23148 23149 23098 +19101 19152 19153 19102 23098 23149 23150 23099 +19102 19153 19154 19103 23099 23150 23151 23100 +19103 19154 19155 19104 23100 23151 23152 23101 +19104 19155 19156 19105 23101 23152 23153 23102 +19105 19156 19157 19106 23102 23153 23154 23103 +19106 19157 19158 19107 23103 23154 23155 23104 +19107 19158 19159 19108 23104 23155 23156 23105 +19108 19159 19160 19161 23105 23156 23157 23158 +19108 19161 19162 19109 23105 23158 23159 23106 +19109 19162 19163 19110 23106 23159 23160 23107 +19110 19163 19164 19111 23107 23160 23161 23108 +19111 19164 19165 19112 23108 23161 23162 23109 +19112 19165 19166 19113 23109 23162 23163 23110 +19113 19166 19167 19114 23110 23163 23164 23111 +19114 19167 19168 19115 23111 23164 23165 23112 +19115 19168 19169 19116 23112 23165 23166 23113 +19116 19169 19170 19117 23113 23166 23167 23114 +19117 19170 19171 19118 23114 23167 23168 23115 +19118 19171 19172 19119 23115 23168 23169 23116 +19119 19172 19173 19120 23116 23169 23170 23117 +19120 19173 19174 19121 23117 23170 23171 23118 +19121 19174 19175 19122 23118 23171 23172 23119 +19122 19175 19176 19123 23119 23172 23173 23120 +19123 19176 19177 19124 23120 23173 23174 23121 +19124 19177 19178 19125 23121 23174 23175 23122 +19125 19178 19179 19126 23122 23175 23176 23123 +19126 19179 19180 19127 23123 23176 23177 23124 +19127 19180 19181 19128 23124 23177 23178 23125 +19128 19181 19182 19129 23125 23178 23179 23126 +19129 19182 19183 19130 23126 23179 23180 23127 +19130 19183 19184 19131 23127 23180 23181 23128 +19131 19184 19185 19132 23128 23181 23182 23129 +19132 19185 19186 19133 23129 23182 23183 23130 +19134 19187 19188 19135 23131 23184 23185 23132 +19135 19188 19189 19136 23132 23185 23186 23133 +19136 19189 19190 19137 23133 23186 23187 23134 +19137 19190 19191 19138 23134 23187 23188 23135 +19138 19191 19192 19139 23135 23188 23189 23136 +19139 19192 19193 19140 23136 23189 23190 23137 +19140 19193 19194 19141 23137 23190 23191 23138 +19141 19194 19195 19142 23138 23191 23192 23139 +19142 19195 19196 19143 23139 23192 23193 23140 +19143 19196 19197 19144 23140 23193 23194 23141 +19144 19197 19198 19145 23141 23194 23195 23142 +19145 19198 19199 19146 23142 23195 23196 23143 +19146 19199 19200 19147 23143 23196 23197 23144 +19147 19200 19201 19148 23144 23197 23198 23145 +19148 19201 19202 19149 23145 23198 23199 23146 +19149 19202 19203 19150 23146 23199 23200 23147 +19150 19203 19204 19151 23147 23200 23201 23148 +19151 19204 19205 19152 23148 23201 23202 23149 +19152 19205 19206 19153 23149 23202 23203 23150 +19153 19206 19207 19154 23150 23203 23204 23151 +19154 19207 19208 19155 23151 23204 23205 23152 +19155 19208 19209 19156 23152 23205 23206 23153 +19156 19209 19210 19157 23153 23206 23207 23154 +19157 19210 19211 19158 23154 23207 23208 23155 +19158 19211 19212 19159 23155 23208 23209 23156 +19159 19212 19213 19160 23156 23209 23210 23157 +19160 19213 19214 19215 23157 23210 23211 23212 +19160 19215 19216 19161 23157 23212 23213 23158 +19161 19216 19217 19162 23158 23213 23214 23159 +19162 19217 19218 19163 23159 23214 23215 23160 +19163 19218 19219 19164 23160 23215 23216 23161 +19164 19219 19220 19165 23161 23216 23217 23162 +19165 19220 19221 19166 23162 23217 23218 23163 +19166 19221 19222 19167 23163 23218 23219 23164 +19167 19222 19223 19168 23164 23219 23220 23165 +19168 19223 19224 19169 23165 23220 23221 23166 +19169 19224 19225 19170 23166 23221 23222 23167 +19170 19225 19226 19171 23167 23222 23223 23168 +19171 19226 19227 19172 23168 23223 23224 23169 +19172 19227 19228 19173 23169 23224 23225 23170 +19173 19228 19229 19174 23170 23225 23226 23171 +19174 19229 19230 19175 23171 23226 23227 23172 +19175 19230 19231 19176 23172 23227 23228 23173 +19176 19231 19232 19177 23173 23228 23229 23174 +19177 19232 19233 19178 23174 23229 23230 23175 +19178 19233 19234 19179 23175 23230 23231 23176 +19179 19234 19235 19180 23176 23231 23232 23177 +19180 19235 19236 19181 23177 23232 23233 23178 +19181 19236 19237 19182 23178 23233 23234 23179 +19182 19237 19238 19183 23179 23234 23235 23180 +19183 19238 19239 19184 23180 23235 23236 23181 +19184 19239 19240 19185 23181 23236 23237 23182 +19185 19240 19241 19186 23182 23237 23238 23183 +19187 19242 19243 19188 23184 23239 23240 23185 +19188 19243 19244 19189 23185 23240 23241 23186 +19189 19244 19245 19190 23186 23241 23242 23187 +19190 19245 19246 19191 23187 23242 23243 23188 +19191 19246 19247 19192 23188 23243 23244 23189 +19192 19247 19248 19193 23189 23244 23245 23190 +19193 19248 19249 19194 23190 23245 23246 23191 +19194 19249 19250 19195 23191 23246 23247 23192 +19195 19250 19251 19196 23192 23247 23248 23193 +19196 19251 19252 19197 23193 23248 23249 23194 +19197 19252 19253 19198 23194 23249 23250 23195 +19198 19253 19254 19199 23195 23250 23251 23196 +19199 19254 19255 19200 23196 23251 23252 23197 +19200 19255 19256 19201 23197 23252 23253 23198 +19201 19256 19257 19202 23198 23253 23254 23199 +19202 19257 19258 19203 23199 23254 23255 23200 +19203 19258 19259 19204 23200 23255 23256 23201 +19204 19259 19260 19205 23201 23256 23257 23202 +19205 19260 19261 19206 23202 23257 23258 23203 +19206 19261 19262 19207 23203 23258 23259 23204 +19207 19262 19263 19208 23204 23259 23260 23205 +19208 19263 19264 19209 23205 23260 23261 23206 +19209 19264 19265 19210 23206 23261 23262 23207 +19210 19265 19266 19211 23207 23262 23263 23208 +19211 19266 19267 19212 23208 23263 23264 23209 +19212 19267 19268 19213 23209 23264 23265 23210 +19213 19268 19269 19214 23210 23265 23266 23211 +19214 19269 19270 19271 23211 23266 23267 23268 +19214 19271 19272 19215 23211 23268 23269 23212 +19215 19272 19273 19216 23212 23269 23270 23213 +19216 19273 19274 19217 23213 23270 23271 23214 +19217 19274 19275 19218 23214 23271 23272 23215 +19218 19275 19276 19219 23215 23272 23273 23216 +19219 19276 19277 19220 23216 23273 23274 23217 +19220 19277 19278 19221 23217 23274 23275 23218 +19221 19278 19279 19222 23218 23275 23276 23219 +19222 19279 19280 19223 23219 23276 23277 23220 +19223 19280 19281 19224 23220 23277 23278 23221 +19224 19281 19282 19225 23221 23278 23279 23222 +19225 19282 19283 19226 23222 23279 23280 23223 +19226 19283 19284 19227 23223 23280 23281 23224 +19227 19284 19285 19228 23224 23281 23282 23225 +19228 19285 19286 19229 23225 23282 23283 23226 +19229 19286 19287 19230 23226 23283 23284 23227 +19230 19287 19288 19231 23227 23284 23285 23228 +19231 19288 19289 19232 23228 23285 23286 23229 +19232 19289 19290 19233 23229 23286 23287 23230 +19233 19290 19291 19234 23230 23287 23288 23231 +19234 19291 19292 19235 23231 23288 23289 23232 +19235 19292 19293 19236 23232 23289 23290 23233 +19236 19293 19294 19237 23233 23290 23291 23234 +19237 19294 19295 19238 23234 23291 23292 23235 +19238 19295 19296 19239 23235 23292 23293 23236 +19239 19296 19297 19240 23236 23293 23294 23237 +19240 19297 19298 19241 23237 23294 23295 23238 +19242 19299 19300 19243 23239 23296 23297 23240 +19243 19300 19301 19244 23240 23297 23298 23241 +19244 19301 19302 19245 23241 23298 23299 23242 +19245 19302 19303 19246 23242 23299 23300 23243 +19246 19303 19304 19247 23243 23300 23301 23244 +19247 19304 19305 19248 23244 23301 23302 23245 +19248 19305 19306 19249 23245 23302 23303 23246 +19249 19306 19307 19250 23246 23303 23304 23247 +19250 19307 19308 19251 23247 23304 23305 23248 +19251 19308 19309 19252 23248 23305 23306 23249 +19252 19309 19310 19253 23249 23306 23307 23250 +19253 19310 19311 19254 23250 23307 23308 23251 +19254 19311 19312 19255 23251 23308 23309 23252 +19255 19312 19313 19256 23252 23309 23310 23253 +19256 19313 19314 19257 23253 23310 23311 23254 +19257 19314 19315 19258 23254 23311 23312 23255 +19258 19315 19316 19259 23255 23312 23313 23256 +19259 19316 19317 19260 23256 23313 23314 23257 +19260 19317 19318 19261 23257 23314 23315 23258 +19261 19318 19319 19262 23258 23315 23316 23259 +19262 19319 19320 19263 23259 23316 23317 23260 +19263 19320 19321 19264 23260 23317 23318 23261 +19264 19321 19322 19265 23261 23318 23319 23262 +19265 19322 19323 19266 23262 23319 23320 23263 +19266 19323 19324 19267 23263 23320 23321 23264 +19267 19324 19325 19268 23264 23321 23322 23265 +19268 19325 19326 19269 23265 23322 23323 23266 +19269 19326 19327 19270 23266 23323 23324 23267 +19270 19327 19328 19329 23267 23324 23325 23326 +19270 19329 19330 19271 23267 23326 23327 23268 +19271 19330 19331 19272 23268 23327 23328 23269 +19272 19331 19332 19273 23269 23328 23329 23270 +19273 19332 19333 19274 23270 23329 23330 23271 +19274 19333 19334 19275 23271 23330 23331 23272 +19275 19334 19335 19276 23272 23331 23332 23273 +19276 19335 19336 19277 23273 23332 23333 23274 +19277 19336 19337 19278 23274 23333 23334 23275 +19278 19337 19338 19279 23275 23334 23335 23276 +19279 19338 19339 19280 23276 23335 23336 23277 +19280 19339 19340 19281 23277 23336 23337 23278 +19281 19340 19341 19282 23278 23337 23338 23279 +19282 19341 19342 19283 23279 23338 23339 23280 +19283 19342 19343 19284 23280 23339 23340 23281 +19284 19343 19344 19285 23281 23340 23341 23282 +19285 19344 19345 19286 23282 23341 23342 23283 +19286 19345 19346 19287 23283 23342 23343 23284 +19287 19346 19347 19288 23284 23343 23344 23285 +19288 19347 19348 19289 23285 23344 23345 23286 +19289 19348 19349 19290 23286 23345 23346 23287 +19290 19349 19350 19291 23287 23346 23347 23288 +19291 19350 19351 19292 23288 23347 23348 23289 +19292 19351 19352 19293 23289 23348 23349 23290 +19293 19352 19353 19294 23290 23349 23350 23291 +19294 19353 19354 19295 23291 23350 23351 23292 +19295 19354 19355 19296 23292 23351 23352 23293 +19296 19355 19356 19297 23293 23352 23353 23294 +19297 19356 19357 19298 23294 23353 23354 23295 +19299 19358 19359 19300 23296 23355 23356 23297 +19300 19359 19360 19301 23297 23356 23357 23298 +19301 19360 19361 19302 23298 23357 23358 23299 +19302 19361 19362 19303 23299 23358 23359 23300 +19303 19362 19363 19304 23300 23359 23360 23301 +19304 19363 19364 19305 23301 23360 23361 23302 +19305 19364 19365 19306 23302 23361 23362 23303 +19306 19365 19366 19307 23303 23362 23363 23304 +19307 19366 19367 19308 23304 23363 23364 23305 +19308 19367 19368 19309 23305 23364 23365 23306 +19309 19368 19369 19310 23306 23365 23366 23307 +19310 19369 19370 19311 23307 23366 23367 23308 +19311 19370 19371 19312 23308 23367 23368 23309 +19312 19371 19372 19313 23309 23368 23369 23310 +19313 19372 19373 19314 23310 23369 23370 23311 +19314 19373 19374 19315 23311 23370 23371 23312 +19315 19374 19375 19316 23312 23371 23372 23313 +19316 19375 19376 19317 23313 23372 23373 23314 +19317 19376 19377 19318 23314 23373 23374 23315 +19318 19377 19378 19319 23315 23374 23375 23316 +19319 19378 19379 19320 23316 23375 23376 23317 +19320 19379 19380 19321 23317 23376 23377 23318 +19321 19380 19381 19322 23318 23377 23378 23319 +19322 19381 19382 19323 23319 23378 23379 23320 +19323 19382 19383 19324 23320 23379 23380 23321 +19324 19383 19384 19325 23321 23380 23381 23322 +19325 19384 19385 19326 23322 23381 23382 23323 +19326 19385 19386 19327 23323 23382 23383 23324 +19327 19386 19387 19328 23324 23383 23384 23325 +19328 19387 19388 19389 23325 23384 23385 23386 +19328 19389 19390 19329 23325 23386 23387 23326 +19329 19390 19391 19330 23326 23387 23388 23327 +19330 19391 19392 19331 23327 23388 23389 23328 +19331 19392 19393 19332 23328 23389 23390 23329 +19332 19393 19394 19333 23329 23390 23391 23330 +19333 19394 19395 19334 23330 23391 23392 23331 +19334 19395 19396 19335 23331 23392 23393 23332 +19335 19396 19397 19336 23332 23393 23394 23333 +19336 19397 19398 19337 23333 23394 23395 23334 +19337 19398 19399 19338 23334 23395 23396 23335 +19338 19399 19400 19339 23335 23396 23397 23336 +19339 19400 19401 19340 23336 23397 23398 23337 +19340 19401 19402 19341 23337 23398 23399 23338 +19341 19402 19403 19342 23338 23399 23400 23339 +19342 19403 19404 19343 23339 23400 23401 23340 +19343 19404 19405 19344 23340 23401 23402 23341 +19344 19405 19406 19345 23341 23402 23403 23342 +19345 19406 19407 19346 23342 23403 23404 23343 +19346 19407 19408 19347 23343 23404 23405 23344 +19347 19408 19409 19348 23344 23405 23406 23345 +19348 19409 19410 19349 23345 23406 23407 23346 +19349 19410 19411 19350 23346 23407 23408 23347 +19350 19411 19412 19351 23347 23408 23409 23348 +19351 19412 19413 19352 23348 23409 23410 23349 +19352 19413 19414 19353 23349 23410 23411 23350 +19353 19414 19415 19354 23350 23411 23412 23351 +19354 19415 19416 19355 23351 23412 23413 23352 +19355 19416 19417 19356 23352 23413 23414 23353 +19356 19417 19418 19357 23353 23414 23415 23354 +19358 19419 19420 19359 23355 23416 23417 23356 +19359 19420 19421 19360 23356 23417 23418 23357 +19360 19421 19422 19361 23357 23418 23419 23358 +19361 19422 19423 19362 23358 23419 23420 23359 +19362 19423 19424 19363 23359 23420 23421 23360 +19363 19424 19425 19364 23360 23421 23422 23361 +19364 19425 19426 19365 23361 23422 23423 23362 +19365 19426 19427 19366 23362 23423 23424 23363 +19366 19427 19428 19367 23363 23424 23425 23364 +19367 19428 19429 19368 23364 23425 23426 23365 +19368 19429 19430 19369 23365 23426 23427 23366 +19369 19430 19431 19370 23366 23427 23428 23367 +19370 19431 19432 19371 23367 23428 23429 23368 +19371 19432 19433 19372 23368 23429 23430 23369 +19372 19433 19434 19373 23369 23430 23431 23370 +19373 19434 19435 19374 23370 23431 23432 23371 +19374 19435 19436 19375 23371 23432 23433 23372 +19375 19436 19437 19376 23372 23433 23434 23373 +19376 19437 19438 19377 23373 23434 23435 23374 +19377 19438 19439 19378 23374 23435 23436 23375 +19378 19439 19440 19379 23375 23436 23437 23376 +19379 19440 19441 19380 23376 23437 23438 23377 +19380 19441 19442 19381 23377 23438 23439 23378 +19381 19442 19443 19382 23378 23439 23440 23379 +19382 19443 19444 19383 23379 23440 23441 23380 +19383 19444 19445 19384 23380 23441 23442 23381 +19384 19445 19446 19385 23381 23442 23443 23382 +19385 19446 19447 19386 23382 23443 23444 23383 +19386 19447 19448 19387 23383 23444 23445 23384 +19387 19448 19449 19388 23384 23445 23446 23385 +19388 19449 19450 19451 23385 23446 23447 23448 +19388 19451 19452 19389 23385 23448 23449 23386 +19389 19452 19453 19390 23386 23449 23450 23387 +19390 19453 19454 19391 23387 23450 23451 23388 +19391 19454 19455 19392 23388 23451 23452 23389 +19392 19455 19456 19393 23389 23452 23453 23390 +19393 19456 19457 19394 23390 23453 23454 23391 +19394 19457 19458 19395 23391 23454 23455 23392 +19395 19458 19459 19396 23392 23455 23456 23393 +19396 19459 19460 19397 23393 23456 23457 23394 +19397 19460 19461 19398 23394 23457 23458 23395 +19398 19461 19462 19399 23395 23458 23459 23396 +19399 19462 19463 19400 23396 23459 23460 23397 +19400 19463 19464 19401 23397 23460 23461 23398 +19401 19464 19465 19402 23398 23461 23462 23399 +19402 19465 19466 19403 23399 23462 23463 23400 +19403 19466 19467 19404 23400 23463 23464 23401 +19404 19467 19468 19405 23401 23464 23465 23402 +19405 19468 19469 19406 23402 23465 23466 23403 +19406 19469 19470 19407 23403 23466 23467 23404 +19407 19470 19471 19408 23404 23467 23468 23405 +19408 19471 19472 19409 23405 23468 23469 23406 +19409 19472 19473 19410 23406 23469 23470 23407 +19410 19473 19474 19411 23407 23470 23471 23408 +19411 19474 19475 19412 23408 23471 23472 23409 +19412 19475 19476 19413 23409 23472 23473 23410 +19413 19476 19477 19414 23410 23473 23474 23411 +19414 19477 19478 19415 23411 23474 23475 23412 +19415 19478 19479 19416 23412 23475 23476 23413 +19416 19479 19480 19417 23413 23476 23477 23414 +19417 19480 19481 19418 23414 23477 23478 23415 +19419 19482 19483 19420 23416 23479 23480 23417 +19420 19483 19484 19421 23417 23480 23481 23418 +19421 19484 19485 19422 23418 23481 23482 23419 +19422 19485 19486 19423 23419 23482 23483 23420 +19423 19486 19487 19424 23420 23483 23484 23421 +19424 19487 19488 19425 23421 23484 23485 23422 +19425 19488 19489 19426 23422 23485 23486 23423 +19426 19489 19490 19427 23423 23486 23487 23424 +19427 19490 19491 19428 23424 23487 23488 23425 +19428 19491 19492 19429 23425 23488 23489 23426 +19429 19492 19493 19430 23426 23489 23490 23427 +19430 19493 19494 19431 23427 23490 23491 23428 +19431 19494 19495 19432 23428 23491 23492 23429 +19432 19495 19496 19433 23429 23492 23493 23430 +19433 19496 19497 19434 23430 23493 23494 23431 +19434 19497 19498 19435 23431 23494 23495 23432 +19435 19498 19499 19436 23432 23495 23496 23433 +19436 19499 19500 19437 23433 23496 23497 23434 +19437 19500 19501 19438 23434 23497 23498 23435 +19438 19501 19502 19439 23435 23498 23499 23436 +19439 19502 19503 19440 23436 23499 23500 23437 +19440 19503 19504 19441 23437 23500 23501 23438 +19441 19504 19505 19442 23438 23501 23502 23439 +19442 19505 19506 19443 23439 23502 23503 23440 +19443 19506 19507 19444 23440 23503 23504 23441 +19444 19507 19508 19445 23441 23504 23505 23442 +19445 19508 19509 19446 23442 23505 23506 23443 +19446 19509 19510 19447 23443 23506 23507 23444 +19447 19510 19511 19448 23444 23507 23508 23445 +19448 19511 19512 19449 23445 23508 23509 23446 +19449 19512 19513 19450 23446 23509 23510 23447 +19450 19513 19514 19515 23447 23510 23511 23512 +19450 19515 19516 19451 23447 23512 23513 23448 +19451 19516 19517 19452 23448 23513 23514 23449 +19452 19517 19518 19453 23449 23514 23515 23450 +19453 19518 19519 19454 23450 23515 23516 23451 +19454 19519 19520 19455 23451 23516 23517 23452 +19455 19520 19521 19456 23452 23517 23518 23453 +19456 19521 19522 19457 23453 23518 23519 23454 +19457 19522 19523 19458 23454 23519 23520 23455 +19458 19523 19524 19459 23455 23520 23521 23456 +19459 19524 19525 19460 23456 23521 23522 23457 +19460 19525 19526 19461 23457 23522 23523 23458 +19461 19526 19527 19462 23458 23523 23524 23459 +19462 19527 19528 19463 23459 23524 23525 23460 +19463 19528 19529 19464 23460 23525 23526 23461 +19464 19529 19530 19465 23461 23526 23527 23462 +19465 19530 19531 19466 23462 23527 23528 23463 +19466 19531 19532 19467 23463 23528 23529 23464 +19467 19532 19533 19468 23464 23529 23530 23465 +19468 19533 19534 19469 23465 23530 23531 23466 +19469 19534 19535 19470 23466 23531 23532 23467 +19470 19535 19536 19471 23467 23532 23533 23468 +19471 19536 19537 19472 23468 23533 23534 23469 +19472 19537 19538 19473 23469 23534 23535 23470 +19473 19538 19539 19474 23470 23535 23536 23471 +19474 19539 19540 19475 23471 23536 23537 23472 +19475 19540 19541 19476 23472 23537 23538 23473 +19476 19541 19542 19477 23473 23538 23539 23474 +19477 19542 19543 19478 23474 23539 23540 23475 +19478 19543 19544 19479 23475 23540 23541 23476 +19479 19544 19545 19480 23476 23541 23542 23477 +19480 19545 19546 19481 23477 23542 23543 23478 +19482 19547 19548 19483 23479 23544 23545 23480 +19483 19548 19549 19484 23480 23545 23546 23481 +19484 19549 19550 19485 23481 23546 23547 23482 +19485 19550 19551 19486 23482 23547 23548 23483 +19486 19551 19552 19487 23483 23548 23549 23484 +19487 19552 19553 19488 23484 23549 23550 23485 +19488 19553 19554 19489 23485 23550 23551 23486 +19489 19554 19555 19490 23486 23551 23552 23487 +19490 19555 19556 19491 23487 23552 23553 23488 +19491 19556 19557 19492 23488 23553 23554 23489 +19492 19557 19558 19493 23489 23554 23555 23490 +19493 19558 19559 19494 23490 23555 23556 23491 +19494 19559 19560 19495 23491 23556 23557 23492 +19495 19560 19561 19496 23492 23557 23558 23493 +19496 19561 19562 19497 23493 23558 23559 23494 +19497 19562 19563 19498 23494 23559 23560 23495 +19498 19563 19564 19499 23495 23560 23561 23496 +19499 19564 19565 19500 23496 23561 23562 23497 +19500 19565 19566 19501 23497 23562 23563 23498 +19501 19566 19567 19502 23498 23563 23564 23499 +19502 19567 19568 19503 23499 23564 23565 23500 +19503 19568 19569 19504 23500 23565 23566 23501 +19504 19569 19570 19505 23501 23566 23567 23502 +19505 19570 19571 19506 23502 23567 23568 23503 +19506 19571 19572 19507 23503 23568 23569 23504 +19507 19572 19573 19508 23504 23569 23570 23505 +19508 19573 19574 19509 23505 23570 23571 23506 +19509 19574 19575 19510 23506 23571 23572 23507 +19510 19575 19576 19511 23507 23572 23573 23508 +19511 19576 19577 19512 23508 23573 23574 23509 +19512 19577 19578 19513 23509 23574 23575 23510 +19513 19578 19579 19514 23510 23575 23576 23511 +19514 19579 19580 19581 23511 23576 23577 23578 +19514 19581 19582 19515 23511 23578 23579 23512 +19515 19582 19583 19516 23512 23579 23580 23513 +19516 19583 19584 19517 23513 23580 23581 23514 +19517 19584 19585 19518 23514 23581 23582 23515 +19518 19585 19586 19519 23515 23582 23583 23516 +19519 19586 19587 19520 23516 23583 23584 23517 +19520 19587 19588 19521 23517 23584 23585 23518 +19521 19588 19589 19522 23518 23585 23586 23519 +19522 19589 19590 19523 23519 23586 23587 23520 +19523 19590 19591 19524 23520 23587 23588 23521 +19524 19591 19592 19525 23521 23588 23589 23522 +19525 19592 19593 19526 23522 23589 23590 23523 +19526 19593 19594 19527 23523 23590 23591 23524 +19527 19594 19595 19528 23524 23591 23592 23525 +19528 19595 19596 19529 23525 23592 23593 23526 +19529 19596 19597 19530 23526 23593 23594 23527 +19530 19597 19598 19531 23527 23594 23595 23528 +19531 19598 19599 19532 23528 23595 23596 23529 +19532 19599 19600 19533 23529 23596 23597 23530 +19533 19600 19601 19534 23530 23597 23598 23531 +19534 19601 19602 19535 23531 23598 23599 23532 +19535 19602 19603 19536 23532 23599 23600 23533 +19536 19603 19604 19537 23533 23600 23601 23534 +19537 19604 19605 19538 23534 23601 23602 23535 +19538 19605 19606 19539 23535 23602 23603 23536 +19539 19606 19607 19540 23536 23603 23604 23537 +19540 19607 19608 19541 23537 23604 23605 23538 +19541 19608 19609 19542 23538 23605 23606 23539 +19542 19609 19610 19543 23539 23606 23607 23540 +19543 19610 19611 19544 23540 23607 23608 23541 +19544 19611 19612 19545 23541 23608 23609 23542 +19545 19612 19613 19546 23542 23609 23610 23543 +19547 19614 19615 19548 23544 23611 23612 23545 +19548 19615 19616 19549 23545 23612 23613 23546 +19549 19616 19617 19550 23546 23613 23614 23547 +19550 19617 19618 19551 23547 23614 23615 23548 +19551 19618 19619 19552 23548 23615 23616 23549 +19552 19619 19620 19553 23549 23616 23617 23550 +19553 19620 19621 19554 23550 23617 23618 23551 +19554 19621 19622 19555 23551 23618 23619 23552 +19555 19622 19623 19556 23552 23619 23620 23553 +19556 19623 19624 19557 23553 23620 23621 23554 +19557 19624 19625 19558 23554 23621 23622 23555 +19558 19625 19626 19559 23555 23622 23623 23556 +19559 19626 19627 19560 23556 23623 23624 23557 +19560 19627 19628 19561 23557 23624 23625 23558 +19561 19628 19629 19562 23558 23625 23626 23559 +19562 19629 19630 19563 23559 23626 23627 23560 +19563 19630 19631 19564 23560 23627 23628 23561 +19564 19631 19632 19565 23561 23628 23629 23562 +19565 19632 19633 19566 23562 23629 23630 23563 +19566 19633 19634 19567 23563 23630 23631 23564 +19567 19634 19635 19568 23564 23631 23632 23565 +19568 19635 19636 19569 23565 23632 23633 23566 +19569 19636 19637 19570 23566 23633 23634 23567 +19570 19637 19638 19571 23567 23634 23635 23568 +19571 19638 19639 19572 23568 23635 23636 23569 +19572 19639 19640 19573 23569 23636 23637 23570 +19573 19640 19641 19574 23570 23637 23638 23571 +19574 19641 19642 19575 23571 23638 23639 23572 +19575 19642 19643 19576 23572 23639 23640 23573 +19576 19643 19644 19577 23573 23640 23641 23574 +19577 19644 19645 19578 23574 23641 23642 23575 +19578 19645 19646 19579 23575 23642 23643 23576 +19579 19646 19647 19580 23576 23643 23644 23577 +19580 19647 19648 19649 23577 23644 23645 23646 +19580 19649 19650 19581 23577 23646 23647 23578 +19581 19650 19651 19582 23578 23647 23648 23579 +19582 19651 19652 19583 23579 23648 23649 23580 +19583 19652 19653 19584 23580 23649 23650 23581 +19584 19653 19654 19585 23581 23650 23651 23582 +19585 19654 19655 19586 23582 23651 23652 23583 +19586 19655 19656 19587 23583 23652 23653 23584 +19587 19656 19657 19588 23584 23653 23654 23585 +19588 19657 19658 19589 23585 23654 23655 23586 +19589 19658 19659 19590 23586 23655 23656 23587 +19590 19659 19660 19591 23587 23656 23657 23588 +19591 19660 19661 19592 23588 23657 23658 23589 +19592 19661 19662 19593 23589 23658 23659 23590 +19593 19662 19663 19594 23590 23659 23660 23591 +19594 19663 19664 19595 23591 23660 23661 23592 +19595 19664 19665 19596 23592 23661 23662 23593 +19596 19665 19666 19597 23593 23662 23663 23594 +19597 19666 19667 19598 23594 23663 23664 23595 +19598 19667 19668 19599 23595 23664 23665 23596 +19599 19668 19669 19600 23596 23665 23666 23597 +19600 19669 19670 19601 23597 23666 23667 23598 +19601 19670 19671 19602 23598 23667 23668 23599 +19602 19671 19672 19603 23599 23668 23669 23600 +19603 19672 19673 19604 23600 23669 23670 23601 +19604 19673 19674 19605 23601 23670 23671 23602 +19605 19674 19675 19606 23602 23671 23672 23603 +19606 19675 19676 19607 23603 23672 23673 23604 +19607 19676 19677 19608 23604 23673 23674 23605 +19608 19677 19678 19609 23605 23674 23675 23606 +19609 19678 19679 19610 23606 23675 23676 23607 +19610 19679 19680 19611 23607 23676 23677 23608 +19611 19680 19681 19612 23608 23677 23678 23609 +19612 19681 19682 19613 23609 23678 23679 23610 +19614 19683 19684 19615 23611 23680 23681 23612 +19615 19684 19685 19616 23612 23681 23682 23613 +19616 19685 19686 19617 23613 23682 23683 23614 +19617 19686 19687 19618 23614 23683 23684 23615 +19618 19687 19688 19619 23615 23684 23685 23616 +19619 19688 19689 19620 23616 23685 23686 23617 +19620 19689 19690 19621 23617 23686 23687 23618 +19621 19690 19691 19622 23618 23687 23688 23619 +19622 19691 19692 19623 23619 23688 23689 23620 +19623 19692 19693 19624 23620 23689 23690 23621 +19624 19693 19694 19625 23621 23690 23691 23622 +19625 19694 19695 19626 23622 23691 23692 23623 +19626 19695 19696 19627 23623 23692 23693 23624 +19627 19696 19697 19628 23624 23693 23694 23625 +19628 19697 19698 19629 23625 23694 23695 23626 +19629 19698 19699 19630 23626 23695 23696 23627 +19630 19699 19700 19631 23627 23696 23697 23628 +19631 19700 19701 19632 23628 23697 23698 23629 +19632 19701 19702 19633 23629 23698 23699 23630 +19633 19702 19703 19634 23630 23699 23700 23631 +19634 19703 19704 19635 23631 23700 23701 23632 +19635 19704 19705 19636 23632 23701 23702 23633 +19636 19705 19706 19637 23633 23702 23703 23634 +19637 19706 19707 19638 23634 23703 23704 23635 +19638 19707 19708 19639 23635 23704 23705 23636 +19639 19708 19709 19640 23636 23705 23706 23637 +19640 19709 19710 19641 23637 23706 23707 23638 +19641 19710 19711 19642 23638 23707 23708 23639 +19642 19711 19712 19643 23639 23708 23709 23640 +19643 19712 19713 19644 23640 23709 23710 23641 +19644 19713 19714 19645 23641 23710 23711 23642 +19645 19714 19715 19646 23642 23711 23712 23643 +19646 19715 19716 19647 23643 23712 23713 23644 +19647 19716 19717 19648 23644 23713 23714 23645 +19648 19717 19718 19719 23645 23714 23715 23716 +19648 19719 19720 19649 23645 23716 23717 23646 +19649 19720 19721 19650 23646 23717 23718 23647 +19650 19721 19722 19651 23647 23718 23719 23648 +19651 19722 19723 19652 23648 23719 23720 23649 +19652 19723 19724 19653 23649 23720 23721 23650 +19653 19724 19725 19654 23650 23721 23722 23651 +19654 19725 19726 19655 23651 23722 23723 23652 +19655 19726 19727 19656 23652 23723 23724 23653 +19656 19727 19728 19657 23653 23724 23725 23654 +19657 19728 19729 19658 23654 23725 23726 23655 +19658 19729 19730 19659 23655 23726 23727 23656 +19659 19730 19731 19660 23656 23727 23728 23657 +19660 19731 19732 19661 23657 23728 23729 23658 +19661 19732 19733 19662 23658 23729 23730 23659 +19662 19733 19734 19663 23659 23730 23731 23660 +19663 19734 19735 19664 23660 23731 23732 23661 +19664 19735 19736 19665 23661 23732 23733 23662 +19665 19736 19737 19666 23662 23733 23734 23663 +19666 19737 19738 19667 23663 23734 23735 23664 +19667 19738 19739 19668 23664 23735 23736 23665 +19668 19739 19740 19669 23665 23736 23737 23666 +19669 19740 19741 19670 23666 23737 23738 23667 +19670 19741 19742 19671 23667 23738 23739 23668 +19671 19742 19743 19672 23668 23739 23740 23669 +19672 19743 19744 19673 23669 23740 23741 23670 +19673 19744 19745 19674 23670 23741 23742 23671 +19674 19745 19746 19675 23671 23742 23743 23672 +19675 19746 19747 19676 23672 23743 23744 23673 +19676 19747 19748 19677 23673 23744 23745 23674 +19677 19748 19749 19678 23674 23745 23746 23675 +19678 19749 19750 19679 23675 23746 23747 23676 +19679 19750 19751 19680 23676 23747 23748 23677 +19680 19751 19752 19681 23677 23748 23749 23678 +19681 19752 19753 19682 23678 23749 23750 23679 +19683 19754 19755 19684 23680 23751 23752 23681 +19684 19755 19756 19685 23681 23752 23753 23682 +19685 19756 19757 19686 23682 23753 23754 23683 +19686 19757 19758 19687 23683 23754 23755 23684 +19687 19758 19759 19688 23684 23755 23756 23685 +19688 19759 19760 19689 23685 23756 23757 23686 +19689 19760 19761 19690 23686 23757 23758 23687 +19690 19761 19762 19691 23687 23758 23759 23688 +19691 19762 19763 19692 23688 23759 23760 23689 +19692 19763 19764 19693 23689 23760 23761 23690 +19693 19764 19765 19694 23690 23761 23762 23691 +19694 19765 19766 19695 23691 23762 23763 23692 +19695 19766 19767 19696 23692 23763 23764 23693 +19696 19767 19768 19697 23693 23764 23765 23694 +19697 19768 19769 19698 23694 23765 23766 23695 +19698 19769 19770 19699 23695 23766 23767 23696 +19699 19770 19771 19700 23696 23767 23768 23697 +19700 19771 19772 19701 23697 23768 23769 23698 +19701 19772 19773 19702 23698 23769 23770 23699 +19702 19773 19774 19703 23699 23770 23771 23700 +19703 19774 19775 19704 23700 23771 23772 23701 +19704 19775 19776 19705 23701 23772 23773 23702 +19705 19776 19777 19706 23702 23773 23774 23703 +19706 19777 19778 19707 23703 23774 23775 23704 +19707 19778 19779 19708 23704 23775 23776 23705 +19708 19779 19780 19709 23705 23776 23777 23706 +19709 19780 19781 19710 23706 23777 23778 23707 +19710 19781 19782 19711 23707 23778 23779 23708 +19711 19782 19783 19712 23708 23779 23780 23709 +19712 19783 19784 19713 23709 23780 23781 23710 +19713 19784 19785 19714 23710 23781 23782 23711 +19714 19785 19786 19715 23711 23782 23783 23712 +19715 19786 19787 19716 23712 23783 23784 23713 +19716 19787 19788 19717 23713 23784 23785 23714 +19717 19788 19789 19718 23714 23785 23786 23715 +19718 19789 19790 19791 23715 23786 23787 23788 +19718 19791 19792 19719 23715 23788 23789 23716 +19719 19792 19793 19720 23716 23789 23790 23717 +19720 19793 19794 19721 23717 23790 23791 23718 +19721 19794 19795 19722 23718 23791 23792 23719 +19722 19795 19796 19723 23719 23792 23793 23720 +19723 19796 19797 19724 23720 23793 23794 23721 +19724 19797 19798 19725 23721 23794 23795 23722 +19725 19798 19799 19726 23722 23795 23796 23723 +19726 19799 19800 19727 23723 23796 23797 23724 +19727 19800 19801 19728 23724 23797 23798 23725 +19728 19801 19802 19729 23725 23798 23799 23726 +19729 19802 19803 19730 23726 23799 23800 23727 +19730 19803 19804 19731 23727 23800 23801 23728 +19731 19804 19805 19732 23728 23801 23802 23729 +19732 19805 19806 19733 23729 23802 23803 23730 +19733 19806 19807 19734 23730 23803 23804 23731 +19734 19807 19808 19735 23731 23804 23805 23732 +19735 19808 19809 19736 23732 23805 23806 23733 +19736 19809 19810 19737 23733 23806 23807 23734 +19737 19810 19811 19738 23734 23807 23808 23735 +19738 19811 19812 19739 23735 23808 23809 23736 +19739 19812 19813 19740 23736 23809 23810 23737 +19740 19813 19814 19741 23737 23810 23811 23738 +19741 19814 19815 19742 23738 23811 23812 23739 +19742 19815 19816 19743 23739 23812 23813 23740 +19743 19816 19817 19744 23740 23813 23814 23741 +19744 19817 19818 19745 23741 23814 23815 23742 +19745 19818 19819 19746 23742 23815 23816 23743 +19746 19819 19820 19747 23743 23816 23817 23744 +19747 19820 19821 19748 23744 23817 23818 23745 +19748 19821 19822 19749 23745 23818 23819 23746 +19749 19822 19823 19750 23746 23819 23820 23747 +19750 19823 19824 19751 23747 23820 23821 23748 +19751 19824 19825 19752 23748 23821 23822 23749 +19752 19825 19826 19753 23749 23822 23823 23750 +19754 19827 19828 19755 23751 23824 23825 23752 +19755 19828 19829 19756 23752 23825 23826 23753 +19756 19829 19830 19757 23753 23826 23827 23754 +19757 19830 19831 19758 23754 23827 23828 23755 +19758 19831 19832 19759 23755 23828 23829 23756 +19759 19832 19833 19760 23756 23829 23830 23757 +19760 19833 19834 19761 23757 23830 23831 23758 +19761 19834 19835 19762 23758 23831 23832 23759 +19762 19835 19836 19763 23759 23832 23833 23760 +19763 19836 19837 19764 23760 23833 23834 23761 +19764 19837 19838 19765 23761 23834 23835 23762 +19765 19838 19839 19766 23762 23835 23836 23763 +19766 19839 19840 19767 23763 23836 23837 23764 +19767 19840 19841 19768 23764 23837 23838 23765 +19768 19841 19842 19769 23765 23838 23839 23766 +19769 19842 19843 19770 23766 23839 23840 23767 +19770 19843 19844 19771 23767 23840 23841 23768 +19771 19844 19845 19772 23768 23841 23842 23769 +19772 19845 19846 19773 23769 23842 23843 23770 +19773 19846 19847 19774 23770 23843 23844 23771 +19774 19847 19848 19775 23771 23844 23845 23772 +19775 19848 19849 19776 23772 23845 23846 23773 +19776 19849 19850 19777 23773 23846 23847 23774 +19777 19850 19851 19778 23774 23847 23848 23775 +19778 19851 19852 19779 23775 23848 23849 23776 +19779 19852 19853 19780 23776 23849 23850 23777 +19780 19853 19854 19781 23777 23850 23851 23778 +19781 19854 19855 19782 23778 23851 23852 23779 +19782 19855 19856 19783 23779 23852 23853 23780 +19783 19856 19857 19784 23780 23853 23854 23781 +19784 19857 19858 19785 23781 23854 23855 23782 +19785 19858 19859 19786 23782 23855 23856 23783 +19786 19859 19860 19787 23783 23856 23857 23784 +19787 19860 19861 19788 23784 23857 23858 23785 +19788 19861 19862 19789 23785 23858 23859 23786 +19789 19862 19863 19790 23786 23859 23860 23787 +19790 19863 19864 19791 23787 23860 23861 23788 +19791 19864 19865 19792 23788 23861 23862 23789 +19792 19865 19866 19793 23789 23862 23863 23790 +19793 19866 19867 19794 23790 23863 23864 23791 +19794 19867 19868 19795 23791 23864 23865 23792 +19795 19868 19869 19796 23792 23865 23866 23793 +19796 19869 19870 19797 23793 23866 23867 23794 +19797 19870 19871 19798 23794 23867 23868 23795 +19798 19871 19872 19799 23795 23868 23869 23796 +19799 19872 19873 19800 23796 23869 23870 23797 +19800 19873 19874 19801 23797 23870 23871 23798 +19801 19874 19875 19802 23798 23871 23872 23799 +19802 19875 19876 19803 23799 23872 23873 23800 +19803 19876 19877 19804 23800 23873 23874 23801 +19804 19877 19878 19805 23801 23874 23875 23802 +19805 19878 19879 19806 23802 23875 23876 23803 +19806 19879 19880 19807 23803 23876 23877 23804 +19807 19880 19881 19808 23804 23877 23878 23805 +19808 19881 19882 19809 23805 23878 23879 23806 +19809 19882 19883 19810 23806 23879 23880 23807 +19810 19883 19884 19811 23807 23880 23881 23808 +19811 19884 19885 19812 23808 23881 23882 23809 +19812 19885 19886 19813 23809 23882 23883 23810 +19813 19886 19887 19814 23810 23883 23884 23811 +19814 19887 19888 19815 23811 23884 23885 23812 +19815 19888 19889 19816 23812 23885 23886 23813 +19816 19889 19890 19817 23813 23886 23887 23814 +19817 19890 19891 19818 23814 23887 23888 23815 +19818 19891 19892 19819 23815 23888 23889 23816 +19819 19892 19893 19820 23816 23889 23890 23817 +19820 19893 19894 19821 23817 23890 23891 23818 +19821 19894 19895 19822 23818 23891 23892 23819 +19822 19895 19896 19823 23819 23892 23893 23820 +19823 19896 19897 19824 23820 23893 23894 23821 +19824 19897 19898 19825 23821 23894 23895 23822 +19825 19898 19899 19826 23822 23895 23896 23823 +19827 19900 19901 19828 23824 23897 23898 23825 +19828 19901 19902 19829 23825 23898 23899 23826 +19829 19902 19903 19830 23826 23899 23900 23827 +19830 19903 19904 19831 23827 23900 23901 23828 +19831 19904 19905 19832 23828 23901 23902 23829 +19832 19905 19906 19833 23829 23902 23903 23830 +19833 19906 19907 19834 23830 23903 23904 23831 +19834 19907 19908 19835 23831 23904 23905 23832 +19835 19908 19909 19836 23832 23905 23906 23833 +19836 19909 19910 19837 23833 23906 23907 23834 +19837 19910 19911 19838 23834 23907 23908 23835 +19838 19911 19912 19839 23835 23908 23909 23836 +19839 19912 19913 19840 23836 23909 23910 23837 +19840 19913 19914 19841 23837 23910 23911 23838 +19841 19914 19915 19842 23838 23911 23912 23839 +19842 19915 19916 19843 23839 23912 23913 23840 +19843 19916 19917 19844 23840 23913 23914 23841 +19844 19917 19918 19845 23841 23914 23915 23842 +19845 19918 19919 19846 23842 23915 23916 23843 +19846 19919 19920 19847 23843 23916 23917 23844 +19847 19920 19921 19848 23844 23917 23918 23845 +19848 19921 19922 19849 23845 23918 23919 23846 +19849 19922 19923 19850 23846 23919 23920 23847 +19850 19923 19924 19851 23847 23920 23921 23848 +19851 19924 19925 19852 23848 23921 23922 23849 +19852 19925 19926 19853 23849 23922 23923 23850 +19853 19926 19927 19854 23850 23923 23924 23851 +19854 19927 19928 19855 23851 23924 23925 23852 +19855 19928 19929 19856 23852 23925 23926 23853 +19856 19929 19930 19857 23853 23926 23927 23854 +19857 19930 19931 19858 23854 23927 23928 23855 +19858 19931 19932 19859 23855 23928 23929 23856 +19859 19932 19933 19860 23856 23929 23930 23857 +19860 19933 19934 19861 23857 23930 23931 23858 +19861 19934 19935 19862 23858 23931 23932 23859 +19862 19935 19936 19863 23859 23932 23933 23860 +19863 19936 19937 19864 23860 23933 23934 23861 +19864 19937 19938 19865 23861 23934 23935 23862 +19865 19938 19939 19866 23862 23935 23936 23863 +19866 19939 19940 19867 23863 23936 23937 23864 +19867 19940 19941 19868 23864 23937 23938 23865 +19868 19941 19942 19869 23865 23938 23939 23866 +19869 19942 19943 19870 23866 23939 23940 23867 +19870 19943 19944 19871 23867 23940 23941 23868 +19871 19944 19945 19872 23868 23941 23942 23869 +19872 19945 19946 19873 23869 23942 23943 23870 +19873 19946 19947 19874 23870 23943 23944 23871 +19874 19947 19948 19875 23871 23944 23945 23872 +19875 19948 19949 19876 23872 23945 23946 23873 +19876 19949 19950 19877 23873 23946 23947 23874 +19877 19950 19951 19878 23874 23947 23948 23875 +19878 19951 19952 19879 23875 23948 23949 23876 +19879 19952 19953 19880 23876 23949 23950 23877 +19880 19953 19954 19881 23877 23950 23951 23878 +19881 19954 19955 19882 23878 23951 23952 23879 +19882 19955 19956 19883 23879 23952 23953 23880 +19883 19956 19957 19884 23880 23953 23954 23881 +19884 19957 19958 19885 23881 23954 23955 23882 +19885 19958 19959 19886 23882 23955 23956 23883 +19886 19959 19960 19887 23883 23956 23957 23884 +19887 19960 19961 19888 23884 23957 23958 23885 +19888 19961 19962 19889 23885 23958 23959 23886 +19889 19962 19963 19890 23886 23959 23960 23887 +19890 19963 19964 19891 23887 23960 23961 23888 +19891 19964 19965 19892 23888 23961 23962 23889 +19892 19965 19966 19893 23889 23962 23963 23890 +19893 19966 19967 19894 23890 23963 23964 23891 +19894 19967 19968 19895 23891 23964 23965 23892 +19895 19968 19969 19896 23892 23965 23966 23893 +19896 19969 19970 19897 23893 23966 23967 23894 +19897 19970 19971 19898 23894 23967 23968 23895 +19898 19971 19972 19899 23895 23968 23969 23896 +19900 19973 19974 19901 23897 23970 23971 23898 +19901 19974 19975 19902 23898 23971 23972 23899 +19902 19975 19976 19903 23899 23972 23973 23900 +19903 19976 19977 19904 23900 23973 23974 23901 +19904 19977 19978 19905 23901 23974 23975 23902 +19905 19978 19979 19906 23902 23975 23976 23903 +19906 19979 19980 19907 23903 23976 23977 23904 +19907 19980 19981 19908 23904 23977 23978 23905 +19908 19981 19982 19909 23905 23978 23979 23906 +19909 19982 19983 19910 23906 23979 23980 23907 +19910 19983 19984 19911 23907 23980 23981 23908 +19911 19984 19985 19912 23908 23981 23982 23909 +19912 19985 19986 19913 23909 23982 23983 23910 +19913 19986 19987 19914 23910 23983 23984 23911 +19914 19987 19988 19915 23911 23984 23985 23912 +19915 19988 19989 19916 23912 23985 23986 23913 +19916 19989 19990 19917 23913 23986 23987 23914 +19917 19990 19991 19918 23914 23987 23988 23915 +19918 19991 19992 19919 23915 23988 23989 23916 +19919 19992 19993 19920 23916 23989 23990 23917 +19920 19993 19994 19921 23917 23990 23991 23918 +19921 19994 19995 19922 23918 23991 23992 23919 +19922 19995 19996 19923 23919 23992 23993 23920 +19923 19996 19997 19924 23920 23993 23994 23921 +19924 19997 19998 19925 23921 23994 23995 23922 +19925 19998 19999 19926 23922 23995 23996 23923 +19926 19999 20000 19927 23923 23996 23997 23924 +19927 20000 20001 19928 23924 23997 23998 23925 +19928 20001 20002 19929 23925 23998 23999 23926 +19929 20002 20003 19930 23926 23999 24000 23927 +19930 20003 20004 19931 23927 24000 24001 23928 +19931 20004 20005 19932 23928 24001 24002 23929 +19932 20005 20006 19933 23929 24002 24003 23930 +19933 20006 20007 19934 23930 24003 24004 23931 +19934 20007 20008 19935 23931 24004 24005 23932 +19935 20008 20009 19936 23932 24005 24006 23933 +19936 20009 20010 19937 23933 24006 24007 23934 +19937 20010 20011 19938 23934 24007 24008 23935 +19938 20011 20012 19939 23935 24008 24009 23936 +19939 20012 20013 19940 23936 24009 24010 23937 +19940 20013 20014 19941 23937 24010 24011 23938 +19941 20014 20015 19942 23938 24011 24012 23939 +19942 20015 20016 19943 23939 24012 24013 23940 +19943 20016 20017 19944 23940 24013 24014 23941 +19944 20017 20018 19945 23941 24014 24015 23942 +19945 20018 20019 19946 23942 24015 24016 23943 +19946 20019 20020 19947 23943 24016 24017 23944 +19947 20020 20021 19948 23944 24017 24018 23945 +19948 20021 20022 19949 23945 24018 24019 23946 +19949 20022 20023 19950 23946 24019 24020 23947 +19950 20023 20024 19951 23947 24020 24021 23948 +19951 20024 20025 19952 23948 24021 24022 23949 +19952 20025 20026 19953 23949 24022 24023 23950 +19953 20026 20027 19954 23950 24023 24024 23951 +19954 20027 20028 19955 23951 24024 24025 23952 +19955 20028 20029 19956 23952 24025 24026 23953 +19956 20029 20030 19957 23953 24026 24027 23954 +19957 20030 20031 19958 23954 24027 24028 23955 +19958 20031 20032 19959 23955 24028 24029 23956 +19959 20032 20033 19960 23956 24029 24030 23957 +19960 20033 20034 19961 23957 24030 24031 23958 +19961 20034 20035 19962 23958 24031 24032 23959 +19962 20035 20036 19963 23959 24032 24033 23960 +19963 20036 20037 19964 23960 24033 24034 23961 +19964 20037 20038 19965 23961 24034 24035 23962 +19965 20038 20039 19966 23962 24035 24036 23963 +19966 20039 20040 19967 23963 24036 24037 23964 +19967 20040 20041 19968 23964 24037 24038 23965 +19968 20041 20042 19969 23965 24038 24039 23966 +19969 20042 20043 19970 23966 24039 24040 23967 +19970 20043 20044 19971 23967 24040 24041 23968 +19971 20044 20045 19972 23968 24041 24042 23969 +19973 20046 20047 19974 23970 24043 24044 23971 +19974 20047 20048 19975 23971 24044 24045 23972 +19975 20048 20049 19976 23972 24045 24046 23973 +19976 20049 20050 19977 23973 24046 24047 23974 +19977 20050 20051 19978 23974 24047 24048 23975 +19978 20051 20052 19979 23975 24048 24049 23976 +19979 20052 20053 19980 23976 24049 24050 23977 +19980 20053 20054 19981 23977 24050 24051 23978 +19981 20054 20055 19982 23978 24051 24052 23979 +19982 20055 20056 19983 23979 24052 24053 23980 +19983 20056 20057 19984 23980 24053 24054 23981 +19984 20057 20058 19985 23981 24054 24055 23982 +19985 20058 20059 19986 23982 24055 24056 23983 +19986 20059 20060 19987 23983 24056 24057 23984 +19987 20060 20061 19988 23984 24057 24058 23985 +19988 20061 20062 19989 23985 24058 24059 23986 +19989 20062 20063 19990 23986 24059 24060 23987 +19990 20063 20064 19991 23987 24060 24061 23988 +19991 20064 20065 19992 23988 24061 24062 23989 +19992 20065 20066 19993 23989 24062 24063 23990 +19993 20066 20067 19994 23990 24063 24064 23991 +19994 20067 20068 19995 23991 24064 24065 23992 +19995 20068 20069 19996 23992 24065 24066 23993 +19996 20069 20070 19997 23993 24066 24067 23994 +19997 20070 20071 19998 23994 24067 24068 23995 +19998 20071 20072 19999 23995 24068 24069 23996 +19999 20072 20073 20000 23996 24069 24070 23997 +20000 20073 20074 20001 23997 24070 24071 23998 +20001 20074 20075 20002 23998 24071 24072 23999 +20002 20075 20076 20003 23999 24072 24073 24000 +20003 20076 20077 20004 24000 24073 24074 24001 +20004 20077 20078 20005 24001 24074 24075 24002 +20005 20078 20079 20006 24002 24075 24076 24003 +20006 20079 20080 20007 24003 24076 24077 24004 +20007 20080 20081 20008 24004 24077 24078 24005 +20008 20081 20082 20009 24005 24078 24079 24006 +20009 20082 20083 20010 24006 24079 24080 24007 +20010 20083 20084 20011 24007 24080 24081 24008 +20011 20084 20085 20012 24008 24081 24082 24009 +20012 20085 20086 20013 24009 24082 24083 24010 +20013 20086 20087 20014 24010 24083 24084 24011 +20014 20087 20088 20015 24011 24084 24085 24012 +20015 20088 20089 20016 24012 24085 24086 24013 +20016 20089 20090 20017 24013 24086 24087 24014 +20017 20090 20091 20018 24014 24087 24088 24015 +20018 20091 20092 20019 24015 24088 24089 24016 +20019 20092 20093 20020 24016 24089 24090 24017 +20020 20093 20094 20021 24017 24090 24091 24018 +20021 20094 20095 20022 24018 24091 24092 24019 +20022 20095 20096 20023 24019 24092 24093 24020 +20023 20096 20097 20024 24020 24093 24094 24021 +20024 20097 20098 20025 24021 24094 24095 24022 +20025 20098 20099 20026 24022 24095 24096 24023 +20026 20099 20100 20027 24023 24096 24097 24024 +20027 20100 20101 20028 24024 24097 24098 24025 +20028 20101 20102 20029 24025 24098 24099 24026 +20029 20102 20103 20030 24026 24099 24100 24027 +20030 20103 20104 20031 24027 24100 24101 24028 +20031 20104 20105 20032 24028 24101 24102 24029 +20032 20105 20106 20033 24029 24102 24103 24030 +20033 20106 20107 20034 24030 24103 24104 24031 +20034 20107 20108 20035 24031 24104 24105 24032 +20035 20108 20109 20036 24032 24105 24106 24033 +20036 20109 20110 20037 24033 24106 24107 24034 +20037 20110 20111 20038 24034 24107 24108 24035 +20038 20111 20112 20039 24035 24108 24109 24036 +20039 20112 20113 20040 24036 24109 24110 24037 +20040 20113 20114 20041 24037 24110 24111 24038 +20041 20114 20115 20042 24038 24111 24112 24039 +20042 20115 20116 20043 24039 24112 24113 24040 +20043 20116 20117 20044 24040 24113 24114 24041 +20044 20117 20118 20045 24041 24114 24115 24042 +20046 20119 20120 20047 24043 24116 24117 24044 +20047 20120 20121 20048 24044 24117 24118 24045 +20048 20121 20122 20049 24045 24118 24119 24046 +20049 20122 20123 20050 24046 24119 24120 24047 +20050 20123 20124 20051 24047 24120 24121 24048 +20051 20124 20125 20052 24048 24121 24122 24049 +20052 20125 20126 20053 24049 24122 24123 24050 +20053 20126 20127 20054 24050 24123 24124 24051 +20054 20127 20128 20055 24051 24124 24125 24052 +20055 20128 20129 20056 24052 24125 24126 24053 +20056 20129 20130 20057 24053 24126 24127 24054 +20057 20130 20131 20058 24054 24127 24128 24055 +20058 20131 20132 20059 24055 24128 24129 24056 +20059 20132 20133 20060 24056 24129 24130 24057 +20060 20133 20134 20061 24057 24130 24131 24058 +20061 20134 20135 20062 24058 24131 24132 24059 +20062 20135 20136 20063 24059 24132 24133 24060 +20063 20136 20137 20064 24060 24133 24134 24061 +20064 20137 20138 20065 24061 24134 24135 24062 +20065 20138 20139 20066 24062 24135 24136 24063 +20066 20139 20140 20067 24063 24136 24137 24064 +20067 20140 20141 20068 24064 24137 24138 24065 +20068 20141 20142 20069 24065 24138 24139 24066 +20069 20142 20143 20070 24066 24139 24140 24067 +20070 20143 20144 20071 24067 24140 24141 24068 +20071 20144 20145 20072 24068 24141 24142 24069 +20072 20145 20146 20073 24069 24142 24143 24070 +20073 20146 20147 20074 24070 24143 24144 24071 +20074 20147 20148 20075 24071 24144 24145 24072 +20075 20148 20149 20076 24072 24145 24146 24073 +20076 20149 20150 20077 24073 24146 24147 24074 +20077 20150 20151 20078 24074 24147 24148 24075 +20078 20151 20152 20079 24075 24148 24149 24076 +20079 20152 20153 20080 24076 24149 24150 24077 +20080 20153 20154 20081 24077 24150 24151 24078 +20081 20154 20155 20082 24078 24151 24152 24079 +20082 20155 20156 20083 24079 24152 24153 24080 +20083 20156 20157 20084 24080 24153 24154 24081 +20084 20157 20158 20085 24081 24154 24155 24082 +20085 20158 20159 20086 24082 24155 24156 24083 +20086 20159 20160 20087 24083 24156 24157 24084 +20087 20160 20161 20088 24084 24157 24158 24085 +20088 20161 20162 20089 24085 24158 24159 24086 +20089 20162 20163 20090 24086 24159 24160 24087 +20090 20163 20164 20091 24087 24160 24161 24088 +20091 20164 20165 20092 24088 24161 24162 24089 +20092 20165 20166 20093 24089 24162 24163 24090 +20093 20166 20167 20094 24090 24163 24164 24091 +20094 20167 20168 20095 24091 24164 24165 24092 +20095 20168 20169 20096 24092 24165 24166 24093 +20096 20169 20170 20097 24093 24166 24167 24094 +20097 20170 20171 20098 24094 24167 24168 24095 +20098 20171 20172 20099 24095 24168 24169 24096 +20099 20172 20173 20100 24096 24169 24170 24097 +20100 20173 20174 20101 24097 24170 24171 24098 +20101 20174 20175 20102 24098 24171 24172 24099 +20102 20175 20176 20103 24099 24172 24173 24100 +20103 20176 20177 20104 24100 24173 24174 24101 +20104 20177 20178 20105 24101 24174 24175 24102 +20105 20178 20179 20106 24102 24175 24176 24103 +20106 20179 20180 20107 24103 24176 24177 24104 +20107 20180 20181 20108 24104 24177 24178 24105 +20108 20181 20182 20109 24105 24178 24179 24106 +20109 20182 20183 20110 24106 24179 24180 24107 +20110 20183 20184 20111 24107 24180 24181 24108 +20111 20184 20185 20112 24108 24181 24182 24109 +20112 20185 20186 20113 24109 24182 24183 24110 +20113 20186 20187 20114 24110 24183 24184 24111 +20114 20187 20188 20115 24111 24184 24185 24112 +20115 20188 20189 20116 24112 24185 24186 24113 +20116 20189 20190 20117 24113 24186 24187 24114 +20117 20190 20191 20118 24114 24187 24188 24115 +20119 20192 20193 20120 24116 24189 24190 24117 +20120 20193 20194 20121 24117 24190 24191 24118 +20121 20194 20195 20122 24118 24191 24192 24119 +20122 20195 20196 20123 24119 24192 24193 24120 +20123 20196 20197 20124 24120 24193 24194 24121 +20124 20197 20198 20125 24121 24194 24195 24122 +20125 20198 20199 20126 24122 24195 24196 24123 +20126 20199 20200 20127 24123 24196 24197 24124 +20127 20200 20201 20128 24124 24197 24198 24125 +20128 20201 20202 20129 24125 24198 24199 24126 +20129 20202 20203 20130 24126 24199 24200 24127 +20130 20203 20204 20131 24127 24200 24201 24128 +20131 20204 20205 20132 24128 24201 24202 24129 +20132 20205 20206 20133 24129 24202 24203 24130 +20133 20206 20207 20134 24130 24203 24204 24131 +20134 20207 20208 20135 24131 24204 24205 24132 +20135 20208 20209 20136 24132 24205 24206 24133 +20136 20209 20210 20137 24133 24206 24207 24134 +20137 20210 20211 20138 24134 24207 24208 24135 +20138 20211 20212 20139 24135 24208 24209 24136 +20139 20212 20213 20140 24136 24209 24210 24137 +20140 20213 20214 20141 24137 24210 24211 24138 +20141 20214 20215 20142 24138 24211 24212 24139 +20142 20215 20216 20143 24139 24212 24213 24140 +20143 20216 20217 20144 24140 24213 24214 24141 +20144 20217 20218 20145 24141 24214 24215 24142 +20145 20218 20219 20146 24142 24215 24216 24143 +20146 20219 20220 20147 24143 24216 24217 24144 +20147 20220 20221 20148 24144 24217 24218 24145 +20148 20221 20222 20149 24145 24218 24219 24146 +20149 20222 20223 20150 24146 24219 24220 24147 +20150 20223 20224 20151 24147 24220 24221 24148 +20151 20224 20225 20152 24148 24221 24222 24149 +20152 20225 20226 20153 24149 24222 24223 24150 +20153 20226 20227 20154 24150 24223 24224 24151 +20154 20227 20228 20155 24151 24224 24225 24152 +20155 20228 20229 20156 24152 24225 24226 24153 +20156 20229 20230 20157 24153 24226 24227 24154 +20157 20230 20231 20158 24154 24227 24228 24155 +20158 20231 20232 20159 24155 24228 24229 24156 +20159 20232 20233 20160 24156 24229 24230 24157 +20160 20233 20234 20161 24157 24230 24231 24158 +20161 20234 20235 20162 24158 24231 24232 24159 +20162 20235 20236 20163 24159 24232 24233 24160 +20163 20236 20237 20164 24160 24233 24234 24161 +20164 20237 20238 20165 24161 24234 24235 24162 +20165 20238 20239 20166 24162 24235 24236 24163 +20166 20239 20240 20167 24163 24236 24237 24164 +20167 20240 20241 20168 24164 24237 24238 24165 +20168 20241 20242 20169 24165 24238 24239 24166 +20169 20242 20243 20170 24166 24239 24240 24167 +20170 20243 20244 20171 24167 24240 24241 24168 +20171 20244 20245 20172 24168 24241 24242 24169 +20172 20245 20246 20173 24169 24242 24243 24170 +20173 20246 20247 20174 24170 24243 24244 24171 +20174 20247 20248 20175 24171 24244 24245 24172 +20175 20248 20249 20176 24172 24245 24246 24173 +20176 20249 20250 20177 24173 24246 24247 24174 +20177 20250 20251 20178 24174 24247 24248 24175 +20178 20251 20252 20179 24175 24248 24249 24176 +20179 20252 20253 20180 24176 24249 24250 24177 +20180 20253 20254 20181 24177 24250 24251 24178 +20181 20254 20255 20182 24178 24251 24252 24179 +20182 20255 20256 20183 24179 24252 24253 24180 +20183 20256 20257 20184 24180 24253 24254 24181 +20184 20257 20258 20185 24181 24254 24255 24182 +20185 20258 20259 20186 24182 24255 24256 24183 +20186 20259 20260 20187 24183 24256 24257 24184 +20187 20260 20261 20188 24184 24257 24258 24185 +20188 20261 20262 20189 24185 24258 24259 24186 +20189 20262 20263 20190 24186 24259 24260 24187 +20190 20263 20264 20191 24187 24260 24261 24188 +20192 20265 20266 20193 24189 24262 24263 24190 +20193 20266 20267 20194 24190 24263 24264 24191 +20194 20267 20268 20195 24191 24264 24265 24192 +20195 20268 20269 20196 24192 24265 24266 24193 +20196 20269 20270 20197 24193 24266 24267 24194 +20197 20270 20271 20198 24194 24267 24268 24195 +20198 20271 20272 20199 24195 24268 24269 24196 +20199 20272 20273 20200 24196 24269 24270 24197 +20200 20273 20274 20201 24197 24270 24271 24198 +20201 20274 20275 20202 24198 24271 24272 24199 +20202 20275 20276 20203 24199 24272 24273 24200 +20203 20276 20277 20204 24200 24273 24274 24201 +20204 20277 20278 20205 24201 24274 24275 24202 +20205 20278 20279 20206 24202 24275 24276 24203 +20206 20279 20280 20207 24203 24276 24277 24204 +20207 20280 20281 20208 24204 24277 24278 24205 +20208 20281 20282 20209 24205 24278 24279 24206 +20209 20282 20283 20210 24206 24279 24280 24207 +20210 20283 20284 20211 24207 24280 24281 24208 +20211 20284 20285 20212 24208 24281 24282 24209 +20212 20285 20286 20213 24209 24282 24283 24210 +20213 20286 20287 20214 24210 24283 24284 24211 +20214 20287 20288 20215 24211 24284 24285 24212 +20215 20288 20289 20216 24212 24285 24286 24213 +20216 20289 20290 20217 24213 24286 24287 24214 +20217 20290 20291 20218 24214 24287 24288 24215 +20218 20291 20292 20219 24215 24288 24289 24216 +20219 20292 20293 20220 24216 24289 24290 24217 +20220 20293 20294 20221 24217 24290 24291 24218 +20221 20294 20295 20222 24218 24291 24292 24219 +20222 20295 20296 20223 24219 24292 24293 24220 +20223 20296 20297 20224 24220 24293 24294 24221 +20224 20297 20298 20225 24221 24294 24295 24222 +20225 20298 20299 20226 24222 24295 24296 24223 +20226 20299 20300 20227 24223 24296 24297 24224 +20227 20300 20301 20228 24224 24297 24298 24225 +20228 20301 20302 20229 24225 24298 24299 24226 +20229 20302 20303 20230 24226 24299 24300 24227 +20230 20303 20304 20231 24227 24300 24301 24228 +20231 20304 20305 20232 24228 24301 24302 24229 +20232 20305 20306 20233 24229 24302 24303 24230 +20233 20306 20307 20234 24230 24303 24304 24231 +20234 20307 20308 20235 24231 24304 24305 24232 +20235 20308 20309 20236 24232 24305 24306 24233 +20236 20309 20310 20237 24233 24306 24307 24234 +20237 20310 20311 20238 24234 24307 24308 24235 +20238 20311 20312 20239 24235 24308 24309 24236 +20239 20312 20313 20240 24236 24309 24310 24237 +20240 20313 20314 20241 24237 24310 24311 24238 +20241 20314 20315 20242 24238 24311 24312 24239 +20242 20315 20316 20243 24239 24312 24313 24240 +20243 20316 20317 20244 24240 24313 24314 24241 +20244 20317 20318 20245 24241 24314 24315 24242 +20245 20318 20319 20246 24242 24315 24316 24243 +20246 20319 20320 20247 24243 24316 24317 24244 +20247 20320 20321 20248 24244 24317 24318 24245 +20248 20321 20322 20249 24245 24318 24319 24246 +20249 20322 20323 20250 24246 24319 24320 24247 +20250 20323 20324 20251 24247 24320 24321 24248 +20251 20324 20325 20252 24248 24321 24322 24249 +20252 20325 20326 20253 24249 24322 24323 24250 +20253 20326 20327 20254 24250 24323 24324 24251 +20254 20327 20328 20255 24251 24324 24325 24252 +20255 20328 20329 20256 24252 24325 24326 24253 +20256 20329 20330 20257 24253 24326 24327 24254 +20257 20330 20331 20258 24254 24327 24328 24255 +20258 20331 20332 20259 24255 24328 24329 24256 +20259 20332 20333 20260 24256 24329 24330 24257 +20260 20333 20334 20261 24257 24330 24331 24258 +20261 20334 20335 20262 24258 24331 24332 24259 +20262 20335 20336 20263 24259 24332 24333 24260 +20263 20336 20337 20264 24260 24333 24334 24261 +20265 20338 20339 20266 24262 24335 24336 24263 +20266 20339 20340 20267 24263 24336 24337 24264 +20267 20340 20341 20268 24264 24337 24338 24265 +20268 20341 20342 20269 24265 24338 24339 24266 +20269 20342 20343 20270 24266 24339 24340 24267 +20270 20343 20344 20271 24267 24340 24341 24268 +20271 20344 20345 20272 24268 24341 24342 24269 +20272 20345 20346 20273 24269 24342 24343 24270 +20273 20346 20347 20274 24270 24343 24344 24271 +20274 20347 20348 20275 24271 24344 24345 24272 +20275 20348 20349 20276 24272 24345 24346 24273 +20276 20349 20350 20277 24273 24346 24347 24274 +20277 20350 20351 20278 24274 24347 24348 24275 +20278 20351 20352 20279 24275 24348 24349 24276 +20279 20352 20353 20280 24276 24349 24350 24277 +20280 20353 20354 20281 24277 24350 24351 24278 +20281 20354 20355 20282 24278 24351 24352 24279 +20282 20355 20356 20283 24279 24352 24353 24280 +20283 20356 20357 20284 24280 24353 24354 24281 +20284 20357 20358 20285 24281 24354 24355 24282 +20285 20358 20359 20286 24282 24355 24356 24283 +20286 20359 20360 20287 24283 24356 24357 24284 +20287 20360 20361 20288 24284 24357 24358 24285 +20288 20361 20362 20289 24285 24358 24359 24286 +20289 20362 20363 20290 24286 24359 24360 24287 +20290 20363 20364 20291 24287 24360 24361 24288 +20291 20364 20365 20292 24288 24361 24362 24289 +20292 20365 20366 20293 24289 24362 24363 24290 +20293 20366 20367 20294 24290 24363 24364 24291 +20294 20367 20368 20295 24291 24364 24365 24292 +20295 20368 20369 20296 24292 24365 24366 24293 +20296 20369 20370 20297 24293 24366 24367 24294 +20297 20370 20371 20298 24294 24367 24368 24295 +20298 20371 20372 20299 24295 24368 24369 24296 +20299 20372 20373 20300 24296 24369 24370 24297 +20300 20373 20374 20301 24297 24370 24371 24298 +20301 20374 20375 20302 24298 24371 24372 24299 +20302 20375 20376 20303 24299 24372 24373 24300 +20303 20376 20377 20304 24300 24373 24374 24301 +20304 20377 20378 20305 24301 24374 24375 24302 +20305 20378 20379 20306 24302 24375 24376 24303 +20306 20379 20380 20307 24303 24376 24377 24304 +20307 20380 20381 20308 24304 24377 24378 24305 +20308 20381 20382 20309 24305 24378 24379 24306 +20309 20382 20383 20310 24306 24379 24380 24307 +20310 20383 20384 20311 24307 24380 24381 24308 +20311 20384 20385 20312 24308 24381 24382 24309 +20312 20385 20386 20313 24309 24382 24383 24310 +20313 20386 20387 20314 24310 24383 24384 24311 +20314 20387 20388 20315 24311 24384 24385 24312 +20315 20388 20389 20316 24312 24385 24386 24313 +20316 20389 20390 20317 24313 24386 24387 24314 +20317 20390 20391 20318 24314 24387 24388 24315 +20318 20391 20392 20319 24315 24388 24389 24316 +20319 20392 20393 20320 24316 24389 24390 24317 +20320 20393 20394 20321 24317 24390 24391 24318 +20321 20394 20395 20322 24318 24391 24392 24319 +20322 20395 20396 20323 24319 24392 24393 24320 +20323 20396 20397 20324 24320 24393 24394 24321 +20324 20397 20398 20325 24321 24394 24395 24322 +20325 20398 20399 20326 24322 24395 24396 24323 +20326 20399 20400 20327 24323 24396 24397 24324 +20327 20400 20401 20328 24324 24397 24398 24325 +20328 20401 20402 20329 24325 24398 24399 24326 +20329 20402 20403 20330 24326 24399 24400 24327 +20330 20403 20404 20331 24327 24400 24401 24328 +20331 20404 20405 20332 24328 24401 24402 24329 +20332 20405 20406 20333 24329 24402 24403 24330 +20333 20406 20407 20334 24330 24403 24404 24331 +20334 20407 20408 20335 24331 24404 24405 24332 +20335 20408 20409 20336 24332 24405 24406 24333 +20336 20409 20410 20337 24333 24406 24407 24334 +20338 20411 20412 20339 24335 24408 24409 24336 +20339 20412 20413 20340 24336 24409 24410 24337 +20340 20413 20414 20341 24337 24410 24411 24338 +20341 20414 20415 20342 24338 24411 24412 24339 +20342 20415 20416 20343 24339 24412 24413 24340 +20343 20416 20417 20344 24340 24413 24414 24341 +20344 20417 20418 20345 24341 24414 24415 24342 +20345 20418 20419 20346 24342 24415 24416 24343 +20346 20419 20420 20347 24343 24416 24417 24344 +20347 20420 20421 20348 24344 24417 24418 24345 +20348 20421 20422 20349 24345 24418 24419 24346 +20349 20422 20423 20350 24346 24419 24420 24347 +20350 20423 20424 20351 24347 24420 24421 24348 +20351 20424 20425 20352 24348 24421 24422 24349 +20352 20425 20426 20353 24349 24422 24423 24350 +20353 20426 20427 20354 24350 24423 24424 24351 +20354 20427 20428 20355 24351 24424 24425 24352 +20355 20428 20429 20356 24352 24425 24426 24353 +20356 20429 20430 20357 24353 24426 24427 24354 +20357 20430 20431 20358 24354 24427 24428 24355 +20358 20431 20432 20359 24355 24428 24429 24356 +20359 20432 20433 20360 24356 24429 24430 24357 +20360 20433 20434 20361 24357 24430 24431 24358 +20361 20434 20435 20362 24358 24431 24432 24359 +20362 20435 20436 20363 24359 24432 24433 24360 +20363 20436 20437 20364 24360 24433 24434 24361 +20364 20437 20438 20365 24361 24434 24435 24362 +20365 20438 20439 20366 24362 24435 24436 24363 +20366 20439 20440 20367 24363 24436 24437 24364 +20367 20440 20441 20368 24364 24437 24438 24365 +20368 20441 20442 20369 24365 24438 24439 24366 +20369 20442 20443 20370 24366 24439 24440 24367 +20370 20443 20444 20371 24367 24440 24441 24368 +20371 20444 20445 20372 24368 24441 24442 24369 +20372 20445 20446 20373 24369 24442 24443 24370 +20373 20446 20447 20374 24370 24443 24444 24371 +20374 20447 20448 20375 24371 24444 24445 24372 +20375 20448 20449 20376 24372 24445 24446 24373 +20376 20449 20450 20377 24373 24446 24447 24374 +20377 20450 20451 20378 24374 24447 24448 24375 +20378 20451 20452 20379 24375 24448 24449 24376 +20379 20452 20453 20380 24376 24449 24450 24377 +20380 20453 20454 20381 24377 24450 24451 24378 +20381 20454 20455 20382 24378 24451 24452 24379 +20382 20455 20456 20383 24379 24452 24453 24380 +20383 20456 20457 20384 24380 24453 24454 24381 +20384 20457 20458 20385 24381 24454 24455 24382 +20385 20458 20459 20386 24382 24455 24456 24383 +20386 20459 20460 20387 24383 24456 24457 24384 +20387 20460 20461 20388 24384 24457 24458 24385 +20388 20461 20462 20389 24385 24458 24459 24386 +20389 20462 20463 20390 24386 24459 24460 24387 +20390 20463 20464 20391 24387 24460 24461 24388 +20391 20464 20465 20392 24388 24461 24462 24389 +20392 20465 20466 20393 24389 24462 24463 24390 +20393 20466 20467 20394 24390 24463 24464 24391 +20394 20467 20468 20395 24391 24464 24465 24392 +20395 20468 20469 20396 24392 24465 24466 24393 +20396 20469 20470 20397 24393 24466 24467 24394 +20397 20470 20471 20398 24394 24467 24468 24395 +20398 20471 20472 20399 24395 24468 24469 24396 +20399 20472 20473 20400 24396 24469 24470 24397 +20400 20473 20474 20401 24397 24470 24471 24398 +20401 20474 20475 20402 24398 24471 24472 24399 +20402 20475 20476 20403 24399 24472 24473 24400 +20403 20476 20477 20404 24400 24473 24474 24401 +20404 20477 20478 20405 24401 24474 24475 24402 +20405 20478 20479 20406 24402 24475 24476 24403 +20406 20479 20480 20407 24403 24476 24477 24404 +20407 20480 20481 20408 24404 24477 24478 24405 +20408 20481 20482 20409 24405 24478 24479 24406 +20409 20482 20483 20410 24406 24479 24480 24407 +20411 20484 20485 20412 24408 24481 24482 24409 +20412 20485 20486 20413 24409 24482 24483 24410 +20413 20486 20487 20414 24410 24483 24484 24411 +20414 20487 20488 20415 24411 24484 24485 24412 +20415 20488 20489 20416 24412 24485 24486 24413 +20416 20489 20490 20417 24413 24486 24487 24414 +20417 20490 20491 20418 24414 24487 24488 24415 +20418 20491 20492 20419 24415 24488 24489 24416 +20419 20492 20493 20420 24416 24489 24490 24417 +20420 20493 20494 20421 24417 24490 24491 24418 +20421 20494 20495 20422 24418 24491 24492 24419 +20422 20495 20496 20423 24419 24492 24493 24420 +20423 20496 20497 20424 24420 24493 24494 24421 +20424 20497 20498 20425 24421 24494 24495 24422 +20425 20498 20499 20426 24422 24495 24496 24423 +20426 20499 20500 20427 24423 24496 24497 24424 +20427 20500 20501 20428 24424 24497 24498 24425 +20428 20501 20502 20429 24425 24498 24499 24426 +20429 20502 20503 20430 24426 24499 24500 24427 +20430 20503 20504 20431 24427 24500 24501 24428 +20431 20504 20505 20432 24428 24501 24502 24429 +20432 20505 20506 20433 24429 24502 24503 24430 +20433 20506 20507 20434 24430 24503 24504 24431 +20434 20507 20508 20435 24431 24504 24505 24432 +20435 20508 20509 20436 24432 24505 24506 24433 +20436 20509 20510 20437 24433 24506 24507 24434 +20437 20510 20511 20438 24434 24507 24508 24435 +20438 20511 20512 20439 24435 24508 24509 24436 +20439 20512 20513 20440 24436 24509 24510 24437 +20440 20513 20514 20441 24437 24510 24511 24438 +20441 20514 20515 20442 24438 24511 24512 24439 +20442 20515 20516 20443 24439 24512 24513 24440 +20443 20516 20517 20444 24440 24513 24514 24441 +20444 20517 20518 20445 24441 24514 24515 24442 +20445 20518 20519 20446 24442 24515 24516 24443 +20446 20519 20520 20447 24443 24516 24517 24444 +20447 20520 20521 20448 24444 24517 24518 24445 +20448 20521 20522 20449 24445 24518 24519 24446 +20449 20522 20523 20450 24446 24519 24520 24447 +20450 20523 20524 20451 24447 24520 24521 24448 +20451 20524 20525 20452 24448 24521 24522 24449 +20452 20525 20526 20453 24449 24522 24523 24450 +20453 20526 20527 20454 24450 24523 24524 24451 +20454 20527 20528 20455 24451 24524 24525 24452 +20455 20528 20529 20456 24452 24525 24526 24453 +20456 20529 20530 20457 24453 24526 24527 24454 +20457 20530 20531 20458 24454 24527 24528 24455 +20458 20531 20532 20459 24455 24528 24529 24456 +20459 20532 20533 20460 24456 24529 24530 24457 +20460 20533 20534 20461 24457 24530 24531 24458 +20461 20534 20535 20462 24458 24531 24532 24459 +20462 20535 20536 20463 24459 24532 24533 24460 +20463 20536 20537 20464 24460 24533 24534 24461 +20464 20537 20538 20465 24461 24534 24535 24462 +20465 20538 20539 20466 24462 24535 24536 24463 +20466 20539 20540 20467 24463 24536 24537 24464 +20467 20540 20541 20468 24464 24537 24538 24465 +20468 20541 20542 20469 24465 24538 24539 24466 +20469 20542 20543 20470 24466 24539 24540 24467 +20470 20543 20544 20471 24467 24540 24541 24468 +20471 20544 20545 20472 24468 24541 24542 24469 +20472 20545 20546 20473 24469 24542 24543 24470 +20473 20546 20547 20474 24470 24543 24544 24471 +20474 20547 20548 20475 24471 24544 24545 24472 +20475 20548 20549 20476 24472 24545 24546 24473 +20476 20549 20550 20477 24473 24546 24547 24474 +20477 20550 20551 20478 24474 24547 24548 24475 +20478 20551 20552 20479 24475 24548 24549 24476 +20479 20552 20553 20480 24476 24549 24550 24477 +20480 20553 20554 20481 24477 24550 24551 24478 +20481 20554 20555 20482 24478 24551 24552 24479 +20482 20555 20556 20483 24479 24552 24553 24480 +20484 20557 20558 20485 24481 24554 24555 24482 +20485 20558 20559 20486 24482 24555 24556 24483 +20486 20559 20560 20487 24483 24556 24557 24484 +20487 20560 20561 20488 24484 24557 24558 24485 +20488 20561 20562 20489 24485 24558 24559 24486 +20489 20562 20563 20490 24486 24559 24560 24487 +20490 20563 20564 20491 24487 24560 24561 24488 +20491 20564 20565 20492 24488 24561 24562 24489 +20492 20565 20566 20493 24489 24562 24563 24490 +20493 20566 20567 20494 24490 24563 24564 24491 +20494 20567 20568 20495 24491 24564 24565 24492 +20495 20568 20569 20496 24492 24565 24566 24493 +20496 20569 20570 20497 24493 24566 24567 24494 +20497 20570 20571 20498 24494 24567 24568 24495 +20498 20571 20572 20499 24495 24568 24569 24496 +20499 20572 20573 20500 24496 24569 24570 24497 +20500 20573 20574 20501 24497 24570 24571 24498 +20501 20574 20575 20502 24498 24571 24572 24499 +20502 20575 20576 20503 24499 24572 24573 24500 +20503 20576 20577 20504 24500 24573 24574 24501 +20504 20577 20578 20505 24501 24574 24575 24502 +20505 20578 20579 20506 24502 24575 24576 24503 +20506 20579 20580 20507 24503 24576 24577 24504 +20507 20580 20581 20508 24504 24577 24578 24505 +20508 20581 20582 20509 24505 24578 24579 24506 +20509 20582 20583 20510 24506 24579 24580 24507 +20510 20583 20584 20511 24507 24580 24581 24508 +20511 20584 20585 20512 24508 24581 24582 24509 +20512 20585 20586 20513 24509 24582 24583 24510 +20513 20586 20587 20514 24510 24583 24584 24511 +20514 20587 20588 20515 24511 24584 24585 24512 +20515 20588 20589 20516 24512 24585 24586 24513 +20516 20589 20590 20517 24513 24586 24587 24514 +20517 20590 20591 20518 24514 24587 24588 24515 +20518 20591 20592 20519 24515 24588 24589 24516 +20519 20592 20593 20520 24516 24589 24590 24517 +20520 20593 20594 20521 24517 24590 24591 24518 +20521 20594 20595 20522 24518 24591 24592 24519 +20522 20595 20596 20523 24519 24592 24593 24520 +20523 20596 20597 20524 24520 24593 24594 24521 +20524 20597 20598 20525 24521 24594 24595 24522 +20525 20598 20599 20526 24522 24595 24596 24523 +20526 20599 20600 20527 24523 24596 24597 24524 +20527 20600 20601 20528 24524 24597 24598 24525 +20528 20601 20602 20529 24525 24598 24599 24526 +20529 20602 20603 20530 24526 24599 24600 24527 +20530 20603 20604 20531 24527 24600 24601 24528 +20531 20604 20605 20532 24528 24601 24602 24529 +20532 20605 20606 20533 24529 24602 24603 24530 +20533 20606 20607 20534 24530 24603 24604 24531 +20534 20607 20608 20535 24531 24604 24605 24532 +20535 20608 20609 20536 24532 24605 24606 24533 +20536 20609 20610 20537 24533 24606 24607 24534 +20537 20610 20611 20538 24534 24607 24608 24535 +20538 20611 20612 20539 24535 24608 24609 24536 +20539 20612 20613 20540 24536 24609 24610 24537 +20540 20613 20614 20541 24537 24610 24611 24538 +20541 20614 20615 20542 24538 24611 24612 24539 +20542 20615 20616 20543 24539 24612 24613 24540 +20543 20616 20617 20544 24540 24613 24614 24541 +20544 20617 20618 20545 24541 24614 24615 24542 +20545 20618 20619 20546 24542 24615 24616 24543 +20546 20619 20620 20547 24543 24616 24617 24544 +20547 20620 20621 20548 24544 24617 24618 24545 +20548 20621 20622 20549 24545 24618 24619 24546 +20549 20622 20623 20550 24546 24619 24620 24547 +20550 20623 20624 20551 24547 24620 24621 24548 +20551 20624 20625 20552 24548 24621 24622 24549 +20552 20625 20626 20553 24549 24622 24623 24550 +20553 20626 20627 20554 24550 24623 24624 24551 +20554 20627 20628 20555 24551 24624 24625 24552 +20555 20628 20629 20556 24552 24625 24626 24553 +20557 20630 20631 20558 24554 24627 24628 24555 +20558 20631 20632 20559 24555 24628 24629 24556 +20559 20632 20633 20560 24556 24629 24630 24557 +20560 20633 20634 20561 24557 24630 24631 24558 +20561 20634 20635 20562 24558 24631 24632 24559 +20562 20635 20636 20563 24559 24632 24633 24560 +20563 20636 20637 20564 24560 24633 24634 24561 +20564 20637 20638 20565 24561 24634 24635 24562 +20565 20638 20639 20566 24562 24635 24636 24563 +20566 20639 20640 20567 24563 24636 24637 24564 +20567 20640 20641 20568 24564 24637 24638 24565 +20568 20641 20642 20569 24565 24638 24639 24566 +20569 20642 20643 20570 24566 24639 24640 24567 +20570 20643 20644 20571 24567 24640 24641 24568 +20571 20644 20645 20572 24568 24641 24642 24569 +20572 20645 20646 20573 24569 24642 24643 24570 +20573 20646 20647 20574 24570 24643 24644 24571 +20574 20647 20648 20575 24571 24644 24645 24572 +20575 20648 20649 20576 24572 24645 24646 24573 +20576 20649 20650 20577 24573 24646 24647 24574 +20577 20650 20651 20578 24574 24647 24648 24575 +20578 20651 20652 20579 24575 24648 24649 24576 +20579 20652 20653 20580 24576 24649 24650 24577 +20580 20653 20654 20581 24577 24650 24651 24578 +20581 20654 20655 20582 24578 24651 24652 24579 +20582 20655 20656 20583 24579 24652 24653 24580 +20583 20656 20657 20584 24580 24653 24654 24581 +20584 20657 20658 20585 24581 24654 24655 24582 +20585 20658 20659 20586 24582 24655 24656 24583 +20586 20659 20660 20587 24583 24656 24657 24584 +20587 20660 20661 20588 24584 24657 24658 24585 +20588 20661 20662 20589 24585 24658 24659 24586 +20589 20662 20663 20590 24586 24659 24660 24587 +20590 20663 20664 20591 24587 24660 24661 24588 +20591 20664 20665 20592 24588 24661 24662 24589 +20592 20665 20666 20593 24589 24662 24663 24590 +20593 20666 20667 20594 24590 24663 24664 24591 +20594 20667 20668 20595 24591 24664 24665 24592 +20595 20668 20669 20596 24592 24665 24666 24593 +20596 20669 20670 20597 24593 24666 24667 24594 +20597 20670 20671 20598 24594 24667 24668 24595 +20598 20671 20672 20599 24595 24668 24669 24596 +20599 20672 20673 20600 24596 24669 24670 24597 +20600 20673 20674 20601 24597 24670 24671 24598 +20601 20674 20675 20602 24598 24671 24672 24599 +20602 20675 20676 20603 24599 24672 24673 24600 +20603 20676 20677 20604 24600 24673 24674 24601 +20604 20677 20678 20605 24601 24674 24675 24602 +20605 20678 20679 20606 24602 24675 24676 24603 +20606 20679 20680 20607 24603 24676 24677 24604 +20607 20680 20681 20608 24604 24677 24678 24605 +20608 20681 20682 20609 24605 24678 24679 24606 +20609 20682 20683 20610 24606 24679 24680 24607 +20610 20683 20684 20611 24607 24680 24681 24608 +20611 20684 20685 20612 24608 24681 24682 24609 +20612 20685 20686 20613 24609 24682 24683 24610 +20613 20686 20687 20614 24610 24683 24684 24611 +20614 20687 20688 20615 24611 24684 24685 24612 +20615 20688 20689 20616 24612 24685 24686 24613 +20616 20689 20690 20617 24613 24686 24687 24614 +20617 20690 20691 20618 24614 24687 24688 24615 +20618 20691 20692 20619 24615 24688 24689 24616 +20619 20692 20693 20620 24616 24689 24690 24617 +20620 20693 20694 20621 24617 24690 24691 24618 +20621 20694 20695 20622 24618 24691 24692 24619 +20622 20695 20696 20623 24619 24692 24693 24620 +20623 20696 20697 20624 24620 24693 24694 24621 +20624 20697 20698 20625 24621 24694 24695 24622 +20625 20698 20699 20626 24622 24695 24696 24623 +20626 20699 20700 20627 24623 24696 24697 24624 +20627 20700 20701 20628 24624 24697 24698 24625 +20628 20701 20702 20629 24625 24698 24699 24626 +20630 20703 20704 20631 24627 24700 24701 24628 +20631 20704 20705 20632 24628 24701 24702 24629 +20632 20705 20706 20633 24629 24702 24703 24630 +20633 20706 20707 20634 24630 24703 24704 24631 +20634 20707 20708 20635 24631 24704 24705 24632 +20635 20708 20709 20636 24632 24705 24706 24633 +20636 20709 20710 20637 24633 24706 24707 24634 +20637 20710 20711 20638 24634 24707 24708 24635 +20638 20711 20712 20639 24635 24708 24709 24636 +20639 20712 20713 20640 24636 24709 24710 24637 +20640 20713 20714 20641 24637 24710 24711 24638 +20641 20714 20715 20642 24638 24711 24712 24639 +20642 20715 20716 20643 24639 24712 24713 24640 +20643 20716 20717 20644 24640 24713 24714 24641 +20644 20717 20718 20645 24641 24714 24715 24642 +20645 20718 20719 20646 24642 24715 24716 24643 +20646 20719 20720 20647 24643 24716 24717 24644 +20647 20720 20721 20648 24644 24717 24718 24645 +20648 20721 20722 20649 24645 24718 24719 24646 +20649 20722 20723 20650 24646 24719 24720 24647 +20650 20723 20724 20651 24647 24720 24721 24648 +20651 20724 20725 20652 24648 24721 24722 24649 +20652 20725 20726 20653 24649 24722 24723 24650 +20653 20726 20727 20654 24650 24723 24724 24651 +20654 20727 20728 20655 24651 24724 24725 24652 +20655 20728 20729 20656 24652 24725 24726 24653 +20656 20729 20730 20657 24653 24726 24727 24654 +20657 20730 20731 20658 24654 24727 24728 24655 +20658 20731 20732 20659 24655 24728 24729 24656 +20659 20732 20733 20660 24656 24729 24730 24657 +20660 20733 20734 20661 24657 24730 24731 24658 +20661 20734 20735 20662 24658 24731 24732 24659 +20662 20735 20736 20663 24659 24732 24733 24660 +20663 20736 20737 20664 24660 24733 24734 24661 +20664 20737 20738 20665 24661 24734 24735 24662 +20665 20738 20739 20666 24662 24735 24736 24663 +20666 20739 20740 20667 24663 24736 24737 24664 +20667 20740 20741 20668 24664 24737 24738 24665 +20668 20741 20742 20669 24665 24738 24739 24666 +20669 20742 20743 20670 24666 24739 24740 24667 +20670 20743 20744 20671 24667 24740 24741 24668 +20671 20744 20745 20672 24668 24741 24742 24669 +20672 20745 20746 20673 24669 24742 24743 24670 +20673 20746 20747 20674 24670 24743 24744 24671 +20674 20747 20748 20675 24671 24744 24745 24672 +20675 20748 20749 20676 24672 24745 24746 24673 +20676 20749 20750 20677 24673 24746 24747 24674 +20677 20750 20751 20678 24674 24747 24748 24675 +20678 20751 20752 20679 24675 24748 24749 24676 +20679 20752 20753 20680 24676 24749 24750 24677 +20680 20753 20754 20681 24677 24750 24751 24678 +20681 20754 20755 20682 24678 24751 24752 24679 +20682 20755 20756 20683 24679 24752 24753 24680 +20683 20756 20757 20684 24680 24753 24754 24681 +20684 20757 20758 20685 24681 24754 24755 24682 +20685 20758 20759 20686 24682 24755 24756 24683 +20686 20759 20760 20687 24683 24756 24757 24684 +20687 20760 20761 20688 24684 24757 24758 24685 +20688 20761 20762 20689 24685 24758 24759 24686 +20689 20762 20763 20690 24686 24759 24760 24687 +20690 20763 20764 20691 24687 24760 24761 24688 +20691 20764 20765 20692 24688 24761 24762 24689 +20692 20765 20766 20693 24689 24762 24763 24690 +20693 20766 20767 20694 24690 24763 24764 24691 +20694 20767 20768 20695 24691 24764 24765 24692 +20695 20768 20769 20696 24692 24765 24766 24693 +20696 20769 20770 20697 24693 24766 24767 24694 +20697 20770 20771 20698 24694 24767 24768 24695 +20698 20771 20772 20699 24695 24768 24769 24696 +20699 20772 20773 20700 24696 24769 24770 24697 +20700 20773 20774 20701 24697 24770 24771 24698 +20701 20774 20775 20702 24698 24771 24772 24699 +20703 20776 20777 20704 24700 24773 24774 24701 +20704 20777 20778 20705 24701 24774 24775 24702 +20705 20778 20779 20706 24702 24775 24776 24703 +20706 20779 20780 20707 24703 24776 24777 24704 +20707 20780 20781 20708 24704 24777 24778 24705 +20708 20781 20782 20709 24705 24778 24779 24706 +20709 20782 20783 20710 24706 24779 24780 24707 +20710 20783 20784 20711 24707 24780 24781 24708 +20711 20784 20785 20712 24708 24781 24782 24709 +20712 20785 20786 20713 24709 24782 24783 24710 +20713 20786 20787 20714 24710 24783 24784 24711 +20714 20787 20788 20715 24711 24784 24785 24712 +20715 20788 20789 20716 24712 24785 24786 24713 +20716 20789 20790 20717 24713 24786 24787 24714 +20717 20790 20791 20718 24714 24787 24788 24715 +20718 20791 20792 20719 24715 24788 24789 24716 +20719 20792 20793 20720 24716 24789 24790 24717 +20720 20793 20794 20721 24717 24790 24791 24718 +20721 20794 20795 20722 24718 24791 24792 24719 +20722 20795 20796 20723 24719 24792 24793 24720 +20723 20796 20797 20724 24720 24793 24794 24721 +20724 20797 20798 20725 24721 24794 24795 24722 +20725 20798 20799 20726 24722 24795 24796 24723 +20726 20799 20800 20727 24723 24796 24797 24724 +20727 20800 20801 20728 24724 24797 24798 24725 +20728 20801 20802 20729 24725 24798 24799 24726 +20729 20802 20803 20730 24726 24799 24800 24727 +20730 20803 20804 20731 24727 24800 24801 24728 +20731 20804 20805 20732 24728 24801 24802 24729 +20732 20805 20806 20733 24729 24802 24803 24730 +20733 20806 20807 20734 24730 24803 24804 24731 +20734 20807 20808 20735 24731 24804 24805 24732 +20735 20808 20809 20736 24732 24805 24806 24733 +20736 20809 20810 20737 24733 24806 24807 24734 +20737 20810 20811 20738 24734 24807 24808 24735 +20738 20811 20812 20739 24735 24808 24809 24736 +20739 20812 20813 20740 24736 24809 24810 24737 +20740 20813 20814 20741 24737 24810 24811 24738 +20741 20814 20815 20742 24738 24811 24812 24739 +20742 20815 20816 20743 24739 24812 24813 24740 +20743 20816 20817 20744 24740 24813 24814 24741 +20744 20817 20818 20745 24741 24814 24815 24742 +20745 20818 20819 20746 24742 24815 24816 24743 +20746 20819 20820 20747 24743 24816 24817 24744 +20747 20820 20821 20748 24744 24817 24818 24745 +20748 20821 20822 20749 24745 24818 24819 24746 +20749 20822 20823 20750 24746 24819 24820 24747 +20750 20823 20824 20751 24747 24820 24821 24748 +20751 20824 20825 20752 24748 24821 24822 24749 +20752 20825 20826 20753 24749 24822 24823 24750 +20753 20826 20827 20754 24750 24823 24824 24751 +20754 20827 20828 20755 24751 24824 24825 24752 +20755 20828 20829 20756 24752 24825 24826 24753 +20756 20829 20830 20757 24753 24826 24827 24754 +20757 20830 20831 20758 24754 24827 24828 24755 +20758 20831 20832 20759 24755 24828 24829 24756 +20759 20832 20833 20760 24756 24829 24830 24757 +20760 20833 20834 20761 24757 24830 24831 24758 +20761 20834 20835 20762 24758 24831 24832 24759 +20762 20835 20836 20763 24759 24832 24833 24760 +20763 20836 20837 20764 24760 24833 24834 24761 +20764 20837 20838 20765 24761 24834 24835 24762 +20765 20838 20839 20766 24762 24835 24836 24763 +20766 20839 20840 20767 24763 24836 24837 24764 +20767 20840 20841 20768 24764 24837 24838 24765 +20768 20841 20842 20769 24765 24838 24839 24766 +20769 20842 20843 20770 24766 24839 24840 24767 +20770 20843 20844 20771 24767 24840 24841 24768 +20771 20844 20845 20772 24768 24841 24842 24769 +20772 20845 20846 20773 24769 24842 24843 24770 +20773 20846 20847 20774 24770 24843 24844 24771 +20774 20847 20848 20775 24771 24844 24845 24772 +20776 20849 20850 20777 24773 24846 24847 24774 +20777 20850 20851 20778 24774 24847 24848 24775 +20778 20851 20852 20779 24775 24848 24849 24776 +20779 20852 20853 20780 24776 24849 24850 24777 +20780 20853 20854 20781 24777 24850 24851 24778 +20781 20854 20855 20782 24778 24851 24852 24779 +20782 20855 20856 20783 24779 24852 24853 24780 +20783 20856 20857 20784 24780 24853 24854 24781 +20784 20857 20858 20785 24781 24854 24855 24782 +20785 20858 20859 20786 24782 24855 24856 24783 +20786 20859 20860 20787 24783 24856 24857 24784 +20787 20860 20861 20788 24784 24857 24858 24785 +20788 20861 20862 20789 24785 24858 24859 24786 +20789 20862 20863 20790 24786 24859 24860 24787 +20790 20863 20864 20791 24787 24860 24861 24788 +20791 20864 20865 20792 24788 24861 24862 24789 +20792 20865 20866 20793 24789 24862 24863 24790 +20793 20866 20867 20794 24790 24863 24864 24791 +20794 20867 20868 20795 24791 24864 24865 24792 +20795 20868 20869 20796 24792 24865 24866 24793 +20796 20869 20870 20797 24793 24866 24867 24794 +20797 20870 20871 20798 24794 24867 24868 24795 +20798 20871 20872 20799 24795 24868 24869 24796 +20799 20872 20873 20800 24796 24869 24870 24797 +20800 20873 20874 20801 24797 24870 24871 24798 +20801 20874 20875 20802 24798 24871 24872 24799 +20802 20875 20876 20803 24799 24872 24873 24800 +20803 20876 20877 20804 24800 24873 24874 24801 +20804 20877 20878 20805 24801 24874 24875 24802 +20805 20878 20879 20806 24802 24875 24876 24803 +20806 20879 20880 20807 24803 24876 24877 24804 +20807 20880 20881 20808 24804 24877 24878 24805 +20808 20881 20882 20809 24805 24878 24879 24806 +20809 20882 20883 20810 24806 24879 24880 24807 +20810 20883 20884 20811 24807 24880 24881 24808 +20811 20884 20885 20812 24808 24881 24882 24809 +20812 20885 20886 20813 24809 24882 24883 24810 +20813 20886 20887 20814 24810 24883 24884 24811 +20814 20887 20888 20815 24811 24884 24885 24812 +20815 20888 20889 20816 24812 24885 24886 24813 +20816 20889 20890 20817 24813 24886 24887 24814 +20817 20890 20891 20818 24814 24887 24888 24815 +20818 20891 20892 20819 24815 24888 24889 24816 +20819 20892 20893 20820 24816 24889 24890 24817 +20820 20893 20894 20821 24817 24890 24891 24818 +20821 20894 20895 20822 24818 24891 24892 24819 +20822 20895 20896 20823 24819 24892 24893 24820 +20823 20896 20897 20824 24820 24893 24894 24821 +20824 20897 20898 20825 24821 24894 24895 24822 +20825 20898 20899 20826 24822 24895 24896 24823 +20826 20899 20900 20827 24823 24896 24897 24824 +20827 20900 20901 20828 24824 24897 24898 24825 +20828 20901 20902 20829 24825 24898 24899 24826 +20829 20902 20903 20830 24826 24899 24900 24827 +20830 20903 20904 20831 24827 24900 24901 24828 +20831 20904 20905 20832 24828 24901 24902 24829 +20832 20905 20906 20833 24829 24902 24903 24830 +20833 20906 20907 20834 24830 24903 24904 24831 +20834 20907 20908 20835 24831 24904 24905 24832 +20835 20908 20909 20836 24832 24905 24906 24833 +20836 20909 20910 20837 24833 24906 24907 24834 +20837 20910 20911 20838 24834 24907 24908 24835 +20838 20911 20912 20839 24835 24908 24909 24836 +20839 20912 20913 20840 24836 24909 24910 24837 +20840 20913 20914 20841 24837 24910 24911 24838 +20841 20914 20915 20842 24838 24911 24912 24839 +20842 20915 20916 20843 24839 24912 24913 24840 +20843 20916 20917 20844 24840 24913 24914 24841 +20844 20917 20918 20845 24841 24914 24915 24842 +20845 20918 20919 20846 24842 24915 24916 24843 +20846 20919 20920 20847 24843 24916 24917 24844 +20847 20920 20921 20848 24844 24917 24918 24845 +20849 20922 20923 20850 24846 24919 24920 24847 +20850 20923 20924 20851 24847 24920 24921 24848 +20851 20924 20925 20852 24848 24921 24922 24849 +20852 20925 20926 20853 24849 24922 24923 24850 +20853 20926 20927 20854 24850 24923 24924 24851 +20854 20927 20928 20855 24851 24924 24925 24852 +20855 20928 20929 20856 24852 24925 24926 24853 +20856 20929 20930 20857 24853 24926 24927 24854 +20857 20930 20931 20858 24854 24927 24928 24855 +20858 20931 20932 20859 24855 24928 24929 24856 +20859 20932 20933 20860 24856 24929 24930 24857 +20860 20933 20934 20861 24857 24930 24931 24858 +20861 20934 20935 20862 24858 24931 24932 24859 +20862 20935 20936 20863 24859 24932 24933 24860 +20863 20936 20937 20864 24860 24933 24934 24861 +20864 20937 20938 20865 24861 24934 24935 24862 +20865 20938 20939 20866 24862 24935 24936 24863 +20866 20939 20940 20867 24863 24936 24937 24864 +20867 20940 20941 20868 24864 24937 24938 24865 +20868 20941 20942 20869 24865 24938 24939 24866 +20869 20942 20943 20870 24866 24939 24940 24867 +20870 20943 20944 20871 24867 24940 24941 24868 +20871 20944 20945 20872 24868 24941 24942 24869 +20872 20945 20946 20873 24869 24942 24943 24870 +20873 20946 20947 20874 24870 24943 24944 24871 +20874 20947 20948 20875 24871 24944 24945 24872 +20875 20948 20949 20876 24872 24945 24946 24873 +20876 20949 20950 20877 24873 24946 24947 24874 +20877 20950 20951 20878 24874 24947 24948 24875 +20878 20951 20952 20879 24875 24948 24949 24876 +20879 20952 20953 20880 24876 24949 24950 24877 +20880 20953 20954 20881 24877 24950 24951 24878 +20881 20954 20955 20882 24878 24951 24952 24879 +20882 20955 20956 20883 24879 24952 24953 24880 +20883 20956 20957 20884 24880 24953 24954 24881 +20884 20957 20958 20885 24881 24954 24955 24882 +20885 20958 20959 20886 24882 24955 24956 24883 +20886 20959 20960 20887 24883 24956 24957 24884 +20887 20960 20961 20888 24884 24957 24958 24885 +20888 20961 20962 20889 24885 24958 24959 24886 +20889 20962 20963 20890 24886 24959 24960 24887 +20890 20963 20964 20891 24887 24960 24961 24888 +20891 20964 20965 20892 24888 24961 24962 24889 +20892 20965 20966 20893 24889 24962 24963 24890 +20893 20966 20967 20894 24890 24963 24964 24891 +20894 20967 20968 20895 24891 24964 24965 24892 +20895 20968 20969 20896 24892 24965 24966 24893 +20896 20969 20970 20897 24893 24966 24967 24894 +20897 20970 20971 20898 24894 24967 24968 24895 +20898 20971 20972 20899 24895 24968 24969 24896 +20899 20972 20973 20900 24896 24969 24970 24897 +20900 20973 20974 20901 24897 24970 24971 24898 +20901 20974 20975 20902 24898 24971 24972 24899 +20902 20975 20976 20903 24899 24972 24973 24900 +20903 20976 20977 20904 24900 24973 24974 24901 +20904 20977 20978 20905 24901 24974 24975 24902 +20905 20978 20979 20906 24902 24975 24976 24903 +20906 20979 20980 20907 24903 24976 24977 24904 +20907 20980 20981 20908 24904 24977 24978 24905 +20908 20981 20982 20909 24905 24978 24979 24906 +20909 20982 20983 20910 24906 24979 24980 24907 +20910 20983 20984 20911 24907 24980 24981 24908 +20911 20984 20985 20912 24908 24981 24982 24909 +20912 20985 20986 20913 24909 24982 24983 24910 +20913 20986 20987 20914 24910 24983 24984 24911 +20914 20987 20988 20915 24911 24984 24985 24912 +20915 20988 20989 20916 24912 24985 24986 24913 +20916 20989 20990 20917 24913 24986 24987 24914 +20917 20990 20991 20918 24914 24987 24988 24915 +20918 20991 20992 20919 24915 24988 24989 24916 +20919 20992 20993 20920 24916 24989 24990 24917 +20920 20993 20994 20921 24917 24990 24991 24918 +20922 20995 20996 20923 24919 24992 24993 24920 +20923 20996 20997 20924 24920 24993 24994 24921 +20924 20997 20998 20925 24921 24994 24995 24922 +20925 20998 20999 20926 24922 24995 24996 24923 +20926 20999 21000 20927 24923 24996 24997 24924 +20927 21000 21001 20928 24924 24997 24998 24925 +20928 21001 21002 20929 24925 24998 24999 24926 +20929 21002 21003 20930 24926 24999 25000 24927 +20930 21003 21004 20931 24927 25000 25001 24928 +20931 21004 21005 20932 24928 25001 25002 24929 +20932 21005 21006 20933 24929 25002 25003 24930 +20933 21006 21007 20934 24930 25003 25004 24931 +20934 21007 21008 20935 24931 25004 25005 24932 +20935 21008 21009 20936 24932 25005 25006 24933 +20936 21009 21010 20937 24933 25006 25007 24934 +20937 21010 21011 20938 24934 25007 25008 24935 +20938 21011 21012 20939 24935 25008 25009 24936 +20939 21012 21013 20940 24936 25009 25010 24937 +20940 21013 21014 20941 24937 25010 25011 24938 +20941 21014 21015 20942 24938 25011 25012 24939 +20942 21015 21016 20943 24939 25012 25013 24940 +20943 21016 21017 20944 24940 25013 25014 24941 +20944 21017 21018 20945 24941 25014 25015 24942 +20945 21018 21019 20946 24942 25015 25016 24943 +20946 21019 21020 20947 24943 25016 25017 24944 +20947 21020 21021 20948 24944 25017 25018 24945 +20948 21021 21022 20949 24945 25018 25019 24946 +20949 21022 21023 20950 24946 25019 25020 24947 +20950 21023 21024 20951 24947 25020 25021 24948 +20951 21024 21025 20952 24948 25021 25022 24949 +20952 21025 21026 20953 24949 25022 25023 24950 +20953 21026 21027 20954 24950 25023 25024 24951 +20954 21027 21028 20955 24951 25024 25025 24952 +20955 21028 21029 20956 24952 25025 25026 24953 +20956 21029 21030 20957 24953 25026 25027 24954 +20957 21030 21031 20958 24954 25027 25028 24955 +20958 21031 21032 20959 24955 25028 25029 24956 +20959 21032 21033 20960 24956 25029 25030 24957 +20960 21033 21034 20961 24957 25030 25031 24958 +20961 21034 21035 20962 24958 25031 25032 24959 +20962 21035 21036 20963 24959 25032 25033 24960 +20963 21036 21037 20964 24960 25033 25034 24961 +20964 21037 21038 20965 24961 25034 25035 24962 +20965 21038 21039 20966 24962 25035 25036 24963 +20966 21039 21040 20967 24963 25036 25037 24964 +20967 21040 21041 20968 24964 25037 25038 24965 +20968 21041 21042 20969 24965 25038 25039 24966 +20969 21042 21043 20970 24966 25039 25040 24967 +20970 21043 21044 20971 24967 25040 25041 24968 +20971 21044 21045 20972 24968 25041 25042 24969 +20972 21045 21046 20973 24969 25042 25043 24970 +20973 21046 21047 20974 24970 25043 25044 24971 +20974 21047 21048 20975 24971 25044 25045 24972 +20975 21048 21049 20976 24972 25045 25046 24973 +20976 21049 21050 20977 24973 25046 25047 24974 +20977 21050 21051 20978 24974 25047 25048 24975 +20978 21051 21052 20979 24975 25048 25049 24976 +20979 21052 21053 20980 24976 25049 25050 24977 +20980 21053 21054 20981 24977 25050 25051 24978 +20981 21054 21055 20982 24978 25051 25052 24979 +20982 21055 21056 20983 24979 25052 25053 24980 +20983 21056 21057 20984 24980 25053 25054 24981 +20984 21057 21058 20985 24981 25054 25055 24982 +20985 21058 21059 20986 24982 25055 25056 24983 +20986 21059 21060 20987 24983 25056 25057 24984 +20987 21060 21061 20988 24984 25057 25058 24985 +20988 21061 21062 20989 24985 25058 25059 24986 +20989 21062 21063 20990 24986 25059 25060 24987 +20990 21063 21064 20991 24987 25060 25061 24988 +20991 21064 21065 20992 24988 25061 25062 24989 +20992 21065 21066 20993 24989 25062 25063 24990 +20993 21066 21067 20994 24990 25063 25064 24991 +20995 21068 21069 20996 24992 25065 25066 24993 +20996 21069 21070 20997 24993 25066 25067 24994 +20997 21070 21071 20998 24994 25067 25068 24995 +20998 21071 21072 20999 24995 25068 25069 24996 +20999 21072 21073 21000 24996 25069 25070 24997 +21000 21073 21074 21001 24997 25070 25071 24998 +21001 21074 21075 21002 24998 25071 25072 24999 +21002 21075 21076 21003 24999 25072 25073 25000 +21003 21076 21077 21004 25000 25073 25074 25001 +21004 21077 21078 21005 25001 25074 25075 25002 +21005 21078 21079 21006 25002 25075 25076 25003 +21006 21079 21080 21007 25003 25076 25077 25004 +21007 21080 21081 21008 25004 25077 25078 25005 +21008 21081 21082 21009 25005 25078 25079 25006 +21009 21082 21083 21010 25006 25079 25080 25007 +21010 21083 21084 21011 25007 25080 25081 25008 +21011 21084 21085 21012 25008 25081 25082 25009 +21012 21085 21086 21013 25009 25082 25083 25010 +21013 21086 21087 21014 25010 25083 25084 25011 +21014 21087 21088 21015 25011 25084 25085 25012 +21015 21088 21089 21016 25012 25085 25086 25013 +21016 21089 21090 21017 25013 25086 25087 25014 +21017 21090 21091 21018 25014 25087 25088 25015 +21018 21091 21092 21019 25015 25088 25089 25016 +21019 21092 21093 21020 25016 25089 25090 25017 +21020 21093 21094 21021 25017 25090 25091 25018 +21021 21094 21095 21022 25018 25091 25092 25019 +21022 21095 21096 21023 25019 25092 25093 25020 +21023 21096 21097 21024 25020 25093 25094 25021 +21024 21097 21098 21025 25021 25094 25095 25022 +21025 21098 21099 21026 25022 25095 25096 25023 +21026 21099 21100 21027 25023 25096 25097 25024 +21027 21100 21101 21028 25024 25097 25098 25025 +21028 21101 21102 21029 25025 25098 25099 25026 +21029 21102 21103 21030 25026 25099 25100 25027 +21030 21103 21104 21031 25027 25100 25101 25028 +21031 21104 21105 21032 25028 25101 25102 25029 +21032 21105 21106 21033 25029 25102 25103 25030 +21033 21106 21107 21034 25030 25103 25104 25031 +21034 21107 21108 21035 25031 25104 25105 25032 +21035 21108 21109 21036 25032 25105 25106 25033 +21036 21109 21110 21037 25033 25106 25107 25034 +21037 21110 21111 21038 25034 25107 25108 25035 +21038 21111 21112 21039 25035 25108 25109 25036 +21039 21112 21113 21040 25036 25109 25110 25037 +21040 21113 21114 21041 25037 25110 25111 25038 +21041 21114 21115 21042 25038 25111 25112 25039 +21042 21115 21116 21043 25039 25112 25113 25040 +21043 21116 21117 21044 25040 25113 25114 25041 +21044 21117 21118 21045 25041 25114 25115 25042 +21045 21118 21119 21046 25042 25115 25116 25043 +21046 21119 21120 21047 25043 25116 25117 25044 +21047 21120 21121 21048 25044 25117 25118 25045 +21048 21121 21122 21049 25045 25118 25119 25046 +21049 21122 21123 21050 25046 25119 25120 25047 +21050 21123 21124 21051 25047 25120 25121 25048 +21051 21124 21125 21052 25048 25121 25122 25049 +21052 21125 21126 21053 25049 25122 25123 25050 +21053 21126 21127 21054 25050 25123 25124 25051 +21054 21127 21128 21055 25051 25124 25125 25052 +21055 21128 21129 21056 25052 25125 25126 25053 +21056 21129 21130 21057 25053 25126 25127 25054 +21057 21130 21131 21058 25054 25127 25128 25055 +21058 21131 21132 21059 25055 25128 25129 25056 +21059 21132 21133 21060 25056 25129 25130 25057 +21060 21133 21134 21061 25057 25130 25131 25058 +21061 21134 21135 21062 25058 25131 25132 25059 +21062 21135 21136 21063 25059 25132 25133 25060 +21063 21136 21137 21064 25060 25133 25134 25061 +21064 21137 21138 21065 25061 25134 25135 25062 +21065 21138 21139 21066 25062 25135 25136 25063 +21066 21139 21140 21067 25063 25136 25137 25064 +21068 21141 21142 21069 25065 25138 25139 25066 +21069 21142 21143 21070 25066 25139 25140 25067 +21070 21143 21144 21071 25067 25140 25141 25068 +21071 21144 21145 21072 25068 25141 25142 25069 +21072 21145 21146 21073 25069 25142 25143 25070 +21073 21146 21147 21074 25070 25143 25144 25071 +21074 21147 21148 21075 25071 25144 25145 25072 +21075 21148 21149 21076 25072 25145 25146 25073 +21076 21149 21150 21077 25073 25146 25147 25074 +21077 21150 21151 21078 25074 25147 25148 25075 +21078 21151 21152 21079 25075 25148 25149 25076 +21079 21152 21153 21080 25076 25149 25150 25077 +21080 21153 21154 21081 25077 25150 25151 25078 +21081 21154 21155 21082 25078 25151 25152 25079 +21082 21155 21156 21083 25079 25152 25153 25080 +21083 21156 21157 21084 25080 25153 25154 25081 +21084 21157 21158 21085 25081 25154 25155 25082 +21085 21158 21159 21086 25082 25155 25156 25083 +21086 21159 21160 21087 25083 25156 25157 25084 +21087 21160 21161 21088 25084 25157 25158 25085 +21088 21161 21162 21089 25085 25158 25159 25086 +21089 21162 21163 21090 25086 25159 25160 25087 +21090 21163 21164 21091 25087 25160 25161 25088 +21091 21164 21165 21092 25088 25161 25162 25089 +21092 21165 21166 21093 25089 25162 25163 25090 +21093 21166 21167 21094 25090 25163 25164 25091 +21094 21167 21168 21095 25091 25164 25165 25092 +21095 21168 21169 21096 25092 25165 25166 25093 +21096 21169 21170 21097 25093 25166 25167 25094 +21097 21170 21171 21098 25094 25167 25168 25095 +21098 21171 21172 21099 25095 25168 25169 25096 +21099 21172 21173 21100 25096 25169 25170 25097 +21100 21173 21174 21101 25097 25170 25171 25098 +21101 21174 21175 21102 25098 25171 25172 25099 +21102 21175 21176 21103 25099 25172 25173 25100 +21103 21176 21177 21104 25100 25173 25174 25101 +21104 21177 21178 21105 25101 25174 25175 25102 +21105 21178 21179 21106 25102 25175 25176 25103 +21106 21179 21180 21107 25103 25176 25177 25104 +21107 21180 21181 21108 25104 25177 25178 25105 +21108 21181 21182 21109 25105 25178 25179 25106 +21109 21182 21183 21110 25106 25179 25180 25107 +21110 21183 21184 21111 25107 25180 25181 25108 +21111 21184 21185 21112 25108 25181 25182 25109 +21112 21185 21186 21113 25109 25182 25183 25110 +21113 21186 21187 21114 25110 25183 25184 25111 +21114 21187 21188 21115 25111 25184 25185 25112 +21115 21188 21189 21116 25112 25185 25186 25113 +21116 21189 21190 21117 25113 25186 25187 25114 +21117 21190 21191 21118 25114 25187 25188 25115 +21118 21191 21192 21119 25115 25188 25189 25116 +21119 21192 21193 21120 25116 25189 25190 25117 +21120 21193 21194 21121 25117 25190 25191 25118 +21121 21194 21195 21122 25118 25191 25192 25119 +21122 21195 21196 21123 25119 25192 25193 25120 +21123 21196 21197 21124 25120 25193 25194 25121 +21124 21197 21198 21125 25121 25194 25195 25122 +21125 21198 21199 21126 25122 25195 25196 25123 +21126 21199 21200 21127 25123 25196 25197 25124 +21127 21200 21201 21128 25124 25197 25198 25125 +21128 21201 21202 21129 25125 25198 25199 25126 +21129 21202 21203 21130 25126 25199 25200 25127 +21130 21203 21204 21131 25127 25200 25201 25128 +21131 21204 21205 21132 25128 25201 25202 25129 +21132 21205 21206 21133 25129 25202 25203 25130 +21133 21206 21207 21134 25130 25203 25204 25131 +21134 21207 21208 21135 25131 25204 25205 25132 +21135 21208 21209 21136 25132 25205 25206 25133 +21136 21209 21210 21137 25133 25206 25207 25134 +21137 21210 21211 21138 25134 25207 25208 25135 +21138 21211 21212 21139 25135 25208 25209 25136 +21139 21212 21213 21140 25136 25209 25210 25137 +21141 21214 21215 21142 25138 25211 25212 25139 +21142 21215 21216 21143 25139 25212 25213 25140 +21143 21216 21217 21144 25140 25213 25214 25141 +21144 21217 21218 21145 25141 25214 25215 25142 +21145 21218 21219 21146 25142 25215 25216 25143 +21146 21219 21220 21147 25143 25216 25217 25144 +21147 21220 21221 21148 25144 25217 25218 25145 +21148 21221 21222 21149 25145 25218 25219 25146 +21149 21222 21223 21150 25146 25219 25220 25147 +21150 21223 21224 21151 25147 25220 25221 25148 +21151 21224 21225 21152 25148 25221 25222 25149 +21152 21225 21226 21153 25149 25222 25223 25150 +21153 21226 21227 21154 25150 25223 25224 25151 +21154 21227 21228 21155 25151 25224 25225 25152 +21155 21228 21229 21156 25152 25225 25226 25153 +21156 21229 21230 21157 25153 25226 25227 25154 +21157 21230 21231 21158 25154 25227 25228 25155 +21158 21231 21232 21159 25155 25228 25229 25156 +21159 21232 21233 21160 25156 25229 25230 25157 +21160 21233 21234 21161 25157 25230 25231 25158 +21161 21234 21235 21162 25158 25231 25232 25159 +21162 21235 21236 21163 25159 25232 25233 25160 +21163 21236 21237 21164 25160 25233 25234 25161 +21164 21237 21238 21165 25161 25234 25235 25162 +21165 21238 21239 21166 25162 25235 25236 25163 +21166 21239 21240 21167 25163 25236 25237 25164 +21167 21240 21241 21168 25164 25237 25238 25165 +21168 21241 21242 21169 25165 25238 25239 25166 +21169 21242 21243 21170 25166 25239 25240 25167 +21170 21243 21244 21171 25167 25240 25241 25168 +21171 21244 21245 21172 25168 25241 25242 25169 +21172 21245 21246 21173 25169 25242 25243 25170 +21173 21246 21247 21174 25170 25243 25244 25171 +21174 21247 21248 21175 25171 25244 25245 25172 +21175 21248 21249 21176 25172 25245 25246 25173 +21176 21249 21250 21177 25173 25246 25247 25174 +21177 21250 21251 21178 25174 25247 25248 25175 +21178 21251 21252 21179 25175 25248 25249 25176 +21179 21252 21253 21180 25176 25249 25250 25177 +21180 21253 21254 21181 25177 25250 25251 25178 +21181 21254 21255 21182 25178 25251 25252 25179 +21182 21255 21256 21183 25179 25252 25253 25180 +21183 21256 21257 21184 25180 25253 25254 25181 +21184 21257 21258 21185 25181 25254 25255 25182 +21185 21258 21259 21186 25182 25255 25256 25183 +21186 21259 21260 21187 25183 25256 25257 25184 +21187 21260 21261 21188 25184 25257 25258 25185 +21188 21261 21262 21189 25185 25258 25259 25186 +21189 21262 21263 21190 25186 25259 25260 25187 +21190 21263 21264 21191 25187 25260 25261 25188 +21191 21264 21265 21192 25188 25261 25262 25189 +21192 21265 21266 21193 25189 25262 25263 25190 +21193 21266 21267 21194 25190 25263 25264 25191 +21194 21267 21268 21195 25191 25264 25265 25192 +21195 21268 21269 21196 25192 25265 25266 25193 +21196 21269 21270 21197 25193 25266 25267 25194 +21197 21270 21271 21198 25194 25267 25268 25195 +21198 21271 21272 21199 25195 25268 25269 25196 +21199 21272 21273 21200 25196 25269 25270 25197 +21200 21273 21274 21201 25197 25270 25271 25198 +21201 21274 21275 21202 25198 25271 25272 25199 +21202 21275 21276 21203 25199 25272 25273 25200 +21203 21276 21277 21204 25200 25273 25274 25201 +21204 21277 21278 21205 25201 25274 25275 25202 +21205 21278 21279 21206 25202 25275 25276 25203 +21206 21279 21280 21207 25203 25276 25277 25204 +21207 21280 21281 21208 25204 25277 25278 25205 +21208 21281 21282 21209 25205 25278 25279 25206 +21209 21282 21283 21210 25206 25279 25280 25207 +21210 21283 21284 21211 25207 25280 25281 25208 +21211 21284 21285 21212 25208 25281 25282 25209 +21212 21285 21286 21213 25209 25282 25283 25210 +21214 21287 21288 21215 25211 25284 25285 25212 +21215 21288 21289 21216 25212 25285 25286 25213 +21216 21289 21290 21217 25213 25286 25287 25214 +21217 21290 21291 21218 25214 25287 25288 25215 +21218 21291 21292 21219 25215 25288 25289 25216 +21219 21292 21293 21220 25216 25289 25290 25217 +21220 21293 21294 21221 25217 25290 25291 25218 +21221 21294 21295 21222 25218 25291 25292 25219 +21222 21295 21296 21223 25219 25292 25293 25220 +21223 21296 21297 21224 25220 25293 25294 25221 +21224 21297 21298 21225 25221 25294 25295 25222 +21225 21298 21299 21226 25222 25295 25296 25223 +21226 21299 21300 21227 25223 25296 25297 25224 +21227 21300 21301 21228 25224 25297 25298 25225 +21228 21301 21302 21229 25225 25298 25299 25226 +21229 21302 21303 21230 25226 25299 25300 25227 +21230 21303 21304 21231 25227 25300 25301 25228 +21231 21304 21305 21232 25228 25301 25302 25229 +21232 21305 21306 21233 25229 25302 25303 25230 +21233 21306 21307 21234 25230 25303 25304 25231 +21234 21307 21308 21235 25231 25304 25305 25232 +21235 21308 21309 21236 25232 25305 25306 25233 +21236 21309 21310 21237 25233 25306 25307 25234 +21237 21310 21311 21238 25234 25307 25308 25235 +21238 21311 21312 21239 25235 25308 25309 25236 +21239 21312 21313 21240 25236 25309 25310 25237 +21240 21313 21314 21241 25237 25310 25311 25238 +21241 21314 21315 21242 25238 25311 25312 25239 +21242 21315 21316 21243 25239 25312 25313 25240 +21243 21316 21317 21244 25240 25313 25314 25241 +21244 21317 21318 21245 25241 25314 25315 25242 +21245 21318 21319 21246 25242 25315 25316 25243 +21246 21319 21320 21247 25243 25316 25317 25244 +21247 21320 21321 21248 25244 25317 25318 25245 +21248 21321 21322 21249 25245 25318 25319 25246 +21249 21322 21323 21250 25246 25319 25320 25247 +21250 21323 21324 21251 25247 25320 25321 25248 +21251 21324 21325 21252 25248 25321 25322 25249 +21252 21325 21326 21253 25249 25322 25323 25250 +21253 21326 21327 21254 25250 25323 25324 25251 +21254 21327 21328 21255 25251 25324 25325 25252 +21255 21328 21329 21256 25252 25325 25326 25253 +21256 21329 21330 21257 25253 25326 25327 25254 +21257 21330 21331 21258 25254 25327 25328 25255 +21258 21331 21332 21259 25255 25328 25329 25256 +21259 21332 21333 21260 25256 25329 25330 25257 +21260 21333 21334 21261 25257 25330 25331 25258 +21261 21334 21335 21262 25258 25331 25332 25259 +21262 21335 21336 21263 25259 25332 25333 25260 +21263 21336 21337 21264 25260 25333 25334 25261 +21264 21337 21338 21265 25261 25334 25335 25262 +21265 21338 21339 21266 25262 25335 25336 25263 +21266 21339 21340 21267 25263 25336 25337 25264 +21267 21340 21341 21268 25264 25337 25338 25265 +21268 21341 21342 21269 25265 25338 25339 25266 +21269 21342 21343 21270 25266 25339 25340 25267 +21270 21343 21344 21271 25267 25340 25341 25268 +21271 21344 21345 21272 25268 25341 25342 25269 +21272 21345 21346 21273 25269 25342 25343 25270 +21273 21346 21347 21274 25270 25343 25344 25271 +21274 21347 21348 21275 25271 25344 25345 25272 +21275 21348 21349 21276 25272 25345 25346 25273 +21276 21349 21350 21277 25273 25346 25347 25274 +21277 21350 21351 21278 25274 25347 25348 25275 +21278 21351 21352 21279 25275 25348 25349 25276 +21279 21352 21353 21280 25276 25349 25350 25277 +21280 21353 21354 21281 25277 25350 25351 25278 +21281 21354 21355 21282 25278 25351 25352 25279 +21282 21355 21356 21283 25279 25352 25353 25280 +21283 21356 21357 21284 25280 25353 25354 25281 +21284 21357 21358 21285 25281 25354 25355 25282 +21285 21358 21359 21286 25282 25355 25356 25283 +21287 21360 21361 21288 25284 25357 25358 25285 +21288 21361 21362 21289 25285 25358 25359 25286 +21289 21362 21363 21290 25286 25359 25360 25287 +21290 21363 21364 21291 25287 25360 25361 25288 +21291 21364 21365 21292 25288 25361 25362 25289 +21292 21365 21366 21293 25289 25362 25363 25290 +21293 21366 21367 21294 25290 25363 25364 25291 +21294 21367 21368 21295 25291 25364 25365 25292 +21295 21368 21369 21296 25292 25365 25366 25293 +21296 21369 21370 21297 25293 25366 25367 25294 +21297 21370 21371 21298 25294 25367 25368 25295 +21298 21371 21372 21299 25295 25368 25369 25296 +21299 21372 21373 21300 25296 25369 25370 25297 +21300 21373 21374 21301 25297 25370 25371 25298 +21301 21374 21375 21302 25298 25371 25372 25299 +21302 21375 21376 21303 25299 25372 25373 25300 +21303 21376 21377 21304 25300 25373 25374 25301 +21304 21377 21378 21305 25301 25374 25375 25302 +21305 21378 21379 21306 25302 25375 25376 25303 +21306 21379 21380 21307 25303 25376 25377 25304 +21307 21380 21381 21308 25304 25377 25378 25305 +21308 21381 21382 21309 25305 25378 25379 25306 +21309 21382 21383 21310 25306 25379 25380 25307 +21310 21383 21384 21311 25307 25380 25381 25308 +21311 21384 21385 21312 25308 25381 25382 25309 +21312 21385 21386 21313 25309 25382 25383 25310 +21313 21386 21387 21314 25310 25383 25384 25311 +21314 21387 21388 21315 25311 25384 25385 25312 +21315 21388 21389 21316 25312 25385 25386 25313 +21316 21389 21390 21317 25313 25386 25387 25314 +21317 21390 21391 21318 25314 25387 25388 25315 +21318 21391 21392 21319 25315 25388 25389 25316 +21319 21392 21393 21320 25316 25389 25390 25317 +21320 21393 21394 21321 25317 25390 25391 25318 +21321 21394 21395 21322 25318 25391 25392 25319 +21322 21395 21396 21323 25319 25392 25393 25320 +21323 21396 21397 21324 25320 25393 25394 25321 +21324 21397 21398 21325 25321 25394 25395 25322 +21325 21398 21399 21326 25322 25395 25396 25323 +21326 21399 21400 21327 25323 25396 25397 25324 +21327 21400 21401 21328 25324 25397 25398 25325 +21328 21401 21402 21329 25325 25398 25399 25326 +21329 21402 21403 21330 25326 25399 25400 25327 +21330 21403 21404 21331 25327 25400 25401 25328 +21331 21404 21405 21332 25328 25401 25402 25329 +21332 21405 21406 21333 25329 25402 25403 25330 +21333 21406 21407 21334 25330 25403 25404 25331 +21334 21407 21408 21335 25331 25404 25405 25332 +21335 21408 21409 21336 25332 25405 25406 25333 +21336 21409 21410 21337 25333 25406 25407 25334 +21337 21410 21411 21338 25334 25407 25408 25335 +21338 21411 21412 21339 25335 25408 25409 25336 +21339 21412 21413 21340 25336 25409 25410 25337 +21340 21413 21414 21341 25337 25410 25411 25338 +21341 21414 21415 21342 25338 25411 25412 25339 +21342 21415 21416 21343 25339 25412 25413 25340 +21343 21416 21417 21344 25340 25413 25414 25341 +21344 21417 21418 21345 25341 25414 25415 25342 +21345 21418 21419 21346 25342 25415 25416 25343 +21346 21419 21420 21347 25343 25416 25417 25344 +21347 21420 21421 21348 25344 25417 25418 25345 +21348 21421 21422 21349 25345 25418 25419 25346 +21349 21422 21423 21350 25346 25419 25420 25347 +21350 21423 21424 21351 25347 25420 25421 25348 +21351 21424 21425 21352 25348 25421 25422 25349 +21352 21425 21426 21353 25349 25422 25423 25350 +21353 21426 21427 21354 25350 25423 25424 25351 +21354 21427 21428 21355 25351 25424 25425 25352 +21355 21428 21429 21356 25352 25425 25426 25353 +21356 21429 21430 21357 25353 25426 25427 25354 +21357 21430 21431 21358 25354 25427 25428 25355 +21358 21431 21432 21359 25355 25428 25429 25356 +21360 21433 21434 21361 25357 25430 25431 25358 +21361 21434 21435 21362 25358 25431 25432 25359 +21362 21435 21436 21363 25359 25432 25433 25360 +21363 21436 21437 21364 25360 25433 25434 25361 +21364 21437 21438 21365 25361 25434 25435 25362 +21365 21438 21439 21366 25362 25435 25436 25363 +21366 21439 21440 21367 25363 25436 25437 25364 +21367 21440 21441 21368 25364 25437 25438 25365 +21368 21441 21442 21369 25365 25438 25439 25366 +21369 21442 21443 21370 25366 25439 25440 25367 +21370 21443 21444 21371 25367 25440 25441 25368 +21371 21444 21445 21372 25368 25441 25442 25369 +21372 21445 21446 21373 25369 25442 25443 25370 +21373 21446 21447 21374 25370 25443 25444 25371 +21374 21447 21448 21375 25371 25444 25445 25372 +21375 21448 21449 21376 25372 25445 25446 25373 +21376 21449 21450 21377 25373 25446 25447 25374 +21377 21450 21451 21378 25374 25447 25448 25375 +21378 21451 21452 21379 25375 25448 25449 25376 +21379 21452 21453 21380 25376 25449 25450 25377 +21380 21453 21454 21381 25377 25450 25451 25378 +21381 21454 21455 21382 25378 25451 25452 25379 +21382 21455 21456 21383 25379 25452 25453 25380 +21383 21456 21457 21384 25380 25453 25454 25381 +21384 21457 21458 21385 25381 25454 25455 25382 +21385 21458 21459 21386 25382 25455 25456 25383 +21386 21459 21460 21387 25383 25456 25457 25384 +21387 21460 21461 21388 25384 25457 25458 25385 +21388 21461 21462 21389 25385 25458 25459 25386 +21389 21462 21463 21390 25386 25459 25460 25387 +21390 21463 21464 21391 25387 25460 25461 25388 +21391 21464 21465 21392 25388 25461 25462 25389 +21392 21465 21466 21393 25389 25462 25463 25390 +21393 21466 21467 21394 25390 25463 25464 25391 +21394 21467 21468 21395 25391 25464 25465 25392 +21395 21468 21469 21396 25392 25465 25466 25393 +21396 21469 21470 21397 25393 25466 25467 25394 +21397 21470 21471 21398 25394 25467 25468 25395 +21398 21471 21472 21399 25395 25468 25469 25396 +21399 21472 21473 21400 25396 25469 25470 25397 +21400 21473 21474 21401 25397 25470 25471 25398 +21401 21474 21475 21402 25398 25471 25472 25399 +21402 21475 21476 21403 25399 25472 25473 25400 +21403 21476 21477 21404 25400 25473 25474 25401 +21404 21477 21478 21405 25401 25474 25475 25402 +21405 21478 21479 21406 25402 25475 25476 25403 +21406 21479 21480 21407 25403 25476 25477 25404 +21407 21480 21481 21408 25404 25477 25478 25405 +21408 21481 21482 21409 25405 25478 25479 25406 +21409 21482 21483 21410 25406 25479 25480 25407 +21410 21483 21484 21411 25407 25480 25481 25408 +21411 21484 21485 21412 25408 25481 25482 25409 +21412 21485 21486 21413 25409 25482 25483 25410 +21413 21486 21487 21414 25410 25483 25484 25411 +21414 21487 21488 21415 25411 25484 25485 25412 +21415 21488 21489 21416 25412 25485 25486 25413 +21416 21489 21490 21417 25413 25486 25487 25414 +21417 21490 21491 21418 25414 25487 25488 25415 +21418 21491 21492 21419 25415 25488 25489 25416 +21419 21492 21493 21420 25416 25489 25490 25417 +21420 21493 21494 21421 25417 25490 25491 25418 +21421 21494 21495 21422 25418 25491 25492 25419 +21422 21495 21496 21423 25419 25492 25493 25420 +21423 21496 21497 21424 25420 25493 25494 25421 +21424 21497 21498 21425 25421 25494 25495 25422 +21425 21498 21499 21426 25422 25495 25496 25423 +21426 21499 21500 21427 25423 25496 25497 25424 +21427 21500 21501 21428 25424 25497 25498 25425 +21428 21501 21502 21429 25425 25498 25499 25426 +21429 21502 21503 21430 25426 25499 25500 25427 +21430 21503 21504 21431 25427 25500 25501 25428 +21431 21504 21505 21432 25428 25501 25502 25429 +21433 21506 21507 21434 25430 25503 25504 25431 +21434 21507 21508 21435 25431 25504 25505 25432 +21435 21508 21509 21436 25432 25505 25506 25433 +21436 21509 21510 21437 25433 25506 25507 25434 +21437 21510 21511 21438 25434 25507 25508 25435 +21438 21511 21512 21439 25435 25508 25509 25436 +21439 21512 21513 21440 25436 25509 25510 25437 +21440 21513 21514 21441 25437 25510 25511 25438 +21441 21514 21515 21442 25438 25511 25512 25439 +21442 21515 21516 21443 25439 25512 25513 25440 +21443 21516 21517 21444 25440 25513 25514 25441 +21444 21517 21518 21445 25441 25514 25515 25442 +21445 21518 21519 21446 25442 25515 25516 25443 +21446 21519 21520 21447 25443 25516 25517 25444 +21447 21520 21521 21448 25444 25517 25518 25445 +21448 21521 21522 21449 25445 25518 25519 25446 +21449 21522 21523 21450 25446 25519 25520 25447 +21450 21523 21524 21451 25447 25520 25521 25448 +21451 21524 21525 21452 25448 25521 25522 25449 +21452 21525 21526 21453 25449 25522 25523 25450 +21453 21526 21527 21454 25450 25523 25524 25451 +21454 21527 21528 21455 25451 25524 25525 25452 +21455 21528 21529 21456 25452 25525 25526 25453 +21456 21529 21530 21457 25453 25526 25527 25454 +21457 21530 21531 21458 25454 25527 25528 25455 +21458 21531 21532 21459 25455 25528 25529 25456 +21459 21532 21533 21460 25456 25529 25530 25457 +21460 21533 21534 21461 25457 25530 25531 25458 +21461 21534 21535 21462 25458 25531 25532 25459 +21462 21535 21536 21463 25459 25532 25533 25460 +21463 21536 21537 21464 25460 25533 25534 25461 +21464 21537 21538 21465 25461 25534 25535 25462 +21465 21538 21539 21466 25462 25535 25536 25463 +21466 21539 21540 21467 25463 25536 25537 25464 +21467 21540 21541 21468 25464 25537 25538 25465 +21468 21541 21542 21469 25465 25538 25539 25466 +21469 21542 21543 21470 25466 25539 25540 25467 +21470 21543 21544 21471 25467 25540 25541 25468 +21471 21544 21545 21472 25468 25541 25542 25469 +21472 21545 21546 21473 25469 25542 25543 25470 +21473 21546 21547 21474 25470 25543 25544 25471 +21474 21547 21548 21475 25471 25544 25545 25472 +21475 21548 21549 21476 25472 25545 25546 25473 +21476 21549 21550 21477 25473 25546 25547 25474 +21477 21550 21551 21478 25474 25547 25548 25475 +21478 21551 21552 21479 25475 25548 25549 25476 +21479 21552 21553 21480 25476 25549 25550 25477 +21480 21553 21554 21481 25477 25550 25551 25478 +21481 21554 21555 21482 25478 25551 25552 25479 +21482 21555 21556 21483 25479 25552 25553 25480 +21483 21556 21557 21484 25480 25553 25554 25481 +21484 21557 21558 21485 25481 25554 25555 25482 +21485 21558 21559 21486 25482 25555 25556 25483 +21486 21559 21560 21487 25483 25556 25557 25484 +21487 21560 21561 21488 25484 25557 25558 25485 +21488 21561 21562 21489 25485 25558 25559 25486 +21489 21562 21563 21490 25486 25559 25560 25487 +21490 21563 21564 21491 25487 25560 25561 25488 +21491 21564 21565 21492 25488 25561 25562 25489 +21492 21565 21566 21493 25489 25562 25563 25490 +21493 21566 21567 21494 25490 25563 25564 25491 +21494 21567 21568 21495 25491 25564 25565 25492 +21495 21568 21569 21496 25492 25565 25566 25493 +21496 21569 21570 21497 25493 25566 25567 25494 +21497 21570 21571 21498 25494 25567 25568 25495 +21498 21571 21572 21499 25495 25568 25569 25496 +21499 21572 21573 21500 25496 25569 25570 25497 +21500 21573 21574 21501 25497 25570 25571 25498 +21501 21574 21575 21502 25498 25571 25572 25499 +21502 21575 21576 21503 25499 25572 25573 25500 +21503 21576 21577 21504 25500 25573 25574 25501 +21504 21577 21578 21505 25501 25574 25575 25502 +21506 21579 21580 21507 25503 25576 25577 25504 +21507 21580 21581 21508 25504 25577 25578 25505 +21508 21581 21582 21509 25505 25578 25579 25506 +21509 21582 21583 21510 25506 25579 25580 25507 +21510 21583 21584 21511 25507 25580 25581 25508 +21511 21584 21585 21512 25508 25581 25582 25509 +21512 21585 21586 21513 25509 25582 25583 25510 +21513 21586 21587 21514 25510 25583 25584 25511 +21514 21587 21588 21515 25511 25584 25585 25512 +21515 21588 21589 21516 25512 25585 25586 25513 +21516 21589 21590 21517 25513 25586 25587 25514 +21517 21590 21591 21518 25514 25587 25588 25515 +21518 21591 21592 21519 25515 25588 25589 25516 +21519 21592 21593 21520 25516 25589 25590 25517 +21520 21593 21594 21521 25517 25590 25591 25518 +21521 21594 21595 21522 25518 25591 25592 25519 +21522 21595 21596 21523 25519 25592 25593 25520 +21523 21596 21597 21524 25520 25593 25594 25521 +21524 21597 21598 21525 25521 25594 25595 25522 +21525 21598 21599 21526 25522 25595 25596 25523 +21526 21599 21600 21527 25523 25596 25597 25524 +21527 21600 21601 21528 25524 25597 25598 25525 +21528 21601 21602 21529 25525 25598 25599 25526 +21529 21602 21603 21530 25526 25599 25600 25527 +21530 21603 21604 21531 25527 25600 25601 25528 +21531 21604 21605 21532 25528 25601 25602 25529 +21532 21605 21606 21533 25529 25602 25603 25530 +21533 21606 21607 21534 25530 25603 25604 25531 +21534 21607 21608 21535 25531 25604 25605 25532 +21535 21608 21609 21536 25532 25605 25606 25533 +21536 21609 21610 21537 25533 25606 25607 25534 +21537 21610 21611 21538 25534 25607 25608 25535 +21538 21611 21612 21539 25535 25608 25609 25536 +21539 21612 21613 21540 25536 25609 25610 25537 +21540 21613 21614 21541 25537 25610 25611 25538 +21541 21614 21615 21542 25538 25611 25612 25539 +21542 21615 21616 21543 25539 25612 25613 25540 +21543 21616 21617 21544 25540 25613 25614 25541 +21544 21617 21618 21545 25541 25614 25615 25542 +21545 21618 21619 21546 25542 25615 25616 25543 +21546 21619 21620 21547 25543 25616 25617 25544 +21547 21620 21621 21548 25544 25617 25618 25545 +21548 21621 21622 21549 25545 25618 25619 25546 +21549 21622 21623 21550 25546 25619 25620 25547 +21550 21623 21624 21551 25547 25620 25621 25548 +21551 21624 21625 21552 25548 25621 25622 25549 +21552 21625 21626 21553 25549 25622 25623 25550 +21553 21626 21627 21554 25550 25623 25624 25551 +21554 21627 21628 21555 25551 25624 25625 25552 +21555 21628 21629 21556 25552 25625 25626 25553 +21556 21629 21630 21557 25553 25626 25627 25554 +21557 21630 21631 21558 25554 25627 25628 25555 +21558 21631 21632 21559 25555 25628 25629 25556 +21559 21632 21633 21560 25556 25629 25630 25557 +21560 21633 21634 21561 25557 25630 25631 25558 +21561 21634 21635 21562 25558 25631 25632 25559 +21562 21635 21636 21563 25559 25632 25633 25560 +21563 21636 21637 21564 25560 25633 25634 25561 +21564 21637 21638 21565 25561 25634 25635 25562 +21565 21638 21639 21566 25562 25635 25636 25563 +21566 21639 21640 21567 25563 25636 25637 25564 +21567 21640 21641 21568 25564 25637 25638 25565 +21568 21641 21642 21569 25565 25638 25639 25566 +21569 21642 21643 21570 25566 25639 25640 25567 +21570 21643 21644 21571 25567 25640 25641 25568 +21571 21644 21645 21572 25568 25641 25642 25569 +21572 21645 21646 21573 25569 25642 25643 25570 +21573 21646 21647 21574 25570 25643 25644 25571 +21574 21647 21648 21575 25571 25644 25645 25572 +21575 21648 21649 21576 25572 25645 25646 25573 +21576 21649 21650 21577 25573 25646 25647 25574 +21577 21650 21651 21578 25574 25647 25648 25575 +21579 21652 21653 21580 25576 25649 25650 25577 +21580 21653 21654 21581 25577 25650 25651 25578 +21581 21654 21655 21582 25578 25651 25652 25579 +21582 21655 21656 21583 25579 25652 25653 25580 +21583 21656 21657 21584 25580 25653 25654 25581 +21584 21657 21658 21585 25581 25654 25655 25582 +21585 21658 21659 21586 25582 25655 25656 25583 +21586 21659 21660 21587 25583 25656 25657 25584 +21587 21660 21661 21588 25584 25657 25658 25585 +21588 21661 21662 21589 25585 25658 25659 25586 +21589 21662 21663 21590 25586 25659 25660 25587 +21590 21663 21664 21591 25587 25660 25661 25588 +21591 21664 21665 21592 25588 25661 25662 25589 +21592 21665 21666 21593 25589 25662 25663 25590 +21593 21666 21667 21594 25590 25663 25664 25591 +21594 21667 21668 21595 25591 25664 25665 25592 +21595 21668 21669 21596 25592 25665 25666 25593 +21596 21669 21670 21597 25593 25666 25667 25594 +21597 21670 21671 21598 25594 25667 25668 25595 +21598 21671 21672 21599 25595 25668 25669 25596 +21599 21672 21673 21600 25596 25669 25670 25597 +21600 21673 21674 21601 25597 25670 25671 25598 +21601 21674 21675 21602 25598 25671 25672 25599 +21602 21675 21676 21603 25599 25672 25673 25600 +21603 21676 21677 21604 25600 25673 25674 25601 +21604 21677 21678 21605 25601 25674 25675 25602 +21605 21678 21679 21606 25602 25675 25676 25603 +21606 21679 21680 21607 25603 25676 25677 25604 +21607 21680 21681 21608 25604 25677 25678 25605 +21608 21681 21682 21609 25605 25678 25679 25606 +21609 21682 21683 21610 25606 25679 25680 25607 +21610 21683 21684 21611 25607 25680 25681 25608 +21611 21684 21685 21612 25608 25681 25682 25609 +21612 21685 21686 21613 25609 25682 25683 25610 +21613 21686 21687 21614 25610 25683 25684 25611 +21614 21687 21688 21615 25611 25684 25685 25612 +21615 21688 21689 21616 25612 25685 25686 25613 +21616 21689 21690 21617 25613 25686 25687 25614 +21617 21690 21691 21618 25614 25687 25688 25615 +21618 21691 21692 21619 25615 25688 25689 25616 +21619 21692 21693 21620 25616 25689 25690 25617 +21620 21693 21694 21621 25617 25690 25691 25618 +21621 21694 21695 21622 25618 25691 25692 25619 +21622 21695 21696 21623 25619 25692 25693 25620 +21623 21696 21697 21624 25620 25693 25694 25621 +21624 21697 21698 21625 25621 25694 25695 25622 +21625 21698 21699 21626 25622 25695 25696 25623 +21626 21699 21700 21627 25623 25696 25697 25624 +21627 21700 21701 21628 25624 25697 25698 25625 +21628 21701 21702 21629 25625 25698 25699 25626 +21629 21702 21703 21630 25626 25699 25700 25627 +21630 21703 21704 21631 25627 25700 25701 25628 +21631 21704 21705 21632 25628 25701 25702 25629 +21632 21705 21706 21633 25629 25702 25703 25630 +21633 21706 21707 21634 25630 25703 25704 25631 +21634 21707 21708 21635 25631 25704 25705 25632 +21635 21708 21709 21636 25632 25705 25706 25633 +21636 21709 21710 21637 25633 25706 25707 25634 +21637 21710 21711 21638 25634 25707 25708 25635 +21638 21711 21712 21639 25635 25708 25709 25636 +21639 21712 21713 21640 25636 25709 25710 25637 +21640 21713 21714 21641 25637 25710 25711 25638 +21641 21714 21715 21642 25638 25711 25712 25639 +21642 21715 21716 21643 25639 25712 25713 25640 +21643 21716 21717 21644 25640 25713 25714 25641 +21644 21717 21718 21645 25641 25714 25715 25642 +21645 21718 21719 21646 25642 25715 25716 25643 +21646 21719 21720 21647 25643 25716 25717 25644 +21647 21720 21721 21648 25644 25717 25718 25645 +21648 21721 21722 21649 25645 25718 25719 25646 +21649 21722 21723 21650 25646 25719 25720 25647 +21650 21723 21724 21651 25647 25720 25721 25648 +21652 21725 21726 21653 25649 25722 25723 25650 +21653 21726 21727 21654 25650 25723 25724 25651 +21654 21727 21728 21655 25651 25724 25725 25652 +21655 21728 21729 21656 25652 25725 25726 25653 +21656 21729 21730 21657 25653 25726 25727 25654 +21657 21730 21731 21658 25654 25727 25728 25655 +21658 21731 21732 21659 25655 25728 25729 25656 +21659 21732 21733 21660 25656 25729 25730 25657 +21660 21733 21734 21661 25657 25730 25731 25658 +21661 21734 21735 21662 25658 25731 25732 25659 +21662 21735 21736 21663 25659 25732 25733 25660 +21663 21736 21737 21664 25660 25733 25734 25661 +21664 21737 21738 21665 25661 25734 25735 25662 +21665 21738 21739 21666 25662 25735 25736 25663 +21666 21739 21740 21667 25663 25736 25737 25664 +21667 21740 21741 21668 25664 25737 25738 25665 +21668 21741 21742 21669 25665 25738 25739 25666 +21669 21742 21743 21670 25666 25739 25740 25667 +21670 21743 21744 21671 25667 25740 25741 25668 +21671 21744 21745 21672 25668 25741 25742 25669 +21672 21745 21746 21673 25669 25742 25743 25670 +21673 21746 21747 21674 25670 25743 25744 25671 +21674 21747 21748 21675 25671 25744 25745 25672 +21675 21748 21749 21676 25672 25745 25746 25673 +21676 21749 21750 21677 25673 25746 25747 25674 +21677 21750 21751 21678 25674 25747 25748 25675 +21678 21751 21752 21679 25675 25748 25749 25676 +21679 21752 21753 21680 25676 25749 25750 25677 +21680 21753 21754 21681 25677 25750 25751 25678 +21681 21754 21755 21682 25678 25751 25752 25679 +21682 21755 21756 21683 25679 25752 25753 25680 +21683 21756 21757 21684 25680 25753 25754 25681 +21684 21757 21758 21685 25681 25754 25755 25682 +21685 21758 21759 21686 25682 25755 25756 25683 +21686 21759 21760 21687 25683 25756 25757 25684 +21687 21760 21761 21688 25684 25757 25758 25685 +21688 21761 21762 21689 25685 25758 25759 25686 +21689 21762 21763 21690 25686 25759 25760 25687 +21690 21763 21764 21691 25687 25760 25761 25688 +21691 21764 21765 21692 25688 25761 25762 25689 +21692 21765 21766 21693 25689 25762 25763 25690 +21693 21766 21767 21694 25690 25763 25764 25691 +21694 21767 21768 21695 25691 25764 25765 25692 +21695 21768 21769 21696 25692 25765 25766 25693 +21696 21769 21770 21697 25693 25766 25767 25694 +21697 21770 21771 21698 25694 25767 25768 25695 +21698 21771 21772 21699 25695 25768 25769 25696 +21699 21772 21773 21700 25696 25769 25770 25697 +21700 21773 21774 21701 25697 25770 25771 25698 +21701 21774 21775 21702 25698 25771 25772 25699 +21702 21775 21776 21703 25699 25772 25773 25700 +21703 21776 21777 21704 25700 25773 25774 25701 +21704 21777 21778 21705 25701 25774 25775 25702 +21705 21778 21779 21706 25702 25775 25776 25703 +21706 21779 21780 21707 25703 25776 25777 25704 +21707 21780 21781 21708 25704 25777 25778 25705 +21708 21781 21782 21709 25705 25778 25779 25706 +21709 21782 21783 21710 25706 25779 25780 25707 +21710 21783 21784 21711 25707 25780 25781 25708 +21711 21784 21785 21712 25708 25781 25782 25709 +21712 21785 21786 21713 25709 25782 25783 25710 +21713 21786 21787 21714 25710 25783 25784 25711 +21714 21787 21788 21715 25711 25784 25785 25712 +21715 21788 21789 21716 25712 25785 25786 25713 +21716 21789 21790 21717 25713 25786 25787 25714 +21717 21790 21791 21718 25714 25787 25788 25715 +21718 21791 21792 21719 25715 25788 25789 25716 +21719 21792 21793 21720 25716 25789 25790 25717 +21720 21793 21794 21721 25717 25790 25791 25718 +21721 21794 21795 21722 25718 25791 25792 25719 +21722 21795 21796 21723 25719 25792 25793 25720 +21723 21796 21797 21724 25720 25793 25794 25721 +21725 21798 21799 21726 25722 25795 25796 25723 +21726 21799 21800 21727 25723 25796 25797 25724 +21727 21800 21801 21728 25724 25797 25798 25725 +21728 21801 21802 21729 25725 25798 25799 25726 +21729 21802 21803 21730 25726 25799 25800 25727 +21730 21803 21804 21731 25727 25800 25801 25728 +21731 21804 21805 21732 25728 25801 25802 25729 +21732 21805 21806 21733 25729 25802 25803 25730 +21733 21806 21807 21734 25730 25803 25804 25731 +21734 21807 21808 21735 25731 25804 25805 25732 +21735 21808 21809 21736 25732 25805 25806 25733 +21736 21809 21810 21737 25733 25806 25807 25734 +21737 21810 21811 21738 25734 25807 25808 25735 +21738 21811 21812 21739 25735 25808 25809 25736 +21739 21812 21813 21740 25736 25809 25810 25737 +21740 21813 21814 21741 25737 25810 25811 25738 +21741 21814 21815 21742 25738 25811 25812 25739 +21742 21815 21816 21743 25739 25812 25813 25740 +21743 21816 21817 21744 25740 25813 25814 25741 +21744 21817 21818 21745 25741 25814 25815 25742 +21745 21818 21819 21746 25742 25815 25816 25743 +21746 21819 21820 21747 25743 25816 25817 25744 +21747 21820 21821 21748 25744 25817 25818 25745 +21748 21821 21822 21749 25745 25818 25819 25746 +21749 21822 21823 21750 25746 25819 25820 25747 +21750 21823 21824 21751 25747 25820 25821 25748 +21751 21824 21825 21752 25748 25821 25822 25749 +21752 21825 21826 21753 25749 25822 25823 25750 +21753 21826 21827 21754 25750 25823 25824 25751 +21754 21827 21828 21755 25751 25824 25825 25752 +21755 21828 21829 21756 25752 25825 25826 25753 +21756 21829 21830 21757 25753 25826 25827 25754 +21757 21830 21831 21758 25754 25827 25828 25755 +21758 21831 21832 21759 25755 25828 25829 25756 +21759 21832 21833 21760 25756 25829 25830 25757 +21760 21833 21834 21761 25757 25830 25831 25758 +21761 21834 21835 21762 25758 25831 25832 25759 +21762 21835 21836 21763 25759 25832 25833 25760 +21763 21836 21837 21764 25760 25833 25834 25761 +21764 21837 21838 21765 25761 25834 25835 25762 +21765 21838 21839 21766 25762 25835 25836 25763 +21766 21839 21840 21767 25763 25836 25837 25764 +21767 21840 21841 21768 25764 25837 25838 25765 +21768 21841 21842 21769 25765 25838 25839 25766 +21769 21842 21843 21770 25766 25839 25840 25767 +21770 21843 21844 21771 25767 25840 25841 25768 +21771 21844 21845 21772 25768 25841 25842 25769 +21772 21845 21846 21773 25769 25842 25843 25770 +21773 21846 21847 21774 25770 25843 25844 25771 +21774 21847 21848 21775 25771 25844 25845 25772 +21775 21848 21849 21776 25772 25845 25846 25773 +21776 21849 21850 21777 25773 25846 25847 25774 +21777 21850 21851 21778 25774 25847 25848 25775 +21778 21851 21852 21779 25775 25848 25849 25776 +21779 21852 21853 21780 25776 25849 25850 25777 +21780 21853 21854 21781 25777 25850 25851 25778 +21781 21854 21855 21782 25778 25851 25852 25779 +21782 21855 21856 21783 25779 25852 25853 25780 +21783 21856 21857 21784 25780 25853 25854 25781 +21784 21857 21858 21785 25781 25854 25855 25782 +21785 21858 21859 21786 25782 25855 25856 25783 +21786 21859 21860 21787 25783 25856 25857 25784 +21787 21860 21861 21788 25784 25857 25858 25785 +21788 21861 21862 21789 25785 25858 25859 25786 +21789 21862 21863 21790 25786 25859 25860 25787 +21790 21863 21864 21791 25787 25860 25861 25788 +21791 21864 21865 21792 25788 25861 25862 25789 +21792 21865 21866 21793 25789 25862 25863 25790 +21793 21866 21867 21794 25790 25863 25864 25791 +21794 21867 21868 21795 25791 25864 25865 25792 +21795 21868 21869 21796 25792 25865 25866 25793 +21796 21869 21870 21797 25793 25866 25867 25794 +21798 21871 21872 21799 25795 25868 25869 25796 +21799 21872 21873 21800 25796 25869 25870 25797 +21800 21873 21874 21801 25797 25870 25871 25798 +21801 21874 21875 21802 25798 25871 25872 25799 +21802 21875 21876 21803 25799 25872 25873 25800 +21803 21876 21877 21804 25800 25873 25874 25801 +21804 21877 21878 21805 25801 25874 25875 25802 +21805 21878 21879 21806 25802 25875 25876 25803 +21806 21879 21880 21807 25803 25876 25877 25804 +21807 21880 21881 21808 25804 25877 25878 25805 +21808 21881 21882 21809 25805 25878 25879 25806 +21809 21882 21883 21810 25806 25879 25880 25807 +21810 21883 21884 21811 25807 25880 25881 25808 +21811 21884 21885 21812 25808 25881 25882 25809 +21812 21885 21886 21813 25809 25882 25883 25810 +21813 21886 21887 21814 25810 25883 25884 25811 +21814 21887 21888 21815 25811 25884 25885 25812 +21815 21888 21889 21816 25812 25885 25886 25813 +21816 21889 21890 21817 25813 25886 25887 25814 +21817 21890 21891 21818 25814 25887 25888 25815 +21818 21891 21892 21819 25815 25888 25889 25816 +21819 21892 21893 21820 25816 25889 25890 25817 +21820 21893 21894 21821 25817 25890 25891 25818 +21821 21894 21895 21822 25818 25891 25892 25819 +21822 21895 21896 21823 25819 25892 25893 25820 +21823 21896 21897 21824 25820 25893 25894 25821 +21824 21897 21898 21825 25821 25894 25895 25822 +21825 21898 21899 21826 25822 25895 25896 25823 +21826 21899 21900 21827 25823 25896 25897 25824 +21827 21900 21901 21828 25824 25897 25898 25825 +21828 21901 21902 21829 25825 25898 25899 25826 +21829 21902 21903 21830 25826 25899 25900 25827 +21830 21903 21904 21831 25827 25900 25901 25828 +21831 21904 21905 21832 25828 25901 25902 25829 +21832 21905 21906 21833 25829 25902 25903 25830 +21833 21906 21907 21834 25830 25903 25904 25831 +21834 21907 21908 21835 25831 25904 25905 25832 +21835 21908 21909 21836 25832 25905 25906 25833 +21836 21909 21910 21837 25833 25906 25907 25834 +21837 21910 21911 21838 25834 25907 25908 25835 +21838 21911 21912 21839 25835 25908 25909 25836 +21839 21912 21913 21840 25836 25909 25910 25837 +21840 21913 21914 21841 25837 25910 25911 25838 +21841 21914 21915 21842 25838 25911 25912 25839 +21842 21915 21916 21843 25839 25912 25913 25840 +21843 21916 21917 21844 25840 25913 25914 25841 +21844 21917 21918 21845 25841 25914 25915 25842 +21845 21918 21919 21846 25842 25915 25916 25843 +21846 21919 21920 21847 25843 25916 25917 25844 +21847 21920 21921 21848 25844 25917 25918 25845 +21848 21921 21922 21849 25845 25918 25919 25846 +21849 21922 21923 21850 25846 25919 25920 25847 +21850 21923 21924 21851 25847 25920 25921 25848 +21851 21924 21925 21852 25848 25921 25922 25849 +21852 21925 21926 21853 25849 25922 25923 25850 +21853 21926 21927 21854 25850 25923 25924 25851 +21854 21927 21928 21855 25851 25924 25925 25852 +21855 21928 21929 21856 25852 25925 25926 25853 +21856 21929 21930 21857 25853 25926 25927 25854 +21857 21930 21931 21858 25854 25927 25928 25855 +21858 21931 21932 21859 25855 25928 25929 25856 +21859 21932 21933 21860 25856 25929 25930 25857 +21860 21933 21934 21861 25857 25930 25931 25858 +21861 21934 21935 21862 25858 25931 25932 25859 +21862 21935 21936 21863 25859 25932 25933 25860 +21863 21936 21937 21864 25860 25933 25934 25861 +21864 21937 21938 21865 25861 25934 25935 25862 +21865 21938 21939 21866 25862 25935 25936 25863 +21866 21939 21940 21867 25863 25936 25937 25864 +21867 21940 21941 21868 25864 25937 25938 25865 +21868 21941 21942 21869 25865 25938 25939 25866 +21869 21942 21943 21870 25866 25939 25940 25867 +21871 21944 21945 21872 25868 25941 25942 25869 +21872 21945 21946 21873 25869 25942 25943 25870 +21873 21946 21947 21874 25870 25943 25944 25871 +21874 21947 21948 21875 25871 25944 25945 25872 +21875 21948 21949 21876 25872 25945 25946 25873 +21876 21949 21950 21877 25873 25946 25947 25874 +21877 21950 21951 21878 25874 25947 25948 25875 +21878 21951 21952 21879 25875 25948 25949 25876 +21879 21952 21953 21880 25876 25949 25950 25877 +21880 21953 21954 21881 25877 25950 25951 25878 +21881 21954 21955 21882 25878 25951 25952 25879 +21882 21955 21956 21883 25879 25952 25953 25880 +21883 21956 21957 21884 25880 25953 25954 25881 +21884 21957 21958 21885 25881 25954 25955 25882 +21885 21958 21959 21886 25882 25955 25956 25883 +21886 21959 21960 21887 25883 25956 25957 25884 +21887 21960 21961 21888 25884 25957 25958 25885 +21888 21961 21962 21889 25885 25958 25959 25886 +21889 21962 21963 21890 25886 25959 25960 25887 +21890 21963 21964 21891 25887 25960 25961 25888 +21891 21964 21965 21892 25888 25961 25962 25889 +21892 21965 21966 21893 25889 25962 25963 25890 +21893 21966 21967 21894 25890 25963 25964 25891 +21894 21967 21968 21895 25891 25964 25965 25892 +21895 21968 21969 21896 25892 25965 25966 25893 +21896 21969 21970 21897 25893 25966 25967 25894 +21897 21970 21971 21898 25894 25967 25968 25895 +21898 21971 21972 21899 25895 25968 25969 25896 +21899 21972 21973 21900 25896 25969 25970 25897 +21900 21973 21974 21901 25897 25970 25971 25898 +21901 21974 21975 21902 25898 25971 25972 25899 +21902 21975 21976 21903 25899 25972 25973 25900 +21903 21976 21977 21904 25900 25973 25974 25901 +21904 21977 21978 21905 25901 25974 25975 25902 +21905 21978 21979 21906 25902 25975 25976 25903 +21906 21979 21980 21907 25903 25976 25977 25904 +21907 21980 21981 21908 25904 25977 25978 25905 +21908 21981 21982 21909 25905 25978 25979 25906 +21909 21982 21983 21910 25906 25979 25980 25907 +21910 21983 21984 21911 25907 25980 25981 25908 +21911 21984 21985 21912 25908 25981 25982 25909 +21912 21985 21986 21913 25909 25982 25983 25910 +21913 21986 21987 21914 25910 25983 25984 25911 +21914 21987 21988 21915 25911 25984 25985 25912 +21915 21988 21989 21916 25912 25985 25986 25913 +21916 21989 21990 21917 25913 25986 25987 25914 +21917 21990 21991 21918 25914 25987 25988 25915 +21918 21991 21992 21919 25915 25988 25989 25916 +21919 21992 21993 21920 25916 25989 25990 25917 +21920 21993 21994 21921 25917 25990 25991 25918 +21921 21994 21995 21922 25918 25991 25992 25919 +21922 21995 21996 21923 25919 25992 25993 25920 +21923 21996 21997 21924 25920 25993 25994 25921 +21924 21997 21998 21925 25921 25994 25995 25922 +21925 21998 21999 21926 25922 25995 25996 25923 +21926 21999 22000 21927 25923 25996 25997 25924 +21927 22000 22001 21928 25924 25997 25998 25925 +21928 22001 22002 21929 25925 25998 25999 25926 +21929 22002 22003 21930 25926 25999 26000 25927 +21930 22003 22004 21931 25927 26000 26001 25928 +21931 22004 22005 21932 25928 26001 26002 25929 +21932 22005 22006 21933 25929 26002 26003 25930 +21933 22006 22007 21934 25930 26003 26004 25931 +21934 22007 22008 21935 25931 26004 26005 25932 +21935 22008 22009 21936 25932 26005 26006 25933 +21936 22009 22010 21937 25933 26006 26007 25934 +21937 22010 22011 21938 25934 26007 26008 25935 +21938 22011 22012 21939 25935 26008 26009 25936 +21939 22012 22013 21940 25936 26009 26010 25937 +21940 22013 22014 21941 25937 26010 26011 25938 +21941 22014 22015 21942 25938 26011 26012 25939 +21942 22015 22016 21943 25939 26012 26013 25940 +21944 22017 22018 21945 25941 26014 26015 25942 +21945 22018 22019 21946 25942 26015 26016 25943 +21946 22019 22020 21947 25943 26016 26017 25944 +21947 22020 22021 21948 25944 26017 26018 25945 +21948 22021 22022 21949 25945 26018 26019 25946 +21949 22022 22023 21950 25946 26019 26020 25947 +21950 22023 22024 21951 25947 26020 26021 25948 +21951 22024 22025 21952 25948 26021 26022 25949 +21952 22025 22026 21953 25949 26022 26023 25950 +21953 22026 22027 21954 25950 26023 26024 25951 +21954 22027 22028 21955 25951 26024 26025 25952 +21955 22028 22029 21956 25952 26025 26026 25953 +21956 22029 22030 21957 25953 26026 26027 25954 +21957 22030 22031 21958 25954 26027 26028 25955 +21958 22031 22032 21959 25955 26028 26029 25956 +21959 22032 22033 21960 25956 26029 26030 25957 +21960 22033 22034 21961 25957 26030 26031 25958 +21961 22034 22035 21962 25958 26031 26032 25959 +21962 22035 22036 21963 25959 26032 26033 25960 +21963 22036 22037 21964 25960 26033 26034 25961 +21964 22037 22038 21965 25961 26034 26035 25962 +21965 22038 22039 21966 25962 26035 26036 25963 +21966 22039 22040 21967 25963 26036 26037 25964 +21967 22040 22041 21968 25964 26037 26038 25965 +21968 22041 22042 21969 25965 26038 26039 25966 +21969 22042 22043 21970 25966 26039 26040 25967 +21970 22043 22044 21971 25967 26040 26041 25968 +21971 22044 22045 21972 25968 26041 26042 25969 +21972 22045 22046 21973 25969 26042 26043 25970 +21973 22046 22047 21974 25970 26043 26044 25971 +21974 22047 22048 21975 25971 26044 26045 25972 +21975 22048 22049 21976 25972 26045 26046 25973 +21976 22049 22050 21977 25973 26046 26047 25974 +21977 22050 22051 21978 25974 26047 26048 25975 +21978 22051 22052 21979 25975 26048 26049 25976 +21979 22052 22053 21980 25976 26049 26050 25977 +21980 22053 22054 21981 25977 26050 26051 25978 +21981 22054 22055 21982 25978 26051 26052 25979 +21982 22055 22056 21983 25979 26052 26053 25980 +21983 22056 22057 21984 25980 26053 26054 25981 +21984 22057 22058 21985 25981 26054 26055 25982 +21985 22058 22059 21986 25982 26055 26056 25983 +21986 22059 22060 21987 25983 26056 26057 25984 +21987 22060 22061 21988 25984 26057 26058 25985 +21988 22061 22062 21989 25985 26058 26059 25986 +21989 22062 22063 21990 25986 26059 26060 25987 +21990 22063 22064 21991 25987 26060 26061 25988 +21991 22064 22065 21992 25988 26061 26062 25989 +21992 22065 22066 21993 25989 26062 26063 25990 +21993 22066 22067 21994 25990 26063 26064 25991 +21994 22067 22068 21995 25991 26064 26065 25992 +21995 22068 22069 21996 25992 26065 26066 25993 +21996 22069 22070 21997 25993 26066 26067 25994 +21997 22070 22071 21998 25994 26067 26068 25995 +21998 22071 22072 21999 25995 26068 26069 25996 +21999 22072 22073 22000 25996 26069 26070 25997 +22000 22073 22074 22001 25997 26070 26071 25998 +22001 22074 22075 22002 25998 26071 26072 25999 +22002 22075 22076 22003 25999 26072 26073 26000 +22003 22076 22077 22004 26000 26073 26074 26001 +22004 22077 22078 22005 26001 26074 26075 26002 +22005 22078 22079 22006 26002 26075 26076 26003 +22006 22079 22080 22007 26003 26076 26077 26004 +22007 22080 22081 22008 26004 26077 26078 26005 +22008 22081 22082 22009 26005 26078 26079 26006 +22009 22082 22083 22010 26006 26079 26080 26007 +22010 22083 22084 22011 26007 26080 26081 26008 +22011 22084 22085 22012 26008 26081 26082 26009 +22012 22085 22086 22013 26009 26082 26083 26010 +22013 22086 22087 22014 26010 26083 26084 26011 +22014 22087 22088 22015 26011 26084 26085 26012 +22015 22088 22089 22016 26012 26085 26086 26013 +22017 22090 22091 22018 26014 26087 26088 26015 +22018 22091 22092 22019 26015 26088 26089 26016 +22019 22092 22093 22020 26016 26089 26090 26017 +22020 22093 22094 22021 26017 26090 26091 26018 +22021 22094 22095 22022 26018 26091 26092 26019 +22022 22095 22096 22023 26019 26092 26093 26020 +22023 22096 22097 22024 26020 26093 26094 26021 +22024 22097 22098 22025 26021 26094 26095 26022 +22025 22098 22099 22026 26022 26095 26096 26023 +22026 22099 22100 22027 26023 26096 26097 26024 +22027 22100 22101 22028 26024 26097 26098 26025 +22028 22101 22102 22029 26025 26098 26099 26026 +22029 22102 22103 22030 26026 26099 26100 26027 +22030 22103 22104 22031 26027 26100 26101 26028 +22031 22104 22105 22032 26028 26101 26102 26029 +22032 22105 22106 22033 26029 26102 26103 26030 +22033 22106 22107 22034 26030 26103 26104 26031 +22034 22107 22108 22035 26031 26104 26105 26032 +22035 22108 22109 22036 26032 26105 26106 26033 +22036 22109 22110 22037 26033 26106 26107 26034 +22037 22110 22111 22038 26034 26107 26108 26035 +22038 22111 22112 22039 26035 26108 26109 26036 +22039 22112 22113 22040 26036 26109 26110 26037 +22040 22113 22114 22041 26037 26110 26111 26038 +22041 22114 22115 22042 26038 26111 26112 26039 +22042 22115 22116 22043 26039 26112 26113 26040 +22043 22116 22117 22044 26040 26113 26114 26041 +22044 22117 22118 22045 26041 26114 26115 26042 +22045 22118 22119 22046 26042 26115 26116 26043 +22046 22119 22120 22047 26043 26116 26117 26044 +22047 22120 22121 22048 26044 26117 26118 26045 +22048 22121 22122 22049 26045 26118 26119 26046 +22049 22122 22123 22050 26046 26119 26120 26047 +22050 22123 22124 22051 26047 26120 26121 26048 +22051 22124 22125 22052 26048 26121 26122 26049 +22052 22125 22126 22053 26049 26122 26123 26050 +22053 22126 22127 22054 26050 26123 26124 26051 +22054 22127 22128 22055 26051 26124 26125 26052 +22055 22128 22129 22056 26052 26125 26126 26053 +22056 22129 22130 22057 26053 26126 26127 26054 +22057 22130 22131 22058 26054 26127 26128 26055 +22058 22131 22132 22059 26055 26128 26129 26056 +22059 22132 22133 22060 26056 26129 26130 26057 +22060 22133 22134 22061 26057 26130 26131 26058 +22061 22134 22135 22062 26058 26131 26132 26059 +22062 22135 22136 22063 26059 26132 26133 26060 +22063 22136 22137 22064 26060 26133 26134 26061 +22064 22137 22138 22065 26061 26134 26135 26062 +22065 22138 22139 22066 26062 26135 26136 26063 +22066 22139 22140 22067 26063 26136 26137 26064 +22067 22140 22141 22068 26064 26137 26138 26065 +22068 22141 22142 22069 26065 26138 26139 26066 +22069 22142 22143 22070 26066 26139 26140 26067 +22070 22143 22144 22071 26067 26140 26141 26068 +22071 22144 22145 22072 26068 26141 26142 26069 +22072 22145 22146 22073 26069 26142 26143 26070 +22073 22146 22147 22074 26070 26143 26144 26071 +22074 22147 22148 22075 26071 26144 26145 26072 +22075 22148 22149 22076 26072 26145 26146 26073 +22076 22149 22150 22077 26073 26146 26147 26074 +22077 22150 22151 22078 26074 26147 26148 26075 +22078 22151 22152 22079 26075 26148 26149 26076 +22079 22152 22153 22080 26076 26149 26150 26077 +22080 22153 22154 22081 26077 26150 26151 26078 +22081 22154 22155 22082 26078 26151 26152 26079 +22082 22155 22156 22083 26079 26152 26153 26080 +22083 22156 22157 22084 26080 26153 26154 26081 +22084 22157 22158 22085 26081 26154 26155 26082 +22085 22158 22159 22086 26082 26155 26156 26083 +22086 22159 22160 22087 26083 26156 26157 26084 +22087 22160 22161 22088 26084 26157 26158 26085 +22088 22161 22162 22089 26085 26158 26159 26086 +22090 22163 22164 22091 26087 26160 26161 26088 +22091 22164 22165 22092 26088 26161 26162 26089 +22092 22165 22166 22093 26089 26162 26163 26090 +22093 22166 22167 22094 26090 26163 26164 26091 +22094 22167 22168 22095 26091 26164 26165 26092 +22095 22168 22169 22096 26092 26165 26166 26093 +22096 22169 22170 22097 26093 26166 26167 26094 +22097 22170 22171 22098 26094 26167 26168 26095 +22098 22171 22172 22099 26095 26168 26169 26096 +22099 22172 22173 22100 26096 26169 26170 26097 +22100 22173 22174 22101 26097 26170 26171 26098 +22101 22174 22175 22102 26098 26171 26172 26099 +22102 22175 22176 22103 26099 26172 26173 26100 +22103 22176 22177 22104 26100 26173 26174 26101 +22104 22177 22178 22105 26101 26174 26175 26102 +22105 22178 22179 22106 26102 26175 26176 26103 +22106 22179 22180 22107 26103 26176 26177 26104 +22107 22180 22181 22108 26104 26177 26178 26105 +22108 22181 22182 22109 26105 26178 26179 26106 +22109 22182 22183 22110 26106 26179 26180 26107 +22110 22183 22184 22111 26107 26180 26181 26108 +22111 22184 22185 22112 26108 26181 26182 26109 +22112 22185 22186 22113 26109 26182 26183 26110 +22113 22186 22187 22114 26110 26183 26184 26111 +22114 22187 22188 22115 26111 26184 26185 26112 +22115 22188 22189 22116 26112 26185 26186 26113 +22116 22189 22190 22117 26113 26186 26187 26114 +22117 22190 22191 22118 26114 26187 26188 26115 +22118 22191 22192 22119 26115 26188 26189 26116 +22119 22192 22193 22120 26116 26189 26190 26117 +22120 22193 22194 22121 26117 26190 26191 26118 +22121 22194 22195 22122 26118 26191 26192 26119 +22122 22195 22196 22123 26119 26192 26193 26120 +22123 22196 22197 22124 26120 26193 26194 26121 +22124 22197 22198 22125 26121 26194 26195 26122 +22125 22198 22199 22126 26122 26195 26196 26123 +22126 22199 22200 22127 26123 26196 26197 26124 +22127 22200 22201 22128 26124 26197 26198 26125 +22128 22201 22202 22129 26125 26198 26199 26126 +22129 22202 22203 22130 26126 26199 26200 26127 +22130 22203 22204 22131 26127 26200 26201 26128 +22131 22204 22205 22132 26128 26201 26202 26129 +22132 22205 22206 22133 26129 26202 26203 26130 +22133 22206 22207 22134 26130 26203 26204 26131 +22134 22207 22208 22135 26131 26204 26205 26132 +22135 22208 22209 22136 26132 26205 26206 26133 +22136 22209 22210 22137 26133 26206 26207 26134 +22137 22210 22211 22138 26134 26207 26208 26135 +22138 22211 22212 22139 26135 26208 26209 26136 +22139 22212 22213 22140 26136 26209 26210 26137 +22140 22213 22214 22141 26137 26210 26211 26138 +22141 22214 22215 22142 26138 26211 26212 26139 +22142 22215 22216 22143 26139 26212 26213 26140 +22143 22216 22217 22144 26140 26213 26214 26141 +22144 22217 22218 22145 26141 26214 26215 26142 +22145 22218 22219 22146 26142 26215 26216 26143 +22146 22219 22220 22147 26143 26216 26217 26144 +22147 22220 22221 22148 26144 26217 26218 26145 +22148 22221 22222 22149 26145 26218 26219 26146 +22149 22222 22223 22150 26146 26219 26220 26147 +22150 22223 22224 22151 26147 26220 26221 26148 +22151 22224 22225 22152 26148 26221 26222 26149 +22152 22225 22226 22153 26149 26222 26223 26150 +22153 22226 22227 22154 26150 26223 26224 26151 +22154 22227 22228 22155 26151 26224 26225 26152 +22155 22228 22229 22156 26152 26225 26226 26153 +22156 22229 22230 22157 26153 26226 26227 26154 +22157 22230 22231 22158 26154 26227 26228 26155 +22158 22231 22232 22159 26155 26228 26229 26156 +22159 22232 22233 22160 26156 26229 26230 26157 +22160 22233 22234 22161 26157 26230 26231 26158 +22161 22234 22235 22162 26158 26231 26232 26159 +22163 22236 22237 22164 26160 26233 26234 26161 +22164 22237 22238 22165 26161 26234 26235 26162 +22165 22238 22239 22166 26162 26235 26236 26163 +22166 22239 22240 22167 26163 26236 26237 26164 +22167 22240 22241 22168 26164 26237 26238 26165 +22168 22241 22242 22169 26165 26238 26239 26166 +22169 22242 22243 22170 26166 26239 26240 26167 +22170 22243 22244 22171 26167 26240 26241 26168 +22171 22244 22245 22172 26168 26241 26242 26169 +22172 22245 22246 22173 26169 26242 26243 26170 +22173 22246 22247 22174 26170 26243 26244 26171 +22174 22247 22248 22175 26171 26244 26245 26172 +22175 22248 22249 22176 26172 26245 26246 26173 +22176 22249 22250 22177 26173 26246 26247 26174 +22177 22250 22251 22178 26174 26247 26248 26175 +22178 22251 22252 22179 26175 26248 26249 26176 +22179 22252 22253 22180 26176 26249 26250 26177 +22180 22253 22254 22181 26177 26250 26251 26178 +22181 22254 22255 22182 26178 26251 26252 26179 +22182 22255 22256 22183 26179 26252 26253 26180 +22183 22256 22257 22184 26180 26253 26254 26181 +22184 22257 22258 22185 26181 26254 26255 26182 +22185 22258 22259 22186 26182 26255 26256 26183 +22186 22259 22260 22187 26183 26256 26257 26184 +22187 22260 22261 22188 26184 26257 26258 26185 +22188 22261 22262 22189 26185 26258 26259 26186 +22189 22262 22263 22190 26186 26259 26260 26187 +22190 22263 22264 22191 26187 26260 26261 26188 +22191 22264 22265 22192 26188 26261 26262 26189 +22192 22265 22266 22193 26189 26262 26263 26190 +22193 22266 22267 22194 26190 26263 26264 26191 +22194 22267 22268 22195 26191 26264 26265 26192 +22195 22268 22269 22196 26192 26265 26266 26193 +22196 22269 22270 22197 26193 26266 26267 26194 +22197 22270 22271 22198 26194 26267 26268 26195 +22198 22271 22272 22199 26195 26268 26269 26196 +22199 22272 22273 22200 26196 26269 26270 26197 +22200 22273 22274 22201 26197 26270 26271 26198 +22201 22274 22275 22202 26198 26271 26272 26199 +22202 22275 22276 22203 26199 26272 26273 26200 +22203 22276 22277 22204 26200 26273 26274 26201 +22204 22277 22278 22205 26201 26274 26275 26202 +22205 22278 22279 22206 26202 26275 26276 26203 +22206 22279 22280 22207 26203 26276 26277 26204 +22207 22280 22281 22208 26204 26277 26278 26205 +22208 22281 22282 22209 26205 26278 26279 26206 +22209 22282 22283 22210 26206 26279 26280 26207 +22210 22283 22284 22211 26207 26280 26281 26208 +22211 22284 22285 22212 26208 26281 26282 26209 +22212 22285 22286 22213 26209 26282 26283 26210 +22213 22286 22287 22214 26210 26283 26284 26211 +22214 22287 22288 22215 26211 26284 26285 26212 +22215 22288 22289 22216 26212 26285 26286 26213 +22216 22289 22290 22217 26213 26286 26287 26214 +22217 22290 22291 22218 26214 26287 26288 26215 +22218 22291 22292 22219 26215 26288 26289 26216 +22219 22292 22293 22220 26216 26289 26290 26217 +22220 22293 22294 22221 26217 26290 26291 26218 +22221 22294 22295 22222 26218 26291 26292 26219 +22222 22295 22296 22223 26219 26292 26293 26220 +22223 22296 22297 22224 26220 26293 26294 26221 +22224 22297 22298 22225 26221 26294 26295 26222 +22225 22298 22299 22226 26222 26295 26296 26223 +22226 22299 22300 22227 26223 26296 26297 26224 +22227 22300 22301 22228 26224 26297 26298 26225 +22228 22301 22302 22229 26225 26298 26299 26226 +22229 22302 22303 22230 26226 26299 26300 26227 +22230 22303 22304 22231 26227 26300 26301 26228 +22231 22304 22305 22232 26228 26301 26302 26229 +22232 22305 22306 22233 26229 26302 26303 26230 +22233 22306 22307 22234 26230 26303 26304 26231 +22234 22307 22308 22235 26231 26304 26305 26232 +22236 22309 22310 22237 26233 26306 26307 26234 +22237 22310 22311 22238 26234 26307 26308 26235 +22238 22311 22312 22239 26235 26308 26309 26236 +22239 22312 22313 22240 26236 26309 26310 26237 +22240 22313 22314 22241 26237 26310 26311 26238 +22241 22314 22315 22242 26238 26311 26312 26239 +22242 22315 22316 22243 26239 26312 26313 26240 +22243 22316 22317 22244 26240 26313 26314 26241 +22244 22317 22318 22245 26241 26314 26315 26242 +22245 22318 22319 22246 26242 26315 26316 26243 +22246 22319 22320 22247 26243 26316 26317 26244 +22247 22320 22321 22248 26244 26317 26318 26245 +22248 22321 22322 22249 26245 26318 26319 26246 +22249 22322 22323 22250 26246 26319 26320 26247 +22250 22323 22324 22251 26247 26320 26321 26248 +22251 22324 22325 22252 26248 26321 26322 26249 +22252 22325 22326 22253 26249 26322 26323 26250 +22253 22326 22327 22254 26250 26323 26324 26251 +22254 22327 22328 22255 26251 26324 26325 26252 +22255 22328 22329 22256 26252 26325 26326 26253 +22256 22329 22330 22257 26253 26326 26327 26254 +22257 22330 22331 22258 26254 26327 26328 26255 +22258 22331 22332 22259 26255 26328 26329 26256 +22259 22332 22333 22260 26256 26329 26330 26257 +22260 22333 22334 22261 26257 26330 26331 26258 +22261 22334 22335 22262 26258 26331 26332 26259 +22262 22335 22336 22263 26259 26332 26333 26260 +22263 22336 22337 22264 26260 26333 26334 26261 +22264 22337 22338 22265 26261 26334 26335 26262 +22265 22338 22339 22266 26262 26335 26336 26263 +22266 22339 22340 22267 26263 26336 26337 26264 +22267 22340 22341 22268 26264 26337 26338 26265 +22268 22341 22342 22269 26265 26338 26339 26266 +22269 22342 22343 22270 26266 26339 26340 26267 +22270 22343 22344 22271 26267 26340 26341 26268 +22271 22344 22345 22272 26268 26341 26342 26269 +22272 22345 22346 22273 26269 26342 26343 26270 +22273 22346 22347 22274 26270 26343 26344 26271 +22274 22347 22348 22275 26271 26344 26345 26272 +22275 22348 22349 22276 26272 26345 26346 26273 +22276 22349 22350 22277 26273 26346 26347 26274 +22277 22350 22351 22278 26274 26347 26348 26275 +22278 22351 22352 22279 26275 26348 26349 26276 +22279 22352 22353 22280 26276 26349 26350 26277 +22280 22353 22354 22281 26277 26350 26351 26278 +22281 22354 22355 22282 26278 26351 26352 26279 +22282 22355 22356 22283 26279 26352 26353 26280 +22283 22356 22357 22284 26280 26353 26354 26281 +22284 22357 22358 22285 26281 26354 26355 26282 +22285 22358 22359 22286 26282 26355 26356 26283 +22286 22359 22360 22287 26283 26356 26357 26284 +22287 22360 22361 22288 26284 26357 26358 26285 +22288 22361 22362 22289 26285 26358 26359 26286 +22289 22362 22363 22290 26286 26359 26360 26287 +22290 22363 22364 22291 26287 26360 26361 26288 +22291 22364 22365 22292 26288 26361 26362 26289 +22292 22365 22366 22293 26289 26362 26363 26290 +22293 22366 22367 22294 26290 26363 26364 26291 +22294 22367 22368 22295 26291 26364 26365 26292 +22295 22368 22369 22296 26292 26365 26366 26293 +22296 22369 22370 22297 26293 26366 26367 26294 +22297 22370 22371 22298 26294 26367 26368 26295 +22298 22371 22372 22299 26295 26368 26369 26296 +22299 22372 22373 22300 26296 26369 26370 26297 +22300 22373 22374 22301 26297 26370 26371 26298 +22301 22374 22375 22302 26298 26371 26372 26299 +22302 22375 22376 22303 26299 26372 26373 26300 +22303 22376 22377 22304 26300 26373 26374 26301 +22304 22377 22378 22305 26301 26374 26375 26302 +22305 22378 22379 22306 26302 26375 26376 26303 +22306 22379 22380 22307 26303 26376 26377 26304 +22307 22380 22381 22308 26304 26377 26378 26305 +22309 22382 22383 22310 26306 26379 26380 26307 +22310 22383 22384 22311 26307 26380 26381 26308 +22311 22384 22385 22312 26308 26381 26382 26309 +22312 22385 22386 22313 26309 26382 26383 26310 +22313 22386 22387 22314 26310 26383 26384 26311 +22314 22387 22388 22315 26311 26384 26385 26312 +22315 22388 22389 22316 26312 26385 26386 26313 +22316 22389 22390 22317 26313 26386 26387 26314 +22317 22390 22391 22318 26314 26387 26388 26315 +22318 22391 22392 22319 26315 26388 26389 26316 +22319 22392 22393 22320 26316 26389 26390 26317 +22320 22393 22394 22321 26317 26390 26391 26318 +22321 22394 22395 22322 26318 26391 26392 26319 +22322 22395 22396 22323 26319 26392 26393 26320 +22323 22396 22397 22324 26320 26393 26394 26321 +22324 22397 22398 22325 26321 26394 26395 26322 +22325 22398 22399 22326 26322 26395 26396 26323 +22326 22399 22400 22327 26323 26396 26397 26324 +22327 22400 22401 22328 26324 26397 26398 26325 +22328 22401 22402 22329 26325 26398 26399 26326 +22329 22402 22403 22330 26326 26399 26400 26327 +22330 22403 22404 22331 26327 26400 26401 26328 +22331 22404 22405 22332 26328 26401 26402 26329 +22332 22405 22406 22333 26329 26402 26403 26330 +22333 22406 22407 22334 26330 26403 26404 26331 +22334 22407 22408 22335 26331 26404 26405 26332 +22335 22408 22409 22336 26332 26405 26406 26333 +22336 22409 22410 22337 26333 26406 26407 26334 +22337 22410 22411 22338 26334 26407 26408 26335 +22338 22411 22412 22339 26335 26408 26409 26336 +22339 22412 22413 22340 26336 26409 26410 26337 +22340 22413 22414 22341 26337 26410 26411 26338 +22341 22414 22415 22342 26338 26411 26412 26339 +22342 22415 22416 22343 26339 26412 26413 26340 +22343 22416 22417 22344 26340 26413 26414 26341 +22344 22417 22418 22345 26341 26414 26415 26342 +22345 22418 22419 22346 26342 26415 26416 26343 +22346 22419 22420 22347 26343 26416 26417 26344 +22347 22420 22421 22348 26344 26417 26418 26345 +22348 22421 22422 22349 26345 26418 26419 26346 +22349 22422 22423 22350 26346 26419 26420 26347 +22350 22423 22424 22351 26347 26420 26421 26348 +22351 22424 22425 22352 26348 26421 26422 26349 +22352 22425 22426 22353 26349 26422 26423 26350 +22353 22426 22427 22354 26350 26423 26424 26351 +22354 22427 22428 22355 26351 26424 26425 26352 +22355 22428 22429 22356 26352 26425 26426 26353 +22356 22429 22430 22357 26353 26426 26427 26354 +22357 22430 22431 22358 26354 26427 26428 26355 +22358 22431 22432 22359 26355 26428 26429 26356 +22359 22432 22433 22360 26356 26429 26430 26357 +22360 22433 22434 22361 26357 26430 26431 26358 +22361 22434 22435 22362 26358 26431 26432 26359 +22362 22435 22436 22363 26359 26432 26433 26360 +22363 22436 22437 22364 26360 26433 26434 26361 +22364 22437 22438 22365 26361 26434 26435 26362 +22365 22438 22439 22366 26362 26435 26436 26363 +22366 22439 22440 22367 26363 26436 26437 26364 +22367 22440 22441 22368 26364 26437 26438 26365 +22368 22441 22442 22369 26365 26438 26439 26366 +22369 22442 22443 22370 26366 26439 26440 26367 +22370 22443 22444 22371 26367 26440 26441 26368 +22371 22444 22445 22372 26368 26441 26442 26369 +22372 22445 22446 22373 26369 26442 26443 26370 +22373 22446 22447 22374 26370 26443 26444 26371 +22374 22447 22448 22375 26371 26444 26445 26372 +22375 22448 22449 22376 26372 26445 26446 26373 +22376 22449 22450 22377 26373 26446 26447 26374 +22377 22450 22451 22378 26374 26447 26448 26375 +22378 22451 22452 22379 26375 26448 26449 26376 +22379 22452 22453 22380 26376 26449 26450 26377 +22380 22453 22454 22381 26377 26450 26451 26378 +22455 22456 22457 22458 26452 26453 26454 26455 +22456 22459 22460 22457 26453 26456 26457 26454 +22457 22460 22461 22462 26454 26457 26458 26459 +22457 22462 22463 22458 26454 26459 26460 26455 +22459 22464 22465 22460 26456 26461 26462 26457 +22460 22465 22466 22461 26457 26462 26463 26458 +22461 22466 22467 22468 26458 26463 26464 26465 +22461 22468 22469 22462 26458 26465 26466 26459 +22462 22469 22470 22463 26459 26466 26467 26460 +22464 22471 22472 22465 26461 26468 26469 26462 +22465 22472 22473 22466 26462 26469 26470 26463 +22466 22473 22474 22467 26463 26470 26471 26464 +22467 22474 22475 22476 26464 26471 26472 26473 +22467 22476 22477 22468 26464 26473 26474 26465 +22468 22477 22478 22469 26465 26474 26475 26466 +22469 22478 22479 22470 26466 26475 26476 26467 +22471 22480 22481 22472 26468 26477 26478 26469 +22472 22481 22482 22473 26469 26478 26479 26470 +22473 22482 22483 22474 26470 26479 26480 26471 +22474 22483 22484 22475 26471 26480 26481 26472 +22475 22484 22485 22486 26472 26481 26482 26483 +22475 22486 22487 22476 26472 26483 26484 26473 +22476 22487 22488 22477 26473 26484 26485 26474 +22477 22488 22489 22478 26474 26485 26486 26475 +22478 22489 22490 22479 26475 26486 26487 26476 +22480 22491 22492 22481 26477 26488 26489 26478 +22481 22492 22493 22482 26478 26489 26490 26479 +22482 22493 22494 22483 26479 26490 26491 26480 +22483 22494 22495 22484 26480 26491 26492 26481 +22484 22495 22496 22485 26481 26492 26493 26482 +22485 22496 22497 22498 26482 26493 26494 26495 +22485 22498 22499 22486 26482 26495 26496 26483 +22486 22499 22500 22487 26483 26496 26497 26484 +22487 22500 22501 22488 26484 26497 26498 26485 +22488 22501 22502 22489 26485 26498 26499 26486 +22489 22502 22503 22490 26486 26499 26500 26487 +22491 22504 22505 22492 26488 26501 26502 26489 +22492 22505 22506 22493 26489 26502 26503 26490 +22493 22506 22507 22494 26490 26503 26504 26491 +22494 22507 22508 22495 26491 26504 26505 26492 +22495 22508 22509 22496 26492 26505 26506 26493 +22496 22509 22510 22497 26493 26506 26507 26494 +22497 22510 22511 22512 26494 26507 26508 26509 +22497 22512 22513 22498 26494 26509 26510 26495 +22498 22513 22514 22499 26495 26510 26511 26496 +22499 22514 22515 22500 26496 26511 26512 26497 +22500 22515 22516 22501 26497 26512 26513 26498 +22501 22516 22517 22502 26498 26513 26514 26499 +22502 22517 22518 22503 26499 26514 26515 26500 +22504 22519 22520 22505 26501 26516 26517 26502 +22505 22520 22521 22506 26502 26517 26518 26503 +22506 22521 22522 22507 26503 26518 26519 26504 +22507 22522 22523 22508 26504 26519 26520 26505 +22508 22523 22524 22509 26505 26520 26521 26506 +22509 22524 22525 22510 26506 26521 26522 26507 +22510 22525 22526 22511 26507 26522 26523 26508 +22511 22526 22527 22528 26508 26523 26524 26525 +22511 22528 22529 22512 26508 26525 26526 26509 +22512 22529 22530 22513 26509 26526 26527 26510 +22513 22530 22531 22514 26510 26527 26528 26511 +22514 22531 22532 22515 26511 26528 26529 26512 +22515 22532 22533 22516 26512 26529 26530 26513 +22516 22533 22534 22517 26513 26530 26531 26514 +22517 22534 22535 22518 26514 26531 26532 26515 +22519 22536 22537 22520 26516 26533 26534 26517 +22520 22537 22538 22521 26517 26534 26535 26518 +22521 22538 22539 22522 26518 26535 26536 26519 +22522 22539 22540 22523 26519 26536 26537 26520 +22523 22540 22541 22524 26520 26537 26538 26521 +22524 22541 22542 22525 26521 26538 26539 26522 +22525 22542 22543 22526 26522 26539 26540 26523 +22526 22543 22544 22527 26523 26540 26541 26524 +22527 22544 22545 22546 26524 26541 26542 26543 +22527 22546 22547 22528 26524 26543 26544 26525 +22528 22547 22548 22529 26525 26544 26545 26526 +22529 22548 22549 22530 26526 26545 26546 26527 +22530 22549 22550 22531 26527 26546 26547 26528 +22531 22550 22551 22532 26528 26547 26548 26529 +22532 22551 22552 22533 26529 26548 26549 26530 +22533 22552 22553 22534 26530 26549 26550 26531 +22534 22553 22554 22535 26531 26550 26551 26532 +22536 22555 22556 22537 26533 26552 26553 26534 +22537 22556 22557 22538 26534 26553 26554 26535 +22538 22557 22558 22539 26535 26554 26555 26536 +22539 22558 22559 22540 26536 26555 26556 26537 +22540 22559 22560 22541 26537 26556 26557 26538 +22541 22560 22561 22542 26538 26557 26558 26539 +22542 22561 22562 22543 26539 26558 26559 26540 +22543 22562 22563 22544 26540 26559 26560 26541 +22544 22563 22564 22545 26541 26560 26561 26542 +22545 22564 22565 22566 26542 26561 26562 26563 +22545 22566 22567 22546 26542 26563 26564 26543 +22546 22567 22568 22547 26543 26564 26565 26544 +22547 22568 22569 22548 26544 26565 26566 26545 +22548 22569 22570 22549 26545 26566 26567 26546 +22549 22570 22571 22550 26546 26567 26568 26547 +22550 22571 22572 22551 26547 26568 26569 26548 +22551 22572 22573 22552 26548 26569 26570 26549 +22552 22573 22574 22553 26549 26570 26571 26550 +22553 22574 22575 22554 26550 26571 26572 26551 +22555 22576 22577 22556 26552 26573 26574 26553 +22556 22577 22578 22557 26553 26574 26575 26554 +22557 22578 22579 22558 26554 26575 26576 26555 +22558 22579 22580 22559 26555 26576 26577 26556 +22559 22580 22581 22560 26556 26577 26578 26557 +22560 22581 22582 22561 26557 26578 26579 26558 +22561 22582 22583 22562 26558 26579 26580 26559 +22562 22583 22584 22563 26559 26580 26581 26560 +22563 22584 22585 22564 26560 26581 26582 26561 +22564 22585 22586 22565 26561 26582 26583 26562 +22565 22586 22587 22588 26562 26583 26584 26585 +22565 22588 22589 22566 26562 26585 26586 26563 +22566 22589 22590 22567 26563 26586 26587 26564 +22567 22590 22591 22568 26564 26587 26588 26565 +22568 22591 22592 22569 26565 26588 26589 26566 +22569 22592 22593 22570 26566 26589 26590 26567 +22570 22593 22594 22571 26567 26590 26591 26568 +22571 22594 22595 22572 26568 26591 26592 26569 +22572 22595 22596 22573 26569 26592 26593 26570 +22573 22596 22597 22574 26570 26593 26594 26571 +22574 22597 22598 22575 26571 26594 26595 26572 +22576 22599 22600 22577 26573 26596 26597 26574 +22577 22600 22601 22578 26574 26597 26598 26575 +22578 22601 22602 22579 26575 26598 26599 26576 +22579 22602 22603 22580 26576 26599 26600 26577 +22580 22603 22604 22581 26577 26600 26601 26578 +22581 22604 22605 22582 26578 26601 26602 26579 +22582 22605 22606 22583 26579 26602 26603 26580 +22583 22606 22607 22584 26580 26603 26604 26581 +22584 22607 22608 22585 26581 26604 26605 26582 +22585 22608 22609 22586 26582 26605 26606 26583 +22586 22609 22610 22587 26583 26606 26607 26584 +22587 22610 22611 22612 26584 26607 26608 26609 +22587 22612 22613 22588 26584 26609 26610 26585 +22588 22613 22614 22589 26585 26610 26611 26586 +22589 22614 22615 22590 26586 26611 26612 26587 +22590 22615 22616 22591 26587 26612 26613 26588 +22591 22616 22617 22592 26588 26613 26614 26589 +22592 22617 22618 22593 26589 26614 26615 26590 +22593 22618 22619 22594 26590 26615 26616 26591 +22594 22619 22620 22595 26591 26616 26617 26592 +22595 22620 22621 22596 26592 26617 26618 26593 +22596 22621 22622 22597 26593 26618 26619 26594 +22597 22622 22623 22598 26594 26619 26620 26595 +22599 22624 22625 22600 26596 26621 26622 26597 +22600 22625 22626 22601 26597 26622 26623 26598 +22601 22626 22627 22602 26598 26623 26624 26599 +22602 22627 22628 22603 26599 26624 26625 26600 +22603 22628 22629 22604 26600 26625 26626 26601 +22604 22629 22630 22605 26601 26626 26627 26602 +22605 22630 22631 22606 26602 26627 26628 26603 +22606 22631 22632 22607 26603 26628 26629 26604 +22607 22632 22633 22608 26604 26629 26630 26605 +22608 22633 22634 22609 26605 26630 26631 26606 +22609 22634 22635 22610 26606 26631 26632 26607 +22610 22635 22636 22611 26607 26632 26633 26608 +22611 22636 22637 22638 26608 26633 26634 26635 +22611 22638 22639 22612 26608 26635 26636 26609 +22612 22639 22640 22613 26609 26636 26637 26610 +22613 22640 22641 22614 26610 26637 26638 26611 +22614 22641 22642 22615 26611 26638 26639 26612 +22615 22642 22643 22616 26612 26639 26640 26613 +22616 22643 22644 22617 26613 26640 26641 26614 +22617 22644 22645 22618 26614 26641 26642 26615 +22618 22645 22646 22619 26615 26642 26643 26616 +22619 22646 22647 22620 26616 26643 26644 26617 +22620 22647 22648 22621 26617 26644 26645 26618 +22621 22648 22649 22622 26618 26645 26646 26619 +22622 22649 22650 22623 26619 26646 26647 26620 +22624 22651 22652 22625 26621 26648 26649 26622 +22625 22652 22653 22626 26622 26649 26650 26623 +22626 22653 22654 22627 26623 26650 26651 26624 +22627 22654 22655 22628 26624 26651 26652 26625 +22628 22655 22656 22629 26625 26652 26653 26626 +22629 22656 22657 22630 26626 26653 26654 26627 +22630 22657 22658 22631 26627 26654 26655 26628 +22631 22658 22659 22632 26628 26655 26656 26629 +22632 22659 22660 22633 26629 26656 26657 26630 +22633 22660 22661 22634 26630 26657 26658 26631 +22634 22661 22662 22635 26631 26658 26659 26632 +22635 22662 22663 22636 26632 26659 26660 26633 +22636 22663 22664 22637 26633 26660 26661 26634 +22637 22664 22665 22666 26634 26661 26662 26663 +22637 22666 22667 22638 26634 26663 26664 26635 +22638 22667 22668 22639 26635 26664 26665 26636 +22639 22668 22669 22640 26636 26665 26666 26637 +22640 22669 22670 22641 26637 26666 26667 26638 +22641 22670 22671 22642 26638 26667 26668 26639 +22642 22671 22672 22643 26639 26668 26669 26640 +22643 22672 22673 22644 26640 26669 26670 26641 +22644 22673 22674 22645 26641 26670 26671 26642 +22645 22674 22675 22646 26642 26671 26672 26643 +22646 22675 22676 22647 26643 26672 26673 26644 +22647 22676 22677 22648 26644 26673 26674 26645 +22648 22677 22678 22649 26645 26674 26675 26646 +22649 22678 22679 22650 26646 26675 26676 26647 +22651 22680 22681 22652 26648 26677 26678 26649 +22652 22681 22682 22653 26649 26678 26679 26650 +22653 22682 22683 22654 26650 26679 26680 26651 +22654 22683 22684 22655 26651 26680 26681 26652 +22655 22684 22685 22656 26652 26681 26682 26653 +22656 22685 22686 22657 26653 26682 26683 26654 +22657 22686 22687 22658 26654 26683 26684 26655 +22658 22687 22688 22659 26655 26684 26685 26656 +22659 22688 22689 22660 26656 26685 26686 26657 +22660 22689 22690 22661 26657 26686 26687 26658 +22661 22690 22691 22662 26658 26687 26688 26659 +22662 22691 22692 22663 26659 26688 26689 26660 +22663 22692 22693 22664 26660 26689 26690 26661 +22664 22693 22694 22665 26661 26690 26691 26662 +22665 22694 22695 22696 26662 26691 26692 26693 +22665 22696 22697 22666 26662 26693 26694 26663 +22666 22697 22698 22667 26663 26694 26695 26664 +22667 22698 22699 22668 26664 26695 26696 26665 +22668 22699 22700 22669 26665 26696 26697 26666 +22669 22700 22701 22670 26666 26697 26698 26667 +22670 22701 22702 22671 26667 26698 26699 26668 +22671 22702 22703 22672 26668 26699 26700 26669 +22672 22703 22704 22673 26669 26700 26701 26670 +22673 22704 22705 22674 26670 26701 26702 26671 +22674 22705 22706 22675 26671 26702 26703 26672 +22675 22706 22707 22676 26672 26703 26704 26673 +22676 22707 22708 22677 26673 26704 26705 26674 +22677 22708 22709 22678 26674 26705 26706 26675 +22678 22709 22710 22679 26675 26706 26707 26676 +22680 22711 22712 22681 26677 26708 26709 26678 +22681 22712 22713 22682 26678 26709 26710 26679 +22682 22713 22714 22683 26679 26710 26711 26680 +22683 22714 22715 22684 26680 26711 26712 26681 +22684 22715 22716 22685 26681 26712 26713 26682 +22685 22716 22717 22686 26682 26713 26714 26683 +22686 22717 22718 22687 26683 26714 26715 26684 +22687 22718 22719 22688 26684 26715 26716 26685 +22688 22719 22720 22689 26685 26716 26717 26686 +22689 22720 22721 22690 26686 26717 26718 26687 +22690 22721 22722 22691 26687 26718 26719 26688 +22691 22722 22723 22692 26688 26719 26720 26689 +22692 22723 22724 22693 26689 26720 26721 26690 +22693 22724 22725 22694 26690 26721 26722 26691 +22694 22725 22726 22695 26691 26722 26723 26692 +22695 22726 22727 22728 26692 26723 26724 26725 +22695 22728 22729 22696 26692 26725 26726 26693 +22696 22729 22730 22697 26693 26726 26727 26694 +22697 22730 22731 22698 26694 26727 26728 26695 +22698 22731 22732 22699 26695 26728 26729 26696 +22699 22732 22733 22700 26696 26729 26730 26697 +22700 22733 22734 22701 26697 26730 26731 26698 +22701 22734 22735 22702 26698 26731 26732 26699 +22702 22735 22736 22703 26699 26732 26733 26700 +22703 22736 22737 22704 26700 26733 26734 26701 +22704 22737 22738 22705 26701 26734 26735 26702 +22705 22738 22739 22706 26702 26735 26736 26703 +22706 22739 22740 22707 26703 26736 26737 26704 +22707 22740 22741 22708 26704 26737 26738 26705 +22708 22741 22742 22709 26705 26738 26739 26706 +22709 22742 22743 22710 26706 26739 26740 26707 +22711 22744 22745 22712 26708 26741 26742 26709 +22712 22745 22746 22713 26709 26742 26743 26710 +22713 22746 22747 22714 26710 26743 26744 26711 +22714 22747 22748 22715 26711 26744 26745 26712 +22715 22748 22749 22716 26712 26745 26746 26713 +22716 22749 22750 22717 26713 26746 26747 26714 +22717 22750 22751 22718 26714 26747 26748 26715 +22718 22751 22752 22719 26715 26748 26749 26716 +22719 22752 22753 22720 26716 26749 26750 26717 +22720 22753 22754 22721 26717 26750 26751 26718 +22721 22754 22755 22722 26718 26751 26752 26719 +22722 22755 22756 22723 26719 26752 26753 26720 +22723 22756 22757 22724 26720 26753 26754 26721 +22724 22757 22758 22725 26721 26754 26755 26722 +22725 22758 22759 22726 26722 26755 26756 26723 +22726 22759 22760 22727 26723 26756 26757 26724 +22727 22760 22761 22762 26724 26757 26758 26759 +22727 22762 22763 22728 26724 26759 26760 26725 +22728 22763 22764 22729 26725 26760 26761 26726 +22729 22764 22765 22730 26726 26761 26762 26727 +22730 22765 22766 22731 26727 26762 26763 26728 +22731 22766 22767 22732 26728 26763 26764 26729 +22732 22767 22768 22733 26729 26764 26765 26730 +22733 22768 22769 22734 26730 26765 26766 26731 +22734 22769 22770 22735 26731 26766 26767 26732 +22735 22770 22771 22736 26732 26767 26768 26733 +22736 22771 22772 22737 26733 26768 26769 26734 +22737 22772 22773 22738 26734 26769 26770 26735 +22738 22773 22774 22739 26735 26770 26771 26736 +22739 22774 22775 22740 26736 26771 26772 26737 +22740 22775 22776 22741 26737 26772 26773 26738 +22741 22776 22777 22742 26738 26773 26774 26739 +22742 22777 22778 22743 26739 26774 26775 26740 +22744 22779 22780 22745 26741 26776 26777 26742 +22745 22780 22781 22746 26742 26777 26778 26743 +22746 22781 22782 22747 26743 26778 26779 26744 +22747 22782 22783 22748 26744 26779 26780 26745 +22748 22783 22784 22749 26745 26780 26781 26746 +22749 22784 22785 22750 26746 26781 26782 26747 +22750 22785 22786 22751 26747 26782 26783 26748 +22751 22786 22787 22752 26748 26783 26784 26749 +22752 22787 22788 22753 26749 26784 26785 26750 +22753 22788 22789 22754 26750 26785 26786 26751 +22754 22789 22790 22755 26751 26786 26787 26752 +22755 22790 22791 22756 26752 26787 26788 26753 +22756 22791 22792 22757 26753 26788 26789 26754 +22757 22792 22793 22758 26754 26789 26790 26755 +22758 22793 22794 22759 26755 26790 26791 26756 +22759 22794 22795 22760 26756 26791 26792 26757 +22760 22795 22796 22761 26757 26792 26793 26758 +22761 22796 22797 22798 26758 26793 26794 26795 +22761 22798 22799 22762 26758 26795 26796 26759 +22762 22799 22800 22763 26759 26796 26797 26760 +22763 22800 22801 22764 26760 26797 26798 26761 +22764 22801 22802 22765 26761 26798 26799 26762 +22765 22802 22803 22766 26762 26799 26800 26763 +22766 22803 22804 22767 26763 26800 26801 26764 +22767 22804 22805 22768 26764 26801 26802 26765 +22768 22805 22806 22769 26765 26802 26803 26766 +22769 22806 22807 22770 26766 26803 26804 26767 +22770 22807 22808 22771 26767 26804 26805 26768 +22771 22808 22809 22772 26768 26805 26806 26769 +22772 22809 22810 22773 26769 26806 26807 26770 +22773 22810 22811 22774 26770 26807 26808 26771 +22774 22811 22812 22775 26771 26808 26809 26772 +22775 22812 22813 22776 26772 26809 26810 26773 +22776 22813 22814 22777 26773 26810 26811 26774 +22777 22814 22815 22778 26774 26811 26812 26775 +22779 22816 22817 22780 26776 26813 26814 26777 +22780 22817 22818 22781 26777 26814 26815 26778 +22781 22818 22819 22782 26778 26815 26816 26779 +22782 22819 22820 22783 26779 26816 26817 26780 +22783 22820 22821 22784 26780 26817 26818 26781 +22784 22821 22822 22785 26781 26818 26819 26782 +22785 22822 22823 22786 26782 26819 26820 26783 +22786 22823 22824 22787 26783 26820 26821 26784 +22787 22824 22825 22788 26784 26821 26822 26785 +22788 22825 22826 22789 26785 26822 26823 26786 +22789 22826 22827 22790 26786 26823 26824 26787 +22790 22827 22828 22791 26787 26824 26825 26788 +22791 22828 22829 22792 26788 26825 26826 26789 +22792 22829 22830 22793 26789 26826 26827 26790 +22793 22830 22831 22794 26790 26827 26828 26791 +22794 22831 22832 22795 26791 26828 26829 26792 +22795 22832 22833 22796 26792 26829 26830 26793 +22796 22833 22834 22797 26793 26830 26831 26794 +22797 22834 22835 22836 26794 26831 26832 26833 +22797 22836 22837 22798 26794 26833 26834 26795 +22798 22837 22838 22799 26795 26834 26835 26796 +22799 22838 22839 22800 26796 26835 26836 26797 +22800 22839 22840 22801 26797 26836 26837 26798 +22801 22840 22841 22802 26798 26837 26838 26799 +22802 22841 22842 22803 26799 26838 26839 26800 +22803 22842 22843 22804 26800 26839 26840 26801 +22804 22843 22844 22805 26801 26840 26841 26802 +22805 22844 22845 22806 26802 26841 26842 26803 +22806 22845 22846 22807 26803 26842 26843 26804 +22807 22846 22847 22808 26804 26843 26844 26805 +22808 22847 22848 22809 26805 26844 26845 26806 +22809 22848 22849 22810 26806 26845 26846 26807 +22810 22849 22850 22811 26807 26846 26847 26808 +22811 22850 22851 22812 26808 26847 26848 26809 +22812 22851 22852 22813 26809 26848 26849 26810 +22813 22852 22853 22814 26810 26849 26850 26811 +22814 22853 22854 22815 26811 26850 26851 26812 +22816 22855 22856 22817 26813 26852 26853 26814 +22817 22856 22857 22818 26814 26853 26854 26815 +22818 22857 22858 22819 26815 26854 26855 26816 +22819 22858 22859 22820 26816 26855 26856 26817 +22820 22859 22860 22821 26817 26856 26857 26818 +22821 22860 22861 22822 26818 26857 26858 26819 +22822 22861 22862 22823 26819 26858 26859 26820 +22823 22862 22863 22824 26820 26859 26860 26821 +22824 22863 22864 22825 26821 26860 26861 26822 +22825 22864 22865 22826 26822 26861 26862 26823 +22826 22865 22866 22827 26823 26862 26863 26824 +22827 22866 22867 22828 26824 26863 26864 26825 +22828 22867 22868 22829 26825 26864 26865 26826 +22829 22868 22869 22830 26826 26865 26866 26827 +22830 22869 22870 22831 26827 26866 26867 26828 +22831 22870 22871 22832 26828 26867 26868 26829 +22832 22871 22872 22833 26829 26868 26869 26830 +22833 22872 22873 22834 26830 26869 26870 26831 +22834 22873 22874 22835 26831 26870 26871 26832 +22835 22874 22875 22876 26832 26871 26872 26873 +22835 22876 22877 22836 26832 26873 26874 26833 +22836 22877 22878 22837 26833 26874 26875 26834 +22837 22878 22879 22838 26834 26875 26876 26835 +22838 22879 22880 22839 26835 26876 26877 26836 +22839 22880 22881 22840 26836 26877 26878 26837 +22840 22881 22882 22841 26837 26878 26879 26838 +22841 22882 22883 22842 26838 26879 26880 26839 +22842 22883 22884 22843 26839 26880 26881 26840 +22843 22884 22885 22844 26840 26881 26882 26841 +22844 22885 22886 22845 26841 26882 26883 26842 +22845 22886 22887 22846 26842 26883 26884 26843 +22846 22887 22888 22847 26843 26884 26885 26844 +22847 22888 22889 22848 26844 26885 26886 26845 +22848 22889 22890 22849 26845 26886 26887 26846 +22849 22890 22891 22850 26846 26887 26888 26847 +22850 22891 22892 22851 26847 26888 26889 26848 +22851 22892 22893 22852 26848 26889 26890 26849 +22852 22893 22894 22853 26849 26890 26891 26850 +22853 22894 22895 22854 26850 26891 26892 26851 +22855 22896 22897 22856 26852 26893 26894 26853 +22856 22897 22898 22857 26853 26894 26895 26854 +22857 22898 22899 22858 26854 26895 26896 26855 +22858 22899 22900 22859 26855 26896 26897 26856 +22859 22900 22901 22860 26856 26897 26898 26857 +22860 22901 22902 22861 26857 26898 26899 26858 +22861 22902 22903 22862 26858 26899 26900 26859 +22862 22903 22904 22863 26859 26900 26901 26860 +22863 22904 22905 22864 26860 26901 26902 26861 +22864 22905 22906 22865 26861 26902 26903 26862 +22865 22906 22907 22866 26862 26903 26904 26863 +22866 22907 22908 22867 26863 26904 26905 26864 +22867 22908 22909 22868 26864 26905 26906 26865 +22868 22909 22910 22869 26865 26906 26907 26866 +22869 22910 22911 22870 26866 26907 26908 26867 +22870 22911 22912 22871 26867 26908 26909 26868 +22871 22912 22913 22872 26868 26909 26910 26869 +22872 22913 22914 22873 26869 26910 26911 26870 +22873 22914 22915 22874 26870 26911 26912 26871 +22874 22915 22916 22875 26871 26912 26913 26872 +22875 22916 22917 22918 26872 26913 26914 26915 +22875 22918 22919 22876 26872 26915 26916 26873 +22876 22919 22920 22877 26873 26916 26917 26874 +22877 22920 22921 22878 26874 26917 26918 26875 +22878 22921 22922 22879 26875 26918 26919 26876 +22879 22922 22923 22880 26876 26919 26920 26877 +22880 22923 22924 22881 26877 26920 26921 26878 +22881 22924 22925 22882 26878 26921 26922 26879 +22882 22925 22926 22883 26879 26922 26923 26880 +22883 22926 22927 22884 26880 26923 26924 26881 +22884 22927 22928 22885 26881 26924 26925 26882 +22885 22928 22929 22886 26882 26925 26926 26883 +22886 22929 22930 22887 26883 26926 26927 26884 +22887 22930 22931 22888 26884 26927 26928 26885 +22888 22931 22932 22889 26885 26928 26929 26886 +22889 22932 22933 22890 26886 26929 26930 26887 +22890 22933 22934 22891 26887 26930 26931 26888 +22891 22934 22935 22892 26888 26931 26932 26889 +22892 22935 22936 22893 26889 26932 26933 26890 +22893 22936 22937 22894 26890 26933 26934 26891 +22894 22937 22938 22895 26891 26934 26935 26892 +22896 22939 22940 22897 26893 26936 26937 26894 +22897 22940 22941 22898 26894 26937 26938 26895 +22898 22941 22942 22899 26895 26938 26939 26896 +22899 22942 22943 22900 26896 26939 26940 26897 +22900 22943 22944 22901 26897 26940 26941 26898 +22901 22944 22945 22902 26898 26941 26942 26899 +22902 22945 22946 22903 26899 26942 26943 26900 +22903 22946 22947 22904 26900 26943 26944 26901 +22904 22947 22948 22905 26901 26944 26945 26902 +22905 22948 22949 22906 26902 26945 26946 26903 +22906 22949 22950 22907 26903 26946 26947 26904 +22907 22950 22951 22908 26904 26947 26948 26905 +22908 22951 22952 22909 26905 26948 26949 26906 +22909 22952 22953 22910 26906 26949 26950 26907 +22910 22953 22954 22911 26907 26950 26951 26908 +22911 22954 22955 22912 26908 26951 26952 26909 +22912 22955 22956 22913 26909 26952 26953 26910 +22913 22956 22957 22914 26910 26953 26954 26911 +22914 22957 22958 22915 26911 26954 26955 26912 +22915 22958 22959 22916 26912 26955 26956 26913 +22916 22959 22960 22917 26913 26956 26957 26914 +22917 22960 22961 22962 26914 26957 26958 26959 +22917 22962 22963 22918 26914 26959 26960 26915 +22918 22963 22964 22919 26915 26960 26961 26916 +22919 22964 22965 22920 26916 26961 26962 26917 +22920 22965 22966 22921 26917 26962 26963 26918 +22921 22966 22967 22922 26918 26963 26964 26919 +22922 22967 22968 22923 26919 26964 26965 26920 +22923 22968 22969 22924 26920 26965 26966 26921 +22924 22969 22970 22925 26921 26966 26967 26922 +22925 22970 22971 22926 26922 26967 26968 26923 +22926 22971 22972 22927 26923 26968 26969 26924 +22927 22972 22973 22928 26924 26969 26970 26925 +22928 22973 22974 22929 26925 26970 26971 26926 +22929 22974 22975 22930 26926 26971 26972 26927 +22930 22975 22976 22931 26927 26972 26973 26928 +22931 22976 22977 22932 26928 26973 26974 26929 +22932 22977 22978 22933 26929 26974 26975 26930 +22933 22978 22979 22934 26930 26975 26976 26931 +22934 22979 22980 22935 26931 26976 26977 26932 +22935 22980 22981 22936 26932 26977 26978 26933 +22936 22981 22982 22937 26933 26978 26979 26934 +22937 22982 22983 22938 26934 26979 26980 26935 +22939 22984 22985 22940 26936 26981 26982 26937 +22940 22985 22986 22941 26937 26982 26983 26938 +22941 22986 22987 22942 26938 26983 26984 26939 +22942 22987 22988 22943 26939 26984 26985 26940 +22943 22988 22989 22944 26940 26985 26986 26941 +22944 22989 22990 22945 26941 26986 26987 26942 +22945 22990 22991 22946 26942 26987 26988 26943 +22946 22991 22992 22947 26943 26988 26989 26944 +22947 22992 22993 22948 26944 26989 26990 26945 +22948 22993 22994 22949 26945 26990 26991 26946 +22949 22994 22995 22950 26946 26991 26992 26947 +22950 22995 22996 22951 26947 26992 26993 26948 +22951 22996 22997 22952 26948 26993 26994 26949 +22952 22997 22998 22953 26949 26994 26995 26950 +22953 22998 22999 22954 26950 26995 26996 26951 +22954 22999 23000 22955 26951 26996 26997 26952 +22955 23000 23001 22956 26952 26997 26998 26953 +22956 23001 23002 22957 26953 26998 26999 26954 +22957 23002 23003 22958 26954 26999 27000 26955 +22958 23003 23004 22959 26955 27000 27001 26956 +22959 23004 23005 22960 26956 27001 27002 26957 +22960 23005 23006 22961 26957 27002 27003 26958 +22961 23006 23007 23008 26958 27003 27004 27005 +22961 23008 23009 22962 26958 27005 27006 26959 +22962 23009 23010 22963 26959 27006 27007 26960 +22963 23010 23011 22964 26960 27007 27008 26961 +22964 23011 23012 22965 26961 27008 27009 26962 +22965 23012 23013 22966 26962 27009 27010 26963 +22966 23013 23014 22967 26963 27010 27011 26964 +22967 23014 23015 22968 26964 27011 27012 26965 +22968 23015 23016 22969 26965 27012 27013 26966 +22969 23016 23017 22970 26966 27013 27014 26967 +22970 23017 23018 22971 26967 27014 27015 26968 +22971 23018 23019 22972 26968 27015 27016 26969 +22972 23019 23020 22973 26969 27016 27017 26970 +22973 23020 23021 22974 26970 27017 27018 26971 +22974 23021 23022 22975 26971 27018 27019 26972 +22975 23022 23023 22976 26972 27019 27020 26973 +22976 23023 23024 22977 26973 27020 27021 26974 +22977 23024 23025 22978 26974 27021 27022 26975 +22978 23025 23026 22979 26975 27022 27023 26976 +22979 23026 23027 22980 26976 27023 27024 26977 +22980 23027 23028 22981 26977 27024 27025 26978 +22981 23028 23029 22982 26978 27025 27026 26979 +22982 23029 23030 22983 26979 27026 27027 26980 +22984 23031 23032 22985 26981 27028 27029 26982 +22985 23032 23033 22986 26982 27029 27030 26983 +22986 23033 23034 22987 26983 27030 27031 26984 +22987 23034 23035 22988 26984 27031 27032 26985 +22988 23035 23036 22989 26985 27032 27033 26986 +22989 23036 23037 22990 26986 27033 27034 26987 +22990 23037 23038 22991 26987 27034 27035 26988 +22991 23038 23039 22992 26988 27035 27036 26989 +22992 23039 23040 22993 26989 27036 27037 26990 +22993 23040 23041 22994 26990 27037 27038 26991 +22994 23041 23042 22995 26991 27038 27039 26992 +22995 23042 23043 22996 26992 27039 27040 26993 +22996 23043 23044 22997 26993 27040 27041 26994 +22997 23044 23045 22998 26994 27041 27042 26995 +22998 23045 23046 22999 26995 27042 27043 26996 +22999 23046 23047 23000 26996 27043 27044 26997 +23000 23047 23048 23001 26997 27044 27045 26998 +23001 23048 23049 23002 26998 27045 27046 26999 +23002 23049 23050 23003 26999 27046 27047 27000 +23003 23050 23051 23004 27000 27047 27048 27001 +23004 23051 23052 23005 27001 27048 27049 27002 +23005 23052 23053 23006 27002 27049 27050 27003 +23006 23053 23054 23007 27003 27050 27051 27004 +23007 23054 23055 23056 27004 27051 27052 27053 +23007 23056 23057 23008 27004 27053 27054 27005 +23008 23057 23058 23009 27005 27054 27055 27006 +23009 23058 23059 23010 27006 27055 27056 27007 +23010 23059 23060 23011 27007 27056 27057 27008 +23011 23060 23061 23012 27008 27057 27058 27009 +23012 23061 23062 23013 27009 27058 27059 27010 +23013 23062 23063 23014 27010 27059 27060 27011 +23014 23063 23064 23015 27011 27060 27061 27012 +23015 23064 23065 23016 27012 27061 27062 27013 +23016 23065 23066 23017 27013 27062 27063 27014 +23017 23066 23067 23018 27014 27063 27064 27015 +23018 23067 23068 23019 27015 27064 27065 27016 +23019 23068 23069 23020 27016 27065 27066 27017 +23020 23069 23070 23021 27017 27066 27067 27018 +23021 23070 23071 23022 27018 27067 27068 27019 +23022 23071 23072 23023 27019 27068 27069 27020 +23023 23072 23073 23024 27020 27069 27070 27021 +23024 23073 23074 23025 27021 27070 27071 27022 +23025 23074 23075 23026 27022 27071 27072 27023 +23026 23075 23076 23027 27023 27072 27073 27024 +23027 23076 23077 23028 27024 27073 27074 27025 +23028 23077 23078 23029 27025 27074 27075 27026 +23029 23078 23079 23030 27026 27075 27076 27027 +23031 23080 23081 23032 27028 27077 27078 27029 +23032 23081 23082 23033 27029 27078 27079 27030 +23033 23082 23083 23034 27030 27079 27080 27031 +23034 23083 23084 23035 27031 27080 27081 27032 +23035 23084 23085 23036 27032 27081 27082 27033 +23036 23085 23086 23037 27033 27082 27083 27034 +23037 23086 23087 23038 27034 27083 27084 27035 +23038 23087 23088 23039 27035 27084 27085 27036 +23039 23088 23089 23040 27036 27085 27086 27037 +23040 23089 23090 23041 27037 27086 27087 27038 +23041 23090 23091 23042 27038 27087 27088 27039 +23042 23091 23092 23043 27039 27088 27089 27040 +23043 23092 23093 23044 27040 27089 27090 27041 +23044 23093 23094 23045 27041 27090 27091 27042 +23045 23094 23095 23046 27042 27091 27092 27043 +23046 23095 23096 23047 27043 27092 27093 27044 +23047 23096 23097 23048 27044 27093 27094 27045 +23048 23097 23098 23049 27045 27094 27095 27046 +23049 23098 23099 23050 27046 27095 27096 27047 +23050 23099 23100 23051 27047 27096 27097 27048 +23051 23100 23101 23052 27048 27097 27098 27049 +23052 23101 23102 23053 27049 27098 27099 27050 +23053 23102 23103 23054 27050 27099 27100 27051 +23054 23103 23104 23055 27051 27100 27101 27052 +23055 23104 23105 23106 27052 27101 27102 27103 +23055 23106 23107 23056 27052 27103 27104 27053 +23056 23107 23108 23057 27053 27104 27105 27054 +23057 23108 23109 23058 27054 27105 27106 27055 +23058 23109 23110 23059 27055 27106 27107 27056 +23059 23110 23111 23060 27056 27107 27108 27057 +23060 23111 23112 23061 27057 27108 27109 27058 +23061 23112 23113 23062 27058 27109 27110 27059 +23062 23113 23114 23063 27059 27110 27111 27060 +23063 23114 23115 23064 27060 27111 27112 27061 +23064 23115 23116 23065 27061 27112 27113 27062 +23065 23116 23117 23066 27062 27113 27114 27063 +23066 23117 23118 23067 27063 27114 27115 27064 +23067 23118 23119 23068 27064 27115 27116 27065 +23068 23119 23120 23069 27065 27116 27117 27066 +23069 23120 23121 23070 27066 27117 27118 27067 +23070 23121 23122 23071 27067 27118 27119 27068 +23071 23122 23123 23072 27068 27119 27120 27069 +23072 23123 23124 23073 27069 27120 27121 27070 +23073 23124 23125 23074 27070 27121 27122 27071 +23074 23125 23126 23075 27071 27122 27123 27072 +23075 23126 23127 23076 27072 27123 27124 27073 +23076 23127 23128 23077 27073 27124 27125 27074 +23077 23128 23129 23078 27074 27125 27126 27075 +23078 23129 23130 23079 27075 27126 27127 27076 +23080 23131 23132 23081 27077 27128 27129 27078 +23081 23132 23133 23082 27078 27129 27130 27079 +23082 23133 23134 23083 27079 27130 27131 27080 +23083 23134 23135 23084 27080 27131 27132 27081 +23084 23135 23136 23085 27081 27132 27133 27082 +23085 23136 23137 23086 27082 27133 27134 27083 +23086 23137 23138 23087 27083 27134 27135 27084 +23087 23138 23139 23088 27084 27135 27136 27085 +23088 23139 23140 23089 27085 27136 27137 27086 +23089 23140 23141 23090 27086 27137 27138 27087 +23090 23141 23142 23091 27087 27138 27139 27088 +23091 23142 23143 23092 27088 27139 27140 27089 +23092 23143 23144 23093 27089 27140 27141 27090 +23093 23144 23145 23094 27090 27141 27142 27091 +23094 23145 23146 23095 27091 27142 27143 27092 +23095 23146 23147 23096 27092 27143 27144 27093 +23096 23147 23148 23097 27093 27144 27145 27094 +23097 23148 23149 23098 27094 27145 27146 27095 +23098 23149 23150 23099 27095 27146 27147 27096 +23099 23150 23151 23100 27096 27147 27148 27097 +23100 23151 23152 23101 27097 27148 27149 27098 +23101 23152 23153 23102 27098 27149 27150 27099 +23102 23153 23154 23103 27099 27150 27151 27100 +23103 23154 23155 23104 27100 27151 27152 27101 +23104 23155 23156 23105 27101 27152 27153 27102 +23105 23156 23157 23158 27102 27153 27154 27155 +23105 23158 23159 23106 27102 27155 27156 27103 +23106 23159 23160 23107 27103 27156 27157 27104 +23107 23160 23161 23108 27104 27157 27158 27105 +23108 23161 23162 23109 27105 27158 27159 27106 +23109 23162 23163 23110 27106 27159 27160 27107 +23110 23163 23164 23111 27107 27160 27161 27108 +23111 23164 23165 23112 27108 27161 27162 27109 +23112 23165 23166 23113 27109 27162 27163 27110 +23113 23166 23167 23114 27110 27163 27164 27111 +23114 23167 23168 23115 27111 27164 27165 27112 +23115 23168 23169 23116 27112 27165 27166 27113 +23116 23169 23170 23117 27113 27166 27167 27114 +23117 23170 23171 23118 27114 27167 27168 27115 +23118 23171 23172 23119 27115 27168 27169 27116 +23119 23172 23173 23120 27116 27169 27170 27117 +23120 23173 23174 23121 27117 27170 27171 27118 +23121 23174 23175 23122 27118 27171 27172 27119 +23122 23175 23176 23123 27119 27172 27173 27120 +23123 23176 23177 23124 27120 27173 27174 27121 +23124 23177 23178 23125 27121 27174 27175 27122 +23125 23178 23179 23126 27122 27175 27176 27123 +23126 23179 23180 23127 27123 27176 27177 27124 +23127 23180 23181 23128 27124 27177 27178 27125 +23128 23181 23182 23129 27125 27178 27179 27126 +23129 23182 23183 23130 27126 27179 27180 27127 +23131 23184 23185 23132 27128 27181 27182 27129 +23132 23185 23186 23133 27129 27182 27183 27130 +23133 23186 23187 23134 27130 27183 27184 27131 +23134 23187 23188 23135 27131 27184 27185 27132 +23135 23188 23189 23136 27132 27185 27186 27133 +23136 23189 23190 23137 27133 27186 27187 27134 +23137 23190 23191 23138 27134 27187 27188 27135 +23138 23191 23192 23139 27135 27188 27189 27136 +23139 23192 23193 23140 27136 27189 27190 27137 +23140 23193 23194 23141 27137 27190 27191 27138 +23141 23194 23195 23142 27138 27191 27192 27139 +23142 23195 23196 23143 27139 27192 27193 27140 +23143 23196 23197 23144 27140 27193 27194 27141 +23144 23197 23198 23145 27141 27194 27195 27142 +23145 23198 23199 23146 27142 27195 27196 27143 +23146 23199 23200 23147 27143 27196 27197 27144 +23147 23200 23201 23148 27144 27197 27198 27145 +23148 23201 23202 23149 27145 27198 27199 27146 +23149 23202 23203 23150 27146 27199 27200 27147 +23150 23203 23204 23151 27147 27200 27201 27148 +23151 23204 23205 23152 27148 27201 27202 27149 +23152 23205 23206 23153 27149 27202 27203 27150 +23153 23206 23207 23154 27150 27203 27204 27151 +23154 23207 23208 23155 27151 27204 27205 27152 +23155 23208 23209 23156 27152 27205 27206 27153 +23156 23209 23210 23157 27153 27206 27207 27154 +23157 23210 23211 23212 27154 27207 27208 27209 +23157 23212 23213 23158 27154 27209 27210 27155 +23158 23213 23214 23159 27155 27210 27211 27156 +23159 23214 23215 23160 27156 27211 27212 27157 +23160 23215 23216 23161 27157 27212 27213 27158 +23161 23216 23217 23162 27158 27213 27214 27159 +23162 23217 23218 23163 27159 27214 27215 27160 +23163 23218 23219 23164 27160 27215 27216 27161 +23164 23219 23220 23165 27161 27216 27217 27162 +23165 23220 23221 23166 27162 27217 27218 27163 +23166 23221 23222 23167 27163 27218 27219 27164 +23167 23222 23223 23168 27164 27219 27220 27165 +23168 23223 23224 23169 27165 27220 27221 27166 +23169 23224 23225 23170 27166 27221 27222 27167 +23170 23225 23226 23171 27167 27222 27223 27168 +23171 23226 23227 23172 27168 27223 27224 27169 +23172 23227 23228 23173 27169 27224 27225 27170 +23173 23228 23229 23174 27170 27225 27226 27171 +23174 23229 23230 23175 27171 27226 27227 27172 +23175 23230 23231 23176 27172 27227 27228 27173 +23176 23231 23232 23177 27173 27228 27229 27174 +23177 23232 23233 23178 27174 27229 27230 27175 +23178 23233 23234 23179 27175 27230 27231 27176 +23179 23234 23235 23180 27176 27231 27232 27177 +23180 23235 23236 23181 27177 27232 27233 27178 +23181 23236 23237 23182 27178 27233 27234 27179 +23182 23237 23238 23183 27179 27234 27235 27180 +23184 23239 23240 23185 27181 27236 27237 27182 +23185 23240 23241 23186 27182 27237 27238 27183 +23186 23241 23242 23187 27183 27238 27239 27184 +23187 23242 23243 23188 27184 27239 27240 27185 +23188 23243 23244 23189 27185 27240 27241 27186 +23189 23244 23245 23190 27186 27241 27242 27187 +23190 23245 23246 23191 27187 27242 27243 27188 +23191 23246 23247 23192 27188 27243 27244 27189 +23192 23247 23248 23193 27189 27244 27245 27190 +23193 23248 23249 23194 27190 27245 27246 27191 +23194 23249 23250 23195 27191 27246 27247 27192 +23195 23250 23251 23196 27192 27247 27248 27193 +23196 23251 23252 23197 27193 27248 27249 27194 +23197 23252 23253 23198 27194 27249 27250 27195 +23198 23253 23254 23199 27195 27250 27251 27196 +23199 23254 23255 23200 27196 27251 27252 27197 +23200 23255 23256 23201 27197 27252 27253 27198 +23201 23256 23257 23202 27198 27253 27254 27199 +23202 23257 23258 23203 27199 27254 27255 27200 +23203 23258 23259 23204 27200 27255 27256 27201 +23204 23259 23260 23205 27201 27256 27257 27202 +23205 23260 23261 23206 27202 27257 27258 27203 +23206 23261 23262 23207 27203 27258 27259 27204 +23207 23262 23263 23208 27204 27259 27260 27205 +23208 23263 23264 23209 27205 27260 27261 27206 +23209 23264 23265 23210 27206 27261 27262 27207 +23210 23265 23266 23211 27207 27262 27263 27208 +23211 23266 23267 23268 27208 27263 27264 27265 +23211 23268 23269 23212 27208 27265 27266 27209 +23212 23269 23270 23213 27209 27266 27267 27210 +23213 23270 23271 23214 27210 27267 27268 27211 +23214 23271 23272 23215 27211 27268 27269 27212 +23215 23272 23273 23216 27212 27269 27270 27213 +23216 23273 23274 23217 27213 27270 27271 27214 +23217 23274 23275 23218 27214 27271 27272 27215 +23218 23275 23276 23219 27215 27272 27273 27216 +23219 23276 23277 23220 27216 27273 27274 27217 +23220 23277 23278 23221 27217 27274 27275 27218 +23221 23278 23279 23222 27218 27275 27276 27219 +23222 23279 23280 23223 27219 27276 27277 27220 +23223 23280 23281 23224 27220 27277 27278 27221 +23224 23281 23282 23225 27221 27278 27279 27222 +23225 23282 23283 23226 27222 27279 27280 27223 +23226 23283 23284 23227 27223 27280 27281 27224 +23227 23284 23285 23228 27224 27281 27282 27225 +23228 23285 23286 23229 27225 27282 27283 27226 +23229 23286 23287 23230 27226 27283 27284 27227 +23230 23287 23288 23231 27227 27284 27285 27228 +23231 23288 23289 23232 27228 27285 27286 27229 +23232 23289 23290 23233 27229 27286 27287 27230 +23233 23290 23291 23234 27230 27287 27288 27231 +23234 23291 23292 23235 27231 27288 27289 27232 +23235 23292 23293 23236 27232 27289 27290 27233 +23236 23293 23294 23237 27233 27290 27291 27234 +23237 23294 23295 23238 27234 27291 27292 27235 +23239 23296 23297 23240 27236 27293 27294 27237 +23240 23297 23298 23241 27237 27294 27295 27238 +23241 23298 23299 23242 27238 27295 27296 27239 +23242 23299 23300 23243 27239 27296 27297 27240 +23243 23300 23301 23244 27240 27297 27298 27241 +23244 23301 23302 23245 27241 27298 27299 27242 +23245 23302 23303 23246 27242 27299 27300 27243 +23246 23303 23304 23247 27243 27300 27301 27244 +23247 23304 23305 23248 27244 27301 27302 27245 +23248 23305 23306 23249 27245 27302 27303 27246 +23249 23306 23307 23250 27246 27303 27304 27247 +23250 23307 23308 23251 27247 27304 27305 27248 +23251 23308 23309 23252 27248 27305 27306 27249 +23252 23309 23310 23253 27249 27306 27307 27250 +23253 23310 23311 23254 27250 27307 27308 27251 +23254 23311 23312 23255 27251 27308 27309 27252 +23255 23312 23313 23256 27252 27309 27310 27253 +23256 23313 23314 23257 27253 27310 27311 27254 +23257 23314 23315 23258 27254 27311 27312 27255 +23258 23315 23316 23259 27255 27312 27313 27256 +23259 23316 23317 23260 27256 27313 27314 27257 +23260 23317 23318 23261 27257 27314 27315 27258 +23261 23318 23319 23262 27258 27315 27316 27259 +23262 23319 23320 23263 27259 27316 27317 27260 +23263 23320 23321 23264 27260 27317 27318 27261 +23264 23321 23322 23265 27261 27318 27319 27262 +23265 23322 23323 23266 27262 27319 27320 27263 +23266 23323 23324 23267 27263 27320 27321 27264 +23267 23324 23325 23326 27264 27321 27322 27323 +23267 23326 23327 23268 27264 27323 27324 27265 +23268 23327 23328 23269 27265 27324 27325 27266 +23269 23328 23329 23270 27266 27325 27326 27267 +23270 23329 23330 23271 27267 27326 27327 27268 +23271 23330 23331 23272 27268 27327 27328 27269 +23272 23331 23332 23273 27269 27328 27329 27270 +23273 23332 23333 23274 27270 27329 27330 27271 +23274 23333 23334 23275 27271 27330 27331 27272 +23275 23334 23335 23276 27272 27331 27332 27273 +23276 23335 23336 23277 27273 27332 27333 27274 +23277 23336 23337 23278 27274 27333 27334 27275 +23278 23337 23338 23279 27275 27334 27335 27276 +23279 23338 23339 23280 27276 27335 27336 27277 +23280 23339 23340 23281 27277 27336 27337 27278 +23281 23340 23341 23282 27278 27337 27338 27279 +23282 23341 23342 23283 27279 27338 27339 27280 +23283 23342 23343 23284 27280 27339 27340 27281 +23284 23343 23344 23285 27281 27340 27341 27282 +23285 23344 23345 23286 27282 27341 27342 27283 +23286 23345 23346 23287 27283 27342 27343 27284 +23287 23346 23347 23288 27284 27343 27344 27285 +23288 23347 23348 23289 27285 27344 27345 27286 +23289 23348 23349 23290 27286 27345 27346 27287 +23290 23349 23350 23291 27287 27346 27347 27288 +23291 23350 23351 23292 27288 27347 27348 27289 +23292 23351 23352 23293 27289 27348 27349 27290 +23293 23352 23353 23294 27290 27349 27350 27291 +23294 23353 23354 23295 27291 27350 27351 27292 +23296 23355 23356 23297 27293 27352 27353 27294 +23297 23356 23357 23298 27294 27353 27354 27295 +23298 23357 23358 23299 27295 27354 27355 27296 +23299 23358 23359 23300 27296 27355 27356 27297 +23300 23359 23360 23301 27297 27356 27357 27298 +23301 23360 23361 23302 27298 27357 27358 27299 +23302 23361 23362 23303 27299 27358 27359 27300 +23303 23362 23363 23304 27300 27359 27360 27301 +23304 23363 23364 23305 27301 27360 27361 27302 +23305 23364 23365 23306 27302 27361 27362 27303 +23306 23365 23366 23307 27303 27362 27363 27304 +23307 23366 23367 23308 27304 27363 27364 27305 +23308 23367 23368 23309 27305 27364 27365 27306 +23309 23368 23369 23310 27306 27365 27366 27307 +23310 23369 23370 23311 27307 27366 27367 27308 +23311 23370 23371 23312 27308 27367 27368 27309 +23312 23371 23372 23313 27309 27368 27369 27310 +23313 23372 23373 23314 27310 27369 27370 27311 +23314 23373 23374 23315 27311 27370 27371 27312 +23315 23374 23375 23316 27312 27371 27372 27313 +23316 23375 23376 23317 27313 27372 27373 27314 +23317 23376 23377 23318 27314 27373 27374 27315 +23318 23377 23378 23319 27315 27374 27375 27316 +23319 23378 23379 23320 27316 27375 27376 27317 +23320 23379 23380 23321 27317 27376 27377 27318 +23321 23380 23381 23322 27318 27377 27378 27319 +23322 23381 23382 23323 27319 27378 27379 27320 +23323 23382 23383 23324 27320 27379 27380 27321 +23324 23383 23384 23325 27321 27380 27381 27322 +23325 23384 23385 23386 27322 27381 27382 27383 +23325 23386 23387 23326 27322 27383 27384 27323 +23326 23387 23388 23327 27323 27384 27385 27324 +23327 23388 23389 23328 27324 27385 27386 27325 +23328 23389 23390 23329 27325 27386 27387 27326 +23329 23390 23391 23330 27326 27387 27388 27327 +23330 23391 23392 23331 27327 27388 27389 27328 +23331 23392 23393 23332 27328 27389 27390 27329 +23332 23393 23394 23333 27329 27390 27391 27330 +23333 23394 23395 23334 27330 27391 27392 27331 +23334 23395 23396 23335 27331 27392 27393 27332 +23335 23396 23397 23336 27332 27393 27394 27333 +23336 23397 23398 23337 27333 27394 27395 27334 +23337 23398 23399 23338 27334 27395 27396 27335 +23338 23399 23400 23339 27335 27396 27397 27336 +23339 23400 23401 23340 27336 27397 27398 27337 +23340 23401 23402 23341 27337 27398 27399 27338 +23341 23402 23403 23342 27338 27399 27400 27339 +23342 23403 23404 23343 27339 27400 27401 27340 +23343 23404 23405 23344 27340 27401 27402 27341 +23344 23405 23406 23345 27341 27402 27403 27342 +23345 23406 23407 23346 27342 27403 27404 27343 +23346 23407 23408 23347 27343 27404 27405 27344 +23347 23408 23409 23348 27344 27405 27406 27345 +23348 23409 23410 23349 27345 27406 27407 27346 +23349 23410 23411 23350 27346 27407 27408 27347 +23350 23411 23412 23351 27347 27408 27409 27348 +23351 23412 23413 23352 27348 27409 27410 27349 +23352 23413 23414 23353 27349 27410 27411 27350 +23353 23414 23415 23354 27350 27411 27412 27351 +23355 23416 23417 23356 27352 27413 27414 27353 +23356 23417 23418 23357 27353 27414 27415 27354 +23357 23418 23419 23358 27354 27415 27416 27355 +23358 23419 23420 23359 27355 27416 27417 27356 +23359 23420 23421 23360 27356 27417 27418 27357 +23360 23421 23422 23361 27357 27418 27419 27358 +23361 23422 23423 23362 27358 27419 27420 27359 +23362 23423 23424 23363 27359 27420 27421 27360 +23363 23424 23425 23364 27360 27421 27422 27361 +23364 23425 23426 23365 27361 27422 27423 27362 +23365 23426 23427 23366 27362 27423 27424 27363 +23366 23427 23428 23367 27363 27424 27425 27364 +23367 23428 23429 23368 27364 27425 27426 27365 +23368 23429 23430 23369 27365 27426 27427 27366 +23369 23430 23431 23370 27366 27427 27428 27367 +23370 23431 23432 23371 27367 27428 27429 27368 +23371 23432 23433 23372 27368 27429 27430 27369 +23372 23433 23434 23373 27369 27430 27431 27370 +23373 23434 23435 23374 27370 27431 27432 27371 +23374 23435 23436 23375 27371 27432 27433 27372 +23375 23436 23437 23376 27372 27433 27434 27373 +23376 23437 23438 23377 27373 27434 27435 27374 +23377 23438 23439 23378 27374 27435 27436 27375 +23378 23439 23440 23379 27375 27436 27437 27376 +23379 23440 23441 23380 27376 27437 27438 27377 +23380 23441 23442 23381 27377 27438 27439 27378 +23381 23442 23443 23382 27378 27439 27440 27379 +23382 23443 23444 23383 27379 27440 27441 27380 +23383 23444 23445 23384 27380 27441 27442 27381 +23384 23445 23446 23385 27381 27442 27443 27382 +23385 23446 23447 23448 27382 27443 27444 27445 +23385 23448 23449 23386 27382 27445 27446 27383 +23386 23449 23450 23387 27383 27446 27447 27384 +23387 23450 23451 23388 27384 27447 27448 27385 +23388 23451 23452 23389 27385 27448 27449 27386 +23389 23452 23453 23390 27386 27449 27450 27387 +23390 23453 23454 23391 27387 27450 27451 27388 +23391 23454 23455 23392 27388 27451 27452 27389 +23392 23455 23456 23393 27389 27452 27453 27390 +23393 23456 23457 23394 27390 27453 27454 27391 +23394 23457 23458 23395 27391 27454 27455 27392 +23395 23458 23459 23396 27392 27455 27456 27393 +23396 23459 23460 23397 27393 27456 27457 27394 +23397 23460 23461 23398 27394 27457 27458 27395 +23398 23461 23462 23399 27395 27458 27459 27396 +23399 23462 23463 23400 27396 27459 27460 27397 +23400 23463 23464 23401 27397 27460 27461 27398 +23401 23464 23465 23402 27398 27461 27462 27399 +23402 23465 23466 23403 27399 27462 27463 27400 +23403 23466 23467 23404 27400 27463 27464 27401 +23404 23467 23468 23405 27401 27464 27465 27402 +23405 23468 23469 23406 27402 27465 27466 27403 +23406 23469 23470 23407 27403 27466 27467 27404 +23407 23470 23471 23408 27404 27467 27468 27405 +23408 23471 23472 23409 27405 27468 27469 27406 +23409 23472 23473 23410 27406 27469 27470 27407 +23410 23473 23474 23411 27407 27470 27471 27408 +23411 23474 23475 23412 27408 27471 27472 27409 +23412 23475 23476 23413 27409 27472 27473 27410 +23413 23476 23477 23414 27410 27473 27474 27411 +23414 23477 23478 23415 27411 27474 27475 27412 +23416 23479 23480 23417 27413 27476 27477 27414 +23417 23480 23481 23418 27414 27477 27478 27415 +23418 23481 23482 23419 27415 27478 27479 27416 +23419 23482 23483 23420 27416 27479 27480 27417 +23420 23483 23484 23421 27417 27480 27481 27418 +23421 23484 23485 23422 27418 27481 27482 27419 +23422 23485 23486 23423 27419 27482 27483 27420 +23423 23486 23487 23424 27420 27483 27484 27421 +23424 23487 23488 23425 27421 27484 27485 27422 +23425 23488 23489 23426 27422 27485 27486 27423 +23426 23489 23490 23427 27423 27486 27487 27424 +23427 23490 23491 23428 27424 27487 27488 27425 +23428 23491 23492 23429 27425 27488 27489 27426 +23429 23492 23493 23430 27426 27489 27490 27427 +23430 23493 23494 23431 27427 27490 27491 27428 +23431 23494 23495 23432 27428 27491 27492 27429 +23432 23495 23496 23433 27429 27492 27493 27430 +23433 23496 23497 23434 27430 27493 27494 27431 +23434 23497 23498 23435 27431 27494 27495 27432 +23435 23498 23499 23436 27432 27495 27496 27433 +23436 23499 23500 23437 27433 27496 27497 27434 +23437 23500 23501 23438 27434 27497 27498 27435 +23438 23501 23502 23439 27435 27498 27499 27436 +23439 23502 23503 23440 27436 27499 27500 27437 +23440 23503 23504 23441 27437 27500 27501 27438 +23441 23504 23505 23442 27438 27501 27502 27439 +23442 23505 23506 23443 27439 27502 27503 27440 +23443 23506 23507 23444 27440 27503 27504 27441 +23444 23507 23508 23445 27441 27504 27505 27442 +23445 23508 23509 23446 27442 27505 27506 27443 +23446 23509 23510 23447 27443 27506 27507 27444 +23447 23510 23511 23512 27444 27507 27508 27509 +23447 23512 23513 23448 27444 27509 27510 27445 +23448 23513 23514 23449 27445 27510 27511 27446 +23449 23514 23515 23450 27446 27511 27512 27447 +23450 23515 23516 23451 27447 27512 27513 27448 +23451 23516 23517 23452 27448 27513 27514 27449 +23452 23517 23518 23453 27449 27514 27515 27450 +23453 23518 23519 23454 27450 27515 27516 27451 +23454 23519 23520 23455 27451 27516 27517 27452 +23455 23520 23521 23456 27452 27517 27518 27453 +23456 23521 23522 23457 27453 27518 27519 27454 +23457 23522 23523 23458 27454 27519 27520 27455 +23458 23523 23524 23459 27455 27520 27521 27456 +23459 23524 23525 23460 27456 27521 27522 27457 +23460 23525 23526 23461 27457 27522 27523 27458 +23461 23526 23527 23462 27458 27523 27524 27459 +23462 23527 23528 23463 27459 27524 27525 27460 +23463 23528 23529 23464 27460 27525 27526 27461 +23464 23529 23530 23465 27461 27526 27527 27462 +23465 23530 23531 23466 27462 27527 27528 27463 +23466 23531 23532 23467 27463 27528 27529 27464 +23467 23532 23533 23468 27464 27529 27530 27465 +23468 23533 23534 23469 27465 27530 27531 27466 +23469 23534 23535 23470 27466 27531 27532 27467 +23470 23535 23536 23471 27467 27532 27533 27468 +23471 23536 23537 23472 27468 27533 27534 27469 +23472 23537 23538 23473 27469 27534 27535 27470 +23473 23538 23539 23474 27470 27535 27536 27471 +23474 23539 23540 23475 27471 27536 27537 27472 +23475 23540 23541 23476 27472 27537 27538 27473 +23476 23541 23542 23477 27473 27538 27539 27474 +23477 23542 23543 23478 27474 27539 27540 27475 +23479 23544 23545 23480 27476 27541 27542 27477 +23480 23545 23546 23481 27477 27542 27543 27478 +23481 23546 23547 23482 27478 27543 27544 27479 +23482 23547 23548 23483 27479 27544 27545 27480 +23483 23548 23549 23484 27480 27545 27546 27481 +23484 23549 23550 23485 27481 27546 27547 27482 +23485 23550 23551 23486 27482 27547 27548 27483 +23486 23551 23552 23487 27483 27548 27549 27484 +23487 23552 23553 23488 27484 27549 27550 27485 +23488 23553 23554 23489 27485 27550 27551 27486 +23489 23554 23555 23490 27486 27551 27552 27487 +23490 23555 23556 23491 27487 27552 27553 27488 +23491 23556 23557 23492 27488 27553 27554 27489 +23492 23557 23558 23493 27489 27554 27555 27490 +23493 23558 23559 23494 27490 27555 27556 27491 +23494 23559 23560 23495 27491 27556 27557 27492 +23495 23560 23561 23496 27492 27557 27558 27493 +23496 23561 23562 23497 27493 27558 27559 27494 +23497 23562 23563 23498 27494 27559 27560 27495 +23498 23563 23564 23499 27495 27560 27561 27496 +23499 23564 23565 23500 27496 27561 27562 27497 +23500 23565 23566 23501 27497 27562 27563 27498 +23501 23566 23567 23502 27498 27563 27564 27499 +23502 23567 23568 23503 27499 27564 27565 27500 +23503 23568 23569 23504 27500 27565 27566 27501 +23504 23569 23570 23505 27501 27566 27567 27502 +23505 23570 23571 23506 27502 27567 27568 27503 +23506 23571 23572 23507 27503 27568 27569 27504 +23507 23572 23573 23508 27504 27569 27570 27505 +23508 23573 23574 23509 27505 27570 27571 27506 +23509 23574 23575 23510 27506 27571 27572 27507 +23510 23575 23576 23511 27507 27572 27573 27508 +23511 23576 23577 23578 27508 27573 27574 27575 +23511 23578 23579 23512 27508 27575 27576 27509 +23512 23579 23580 23513 27509 27576 27577 27510 +23513 23580 23581 23514 27510 27577 27578 27511 +23514 23581 23582 23515 27511 27578 27579 27512 +23515 23582 23583 23516 27512 27579 27580 27513 +23516 23583 23584 23517 27513 27580 27581 27514 +23517 23584 23585 23518 27514 27581 27582 27515 +23518 23585 23586 23519 27515 27582 27583 27516 +23519 23586 23587 23520 27516 27583 27584 27517 +23520 23587 23588 23521 27517 27584 27585 27518 +23521 23588 23589 23522 27518 27585 27586 27519 +23522 23589 23590 23523 27519 27586 27587 27520 +23523 23590 23591 23524 27520 27587 27588 27521 +23524 23591 23592 23525 27521 27588 27589 27522 +23525 23592 23593 23526 27522 27589 27590 27523 +23526 23593 23594 23527 27523 27590 27591 27524 +23527 23594 23595 23528 27524 27591 27592 27525 +23528 23595 23596 23529 27525 27592 27593 27526 +23529 23596 23597 23530 27526 27593 27594 27527 +23530 23597 23598 23531 27527 27594 27595 27528 +23531 23598 23599 23532 27528 27595 27596 27529 +23532 23599 23600 23533 27529 27596 27597 27530 +23533 23600 23601 23534 27530 27597 27598 27531 +23534 23601 23602 23535 27531 27598 27599 27532 +23535 23602 23603 23536 27532 27599 27600 27533 +23536 23603 23604 23537 27533 27600 27601 27534 +23537 23604 23605 23538 27534 27601 27602 27535 +23538 23605 23606 23539 27535 27602 27603 27536 +23539 23606 23607 23540 27536 27603 27604 27537 +23540 23607 23608 23541 27537 27604 27605 27538 +23541 23608 23609 23542 27538 27605 27606 27539 +23542 23609 23610 23543 27539 27606 27607 27540 +23544 23611 23612 23545 27541 27608 27609 27542 +23545 23612 23613 23546 27542 27609 27610 27543 +23546 23613 23614 23547 27543 27610 27611 27544 +23547 23614 23615 23548 27544 27611 27612 27545 +23548 23615 23616 23549 27545 27612 27613 27546 +23549 23616 23617 23550 27546 27613 27614 27547 +23550 23617 23618 23551 27547 27614 27615 27548 +23551 23618 23619 23552 27548 27615 27616 27549 +23552 23619 23620 23553 27549 27616 27617 27550 +23553 23620 23621 23554 27550 27617 27618 27551 +23554 23621 23622 23555 27551 27618 27619 27552 +23555 23622 23623 23556 27552 27619 27620 27553 +23556 23623 23624 23557 27553 27620 27621 27554 +23557 23624 23625 23558 27554 27621 27622 27555 +23558 23625 23626 23559 27555 27622 27623 27556 +23559 23626 23627 23560 27556 27623 27624 27557 +23560 23627 23628 23561 27557 27624 27625 27558 +23561 23628 23629 23562 27558 27625 27626 27559 +23562 23629 23630 23563 27559 27626 27627 27560 +23563 23630 23631 23564 27560 27627 27628 27561 +23564 23631 23632 23565 27561 27628 27629 27562 +23565 23632 23633 23566 27562 27629 27630 27563 +23566 23633 23634 23567 27563 27630 27631 27564 +23567 23634 23635 23568 27564 27631 27632 27565 +23568 23635 23636 23569 27565 27632 27633 27566 +23569 23636 23637 23570 27566 27633 27634 27567 +23570 23637 23638 23571 27567 27634 27635 27568 +23571 23638 23639 23572 27568 27635 27636 27569 +23572 23639 23640 23573 27569 27636 27637 27570 +23573 23640 23641 23574 27570 27637 27638 27571 +23574 23641 23642 23575 27571 27638 27639 27572 +23575 23642 23643 23576 27572 27639 27640 27573 +23576 23643 23644 23577 27573 27640 27641 27574 +23577 23644 23645 23646 27574 27641 27642 27643 +23577 23646 23647 23578 27574 27643 27644 27575 +23578 23647 23648 23579 27575 27644 27645 27576 +23579 23648 23649 23580 27576 27645 27646 27577 +23580 23649 23650 23581 27577 27646 27647 27578 +23581 23650 23651 23582 27578 27647 27648 27579 +23582 23651 23652 23583 27579 27648 27649 27580 +23583 23652 23653 23584 27580 27649 27650 27581 +23584 23653 23654 23585 27581 27650 27651 27582 +23585 23654 23655 23586 27582 27651 27652 27583 +23586 23655 23656 23587 27583 27652 27653 27584 +23587 23656 23657 23588 27584 27653 27654 27585 +23588 23657 23658 23589 27585 27654 27655 27586 +23589 23658 23659 23590 27586 27655 27656 27587 +23590 23659 23660 23591 27587 27656 27657 27588 +23591 23660 23661 23592 27588 27657 27658 27589 +23592 23661 23662 23593 27589 27658 27659 27590 +23593 23662 23663 23594 27590 27659 27660 27591 +23594 23663 23664 23595 27591 27660 27661 27592 +23595 23664 23665 23596 27592 27661 27662 27593 +23596 23665 23666 23597 27593 27662 27663 27594 +23597 23666 23667 23598 27594 27663 27664 27595 +23598 23667 23668 23599 27595 27664 27665 27596 +23599 23668 23669 23600 27596 27665 27666 27597 +23600 23669 23670 23601 27597 27666 27667 27598 +23601 23670 23671 23602 27598 27667 27668 27599 +23602 23671 23672 23603 27599 27668 27669 27600 +23603 23672 23673 23604 27600 27669 27670 27601 +23604 23673 23674 23605 27601 27670 27671 27602 +23605 23674 23675 23606 27602 27671 27672 27603 +23606 23675 23676 23607 27603 27672 27673 27604 +23607 23676 23677 23608 27604 27673 27674 27605 +23608 23677 23678 23609 27605 27674 27675 27606 +23609 23678 23679 23610 27606 27675 27676 27607 +23611 23680 23681 23612 27608 27677 27678 27609 +23612 23681 23682 23613 27609 27678 27679 27610 +23613 23682 23683 23614 27610 27679 27680 27611 +23614 23683 23684 23615 27611 27680 27681 27612 +23615 23684 23685 23616 27612 27681 27682 27613 +23616 23685 23686 23617 27613 27682 27683 27614 +23617 23686 23687 23618 27614 27683 27684 27615 +23618 23687 23688 23619 27615 27684 27685 27616 +23619 23688 23689 23620 27616 27685 27686 27617 +23620 23689 23690 23621 27617 27686 27687 27618 +23621 23690 23691 23622 27618 27687 27688 27619 +23622 23691 23692 23623 27619 27688 27689 27620 +23623 23692 23693 23624 27620 27689 27690 27621 +23624 23693 23694 23625 27621 27690 27691 27622 +23625 23694 23695 23626 27622 27691 27692 27623 +23626 23695 23696 23627 27623 27692 27693 27624 +23627 23696 23697 23628 27624 27693 27694 27625 +23628 23697 23698 23629 27625 27694 27695 27626 +23629 23698 23699 23630 27626 27695 27696 27627 +23630 23699 23700 23631 27627 27696 27697 27628 +23631 23700 23701 23632 27628 27697 27698 27629 +23632 23701 23702 23633 27629 27698 27699 27630 +23633 23702 23703 23634 27630 27699 27700 27631 +23634 23703 23704 23635 27631 27700 27701 27632 +23635 23704 23705 23636 27632 27701 27702 27633 +23636 23705 23706 23637 27633 27702 27703 27634 +23637 23706 23707 23638 27634 27703 27704 27635 +23638 23707 23708 23639 27635 27704 27705 27636 +23639 23708 23709 23640 27636 27705 27706 27637 +23640 23709 23710 23641 27637 27706 27707 27638 +23641 23710 23711 23642 27638 27707 27708 27639 +23642 23711 23712 23643 27639 27708 27709 27640 +23643 23712 23713 23644 27640 27709 27710 27641 +23644 23713 23714 23645 27641 27710 27711 27642 +23645 23714 23715 23716 27642 27711 27712 27713 +23645 23716 23717 23646 27642 27713 27714 27643 +23646 23717 23718 23647 27643 27714 27715 27644 +23647 23718 23719 23648 27644 27715 27716 27645 +23648 23719 23720 23649 27645 27716 27717 27646 +23649 23720 23721 23650 27646 27717 27718 27647 +23650 23721 23722 23651 27647 27718 27719 27648 +23651 23722 23723 23652 27648 27719 27720 27649 +23652 23723 23724 23653 27649 27720 27721 27650 +23653 23724 23725 23654 27650 27721 27722 27651 +23654 23725 23726 23655 27651 27722 27723 27652 +23655 23726 23727 23656 27652 27723 27724 27653 +23656 23727 23728 23657 27653 27724 27725 27654 +23657 23728 23729 23658 27654 27725 27726 27655 +23658 23729 23730 23659 27655 27726 27727 27656 +23659 23730 23731 23660 27656 27727 27728 27657 +23660 23731 23732 23661 27657 27728 27729 27658 +23661 23732 23733 23662 27658 27729 27730 27659 +23662 23733 23734 23663 27659 27730 27731 27660 +23663 23734 23735 23664 27660 27731 27732 27661 +23664 23735 23736 23665 27661 27732 27733 27662 +23665 23736 23737 23666 27662 27733 27734 27663 +23666 23737 23738 23667 27663 27734 27735 27664 +23667 23738 23739 23668 27664 27735 27736 27665 +23668 23739 23740 23669 27665 27736 27737 27666 +23669 23740 23741 23670 27666 27737 27738 27667 +23670 23741 23742 23671 27667 27738 27739 27668 +23671 23742 23743 23672 27668 27739 27740 27669 +23672 23743 23744 23673 27669 27740 27741 27670 +23673 23744 23745 23674 27670 27741 27742 27671 +23674 23745 23746 23675 27671 27742 27743 27672 +23675 23746 23747 23676 27672 27743 27744 27673 +23676 23747 23748 23677 27673 27744 27745 27674 +23677 23748 23749 23678 27674 27745 27746 27675 +23678 23749 23750 23679 27675 27746 27747 27676 +23680 23751 23752 23681 27677 27748 27749 27678 +23681 23752 23753 23682 27678 27749 27750 27679 +23682 23753 23754 23683 27679 27750 27751 27680 +23683 23754 23755 23684 27680 27751 27752 27681 +23684 23755 23756 23685 27681 27752 27753 27682 +23685 23756 23757 23686 27682 27753 27754 27683 +23686 23757 23758 23687 27683 27754 27755 27684 +23687 23758 23759 23688 27684 27755 27756 27685 +23688 23759 23760 23689 27685 27756 27757 27686 +23689 23760 23761 23690 27686 27757 27758 27687 +23690 23761 23762 23691 27687 27758 27759 27688 +23691 23762 23763 23692 27688 27759 27760 27689 +23692 23763 23764 23693 27689 27760 27761 27690 +23693 23764 23765 23694 27690 27761 27762 27691 +23694 23765 23766 23695 27691 27762 27763 27692 +23695 23766 23767 23696 27692 27763 27764 27693 +23696 23767 23768 23697 27693 27764 27765 27694 +23697 23768 23769 23698 27694 27765 27766 27695 +23698 23769 23770 23699 27695 27766 27767 27696 +23699 23770 23771 23700 27696 27767 27768 27697 +23700 23771 23772 23701 27697 27768 27769 27698 +23701 23772 23773 23702 27698 27769 27770 27699 +23702 23773 23774 23703 27699 27770 27771 27700 +23703 23774 23775 23704 27700 27771 27772 27701 +23704 23775 23776 23705 27701 27772 27773 27702 +23705 23776 23777 23706 27702 27773 27774 27703 +23706 23777 23778 23707 27703 27774 27775 27704 +23707 23778 23779 23708 27704 27775 27776 27705 +23708 23779 23780 23709 27705 27776 27777 27706 +23709 23780 23781 23710 27706 27777 27778 27707 +23710 23781 23782 23711 27707 27778 27779 27708 +23711 23782 23783 23712 27708 27779 27780 27709 +23712 23783 23784 23713 27709 27780 27781 27710 +23713 23784 23785 23714 27710 27781 27782 27711 +23714 23785 23786 23715 27711 27782 27783 27712 +23715 23786 23787 23788 27712 27783 27784 27785 +23715 23788 23789 23716 27712 27785 27786 27713 +23716 23789 23790 23717 27713 27786 27787 27714 +23717 23790 23791 23718 27714 27787 27788 27715 +23718 23791 23792 23719 27715 27788 27789 27716 +23719 23792 23793 23720 27716 27789 27790 27717 +23720 23793 23794 23721 27717 27790 27791 27718 +23721 23794 23795 23722 27718 27791 27792 27719 +23722 23795 23796 23723 27719 27792 27793 27720 +23723 23796 23797 23724 27720 27793 27794 27721 +23724 23797 23798 23725 27721 27794 27795 27722 +23725 23798 23799 23726 27722 27795 27796 27723 +23726 23799 23800 23727 27723 27796 27797 27724 +23727 23800 23801 23728 27724 27797 27798 27725 +23728 23801 23802 23729 27725 27798 27799 27726 +23729 23802 23803 23730 27726 27799 27800 27727 +23730 23803 23804 23731 27727 27800 27801 27728 +23731 23804 23805 23732 27728 27801 27802 27729 +23732 23805 23806 23733 27729 27802 27803 27730 +23733 23806 23807 23734 27730 27803 27804 27731 +23734 23807 23808 23735 27731 27804 27805 27732 +23735 23808 23809 23736 27732 27805 27806 27733 +23736 23809 23810 23737 27733 27806 27807 27734 +23737 23810 23811 23738 27734 27807 27808 27735 +23738 23811 23812 23739 27735 27808 27809 27736 +23739 23812 23813 23740 27736 27809 27810 27737 +23740 23813 23814 23741 27737 27810 27811 27738 +23741 23814 23815 23742 27738 27811 27812 27739 +23742 23815 23816 23743 27739 27812 27813 27740 +23743 23816 23817 23744 27740 27813 27814 27741 +23744 23817 23818 23745 27741 27814 27815 27742 +23745 23818 23819 23746 27742 27815 27816 27743 +23746 23819 23820 23747 27743 27816 27817 27744 +23747 23820 23821 23748 27744 27817 27818 27745 +23748 23821 23822 23749 27745 27818 27819 27746 +23749 23822 23823 23750 27746 27819 27820 27747 +23751 23824 23825 23752 27748 27821 27822 27749 +23752 23825 23826 23753 27749 27822 27823 27750 +23753 23826 23827 23754 27750 27823 27824 27751 +23754 23827 23828 23755 27751 27824 27825 27752 +23755 23828 23829 23756 27752 27825 27826 27753 +23756 23829 23830 23757 27753 27826 27827 27754 +23757 23830 23831 23758 27754 27827 27828 27755 +23758 23831 23832 23759 27755 27828 27829 27756 +23759 23832 23833 23760 27756 27829 27830 27757 +23760 23833 23834 23761 27757 27830 27831 27758 +23761 23834 23835 23762 27758 27831 27832 27759 +23762 23835 23836 23763 27759 27832 27833 27760 +23763 23836 23837 23764 27760 27833 27834 27761 +23764 23837 23838 23765 27761 27834 27835 27762 +23765 23838 23839 23766 27762 27835 27836 27763 +23766 23839 23840 23767 27763 27836 27837 27764 +23767 23840 23841 23768 27764 27837 27838 27765 +23768 23841 23842 23769 27765 27838 27839 27766 +23769 23842 23843 23770 27766 27839 27840 27767 +23770 23843 23844 23771 27767 27840 27841 27768 +23771 23844 23845 23772 27768 27841 27842 27769 +23772 23845 23846 23773 27769 27842 27843 27770 +23773 23846 23847 23774 27770 27843 27844 27771 +23774 23847 23848 23775 27771 27844 27845 27772 +23775 23848 23849 23776 27772 27845 27846 27773 +23776 23849 23850 23777 27773 27846 27847 27774 +23777 23850 23851 23778 27774 27847 27848 27775 +23778 23851 23852 23779 27775 27848 27849 27776 +23779 23852 23853 23780 27776 27849 27850 27777 +23780 23853 23854 23781 27777 27850 27851 27778 +23781 23854 23855 23782 27778 27851 27852 27779 +23782 23855 23856 23783 27779 27852 27853 27780 +23783 23856 23857 23784 27780 27853 27854 27781 +23784 23857 23858 23785 27781 27854 27855 27782 +23785 23858 23859 23786 27782 27855 27856 27783 +23786 23859 23860 23787 27783 27856 27857 27784 +23787 23860 23861 23788 27784 27857 27858 27785 +23788 23861 23862 23789 27785 27858 27859 27786 +23789 23862 23863 23790 27786 27859 27860 27787 +23790 23863 23864 23791 27787 27860 27861 27788 +23791 23864 23865 23792 27788 27861 27862 27789 +23792 23865 23866 23793 27789 27862 27863 27790 +23793 23866 23867 23794 27790 27863 27864 27791 +23794 23867 23868 23795 27791 27864 27865 27792 +23795 23868 23869 23796 27792 27865 27866 27793 +23796 23869 23870 23797 27793 27866 27867 27794 +23797 23870 23871 23798 27794 27867 27868 27795 +23798 23871 23872 23799 27795 27868 27869 27796 +23799 23872 23873 23800 27796 27869 27870 27797 +23800 23873 23874 23801 27797 27870 27871 27798 +23801 23874 23875 23802 27798 27871 27872 27799 +23802 23875 23876 23803 27799 27872 27873 27800 +23803 23876 23877 23804 27800 27873 27874 27801 +23804 23877 23878 23805 27801 27874 27875 27802 +23805 23878 23879 23806 27802 27875 27876 27803 +23806 23879 23880 23807 27803 27876 27877 27804 +23807 23880 23881 23808 27804 27877 27878 27805 +23808 23881 23882 23809 27805 27878 27879 27806 +23809 23882 23883 23810 27806 27879 27880 27807 +23810 23883 23884 23811 27807 27880 27881 27808 +23811 23884 23885 23812 27808 27881 27882 27809 +23812 23885 23886 23813 27809 27882 27883 27810 +23813 23886 23887 23814 27810 27883 27884 27811 +23814 23887 23888 23815 27811 27884 27885 27812 +23815 23888 23889 23816 27812 27885 27886 27813 +23816 23889 23890 23817 27813 27886 27887 27814 +23817 23890 23891 23818 27814 27887 27888 27815 +23818 23891 23892 23819 27815 27888 27889 27816 +23819 23892 23893 23820 27816 27889 27890 27817 +23820 23893 23894 23821 27817 27890 27891 27818 +23821 23894 23895 23822 27818 27891 27892 27819 +23822 23895 23896 23823 27819 27892 27893 27820 +23824 23897 23898 23825 27821 27894 27895 27822 +23825 23898 23899 23826 27822 27895 27896 27823 +23826 23899 23900 23827 27823 27896 27897 27824 +23827 23900 23901 23828 27824 27897 27898 27825 +23828 23901 23902 23829 27825 27898 27899 27826 +23829 23902 23903 23830 27826 27899 27900 27827 +23830 23903 23904 23831 27827 27900 27901 27828 +23831 23904 23905 23832 27828 27901 27902 27829 +23832 23905 23906 23833 27829 27902 27903 27830 +23833 23906 23907 23834 27830 27903 27904 27831 +23834 23907 23908 23835 27831 27904 27905 27832 +23835 23908 23909 23836 27832 27905 27906 27833 +23836 23909 23910 23837 27833 27906 27907 27834 +23837 23910 23911 23838 27834 27907 27908 27835 +23838 23911 23912 23839 27835 27908 27909 27836 +23839 23912 23913 23840 27836 27909 27910 27837 +23840 23913 23914 23841 27837 27910 27911 27838 +23841 23914 23915 23842 27838 27911 27912 27839 +23842 23915 23916 23843 27839 27912 27913 27840 +23843 23916 23917 23844 27840 27913 27914 27841 +23844 23917 23918 23845 27841 27914 27915 27842 +23845 23918 23919 23846 27842 27915 27916 27843 +23846 23919 23920 23847 27843 27916 27917 27844 +23847 23920 23921 23848 27844 27917 27918 27845 +23848 23921 23922 23849 27845 27918 27919 27846 +23849 23922 23923 23850 27846 27919 27920 27847 +23850 23923 23924 23851 27847 27920 27921 27848 +23851 23924 23925 23852 27848 27921 27922 27849 +23852 23925 23926 23853 27849 27922 27923 27850 +23853 23926 23927 23854 27850 27923 27924 27851 +23854 23927 23928 23855 27851 27924 27925 27852 +23855 23928 23929 23856 27852 27925 27926 27853 +23856 23929 23930 23857 27853 27926 27927 27854 +23857 23930 23931 23858 27854 27927 27928 27855 +23858 23931 23932 23859 27855 27928 27929 27856 +23859 23932 23933 23860 27856 27929 27930 27857 +23860 23933 23934 23861 27857 27930 27931 27858 +23861 23934 23935 23862 27858 27931 27932 27859 +23862 23935 23936 23863 27859 27932 27933 27860 +23863 23936 23937 23864 27860 27933 27934 27861 +23864 23937 23938 23865 27861 27934 27935 27862 +23865 23938 23939 23866 27862 27935 27936 27863 +23866 23939 23940 23867 27863 27936 27937 27864 +23867 23940 23941 23868 27864 27937 27938 27865 +23868 23941 23942 23869 27865 27938 27939 27866 +23869 23942 23943 23870 27866 27939 27940 27867 +23870 23943 23944 23871 27867 27940 27941 27868 +23871 23944 23945 23872 27868 27941 27942 27869 +23872 23945 23946 23873 27869 27942 27943 27870 +23873 23946 23947 23874 27870 27943 27944 27871 +23874 23947 23948 23875 27871 27944 27945 27872 +23875 23948 23949 23876 27872 27945 27946 27873 +23876 23949 23950 23877 27873 27946 27947 27874 +23877 23950 23951 23878 27874 27947 27948 27875 +23878 23951 23952 23879 27875 27948 27949 27876 +23879 23952 23953 23880 27876 27949 27950 27877 +23880 23953 23954 23881 27877 27950 27951 27878 +23881 23954 23955 23882 27878 27951 27952 27879 +23882 23955 23956 23883 27879 27952 27953 27880 +23883 23956 23957 23884 27880 27953 27954 27881 +23884 23957 23958 23885 27881 27954 27955 27882 +23885 23958 23959 23886 27882 27955 27956 27883 +23886 23959 23960 23887 27883 27956 27957 27884 +23887 23960 23961 23888 27884 27957 27958 27885 +23888 23961 23962 23889 27885 27958 27959 27886 +23889 23962 23963 23890 27886 27959 27960 27887 +23890 23963 23964 23891 27887 27960 27961 27888 +23891 23964 23965 23892 27888 27961 27962 27889 +23892 23965 23966 23893 27889 27962 27963 27890 +23893 23966 23967 23894 27890 27963 27964 27891 +23894 23967 23968 23895 27891 27964 27965 27892 +23895 23968 23969 23896 27892 27965 27966 27893 +23897 23970 23971 23898 27894 27967 27968 27895 +23898 23971 23972 23899 27895 27968 27969 27896 +23899 23972 23973 23900 27896 27969 27970 27897 +23900 23973 23974 23901 27897 27970 27971 27898 +23901 23974 23975 23902 27898 27971 27972 27899 +23902 23975 23976 23903 27899 27972 27973 27900 +23903 23976 23977 23904 27900 27973 27974 27901 +23904 23977 23978 23905 27901 27974 27975 27902 +23905 23978 23979 23906 27902 27975 27976 27903 +23906 23979 23980 23907 27903 27976 27977 27904 +23907 23980 23981 23908 27904 27977 27978 27905 +23908 23981 23982 23909 27905 27978 27979 27906 +23909 23982 23983 23910 27906 27979 27980 27907 +23910 23983 23984 23911 27907 27980 27981 27908 +23911 23984 23985 23912 27908 27981 27982 27909 +23912 23985 23986 23913 27909 27982 27983 27910 +23913 23986 23987 23914 27910 27983 27984 27911 +23914 23987 23988 23915 27911 27984 27985 27912 +23915 23988 23989 23916 27912 27985 27986 27913 +23916 23989 23990 23917 27913 27986 27987 27914 +23917 23990 23991 23918 27914 27987 27988 27915 +23918 23991 23992 23919 27915 27988 27989 27916 +23919 23992 23993 23920 27916 27989 27990 27917 +23920 23993 23994 23921 27917 27990 27991 27918 +23921 23994 23995 23922 27918 27991 27992 27919 +23922 23995 23996 23923 27919 27992 27993 27920 +23923 23996 23997 23924 27920 27993 27994 27921 +23924 23997 23998 23925 27921 27994 27995 27922 +23925 23998 23999 23926 27922 27995 27996 27923 +23926 23999 24000 23927 27923 27996 27997 27924 +23927 24000 24001 23928 27924 27997 27998 27925 +23928 24001 24002 23929 27925 27998 27999 27926 +23929 24002 24003 23930 27926 27999 28000 27927 +23930 24003 24004 23931 27927 28000 28001 27928 +23931 24004 24005 23932 27928 28001 28002 27929 +23932 24005 24006 23933 27929 28002 28003 27930 +23933 24006 24007 23934 27930 28003 28004 27931 +23934 24007 24008 23935 27931 28004 28005 27932 +23935 24008 24009 23936 27932 28005 28006 27933 +23936 24009 24010 23937 27933 28006 28007 27934 +23937 24010 24011 23938 27934 28007 28008 27935 +23938 24011 24012 23939 27935 28008 28009 27936 +23939 24012 24013 23940 27936 28009 28010 27937 +23940 24013 24014 23941 27937 28010 28011 27938 +23941 24014 24015 23942 27938 28011 28012 27939 +23942 24015 24016 23943 27939 28012 28013 27940 +23943 24016 24017 23944 27940 28013 28014 27941 +23944 24017 24018 23945 27941 28014 28015 27942 +23945 24018 24019 23946 27942 28015 28016 27943 +23946 24019 24020 23947 27943 28016 28017 27944 +23947 24020 24021 23948 27944 28017 28018 27945 +23948 24021 24022 23949 27945 28018 28019 27946 +23949 24022 24023 23950 27946 28019 28020 27947 +23950 24023 24024 23951 27947 28020 28021 27948 +23951 24024 24025 23952 27948 28021 28022 27949 +23952 24025 24026 23953 27949 28022 28023 27950 +23953 24026 24027 23954 27950 28023 28024 27951 +23954 24027 24028 23955 27951 28024 28025 27952 +23955 24028 24029 23956 27952 28025 28026 27953 +23956 24029 24030 23957 27953 28026 28027 27954 +23957 24030 24031 23958 27954 28027 28028 27955 +23958 24031 24032 23959 27955 28028 28029 27956 +23959 24032 24033 23960 27956 28029 28030 27957 +23960 24033 24034 23961 27957 28030 28031 27958 +23961 24034 24035 23962 27958 28031 28032 27959 +23962 24035 24036 23963 27959 28032 28033 27960 +23963 24036 24037 23964 27960 28033 28034 27961 +23964 24037 24038 23965 27961 28034 28035 27962 +23965 24038 24039 23966 27962 28035 28036 27963 +23966 24039 24040 23967 27963 28036 28037 27964 +23967 24040 24041 23968 27964 28037 28038 27965 +23968 24041 24042 23969 27965 28038 28039 27966 +23970 24043 24044 23971 27967 28040 28041 27968 +23971 24044 24045 23972 27968 28041 28042 27969 +23972 24045 24046 23973 27969 28042 28043 27970 +23973 24046 24047 23974 27970 28043 28044 27971 +23974 24047 24048 23975 27971 28044 28045 27972 +23975 24048 24049 23976 27972 28045 28046 27973 +23976 24049 24050 23977 27973 28046 28047 27974 +23977 24050 24051 23978 27974 28047 28048 27975 +23978 24051 24052 23979 27975 28048 28049 27976 +23979 24052 24053 23980 27976 28049 28050 27977 +23980 24053 24054 23981 27977 28050 28051 27978 +23981 24054 24055 23982 27978 28051 28052 27979 +23982 24055 24056 23983 27979 28052 28053 27980 +23983 24056 24057 23984 27980 28053 28054 27981 +23984 24057 24058 23985 27981 28054 28055 27982 +23985 24058 24059 23986 27982 28055 28056 27983 +23986 24059 24060 23987 27983 28056 28057 27984 +23987 24060 24061 23988 27984 28057 28058 27985 +23988 24061 24062 23989 27985 28058 28059 27986 +23989 24062 24063 23990 27986 28059 28060 27987 +23990 24063 24064 23991 27987 28060 28061 27988 +23991 24064 24065 23992 27988 28061 28062 27989 +23992 24065 24066 23993 27989 28062 28063 27990 +23993 24066 24067 23994 27990 28063 28064 27991 +23994 24067 24068 23995 27991 28064 28065 27992 +23995 24068 24069 23996 27992 28065 28066 27993 +23996 24069 24070 23997 27993 28066 28067 27994 +23997 24070 24071 23998 27994 28067 28068 27995 +23998 24071 24072 23999 27995 28068 28069 27996 +23999 24072 24073 24000 27996 28069 28070 27997 +24000 24073 24074 24001 27997 28070 28071 27998 +24001 24074 24075 24002 27998 28071 28072 27999 +24002 24075 24076 24003 27999 28072 28073 28000 +24003 24076 24077 24004 28000 28073 28074 28001 +24004 24077 24078 24005 28001 28074 28075 28002 +24005 24078 24079 24006 28002 28075 28076 28003 +24006 24079 24080 24007 28003 28076 28077 28004 +24007 24080 24081 24008 28004 28077 28078 28005 +24008 24081 24082 24009 28005 28078 28079 28006 +24009 24082 24083 24010 28006 28079 28080 28007 +24010 24083 24084 24011 28007 28080 28081 28008 +24011 24084 24085 24012 28008 28081 28082 28009 +24012 24085 24086 24013 28009 28082 28083 28010 +24013 24086 24087 24014 28010 28083 28084 28011 +24014 24087 24088 24015 28011 28084 28085 28012 +24015 24088 24089 24016 28012 28085 28086 28013 +24016 24089 24090 24017 28013 28086 28087 28014 +24017 24090 24091 24018 28014 28087 28088 28015 +24018 24091 24092 24019 28015 28088 28089 28016 +24019 24092 24093 24020 28016 28089 28090 28017 +24020 24093 24094 24021 28017 28090 28091 28018 +24021 24094 24095 24022 28018 28091 28092 28019 +24022 24095 24096 24023 28019 28092 28093 28020 +24023 24096 24097 24024 28020 28093 28094 28021 +24024 24097 24098 24025 28021 28094 28095 28022 +24025 24098 24099 24026 28022 28095 28096 28023 +24026 24099 24100 24027 28023 28096 28097 28024 +24027 24100 24101 24028 28024 28097 28098 28025 +24028 24101 24102 24029 28025 28098 28099 28026 +24029 24102 24103 24030 28026 28099 28100 28027 +24030 24103 24104 24031 28027 28100 28101 28028 +24031 24104 24105 24032 28028 28101 28102 28029 +24032 24105 24106 24033 28029 28102 28103 28030 +24033 24106 24107 24034 28030 28103 28104 28031 +24034 24107 24108 24035 28031 28104 28105 28032 +24035 24108 24109 24036 28032 28105 28106 28033 +24036 24109 24110 24037 28033 28106 28107 28034 +24037 24110 24111 24038 28034 28107 28108 28035 +24038 24111 24112 24039 28035 28108 28109 28036 +24039 24112 24113 24040 28036 28109 28110 28037 +24040 24113 24114 24041 28037 28110 28111 28038 +24041 24114 24115 24042 28038 28111 28112 28039 +24043 24116 24117 24044 28040 28113 28114 28041 +24044 24117 24118 24045 28041 28114 28115 28042 +24045 24118 24119 24046 28042 28115 28116 28043 +24046 24119 24120 24047 28043 28116 28117 28044 +24047 24120 24121 24048 28044 28117 28118 28045 +24048 24121 24122 24049 28045 28118 28119 28046 +24049 24122 24123 24050 28046 28119 28120 28047 +24050 24123 24124 24051 28047 28120 28121 28048 +24051 24124 24125 24052 28048 28121 28122 28049 +24052 24125 24126 24053 28049 28122 28123 28050 +24053 24126 24127 24054 28050 28123 28124 28051 +24054 24127 24128 24055 28051 28124 28125 28052 +24055 24128 24129 24056 28052 28125 28126 28053 +24056 24129 24130 24057 28053 28126 28127 28054 +24057 24130 24131 24058 28054 28127 28128 28055 +24058 24131 24132 24059 28055 28128 28129 28056 +24059 24132 24133 24060 28056 28129 28130 28057 +24060 24133 24134 24061 28057 28130 28131 28058 +24061 24134 24135 24062 28058 28131 28132 28059 +24062 24135 24136 24063 28059 28132 28133 28060 +24063 24136 24137 24064 28060 28133 28134 28061 +24064 24137 24138 24065 28061 28134 28135 28062 +24065 24138 24139 24066 28062 28135 28136 28063 +24066 24139 24140 24067 28063 28136 28137 28064 +24067 24140 24141 24068 28064 28137 28138 28065 +24068 24141 24142 24069 28065 28138 28139 28066 +24069 24142 24143 24070 28066 28139 28140 28067 +24070 24143 24144 24071 28067 28140 28141 28068 +24071 24144 24145 24072 28068 28141 28142 28069 +24072 24145 24146 24073 28069 28142 28143 28070 +24073 24146 24147 24074 28070 28143 28144 28071 +24074 24147 24148 24075 28071 28144 28145 28072 +24075 24148 24149 24076 28072 28145 28146 28073 +24076 24149 24150 24077 28073 28146 28147 28074 +24077 24150 24151 24078 28074 28147 28148 28075 +24078 24151 24152 24079 28075 28148 28149 28076 +24079 24152 24153 24080 28076 28149 28150 28077 +24080 24153 24154 24081 28077 28150 28151 28078 +24081 24154 24155 24082 28078 28151 28152 28079 +24082 24155 24156 24083 28079 28152 28153 28080 +24083 24156 24157 24084 28080 28153 28154 28081 +24084 24157 24158 24085 28081 28154 28155 28082 +24085 24158 24159 24086 28082 28155 28156 28083 +24086 24159 24160 24087 28083 28156 28157 28084 +24087 24160 24161 24088 28084 28157 28158 28085 +24088 24161 24162 24089 28085 28158 28159 28086 +24089 24162 24163 24090 28086 28159 28160 28087 +24090 24163 24164 24091 28087 28160 28161 28088 +24091 24164 24165 24092 28088 28161 28162 28089 +24092 24165 24166 24093 28089 28162 28163 28090 +24093 24166 24167 24094 28090 28163 28164 28091 +24094 24167 24168 24095 28091 28164 28165 28092 +24095 24168 24169 24096 28092 28165 28166 28093 +24096 24169 24170 24097 28093 28166 28167 28094 +24097 24170 24171 24098 28094 28167 28168 28095 +24098 24171 24172 24099 28095 28168 28169 28096 +24099 24172 24173 24100 28096 28169 28170 28097 +24100 24173 24174 24101 28097 28170 28171 28098 +24101 24174 24175 24102 28098 28171 28172 28099 +24102 24175 24176 24103 28099 28172 28173 28100 +24103 24176 24177 24104 28100 28173 28174 28101 +24104 24177 24178 24105 28101 28174 28175 28102 +24105 24178 24179 24106 28102 28175 28176 28103 +24106 24179 24180 24107 28103 28176 28177 28104 +24107 24180 24181 24108 28104 28177 28178 28105 +24108 24181 24182 24109 28105 28178 28179 28106 +24109 24182 24183 24110 28106 28179 28180 28107 +24110 24183 24184 24111 28107 28180 28181 28108 +24111 24184 24185 24112 28108 28181 28182 28109 +24112 24185 24186 24113 28109 28182 28183 28110 +24113 24186 24187 24114 28110 28183 28184 28111 +24114 24187 24188 24115 28111 28184 28185 28112 +24116 24189 24190 24117 28113 28186 28187 28114 +24117 24190 24191 24118 28114 28187 28188 28115 +24118 24191 24192 24119 28115 28188 28189 28116 +24119 24192 24193 24120 28116 28189 28190 28117 +24120 24193 24194 24121 28117 28190 28191 28118 +24121 24194 24195 24122 28118 28191 28192 28119 +24122 24195 24196 24123 28119 28192 28193 28120 +24123 24196 24197 24124 28120 28193 28194 28121 +24124 24197 24198 24125 28121 28194 28195 28122 +24125 24198 24199 24126 28122 28195 28196 28123 +24126 24199 24200 24127 28123 28196 28197 28124 +24127 24200 24201 24128 28124 28197 28198 28125 +24128 24201 24202 24129 28125 28198 28199 28126 +24129 24202 24203 24130 28126 28199 28200 28127 +24130 24203 24204 24131 28127 28200 28201 28128 +24131 24204 24205 24132 28128 28201 28202 28129 +24132 24205 24206 24133 28129 28202 28203 28130 +24133 24206 24207 24134 28130 28203 28204 28131 +24134 24207 24208 24135 28131 28204 28205 28132 +24135 24208 24209 24136 28132 28205 28206 28133 +24136 24209 24210 24137 28133 28206 28207 28134 +24137 24210 24211 24138 28134 28207 28208 28135 +24138 24211 24212 24139 28135 28208 28209 28136 +24139 24212 24213 24140 28136 28209 28210 28137 +24140 24213 24214 24141 28137 28210 28211 28138 +24141 24214 24215 24142 28138 28211 28212 28139 +24142 24215 24216 24143 28139 28212 28213 28140 +24143 24216 24217 24144 28140 28213 28214 28141 +24144 24217 24218 24145 28141 28214 28215 28142 +24145 24218 24219 24146 28142 28215 28216 28143 +24146 24219 24220 24147 28143 28216 28217 28144 +24147 24220 24221 24148 28144 28217 28218 28145 +24148 24221 24222 24149 28145 28218 28219 28146 +24149 24222 24223 24150 28146 28219 28220 28147 +24150 24223 24224 24151 28147 28220 28221 28148 +24151 24224 24225 24152 28148 28221 28222 28149 +24152 24225 24226 24153 28149 28222 28223 28150 +24153 24226 24227 24154 28150 28223 28224 28151 +24154 24227 24228 24155 28151 28224 28225 28152 +24155 24228 24229 24156 28152 28225 28226 28153 +24156 24229 24230 24157 28153 28226 28227 28154 +24157 24230 24231 24158 28154 28227 28228 28155 +24158 24231 24232 24159 28155 28228 28229 28156 +24159 24232 24233 24160 28156 28229 28230 28157 +24160 24233 24234 24161 28157 28230 28231 28158 +24161 24234 24235 24162 28158 28231 28232 28159 +24162 24235 24236 24163 28159 28232 28233 28160 +24163 24236 24237 24164 28160 28233 28234 28161 +24164 24237 24238 24165 28161 28234 28235 28162 +24165 24238 24239 24166 28162 28235 28236 28163 +24166 24239 24240 24167 28163 28236 28237 28164 +24167 24240 24241 24168 28164 28237 28238 28165 +24168 24241 24242 24169 28165 28238 28239 28166 +24169 24242 24243 24170 28166 28239 28240 28167 +24170 24243 24244 24171 28167 28240 28241 28168 +24171 24244 24245 24172 28168 28241 28242 28169 +24172 24245 24246 24173 28169 28242 28243 28170 +24173 24246 24247 24174 28170 28243 28244 28171 +24174 24247 24248 24175 28171 28244 28245 28172 +24175 24248 24249 24176 28172 28245 28246 28173 +24176 24249 24250 24177 28173 28246 28247 28174 +24177 24250 24251 24178 28174 28247 28248 28175 +24178 24251 24252 24179 28175 28248 28249 28176 +24179 24252 24253 24180 28176 28249 28250 28177 +24180 24253 24254 24181 28177 28250 28251 28178 +24181 24254 24255 24182 28178 28251 28252 28179 +24182 24255 24256 24183 28179 28252 28253 28180 +24183 24256 24257 24184 28180 28253 28254 28181 +24184 24257 24258 24185 28181 28254 28255 28182 +24185 24258 24259 24186 28182 28255 28256 28183 +24186 24259 24260 24187 28183 28256 28257 28184 +24187 24260 24261 24188 28184 28257 28258 28185 +24189 24262 24263 24190 28186 28259 28260 28187 +24190 24263 24264 24191 28187 28260 28261 28188 +24191 24264 24265 24192 28188 28261 28262 28189 +24192 24265 24266 24193 28189 28262 28263 28190 +24193 24266 24267 24194 28190 28263 28264 28191 +24194 24267 24268 24195 28191 28264 28265 28192 +24195 24268 24269 24196 28192 28265 28266 28193 +24196 24269 24270 24197 28193 28266 28267 28194 +24197 24270 24271 24198 28194 28267 28268 28195 +24198 24271 24272 24199 28195 28268 28269 28196 +24199 24272 24273 24200 28196 28269 28270 28197 +24200 24273 24274 24201 28197 28270 28271 28198 +24201 24274 24275 24202 28198 28271 28272 28199 +24202 24275 24276 24203 28199 28272 28273 28200 +24203 24276 24277 24204 28200 28273 28274 28201 +24204 24277 24278 24205 28201 28274 28275 28202 +24205 24278 24279 24206 28202 28275 28276 28203 +24206 24279 24280 24207 28203 28276 28277 28204 +24207 24280 24281 24208 28204 28277 28278 28205 +24208 24281 24282 24209 28205 28278 28279 28206 +24209 24282 24283 24210 28206 28279 28280 28207 +24210 24283 24284 24211 28207 28280 28281 28208 +24211 24284 24285 24212 28208 28281 28282 28209 +24212 24285 24286 24213 28209 28282 28283 28210 +24213 24286 24287 24214 28210 28283 28284 28211 +24214 24287 24288 24215 28211 28284 28285 28212 +24215 24288 24289 24216 28212 28285 28286 28213 +24216 24289 24290 24217 28213 28286 28287 28214 +24217 24290 24291 24218 28214 28287 28288 28215 +24218 24291 24292 24219 28215 28288 28289 28216 +24219 24292 24293 24220 28216 28289 28290 28217 +24220 24293 24294 24221 28217 28290 28291 28218 +24221 24294 24295 24222 28218 28291 28292 28219 +24222 24295 24296 24223 28219 28292 28293 28220 +24223 24296 24297 24224 28220 28293 28294 28221 +24224 24297 24298 24225 28221 28294 28295 28222 +24225 24298 24299 24226 28222 28295 28296 28223 +24226 24299 24300 24227 28223 28296 28297 28224 +24227 24300 24301 24228 28224 28297 28298 28225 +24228 24301 24302 24229 28225 28298 28299 28226 +24229 24302 24303 24230 28226 28299 28300 28227 +24230 24303 24304 24231 28227 28300 28301 28228 +24231 24304 24305 24232 28228 28301 28302 28229 +24232 24305 24306 24233 28229 28302 28303 28230 +24233 24306 24307 24234 28230 28303 28304 28231 +24234 24307 24308 24235 28231 28304 28305 28232 +24235 24308 24309 24236 28232 28305 28306 28233 +24236 24309 24310 24237 28233 28306 28307 28234 +24237 24310 24311 24238 28234 28307 28308 28235 +24238 24311 24312 24239 28235 28308 28309 28236 +24239 24312 24313 24240 28236 28309 28310 28237 +24240 24313 24314 24241 28237 28310 28311 28238 +24241 24314 24315 24242 28238 28311 28312 28239 +24242 24315 24316 24243 28239 28312 28313 28240 +24243 24316 24317 24244 28240 28313 28314 28241 +24244 24317 24318 24245 28241 28314 28315 28242 +24245 24318 24319 24246 28242 28315 28316 28243 +24246 24319 24320 24247 28243 28316 28317 28244 +24247 24320 24321 24248 28244 28317 28318 28245 +24248 24321 24322 24249 28245 28318 28319 28246 +24249 24322 24323 24250 28246 28319 28320 28247 +24250 24323 24324 24251 28247 28320 28321 28248 +24251 24324 24325 24252 28248 28321 28322 28249 +24252 24325 24326 24253 28249 28322 28323 28250 +24253 24326 24327 24254 28250 28323 28324 28251 +24254 24327 24328 24255 28251 28324 28325 28252 +24255 24328 24329 24256 28252 28325 28326 28253 +24256 24329 24330 24257 28253 28326 28327 28254 +24257 24330 24331 24258 28254 28327 28328 28255 +24258 24331 24332 24259 28255 28328 28329 28256 +24259 24332 24333 24260 28256 28329 28330 28257 +24260 24333 24334 24261 28257 28330 28331 28258 +24262 24335 24336 24263 28259 28332 28333 28260 +24263 24336 24337 24264 28260 28333 28334 28261 +24264 24337 24338 24265 28261 28334 28335 28262 +24265 24338 24339 24266 28262 28335 28336 28263 +24266 24339 24340 24267 28263 28336 28337 28264 +24267 24340 24341 24268 28264 28337 28338 28265 +24268 24341 24342 24269 28265 28338 28339 28266 +24269 24342 24343 24270 28266 28339 28340 28267 +24270 24343 24344 24271 28267 28340 28341 28268 +24271 24344 24345 24272 28268 28341 28342 28269 +24272 24345 24346 24273 28269 28342 28343 28270 +24273 24346 24347 24274 28270 28343 28344 28271 +24274 24347 24348 24275 28271 28344 28345 28272 +24275 24348 24349 24276 28272 28345 28346 28273 +24276 24349 24350 24277 28273 28346 28347 28274 +24277 24350 24351 24278 28274 28347 28348 28275 +24278 24351 24352 24279 28275 28348 28349 28276 +24279 24352 24353 24280 28276 28349 28350 28277 +24280 24353 24354 24281 28277 28350 28351 28278 +24281 24354 24355 24282 28278 28351 28352 28279 +24282 24355 24356 24283 28279 28352 28353 28280 +24283 24356 24357 24284 28280 28353 28354 28281 +24284 24357 24358 24285 28281 28354 28355 28282 +24285 24358 24359 24286 28282 28355 28356 28283 +24286 24359 24360 24287 28283 28356 28357 28284 +24287 24360 24361 24288 28284 28357 28358 28285 +24288 24361 24362 24289 28285 28358 28359 28286 +24289 24362 24363 24290 28286 28359 28360 28287 +24290 24363 24364 24291 28287 28360 28361 28288 +24291 24364 24365 24292 28288 28361 28362 28289 +24292 24365 24366 24293 28289 28362 28363 28290 +24293 24366 24367 24294 28290 28363 28364 28291 +24294 24367 24368 24295 28291 28364 28365 28292 +24295 24368 24369 24296 28292 28365 28366 28293 +24296 24369 24370 24297 28293 28366 28367 28294 +24297 24370 24371 24298 28294 28367 28368 28295 +24298 24371 24372 24299 28295 28368 28369 28296 +24299 24372 24373 24300 28296 28369 28370 28297 +24300 24373 24374 24301 28297 28370 28371 28298 +24301 24374 24375 24302 28298 28371 28372 28299 +24302 24375 24376 24303 28299 28372 28373 28300 +24303 24376 24377 24304 28300 28373 28374 28301 +24304 24377 24378 24305 28301 28374 28375 28302 +24305 24378 24379 24306 28302 28375 28376 28303 +24306 24379 24380 24307 28303 28376 28377 28304 +24307 24380 24381 24308 28304 28377 28378 28305 +24308 24381 24382 24309 28305 28378 28379 28306 +24309 24382 24383 24310 28306 28379 28380 28307 +24310 24383 24384 24311 28307 28380 28381 28308 +24311 24384 24385 24312 28308 28381 28382 28309 +24312 24385 24386 24313 28309 28382 28383 28310 +24313 24386 24387 24314 28310 28383 28384 28311 +24314 24387 24388 24315 28311 28384 28385 28312 +24315 24388 24389 24316 28312 28385 28386 28313 +24316 24389 24390 24317 28313 28386 28387 28314 +24317 24390 24391 24318 28314 28387 28388 28315 +24318 24391 24392 24319 28315 28388 28389 28316 +24319 24392 24393 24320 28316 28389 28390 28317 +24320 24393 24394 24321 28317 28390 28391 28318 +24321 24394 24395 24322 28318 28391 28392 28319 +24322 24395 24396 24323 28319 28392 28393 28320 +24323 24396 24397 24324 28320 28393 28394 28321 +24324 24397 24398 24325 28321 28394 28395 28322 +24325 24398 24399 24326 28322 28395 28396 28323 +24326 24399 24400 24327 28323 28396 28397 28324 +24327 24400 24401 24328 28324 28397 28398 28325 +24328 24401 24402 24329 28325 28398 28399 28326 +24329 24402 24403 24330 28326 28399 28400 28327 +24330 24403 24404 24331 28327 28400 28401 28328 +24331 24404 24405 24332 28328 28401 28402 28329 +24332 24405 24406 24333 28329 28402 28403 28330 +24333 24406 24407 24334 28330 28403 28404 28331 +24335 24408 24409 24336 28332 28405 28406 28333 +24336 24409 24410 24337 28333 28406 28407 28334 +24337 24410 24411 24338 28334 28407 28408 28335 +24338 24411 24412 24339 28335 28408 28409 28336 +24339 24412 24413 24340 28336 28409 28410 28337 +24340 24413 24414 24341 28337 28410 28411 28338 +24341 24414 24415 24342 28338 28411 28412 28339 +24342 24415 24416 24343 28339 28412 28413 28340 +24343 24416 24417 24344 28340 28413 28414 28341 +24344 24417 24418 24345 28341 28414 28415 28342 +24345 24418 24419 24346 28342 28415 28416 28343 +24346 24419 24420 24347 28343 28416 28417 28344 +24347 24420 24421 24348 28344 28417 28418 28345 +24348 24421 24422 24349 28345 28418 28419 28346 +24349 24422 24423 24350 28346 28419 28420 28347 +24350 24423 24424 24351 28347 28420 28421 28348 +24351 24424 24425 24352 28348 28421 28422 28349 +24352 24425 24426 24353 28349 28422 28423 28350 +24353 24426 24427 24354 28350 28423 28424 28351 +24354 24427 24428 24355 28351 28424 28425 28352 +24355 24428 24429 24356 28352 28425 28426 28353 +24356 24429 24430 24357 28353 28426 28427 28354 +24357 24430 24431 24358 28354 28427 28428 28355 +24358 24431 24432 24359 28355 28428 28429 28356 +24359 24432 24433 24360 28356 28429 28430 28357 +24360 24433 24434 24361 28357 28430 28431 28358 +24361 24434 24435 24362 28358 28431 28432 28359 +24362 24435 24436 24363 28359 28432 28433 28360 +24363 24436 24437 24364 28360 28433 28434 28361 +24364 24437 24438 24365 28361 28434 28435 28362 +24365 24438 24439 24366 28362 28435 28436 28363 +24366 24439 24440 24367 28363 28436 28437 28364 +24367 24440 24441 24368 28364 28437 28438 28365 +24368 24441 24442 24369 28365 28438 28439 28366 +24369 24442 24443 24370 28366 28439 28440 28367 +24370 24443 24444 24371 28367 28440 28441 28368 +24371 24444 24445 24372 28368 28441 28442 28369 +24372 24445 24446 24373 28369 28442 28443 28370 +24373 24446 24447 24374 28370 28443 28444 28371 +24374 24447 24448 24375 28371 28444 28445 28372 +24375 24448 24449 24376 28372 28445 28446 28373 +24376 24449 24450 24377 28373 28446 28447 28374 +24377 24450 24451 24378 28374 28447 28448 28375 +24378 24451 24452 24379 28375 28448 28449 28376 +24379 24452 24453 24380 28376 28449 28450 28377 +24380 24453 24454 24381 28377 28450 28451 28378 +24381 24454 24455 24382 28378 28451 28452 28379 +24382 24455 24456 24383 28379 28452 28453 28380 +24383 24456 24457 24384 28380 28453 28454 28381 +24384 24457 24458 24385 28381 28454 28455 28382 +24385 24458 24459 24386 28382 28455 28456 28383 +24386 24459 24460 24387 28383 28456 28457 28384 +24387 24460 24461 24388 28384 28457 28458 28385 +24388 24461 24462 24389 28385 28458 28459 28386 +24389 24462 24463 24390 28386 28459 28460 28387 +24390 24463 24464 24391 28387 28460 28461 28388 +24391 24464 24465 24392 28388 28461 28462 28389 +24392 24465 24466 24393 28389 28462 28463 28390 +24393 24466 24467 24394 28390 28463 28464 28391 +24394 24467 24468 24395 28391 28464 28465 28392 +24395 24468 24469 24396 28392 28465 28466 28393 +24396 24469 24470 24397 28393 28466 28467 28394 +24397 24470 24471 24398 28394 28467 28468 28395 +24398 24471 24472 24399 28395 28468 28469 28396 +24399 24472 24473 24400 28396 28469 28470 28397 +24400 24473 24474 24401 28397 28470 28471 28398 +24401 24474 24475 24402 28398 28471 28472 28399 +24402 24475 24476 24403 28399 28472 28473 28400 +24403 24476 24477 24404 28400 28473 28474 28401 +24404 24477 24478 24405 28401 28474 28475 28402 +24405 24478 24479 24406 28402 28475 28476 28403 +24406 24479 24480 24407 28403 28476 28477 28404 +24408 24481 24482 24409 28405 28478 28479 28406 +24409 24482 24483 24410 28406 28479 28480 28407 +24410 24483 24484 24411 28407 28480 28481 28408 +24411 24484 24485 24412 28408 28481 28482 28409 +24412 24485 24486 24413 28409 28482 28483 28410 +24413 24486 24487 24414 28410 28483 28484 28411 +24414 24487 24488 24415 28411 28484 28485 28412 +24415 24488 24489 24416 28412 28485 28486 28413 +24416 24489 24490 24417 28413 28486 28487 28414 +24417 24490 24491 24418 28414 28487 28488 28415 +24418 24491 24492 24419 28415 28488 28489 28416 +24419 24492 24493 24420 28416 28489 28490 28417 +24420 24493 24494 24421 28417 28490 28491 28418 +24421 24494 24495 24422 28418 28491 28492 28419 +24422 24495 24496 24423 28419 28492 28493 28420 +24423 24496 24497 24424 28420 28493 28494 28421 +24424 24497 24498 24425 28421 28494 28495 28422 +24425 24498 24499 24426 28422 28495 28496 28423 +24426 24499 24500 24427 28423 28496 28497 28424 +24427 24500 24501 24428 28424 28497 28498 28425 +24428 24501 24502 24429 28425 28498 28499 28426 +24429 24502 24503 24430 28426 28499 28500 28427 +24430 24503 24504 24431 28427 28500 28501 28428 +24431 24504 24505 24432 28428 28501 28502 28429 +24432 24505 24506 24433 28429 28502 28503 28430 +24433 24506 24507 24434 28430 28503 28504 28431 +24434 24507 24508 24435 28431 28504 28505 28432 +24435 24508 24509 24436 28432 28505 28506 28433 +24436 24509 24510 24437 28433 28506 28507 28434 +24437 24510 24511 24438 28434 28507 28508 28435 +24438 24511 24512 24439 28435 28508 28509 28436 +24439 24512 24513 24440 28436 28509 28510 28437 +24440 24513 24514 24441 28437 28510 28511 28438 +24441 24514 24515 24442 28438 28511 28512 28439 +24442 24515 24516 24443 28439 28512 28513 28440 +24443 24516 24517 24444 28440 28513 28514 28441 +24444 24517 24518 24445 28441 28514 28515 28442 +24445 24518 24519 24446 28442 28515 28516 28443 +24446 24519 24520 24447 28443 28516 28517 28444 +24447 24520 24521 24448 28444 28517 28518 28445 +24448 24521 24522 24449 28445 28518 28519 28446 +24449 24522 24523 24450 28446 28519 28520 28447 +24450 24523 24524 24451 28447 28520 28521 28448 +24451 24524 24525 24452 28448 28521 28522 28449 +24452 24525 24526 24453 28449 28522 28523 28450 +24453 24526 24527 24454 28450 28523 28524 28451 +24454 24527 24528 24455 28451 28524 28525 28452 +24455 24528 24529 24456 28452 28525 28526 28453 +24456 24529 24530 24457 28453 28526 28527 28454 +24457 24530 24531 24458 28454 28527 28528 28455 +24458 24531 24532 24459 28455 28528 28529 28456 +24459 24532 24533 24460 28456 28529 28530 28457 +24460 24533 24534 24461 28457 28530 28531 28458 +24461 24534 24535 24462 28458 28531 28532 28459 +24462 24535 24536 24463 28459 28532 28533 28460 +24463 24536 24537 24464 28460 28533 28534 28461 +24464 24537 24538 24465 28461 28534 28535 28462 +24465 24538 24539 24466 28462 28535 28536 28463 +24466 24539 24540 24467 28463 28536 28537 28464 +24467 24540 24541 24468 28464 28537 28538 28465 +24468 24541 24542 24469 28465 28538 28539 28466 +24469 24542 24543 24470 28466 28539 28540 28467 +24470 24543 24544 24471 28467 28540 28541 28468 +24471 24544 24545 24472 28468 28541 28542 28469 +24472 24545 24546 24473 28469 28542 28543 28470 +24473 24546 24547 24474 28470 28543 28544 28471 +24474 24547 24548 24475 28471 28544 28545 28472 +24475 24548 24549 24476 28472 28545 28546 28473 +24476 24549 24550 24477 28473 28546 28547 28474 +24477 24550 24551 24478 28474 28547 28548 28475 +24478 24551 24552 24479 28475 28548 28549 28476 +24479 24552 24553 24480 28476 28549 28550 28477 +24481 24554 24555 24482 28478 28551 28552 28479 +24482 24555 24556 24483 28479 28552 28553 28480 +24483 24556 24557 24484 28480 28553 28554 28481 +24484 24557 24558 24485 28481 28554 28555 28482 +24485 24558 24559 24486 28482 28555 28556 28483 +24486 24559 24560 24487 28483 28556 28557 28484 +24487 24560 24561 24488 28484 28557 28558 28485 +24488 24561 24562 24489 28485 28558 28559 28486 +24489 24562 24563 24490 28486 28559 28560 28487 +24490 24563 24564 24491 28487 28560 28561 28488 +24491 24564 24565 24492 28488 28561 28562 28489 +24492 24565 24566 24493 28489 28562 28563 28490 +24493 24566 24567 24494 28490 28563 28564 28491 +24494 24567 24568 24495 28491 28564 28565 28492 +24495 24568 24569 24496 28492 28565 28566 28493 +24496 24569 24570 24497 28493 28566 28567 28494 +24497 24570 24571 24498 28494 28567 28568 28495 +24498 24571 24572 24499 28495 28568 28569 28496 +24499 24572 24573 24500 28496 28569 28570 28497 +24500 24573 24574 24501 28497 28570 28571 28498 +24501 24574 24575 24502 28498 28571 28572 28499 +24502 24575 24576 24503 28499 28572 28573 28500 +24503 24576 24577 24504 28500 28573 28574 28501 +24504 24577 24578 24505 28501 28574 28575 28502 +24505 24578 24579 24506 28502 28575 28576 28503 +24506 24579 24580 24507 28503 28576 28577 28504 +24507 24580 24581 24508 28504 28577 28578 28505 +24508 24581 24582 24509 28505 28578 28579 28506 +24509 24582 24583 24510 28506 28579 28580 28507 +24510 24583 24584 24511 28507 28580 28581 28508 +24511 24584 24585 24512 28508 28581 28582 28509 +24512 24585 24586 24513 28509 28582 28583 28510 +24513 24586 24587 24514 28510 28583 28584 28511 +24514 24587 24588 24515 28511 28584 28585 28512 +24515 24588 24589 24516 28512 28585 28586 28513 +24516 24589 24590 24517 28513 28586 28587 28514 +24517 24590 24591 24518 28514 28587 28588 28515 +24518 24591 24592 24519 28515 28588 28589 28516 +24519 24592 24593 24520 28516 28589 28590 28517 +24520 24593 24594 24521 28517 28590 28591 28518 +24521 24594 24595 24522 28518 28591 28592 28519 +24522 24595 24596 24523 28519 28592 28593 28520 +24523 24596 24597 24524 28520 28593 28594 28521 +24524 24597 24598 24525 28521 28594 28595 28522 +24525 24598 24599 24526 28522 28595 28596 28523 +24526 24599 24600 24527 28523 28596 28597 28524 +24527 24600 24601 24528 28524 28597 28598 28525 +24528 24601 24602 24529 28525 28598 28599 28526 +24529 24602 24603 24530 28526 28599 28600 28527 +24530 24603 24604 24531 28527 28600 28601 28528 +24531 24604 24605 24532 28528 28601 28602 28529 +24532 24605 24606 24533 28529 28602 28603 28530 +24533 24606 24607 24534 28530 28603 28604 28531 +24534 24607 24608 24535 28531 28604 28605 28532 +24535 24608 24609 24536 28532 28605 28606 28533 +24536 24609 24610 24537 28533 28606 28607 28534 +24537 24610 24611 24538 28534 28607 28608 28535 +24538 24611 24612 24539 28535 28608 28609 28536 +24539 24612 24613 24540 28536 28609 28610 28537 +24540 24613 24614 24541 28537 28610 28611 28538 +24541 24614 24615 24542 28538 28611 28612 28539 +24542 24615 24616 24543 28539 28612 28613 28540 +24543 24616 24617 24544 28540 28613 28614 28541 +24544 24617 24618 24545 28541 28614 28615 28542 +24545 24618 24619 24546 28542 28615 28616 28543 +24546 24619 24620 24547 28543 28616 28617 28544 +24547 24620 24621 24548 28544 28617 28618 28545 +24548 24621 24622 24549 28545 28618 28619 28546 +24549 24622 24623 24550 28546 28619 28620 28547 +24550 24623 24624 24551 28547 28620 28621 28548 +24551 24624 24625 24552 28548 28621 28622 28549 +24552 24625 24626 24553 28549 28622 28623 28550 +24554 24627 24628 24555 28551 28624 28625 28552 +24555 24628 24629 24556 28552 28625 28626 28553 +24556 24629 24630 24557 28553 28626 28627 28554 +24557 24630 24631 24558 28554 28627 28628 28555 +24558 24631 24632 24559 28555 28628 28629 28556 +24559 24632 24633 24560 28556 28629 28630 28557 +24560 24633 24634 24561 28557 28630 28631 28558 +24561 24634 24635 24562 28558 28631 28632 28559 +24562 24635 24636 24563 28559 28632 28633 28560 +24563 24636 24637 24564 28560 28633 28634 28561 +24564 24637 24638 24565 28561 28634 28635 28562 +24565 24638 24639 24566 28562 28635 28636 28563 +24566 24639 24640 24567 28563 28636 28637 28564 +24567 24640 24641 24568 28564 28637 28638 28565 +24568 24641 24642 24569 28565 28638 28639 28566 +24569 24642 24643 24570 28566 28639 28640 28567 +24570 24643 24644 24571 28567 28640 28641 28568 +24571 24644 24645 24572 28568 28641 28642 28569 +24572 24645 24646 24573 28569 28642 28643 28570 +24573 24646 24647 24574 28570 28643 28644 28571 +24574 24647 24648 24575 28571 28644 28645 28572 +24575 24648 24649 24576 28572 28645 28646 28573 +24576 24649 24650 24577 28573 28646 28647 28574 +24577 24650 24651 24578 28574 28647 28648 28575 +24578 24651 24652 24579 28575 28648 28649 28576 +24579 24652 24653 24580 28576 28649 28650 28577 +24580 24653 24654 24581 28577 28650 28651 28578 +24581 24654 24655 24582 28578 28651 28652 28579 +24582 24655 24656 24583 28579 28652 28653 28580 +24583 24656 24657 24584 28580 28653 28654 28581 +24584 24657 24658 24585 28581 28654 28655 28582 +24585 24658 24659 24586 28582 28655 28656 28583 +24586 24659 24660 24587 28583 28656 28657 28584 +24587 24660 24661 24588 28584 28657 28658 28585 +24588 24661 24662 24589 28585 28658 28659 28586 +24589 24662 24663 24590 28586 28659 28660 28587 +24590 24663 24664 24591 28587 28660 28661 28588 +24591 24664 24665 24592 28588 28661 28662 28589 +24592 24665 24666 24593 28589 28662 28663 28590 +24593 24666 24667 24594 28590 28663 28664 28591 +24594 24667 24668 24595 28591 28664 28665 28592 +24595 24668 24669 24596 28592 28665 28666 28593 +24596 24669 24670 24597 28593 28666 28667 28594 +24597 24670 24671 24598 28594 28667 28668 28595 +24598 24671 24672 24599 28595 28668 28669 28596 +24599 24672 24673 24600 28596 28669 28670 28597 +24600 24673 24674 24601 28597 28670 28671 28598 +24601 24674 24675 24602 28598 28671 28672 28599 +24602 24675 24676 24603 28599 28672 28673 28600 +24603 24676 24677 24604 28600 28673 28674 28601 +24604 24677 24678 24605 28601 28674 28675 28602 +24605 24678 24679 24606 28602 28675 28676 28603 +24606 24679 24680 24607 28603 28676 28677 28604 +24607 24680 24681 24608 28604 28677 28678 28605 +24608 24681 24682 24609 28605 28678 28679 28606 +24609 24682 24683 24610 28606 28679 28680 28607 +24610 24683 24684 24611 28607 28680 28681 28608 +24611 24684 24685 24612 28608 28681 28682 28609 +24612 24685 24686 24613 28609 28682 28683 28610 +24613 24686 24687 24614 28610 28683 28684 28611 +24614 24687 24688 24615 28611 28684 28685 28612 +24615 24688 24689 24616 28612 28685 28686 28613 +24616 24689 24690 24617 28613 28686 28687 28614 +24617 24690 24691 24618 28614 28687 28688 28615 +24618 24691 24692 24619 28615 28688 28689 28616 +24619 24692 24693 24620 28616 28689 28690 28617 +24620 24693 24694 24621 28617 28690 28691 28618 +24621 24694 24695 24622 28618 28691 28692 28619 +24622 24695 24696 24623 28619 28692 28693 28620 +24623 24696 24697 24624 28620 28693 28694 28621 +24624 24697 24698 24625 28621 28694 28695 28622 +24625 24698 24699 24626 28622 28695 28696 28623 +24627 24700 24701 24628 28624 28697 28698 28625 +24628 24701 24702 24629 28625 28698 28699 28626 +24629 24702 24703 24630 28626 28699 28700 28627 +24630 24703 24704 24631 28627 28700 28701 28628 +24631 24704 24705 24632 28628 28701 28702 28629 +24632 24705 24706 24633 28629 28702 28703 28630 +24633 24706 24707 24634 28630 28703 28704 28631 +24634 24707 24708 24635 28631 28704 28705 28632 +24635 24708 24709 24636 28632 28705 28706 28633 +24636 24709 24710 24637 28633 28706 28707 28634 +24637 24710 24711 24638 28634 28707 28708 28635 +24638 24711 24712 24639 28635 28708 28709 28636 +24639 24712 24713 24640 28636 28709 28710 28637 +24640 24713 24714 24641 28637 28710 28711 28638 +24641 24714 24715 24642 28638 28711 28712 28639 +24642 24715 24716 24643 28639 28712 28713 28640 +24643 24716 24717 24644 28640 28713 28714 28641 +24644 24717 24718 24645 28641 28714 28715 28642 +24645 24718 24719 24646 28642 28715 28716 28643 +24646 24719 24720 24647 28643 28716 28717 28644 +24647 24720 24721 24648 28644 28717 28718 28645 +24648 24721 24722 24649 28645 28718 28719 28646 +24649 24722 24723 24650 28646 28719 28720 28647 +24650 24723 24724 24651 28647 28720 28721 28648 +24651 24724 24725 24652 28648 28721 28722 28649 +24652 24725 24726 24653 28649 28722 28723 28650 +24653 24726 24727 24654 28650 28723 28724 28651 +24654 24727 24728 24655 28651 28724 28725 28652 +24655 24728 24729 24656 28652 28725 28726 28653 +24656 24729 24730 24657 28653 28726 28727 28654 +24657 24730 24731 24658 28654 28727 28728 28655 +24658 24731 24732 24659 28655 28728 28729 28656 +24659 24732 24733 24660 28656 28729 28730 28657 +24660 24733 24734 24661 28657 28730 28731 28658 +24661 24734 24735 24662 28658 28731 28732 28659 +24662 24735 24736 24663 28659 28732 28733 28660 +24663 24736 24737 24664 28660 28733 28734 28661 +24664 24737 24738 24665 28661 28734 28735 28662 +24665 24738 24739 24666 28662 28735 28736 28663 +24666 24739 24740 24667 28663 28736 28737 28664 +24667 24740 24741 24668 28664 28737 28738 28665 +24668 24741 24742 24669 28665 28738 28739 28666 +24669 24742 24743 24670 28666 28739 28740 28667 +24670 24743 24744 24671 28667 28740 28741 28668 +24671 24744 24745 24672 28668 28741 28742 28669 +24672 24745 24746 24673 28669 28742 28743 28670 +24673 24746 24747 24674 28670 28743 28744 28671 +24674 24747 24748 24675 28671 28744 28745 28672 +24675 24748 24749 24676 28672 28745 28746 28673 +24676 24749 24750 24677 28673 28746 28747 28674 +24677 24750 24751 24678 28674 28747 28748 28675 +24678 24751 24752 24679 28675 28748 28749 28676 +24679 24752 24753 24680 28676 28749 28750 28677 +24680 24753 24754 24681 28677 28750 28751 28678 +24681 24754 24755 24682 28678 28751 28752 28679 +24682 24755 24756 24683 28679 28752 28753 28680 +24683 24756 24757 24684 28680 28753 28754 28681 +24684 24757 24758 24685 28681 28754 28755 28682 +24685 24758 24759 24686 28682 28755 28756 28683 +24686 24759 24760 24687 28683 28756 28757 28684 +24687 24760 24761 24688 28684 28757 28758 28685 +24688 24761 24762 24689 28685 28758 28759 28686 +24689 24762 24763 24690 28686 28759 28760 28687 +24690 24763 24764 24691 28687 28760 28761 28688 +24691 24764 24765 24692 28688 28761 28762 28689 +24692 24765 24766 24693 28689 28762 28763 28690 +24693 24766 24767 24694 28690 28763 28764 28691 +24694 24767 24768 24695 28691 28764 28765 28692 +24695 24768 24769 24696 28692 28765 28766 28693 +24696 24769 24770 24697 28693 28766 28767 28694 +24697 24770 24771 24698 28694 28767 28768 28695 +24698 24771 24772 24699 28695 28768 28769 28696 +24700 24773 24774 24701 28697 28770 28771 28698 +24701 24774 24775 24702 28698 28771 28772 28699 +24702 24775 24776 24703 28699 28772 28773 28700 +24703 24776 24777 24704 28700 28773 28774 28701 +24704 24777 24778 24705 28701 28774 28775 28702 +24705 24778 24779 24706 28702 28775 28776 28703 +24706 24779 24780 24707 28703 28776 28777 28704 +24707 24780 24781 24708 28704 28777 28778 28705 +24708 24781 24782 24709 28705 28778 28779 28706 +24709 24782 24783 24710 28706 28779 28780 28707 +24710 24783 24784 24711 28707 28780 28781 28708 +24711 24784 24785 24712 28708 28781 28782 28709 +24712 24785 24786 24713 28709 28782 28783 28710 +24713 24786 24787 24714 28710 28783 28784 28711 +24714 24787 24788 24715 28711 28784 28785 28712 +24715 24788 24789 24716 28712 28785 28786 28713 +24716 24789 24790 24717 28713 28786 28787 28714 +24717 24790 24791 24718 28714 28787 28788 28715 +24718 24791 24792 24719 28715 28788 28789 28716 +24719 24792 24793 24720 28716 28789 28790 28717 +24720 24793 24794 24721 28717 28790 28791 28718 +24721 24794 24795 24722 28718 28791 28792 28719 +24722 24795 24796 24723 28719 28792 28793 28720 +24723 24796 24797 24724 28720 28793 28794 28721 +24724 24797 24798 24725 28721 28794 28795 28722 +24725 24798 24799 24726 28722 28795 28796 28723 +24726 24799 24800 24727 28723 28796 28797 28724 +24727 24800 24801 24728 28724 28797 28798 28725 +24728 24801 24802 24729 28725 28798 28799 28726 +24729 24802 24803 24730 28726 28799 28800 28727 +24730 24803 24804 24731 28727 28800 28801 28728 +24731 24804 24805 24732 28728 28801 28802 28729 +24732 24805 24806 24733 28729 28802 28803 28730 +24733 24806 24807 24734 28730 28803 28804 28731 +24734 24807 24808 24735 28731 28804 28805 28732 +24735 24808 24809 24736 28732 28805 28806 28733 +24736 24809 24810 24737 28733 28806 28807 28734 +24737 24810 24811 24738 28734 28807 28808 28735 +24738 24811 24812 24739 28735 28808 28809 28736 +24739 24812 24813 24740 28736 28809 28810 28737 +24740 24813 24814 24741 28737 28810 28811 28738 +24741 24814 24815 24742 28738 28811 28812 28739 +24742 24815 24816 24743 28739 28812 28813 28740 +24743 24816 24817 24744 28740 28813 28814 28741 +24744 24817 24818 24745 28741 28814 28815 28742 +24745 24818 24819 24746 28742 28815 28816 28743 +24746 24819 24820 24747 28743 28816 28817 28744 +24747 24820 24821 24748 28744 28817 28818 28745 +24748 24821 24822 24749 28745 28818 28819 28746 +24749 24822 24823 24750 28746 28819 28820 28747 +24750 24823 24824 24751 28747 28820 28821 28748 +24751 24824 24825 24752 28748 28821 28822 28749 +24752 24825 24826 24753 28749 28822 28823 28750 +24753 24826 24827 24754 28750 28823 28824 28751 +24754 24827 24828 24755 28751 28824 28825 28752 +24755 24828 24829 24756 28752 28825 28826 28753 +24756 24829 24830 24757 28753 28826 28827 28754 +24757 24830 24831 24758 28754 28827 28828 28755 +24758 24831 24832 24759 28755 28828 28829 28756 +24759 24832 24833 24760 28756 28829 28830 28757 +24760 24833 24834 24761 28757 28830 28831 28758 +24761 24834 24835 24762 28758 28831 28832 28759 +24762 24835 24836 24763 28759 28832 28833 28760 +24763 24836 24837 24764 28760 28833 28834 28761 +24764 24837 24838 24765 28761 28834 28835 28762 +24765 24838 24839 24766 28762 28835 28836 28763 +24766 24839 24840 24767 28763 28836 28837 28764 +24767 24840 24841 24768 28764 28837 28838 28765 +24768 24841 24842 24769 28765 28838 28839 28766 +24769 24842 24843 24770 28766 28839 28840 28767 +24770 24843 24844 24771 28767 28840 28841 28768 +24771 24844 24845 24772 28768 28841 28842 28769 +24773 24846 24847 24774 28770 28843 28844 28771 +24774 24847 24848 24775 28771 28844 28845 28772 +24775 24848 24849 24776 28772 28845 28846 28773 +24776 24849 24850 24777 28773 28846 28847 28774 +24777 24850 24851 24778 28774 28847 28848 28775 +24778 24851 24852 24779 28775 28848 28849 28776 +24779 24852 24853 24780 28776 28849 28850 28777 +24780 24853 24854 24781 28777 28850 28851 28778 +24781 24854 24855 24782 28778 28851 28852 28779 +24782 24855 24856 24783 28779 28852 28853 28780 +24783 24856 24857 24784 28780 28853 28854 28781 +24784 24857 24858 24785 28781 28854 28855 28782 +24785 24858 24859 24786 28782 28855 28856 28783 +24786 24859 24860 24787 28783 28856 28857 28784 +24787 24860 24861 24788 28784 28857 28858 28785 +24788 24861 24862 24789 28785 28858 28859 28786 +24789 24862 24863 24790 28786 28859 28860 28787 +24790 24863 24864 24791 28787 28860 28861 28788 +24791 24864 24865 24792 28788 28861 28862 28789 +24792 24865 24866 24793 28789 28862 28863 28790 +24793 24866 24867 24794 28790 28863 28864 28791 +24794 24867 24868 24795 28791 28864 28865 28792 +24795 24868 24869 24796 28792 28865 28866 28793 +24796 24869 24870 24797 28793 28866 28867 28794 +24797 24870 24871 24798 28794 28867 28868 28795 +24798 24871 24872 24799 28795 28868 28869 28796 +24799 24872 24873 24800 28796 28869 28870 28797 +24800 24873 24874 24801 28797 28870 28871 28798 +24801 24874 24875 24802 28798 28871 28872 28799 +24802 24875 24876 24803 28799 28872 28873 28800 +24803 24876 24877 24804 28800 28873 28874 28801 +24804 24877 24878 24805 28801 28874 28875 28802 +24805 24878 24879 24806 28802 28875 28876 28803 +24806 24879 24880 24807 28803 28876 28877 28804 +24807 24880 24881 24808 28804 28877 28878 28805 +24808 24881 24882 24809 28805 28878 28879 28806 +24809 24882 24883 24810 28806 28879 28880 28807 +24810 24883 24884 24811 28807 28880 28881 28808 +24811 24884 24885 24812 28808 28881 28882 28809 +24812 24885 24886 24813 28809 28882 28883 28810 +24813 24886 24887 24814 28810 28883 28884 28811 +24814 24887 24888 24815 28811 28884 28885 28812 +24815 24888 24889 24816 28812 28885 28886 28813 +24816 24889 24890 24817 28813 28886 28887 28814 +24817 24890 24891 24818 28814 28887 28888 28815 +24818 24891 24892 24819 28815 28888 28889 28816 +24819 24892 24893 24820 28816 28889 28890 28817 +24820 24893 24894 24821 28817 28890 28891 28818 +24821 24894 24895 24822 28818 28891 28892 28819 +24822 24895 24896 24823 28819 28892 28893 28820 +24823 24896 24897 24824 28820 28893 28894 28821 +24824 24897 24898 24825 28821 28894 28895 28822 +24825 24898 24899 24826 28822 28895 28896 28823 +24826 24899 24900 24827 28823 28896 28897 28824 +24827 24900 24901 24828 28824 28897 28898 28825 +24828 24901 24902 24829 28825 28898 28899 28826 +24829 24902 24903 24830 28826 28899 28900 28827 +24830 24903 24904 24831 28827 28900 28901 28828 +24831 24904 24905 24832 28828 28901 28902 28829 +24832 24905 24906 24833 28829 28902 28903 28830 +24833 24906 24907 24834 28830 28903 28904 28831 +24834 24907 24908 24835 28831 28904 28905 28832 +24835 24908 24909 24836 28832 28905 28906 28833 +24836 24909 24910 24837 28833 28906 28907 28834 +24837 24910 24911 24838 28834 28907 28908 28835 +24838 24911 24912 24839 28835 28908 28909 28836 +24839 24912 24913 24840 28836 28909 28910 28837 +24840 24913 24914 24841 28837 28910 28911 28838 +24841 24914 24915 24842 28838 28911 28912 28839 +24842 24915 24916 24843 28839 28912 28913 28840 +24843 24916 24917 24844 28840 28913 28914 28841 +24844 24917 24918 24845 28841 28914 28915 28842 +24846 24919 24920 24847 28843 28916 28917 28844 +24847 24920 24921 24848 28844 28917 28918 28845 +24848 24921 24922 24849 28845 28918 28919 28846 +24849 24922 24923 24850 28846 28919 28920 28847 +24850 24923 24924 24851 28847 28920 28921 28848 +24851 24924 24925 24852 28848 28921 28922 28849 +24852 24925 24926 24853 28849 28922 28923 28850 +24853 24926 24927 24854 28850 28923 28924 28851 +24854 24927 24928 24855 28851 28924 28925 28852 +24855 24928 24929 24856 28852 28925 28926 28853 +24856 24929 24930 24857 28853 28926 28927 28854 +24857 24930 24931 24858 28854 28927 28928 28855 +24858 24931 24932 24859 28855 28928 28929 28856 +24859 24932 24933 24860 28856 28929 28930 28857 +24860 24933 24934 24861 28857 28930 28931 28858 +24861 24934 24935 24862 28858 28931 28932 28859 +24862 24935 24936 24863 28859 28932 28933 28860 +24863 24936 24937 24864 28860 28933 28934 28861 +24864 24937 24938 24865 28861 28934 28935 28862 +24865 24938 24939 24866 28862 28935 28936 28863 +24866 24939 24940 24867 28863 28936 28937 28864 +24867 24940 24941 24868 28864 28937 28938 28865 +24868 24941 24942 24869 28865 28938 28939 28866 +24869 24942 24943 24870 28866 28939 28940 28867 +24870 24943 24944 24871 28867 28940 28941 28868 +24871 24944 24945 24872 28868 28941 28942 28869 +24872 24945 24946 24873 28869 28942 28943 28870 +24873 24946 24947 24874 28870 28943 28944 28871 +24874 24947 24948 24875 28871 28944 28945 28872 +24875 24948 24949 24876 28872 28945 28946 28873 +24876 24949 24950 24877 28873 28946 28947 28874 +24877 24950 24951 24878 28874 28947 28948 28875 +24878 24951 24952 24879 28875 28948 28949 28876 +24879 24952 24953 24880 28876 28949 28950 28877 +24880 24953 24954 24881 28877 28950 28951 28878 +24881 24954 24955 24882 28878 28951 28952 28879 +24882 24955 24956 24883 28879 28952 28953 28880 +24883 24956 24957 24884 28880 28953 28954 28881 +24884 24957 24958 24885 28881 28954 28955 28882 +24885 24958 24959 24886 28882 28955 28956 28883 +24886 24959 24960 24887 28883 28956 28957 28884 +24887 24960 24961 24888 28884 28957 28958 28885 +24888 24961 24962 24889 28885 28958 28959 28886 +24889 24962 24963 24890 28886 28959 28960 28887 +24890 24963 24964 24891 28887 28960 28961 28888 +24891 24964 24965 24892 28888 28961 28962 28889 +24892 24965 24966 24893 28889 28962 28963 28890 +24893 24966 24967 24894 28890 28963 28964 28891 +24894 24967 24968 24895 28891 28964 28965 28892 +24895 24968 24969 24896 28892 28965 28966 28893 +24896 24969 24970 24897 28893 28966 28967 28894 +24897 24970 24971 24898 28894 28967 28968 28895 +24898 24971 24972 24899 28895 28968 28969 28896 +24899 24972 24973 24900 28896 28969 28970 28897 +24900 24973 24974 24901 28897 28970 28971 28898 +24901 24974 24975 24902 28898 28971 28972 28899 +24902 24975 24976 24903 28899 28972 28973 28900 +24903 24976 24977 24904 28900 28973 28974 28901 +24904 24977 24978 24905 28901 28974 28975 28902 +24905 24978 24979 24906 28902 28975 28976 28903 +24906 24979 24980 24907 28903 28976 28977 28904 +24907 24980 24981 24908 28904 28977 28978 28905 +24908 24981 24982 24909 28905 28978 28979 28906 +24909 24982 24983 24910 28906 28979 28980 28907 +24910 24983 24984 24911 28907 28980 28981 28908 +24911 24984 24985 24912 28908 28981 28982 28909 +24912 24985 24986 24913 28909 28982 28983 28910 +24913 24986 24987 24914 28910 28983 28984 28911 +24914 24987 24988 24915 28911 28984 28985 28912 +24915 24988 24989 24916 28912 28985 28986 28913 +24916 24989 24990 24917 28913 28986 28987 28914 +24917 24990 24991 24918 28914 28987 28988 28915 +24919 24992 24993 24920 28916 28989 28990 28917 +24920 24993 24994 24921 28917 28990 28991 28918 +24921 24994 24995 24922 28918 28991 28992 28919 +24922 24995 24996 24923 28919 28992 28993 28920 +24923 24996 24997 24924 28920 28993 28994 28921 +24924 24997 24998 24925 28921 28994 28995 28922 +24925 24998 24999 24926 28922 28995 28996 28923 +24926 24999 25000 24927 28923 28996 28997 28924 +24927 25000 25001 24928 28924 28997 28998 28925 +24928 25001 25002 24929 28925 28998 28999 28926 +24929 25002 25003 24930 28926 28999 29000 28927 +24930 25003 25004 24931 28927 29000 29001 28928 +24931 25004 25005 24932 28928 29001 29002 28929 +24932 25005 25006 24933 28929 29002 29003 28930 +24933 25006 25007 24934 28930 29003 29004 28931 +24934 25007 25008 24935 28931 29004 29005 28932 +24935 25008 25009 24936 28932 29005 29006 28933 +24936 25009 25010 24937 28933 29006 29007 28934 +24937 25010 25011 24938 28934 29007 29008 28935 +24938 25011 25012 24939 28935 29008 29009 28936 +24939 25012 25013 24940 28936 29009 29010 28937 +24940 25013 25014 24941 28937 29010 29011 28938 +24941 25014 25015 24942 28938 29011 29012 28939 +24942 25015 25016 24943 28939 29012 29013 28940 +24943 25016 25017 24944 28940 29013 29014 28941 +24944 25017 25018 24945 28941 29014 29015 28942 +24945 25018 25019 24946 28942 29015 29016 28943 +24946 25019 25020 24947 28943 29016 29017 28944 +24947 25020 25021 24948 28944 29017 29018 28945 +24948 25021 25022 24949 28945 29018 29019 28946 +24949 25022 25023 24950 28946 29019 29020 28947 +24950 25023 25024 24951 28947 29020 29021 28948 +24951 25024 25025 24952 28948 29021 29022 28949 +24952 25025 25026 24953 28949 29022 29023 28950 +24953 25026 25027 24954 28950 29023 29024 28951 +24954 25027 25028 24955 28951 29024 29025 28952 +24955 25028 25029 24956 28952 29025 29026 28953 +24956 25029 25030 24957 28953 29026 29027 28954 +24957 25030 25031 24958 28954 29027 29028 28955 +24958 25031 25032 24959 28955 29028 29029 28956 +24959 25032 25033 24960 28956 29029 29030 28957 +24960 25033 25034 24961 28957 29030 29031 28958 +24961 25034 25035 24962 28958 29031 29032 28959 +24962 25035 25036 24963 28959 29032 29033 28960 +24963 25036 25037 24964 28960 29033 29034 28961 +24964 25037 25038 24965 28961 29034 29035 28962 +24965 25038 25039 24966 28962 29035 29036 28963 +24966 25039 25040 24967 28963 29036 29037 28964 +24967 25040 25041 24968 28964 29037 29038 28965 +24968 25041 25042 24969 28965 29038 29039 28966 +24969 25042 25043 24970 28966 29039 29040 28967 +24970 25043 25044 24971 28967 29040 29041 28968 +24971 25044 25045 24972 28968 29041 29042 28969 +24972 25045 25046 24973 28969 29042 29043 28970 +24973 25046 25047 24974 28970 29043 29044 28971 +24974 25047 25048 24975 28971 29044 29045 28972 +24975 25048 25049 24976 28972 29045 29046 28973 +24976 25049 25050 24977 28973 29046 29047 28974 +24977 25050 25051 24978 28974 29047 29048 28975 +24978 25051 25052 24979 28975 29048 29049 28976 +24979 25052 25053 24980 28976 29049 29050 28977 +24980 25053 25054 24981 28977 29050 29051 28978 +24981 25054 25055 24982 28978 29051 29052 28979 +24982 25055 25056 24983 28979 29052 29053 28980 +24983 25056 25057 24984 28980 29053 29054 28981 +24984 25057 25058 24985 28981 29054 29055 28982 +24985 25058 25059 24986 28982 29055 29056 28983 +24986 25059 25060 24987 28983 29056 29057 28984 +24987 25060 25061 24988 28984 29057 29058 28985 +24988 25061 25062 24989 28985 29058 29059 28986 +24989 25062 25063 24990 28986 29059 29060 28987 +24990 25063 25064 24991 28987 29060 29061 28988 +24992 25065 25066 24993 28989 29062 29063 28990 +24993 25066 25067 24994 28990 29063 29064 28991 +24994 25067 25068 24995 28991 29064 29065 28992 +24995 25068 25069 24996 28992 29065 29066 28993 +24996 25069 25070 24997 28993 29066 29067 28994 +24997 25070 25071 24998 28994 29067 29068 28995 +24998 25071 25072 24999 28995 29068 29069 28996 +24999 25072 25073 25000 28996 29069 29070 28997 +25000 25073 25074 25001 28997 29070 29071 28998 +25001 25074 25075 25002 28998 29071 29072 28999 +25002 25075 25076 25003 28999 29072 29073 29000 +25003 25076 25077 25004 29000 29073 29074 29001 +25004 25077 25078 25005 29001 29074 29075 29002 +25005 25078 25079 25006 29002 29075 29076 29003 +25006 25079 25080 25007 29003 29076 29077 29004 +25007 25080 25081 25008 29004 29077 29078 29005 +25008 25081 25082 25009 29005 29078 29079 29006 +25009 25082 25083 25010 29006 29079 29080 29007 +25010 25083 25084 25011 29007 29080 29081 29008 +25011 25084 25085 25012 29008 29081 29082 29009 +25012 25085 25086 25013 29009 29082 29083 29010 +25013 25086 25087 25014 29010 29083 29084 29011 +25014 25087 25088 25015 29011 29084 29085 29012 +25015 25088 25089 25016 29012 29085 29086 29013 +25016 25089 25090 25017 29013 29086 29087 29014 +25017 25090 25091 25018 29014 29087 29088 29015 +25018 25091 25092 25019 29015 29088 29089 29016 +25019 25092 25093 25020 29016 29089 29090 29017 +25020 25093 25094 25021 29017 29090 29091 29018 +25021 25094 25095 25022 29018 29091 29092 29019 +25022 25095 25096 25023 29019 29092 29093 29020 +25023 25096 25097 25024 29020 29093 29094 29021 +25024 25097 25098 25025 29021 29094 29095 29022 +25025 25098 25099 25026 29022 29095 29096 29023 +25026 25099 25100 25027 29023 29096 29097 29024 +25027 25100 25101 25028 29024 29097 29098 29025 +25028 25101 25102 25029 29025 29098 29099 29026 +25029 25102 25103 25030 29026 29099 29100 29027 +25030 25103 25104 25031 29027 29100 29101 29028 +25031 25104 25105 25032 29028 29101 29102 29029 +25032 25105 25106 25033 29029 29102 29103 29030 +25033 25106 25107 25034 29030 29103 29104 29031 +25034 25107 25108 25035 29031 29104 29105 29032 +25035 25108 25109 25036 29032 29105 29106 29033 +25036 25109 25110 25037 29033 29106 29107 29034 +25037 25110 25111 25038 29034 29107 29108 29035 +25038 25111 25112 25039 29035 29108 29109 29036 +25039 25112 25113 25040 29036 29109 29110 29037 +25040 25113 25114 25041 29037 29110 29111 29038 +25041 25114 25115 25042 29038 29111 29112 29039 +25042 25115 25116 25043 29039 29112 29113 29040 +25043 25116 25117 25044 29040 29113 29114 29041 +25044 25117 25118 25045 29041 29114 29115 29042 +25045 25118 25119 25046 29042 29115 29116 29043 +25046 25119 25120 25047 29043 29116 29117 29044 +25047 25120 25121 25048 29044 29117 29118 29045 +25048 25121 25122 25049 29045 29118 29119 29046 +25049 25122 25123 25050 29046 29119 29120 29047 +25050 25123 25124 25051 29047 29120 29121 29048 +25051 25124 25125 25052 29048 29121 29122 29049 +25052 25125 25126 25053 29049 29122 29123 29050 +25053 25126 25127 25054 29050 29123 29124 29051 +25054 25127 25128 25055 29051 29124 29125 29052 +25055 25128 25129 25056 29052 29125 29126 29053 +25056 25129 25130 25057 29053 29126 29127 29054 +25057 25130 25131 25058 29054 29127 29128 29055 +25058 25131 25132 25059 29055 29128 29129 29056 +25059 25132 25133 25060 29056 29129 29130 29057 +25060 25133 25134 25061 29057 29130 29131 29058 +25061 25134 25135 25062 29058 29131 29132 29059 +25062 25135 25136 25063 29059 29132 29133 29060 +25063 25136 25137 25064 29060 29133 29134 29061 +25065 25138 25139 25066 29062 29135 29136 29063 +25066 25139 25140 25067 29063 29136 29137 29064 +25067 25140 25141 25068 29064 29137 29138 29065 +25068 25141 25142 25069 29065 29138 29139 29066 +25069 25142 25143 25070 29066 29139 29140 29067 +25070 25143 25144 25071 29067 29140 29141 29068 +25071 25144 25145 25072 29068 29141 29142 29069 +25072 25145 25146 25073 29069 29142 29143 29070 +25073 25146 25147 25074 29070 29143 29144 29071 +25074 25147 25148 25075 29071 29144 29145 29072 +25075 25148 25149 25076 29072 29145 29146 29073 +25076 25149 25150 25077 29073 29146 29147 29074 +25077 25150 25151 25078 29074 29147 29148 29075 +25078 25151 25152 25079 29075 29148 29149 29076 +25079 25152 25153 25080 29076 29149 29150 29077 +25080 25153 25154 25081 29077 29150 29151 29078 +25081 25154 25155 25082 29078 29151 29152 29079 +25082 25155 25156 25083 29079 29152 29153 29080 +25083 25156 25157 25084 29080 29153 29154 29081 +25084 25157 25158 25085 29081 29154 29155 29082 +25085 25158 25159 25086 29082 29155 29156 29083 +25086 25159 25160 25087 29083 29156 29157 29084 +25087 25160 25161 25088 29084 29157 29158 29085 +25088 25161 25162 25089 29085 29158 29159 29086 +25089 25162 25163 25090 29086 29159 29160 29087 +25090 25163 25164 25091 29087 29160 29161 29088 +25091 25164 25165 25092 29088 29161 29162 29089 +25092 25165 25166 25093 29089 29162 29163 29090 +25093 25166 25167 25094 29090 29163 29164 29091 +25094 25167 25168 25095 29091 29164 29165 29092 +25095 25168 25169 25096 29092 29165 29166 29093 +25096 25169 25170 25097 29093 29166 29167 29094 +25097 25170 25171 25098 29094 29167 29168 29095 +25098 25171 25172 25099 29095 29168 29169 29096 +25099 25172 25173 25100 29096 29169 29170 29097 +25100 25173 25174 25101 29097 29170 29171 29098 +25101 25174 25175 25102 29098 29171 29172 29099 +25102 25175 25176 25103 29099 29172 29173 29100 +25103 25176 25177 25104 29100 29173 29174 29101 +25104 25177 25178 25105 29101 29174 29175 29102 +25105 25178 25179 25106 29102 29175 29176 29103 +25106 25179 25180 25107 29103 29176 29177 29104 +25107 25180 25181 25108 29104 29177 29178 29105 +25108 25181 25182 25109 29105 29178 29179 29106 +25109 25182 25183 25110 29106 29179 29180 29107 +25110 25183 25184 25111 29107 29180 29181 29108 +25111 25184 25185 25112 29108 29181 29182 29109 +25112 25185 25186 25113 29109 29182 29183 29110 +25113 25186 25187 25114 29110 29183 29184 29111 +25114 25187 25188 25115 29111 29184 29185 29112 +25115 25188 25189 25116 29112 29185 29186 29113 +25116 25189 25190 25117 29113 29186 29187 29114 +25117 25190 25191 25118 29114 29187 29188 29115 +25118 25191 25192 25119 29115 29188 29189 29116 +25119 25192 25193 25120 29116 29189 29190 29117 +25120 25193 25194 25121 29117 29190 29191 29118 +25121 25194 25195 25122 29118 29191 29192 29119 +25122 25195 25196 25123 29119 29192 29193 29120 +25123 25196 25197 25124 29120 29193 29194 29121 +25124 25197 25198 25125 29121 29194 29195 29122 +25125 25198 25199 25126 29122 29195 29196 29123 +25126 25199 25200 25127 29123 29196 29197 29124 +25127 25200 25201 25128 29124 29197 29198 29125 +25128 25201 25202 25129 29125 29198 29199 29126 +25129 25202 25203 25130 29126 29199 29200 29127 +25130 25203 25204 25131 29127 29200 29201 29128 +25131 25204 25205 25132 29128 29201 29202 29129 +25132 25205 25206 25133 29129 29202 29203 29130 +25133 25206 25207 25134 29130 29203 29204 29131 +25134 25207 25208 25135 29131 29204 29205 29132 +25135 25208 25209 25136 29132 29205 29206 29133 +25136 25209 25210 25137 29133 29206 29207 29134 +25138 25211 25212 25139 29135 29208 29209 29136 +25139 25212 25213 25140 29136 29209 29210 29137 +25140 25213 25214 25141 29137 29210 29211 29138 +25141 25214 25215 25142 29138 29211 29212 29139 +25142 25215 25216 25143 29139 29212 29213 29140 +25143 25216 25217 25144 29140 29213 29214 29141 +25144 25217 25218 25145 29141 29214 29215 29142 +25145 25218 25219 25146 29142 29215 29216 29143 +25146 25219 25220 25147 29143 29216 29217 29144 +25147 25220 25221 25148 29144 29217 29218 29145 +25148 25221 25222 25149 29145 29218 29219 29146 +25149 25222 25223 25150 29146 29219 29220 29147 +25150 25223 25224 25151 29147 29220 29221 29148 +25151 25224 25225 25152 29148 29221 29222 29149 +25152 25225 25226 25153 29149 29222 29223 29150 +25153 25226 25227 25154 29150 29223 29224 29151 +25154 25227 25228 25155 29151 29224 29225 29152 +25155 25228 25229 25156 29152 29225 29226 29153 +25156 25229 25230 25157 29153 29226 29227 29154 +25157 25230 25231 25158 29154 29227 29228 29155 +25158 25231 25232 25159 29155 29228 29229 29156 +25159 25232 25233 25160 29156 29229 29230 29157 +25160 25233 25234 25161 29157 29230 29231 29158 +25161 25234 25235 25162 29158 29231 29232 29159 +25162 25235 25236 25163 29159 29232 29233 29160 +25163 25236 25237 25164 29160 29233 29234 29161 +25164 25237 25238 25165 29161 29234 29235 29162 +25165 25238 25239 25166 29162 29235 29236 29163 +25166 25239 25240 25167 29163 29236 29237 29164 +25167 25240 25241 25168 29164 29237 29238 29165 +25168 25241 25242 25169 29165 29238 29239 29166 +25169 25242 25243 25170 29166 29239 29240 29167 +25170 25243 25244 25171 29167 29240 29241 29168 +25171 25244 25245 25172 29168 29241 29242 29169 +25172 25245 25246 25173 29169 29242 29243 29170 +25173 25246 25247 25174 29170 29243 29244 29171 +25174 25247 25248 25175 29171 29244 29245 29172 +25175 25248 25249 25176 29172 29245 29246 29173 +25176 25249 25250 25177 29173 29246 29247 29174 +25177 25250 25251 25178 29174 29247 29248 29175 +25178 25251 25252 25179 29175 29248 29249 29176 +25179 25252 25253 25180 29176 29249 29250 29177 +25180 25253 25254 25181 29177 29250 29251 29178 +25181 25254 25255 25182 29178 29251 29252 29179 +25182 25255 25256 25183 29179 29252 29253 29180 +25183 25256 25257 25184 29180 29253 29254 29181 +25184 25257 25258 25185 29181 29254 29255 29182 +25185 25258 25259 25186 29182 29255 29256 29183 +25186 25259 25260 25187 29183 29256 29257 29184 +25187 25260 25261 25188 29184 29257 29258 29185 +25188 25261 25262 25189 29185 29258 29259 29186 +25189 25262 25263 25190 29186 29259 29260 29187 +25190 25263 25264 25191 29187 29260 29261 29188 +25191 25264 25265 25192 29188 29261 29262 29189 +25192 25265 25266 25193 29189 29262 29263 29190 +25193 25266 25267 25194 29190 29263 29264 29191 +25194 25267 25268 25195 29191 29264 29265 29192 +25195 25268 25269 25196 29192 29265 29266 29193 +25196 25269 25270 25197 29193 29266 29267 29194 +25197 25270 25271 25198 29194 29267 29268 29195 +25198 25271 25272 25199 29195 29268 29269 29196 +25199 25272 25273 25200 29196 29269 29270 29197 +25200 25273 25274 25201 29197 29270 29271 29198 +25201 25274 25275 25202 29198 29271 29272 29199 +25202 25275 25276 25203 29199 29272 29273 29200 +25203 25276 25277 25204 29200 29273 29274 29201 +25204 25277 25278 25205 29201 29274 29275 29202 +25205 25278 25279 25206 29202 29275 29276 29203 +25206 25279 25280 25207 29203 29276 29277 29204 +25207 25280 25281 25208 29204 29277 29278 29205 +25208 25281 25282 25209 29205 29278 29279 29206 +25209 25282 25283 25210 29206 29279 29280 29207 +25211 25284 25285 25212 29208 29281 29282 29209 +25212 25285 25286 25213 29209 29282 29283 29210 +25213 25286 25287 25214 29210 29283 29284 29211 +25214 25287 25288 25215 29211 29284 29285 29212 +25215 25288 25289 25216 29212 29285 29286 29213 +25216 25289 25290 25217 29213 29286 29287 29214 +25217 25290 25291 25218 29214 29287 29288 29215 +25218 25291 25292 25219 29215 29288 29289 29216 +25219 25292 25293 25220 29216 29289 29290 29217 +25220 25293 25294 25221 29217 29290 29291 29218 +25221 25294 25295 25222 29218 29291 29292 29219 +25222 25295 25296 25223 29219 29292 29293 29220 +25223 25296 25297 25224 29220 29293 29294 29221 +25224 25297 25298 25225 29221 29294 29295 29222 +25225 25298 25299 25226 29222 29295 29296 29223 +25226 25299 25300 25227 29223 29296 29297 29224 +25227 25300 25301 25228 29224 29297 29298 29225 +25228 25301 25302 25229 29225 29298 29299 29226 +25229 25302 25303 25230 29226 29299 29300 29227 +25230 25303 25304 25231 29227 29300 29301 29228 +25231 25304 25305 25232 29228 29301 29302 29229 +25232 25305 25306 25233 29229 29302 29303 29230 +25233 25306 25307 25234 29230 29303 29304 29231 +25234 25307 25308 25235 29231 29304 29305 29232 +25235 25308 25309 25236 29232 29305 29306 29233 +25236 25309 25310 25237 29233 29306 29307 29234 +25237 25310 25311 25238 29234 29307 29308 29235 +25238 25311 25312 25239 29235 29308 29309 29236 +25239 25312 25313 25240 29236 29309 29310 29237 +25240 25313 25314 25241 29237 29310 29311 29238 +25241 25314 25315 25242 29238 29311 29312 29239 +25242 25315 25316 25243 29239 29312 29313 29240 +25243 25316 25317 25244 29240 29313 29314 29241 +25244 25317 25318 25245 29241 29314 29315 29242 +25245 25318 25319 25246 29242 29315 29316 29243 +25246 25319 25320 25247 29243 29316 29317 29244 +25247 25320 25321 25248 29244 29317 29318 29245 +25248 25321 25322 25249 29245 29318 29319 29246 +25249 25322 25323 25250 29246 29319 29320 29247 +25250 25323 25324 25251 29247 29320 29321 29248 +25251 25324 25325 25252 29248 29321 29322 29249 +25252 25325 25326 25253 29249 29322 29323 29250 +25253 25326 25327 25254 29250 29323 29324 29251 +25254 25327 25328 25255 29251 29324 29325 29252 +25255 25328 25329 25256 29252 29325 29326 29253 +25256 25329 25330 25257 29253 29326 29327 29254 +25257 25330 25331 25258 29254 29327 29328 29255 +25258 25331 25332 25259 29255 29328 29329 29256 +25259 25332 25333 25260 29256 29329 29330 29257 +25260 25333 25334 25261 29257 29330 29331 29258 +25261 25334 25335 25262 29258 29331 29332 29259 +25262 25335 25336 25263 29259 29332 29333 29260 +25263 25336 25337 25264 29260 29333 29334 29261 +25264 25337 25338 25265 29261 29334 29335 29262 +25265 25338 25339 25266 29262 29335 29336 29263 +25266 25339 25340 25267 29263 29336 29337 29264 +25267 25340 25341 25268 29264 29337 29338 29265 +25268 25341 25342 25269 29265 29338 29339 29266 +25269 25342 25343 25270 29266 29339 29340 29267 +25270 25343 25344 25271 29267 29340 29341 29268 +25271 25344 25345 25272 29268 29341 29342 29269 +25272 25345 25346 25273 29269 29342 29343 29270 +25273 25346 25347 25274 29270 29343 29344 29271 +25274 25347 25348 25275 29271 29344 29345 29272 +25275 25348 25349 25276 29272 29345 29346 29273 +25276 25349 25350 25277 29273 29346 29347 29274 +25277 25350 25351 25278 29274 29347 29348 29275 +25278 25351 25352 25279 29275 29348 29349 29276 +25279 25352 25353 25280 29276 29349 29350 29277 +25280 25353 25354 25281 29277 29350 29351 29278 +25281 25354 25355 25282 29278 29351 29352 29279 +25282 25355 25356 25283 29279 29352 29353 29280 +25284 25357 25358 25285 29281 29354 29355 29282 +25285 25358 25359 25286 29282 29355 29356 29283 +25286 25359 25360 25287 29283 29356 29357 29284 +25287 25360 25361 25288 29284 29357 29358 29285 +25288 25361 25362 25289 29285 29358 29359 29286 +25289 25362 25363 25290 29286 29359 29360 29287 +25290 25363 25364 25291 29287 29360 29361 29288 +25291 25364 25365 25292 29288 29361 29362 29289 +25292 25365 25366 25293 29289 29362 29363 29290 +25293 25366 25367 25294 29290 29363 29364 29291 +25294 25367 25368 25295 29291 29364 29365 29292 +25295 25368 25369 25296 29292 29365 29366 29293 +25296 25369 25370 25297 29293 29366 29367 29294 +25297 25370 25371 25298 29294 29367 29368 29295 +25298 25371 25372 25299 29295 29368 29369 29296 +25299 25372 25373 25300 29296 29369 29370 29297 +25300 25373 25374 25301 29297 29370 29371 29298 +25301 25374 25375 25302 29298 29371 29372 29299 +25302 25375 25376 25303 29299 29372 29373 29300 +25303 25376 25377 25304 29300 29373 29374 29301 +25304 25377 25378 25305 29301 29374 29375 29302 +25305 25378 25379 25306 29302 29375 29376 29303 +25306 25379 25380 25307 29303 29376 29377 29304 +25307 25380 25381 25308 29304 29377 29378 29305 +25308 25381 25382 25309 29305 29378 29379 29306 +25309 25382 25383 25310 29306 29379 29380 29307 +25310 25383 25384 25311 29307 29380 29381 29308 +25311 25384 25385 25312 29308 29381 29382 29309 +25312 25385 25386 25313 29309 29382 29383 29310 +25313 25386 25387 25314 29310 29383 29384 29311 +25314 25387 25388 25315 29311 29384 29385 29312 +25315 25388 25389 25316 29312 29385 29386 29313 +25316 25389 25390 25317 29313 29386 29387 29314 +25317 25390 25391 25318 29314 29387 29388 29315 +25318 25391 25392 25319 29315 29388 29389 29316 +25319 25392 25393 25320 29316 29389 29390 29317 +25320 25393 25394 25321 29317 29390 29391 29318 +25321 25394 25395 25322 29318 29391 29392 29319 +25322 25395 25396 25323 29319 29392 29393 29320 +25323 25396 25397 25324 29320 29393 29394 29321 +25324 25397 25398 25325 29321 29394 29395 29322 +25325 25398 25399 25326 29322 29395 29396 29323 +25326 25399 25400 25327 29323 29396 29397 29324 +25327 25400 25401 25328 29324 29397 29398 29325 +25328 25401 25402 25329 29325 29398 29399 29326 +25329 25402 25403 25330 29326 29399 29400 29327 +25330 25403 25404 25331 29327 29400 29401 29328 +25331 25404 25405 25332 29328 29401 29402 29329 +25332 25405 25406 25333 29329 29402 29403 29330 +25333 25406 25407 25334 29330 29403 29404 29331 +25334 25407 25408 25335 29331 29404 29405 29332 +25335 25408 25409 25336 29332 29405 29406 29333 +25336 25409 25410 25337 29333 29406 29407 29334 +25337 25410 25411 25338 29334 29407 29408 29335 +25338 25411 25412 25339 29335 29408 29409 29336 +25339 25412 25413 25340 29336 29409 29410 29337 +25340 25413 25414 25341 29337 29410 29411 29338 +25341 25414 25415 25342 29338 29411 29412 29339 +25342 25415 25416 25343 29339 29412 29413 29340 +25343 25416 25417 25344 29340 29413 29414 29341 +25344 25417 25418 25345 29341 29414 29415 29342 +25345 25418 25419 25346 29342 29415 29416 29343 +25346 25419 25420 25347 29343 29416 29417 29344 +25347 25420 25421 25348 29344 29417 29418 29345 +25348 25421 25422 25349 29345 29418 29419 29346 +25349 25422 25423 25350 29346 29419 29420 29347 +25350 25423 25424 25351 29347 29420 29421 29348 +25351 25424 25425 25352 29348 29421 29422 29349 +25352 25425 25426 25353 29349 29422 29423 29350 +25353 25426 25427 25354 29350 29423 29424 29351 +25354 25427 25428 25355 29351 29424 29425 29352 +25355 25428 25429 25356 29352 29425 29426 29353 +25357 25430 25431 25358 29354 29427 29428 29355 +25358 25431 25432 25359 29355 29428 29429 29356 +25359 25432 25433 25360 29356 29429 29430 29357 +25360 25433 25434 25361 29357 29430 29431 29358 +25361 25434 25435 25362 29358 29431 29432 29359 +25362 25435 25436 25363 29359 29432 29433 29360 +25363 25436 25437 25364 29360 29433 29434 29361 +25364 25437 25438 25365 29361 29434 29435 29362 +25365 25438 25439 25366 29362 29435 29436 29363 +25366 25439 25440 25367 29363 29436 29437 29364 +25367 25440 25441 25368 29364 29437 29438 29365 +25368 25441 25442 25369 29365 29438 29439 29366 +25369 25442 25443 25370 29366 29439 29440 29367 +25370 25443 25444 25371 29367 29440 29441 29368 +25371 25444 25445 25372 29368 29441 29442 29369 +25372 25445 25446 25373 29369 29442 29443 29370 +25373 25446 25447 25374 29370 29443 29444 29371 +25374 25447 25448 25375 29371 29444 29445 29372 +25375 25448 25449 25376 29372 29445 29446 29373 +25376 25449 25450 25377 29373 29446 29447 29374 +25377 25450 25451 25378 29374 29447 29448 29375 +25378 25451 25452 25379 29375 29448 29449 29376 +25379 25452 25453 25380 29376 29449 29450 29377 +25380 25453 25454 25381 29377 29450 29451 29378 +25381 25454 25455 25382 29378 29451 29452 29379 +25382 25455 25456 25383 29379 29452 29453 29380 +25383 25456 25457 25384 29380 29453 29454 29381 +25384 25457 25458 25385 29381 29454 29455 29382 +25385 25458 25459 25386 29382 29455 29456 29383 +25386 25459 25460 25387 29383 29456 29457 29384 +25387 25460 25461 25388 29384 29457 29458 29385 +25388 25461 25462 25389 29385 29458 29459 29386 +25389 25462 25463 25390 29386 29459 29460 29387 +25390 25463 25464 25391 29387 29460 29461 29388 +25391 25464 25465 25392 29388 29461 29462 29389 +25392 25465 25466 25393 29389 29462 29463 29390 +25393 25466 25467 25394 29390 29463 29464 29391 +25394 25467 25468 25395 29391 29464 29465 29392 +25395 25468 25469 25396 29392 29465 29466 29393 +25396 25469 25470 25397 29393 29466 29467 29394 +25397 25470 25471 25398 29394 29467 29468 29395 +25398 25471 25472 25399 29395 29468 29469 29396 +25399 25472 25473 25400 29396 29469 29470 29397 +25400 25473 25474 25401 29397 29470 29471 29398 +25401 25474 25475 25402 29398 29471 29472 29399 +25402 25475 25476 25403 29399 29472 29473 29400 +25403 25476 25477 25404 29400 29473 29474 29401 +25404 25477 25478 25405 29401 29474 29475 29402 +25405 25478 25479 25406 29402 29475 29476 29403 +25406 25479 25480 25407 29403 29476 29477 29404 +25407 25480 25481 25408 29404 29477 29478 29405 +25408 25481 25482 25409 29405 29478 29479 29406 +25409 25482 25483 25410 29406 29479 29480 29407 +25410 25483 25484 25411 29407 29480 29481 29408 +25411 25484 25485 25412 29408 29481 29482 29409 +25412 25485 25486 25413 29409 29482 29483 29410 +25413 25486 25487 25414 29410 29483 29484 29411 +25414 25487 25488 25415 29411 29484 29485 29412 +25415 25488 25489 25416 29412 29485 29486 29413 +25416 25489 25490 25417 29413 29486 29487 29414 +25417 25490 25491 25418 29414 29487 29488 29415 +25418 25491 25492 25419 29415 29488 29489 29416 +25419 25492 25493 25420 29416 29489 29490 29417 +25420 25493 25494 25421 29417 29490 29491 29418 +25421 25494 25495 25422 29418 29491 29492 29419 +25422 25495 25496 25423 29419 29492 29493 29420 +25423 25496 25497 25424 29420 29493 29494 29421 +25424 25497 25498 25425 29421 29494 29495 29422 +25425 25498 25499 25426 29422 29495 29496 29423 +25426 25499 25500 25427 29423 29496 29497 29424 +25427 25500 25501 25428 29424 29497 29498 29425 +25428 25501 25502 25429 29425 29498 29499 29426 +25430 25503 25504 25431 29427 29500 29501 29428 +25431 25504 25505 25432 29428 29501 29502 29429 +25432 25505 25506 25433 29429 29502 29503 29430 +25433 25506 25507 25434 29430 29503 29504 29431 +25434 25507 25508 25435 29431 29504 29505 29432 +25435 25508 25509 25436 29432 29505 29506 29433 +25436 25509 25510 25437 29433 29506 29507 29434 +25437 25510 25511 25438 29434 29507 29508 29435 +25438 25511 25512 25439 29435 29508 29509 29436 +25439 25512 25513 25440 29436 29509 29510 29437 +25440 25513 25514 25441 29437 29510 29511 29438 +25441 25514 25515 25442 29438 29511 29512 29439 +25442 25515 25516 25443 29439 29512 29513 29440 +25443 25516 25517 25444 29440 29513 29514 29441 +25444 25517 25518 25445 29441 29514 29515 29442 +25445 25518 25519 25446 29442 29515 29516 29443 +25446 25519 25520 25447 29443 29516 29517 29444 +25447 25520 25521 25448 29444 29517 29518 29445 +25448 25521 25522 25449 29445 29518 29519 29446 +25449 25522 25523 25450 29446 29519 29520 29447 +25450 25523 25524 25451 29447 29520 29521 29448 +25451 25524 25525 25452 29448 29521 29522 29449 +25452 25525 25526 25453 29449 29522 29523 29450 +25453 25526 25527 25454 29450 29523 29524 29451 +25454 25527 25528 25455 29451 29524 29525 29452 +25455 25528 25529 25456 29452 29525 29526 29453 +25456 25529 25530 25457 29453 29526 29527 29454 +25457 25530 25531 25458 29454 29527 29528 29455 +25458 25531 25532 25459 29455 29528 29529 29456 +25459 25532 25533 25460 29456 29529 29530 29457 +25460 25533 25534 25461 29457 29530 29531 29458 +25461 25534 25535 25462 29458 29531 29532 29459 +25462 25535 25536 25463 29459 29532 29533 29460 +25463 25536 25537 25464 29460 29533 29534 29461 +25464 25537 25538 25465 29461 29534 29535 29462 +25465 25538 25539 25466 29462 29535 29536 29463 +25466 25539 25540 25467 29463 29536 29537 29464 +25467 25540 25541 25468 29464 29537 29538 29465 +25468 25541 25542 25469 29465 29538 29539 29466 +25469 25542 25543 25470 29466 29539 29540 29467 +25470 25543 25544 25471 29467 29540 29541 29468 +25471 25544 25545 25472 29468 29541 29542 29469 +25472 25545 25546 25473 29469 29542 29543 29470 +25473 25546 25547 25474 29470 29543 29544 29471 +25474 25547 25548 25475 29471 29544 29545 29472 +25475 25548 25549 25476 29472 29545 29546 29473 +25476 25549 25550 25477 29473 29546 29547 29474 +25477 25550 25551 25478 29474 29547 29548 29475 +25478 25551 25552 25479 29475 29548 29549 29476 +25479 25552 25553 25480 29476 29549 29550 29477 +25480 25553 25554 25481 29477 29550 29551 29478 +25481 25554 25555 25482 29478 29551 29552 29479 +25482 25555 25556 25483 29479 29552 29553 29480 +25483 25556 25557 25484 29480 29553 29554 29481 +25484 25557 25558 25485 29481 29554 29555 29482 +25485 25558 25559 25486 29482 29555 29556 29483 +25486 25559 25560 25487 29483 29556 29557 29484 +25487 25560 25561 25488 29484 29557 29558 29485 +25488 25561 25562 25489 29485 29558 29559 29486 +25489 25562 25563 25490 29486 29559 29560 29487 +25490 25563 25564 25491 29487 29560 29561 29488 +25491 25564 25565 25492 29488 29561 29562 29489 +25492 25565 25566 25493 29489 29562 29563 29490 +25493 25566 25567 25494 29490 29563 29564 29491 +25494 25567 25568 25495 29491 29564 29565 29492 +25495 25568 25569 25496 29492 29565 29566 29493 +25496 25569 25570 25497 29493 29566 29567 29494 +25497 25570 25571 25498 29494 29567 29568 29495 +25498 25571 25572 25499 29495 29568 29569 29496 +25499 25572 25573 25500 29496 29569 29570 29497 +25500 25573 25574 25501 29497 29570 29571 29498 +25501 25574 25575 25502 29498 29571 29572 29499 +25503 25576 25577 25504 29500 29573 29574 29501 +25504 25577 25578 25505 29501 29574 29575 29502 +25505 25578 25579 25506 29502 29575 29576 29503 +25506 25579 25580 25507 29503 29576 29577 29504 +25507 25580 25581 25508 29504 29577 29578 29505 +25508 25581 25582 25509 29505 29578 29579 29506 +25509 25582 25583 25510 29506 29579 29580 29507 +25510 25583 25584 25511 29507 29580 29581 29508 +25511 25584 25585 25512 29508 29581 29582 29509 +25512 25585 25586 25513 29509 29582 29583 29510 +25513 25586 25587 25514 29510 29583 29584 29511 +25514 25587 25588 25515 29511 29584 29585 29512 +25515 25588 25589 25516 29512 29585 29586 29513 +25516 25589 25590 25517 29513 29586 29587 29514 +25517 25590 25591 25518 29514 29587 29588 29515 +25518 25591 25592 25519 29515 29588 29589 29516 +25519 25592 25593 25520 29516 29589 29590 29517 +25520 25593 25594 25521 29517 29590 29591 29518 +25521 25594 25595 25522 29518 29591 29592 29519 +25522 25595 25596 25523 29519 29592 29593 29520 +25523 25596 25597 25524 29520 29593 29594 29521 +25524 25597 25598 25525 29521 29594 29595 29522 +25525 25598 25599 25526 29522 29595 29596 29523 +25526 25599 25600 25527 29523 29596 29597 29524 +25527 25600 25601 25528 29524 29597 29598 29525 +25528 25601 25602 25529 29525 29598 29599 29526 +25529 25602 25603 25530 29526 29599 29600 29527 +25530 25603 25604 25531 29527 29600 29601 29528 +25531 25604 25605 25532 29528 29601 29602 29529 +25532 25605 25606 25533 29529 29602 29603 29530 +25533 25606 25607 25534 29530 29603 29604 29531 +25534 25607 25608 25535 29531 29604 29605 29532 +25535 25608 25609 25536 29532 29605 29606 29533 +25536 25609 25610 25537 29533 29606 29607 29534 +25537 25610 25611 25538 29534 29607 29608 29535 +25538 25611 25612 25539 29535 29608 29609 29536 +25539 25612 25613 25540 29536 29609 29610 29537 +25540 25613 25614 25541 29537 29610 29611 29538 +25541 25614 25615 25542 29538 29611 29612 29539 +25542 25615 25616 25543 29539 29612 29613 29540 +25543 25616 25617 25544 29540 29613 29614 29541 +25544 25617 25618 25545 29541 29614 29615 29542 +25545 25618 25619 25546 29542 29615 29616 29543 +25546 25619 25620 25547 29543 29616 29617 29544 +25547 25620 25621 25548 29544 29617 29618 29545 +25548 25621 25622 25549 29545 29618 29619 29546 +25549 25622 25623 25550 29546 29619 29620 29547 +25550 25623 25624 25551 29547 29620 29621 29548 +25551 25624 25625 25552 29548 29621 29622 29549 +25552 25625 25626 25553 29549 29622 29623 29550 +25553 25626 25627 25554 29550 29623 29624 29551 +25554 25627 25628 25555 29551 29624 29625 29552 +25555 25628 25629 25556 29552 29625 29626 29553 +25556 25629 25630 25557 29553 29626 29627 29554 +25557 25630 25631 25558 29554 29627 29628 29555 +25558 25631 25632 25559 29555 29628 29629 29556 +25559 25632 25633 25560 29556 29629 29630 29557 +25560 25633 25634 25561 29557 29630 29631 29558 +25561 25634 25635 25562 29558 29631 29632 29559 +25562 25635 25636 25563 29559 29632 29633 29560 +25563 25636 25637 25564 29560 29633 29634 29561 +25564 25637 25638 25565 29561 29634 29635 29562 +25565 25638 25639 25566 29562 29635 29636 29563 +25566 25639 25640 25567 29563 29636 29637 29564 +25567 25640 25641 25568 29564 29637 29638 29565 +25568 25641 25642 25569 29565 29638 29639 29566 +25569 25642 25643 25570 29566 29639 29640 29567 +25570 25643 25644 25571 29567 29640 29641 29568 +25571 25644 25645 25572 29568 29641 29642 29569 +25572 25645 25646 25573 29569 29642 29643 29570 +25573 25646 25647 25574 29570 29643 29644 29571 +25574 25647 25648 25575 29571 29644 29645 29572 +25576 25649 25650 25577 29573 29646 29647 29574 +25577 25650 25651 25578 29574 29647 29648 29575 +25578 25651 25652 25579 29575 29648 29649 29576 +25579 25652 25653 25580 29576 29649 29650 29577 +25580 25653 25654 25581 29577 29650 29651 29578 +25581 25654 25655 25582 29578 29651 29652 29579 +25582 25655 25656 25583 29579 29652 29653 29580 +25583 25656 25657 25584 29580 29653 29654 29581 +25584 25657 25658 25585 29581 29654 29655 29582 +25585 25658 25659 25586 29582 29655 29656 29583 +25586 25659 25660 25587 29583 29656 29657 29584 +25587 25660 25661 25588 29584 29657 29658 29585 +25588 25661 25662 25589 29585 29658 29659 29586 +25589 25662 25663 25590 29586 29659 29660 29587 +25590 25663 25664 25591 29587 29660 29661 29588 +25591 25664 25665 25592 29588 29661 29662 29589 +25592 25665 25666 25593 29589 29662 29663 29590 +25593 25666 25667 25594 29590 29663 29664 29591 +25594 25667 25668 25595 29591 29664 29665 29592 +25595 25668 25669 25596 29592 29665 29666 29593 +25596 25669 25670 25597 29593 29666 29667 29594 +25597 25670 25671 25598 29594 29667 29668 29595 +25598 25671 25672 25599 29595 29668 29669 29596 +25599 25672 25673 25600 29596 29669 29670 29597 +25600 25673 25674 25601 29597 29670 29671 29598 +25601 25674 25675 25602 29598 29671 29672 29599 +25602 25675 25676 25603 29599 29672 29673 29600 +25603 25676 25677 25604 29600 29673 29674 29601 +25604 25677 25678 25605 29601 29674 29675 29602 +25605 25678 25679 25606 29602 29675 29676 29603 +25606 25679 25680 25607 29603 29676 29677 29604 +25607 25680 25681 25608 29604 29677 29678 29605 +25608 25681 25682 25609 29605 29678 29679 29606 +25609 25682 25683 25610 29606 29679 29680 29607 +25610 25683 25684 25611 29607 29680 29681 29608 +25611 25684 25685 25612 29608 29681 29682 29609 +25612 25685 25686 25613 29609 29682 29683 29610 +25613 25686 25687 25614 29610 29683 29684 29611 +25614 25687 25688 25615 29611 29684 29685 29612 +25615 25688 25689 25616 29612 29685 29686 29613 +25616 25689 25690 25617 29613 29686 29687 29614 +25617 25690 25691 25618 29614 29687 29688 29615 +25618 25691 25692 25619 29615 29688 29689 29616 +25619 25692 25693 25620 29616 29689 29690 29617 +25620 25693 25694 25621 29617 29690 29691 29618 +25621 25694 25695 25622 29618 29691 29692 29619 +25622 25695 25696 25623 29619 29692 29693 29620 +25623 25696 25697 25624 29620 29693 29694 29621 +25624 25697 25698 25625 29621 29694 29695 29622 +25625 25698 25699 25626 29622 29695 29696 29623 +25626 25699 25700 25627 29623 29696 29697 29624 +25627 25700 25701 25628 29624 29697 29698 29625 +25628 25701 25702 25629 29625 29698 29699 29626 +25629 25702 25703 25630 29626 29699 29700 29627 +25630 25703 25704 25631 29627 29700 29701 29628 +25631 25704 25705 25632 29628 29701 29702 29629 +25632 25705 25706 25633 29629 29702 29703 29630 +25633 25706 25707 25634 29630 29703 29704 29631 +25634 25707 25708 25635 29631 29704 29705 29632 +25635 25708 25709 25636 29632 29705 29706 29633 +25636 25709 25710 25637 29633 29706 29707 29634 +25637 25710 25711 25638 29634 29707 29708 29635 +25638 25711 25712 25639 29635 29708 29709 29636 +25639 25712 25713 25640 29636 29709 29710 29637 +25640 25713 25714 25641 29637 29710 29711 29638 +25641 25714 25715 25642 29638 29711 29712 29639 +25642 25715 25716 25643 29639 29712 29713 29640 +25643 25716 25717 25644 29640 29713 29714 29641 +25644 25717 25718 25645 29641 29714 29715 29642 +25645 25718 25719 25646 29642 29715 29716 29643 +25646 25719 25720 25647 29643 29716 29717 29644 +25647 25720 25721 25648 29644 29717 29718 29645 +25649 25722 25723 25650 29646 29719 29720 29647 +25650 25723 25724 25651 29647 29720 29721 29648 +25651 25724 25725 25652 29648 29721 29722 29649 +25652 25725 25726 25653 29649 29722 29723 29650 +25653 25726 25727 25654 29650 29723 29724 29651 +25654 25727 25728 25655 29651 29724 29725 29652 +25655 25728 25729 25656 29652 29725 29726 29653 +25656 25729 25730 25657 29653 29726 29727 29654 +25657 25730 25731 25658 29654 29727 29728 29655 +25658 25731 25732 25659 29655 29728 29729 29656 +25659 25732 25733 25660 29656 29729 29730 29657 +25660 25733 25734 25661 29657 29730 29731 29658 +25661 25734 25735 25662 29658 29731 29732 29659 +25662 25735 25736 25663 29659 29732 29733 29660 +25663 25736 25737 25664 29660 29733 29734 29661 +25664 25737 25738 25665 29661 29734 29735 29662 +25665 25738 25739 25666 29662 29735 29736 29663 +25666 25739 25740 25667 29663 29736 29737 29664 +25667 25740 25741 25668 29664 29737 29738 29665 +25668 25741 25742 25669 29665 29738 29739 29666 +25669 25742 25743 25670 29666 29739 29740 29667 +25670 25743 25744 25671 29667 29740 29741 29668 +25671 25744 25745 25672 29668 29741 29742 29669 +25672 25745 25746 25673 29669 29742 29743 29670 +25673 25746 25747 25674 29670 29743 29744 29671 +25674 25747 25748 25675 29671 29744 29745 29672 +25675 25748 25749 25676 29672 29745 29746 29673 +25676 25749 25750 25677 29673 29746 29747 29674 +25677 25750 25751 25678 29674 29747 29748 29675 +25678 25751 25752 25679 29675 29748 29749 29676 +25679 25752 25753 25680 29676 29749 29750 29677 +25680 25753 25754 25681 29677 29750 29751 29678 +25681 25754 25755 25682 29678 29751 29752 29679 +25682 25755 25756 25683 29679 29752 29753 29680 +25683 25756 25757 25684 29680 29753 29754 29681 +25684 25757 25758 25685 29681 29754 29755 29682 +25685 25758 25759 25686 29682 29755 29756 29683 +25686 25759 25760 25687 29683 29756 29757 29684 +25687 25760 25761 25688 29684 29757 29758 29685 +25688 25761 25762 25689 29685 29758 29759 29686 +25689 25762 25763 25690 29686 29759 29760 29687 +25690 25763 25764 25691 29687 29760 29761 29688 +25691 25764 25765 25692 29688 29761 29762 29689 +25692 25765 25766 25693 29689 29762 29763 29690 +25693 25766 25767 25694 29690 29763 29764 29691 +25694 25767 25768 25695 29691 29764 29765 29692 +25695 25768 25769 25696 29692 29765 29766 29693 +25696 25769 25770 25697 29693 29766 29767 29694 +25697 25770 25771 25698 29694 29767 29768 29695 +25698 25771 25772 25699 29695 29768 29769 29696 +25699 25772 25773 25700 29696 29769 29770 29697 +25700 25773 25774 25701 29697 29770 29771 29698 +25701 25774 25775 25702 29698 29771 29772 29699 +25702 25775 25776 25703 29699 29772 29773 29700 +25703 25776 25777 25704 29700 29773 29774 29701 +25704 25777 25778 25705 29701 29774 29775 29702 +25705 25778 25779 25706 29702 29775 29776 29703 +25706 25779 25780 25707 29703 29776 29777 29704 +25707 25780 25781 25708 29704 29777 29778 29705 +25708 25781 25782 25709 29705 29778 29779 29706 +25709 25782 25783 25710 29706 29779 29780 29707 +25710 25783 25784 25711 29707 29780 29781 29708 +25711 25784 25785 25712 29708 29781 29782 29709 +25712 25785 25786 25713 29709 29782 29783 29710 +25713 25786 25787 25714 29710 29783 29784 29711 +25714 25787 25788 25715 29711 29784 29785 29712 +25715 25788 25789 25716 29712 29785 29786 29713 +25716 25789 25790 25717 29713 29786 29787 29714 +25717 25790 25791 25718 29714 29787 29788 29715 +25718 25791 25792 25719 29715 29788 29789 29716 +25719 25792 25793 25720 29716 29789 29790 29717 +25720 25793 25794 25721 29717 29790 29791 29718 +25722 25795 25796 25723 29719 29792 29793 29720 +25723 25796 25797 25724 29720 29793 29794 29721 +25724 25797 25798 25725 29721 29794 29795 29722 +25725 25798 25799 25726 29722 29795 29796 29723 +25726 25799 25800 25727 29723 29796 29797 29724 +25727 25800 25801 25728 29724 29797 29798 29725 +25728 25801 25802 25729 29725 29798 29799 29726 +25729 25802 25803 25730 29726 29799 29800 29727 +25730 25803 25804 25731 29727 29800 29801 29728 +25731 25804 25805 25732 29728 29801 29802 29729 +25732 25805 25806 25733 29729 29802 29803 29730 +25733 25806 25807 25734 29730 29803 29804 29731 +25734 25807 25808 25735 29731 29804 29805 29732 +25735 25808 25809 25736 29732 29805 29806 29733 +25736 25809 25810 25737 29733 29806 29807 29734 +25737 25810 25811 25738 29734 29807 29808 29735 +25738 25811 25812 25739 29735 29808 29809 29736 +25739 25812 25813 25740 29736 29809 29810 29737 +25740 25813 25814 25741 29737 29810 29811 29738 +25741 25814 25815 25742 29738 29811 29812 29739 +25742 25815 25816 25743 29739 29812 29813 29740 +25743 25816 25817 25744 29740 29813 29814 29741 +25744 25817 25818 25745 29741 29814 29815 29742 +25745 25818 25819 25746 29742 29815 29816 29743 +25746 25819 25820 25747 29743 29816 29817 29744 +25747 25820 25821 25748 29744 29817 29818 29745 +25748 25821 25822 25749 29745 29818 29819 29746 +25749 25822 25823 25750 29746 29819 29820 29747 +25750 25823 25824 25751 29747 29820 29821 29748 +25751 25824 25825 25752 29748 29821 29822 29749 +25752 25825 25826 25753 29749 29822 29823 29750 +25753 25826 25827 25754 29750 29823 29824 29751 +25754 25827 25828 25755 29751 29824 29825 29752 +25755 25828 25829 25756 29752 29825 29826 29753 +25756 25829 25830 25757 29753 29826 29827 29754 +25757 25830 25831 25758 29754 29827 29828 29755 +25758 25831 25832 25759 29755 29828 29829 29756 +25759 25832 25833 25760 29756 29829 29830 29757 +25760 25833 25834 25761 29757 29830 29831 29758 +25761 25834 25835 25762 29758 29831 29832 29759 +25762 25835 25836 25763 29759 29832 29833 29760 +25763 25836 25837 25764 29760 29833 29834 29761 +25764 25837 25838 25765 29761 29834 29835 29762 +25765 25838 25839 25766 29762 29835 29836 29763 +25766 25839 25840 25767 29763 29836 29837 29764 +25767 25840 25841 25768 29764 29837 29838 29765 +25768 25841 25842 25769 29765 29838 29839 29766 +25769 25842 25843 25770 29766 29839 29840 29767 +25770 25843 25844 25771 29767 29840 29841 29768 +25771 25844 25845 25772 29768 29841 29842 29769 +25772 25845 25846 25773 29769 29842 29843 29770 +25773 25846 25847 25774 29770 29843 29844 29771 +25774 25847 25848 25775 29771 29844 29845 29772 +25775 25848 25849 25776 29772 29845 29846 29773 +25776 25849 25850 25777 29773 29846 29847 29774 +25777 25850 25851 25778 29774 29847 29848 29775 +25778 25851 25852 25779 29775 29848 29849 29776 +25779 25852 25853 25780 29776 29849 29850 29777 +25780 25853 25854 25781 29777 29850 29851 29778 +25781 25854 25855 25782 29778 29851 29852 29779 +25782 25855 25856 25783 29779 29852 29853 29780 +25783 25856 25857 25784 29780 29853 29854 29781 +25784 25857 25858 25785 29781 29854 29855 29782 +25785 25858 25859 25786 29782 29855 29856 29783 +25786 25859 25860 25787 29783 29856 29857 29784 +25787 25860 25861 25788 29784 29857 29858 29785 +25788 25861 25862 25789 29785 29858 29859 29786 +25789 25862 25863 25790 29786 29859 29860 29787 +25790 25863 25864 25791 29787 29860 29861 29788 +25791 25864 25865 25792 29788 29861 29862 29789 +25792 25865 25866 25793 29789 29862 29863 29790 +25793 25866 25867 25794 29790 29863 29864 29791 +25795 25868 25869 25796 29792 29865 29866 29793 +25796 25869 25870 25797 29793 29866 29867 29794 +25797 25870 25871 25798 29794 29867 29868 29795 +25798 25871 25872 25799 29795 29868 29869 29796 +25799 25872 25873 25800 29796 29869 29870 29797 +25800 25873 25874 25801 29797 29870 29871 29798 +25801 25874 25875 25802 29798 29871 29872 29799 +25802 25875 25876 25803 29799 29872 29873 29800 +25803 25876 25877 25804 29800 29873 29874 29801 +25804 25877 25878 25805 29801 29874 29875 29802 +25805 25878 25879 25806 29802 29875 29876 29803 +25806 25879 25880 25807 29803 29876 29877 29804 +25807 25880 25881 25808 29804 29877 29878 29805 +25808 25881 25882 25809 29805 29878 29879 29806 +25809 25882 25883 25810 29806 29879 29880 29807 +25810 25883 25884 25811 29807 29880 29881 29808 +25811 25884 25885 25812 29808 29881 29882 29809 +25812 25885 25886 25813 29809 29882 29883 29810 +25813 25886 25887 25814 29810 29883 29884 29811 +25814 25887 25888 25815 29811 29884 29885 29812 +25815 25888 25889 25816 29812 29885 29886 29813 +25816 25889 25890 25817 29813 29886 29887 29814 +25817 25890 25891 25818 29814 29887 29888 29815 +25818 25891 25892 25819 29815 29888 29889 29816 +25819 25892 25893 25820 29816 29889 29890 29817 +25820 25893 25894 25821 29817 29890 29891 29818 +25821 25894 25895 25822 29818 29891 29892 29819 +25822 25895 25896 25823 29819 29892 29893 29820 +25823 25896 25897 25824 29820 29893 29894 29821 +25824 25897 25898 25825 29821 29894 29895 29822 +25825 25898 25899 25826 29822 29895 29896 29823 +25826 25899 25900 25827 29823 29896 29897 29824 +25827 25900 25901 25828 29824 29897 29898 29825 +25828 25901 25902 25829 29825 29898 29899 29826 +25829 25902 25903 25830 29826 29899 29900 29827 +25830 25903 25904 25831 29827 29900 29901 29828 +25831 25904 25905 25832 29828 29901 29902 29829 +25832 25905 25906 25833 29829 29902 29903 29830 +25833 25906 25907 25834 29830 29903 29904 29831 +25834 25907 25908 25835 29831 29904 29905 29832 +25835 25908 25909 25836 29832 29905 29906 29833 +25836 25909 25910 25837 29833 29906 29907 29834 +25837 25910 25911 25838 29834 29907 29908 29835 +25838 25911 25912 25839 29835 29908 29909 29836 +25839 25912 25913 25840 29836 29909 29910 29837 +25840 25913 25914 25841 29837 29910 29911 29838 +25841 25914 25915 25842 29838 29911 29912 29839 +25842 25915 25916 25843 29839 29912 29913 29840 +25843 25916 25917 25844 29840 29913 29914 29841 +25844 25917 25918 25845 29841 29914 29915 29842 +25845 25918 25919 25846 29842 29915 29916 29843 +25846 25919 25920 25847 29843 29916 29917 29844 +25847 25920 25921 25848 29844 29917 29918 29845 +25848 25921 25922 25849 29845 29918 29919 29846 +25849 25922 25923 25850 29846 29919 29920 29847 +25850 25923 25924 25851 29847 29920 29921 29848 +25851 25924 25925 25852 29848 29921 29922 29849 +25852 25925 25926 25853 29849 29922 29923 29850 +25853 25926 25927 25854 29850 29923 29924 29851 +25854 25927 25928 25855 29851 29924 29925 29852 +25855 25928 25929 25856 29852 29925 29926 29853 +25856 25929 25930 25857 29853 29926 29927 29854 +25857 25930 25931 25858 29854 29927 29928 29855 +25858 25931 25932 25859 29855 29928 29929 29856 +25859 25932 25933 25860 29856 29929 29930 29857 +25860 25933 25934 25861 29857 29930 29931 29858 +25861 25934 25935 25862 29858 29931 29932 29859 +25862 25935 25936 25863 29859 29932 29933 29860 +25863 25936 25937 25864 29860 29933 29934 29861 +25864 25937 25938 25865 29861 29934 29935 29862 +25865 25938 25939 25866 29862 29935 29936 29863 +25866 25939 25940 25867 29863 29936 29937 29864 +25868 25941 25942 25869 29865 29938 29939 29866 +25869 25942 25943 25870 29866 29939 29940 29867 +25870 25943 25944 25871 29867 29940 29941 29868 +25871 25944 25945 25872 29868 29941 29942 29869 +25872 25945 25946 25873 29869 29942 29943 29870 +25873 25946 25947 25874 29870 29943 29944 29871 +25874 25947 25948 25875 29871 29944 29945 29872 +25875 25948 25949 25876 29872 29945 29946 29873 +25876 25949 25950 25877 29873 29946 29947 29874 +25877 25950 25951 25878 29874 29947 29948 29875 +25878 25951 25952 25879 29875 29948 29949 29876 +25879 25952 25953 25880 29876 29949 29950 29877 +25880 25953 25954 25881 29877 29950 29951 29878 +25881 25954 25955 25882 29878 29951 29952 29879 +25882 25955 25956 25883 29879 29952 29953 29880 +25883 25956 25957 25884 29880 29953 29954 29881 +25884 25957 25958 25885 29881 29954 29955 29882 +25885 25958 25959 25886 29882 29955 29956 29883 +25886 25959 25960 25887 29883 29956 29957 29884 +25887 25960 25961 25888 29884 29957 29958 29885 +25888 25961 25962 25889 29885 29958 29959 29886 +25889 25962 25963 25890 29886 29959 29960 29887 +25890 25963 25964 25891 29887 29960 29961 29888 +25891 25964 25965 25892 29888 29961 29962 29889 +25892 25965 25966 25893 29889 29962 29963 29890 +25893 25966 25967 25894 29890 29963 29964 29891 +25894 25967 25968 25895 29891 29964 29965 29892 +25895 25968 25969 25896 29892 29965 29966 29893 +25896 25969 25970 25897 29893 29966 29967 29894 +25897 25970 25971 25898 29894 29967 29968 29895 +25898 25971 25972 25899 29895 29968 29969 29896 +25899 25972 25973 25900 29896 29969 29970 29897 +25900 25973 25974 25901 29897 29970 29971 29898 +25901 25974 25975 25902 29898 29971 29972 29899 +25902 25975 25976 25903 29899 29972 29973 29900 +25903 25976 25977 25904 29900 29973 29974 29901 +25904 25977 25978 25905 29901 29974 29975 29902 +25905 25978 25979 25906 29902 29975 29976 29903 +25906 25979 25980 25907 29903 29976 29977 29904 +25907 25980 25981 25908 29904 29977 29978 29905 +25908 25981 25982 25909 29905 29978 29979 29906 +25909 25982 25983 25910 29906 29979 29980 29907 +25910 25983 25984 25911 29907 29980 29981 29908 +25911 25984 25985 25912 29908 29981 29982 29909 +25912 25985 25986 25913 29909 29982 29983 29910 +25913 25986 25987 25914 29910 29983 29984 29911 +25914 25987 25988 25915 29911 29984 29985 29912 +25915 25988 25989 25916 29912 29985 29986 29913 +25916 25989 25990 25917 29913 29986 29987 29914 +25917 25990 25991 25918 29914 29987 29988 29915 +25918 25991 25992 25919 29915 29988 29989 29916 +25919 25992 25993 25920 29916 29989 29990 29917 +25920 25993 25994 25921 29917 29990 29991 29918 +25921 25994 25995 25922 29918 29991 29992 29919 +25922 25995 25996 25923 29919 29992 29993 29920 +25923 25996 25997 25924 29920 29993 29994 29921 +25924 25997 25998 25925 29921 29994 29995 29922 +25925 25998 25999 25926 29922 29995 29996 29923 +25926 25999 26000 25927 29923 29996 29997 29924 +25927 26000 26001 25928 29924 29997 29998 29925 +25928 26001 26002 25929 29925 29998 29999 29926 +25929 26002 26003 25930 29926 29999 30000 29927 +25930 26003 26004 25931 29927 30000 30001 29928 +25931 26004 26005 25932 29928 30001 30002 29929 +25932 26005 26006 25933 29929 30002 30003 29930 +25933 26006 26007 25934 29930 30003 30004 29931 +25934 26007 26008 25935 29931 30004 30005 29932 +25935 26008 26009 25936 29932 30005 30006 29933 +25936 26009 26010 25937 29933 30006 30007 29934 +25937 26010 26011 25938 29934 30007 30008 29935 +25938 26011 26012 25939 29935 30008 30009 29936 +25939 26012 26013 25940 29936 30009 30010 29937 +25941 26014 26015 25942 29938 30011 30012 29939 +25942 26015 26016 25943 29939 30012 30013 29940 +25943 26016 26017 25944 29940 30013 30014 29941 +25944 26017 26018 25945 29941 30014 30015 29942 +25945 26018 26019 25946 29942 30015 30016 29943 +25946 26019 26020 25947 29943 30016 30017 29944 +25947 26020 26021 25948 29944 30017 30018 29945 +25948 26021 26022 25949 29945 30018 30019 29946 +25949 26022 26023 25950 29946 30019 30020 29947 +25950 26023 26024 25951 29947 30020 30021 29948 +25951 26024 26025 25952 29948 30021 30022 29949 +25952 26025 26026 25953 29949 30022 30023 29950 +25953 26026 26027 25954 29950 30023 30024 29951 +25954 26027 26028 25955 29951 30024 30025 29952 +25955 26028 26029 25956 29952 30025 30026 29953 +25956 26029 26030 25957 29953 30026 30027 29954 +25957 26030 26031 25958 29954 30027 30028 29955 +25958 26031 26032 25959 29955 30028 30029 29956 +25959 26032 26033 25960 29956 30029 30030 29957 +25960 26033 26034 25961 29957 30030 30031 29958 +25961 26034 26035 25962 29958 30031 30032 29959 +25962 26035 26036 25963 29959 30032 30033 29960 +25963 26036 26037 25964 29960 30033 30034 29961 +25964 26037 26038 25965 29961 30034 30035 29962 +25965 26038 26039 25966 29962 30035 30036 29963 +25966 26039 26040 25967 29963 30036 30037 29964 +25967 26040 26041 25968 29964 30037 30038 29965 +25968 26041 26042 25969 29965 30038 30039 29966 +25969 26042 26043 25970 29966 30039 30040 29967 +25970 26043 26044 25971 29967 30040 30041 29968 +25971 26044 26045 25972 29968 30041 30042 29969 +25972 26045 26046 25973 29969 30042 30043 29970 +25973 26046 26047 25974 29970 30043 30044 29971 +25974 26047 26048 25975 29971 30044 30045 29972 +25975 26048 26049 25976 29972 30045 30046 29973 +25976 26049 26050 25977 29973 30046 30047 29974 +25977 26050 26051 25978 29974 30047 30048 29975 +25978 26051 26052 25979 29975 30048 30049 29976 +25979 26052 26053 25980 29976 30049 30050 29977 +25980 26053 26054 25981 29977 30050 30051 29978 +25981 26054 26055 25982 29978 30051 30052 29979 +25982 26055 26056 25983 29979 30052 30053 29980 +25983 26056 26057 25984 29980 30053 30054 29981 +25984 26057 26058 25985 29981 30054 30055 29982 +25985 26058 26059 25986 29982 30055 30056 29983 +25986 26059 26060 25987 29983 30056 30057 29984 +25987 26060 26061 25988 29984 30057 30058 29985 +25988 26061 26062 25989 29985 30058 30059 29986 +25989 26062 26063 25990 29986 30059 30060 29987 +25990 26063 26064 25991 29987 30060 30061 29988 +25991 26064 26065 25992 29988 30061 30062 29989 +25992 26065 26066 25993 29989 30062 30063 29990 +25993 26066 26067 25994 29990 30063 30064 29991 +25994 26067 26068 25995 29991 30064 30065 29992 +25995 26068 26069 25996 29992 30065 30066 29993 +25996 26069 26070 25997 29993 30066 30067 29994 +25997 26070 26071 25998 29994 30067 30068 29995 +25998 26071 26072 25999 29995 30068 30069 29996 +25999 26072 26073 26000 29996 30069 30070 29997 +26000 26073 26074 26001 29997 30070 30071 29998 +26001 26074 26075 26002 29998 30071 30072 29999 +26002 26075 26076 26003 29999 30072 30073 30000 +26003 26076 26077 26004 30000 30073 30074 30001 +26004 26077 26078 26005 30001 30074 30075 30002 +26005 26078 26079 26006 30002 30075 30076 30003 +26006 26079 26080 26007 30003 30076 30077 30004 +26007 26080 26081 26008 30004 30077 30078 30005 +26008 26081 26082 26009 30005 30078 30079 30006 +26009 26082 26083 26010 30006 30079 30080 30007 +26010 26083 26084 26011 30007 30080 30081 30008 +26011 26084 26085 26012 30008 30081 30082 30009 +26012 26085 26086 26013 30009 30082 30083 30010 +26014 26087 26088 26015 30011 30084 30085 30012 +26015 26088 26089 26016 30012 30085 30086 30013 +26016 26089 26090 26017 30013 30086 30087 30014 +26017 26090 26091 26018 30014 30087 30088 30015 +26018 26091 26092 26019 30015 30088 30089 30016 +26019 26092 26093 26020 30016 30089 30090 30017 +26020 26093 26094 26021 30017 30090 30091 30018 +26021 26094 26095 26022 30018 30091 30092 30019 +26022 26095 26096 26023 30019 30092 30093 30020 +26023 26096 26097 26024 30020 30093 30094 30021 +26024 26097 26098 26025 30021 30094 30095 30022 +26025 26098 26099 26026 30022 30095 30096 30023 +26026 26099 26100 26027 30023 30096 30097 30024 +26027 26100 26101 26028 30024 30097 30098 30025 +26028 26101 26102 26029 30025 30098 30099 30026 +26029 26102 26103 26030 30026 30099 30100 30027 +26030 26103 26104 26031 30027 30100 30101 30028 +26031 26104 26105 26032 30028 30101 30102 30029 +26032 26105 26106 26033 30029 30102 30103 30030 +26033 26106 26107 26034 30030 30103 30104 30031 +26034 26107 26108 26035 30031 30104 30105 30032 +26035 26108 26109 26036 30032 30105 30106 30033 +26036 26109 26110 26037 30033 30106 30107 30034 +26037 26110 26111 26038 30034 30107 30108 30035 +26038 26111 26112 26039 30035 30108 30109 30036 +26039 26112 26113 26040 30036 30109 30110 30037 +26040 26113 26114 26041 30037 30110 30111 30038 +26041 26114 26115 26042 30038 30111 30112 30039 +26042 26115 26116 26043 30039 30112 30113 30040 +26043 26116 26117 26044 30040 30113 30114 30041 +26044 26117 26118 26045 30041 30114 30115 30042 +26045 26118 26119 26046 30042 30115 30116 30043 +26046 26119 26120 26047 30043 30116 30117 30044 +26047 26120 26121 26048 30044 30117 30118 30045 +26048 26121 26122 26049 30045 30118 30119 30046 +26049 26122 26123 26050 30046 30119 30120 30047 +26050 26123 26124 26051 30047 30120 30121 30048 +26051 26124 26125 26052 30048 30121 30122 30049 +26052 26125 26126 26053 30049 30122 30123 30050 +26053 26126 26127 26054 30050 30123 30124 30051 +26054 26127 26128 26055 30051 30124 30125 30052 +26055 26128 26129 26056 30052 30125 30126 30053 +26056 26129 26130 26057 30053 30126 30127 30054 +26057 26130 26131 26058 30054 30127 30128 30055 +26058 26131 26132 26059 30055 30128 30129 30056 +26059 26132 26133 26060 30056 30129 30130 30057 +26060 26133 26134 26061 30057 30130 30131 30058 +26061 26134 26135 26062 30058 30131 30132 30059 +26062 26135 26136 26063 30059 30132 30133 30060 +26063 26136 26137 26064 30060 30133 30134 30061 +26064 26137 26138 26065 30061 30134 30135 30062 +26065 26138 26139 26066 30062 30135 30136 30063 +26066 26139 26140 26067 30063 30136 30137 30064 +26067 26140 26141 26068 30064 30137 30138 30065 +26068 26141 26142 26069 30065 30138 30139 30066 +26069 26142 26143 26070 30066 30139 30140 30067 +26070 26143 26144 26071 30067 30140 30141 30068 +26071 26144 26145 26072 30068 30141 30142 30069 +26072 26145 26146 26073 30069 30142 30143 30070 +26073 26146 26147 26074 30070 30143 30144 30071 +26074 26147 26148 26075 30071 30144 30145 30072 +26075 26148 26149 26076 30072 30145 30146 30073 +26076 26149 26150 26077 30073 30146 30147 30074 +26077 26150 26151 26078 30074 30147 30148 30075 +26078 26151 26152 26079 30075 30148 30149 30076 +26079 26152 26153 26080 30076 30149 30150 30077 +26080 26153 26154 26081 30077 30150 30151 30078 +26081 26154 26155 26082 30078 30151 30152 30079 +26082 26155 26156 26083 30079 30152 30153 30080 +26083 26156 26157 26084 30080 30153 30154 30081 +26084 26157 26158 26085 30081 30154 30155 30082 +26085 26158 26159 26086 30082 30155 30156 30083 +26087 26160 26161 26088 30084 30157 30158 30085 +26088 26161 26162 26089 30085 30158 30159 30086 +26089 26162 26163 26090 30086 30159 30160 30087 +26090 26163 26164 26091 30087 30160 30161 30088 +26091 26164 26165 26092 30088 30161 30162 30089 +26092 26165 26166 26093 30089 30162 30163 30090 +26093 26166 26167 26094 30090 30163 30164 30091 +26094 26167 26168 26095 30091 30164 30165 30092 +26095 26168 26169 26096 30092 30165 30166 30093 +26096 26169 26170 26097 30093 30166 30167 30094 +26097 26170 26171 26098 30094 30167 30168 30095 +26098 26171 26172 26099 30095 30168 30169 30096 +26099 26172 26173 26100 30096 30169 30170 30097 +26100 26173 26174 26101 30097 30170 30171 30098 +26101 26174 26175 26102 30098 30171 30172 30099 +26102 26175 26176 26103 30099 30172 30173 30100 +26103 26176 26177 26104 30100 30173 30174 30101 +26104 26177 26178 26105 30101 30174 30175 30102 +26105 26178 26179 26106 30102 30175 30176 30103 +26106 26179 26180 26107 30103 30176 30177 30104 +26107 26180 26181 26108 30104 30177 30178 30105 +26108 26181 26182 26109 30105 30178 30179 30106 +26109 26182 26183 26110 30106 30179 30180 30107 +26110 26183 26184 26111 30107 30180 30181 30108 +26111 26184 26185 26112 30108 30181 30182 30109 +26112 26185 26186 26113 30109 30182 30183 30110 +26113 26186 26187 26114 30110 30183 30184 30111 +26114 26187 26188 26115 30111 30184 30185 30112 +26115 26188 26189 26116 30112 30185 30186 30113 +26116 26189 26190 26117 30113 30186 30187 30114 +26117 26190 26191 26118 30114 30187 30188 30115 +26118 26191 26192 26119 30115 30188 30189 30116 +26119 26192 26193 26120 30116 30189 30190 30117 +26120 26193 26194 26121 30117 30190 30191 30118 +26121 26194 26195 26122 30118 30191 30192 30119 +26122 26195 26196 26123 30119 30192 30193 30120 +26123 26196 26197 26124 30120 30193 30194 30121 +26124 26197 26198 26125 30121 30194 30195 30122 +26125 26198 26199 26126 30122 30195 30196 30123 +26126 26199 26200 26127 30123 30196 30197 30124 +26127 26200 26201 26128 30124 30197 30198 30125 +26128 26201 26202 26129 30125 30198 30199 30126 +26129 26202 26203 26130 30126 30199 30200 30127 +26130 26203 26204 26131 30127 30200 30201 30128 +26131 26204 26205 26132 30128 30201 30202 30129 +26132 26205 26206 26133 30129 30202 30203 30130 +26133 26206 26207 26134 30130 30203 30204 30131 +26134 26207 26208 26135 30131 30204 30205 30132 +26135 26208 26209 26136 30132 30205 30206 30133 +26136 26209 26210 26137 30133 30206 30207 30134 +26137 26210 26211 26138 30134 30207 30208 30135 +26138 26211 26212 26139 30135 30208 30209 30136 +26139 26212 26213 26140 30136 30209 30210 30137 +26140 26213 26214 26141 30137 30210 30211 30138 +26141 26214 26215 26142 30138 30211 30212 30139 +26142 26215 26216 26143 30139 30212 30213 30140 +26143 26216 26217 26144 30140 30213 30214 30141 +26144 26217 26218 26145 30141 30214 30215 30142 +26145 26218 26219 26146 30142 30215 30216 30143 +26146 26219 26220 26147 30143 30216 30217 30144 +26147 26220 26221 26148 30144 30217 30218 30145 +26148 26221 26222 26149 30145 30218 30219 30146 +26149 26222 26223 26150 30146 30219 30220 30147 +26150 26223 26224 26151 30147 30220 30221 30148 +26151 26224 26225 26152 30148 30221 30222 30149 +26152 26225 26226 26153 30149 30222 30223 30150 +26153 26226 26227 26154 30150 30223 30224 30151 +26154 26227 26228 26155 30151 30224 30225 30152 +26155 26228 26229 26156 30152 30225 30226 30153 +26156 26229 26230 26157 30153 30226 30227 30154 +26157 26230 26231 26158 30154 30227 30228 30155 +26158 26231 26232 26159 30155 30228 30229 30156 +26160 26233 26234 26161 30157 30230 30231 30158 +26161 26234 26235 26162 30158 30231 30232 30159 +26162 26235 26236 26163 30159 30232 30233 30160 +26163 26236 26237 26164 30160 30233 30234 30161 +26164 26237 26238 26165 30161 30234 30235 30162 +26165 26238 26239 26166 30162 30235 30236 30163 +26166 26239 26240 26167 30163 30236 30237 30164 +26167 26240 26241 26168 30164 30237 30238 30165 +26168 26241 26242 26169 30165 30238 30239 30166 +26169 26242 26243 26170 30166 30239 30240 30167 +26170 26243 26244 26171 30167 30240 30241 30168 +26171 26244 26245 26172 30168 30241 30242 30169 +26172 26245 26246 26173 30169 30242 30243 30170 +26173 26246 26247 26174 30170 30243 30244 30171 +26174 26247 26248 26175 30171 30244 30245 30172 +26175 26248 26249 26176 30172 30245 30246 30173 +26176 26249 26250 26177 30173 30246 30247 30174 +26177 26250 26251 26178 30174 30247 30248 30175 +26178 26251 26252 26179 30175 30248 30249 30176 +26179 26252 26253 26180 30176 30249 30250 30177 +26180 26253 26254 26181 30177 30250 30251 30178 +26181 26254 26255 26182 30178 30251 30252 30179 +26182 26255 26256 26183 30179 30252 30253 30180 +26183 26256 26257 26184 30180 30253 30254 30181 +26184 26257 26258 26185 30181 30254 30255 30182 +26185 26258 26259 26186 30182 30255 30256 30183 +26186 26259 26260 26187 30183 30256 30257 30184 +26187 26260 26261 26188 30184 30257 30258 30185 +26188 26261 26262 26189 30185 30258 30259 30186 +26189 26262 26263 26190 30186 30259 30260 30187 +26190 26263 26264 26191 30187 30260 30261 30188 +26191 26264 26265 26192 30188 30261 30262 30189 +26192 26265 26266 26193 30189 30262 30263 30190 +26193 26266 26267 26194 30190 30263 30264 30191 +26194 26267 26268 26195 30191 30264 30265 30192 +26195 26268 26269 26196 30192 30265 30266 30193 +26196 26269 26270 26197 30193 30266 30267 30194 +26197 26270 26271 26198 30194 30267 30268 30195 +26198 26271 26272 26199 30195 30268 30269 30196 +26199 26272 26273 26200 30196 30269 30270 30197 +26200 26273 26274 26201 30197 30270 30271 30198 +26201 26274 26275 26202 30198 30271 30272 30199 +26202 26275 26276 26203 30199 30272 30273 30200 +26203 26276 26277 26204 30200 30273 30274 30201 +26204 26277 26278 26205 30201 30274 30275 30202 +26205 26278 26279 26206 30202 30275 30276 30203 +26206 26279 26280 26207 30203 30276 30277 30204 +26207 26280 26281 26208 30204 30277 30278 30205 +26208 26281 26282 26209 30205 30278 30279 30206 +26209 26282 26283 26210 30206 30279 30280 30207 +26210 26283 26284 26211 30207 30280 30281 30208 +26211 26284 26285 26212 30208 30281 30282 30209 +26212 26285 26286 26213 30209 30282 30283 30210 +26213 26286 26287 26214 30210 30283 30284 30211 +26214 26287 26288 26215 30211 30284 30285 30212 +26215 26288 26289 26216 30212 30285 30286 30213 +26216 26289 26290 26217 30213 30286 30287 30214 +26217 26290 26291 26218 30214 30287 30288 30215 +26218 26291 26292 26219 30215 30288 30289 30216 +26219 26292 26293 26220 30216 30289 30290 30217 +26220 26293 26294 26221 30217 30290 30291 30218 +26221 26294 26295 26222 30218 30291 30292 30219 +26222 26295 26296 26223 30219 30292 30293 30220 +26223 26296 26297 26224 30220 30293 30294 30221 +26224 26297 26298 26225 30221 30294 30295 30222 +26225 26298 26299 26226 30222 30295 30296 30223 +26226 26299 26300 26227 30223 30296 30297 30224 +26227 26300 26301 26228 30224 30297 30298 30225 +26228 26301 26302 26229 30225 30298 30299 30226 +26229 26302 26303 26230 30226 30299 30300 30227 +26230 26303 26304 26231 30227 30300 30301 30228 +26231 26304 26305 26232 30228 30301 30302 30229 +26233 26306 26307 26234 30230 30303 30304 30231 +26234 26307 26308 26235 30231 30304 30305 30232 +26235 26308 26309 26236 30232 30305 30306 30233 +26236 26309 26310 26237 30233 30306 30307 30234 +26237 26310 26311 26238 30234 30307 30308 30235 +26238 26311 26312 26239 30235 30308 30309 30236 +26239 26312 26313 26240 30236 30309 30310 30237 +26240 26313 26314 26241 30237 30310 30311 30238 +26241 26314 26315 26242 30238 30311 30312 30239 +26242 26315 26316 26243 30239 30312 30313 30240 +26243 26316 26317 26244 30240 30313 30314 30241 +26244 26317 26318 26245 30241 30314 30315 30242 +26245 26318 26319 26246 30242 30315 30316 30243 +26246 26319 26320 26247 30243 30316 30317 30244 +26247 26320 26321 26248 30244 30317 30318 30245 +26248 26321 26322 26249 30245 30318 30319 30246 +26249 26322 26323 26250 30246 30319 30320 30247 +26250 26323 26324 26251 30247 30320 30321 30248 +26251 26324 26325 26252 30248 30321 30322 30249 +26252 26325 26326 26253 30249 30322 30323 30250 +26253 26326 26327 26254 30250 30323 30324 30251 +26254 26327 26328 26255 30251 30324 30325 30252 +26255 26328 26329 26256 30252 30325 30326 30253 +26256 26329 26330 26257 30253 30326 30327 30254 +26257 26330 26331 26258 30254 30327 30328 30255 +26258 26331 26332 26259 30255 30328 30329 30256 +26259 26332 26333 26260 30256 30329 30330 30257 +26260 26333 26334 26261 30257 30330 30331 30258 +26261 26334 26335 26262 30258 30331 30332 30259 +26262 26335 26336 26263 30259 30332 30333 30260 +26263 26336 26337 26264 30260 30333 30334 30261 +26264 26337 26338 26265 30261 30334 30335 30262 +26265 26338 26339 26266 30262 30335 30336 30263 +26266 26339 26340 26267 30263 30336 30337 30264 +26267 26340 26341 26268 30264 30337 30338 30265 +26268 26341 26342 26269 30265 30338 30339 30266 +26269 26342 26343 26270 30266 30339 30340 30267 +26270 26343 26344 26271 30267 30340 30341 30268 +26271 26344 26345 26272 30268 30341 30342 30269 +26272 26345 26346 26273 30269 30342 30343 30270 +26273 26346 26347 26274 30270 30343 30344 30271 +26274 26347 26348 26275 30271 30344 30345 30272 +26275 26348 26349 26276 30272 30345 30346 30273 +26276 26349 26350 26277 30273 30346 30347 30274 +26277 26350 26351 26278 30274 30347 30348 30275 +26278 26351 26352 26279 30275 30348 30349 30276 +26279 26352 26353 26280 30276 30349 30350 30277 +26280 26353 26354 26281 30277 30350 30351 30278 +26281 26354 26355 26282 30278 30351 30352 30279 +26282 26355 26356 26283 30279 30352 30353 30280 +26283 26356 26357 26284 30280 30353 30354 30281 +26284 26357 26358 26285 30281 30354 30355 30282 +26285 26358 26359 26286 30282 30355 30356 30283 +26286 26359 26360 26287 30283 30356 30357 30284 +26287 26360 26361 26288 30284 30357 30358 30285 +26288 26361 26362 26289 30285 30358 30359 30286 +26289 26362 26363 26290 30286 30359 30360 30287 +26290 26363 26364 26291 30287 30360 30361 30288 +26291 26364 26365 26292 30288 30361 30362 30289 +26292 26365 26366 26293 30289 30362 30363 30290 +26293 26366 26367 26294 30290 30363 30364 30291 +26294 26367 26368 26295 30291 30364 30365 30292 +26295 26368 26369 26296 30292 30365 30366 30293 +26296 26369 26370 26297 30293 30366 30367 30294 +26297 26370 26371 26298 30294 30367 30368 30295 +26298 26371 26372 26299 30295 30368 30369 30296 +26299 26372 26373 26300 30296 30369 30370 30297 +26300 26373 26374 26301 30297 30370 30371 30298 +26301 26374 26375 26302 30298 30371 30372 30299 +26302 26375 26376 26303 30299 30372 30373 30300 +26303 26376 26377 26304 30300 30373 30374 30301 +26304 26377 26378 26305 30301 30374 30375 30302 +26306 26379 26380 26307 30303 30376 30377 30304 +26307 26380 26381 26308 30304 30377 30378 30305 +26308 26381 26382 26309 30305 30378 30379 30306 +26309 26382 26383 26310 30306 30379 30380 30307 +26310 26383 26384 26311 30307 30380 30381 30308 +26311 26384 26385 26312 30308 30381 30382 30309 +26312 26385 26386 26313 30309 30382 30383 30310 +26313 26386 26387 26314 30310 30383 30384 30311 +26314 26387 26388 26315 30311 30384 30385 30312 +26315 26388 26389 26316 30312 30385 30386 30313 +26316 26389 26390 26317 30313 30386 30387 30314 +26317 26390 26391 26318 30314 30387 30388 30315 +26318 26391 26392 26319 30315 30388 30389 30316 +26319 26392 26393 26320 30316 30389 30390 30317 +26320 26393 26394 26321 30317 30390 30391 30318 +26321 26394 26395 26322 30318 30391 30392 30319 +26322 26395 26396 26323 30319 30392 30393 30320 +26323 26396 26397 26324 30320 30393 30394 30321 +26324 26397 26398 26325 30321 30394 30395 30322 +26325 26398 26399 26326 30322 30395 30396 30323 +26326 26399 26400 26327 30323 30396 30397 30324 +26327 26400 26401 26328 30324 30397 30398 30325 +26328 26401 26402 26329 30325 30398 30399 30326 +26329 26402 26403 26330 30326 30399 30400 30327 +26330 26403 26404 26331 30327 30400 30401 30328 +26331 26404 26405 26332 30328 30401 30402 30329 +26332 26405 26406 26333 30329 30402 30403 30330 +26333 26406 26407 26334 30330 30403 30404 30331 +26334 26407 26408 26335 30331 30404 30405 30332 +26335 26408 26409 26336 30332 30405 30406 30333 +26336 26409 26410 26337 30333 30406 30407 30334 +26337 26410 26411 26338 30334 30407 30408 30335 +26338 26411 26412 26339 30335 30408 30409 30336 +26339 26412 26413 26340 30336 30409 30410 30337 +26340 26413 26414 26341 30337 30410 30411 30338 +26341 26414 26415 26342 30338 30411 30412 30339 +26342 26415 26416 26343 30339 30412 30413 30340 +26343 26416 26417 26344 30340 30413 30414 30341 +26344 26417 26418 26345 30341 30414 30415 30342 +26345 26418 26419 26346 30342 30415 30416 30343 +26346 26419 26420 26347 30343 30416 30417 30344 +26347 26420 26421 26348 30344 30417 30418 30345 +26348 26421 26422 26349 30345 30418 30419 30346 +26349 26422 26423 26350 30346 30419 30420 30347 +26350 26423 26424 26351 30347 30420 30421 30348 +26351 26424 26425 26352 30348 30421 30422 30349 +26352 26425 26426 26353 30349 30422 30423 30350 +26353 26426 26427 26354 30350 30423 30424 30351 +26354 26427 26428 26355 30351 30424 30425 30352 +26355 26428 26429 26356 30352 30425 30426 30353 +26356 26429 26430 26357 30353 30426 30427 30354 +26357 26430 26431 26358 30354 30427 30428 30355 +26358 26431 26432 26359 30355 30428 30429 30356 +26359 26432 26433 26360 30356 30429 30430 30357 +26360 26433 26434 26361 30357 30430 30431 30358 +26361 26434 26435 26362 30358 30431 30432 30359 +26362 26435 26436 26363 30359 30432 30433 30360 +26363 26436 26437 26364 30360 30433 30434 30361 +26364 26437 26438 26365 30361 30434 30435 30362 +26365 26438 26439 26366 30362 30435 30436 30363 +26366 26439 26440 26367 30363 30436 30437 30364 +26367 26440 26441 26368 30364 30437 30438 30365 +26368 26441 26442 26369 30365 30438 30439 30366 +26369 26442 26443 26370 30366 30439 30440 30367 +26370 26443 26444 26371 30367 30440 30441 30368 +26371 26444 26445 26372 30368 30441 30442 30369 +26372 26445 26446 26373 30369 30442 30443 30370 +26373 26446 26447 26374 30370 30443 30444 30371 +26374 26447 26448 26375 30371 30444 30445 30372 +26375 26448 26449 26376 30372 30445 30446 30373 +26376 26449 26450 26377 30373 30446 30447 30374 +26377 26450 26451 26378 30374 30447 30448 30375 +26452 26453 26454 26455 30449 30450 30451 30452 +26453 26456 26457 26454 30450 30453 30454 30451 +26454 26457 26458 26459 30451 30454 30455 30456 +26454 26459 26460 26455 30451 30456 30457 30452 +26456 26461 26462 26457 30453 30458 30459 30454 +26457 26462 26463 26458 30454 30459 30460 30455 +26458 26463 26464 26465 30455 30460 30461 30462 +26458 26465 26466 26459 30455 30462 30463 30456 +26459 26466 26467 26460 30456 30463 30464 30457 +26461 26468 26469 26462 30458 30465 30466 30459 +26462 26469 26470 26463 30459 30466 30467 30460 +26463 26470 26471 26464 30460 30467 30468 30461 +26464 26471 26472 26473 30461 30468 30469 30470 +26464 26473 26474 26465 30461 30470 30471 30462 +26465 26474 26475 26466 30462 30471 30472 30463 +26466 26475 26476 26467 30463 30472 30473 30464 +26468 26477 26478 26469 30465 30474 30475 30466 +26469 26478 26479 26470 30466 30475 30476 30467 +26470 26479 26480 26471 30467 30476 30477 30468 +26471 26480 26481 26472 30468 30477 30478 30469 +26472 26481 26482 26483 30469 30478 30479 30480 +26472 26483 26484 26473 30469 30480 30481 30470 +26473 26484 26485 26474 30470 30481 30482 30471 +26474 26485 26486 26475 30471 30482 30483 30472 +26475 26486 26487 26476 30472 30483 30484 30473 +26477 26488 26489 26478 30474 30485 30486 30475 +26478 26489 26490 26479 30475 30486 30487 30476 +26479 26490 26491 26480 30476 30487 30488 30477 +26480 26491 26492 26481 30477 30488 30489 30478 +26481 26492 26493 26482 30478 30489 30490 30479 +26482 26493 26494 26495 30479 30490 30491 30492 +26482 26495 26496 26483 30479 30492 30493 30480 +26483 26496 26497 26484 30480 30493 30494 30481 +26484 26497 26498 26485 30481 30494 30495 30482 +26485 26498 26499 26486 30482 30495 30496 30483 +26486 26499 26500 26487 30483 30496 30497 30484 +26488 26501 26502 26489 30485 30498 30499 30486 +26489 26502 26503 26490 30486 30499 30500 30487 +26490 26503 26504 26491 30487 30500 30501 30488 +26491 26504 26505 26492 30488 30501 30502 30489 +26492 26505 26506 26493 30489 30502 30503 30490 +26493 26506 26507 26494 30490 30503 30504 30491 +26494 26507 26508 26509 30491 30504 30505 30506 +26494 26509 26510 26495 30491 30506 30507 30492 +26495 26510 26511 26496 30492 30507 30508 30493 +26496 26511 26512 26497 30493 30508 30509 30494 +26497 26512 26513 26498 30494 30509 30510 30495 +26498 26513 26514 26499 30495 30510 30511 30496 +26499 26514 26515 26500 30496 30511 30512 30497 +26501 26516 26517 26502 30498 30513 30514 30499 +26502 26517 26518 26503 30499 30514 30515 30500 +26503 26518 26519 26504 30500 30515 30516 30501 +26504 26519 26520 26505 30501 30516 30517 30502 +26505 26520 26521 26506 30502 30517 30518 30503 +26506 26521 26522 26507 30503 30518 30519 30504 +26507 26522 26523 26508 30504 30519 30520 30505 +26508 26523 26524 26525 30505 30520 30521 30522 +26508 26525 26526 26509 30505 30522 30523 30506 +26509 26526 26527 26510 30506 30523 30524 30507 +26510 26527 26528 26511 30507 30524 30525 30508 +26511 26528 26529 26512 30508 30525 30526 30509 +26512 26529 26530 26513 30509 30526 30527 30510 +26513 26530 26531 26514 30510 30527 30528 30511 +26514 26531 26532 26515 30511 30528 30529 30512 +26516 26533 26534 26517 30513 30530 30531 30514 +26517 26534 26535 26518 30514 30531 30532 30515 +26518 26535 26536 26519 30515 30532 30533 30516 +26519 26536 26537 26520 30516 30533 30534 30517 +26520 26537 26538 26521 30517 30534 30535 30518 +26521 26538 26539 26522 30518 30535 30536 30519 +26522 26539 26540 26523 30519 30536 30537 30520 +26523 26540 26541 26524 30520 30537 30538 30521 +26524 26541 26542 26543 30521 30538 30539 30540 +26524 26543 26544 26525 30521 30540 30541 30522 +26525 26544 26545 26526 30522 30541 30542 30523 +26526 26545 26546 26527 30523 30542 30543 30524 +26527 26546 26547 26528 30524 30543 30544 30525 +26528 26547 26548 26529 30525 30544 30545 30526 +26529 26548 26549 26530 30526 30545 30546 30527 +26530 26549 26550 26531 30527 30546 30547 30528 +26531 26550 26551 26532 30528 30547 30548 30529 +26533 26552 26553 26534 30530 30549 30550 30531 +26534 26553 26554 26535 30531 30550 30551 30532 +26535 26554 26555 26536 30532 30551 30552 30533 +26536 26555 26556 26537 30533 30552 30553 30534 +26537 26556 26557 26538 30534 30553 30554 30535 +26538 26557 26558 26539 30535 30554 30555 30536 +26539 26558 26559 26540 30536 30555 30556 30537 +26540 26559 26560 26541 30537 30556 30557 30538 +26541 26560 26561 26542 30538 30557 30558 30539 +26542 26561 26562 26563 30539 30558 30559 30560 +26542 26563 26564 26543 30539 30560 30561 30540 +26543 26564 26565 26544 30540 30561 30562 30541 +26544 26565 26566 26545 30541 30562 30563 30542 +26545 26566 26567 26546 30542 30563 30564 30543 +26546 26567 26568 26547 30543 30564 30565 30544 +26547 26568 26569 26548 30544 30565 30566 30545 +26548 26569 26570 26549 30545 30566 30567 30546 +26549 26570 26571 26550 30546 30567 30568 30547 +26550 26571 26572 26551 30547 30568 30569 30548 +26552 26573 26574 26553 30549 30570 30571 30550 +26553 26574 26575 26554 30550 30571 30572 30551 +26554 26575 26576 26555 30551 30572 30573 30552 +26555 26576 26577 26556 30552 30573 30574 30553 +26556 26577 26578 26557 30553 30574 30575 30554 +26557 26578 26579 26558 30554 30575 30576 30555 +26558 26579 26580 26559 30555 30576 30577 30556 +26559 26580 26581 26560 30556 30577 30578 30557 +26560 26581 26582 26561 30557 30578 30579 30558 +26561 26582 26583 26562 30558 30579 30580 30559 +26562 26583 26584 26585 30559 30580 30581 30582 +26562 26585 26586 26563 30559 30582 30583 30560 +26563 26586 26587 26564 30560 30583 30584 30561 +26564 26587 26588 26565 30561 30584 30585 30562 +26565 26588 26589 26566 30562 30585 30586 30563 +26566 26589 26590 26567 30563 30586 30587 30564 +26567 26590 26591 26568 30564 30587 30588 30565 +26568 26591 26592 26569 30565 30588 30589 30566 +26569 26592 26593 26570 30566 30589 30590 30567 +26570 26593 26594 26571 30567 30590 30591 30568 +26571 26594 26595 26572 30568 30591 30592 30569 +26573 26596 26597 26574 30570 30593 30594 30571 +26574 26597 26598 26575 30571 30594 30595 30572 +26575 26598 26599 26576 30572 30595 30596 30573 +26576 26599 26600 26577 30573 30596 30597 30574 +26577 26600 26601 26578 30574 30597 30598 30575 +26578 26601 26602 26579 30575 30598 30599 30576 +26579 26602 26603 26580 30576 30599 30600 30577 +26580 26603 26604 26581 30577 30600 30601 30578 +26581 26604 26605 26582 30578 30601 30602 30579 +26582 26605 26606 26583 30579 30602 30603 30580 +26583 26606 26607 26584 30580 30603 30604 30581 +26584 26607 26608 26609 30581 30604 30605 30606 +26584 26609 26610 26585 30581 30606 30607 30582 +26585 26610 26611 26586 30582 30607 30608 30583 +26586 26611 26612 26587 30583 30608 30609 30584 +26587 26612 26613 26588 30584 30609 30610 30585 +26588 26613 26614 26589 30585 30610 30611 30586 +26589 26614 26615 26590 30586 30611 30612 30587 +26590 26615 26616 26591 30587 30612 30613 30588 +26591 26616 26617 26592 30588 30613 30614 30589 +26592 26617 26618 26593 30589 30614 30615 30590 +26593 26618 26619 26594 30590 30615 30616 30591 +26594 26619 26620 26595 30591 30616 30617 30592 +26596 26621 26622 26597 30593 30618 30619 30594 +26597 26622 26623 26598 30594 30619 30620 30595 +26598 26623 26624 26599 30595 30620 30621 30596 +26599 26624 26625 26600 30596 30621 30622 30597 +26600 26625 26626 26601 30597 30622 30623 30598 +26601 26626 26627 26602 30598 30623 30624 30599 +26602 26627 26628 26603 30599 30624 30625 30600 +26603 26628 26629 26604 30600 30625 30626 30601 +26604 26629 26630 26605 30601 30626 30627 30602 +26605 26630 26631 26606 30602 30627 30628 30603 +26606 26631 26632 26607 30603 30628 30629 30604 +26607 26632 26633 26608 30604 30629 30630 30605 +26608 26633 26634 26635 30605 30630 30631 30632 +26608 26635 26636 26609 30605 30632 30633 30606 +26609 26636 26637 26610 30606 30633 30634 30607 +26610 26637 26638 26611 30607 30634 30635 30608 +26611 26638 26639 26612 30608 30635 30636 30609 +26612 26639 26640 26613 30609 30636 30637 30610 +26613 26640 26641 26614 30610 30637 30638 30611 +26614 26641 26642 26615 30611 30638 30639 30612 +26615 26642 26643 26616 30612 30639 30640 30613 +26616 26643 26644 26617 30613 30640 30641 30614 +26617 26644 26645 26618 30614 30641 30642 30615 +26618 26645 26646 26619 30615 30642 30643 30616 +26619 26646 26647 26620 30616 30643 30644 30617 +26621 26648 26649 26622 30618 30645 30646 30619 +26622 26649 26650 26623 30619 30646 30647 30620 +26623 26650 26651 26624 30620 30647 30648 30621 +26624 26651 26652 26625 30621 30648 30649 30622 +26625 26652 26653 26626 30622 30649 30650 30623 +26626 26653 26654 26627 30623 30650 30651 30624 +26627 26654 26655 26628 30624 30651 30652 30625 +26628 26655 26656 26629 30625 30652 30653 30626 +26629 26656 26657 26630 30626 30653 30654 30627 +26630 26657 26658 26631 30627 30654 30655 30628 +26631 26658 26659 26632 30628 30655 30656 30629 +26632 26659 26660 26633 30629 30656 30657 30630 +26633 26660 26661 26634 30630 30657 30658 30631 +26634 26661 26662 26663 30631 30658 30659 30660 +26634 26663 26664 26635 30631 30660 30661 30632 +26635 26664 26665 26636 30632 30661 30662 30633 +26636 26665 26666 26637 30633 30662 30663 30634 +26637 26666 26667 26638 30634 30663 30664 30635 +26638 26667 26668 26639 30635 30664 30665 30636 +26639 26668 26669 26640 30636 30665 30666 30637 +26640 26669 26670 26641 30637 30666 30667 30638 +26641 26670 26671 26642 30638 30667 30668 30639 +26642 26671 26672 26643 30639 30668 30669 30640 +26643 26672 26673 26644 30640 30669 30670 30641 +26644 26673 26674 26645 30641 30670 30671 30642 +26645 26674 26675 26646 30642 30671 30672 30643 +26646 26675 26676 26647 30643 30672 30673 30644 +26648 26677 26678 26649 30645 30674 30675 30646 +26649 26678 26679 26650 30646 30675 30676 30647 +26650 26679 26680 26651 30647 30676 30677 30648 +26651 26680 26681 26652 30648 30677 30678 30649 +26652 26681 26682 26653 30649 30678 30679 30650 +26653 26682 26683 26654 30650 30679 30680 30651 +26654 26683 26684 26655 30651 30680 30681 30652 +26655 26684 26685 26656 30652 30681 30682 30653 +26656 26685 26686 26657 30653 30682 30683 30654 +26657 26686 26687 26658 30654 30683 30684 30655 +26658 26687 26688 26659 30655 30684 30685 30656 +26659 26688 26689 26660 30656 30685 30686 30657 +26660 26689 26690 26661 30657 30686 30687 30658 +26661 26690 26691 26662 30658 30687 30688 30659 +26662 26691 26692 26693 30659 30688 30689 30690 +26662 26693 26694 26663 30659 30690 30691 30660 +26663 26694 26695 26664 30660 30691 30692 30661 +26664 26695 26696 26665 30661 30692 30693 30662 +26665 26696 26697 26666 30662 30693 30694 30663 +26666 26697 26698 26667 30663 30694 30695 30664 +26667 26698 26699 26668 30664 30695 30696 30665 +26668 26699 26700 26669 30665 30696 30697 30666 +26669 26700 26701 26670 30666 30697 30698 30667 +26670 26701 26702 26671 30667 30698 30699 30668 +26671 26702 26703 26672 30668 30699 30700 30669 +26672 26703 26704 26673 30669 30700 30701 30670 +26673 26704 26705 26674 30670 30701 30702 30671 +26674 26705 26706 26675 30671 30702 30703 30672 +26675 26706 26707 26676 30672 30703 30704 30673 +26677 26708 26709 26678 30674 30705 30706 30675 +26678 26709 26710 26679 30675 30706 30707 30676 +26679 26710 26711 26680 30676 30707 30708 30677 +26680 26711 26712 26681 30677 30708 30709 30678 +26681 26712 26713 26682 30678 30709 30710 30679 +26682 26713 26714 26683 30679 30710 30711 30680 +26683 26714 26715 26684 30680 30711 30712 30681 +26684 26715 26716 26685 30681 30712 30713 30682 +26685 26716 26717 26686 30682 30713 30714 30683 +26686 26717 26718 26687 30683 30714 30715 30684 +26687 26718 26719 26688 30684 30715 30716 30685 +26688 26719 26720 26689 30685 30716 30717 30686 +26689 26720 26721 26690 30686 30717 30718 30687 +26690 26721 26722 26691 30687 30718 30719 30688 +26691 26722 26723 26692 30688 30719 30720 30689 +26692 26723 26724 26725 30689 30720 30721 30722 +26692 26725 26726 26693 30689 30722 30723 30690 +26693 26726 26727 26694 30690 30723 30724 30691 +26694 26727 26728 26695 30691 30724 30725 30692 +26695 26728 26729 26696 30692 30725 30726 30693 +26696 26729 26730 26697 30693 30726 30727 30694 +26697 26730 26731 26698 30694 30727 30728 30695 +26698 26731 26732 26699 30695 30728 30729 30696 +26699 26732 26733 26700 30696 30729 30730 30697 +26700 26733 26734 26701 30697 30730 30731 30698 +26701 26734 26735 26702 30698 30731 30732 30699 +26702 26735 26736 26703 30699 30732 30733 30700 +26703 26736 26737 26704 30700 30733 30734 30701 +26704 26737 26738 26705 30701 30734 30735 30702 +26705 26738 26739 26706 30702 30735 30736 30703 +26706 26739 26740 26707 30703 30736 30737 30704 +26708 26741 26742 26709 30705 30738 30739 30706 +26709 26742 26743 26710 30706 30739 30740 30707 +26710 26743 26744 26711 30707 30740 30741 30708 +26711 26744 26745 26712 30708 30741 30742 30709 +26712 26745 26746 26713 30709 30742 30743 30710 +26713 26746 26747 26714 30710 30743 30744 30711 +26714 26747 26748 26715 30711 30744 30745 30712 +26715 26748 26749 26716 30712 30745 30746 30713 +26716 26749 26750 26717 30713 30746 30747 30714 +26717 26750 26751 26718 30714 30747 30748 30715 +26718 26751 26752 26719 30715 30748 30749 30716 +26719 26752 26753 26720 30716 30749 30750 30717 +26720 26753 26754 26721 30717 30750 30751 30718 +26721 26754 26755 26722 30718 30751 30752 30719 +26722 26755 26756 26723 30719 30752 30753 30720 +26723 26756 26757 26724 30720 30753 30754 30721 +26724 26757 26758 26759 30721 30754 30755 30756 +26724 26759 26760 26725 30721 30756 30757 30722 +26725 26760 26761 26726 30722 30757 30758 30723 +26726 26761 26762 26727 30723 30758 30759 30724 +26727 26762 26763 26728 30724 30759 30760 30725 +26728 26763 26764 26729 30725 30760 30761 30726 +26729 26764 26765 26730 30726 30761 30762 30727 +26730 26765 26766 26731 30727 30762 30763 30728 +26731 26766 26767 26732 30728 30763 30764 30729 +26732 26767 26768 26733 30729 30764 30765 30730 +26733 26768 26769 26734 30730 30765 30766 30731 +26734 26769 26770 26735 30731 30766 30767 30732 +26735 26770 26771 26736 30732 30767 30768 30733 +26736 26771 26772 26737 30733 30768 30769 30734 +26737 26772 26773 26738 30734 30769 30770 30735 +26738 26773 26774 26739 30735 30770 30771 30736 +26739 26774 26775 26740 30736 30771 30772 30737 +26741 26776 26777 26742 30738 30773 30774 30739 +26742 26777 26778 26743 30739 30774 30775 30740 +26743 26778 26779 26744 30740 30775 30776 30741 +26744 26779 26780 26745 30741 30776 30777 30742 +26745 26780 26781 26746 30742 30777 30778 30743 +26746 26781 26782 26747 30743 30778 30779 30744 +26747 26782 26783 26748 30744 30779 30780 30745 +26748 26783 26784 26749 30745 30780 30781 30746 +26749 26784 26785 26750 30746 30781 30782 30747 +26750 26785 26786 26751 30747 30782 30783 30748 +26751 26786 26787 26752 30748 30783 30784 30749 +26752 26787 26788 26753 30749 30784 30785 30750 +26753 26788 26789 26754 30750 30785 30786 30751 +26754 26789 26790 26755 30751 30786 30787 30752 +26755 26790 26791 26756 30752 30787 30788 30753 +26756 26791 26792 26757 30753 30788 30789 30754 +26757 26792 26793 26758 30754 30789 30790 30755 +26758 26793 26794 26795 30755 30790 30791 30792 +26758 26795 26796 26759 30755 30792 30793 30756 +26759 26796 26797 26760 30756 30793 30794 30757 +26760 26797 26798 26761 30757 30794 30795 30758 +26761 26798 26799 26762 30758 30795 30796 30759 +26762 26799 26800 26763 30759 30796 30797 30760 +26763 26800 26801 26764 30760 30797 30798 30761 +26764 26801 26802 26765 30761 30798 30799 30762 +26765 26802 26803 26766 30762 30799 30800 30763 +26766 26803 26804 26767 30763 30800 30801 30764 +26767 26804 26805 26768 30764 30801 30802 30765 +26768 26805 26806 26769 30765 30802 30803 30766 +26769 26806 26807 26770 30766 30803 30804 30767 +26770 26807 26808 26771 30767 30804 30805 30768 +26771 26808 26809 26772 30768 30805 30806 30769 +26772 26809 26810 26773 30769 30806 30807 30770 +26773 26810 26811 26774 30770 30807 30808 30771 +26774 26811 26812 26775 30771 30808 30809 30772 +26776 26813 26814 26777 30773 30810 30811 30774 +26777 26814 26815 26778 30774 30811 30812 30775 +26778 26815 26816 26779 30775 30812 30813 30776 +26779 26816 26817 26780 30776 30813 30814 30777 +26780 26817 26818 26781 30777 30814 30815 30778 +26781 26818 26819 26782 30778 30815 30816 30779 +26782 26819 26820 26783 30779 30816 30817 30780 +26783 26820 26821 26784 30780 30817 30818 30781 +26784 26821 26822 26785 30781 30818 30819 30782 +26785 26822 26823 26786 30782 30819 30820 30783 +26786 26823 26824 26787 30783 30820 30821 30784 +26787 26824 26825 26788 30784 30821 30822 30785 +26788 26825 26826 26789 30785 30822 30823 30786 +26789 26826 26827 26790 30786 30823 30824 30787 +26790 26827 26828 26791 30787 30824 30825 30788 +26791 26828 26829 26792 30788 30825 30826 30789 +26792 26829 26830 26793 30789 30826 30827 30790 +26793 26830 26831 26794 30790 30827 30828 30791 +26794 26831 26832 26833 30791 30828 30829 30830 +26794 26833 26834 26795 30791 30830 30831 30792 +26795 26834 26835 26796 30792 30831 30832 30793 +26796 26835 26836 26797 30793 30832 30833 30794 +26797 26836 26837 26798 30794 30833 30834 30795 +26798 26837 26838 26799 30795 30834 30835 30796 +26799 26838 26839 26800 30796 30835 30836 30797 +26800 26839 26840 26801 30797 30836 30837 30798 +26801 26840 26841 26802 30798 30837 30838 30799 +26802 26841 26842 26803 30799 30838 30839 30800 +26803 26842 26843 26804 30800 30839 30840 30801 +26804 26843 26844 26805 30801 30840 30841 30802 +26805 26844 26845 26806 30802 30841 30842 30803 +26806 26845 26846 26807 30803 30842 30843 30804 +26807 26846 26847 26808 30804 30843 30844 30805 +26808 26847 26848 26809 30805 30844 30845 30806 +26809 26848 26849 26810 30806 30845 30846 30807 +26810 26849 26850 26811 30807 30846 30847 30808 +26811 26850 26851 26812 30808 30847 30848 30809 +26813 26852 26853 26814 30810 30849 30850 30811 +26814 26853 26854 26815 30811 30850 30851 30812 +26815 26854 26855 26816 30812 30851 30852 30813 +26816 26855 26856 26817 30813 30852 30853 30814 +26817 26856 26857 26818 30814 30853 30854 30815 +26818 26857 26858 26819 30815 30854 30855 30816 +26819 26858 26859 26820 30816 30855 30856 30817 +26820 26859 26860 26821 30817 30856 30857 30818 +26821 26860 26861 26822 30818 30857 30858 30819 +26822 26861 26862 26823 30819 30858 30859 30820 +26823 26862 26863 26824 30820 30859 30860 30821 +26824 26863 26864 26825 30821 30860 30861 30822 +26825 26864 26865 26826 30822 30861 30862 30823 +26826 26865 26866 26827 30823 30862 30863 30824 +26827 26866 26867 26828 30824 30863 30864 30825 +26828 26867 26868 26829 30825 30864 30865 30826 +26829 26868 26869 26830 30826 30865 30866 30827 +26830 26869 26870 26831 30827 30866 30867 30828 +26831 26870 26871 26832 30828 30867 30868 30829 +26832 26871 26872 26873 30829 30868 30869 30870 +26832 26873 26874 26833 30829 30870 30871 30830 +26833 26874 26875 26834 30830 30871 30872 30831 +26834 26875 26876 26835 30831 30872 30873 30832 +26835 26876 26877 26836 30832 30873 30874 30833 +26836 26877 26878 26837 30833 30874 30875 30834 +26837 26878 26879 26838 30834 30875 30876 30835 +26838 26879 26880 26839 30835 30876 30877 30836 +26839 26880 26881 26840 30836 30877 30878 30837 +26840 26881 26882 26841 30837 30878 30879 30838 +26841 26882 26883 26842 30838 30879 30880 30839 +26842 26883 26884 26843 30839 30880 30881 30840 +26843 26884 26885 26844 30840 30881 30882 30841 +26844 26885 26886 26845 30841 30882 30883 30842 +26845 26886 26887 26846 30842 30883 30884 30843 +26846 26887 26888 26847 30843 30884 30885 30844 +26847 26888 26889 26848 30844 30885 30886 30845 +26848 26889 26890 26849 30845 30886 30887 30846 +26849 26890 26891 26850 30846 30887 30888 30847 +26850 26891 26892 26851 30847 30888 30889 30848 +26852 26893 26894 26853 30849 30890 30891 30850 +26853 26894 26895 26854 30850 30891 30892 30851 +26854 26895 26896 26855 30851 30892 30893 30852 +26855 26896 26897 26856 30852 30893 30894 30853 +26856 26897 26898 26857 30853 30894 30895 30854 +26857 26898 26899 26858 30854 30895 30896 30855 +26858 26899 26900 26859 30855 30896 30897 30856 +26859 26900 26901 26860 30856 30897 30898 30857 +26860 26901 26902 26861 30857 30898 30899 30858 +26861 26902 26903 26862 30858 30899 30900 30859 +26862 26903 26904 26863 30859 30900 30901 30860 +26863 26904 26905 26864 30860 30901 30902 30861 +26864 26905 26906 26865 30861 30902 30903 30862 +26865 26906 26907 26866 30862 30903 30904 30863 +26866 26907 26908 26867 30863 30904 30905 30864 +26867 26908 26909 26868 30864 30905 30906 30865 +26868 26909 26910 26869 30865 30906 30907 30866 +26869 26910 26911 26870 30866 30907 30908 30867 +26870 26911 26912 26871 30867 30908 30909 30868 +26871 26912 26913 26872 30868 30909 30910 30869 +26872 26913 26914 26915 30869 30910 30911 30912 +26872 26915 26916 26873 30869 30912 30913 30870 +26873 26916 26917 26874 30870 30913 30914 30871 +26874 26917 26918 26875 30871 30914 30915 30872 +26875 26918 26919 26876 30872 30915 30916 30873 +26876 26919 26920 26877 30873 30916 30917 30874 +26877 26920 26921 26878 30874 30917 30918 30875 +26878 26921 26922 26879 30875 30918 30919 30876 +26879 26922 26923 26880 30876 30919 30920 30877 +26880 26923 26924 26881 30877 30920 30921 30878 +26881 26924 26925 26882 30878 30921 30922 30879 +26882 26925 26926 26883 30879 30922 30923 30880 +26883 26926 26927 26884 30880 30923 30924 30881 +26884 26927 26928 26885 30881 30924 30925 30882 +26885 26928 26929 26886 30882 30925 30926 30883 +26886 26929 26930 26887 30883 30926 30927 30884 +26887 26930 26931 26888 30884 30927 30928 30885 +26888 26931 26932 26889 30885 30928 30929 30886 +26889 26932 26933 26890 30886 30929 30930 30887 +26890 26933 26934 26891 30887 30930 30931 30888 +26891 26934 26935 26892 30888 30931 30932 30889 +26893 26936 26937 26894 30890 30933 30934 30891 +26894 26937 26938 26895 30891 30934 30935 30892 +26895 26938 26939 26896 30892 30935 30936 30893 +26896 26939 26940 26897 30893 30936 30937 30894 +26897 26940 26941 26898 30894 30937 30938 30895 +26898 26941 26942 26899 30895 30938 30939 30896 +26899 26942 26943 26900 30896 30939 30940 30897 +26900 26943 26944 26901 30897 30940 30941 30898 +26901 26944 26945 26902 30898 30941 30942 30899 +26902 26945 26946 26903 30899 30942 30943 30900 +26903 26946 26947 26904 30900 30943 30944 30901 +26904 26947 26948 26905 30901 30944 30945 30902 +26905 26948 26949 26906 30902 30945 30946 30903 +26906 26949 26950 26907 30903 30946 30947 30904 +26907 26950 26951 26908 30904 30947 30948 30905 +26908 26951 26952 26909 30905 30948 30949 30906 +26909 26952 26953 26910 30906 30949 30950 30907 +26910 26953 26954 26911 30907 30950 30951 30908 +26911 26954 26955 26912 30908 30951 30952 30909 +26912 26955 26956 26913 30909 30952 30953 30910 +26913 26956 26957 26914 30910 30953 30954 30911 +26914 26957 26958 26959 30911 30954 30955 30956 +26914 26959 26960 26915 30911 30956 30957 30912 +26915 26960 26961 26916 30912 30957 30958 30913 +26916 26961 26962 26917 30913 30958 30959 30914 +26917 26962 26963 26918 30914 30959 30960 30915 +26918 26963 26964 26919 30915 30960 30961 30916 +26919 26964 26965 26920 30916 30961 30962 30917 +26920 26965 26966 26921 30917 30962 30963 30918 +26921 26966 26967 26922 30918 30963 30964 30919 +26922 26967 26968 26923 30919 30964 30965 30920 +26923 26968 26969 26924 30920 30965 30966 30921 +26924 26969 26970 26925 30921 30966 30967 30922 +26925 26970 26971 26926 30922 30967 30968 30923 +26926 26971 26972 26927 30923 30968 30969 30924 +26927 26972 26973 26928 30924 30969 30970 30925 +26928 26973 26974 26929 30925 30970 30971 30926 +26929 26974 26975 26930 30926 30971 30972 30927 +26930 26975 26976 26931 30927 30972 30973 30928 +26931 26976 26977 26932 30928 30973 30974 30929 +26932 26977 26978 26933 30929 30974 30975 30930 +26933 26978 26979 26934 30930 30975 30976 30931 +26934 26979 26980 26935 30931 30976 30977 30932 +26936 26981 26982 26937 30933 30978 30979 30934 +26937 26982 26983 26938 30934 30979 30980 30935 +26938 26983 26984 26939 30935 30980 30981 30936 +26939 26984 26985 26940 30936 30981 30982 30937 +26940 26985 26986 26941 30937 30982 30983 30938 +26941 26986 26987 26942 30938 30983 30984 30939 +26942 26987 26988 26943 30939 30984 30985 30940 +26943 26988 26989 26944 30940 30985 30986 30941 +26944 26989 26990 26945 30941 30986 30987 30942 +26945 26990 26991 26946 30942 30987 30988 30943 +26946 26991 26992 26947 30943 30988 30989 30944 +26947 26992 26993 26948 30944 30989 30990 30945 +26948 26993 26994 26949 30945 30990 30991 30946 +26949 26994 26995 26950 30946 30991 30992 30947 +26950 26995 26996 26951 30947 30992 30993 30948 +26951 26996 26997 26952 30948 30993 30994 30949 +26952 26997 26998 26953 30949 30994 30995 30950 +26953 26998 26999 26954 30950 30995 30996 30951 +26954 26999 27000 26955 30951 30996 30997 30952 +26955 27000 27001 26956 30952 30997 30998 30953 +26956 27001 27002 26957 30953 30998 30999 30954 +26957 27002 27003 26958 30954 30999 31000 30955 +26958 27003 27004 27005 30955 31000 31001 31002 +26958 27005 27006 26959 30955 31002 31003 30956 +26959 27006 27007 26960 30956 31003 31004 30957 +26960 27007 27008 26961 30957 31004 31005 30958 +26961 27008 27009 26962 30958 31005 31006 30959 +26962 27009 27010 26963 30959 31006 31007 30960 +26963 27010 27011 26964 30960 31007 31008 30961 +26964 27011 27012 26965 30961 31008 31009 30962 +26965 27012 27013 26966 30962 31009 31010 30963 +26966 27013 27014 26967 30963 31010 31011 30964 +26967 27014 27015 26968 30964 31011 31012 30965 +26968 27015 27016 26969 30965 31012 31013 30966 +26969 27016 27017 26970 30966 31013 31014 30967 +26970 27017 27018 26971 30967 31014 31015 30968 +26971 27018 27019 26972 30968 31015 31016 30969 +26972 27019 27020 26973 30969 31016 31017 30970 +26973 27020 27021 26974 30970 31017 31018 30971 +26974 27021 27022 26975 30971 31018 31019 30972 +26975 27022 27023 26976 30972 31019 31020 30973 +26976 27023 27024 26977 30973 31020 31021 30974 +26977 27024 27025 26978 30974 31021 31022 30975 +26978 27025 27026 26979 30975 31022 31023 30976 +26979 27026 27027 26980 30976 31023 31024 30977 +26981 27028 27029 26982 30978 31025 31026 30979 +26982 27029 27030 26983 30979 31026 31027 30980 +26983 27030 27031 26984 30980 31027 31028 30981 +26984 27031 27032 26985 30981 31028 31029 30982 +26985 27032 27033 26986 30982 31029 31030 30983 +26986 27033 27034 26987 30983 31030 31031 30984 +26987 27034 27035 26988 30984 31031 31032 30985 +26988 27035 27036 26989 30985 31032 31033 30986 +26989 27036 27037 26990 30986 31033 31034 30987 +26990 27037 27038 26991 30987 31034 31035 30988 +26991 27038 27039 26992 30988 31035 31036 30989 +26992 27039 27040 26993 30989 31036 31037 30990 +26993 27040 27041 26994 30990 31037 31038 30991 +26994 27041 27042 26995 30991 31038 31039 30992 +26995 27042 27043 26996 30992 31039 31040 30993 +26996 27043 27044 26997 30993 31040 31041 30994 +26997 27044 27045 26998 30994 31041 31042 30995 +26998 27045 27046 26999 30995 31042 31043 30996 +26999 27046 27047 27000 30996 31043 31044 30997 +27000 27047 27048 27001 30997 31044 31045 30998 +27001 27048 27049 27002 30998 31045 31046 30999 +27002 27049 27050 27003 30999 31046 31047 31000 +27003 27050 27051 27004 31000 31047 31048 31001 +27004 27051 27052 27053 31001 31048 31049 31050 +27004 27053 27054 27005 31001 31050 31051 31002 +27005 27054 27055 27006 31002 31051 31052 31003 +27006 27055 27056 27007 31003 31052 31053 31004 +27007 27056 27057 27008 31004 31053 31054 31005 +27008 27057 27058 27009 31005 31054 31055 31006 +27009 27058 27059 27010 31006 31055 31056 31007 +27010 27059 27060 27011 31007 31056 31057 31008 +27011 27060 27061 27012 31008 31057 31058 31009 +27012 27061 27062 27013 31009 31058 31059 31010 +27013 27062 27063 27014 31010 31059 31060 31011 +27014 27063 27064 27015 31011 31060 31061 31012 +27015 27064 27065 27016 31012 31061 31062 31013 +27016 27065 27066 27017 31013 31062 31063 31014 +27017 27066 27067 27018 31014 31063 31064 31015 +27018 27067 27068 27019 31015 31064 31065 31016 +27019 27068 27069 27020 31016 31065 31066 31017 +27020 27069 27070 27021 31017 31066 31067 31018 +27021 27070 27071 27022 31018 31067 31068 31019 +27022 27071 27072 27023 31019 31068 31069 31020 +27023 27072 27073 27024 31020 31069 31070 31021 +27024 27073 27074 27025 31021 31070 31071 31022 +27025 27074 27075 27026 31022 31071 31072 31023 +27026 27075 27076 27027 31023 31072 31073 31024 +27028 27077 27078 27029 31025 31074 31075 31026 +27029 27078 27079 27030 31026 31075 31076 31027 +27030 27079 27080 27031 31027 31076 31077 31028 +27031 27080 27081 27032 31028 31077 31078 31029 +27032 27081 27082 27033 31029 31078 31079 31030 +27033 27082 27083 27034 31030 31079 31080 31031 +27034 27083 27084 27035 31031 31080 31081 31032 +27035 27084 27085 27036 31032 31081 31082 31033 +27036 27085 27086 27037 31033 31082 31083 31034 +27037 27086 27087 27038 31034 31083 31084 31035 +27038 27087 27088 27039 31035 31084 31085 31036 +27039 27088 27089 27040 31036 31085 31086 31037 +27040 27089 27090 27041 31037 31086 31087 31038 +27041 27090 27091 27042 31038 31087 31088 31039 +27042 27091 27092 27043 31039 31088 31089 31040 +27043 27092 27093 27044 31040 31089 31090 31041 +27044 27093 27094 27045 31041 31090 31091 31042 +27045 27094 27095 27046 31042 31091 31092 31043 +27046 27095 27096 27047 31043 31092 31093 31044 +27047 27096 27097 27048 31044 31093 31094 31045 +27048 27097 27098 27049 31045 31094 31095 31046 +27049 27098 27099 27050 31046 31095 31096 31047 +27050 27099 27100 27051 31047 31096 31097 31048 +27051 27100 27101 27052 31048 31097 31098 31049 +27052 27101 27102 27103 31049 31098 31099 31100 +27052 27103 27104 27053 31049 31100 31101 31050 +27053 27104 27105 27054 31050 31101 31102 31051 +27054 27105 27106 27055 31051 31102 31103 31052 +27055 27106 27107 27056 31052 31103 31104 31053 +27056 27107 27108 27057 31053 31104 31105 31054 +27057 27108 27109 27058 31054 31105 31106 31055 +27058 27109 27110 27059 31055 31106 31107 31056 +27059 27110 27111 27060 31056 31107 31108 31057 +27060 27111 27112 27061 31057 31108 31109 31058 +27061 27112 27113 27062 31058 31109 31110 31059 +27062 27113 27114 27063 31059 31110 31111 31060 +27063 27114 27115 27064 31060 31111 31112 31061 +27064 27115 27116 27065 31061 31112 31113 31062 +27065 27116 27117 27066 31062 31113 31114 31063 +27066 27117 27118 27067 31063 31114 31115 31064 +27067 27118 27119 27068 31064 31115 31116 31065 +27068 27119 27120 27069 31065 31116 31117 31066 +27069 27120 27121 27070 31066 31117 31118 31067 +27070 27121 27122 27071 31067 31118 31119 31068 +27071 27122 27123 27072 31068 31119 31120 31069 +27072 27123 27124 27073 31069 31120 31121 31070 +27073 27124 27125 27074 31070 31121 31122 31071 +27074 27125 27126 27075 31071 31122 31123 31072 +27075 27126 27127 27076 31072 31123 31124 31073 +27077 27128 27129 27078 31074 31125 31126 31075 +27078 27129 27130 27079 31075 31126 31127 31076 +27079 27130 27131 27080 31076 31127 31128 31077 +27080 27131 27132 27081 31077 31128 31129 31078 +27081 27132 27133 27082 31078 31129 31130 31079 +27082 27133 27134 27083 31079 31130 31131 31080 +27083 27134 27135 27084 31080 31131 31132 31081 +27084 27135 27136 27085 31081 31132 31133 31082 +27085 27136 27137 27086 31082 31133 31134 31083 +27086 27137 27138 27087 31083 31134 31135 31084 +27087 27138 27139 27088 31084 31135 31136 31085 +27088 27139 27140 27089 31085 31136 31137 31086 +27089 27140 27141 27090 31086 31137 31138 31087 +27090 27141 27142 27091 31087 31138 31139 31088 +27091 27142 27143 27092 31088 31139 31140 31089 +27092 27143 27144 27093 31089 31140 31141 31090 +27093 27144 27145 27094 31090 31141 31142 31091 +27094 27145 27146 27095 31091 31142 31143 31092 +27095 27146 27147 27096 31092 31143 31144 31093 +27096 27147 27148 27097 31093 31144 31145 31094 +27097 27148 27149 27098 31094 31145 31146 31095 +27098 27149 27150 27099 31095 31146 31147 31096 +27099 27150 27151 27100 31096 31147 31148 31097 +27100 27151 27152 27101 31097 31148 31149 31098 +27101 27152 27153 27102 31098 31149 31150 31099 +27102 27153 27154 27155 31099 31150 31151 31152 +27102 27155 27156 27103 31099 31152 31153 31100 +27103 27156 27157 27104 31100 31153 31154 31101 +27104 27157 27158 27105 31101 31154 31155 31102 +27105 27158 27159 27106 31102 31155 31156 31103 +27106 27159 27160 27107 31103 31156 31157 31104 +27107 27160 27161 27108 31104 31157 31158 31105 +27108 27161 27162 27109 31105 31158 31159 31106 +27109 27162 27163 27110 31106 31159 31160 31107 +27110 27163 27164 27111 31107 31160 31161 31108 +27111 27164 27165 27112 31108 31161 31162 31109 +27112 27165 27166 27113 31109 31162 31163 31110 +27113 27166 27167 27114 31110 31163 31164 31111 +27114 27167 27168 27115 31111 31164 31165 31112 +27115 27168 27169 27116 31112 31165 31166 31113 +27116 27169 27170 27117 31113 31166 31167 31114 +27117 27170 27171 27118 31114 31167 31168 31115 +27118 27171 27172 27119 31115 31168 31169 31116 +27119 27172 27173 27120 31116 31169 31170 31117 +27120 27173 27174 27121 31117 31170 31171 31118 +27121 27174 27175 27122 31118 31171 31172 31119 +27122 27175 27176 27123 31119 31172 31173 31120 +27123 27176 27177 27124 31120 31173 31174 31121 +27124 27177 27178 27125 31121 31174 31175 31122 +27125 27178 27179 27126 31122 31175 31176 31123 +27126 27179 27180 27127 31123 31176 31177 31124 +27128 27181 27182 27129 31125 31178 31179 31126 +27129 27182 27183 27130 31126 31179 31180 31127 +27130 27183 27184 27131 31127 31180 31181 31128 +27131 27184 27185 27132 31128 31181 31182 31129 +27132 27185 27186 27133 31129 31182 31183 31130 +27133 27186 27187 27134 31130 31183 31184 31131 +27134 27187 27188 27135 31131 31184 31185 31132 +27135 27188 27189 27136 31132 31185 31186 31133 +27136 27189 27190 27137 31133 31186 31187 31134 +27137 27190 27191 27138 31134 31187 31188 31135 +27138 27191 27192 27139 31135 31188 31189 31136 +27139 27192 27193 27140 31136 31189 31190 31137 +27140 27193 27194 27141 31137 31190 31191 31138 +27141 27194 27195 27142 31138 31191 31192 31139 +27142 27195 27196 27143 31139 31192 31193 31140 +27143 27196 27197 27144 31140 31193 31194 31141 +27144 27197 27198 27145 31141 31194 31195 31142 +27145 27198 27199 27146 31142 31195 31196 31143 +27146 27199 27200 27147 31143 31196 31197 31144 +27147 27200 27201 27148 31144 31197 31198 31145 +27148 27201 27202 27149 31145 31198 31199 31146 +27149 27202 27203 27150 31146 31199 31200 31147 +27150 27203 27204 27151 31147 31200 31201 31148 +27151 27204 27205 27152 31148 31201 31202 31149 +27152 27205 27206 27153 31149 31202 31203 31150 +27153 27206 27207 27154 31150 31203 31204 31151 +27154 27207 27208 27209 31151 31204 31205 31206 +27154 27209 27210 27155 31151 31206 31207 31152 +27155 27210 27211 27156 31152 31207 31208 31153 +27156 27211 27212 27157 31153 31208 31209 31154 +27157 27212 27213 27158 31154 31209 31210 31155 +27158 27213 27214 27159 31155 31210 31211 31156 +27159 27214 27215 27160 31156 31211 31212 31157 +27160 27215 27216 27161 31157 31212 31213 31158 +27161 27216 27217 27162 31158 31213 31214 31159 +27162 27217 27218 27163 31159 31214 31215 31160 +27163 27218 27219 27164 31160 31215 31216 31161 +27164 27219 27220 27165 31161 31216 31217 31162 +27165 27220 27221 27166 31162 31217 31218 31163 +27166 27221 27222 27167 31163 31218 31219 31164 +27167 27222 27223 27168 31164 31219 31220 31165 +27168 27223 27224 27169 31165 31220 31221 31166 +27169 27224 27225 27170 31166 31221 31222 31167 +27170 27225 27226 27171 31167 31222 31223 31168 +27171 27226 27227 27172 31168 31223 31224 31169 +27172 27227 27228 27173 31169 31224 31225 31170 +27173 27228 27229 27174 31170 31225 31226 31171 +27174 27229 27230 27175 31171 31226 31227 31172 +27175 27230 27231 27176 31172 31227 31228 31173 +27176 27231 27232 27177 31173 31228 31229 31174 +27177 27232 27233 27178 31174 31229 31230 31175 +27178 27233 27234 27179 31175 31230 31231 31176 +27179 27234 27235 27180 31176 31231 31232 31177 +27181 27236 27237 27182 31178 31233 31234 31179 +27182 27237 27238 27183 31179 31234 31235 31180 +27183 27238 27239 27184 31180 31235 31236 31181 +27184 27239 27240 27185 31181 31236 31237 31182 +27185 27240 27241 27186 31182 31237 31238 31183 +27186 27241 27242 27187 31183 31238 31239 31184 +27187 27242 27243 27188 31184 31239 31240 31185 +27188 27243 27244 27189 31185 31240 31241 31186 +27189 27244 27245 27190 31186 31241 31242 31187 +27190 27245 27246 27191 31187 31242 31243 31188 +27191 27246 27247 27192 31188 31243 31244 31189 +27192 27247 27248 27193 31189 31244 31245 31190 +27193 27248 27249 27194 31190 31245 31246 31191 +27194 27249 27250 27195 31191 31246 31247 31192 +27195 27250 27251 27196 31192 31247 31248 31193 +27196 27251 27252 27197 31193 31248 31249 31194 +27197 27252 27253 27198 31194 31249 31250 31195 +27198 27253 27254 27199 31195 31250 31251 31196 +27199 27254 27255 27200 31196 31251 31252 31197 +27200 27255 27256 27201 31197 31252 31253 31198 +27201 27256 27257 27202 31198 31253 31254 31199 +27202 27257 27258 27203 31199 31254 31255 31200 +27203 27258 27259 27204 31200 31255 31256 31201 +27204 27259 27260 27205 31201 31256 31257 31202 +27205 27260 27261 27206 31202 31257 31258 31203 +27206 27261 27262 27207 31203 31258 31259 31204 +27207 27262 27263 27208 31204 31259 31260 31205 +27208 27263 27264 27265 31205 31260 31261 31262 +27208 27265 27266 27209 31205 31262 31263 31206 +27209 27266 27267 27210 31206 31263 31264 31207 +27210 27267 27268 27211 31207 31264 31265 31208 +27211 27268 27269 27212 31208 31265 31266 31209 +27212 27269 27270 27213 31209 31266 31267 31210 +27213 27270 27271 27214 31210 31267 31268 31211 +27214 27271 27272 27215 31211 31268 31269 31212 +27215 27272 27273 27216 31212 31269 31270 31213 +27216 27273 27274 27217 31213 31270 31271 31214 +27217 27274 27275 27218 31214 31271 31272 31215 +27218 27275 27276 27219 31215 31272 31273 31216 +27219 27276 27277 27220 31216 31273 31274 31217 +27220 27277 27278 27221 31217 31274 31275 31218 +27221 27278 27279 27222 31218 31275 31276 31219 +27222 27279 27280 27223 31219 31276 31277 31220 +27223 27280 27281 27224 31220 31277 31278 31221 +27224 27281 27282 27225 31221 31278 31279 31222 +27225 27282 27283 27226 31222 31279 31280 31223 +27226 27283 27284 27227 31223 31280 31281 31224 +27227 27284 27285 27228 31224 31281 31282 31225 +27228 27285 27286 27229 31225 31282 31283 31226 +27229 27286 27287 27230 31226 31283 31284 31227 +27230 27287 27288 27231 31227 31284 31285 31228 +27231 27288 27289 27232 31228 31285 31286 31229 +27232 27289 27290 27233 31229 31286 31287 31230 +27233 27290 27291 27234 31230 31287 31288 31231 +27234 27291 27292 27235 31231 31288 31289 31232 +27236 27293 27294 27237 31233 31290 31291 31234 +27237 27294 27295 27238 31234 31291 31292 31235 +27238 27295 27296 27239 31235 31292 31293 31236 +27239 27296 27297 27240 31236 31293 31294 31237 +27240 27297 27298 27241 31237 31294 31295 31238 +27241 27298 27299 27242 31238 31295 31296 31239 +27242 27299 27300 27243 31239 31296 31297 31240 +27243 27300 27301 27244 31240 31297 31298 31241 +27244 27301 27302 27245 31241 31298 31299 31242 +27245 27302 27303 27246 31242 31299 31300 31243 +27246 27303 27304 27247 31243 31300 31301 31244 +27247 27304 27305 27248 31244 31301 31302 31245 +27248 27305 27306 27249 31245 31302 31303 31246 +27249 27306 27307 27250 31246 31303 31304 31247 +27250 27307 27308 27251 31247 31304 31305 31248 +27251 27308 27309 27252 31248 31305 31306 31249 +27252 27309 27310 27253 31249 31306 31307 31250 +27253 27310 27311 27254 31250 31307 31308 31251 +27254 27311 27312 27255 31251 31308 31309 31252 +27255 27312 27313 27256 31252 31309 31310 31253 +27256 27313 27314 27257 31253 31310 31311 31254 +27257 27314 27315 27258 31254 31311 31312 31255 +27258 27315 27316 27259 31255 31312 31313 31256 +27259 27316 27317 27260 31256 31313 31314 31257 +27260 27317 27318 27261 31257 31314 31315 31258 +27261 27318 27319 27262 31258 31315 31316 31259 +27262 27319 27320 27263 31259 31316 31317 31260 +27263 27320 27321 27264 31260 31317 31318 31261 +27264 27321 27322 27323 31261 31318 31319 31320 +27264 27323 27324 27265 31261 31320 31321 31262 +27265 27324 27325 27266 31262 31321 31322 31263 +27266 27325 27326 27267 31263 31322 31323 31264 +27267 27326 27327 27268 31264 31323 31324 31265 +27268 27327 27328 27269 31265 31324 31325 31266 +27269 27328 27329 27270 31266 31325 31326 31267 +27270 27329 27330 27271 31267 31326 31327 31268 +27271 27330 27331 27272 31268 31327 31328 31269 +27272 27331 27332 27273 31269 31328 31329 31270 +27273 27332 27333 27274 31270 31329 31330 31271 +27274 27333 27334 27275 31271 31330 31331 31272 +27275 27334 27335 27276 31272 31331 31332 31273 +27276 27335 27336 27277 31273 31332 31333 31274 +27277 27336 27337 27278 31274 31333 31334 31275 +27278 27337 27338 27279 31275 31334 31335 31276 +27279 27338 27339 27280 31276 31335 31336 31277 +27280 27339 27340 27281 31277 31336 31337 31278 +27281 27340 27341 27282 31278 31337 31338 31279 +27282 27341 27342 27283 31279 31338 31339 31280 +27283 27342 27343 27284 31280 31339 31340 31281 +27284 27343 27344 27285 31281 31340 31341 31282 +27285 27344 27345 27286 31282 31341 31342 31283 +27286 27345 27346 27287 31283 31342 31343 31284 +27287 27346 27347 27288 31284 31343 31344 31285 +27288 27347 27348 27289 31285 31344 31345 31286 +27289 27348 27349 27290 31286 31345 31346 31287 +27290 27349 27350 27291 31287 31346 31347 31288 +27291 27350 27351 27292 31288 31347 31348 31289 +27293 27352 27353 27294 31290 31349 31350 31291 +27294 27353 27354 27295 31291 31350 31351 31292 +27295 27354 27355 27296 31292 31351 31352 31293 +27296 27355 27356 27297 31293 31352 31353 31294 +27297 27356 27357 27298 31294 31353 31354 31295 +27298 27357 27358 27299 31295 31354 31355 31296 +27299 27358 27359 27300 31296 31355 31356 31297 +27300 27359 27360 27301 31297 31356 31357 31298 +27301 27360 27361 27302 31298 31357 31358 31299 +27302 27361 27362 27303 31299 31358 31359 31300 +27303 27362 27363 27304 31300 31359 31360 31301 +27304 27363 27364 27305 31301 31360 31361 31302 +27305 27364 27365 27306 31302 31361 31362 31303 +27306 27365 27366 27307 31303 31362 31363 31304 +27307 27366 27367 27308 31304 31363 31364 31305 +27308 27367 27368 27309 31305 31364 31365 31306 +27309 27368 27369 27310 31306 31365 31366 31307 +27310 27369 27370 27311 31307 31366 31367 31308 +27311 27370 27371 27312 31308 31367 31368 31309 +27312 27371 27372 27313 31309 31368 31369 31310 +27313 27372 27373 27314 31310 31369 31370 31311 +27314 27373 27374 27315 31311 31370 31371 31312 +27315 27374 27375 27316 31312 31371 31372 31313 +27316 27375 27376 27317 31313 31372 31373 31314 +27317 27376 27377 27318 31314 31373 31374 31315 +27318 27377 27378 27319 31315 31374 31375 31316 +27319 27378 27379 27320 31316 31375 31376 31317 +27320 27379 27380 27321 31317 31376 31377 31318 +27321 27380 27381 27322 31318 31377 31378 31319 +27322 27381 27382 27383 31319 31378 31379 31380 +27322 27383 27384 27323 31319 31380 31381 31320 +27323 27384 27385 27324 31320 31381 31382 31321 +27324 27385 27386 27325 31321 31382 31383 31322 +27325 27386 27387 27326 31322 31383 31384 31323 +27326 27387 27388 27327 31323 31384 31385 31324 +27327 27388 27389 27328 31324 31385 31386 31325 +27328 27389 27390 27329 31325 31386 31387 31326 +27329 27390 27391 27330 31326 31387 31388 31327 +27330 27391 27392 27331 31327 31388 31389 31328 +27331 27392 27393 27332 31328 31389 31390 31329 +27332 27393 27394 27333 31329 31390 31391 31330 +27333 27394 27395 27334 31330 31391 31392 31331 +27334 27395 27396 27335 31331 31392 31393 31332 +27335 27396 27397 27336 31332 31393 31394 31333 +27336 27397 27398 27337 31333 31394 31395 31334 +27337 27398 27399 27338 31334 31395 31396 31335 +27338 27399 27400 27339 31335 31396 31397 31336 +27339 27400 27401 27340 31336 31397 31398 31337 +27340 27401 27402 27341 31337 31398 31399 31338 +27341 27402 27403 27342 31338 31399 31400 31339 +27342 27403 27404 27343 31339 31400 31401 31340 +27343 27404 27405 27344 31340 31401 31402 31341 +27344 27405 27406 27345 31341 31402 31403 31342 +27345 27406 27407 27346 31342 31403 31404 31343 +27346 27407 27408 27347 31343 31404 31405 31344 +27347 27408 27409 27348 31344 31405 31406 31345 +27348 27409 27410 27349 31345 31406 31407 31346 +27349 27410 27411 27350 31346 31407 31408 31347 +27350 27411 27412 27351 31347 31408 31409 31348 +27352 27413 27414 27353 31349 31410 31411 31350 +27353 27414 27415 27354 31350 31411 31412 31351 +27354 27415 27416 27355 31351 31412 31413 31352 +27355 27416 27417 27356 31352 31413 31414 31353 +27356 27417 27418 27357 31353 31414 31415 31354 +27357 27418 27419 27358 31354 31415 31416 31355 +27358 27419 27420 27359 31355 31416 31417 31356 +27359 27420 27421 27360 31356 31417 31418 31357 +27360 27421 27422 27361 31357 31418 31419 31358 +27361 27422 27423 27362 31358 31419 31420 31359 +27362 27423 27424 27363 31359 31420 31421 31360 +27363 27424 27425 27364 31360 31421 31422 31361 +27364 27425 27426 27365 31361 31422 31423 31362 +27365 27426 27427 27366 31362 31423 31424 31363 +27366 27427 27428 27367 31363 31424 31425 31364 +27367 27428 27429 27368 31364 31425 31426 31365 +27368 27429 27430 27369 31365 31426 31427 31366 +27369 27430 27431 27370 31366 31427 31428 31367 +27370 27431 27432 27371 31367 31428 31429 31368 +27371 27432 27433 27372 31368 31429 31430 31369 +27372 27433 27434 27373 31369 31430 31431 31370 +27373 27434 27435 27374 31370 31431 31432 31371 +27374 27435 27436 27375 31371 31432 31433 31372 +27375 27436 27437 27376 31372 31433 31434 31373 +27376 27437 27438 27377 31373 31434 31435 31374 +27377 27438 27439 27378 31374 31435 31436 31375 +27378 27439 27440 27379 31375 31436 31437 31376 +27379 27440 27441 27380 31376 31437 31438 31377 +27380 27441 27442 27381 31377 31438 31439 31378 +27381 27442 27443 27382 31378 31439 31440 31379 +27382 27443 27444 27445 31379 31440 31441 31442 +27382 27445 27446 27383 31379 31442 31443 31380 +27383 27446 27447 27384 31380 31443 31444 31381 +27384 27447 27448 27385 31381 31444 31445 31382 +27385 27448 27449 27386 31382 31445 31446 31383 +27386 27449 27450 27387 31383 31446 31447 31384 +27387 27450 27451 27388 31384 31447 31448 31385 +27388 27451 27452 27389 31385 31448 31449 31386 +27389 27452 27453 27390 31386 31449 31450 31387 +27390 27453 27454 27391 31387 31450 31451 31388 +27391 27454 27455 27392 31388 31451 31452 31389 +27392 27455 27456 27393 31389 31452 31453 31390 +27393 27456 27457 27394 31390 31453 31454 31391 +27394 27457 27458 27395 31391 31454 31455 31392 +27395 27458 27459 27396 31392 31455 31456 31393 +27396 27459 27460 27397 31393 31456 31457 31394 +27397 27460 27461 27398 31394 31457 31458 31395 +27398 27461 27462 27399 31395 31458 31459 31396 +27399 27462 27463 27400 31396 31459 31460 31397 +27400 27463 27464 27401 31397 31460 31461 31398 +27401 27464 27465 27402 31398 31461 31462 31399 +27402 27465 27466 27403 31399 31462 31463 31400 +27403 27466 27467 27404 31400 31463 31464 31401 +27404 27467 27468 27405 31401 31464 31465 31402 +27405 27468 27469 27406 31402 31465 31466 31403 +27406 27469 27470 27407 31403 31466 31467 31404 +27407 27470 27471 27408 31404 31467 31468 31405 +27408 27471 27472 27409 31405 31468 31469 31406 +27409 27472 27473 27410 31406 31469 31470 31407 +27410 27473 27474 27411 31407 31470 31471 31408 +27411 27474 27475 27412 31408 31471 31472 31409 +27413 27476 27477 27414 31410 31473 31474 31411 +27414 27477 27478 27415 31411 31474 31475 31412 +27415 27478 27479 27416 31412 31475 31476 31413 +27416 27479 27480 27417 31413 31476 31477 31414 +27417 27480 27481 27418 31414 31477 31478 31415 +27418 27481 27482 27419 31415 31478 31479 31416 +27419 27482 27483 27420 31416 31479 31480 31417 +27420 27483 27484 27421 31417 31480 31481 31418 +27421 27484 27485 27422 31418 31481 31482 31419 +27422 27485 27486 27423 31419 31482 31483 31420 +27423 27486 27487 27424 31420 31483 31484 31421 +27424 27487 27488 27425 31421 31484 31485 31422 +27425 27488 27489 27426 31422 31485 31486 31423 +27426 27489 27490 27427 31423 31486 31487 31424 +27427 27490 27491 27428 31424 31487 31488 31425 +27428 27491 27492 27429 31425 31488 31489 31426 +27429 27492 27493 27430 31426 31489 31490 31427 +27430 27493 27494 27431 31427 31490 31491 31428 +27431 27494 27495 27432 31428 31491 31492 31429 +27432 27495 27496 27433 31429 31492 31493 31430 +27433 27496 27497 27434 31430 31493 31494 31431 +27434 27497 27498 27435 31431 31494 31495 31432 +27435 27498 27499 27436 31432 31495 31496 31433 +27436 27499 27500 27437 31433 31496 31497 31434 +27437 27500 27501 27438 31434 31497 31498 31435 +27438 27501 27502 27439 31435 31498 31499 31436 +27439 27502 27503 27440 31436 31499 31500 31437 +27440 27503 27504 27441 31437 31500 31501 31438 +27441 27504 27505 27442 31438 31501 31502 31439 +27442 27505 27506 27443 31439 31502 31503 31440 +27443 27506 27507 27444 31440 31503 31504 31441 +27444 27507 27508 27509 31441 31504 31505 31506 +27444 27509 27510 27445 31441 31506 31507 31442 +27445 27510 27511 27446 31442 31507 31508 31443 +27446 27511 27512 27447 31443 31508 31509 31444 +27447 27512 27513 27448 31444 31509 31510 31445 +27448 27513 27514 27449 31445 31510 31511 31446 +27449 27514 27515 27450 31446 31511 31512 31447 +27450 27515 27516 27451 31447 31512 31513 31448 +27451 27516 27517 27452 31448 31513 31514 31449 +27452 27517 27518 27453 31449 31514 31515 31450 +27453 27518 27519 27454 31450 31515 31516 31451 +27454 27519 27520 27455 31451 31516 31517 31452 +27455 27520 27521 27456 31452 31517 31518 31453 +27456 27521 27522 27457 31453 31518 31519 31454 +27457 27522 27523 27458 31454 31519 31520 31455 +27458 27523 27524 27459 31455 31520 31521 31456 +27459 27524 27525 27460 31456 31521 31522 31457 +27460 27525 27526 27461 31457 31522 31523 31458 +27461 27526 27527 27462 31458 31523 31524 31459 +27462 27527 27528 27463 31459 31524 31525 31460 +27463 27528 27529 27464 31460 31525 31526 31461 +27464 27529 27530 27465 31461 31526 31527 31462 +27465 27530 27531 27466 31462 31527 31528 31463 +27466 27531 27532 27467 31463 31528 31529 31464 +27467 27532 27533 27468 31464 31529 31530 31465 +27468 27533 27534 27469 31465 31530 31531 31466 +27469 27534 27535 27470 31466 31531 31532 31467 +27470 27535 27536 27471 31467 31532 31533 31468 +27471 27536 27537 27472 31468 31533 31534 31469 +27472 27537 27538 27473 31469 31534 31535 31470 +27473 27538 27539 27474 31470 31535 31536 31471 +27474 27539 27540 27475 31471 31536 31537 31472 +27476 27541 27542 27477 31473 31538 31539 31474 +27477 27542 27543 27478 31474 31539 31540 31475 +27478 27543 27544 27479 31475 31540 31541 31476 +27479 27544 27545 27480 31476 31541 31542 31477 +27480 27545 27546 27481 31477 31542 31543 31478 +27481 27546 27547 27482 31478 31543 31544 31479 +27482 27547 27548 27483 31479 31544 31545 31480 +27483 27548 27549 27484 31480 31545 31546 31481 +27484 27549 27550 27485 31481 31546 31547 31482 +27485 27550 27551 27486 31482 31547 31548 31483 +27486 27551 27552 27487 31483 31548 31549 31484 +27487 27552 27553 27488 31484 31549 31550 31485 +27488 27553 27554 27489 31485 31550 31551 31486 +27489 27554 27555 27490 31486 31551 31552 31487 +27490 27555 27556 27491 31487 31552 31553 31488 +27491 27556 27557 27492 31488 31553 31554 31489 +27492 27557 27558 27493 31489 31554 31555 31490 +27493 27558 27559 27494 31490 31555 31556 31491 +27494 27559 27560 27495 31491 31556 31557 31492 +27495 27560 27561 27496 31492 31557 31558 31493 +27496 27561 27562 27497 31493 31558 31559 31494 +27497 27562 27563 27498 31494 31559 31560 31495 +27498 27563 27564 27499 31495 31560 31561 31496 +27499 27564 27565 27500 31496 31561 31562 31497 +27500 27565 27566 27501 31497 31562 31563 31498 +27501 27566 27567 27502 31498 31563 31564 31499 +27502 27567 27568 27503 31499 31564 31565 31500 +27503 27568 27569 27504 31500 31565 31566 31501 +27504 27569 27570 27505 31501 31566 31567 31502 +27505 27570 27571 27506 31502 31567 31568 31503 +27506 27571 27572 27507 31503 31568 31569 31504 +27507 27572 27573 27508 31504 31569 31570 31505 +27508 27573 27574 27575 31505 31570 31571 31572 +27508 27575 27576 27509 31505 31572 31573 31506 +27509 27576 27577 27510 31506 31573 31574 31507 +27510 27577 27578 27511 31507 31574 31575 31508 +27511 27578 27579 27512 31508 31575 31576 31509 +27512 27579 27580 27513 31509 31576 31577 31510 +27513 27580 27581 27514 31510 31577 31578 31511 +27514 27581 27582 27515 31511 31578 31579 31512 +27515 27582 27583 27516 31512 31579 31580 31513 +27516 27583 27584 27517 31513 31580 31581 31514 +27517 27584 27585 27518 31514 31581 31582 31515 +27518 27585 27586 27519 31515 31582 31583 31516 +27519 27586 27587 27520 31516 31583 31584 31517 +27520 27587 27588 27521 31517 31584 31585 31518 +27521 27588 27589 27522 31518 31585 31586 31519 +27522 27589 27590 27523 31519 31586 31587 31520 +27523 27590 27591 27524 31520 31587 31588 31521 +27524 27591 27592 27525 31521 31588 31589 31522 +27525 27592 27593 27526 31522 31589 31590 31523 +27526 27593 27594 27527 31523 31590 31591 31524 +27527 27594 27595 27528 31524 31591 31592 31525 +27528 27595 27596 27529 31525 31592 31593 31526 +27529 27596 27597 27530 31526 31593 31594 31527 +27530 27597 27598 27531 31527 31594 31595 31528 +27531 27598 27599 27532 31528 31595 31596 31529 +27532 27599 27600 27533 31529 31596 31597 31530 +27533 27600 27601 27534 31530 31597 31598 31531 +27534 27601 27602 27535 31531 31598 31599 31532 +27535 27602 27603 27536 31532 31599 31600 31533 +27536 27603 27604 27537 31533 31600 31601 31534 +27537 27604 27605 27538 31534 31601 31602 31535 +27538 27605 27606 27539 31535 31602 31603 31536 +27539 27606 27607 27540 31536 31603 31604 31537 +27541 27608 27609 27542 31538 31605 31606 31539 +27542 27609 27610 27543 31539 31606 31607 31540 +27543 27610 27611 27544 31540 31607 31608 31541 +27544 27611 27612 27545 31541 31608 31609 31542 +27545 27612 27613 27546 31542 31609 31610 31543 +27546 27613 27614 27547 31543 31610 31611 31544 +27547 27614 27615 27548 31544 31611 31612 31545 +27548 27615 27616 27549 31545 31612 31613 31546 +27549 27616 27617 27550 31546 31613 31614 31547 +27550 27617 27618 27551 31547 31614 31615 31548 +27551 27618 27619 27552 31548 31615 31616 31549 +27552 27619 27620 27553 31549 31616 31617 31550 +27553 27620 27621 27554 31550 31617 31618 31551 +27554 27621 27622 27555 31551 31618 31619 31552 +27555 27622 27623 27556 31552 31619 31620 31553 +27556 27623 27624 27557 31553 31620 31621 31554 +27557 27624 27625 27558 31554 31621 31622 31555 +27558 27625 27626 27559 31555 31622 31623 31556 +27559 27626 27627 27560 31556 31623 31624 31557 +27560 27627 27628 27561 31557 31624 31625 31558 +27561 27628 27629 27562 31558 31625 31626 31559 +27562 27629 27630 27563 31559 31626 31627 31560 +27563 27630 27631 27564 31560 31627 31628 31561 +27564 27631 27632 27565 31561 31628 31629 31562 +27565 27632 27633 27566 31562 31629 31630 31563 +27566 27633 27634 27567 31563 31630 31631 31564 +27567 27634 27635 27568 31564 31631 31632 31565 +27568 27635 27636 27569 31565 31632 31633 31566 +27569 27636 27637 27570 31566 31633 31634 31567 +27570 27637 27638 27571 31567 31634 31635 31568 +27571 27638 27639 27572 31568 31635 31636 31569 +27572 27639 27640 27573 31569 31636 31637 31570 +27573 27640 27641 27574 31570 31637 31638 31571 +27574 27641 27642 27643 31571 31638 31639 31640 +27574 27643 27644 27575 31571 31640 31641 31572 +27575 27644 27645 27576 31572 31641 31642 31573 +27576 27645 27646 27577 31573 31642 31643 31574 +27577 27646 27647 27578 31574 31643 31644 31575 +27578 27647 27648 27579 31575 31644 31645 31576 +27579 27648 27649 27580 31576 31645 31646 31577 +27580 27649 27650 27581 31577 31646 31647 31578 +27581 27650 27651 27582 31578 31647 31648 31579 +27582 27651 27652 27583 31579 31648 31649 31580 +27583 27652 27653 27584 31580 31649 31650 31581 +27584 27653 27654 27585 31581 31650 31651 31582 +27585 27654 27655 27586 31582 31651 31652 31583 +27586 27655 27656 27587 31583 31652 31653 31584 +27587 27656 27657 27588 31584 31653 31654 31585 +27588 27657 27658 27589 31585 31654 31655 31586 +27589 27658 27659 27590 31586 31655 31656 31587 +27590 27659 27660 27591 31587 31656 31657 31588 +27591 27660 27661 27592 31588 31657 31658 31589 +27592 27661 27662 27593 31589 31658 31659 31590 +27593 27662 27663 27594 31590 31659 31660 31591 +27594 27663 27664 27595 31591 31660 31661 31592 +27595 27664 27665 27596 31592 31661 31662 31593 +27596 27665 27666 27597 31593 31662 31663 31594 +27597 27666 27667 27598 31594 31663 31664 31595 +27598 27667 27668 27599 31595 31664 31665 31596 +27599 27668 27669 27600 31596 31665 31666 31597 +27600 27669 27670 27601 31597 31666 31667 31598 +27601 27670 27671 27602 31598 31667 31668 31599 +27602 27671 27672 27603 31599 31668 31669 31600 +27603 27672 27673 27604 31600 31669 31670 31601 +27604 27673 27674 27605 31601 31670 31671 31602 +27605 27674 27675 27606 31602 31671 31672 31603 +27606 27675 27676 27607 31603 31672 31673 31604 +27608 27677 27678 27609 31605 31674 31675 31606 +27609 27678 27679 27610 31606 31675 31676 31607 +27610 27679 27680 27611 31607 31676 31677 31608 +27611 27680 27681 27612 31608 31677 31678 31609 +27612 27681 27682 27613 31609 31678 31679 31610 +27613 27682 27683 27614 31610 31679 31680 31611 +27614 27683 27684 27615 31611 31680 31681 31612 +27615 27684 27685 27616 31612 31681 31682 31613 +27616 27685 27686 27617 31613 31682 31683 31614 +27617 27686 27687 27618 31614 31683 31684 31615 +27618 27687 27688 27619 31615 31684 31685 31616 +27619 27688 27689 27620 31616 31685 31686 31617 +27620 27689 27690 27621 31617 31686 31687 31618 +27621 27690 27691 27622 31618 31687 31688 31619 +27622 27691 27692 27623 31619 31688 31689 31620 +27623 27692 27693 27624 31620 31689 31690 31621 +27624 27693 27694 27625 31621 31690 31691 31622 +27625 27694 27695 27626 31622 31691 31692 31623 +27626 27695 27696 27627 31623 31692 31693 31624 +27627 27696 27697 27628 31624 31693 31694 31625 +27628 27697 27698 27629 31625 31694 31695 31626 +27629 27698 27699 27630 31626 31695 31696 31627 +27630 27699 27700 27631 31627 31696 31697 31628 +27631 27700 27701 27632 31628 31697 31698 31629 +27632 27701 27702 27633 31629 31698 31699 31630 +27633 27702 27703 27634 31630 31699 31700 31631 +27634 27703 27704 27635 31631 31700 31701 31632 +27635 27704 27705 27636 31632 31701 31702 31633 +27636 27705 27706 27637 31633 31702 31703 31634 +27637 27706 27707 27638 31634 31703 31704 31635 +27638 27707 27708 27639 31635 31704 31705 31636 +27639 27708 27709 27640 31636 31705 31706 31637 +27640 27709 27710 27641 31637 31706 31707 31638 +27641 27710 27711 27642 31638 31707 31708 31639 +27642 27711 27712 27713 31639 31708 31709 31710 +27642 27713 27714 27643 31639 31710 31711 31640 +27643 27714 27715 27644 31640 31711 31712 31641 +27644 27715 27716 27645 31641 31712 31713 31642 +27645 27716 27717 27646 31642 31713 31714 31643 +27646 27717 27718 27647 31643 31714 31715 31644 +27647 27718 27719 27648 31644 31715 31716 31645 +27648 27719 27720 27649 31645 31716 31717 31646 +27649 27720 27721 27650 31646 31717 31718 31647 +27650 27721 27722 27651 31647 31718 31719 31648 +27651 27722 27723 27652 31648 31719 31720 31649 +27652 27723 27724 27653 31649 31720 31721 31650 +27653 27724 27725 27654 31650 31721 31722 31651 +27654 27725 27726 27655 31651 31722 31723 31652 +27655 27726 27727 27656 31652 31723 31724 31653 +27656 27727 27728 27657 31653 31724 31725 31654 +27657 27728 27729 27658 31654 31725 31726 31655 +27658 27729 27730 27659 31655 31726 31727 31656 +27659 27730 27731 27660 31656 31727 31728 31657 +27660 27731 27732 27661 31657 31728 31729 31658 +27661 27732 27733 27662 31658 31729 31730 31659 +27662 27733 27734 27663 31659 31730 31731 31660 +27663 27734 27735 27664 31660 31731 31732 31661 +27664 27735 27736 27665 31661 31732 31733 31662 +27665 27736 27737 27666 31662 31733 31734 31663 +27666 27737 27738 27667 31663 31734 31735 31664 +27667 27738 27739 27668 31664 31735 31736 31665 +27668 27739 27740 27669 31665 31736 31737 31666 +27669 27740 27741 27670 31666 31737 31738 31667 +27670 27741 27742 27671 31667 31738 31739 31668 +27671 27742 27743 27672 31668 31739 31740 31669 +27672 27743 27744 27673 31669 31740 31741 31670 +27673 27744 27745 27674 31670 31741 31742 31671 +27674 27745 27746 27675 31671 31742 31743 31672 +27675 27746 27747 27676 31672 31743 31744 31673 +27677 27748 27749 27678 31674 31745 31746 31675 +27678 27749 27750 27679 31675 31746 31747 31676 +27679 27750 27751 27680 31676 31747 31748 31677 +27680 27751 27752 27681 31677 31748 31749 31678 +27681 27752 27753 27682 31678 31749 31750 31679 +27682 27753 27754 27683 31679 31750 31751 31680 +27683 27754 27755 27684 31680 31751 31752 31681 +27684 27755 27756 27685 31681 31752 31753 31682 +27685 27756 27757 27686 31682 31753 31754 31683 +27686 27757 27758 27687 31683 31754 31755 31684 +27687 27758 27759 27688 31684 31755 31756 31685 +27688 27759 27760 27689 31685 31756 31757 31686 +27689 27760 27761 27690 31686 31757 31758 31687 +27690 27761 27762 27691 31687 31758 31759 31688 +27691 27762 27763 27692 31688 31759 31760 31689 +27692 27763 27764 27693 31689 31760 31761 31690 +27693 27764 27765 27694 31690 31761 31762 31691 +27694 27765 27766 27695 31691 31762 31763 31692 +27695 27766 27767 27696 31692 31763 31764 31693 +27696 27767 27768 27697 31693 31764 31765 31694 +27697 27768 27769 27698 31694 31765 31766 31695 +27698 27769 27770 27699 31695 31766 31767 31696 +27699 27770 27771 27700 31696 31767 31768 31697 +27700 27771 27772 27701 31697 31768 31769 31698 +27701 27772 27773 27702 31698 31769 31770 31699 +27702 27773 27774 27703 31699 31770 31771 31700 +27703 27774 27775 27704 31700 31771 31772 31701 +27704 27775 27776 27705 31701 31772 31773 31702 +27705 27776 27777 27706 31702 31773 31774 31703 +27706 27777 27778 27707 31703 31774 31775 31704 +27707 27778 27779 27708 31704 31775 31776 31705 +27708 27779 27780 27709 31705 31776 31777 31706 +27709 27780 27781 27710 31706 31777 31778 31707 +27710 27781 27782 27711 31707 31778 31779 31708 +27711 27782 27783 27712 31708 31779 31780 31709 +27712 27783 27784 27785 31709 31780 31781 31782 +27712 27785 27786 27713 31709 31782 31783 31710 +27713 27786 27787 27714 31710 31783 31784 31711 +27714 27787 27788 27715 31711 31784 31785 31712 +27715 27788 27789 27716 31712 31785 31786 31713 +27716 27789 27790 27717 31713 31786 31787 31714 +27717 27790 27791 27718 31714 31787 31788 31715 +27718 27791 27792 27719 31715 31788 31789 31716 +27719 27792 27793 27720 31716 31789 31790 31717 +27720 27793 27794 27721 31717 31790 31791 31718 +27721 27794 27795 27722 31718 31791 31792 31719 +27722 27795 27796 27723 31719 31792 31793 31720 +27723 27796 27797 27724 31720 31793 31794 31721 +27724 27797 27798 27725 31721 31794 31795 31722 +27725 27798 27799 27726 31722 31795 31796 31723 +27726 27799 27800 27727 31723 31796 31797 31724 +27727 27800 27801 27728 31724 31797 31798 31725 +27728 27801 27802 27729 31725 31798 31799 31726 +27729 27802 27803 27730 31726 31799 31800 31727 +27730 27803 27804 27731 31727 31800 31801 31728 +27731 27804 27805 27732 31728 31801 31802 31729 +27732 27805 27806 27733 31729 31802 31803 31730 +27733 27806 27807 27734 31730 31803 31804 31731 +27734 27807 27808 27735 31731 31804 31805 31732 +27735 27808 27809 27736 31732 31805 31806 31733 +27736 27809 27810 27737 31733 31806 31807 31734 +27737 27810 27811 27738 31734 31807 31808 31735 +27738 27811 27812 27739 31735 31808 31809 31736 +27739 27812 27813 27740 31736 31809 31810 31737 +27740 27813 27814 27741 31737 31810 31811 31738 +27741 27814 27815 27742 31738 31811 31812 31739 +27742 27815 27816 27743 31739 31812 31813 31740 +27743 27816 27817 27744 31740 31813 31814 31741 +27744 27817 27818 27745 31741 31814 31815 31742 +27745 27818 27819 27746 31742 31815 31816 31743 +27746 27819 27820 27747 31743 31816 31817 31744 +27748 27821 27822 27749 31745 31818 31819 31746 +27749 27822 27823 27750 31746 31819 31820 31747 +27750 27823 27824 27751 31747 31820 31821 31748 +27751 27824 27825 27752 31748 31821 31822 31749 +27752 27825 27826 27753 31749 31822 31823 31750 +27753 27826 27827 27754 31750 31823 31824 31751 +27754 27827 27828 27755 31751 31824 31825 31752 +27755 27828 27829 27756 31752 31825 31826 31753 +27756 27829 27830 27757 31753 31826 31827 31754 +27757 27830 27831 27758 31754 31827 31828 31755 +27758 27831 27832 27759 31755 31828 31829 31756 +27759 27832 27833 27760 31756 31829 31830 31757 +27760 27833 27834 27761 31757 31830 31831 31758 +27761 27834 27835 27762 31758 31831 31832 31759 +27762 27835 27836 27763 31759 31832 31833 31760 +27763 27836 27837 27764 31760 31833 31834 31761 +27764 27837 27838 27765 31761 31834 31835 31762 +27765 27838 27839 27766 31762 31835 31836 31763 +27766 27839 27840 27767 31763 31836 31837 31764 +27767 27840 27841 27768 31764 31837 31838 31765 +27768 27841 27842 27769 31765 31838 31839 31766 +27769 27842 27843 27770 31766 31839 31840 31767 +27770 27843 27844 27771 31767 31840 31841 31768 +27771 27844 27845 27772 31768 31841 31842 31769 +27772 27845 27846 27773 31769 31842 31843 31770 +27773 27846 27847 27774 31770 31843 31844 31771 +27774 27847 27848 27775 31771 31844 31845 31772 +27775 27848 27849 27776 31772 31845 31846 31773 +27776 27849 27850 27777 31773 31846 31847 31774 +27777 27850 27851 27778 31774 31847 31848 31775 +27778 27851 27852 27779 31775 31848 31849 31776 +27779 27852 27853 27780 31776 31849 31850 31777 +27780 27853 27854 27781 31777 31850 31851 31778 +27781 27854 27855 27782 31778 31851 31852 31779 +27782 27855 27856 27783 31779 31852 31853 31780 +27783 27856 27857 27784 31780 31853 31854 31781 +27784 27857 27858 27785 31781 31854 31855 31782 +27785 27858 27859 27786 31782 31855 31856 31783 +27786 27859 27860 27787 31783 31856 31857 31784 +27787 27860 27861 27788 31784 31857 31858 31785 +27788 27861 27862 27789 31785 31858 31859 31786 +27789 27862 27863 27790 31786 31859 31860 31787 +27790 27863 27864 27791 31787 31860 31861 31788 +27791 27864 27865 27792 31788 31861 31862 31789 +27792 27865 27866 27793 31789 31862 31863 31790 +27793 27866 27867 27794 31790 31863 31864 31791 +27794 27867 27868 27795 31791 31864 31865 31792 +27795 27868 27869 27796 31792 31865 31866 31793 +27796 27869 27870 27797 31793 31866 31867 31794 +27797 27870 27871 27798 31794 31867 31868 31795 +27798 27871 27872 27799 31795 31868 31869 31796 +27799 27872 27873 27800 31796 31869 31870 31797 +27800 27873 27874 27801 31797 31870 31871 31798 +27801 27874 27875 27802 31798 31871 31872 31799 +27802 27875 27876 27803 31799 31872 31873 31800 +27803 27876 27877 27804 31800 31873 31874 31801 +27804 27877 27878 27805 31801 31874 31875 31802 +27805 27878 27879 27806 31802 31875 31876 31803 +27806 27879 27880 27807 31803 31876 31877 31804 +27807 27880 27881 27808 31804 31877 31878 31805 +27808 27881 27882 27809 31805 31878 31879 31806 +27809 27882 27883 27810 31806 31879 31880 31807 +27810 27883 27884 27811 31807 31880 31881 31808 +27811 27884 27885 27812 31808 31881 31882 31809 +27812 27885 27886 27813 31809 31882 31883 31810 +27813 27886 27887 27814 31810 31883 31884 31811 +27814 27887 27888 27815 31811 31884 31885 31812 +27815 27888 27889 27816 31812 31885 31886 31813 +27816 27889 27890 27817 31813 31886 31887 31814 +27817 27890 27891 27818 31814 31887 31888 31815 +27818 27891 27892 27819 31815 31888 31889 31816 +27819 27892 27893 27820 31816 31889 31890 31817 +27821 27894 27895 27822 31818 31891 31892 31819 +27822 27895 27896 27823 31819 31892 31893 31820 +27823 27896 27897 27824 31820 31893 31894 31821 +27824 27897 27898 27825 31821 31894 31895 31822 +27825 27898 27899 27826 31822 31895 31896 31823 +27826 27899 27900 27827 31823 31896 31897 31824 +27827 27900 27901 27828 31824 31897 31898 31825 +27828 27901 27902 27829 31825 31898 31899 31826 +27829 27902 27903 27830 31826 31899 31900 31827 +27830 27903 27904 27831 31827 31900 31901 31828 +27831 27904 27905 27832 31828 31901 31902 31829 +27832 27905 27906 27833 31829 31902 31903 31830 +27833 27906 27907 27834 31830 31903 31904 31831 +27834 27907 27908 27835 31831 31904 31905 31832 +27835 27908 27909 27836 31832 31905 31906 31833 +27836 27909 27910 27837 31833 31906 31907 31834 +27837 27910 27911 27838 31834 31907 31908 31835 +27838 27911 27912 27839 31835 31908 31909 31836 +27839 27912 27913 27840 31836 31909 31910 31837 +27840 27913 27914 27841 31837 31910 31911 31838 +27841 27914 27915 27842 31838 31911 31912 31839 +27842 27915 27916 27843 31839 31912 31913 31840 +27843 27916 27917 27844 31840 31913 31914 31841 +27844 27917 27918 27845 31841 31914 31915 31842 +27845 27918 27919 27846 31842 31915 31916 31843 +27846 27919 27920 27847 31843 31916 31917 31844 +27847 27920 27921 27848 31844 31917 31918 31845 +27848 27921 27922 27849 31845 31918 31919 31846 +27849 27922 27923 27850 31846 31919 31920 31847 +27850 27923 27924 27851 31847 31920 31921 31848 +27851 27924 27925 27852 31848 31921 31922 31849 +27852 27925 27926 27853 31849 31922 31923 31850 +27853 27926 27927 27854 31850 31923 31924 31851 +27854 27927 27928 27855 31851 31924 31925 31852 +27855 27928 27929 27856 31852 31925 31926 31853 +27856 27929 27930 27857 31853 31926 31927 31854 +27857 27930 27931 27858 31854 31927 31928 31855 +27858 27931 27932 27859 31855 31928 31929 31856 +27859 27932 27933 27860 31856 31929 31930 31857 +27860 27933 27934 27861 31857 31930 31931 31858 +27861 27934 27935 27862 31858 31931 31932 31859 +27862 27935 27936 27863 31859 31932 31933 31860 +27863 27936 27937 27864 31860 31933 31934 31861 +27864 27937 27938 27865 31861 31934 31935 31862 +27865 27938 27939 27866 31862 31935 31936 31863 +27866 27939 27940 27867 31863 31936 31937 31864 +27867 27940 27941 27868 31864 31937 31938 31865 +27868 27941 27942 27869 31865 31938 31939 31866 +27869 27942 27943 27870 31866 31939 31940 31867 +27870 27943 27944 27871 31867 31940 31941 31868 +27871 27944 27945 27872 31868 31941 31942 31869 +27872 27945 27946 27873 31869 31942 31943 31870 +27873 27946 27947 27874 31870 31943 31944 31871 +27874 27947 27948 27875 31871 31944 31945 31872 +27875 27948 27949 27876 31872 31945 31946 31873 +27876 27949 27950 27877 31873 31946 31947 31874 +27877 27950 27951 27878 31874 31947 31948 31875 +27878 27951 27952 27879 31875 31948 31949 31876 +27879 27952 27953 27880 31876 31949 31950 31877 +27880 27953 27954 27881 31877 31950 31951 31878 +27881 27954 27955 27882 31878 31951 31952 31879 +27882 27955 27956 27883 31879 31952 31953 31880 +27883 27956 27957 27884 31880 31953 31954 31881 +27884 27957 27958 27885 31881 31954 31955 31882 +27885 27958 27959 27886 31882 31955 31956 31883 +27886 27959 27960 27887 31883 31956 31957 31884 +27887 27960 27961 27888 31884 31957 31958 31885 +27888 27961 27962 27889 31885 31958 31959 31886 +27889 27962 27963 27890 31886 31959 31960 31887 +27890 27963 27964 27891 31887 31960 31961 31888 +27891 27964 27965 27892 31888 31961 31962 31889 +27892 27965 27966 27893 31889 31962 31963 31890 +27894 27967 27968 27895 31891 31964 31965 31892 +27895 27968 27969 27896 31892 31965 31966 31893 +27896 27969 27970 27897 31893 31966 31967 31894 +27897 27970 27971 27898 31894 31967 31968 31895 +27898 27971 27972 27899 31895 31968 31969 31896 +27899 27972 27973 27900 31896 31969 31970 31897 +27900 27973 27974 27901 31897 31970 31971 31898 +27901 27974 27975 27902 31898 31971 31972 31899 +27902 27975 27976 27903 31899 31972 31973 31900 +27903 27976 27977 27904 31900 31973 31974 31901 +27904 27977 27978 27905 31901 31974 31975 31902 +27905 27978 27979 27906 31902 31975 31976 31903 +27906 27979 27980 27907 31903 31976 31977 31904 +27907 27980 27981 27908 31904 31977 31978 31905 +27908 27981 27982 27909 31905 31978 31979 31906 +27909 27982 27983 27910 31906 31979 31980 31907 +27910 27983 27984 27911 31907 31980 31981 31908 +27911 27984 27985 27912 31908 31981 31982 31909 +27912 27985 27986 27913 31909 31982 31983 31910 +27913 27986 27987 27914 31910 31983 31984 31911 +27914 27987 27988 27915 31911 31984 31985 31912 +27915 27988 27989 27916 31912 31985 31986 31913 +27916 27989 27990 27917 31913 31986 31987 31914 +27917 27990 27991 27918 31914 31987 31988 31915 +27918 27991 27992 27919 31915 31988 31989 31916 +27919 27992 27993 27920 31916 31989 31990 31917 +27920 27993 27994 27921 31917 31990 31991 31918 +27921 27994 27995 27922 31918 31991 31992 31919 +27922 27995 27996 27923 31919 31992 31993 31920 +27923 27996 27997 27924 31920 31993 31994 31921 +27924 27997 27998 27925 31921 31994 31995 31922 +27925 27998 27999 27926 31922 31995 31996 31923 +27926 27999 28000 27927 31923 31996 31997 31924 +27927 28000 28001 27928 31924 31997 31998 31925 +27928 28001 28002 27929 31925 31998 31999 31926 +27929 28002 28003 27930 31926 31999 32000 31927 +27930 28003 28004 27931 31927 32000 32001 31928 +27931 28004 28005 27932 31928 32001 32002 31929 +27932 28005 28006 27933 31929 32002 32003 31930 +27933 28006 28007 27934 31930 32003 32004 31931 +27934 28007 28008 27935 31931 32004 32005 31932 +27935 28008 28009 27936 31932 32005 32006 31933 +27936 28009 28010 27937 31933 32006 32007 31934 +27937 28010 28011 27938 31934 32007 32008 31935 +27938 28011 28012 27939 31935 32008 32009 31936 +27939 28012 28013 27940 31936 32009 32010 31937 +27940 28013 28014 27941 31937 32010 32011 31938 +27941 28014 28015 27942 31938 32011 32012 31939 +27942 28015 28016 27943 31939 32012 32013 31940 +27943 28016 28017 27944 31940 32013 32014 31941 +27944 28017 28018 27945 31941 32014 32015 31942 +27945 28018 28019 27946 31942 32015 32016 31943 +27946 28019 28020 27947 31943 32016 32017 31944 +27947 28020 28021 27948 31944 32017 32018 31945 +27948 28021 28022 27949 31945 32018 32019 31946 +27949 28022 28023 27950 31946 32019 32020 31947 +27950 28023 28024 27951 31947 32020 32021 31948 +27951 28024 28025 27952 31948 32021 32022 31949 +27952 28025 28026 27953 31949 32022 32023 31950 +27953 28026 28027 27954 31950 32023 32024 31951 +27954 28027 28028 27955 31951 32024 32025 31952 +27955 28028 28029 27956 31952 32025 32026 31953 +27956 28029 28030 27957 31953 32026 32027 31954 +27957 28030 28031 27958 31954 32027 32028 31955 +27958 28031 28032 27959 31955 32028 32029 31956 +27959 28032 28033 27960 31956 32029 32030 31957 +27960 28033 28034 27961 31957 32030 32031 31958 +27961 28034 28035 27962 31958 32031 32032 31959 +27962 28035 28036 27963 31959 32032 32033 31960 +27963 28036 28037 27964 31960 32033 32034 31961 +27964 28037 28038 27965 31961 32034 32035 31962 +27965 28038 28039 27966 31962 32035 32036 31963 +27967 28040 28041 27968 31964 32037 32038 31965 +27968 28041 28042 27969 31965 32038 32039 31966 +27969 28042 28043 27970 31966 32039 32040 31967 +27970 28043 28044 27971 31967 32040 32041 31968 +27971 28044 28045 27972 31968 32041 32042 31969 +27972 28045 28046 27973 31969 32042 32043 31970 +27973 28046 28047 27974 31970 32043 32044 31971 +27974 28047 28048 27975 31971 32044 32045 31972 +27975 28048 28049 27976 31972 32045 32046 31973 +27976 28049 28050 27977 31973 32046 32047 31974 +27977 28050 28051 27978 31974 32047 32048 31975 +27978 28051 28052 27979 31975 32048 32049 31976 +27979 28052 28053 27980 31976 32049 32050 31977 +27980 28053 28054 27981 31977 32050 32051 31978 +27981 28054 28055 27982 31978 32051 32052 31979 +27982 28055 28056 27983 31979 32052 32053 31980 +27983 28056 28057 27984 31980 32053 32054 31981 +27984 28057 28058 27985 31981 32054 32055 31982 +27985 28058 28059 27986 31982 32055 32056 31983 +27986 28059 28060 27987 31983 32056 32057 31984 +27987 28060 28061 27988 31984 32057 32058 31985 +27988 28061 28062 27989 31985 32058 32059 31986 +27989 28062 28063 27990 31986 32059 32060 31987 +27990 28063 28064 27991 31987 32060 32061 31988 +27991 28064 28065 27992 31988 32061 32062 31989 +27992 28065 28066 27993 31989 32062 32063 31990 +27993 28066 28067 27994 31990 32063 32064 31991 +27994 28067 28068 27995 31991 32064 32065 31992 +27995 28068 28069 27996 31992 32065 32066 31993 +27996 28069 28070 27997 31993 32066 32067 31994 +27997 28070 28071 27998 31994 32067 32068 31995 +27998 28071 28072 27999 31995 32068 32069 31996 +27999 28072 28073 28000 31996 32069 32070 31997 +28000 28073 28074 28001 31997 32070 32071 31998 +28001 28074 28075 28002 31998 32071 32072 31999 +28002 28075 28076 28003 31999 32072 32073 32000 +28003 28076 28077 28004 32000 32073 32074 32001 +28004 28077 28078 28005 32001 32074 32075 32002 +28005 28078 28079 28006 32002 32075 32076 32003 +28006 28079 28080 28007 32003 32076 32077 32004 +28007 28080 28081 28008 32004 32077 32078 32005 +28008 28081 28082 28009 32005 32078 32079 32006 +28009 28082 28083 28010 32006 32079 32080 32007 +28010 28083 28084 28011 32007 32080 32081 32008 +28011 28084 28085 28012 32008 32081 32082 32009 +28012 28085 28086 28013 32009 32082 32083 32010 +28013 28086 28087 28014 32010 32083 32084 32011 +28014 28087 28088 28015 32011 32084 32085 32012 +28015 28088 28089 28016 32012 32085 32086 32013 +28016 28089 28090 28017 32013 32086 32087 32014 +28017 28090 28091 28018 32014 32087 32088 32015 +28018 28091 28092 28019 32015 32088 32089 32016 +28019 28092 28093 28020 32016 32089 32090 32017 +28020 28093 28094 28021 32017 32090 32091 32018 +28021 28094 28095 28022 32018 32091 32092 32019 +28022 28095 28096 28023 32019 32092 32093 32020 +28023 28096 28097 28024 32020 32093 32094 32021 +28024 28097 28098 28025 32021 32094 32095 32022 +28025 28098 28099 28026 32022 32095 32096 32023 +28026 28099 28100 28027 32023 32096 32097 32024 +28027 28100 28101 28028 32024 32097 32098 32025 +28028 28101 28102 28029 32025 32098 32099 32026 +28029 28102 28103 28030 32026 32099 32100 32027 +28030 28103 28104 28031 32027 32100 32101 32028 +28031 28104 28105 28032 32028 32101 32102 32029 +28032 28105 28106 28033 32029 32102 32103 32030 +28033 28106 28107 28034 32030 32103 32104 32031 +28034 28107 28108 28035 32031 32104 32105 32032 +28035 28108 28109 28036 32032 32105 32106 32033 +28036 28109 28110 28037 32033 32106 32107 32034 +28037 28110 28111 28038 32034 32107 32108 32035 +28038 28111 28112 28039 32035 32108 32109 32036 +28040 28113 28114 28041 32037 32110 32111 32038 +28041 28114 28115 28042 32038 32111 32112 32039 +28042 28115 28116 28043 32039 32112 32113 32040 +28043 28116 28117 28044 32040 32113 32114 32041 +28044 28117 28118 28045 32041 32114 32115 32042 +28045 28118 28119 28046 32042 32115 32116 32043 +28046 28119 28120 28047 32043 32116 32117 32044 +28047 28120 28121 28048 32044 32117 32118 32045 +28048 28121 28122 28049 32045 32118 32119 32046 +28049 28122 28123 28050 32046 32119 32120 32047 +28050 28123 28124 28051 32047 32120 32121 32048 +28051 28124 28125 28052 32048 32121 32122 32049 +28052 28125 28126 28053 32049 32122 32123 32050 +28053 28126 28127 28054 32050 32123 32124 32051 +28054 28127 28128 28055 32051 32124 32125 32052 +28055 28128 28129 28056 32052 32125 32126 32053 +28056 28129 28130 28057 32053 32126 32127 32054 +28057 28130 28131 28058 32054 32127 32128 32055 +28058 28131 28132 28059 32055 32128 32129 32056 +28059 28132 28133 28060 32056 32129 32130 32057 +28060 28133 28134 28061 32057 32130 32131 32058 +28061 28134 28135 28062 32058 32131 32132 32059 +28062 28135 28136 28063 32059 32132 32133 32060 +28063 28136 28137 28064 32060 32133 32134 32061 +28064 28137 28138 28065 32061 32134 32135 32062 +28065 28138 28139 28066 32062 32135 32136 32063 +28066 28139 28140 28067 32063 32136 32137 32064 +28067 28140 28141 28068 32064 32137 32138 32065 +28068 28141 28142 28069 32065 32138 32139 32066 +28069 28142 28143 28070 32066 32139 32140 32067 +28070 28143 28144 28071 32067 32140 32141 32068 +28071 28144 28145 28072 32068 32141 32142 32069 +28072 28145 28146 28073 32069 32142 32143 32070 +28073 28146 28147 28074 32070 32143 32144 32071 +28074 28147 28148 28075 32071 32144 32145 32072 +28075 28148 28149 28076 32072 32145 32146 32073 +28076 28149 28150 28077 32073 32146 32147 32074 +28077 28150 28151 28078 32074 32147 32148 32075 +28078 28151 28152 28079 32075 32148 32149 32076 +28079 28152 28153 28080 32076 32149 32150 32077 +28080 28153 28154 28081 32077 32150 32151 32078 +28081 28154 28155 28082 32078 32151 32152 32079 +28082 28155 28156 28083 32079 32152 32153 32080 +28083 28156 28157 28084 32080 32153 32154 32081 +28084 28157 28158 28085 32081 32154 32155 32082 +28085 28158 28159 28086 32082 32155 32156 32083 +28086 28159 28160 28087 32083 32156 32157 32084 +28087 28160 28161 28088 32084 32157 32158 32085 +28088 28161 28162 28089 32085 32158 32159 32086 +28089 28162 28163 28090 32086 32159 32160 32087 +28090 28163 28164 28091 32087 32160 32161 32088 +28091 28164 28165 28092 32088 32161 32162 32089 +28092 28165 28166 28093 32089 32162 32163 32090 +28093 28166 28167 28094 32090 32163 32164 32091 +28094 28167 28168 28095 32091 32164 32165 32092 +28095 28168 28169 28096 32092 32165 32166 32093 +28096 28169 28170 28097 32093 32166 32167 32094 +28097 28170 28171 28098 32094 32167 32168 32095 +28098 28171 28172 28099 32095 32168 32169 32096 +28099 28172 28173 28100 32096 32169 32170 32097 +28100 28173 28174 28101 32097 32170 32171 32098 +28101 28174 28175 28102 32098 32171 32172 32099 +28102 28175 28176 28103 32099 32172 32173 32100 +28103 28176 28177 28104 32100 32173 32174 32101 +28104 28177 28178 28105 32101 32174 32175 32102 +28105 28178 28179 28106 32102 32175 32176 32103 +28106 28179 28180 28107 32103 32176 32177 32104 +28107 28180 28181 28108 32104 32177 32178 32105 +28108 28181 28182 28109 32105 32178 32179 32106 +28109 28182 28183 28110 32106 32179 32180 32107 +28110 28183 28184 28111 32107 32180 32181 32108 +28111 28184 28185 28112 32108 32181 32182 32109 +28113 28186 28187 28114 32110 32183 32184 32111 +28114 28187 28188 28115 32111 32184 32185 32112 +28115 28188 28189 28116 32112 32185 32186 32113 +28116 28189 28190 28117 32113 32186 32187 32114 +28117 28190 28191 28118 32114 32187 32188 32115 +28118 28191 28192 28119 32115 32188 32189 32116 +28119 28192 28193 28120 32116 32189 32190 32117 +28120 28193 28194 28121 32117 32190 32191 32118 +28121 28194 28195 28122 32118 32191 32192 32119 +28122 28195 28196 28123 32119 32192 32193 32120 +28123 28196 28197 28124 32120 32193 32194 32121 +28124 28197 28198 28125 32121 32194 32195 32122 +28125 28198 28199 28126 32122 32195 32196 32123 +28126 28199 28200 28127 32123 32196 32197 32124 +28127 28200 28201 28128 32124 32197 32198 32125 +28128 28201 28202 28129 32125 32198 32199 32126 +28129 28202 28203 28130 32126 32199 32200 32127 +28130 28203 28204 28131 32127 32200 32201 32128 +28131 28204 28205 28132 32128 32201 32202 32129 +28132 28205 28206 28133 32129 32202 32203 32130 +28133 28206 28207 28134 32130 32203 32204 32131 +28134 28207 28208 28135 32131 32204 32205 32132 +28135 28208 28209 28136 32132 32205 32206 32133 +28136 28209 28210 28137 32133 32206 32207 32134 +28137 28210 28211 28138 32134 32207 32208 32135 +28138 28211 28212 28139 32135 32208 32209 32136 +28139 28212 28213 28140 32136 32209 32210 32137 +28140 28213 28214 28141 32137 32210 32211 32138 +28141 28214 28215 28142 32138 32211 32212 32139 +28142 28215 28216 28143 32139 32212 32213 32140 +28143 28216 28217 28144 32140 32213 32214 32141 +28144 28217 28218 28145 32141 32214 32215 32142 +28145 28218 28219 28146 32142 32215 32216 32143 +28146 28219 28220 28147 32143 32216 32217 32144 +28147 28220 28221 28148 32144 32217 32218 32145 +28148 28221 28222 28149 32145 32218 32219 32146 +28149 28222 28223 28150 32146 32219 32220 32147 +28150 28223 28224 28151 32147 32220 32221 32148 +28151 28224 28225 28152 32148 32221 32222 32149 +28152 28225 28226 28153 32149 32222 32223 32150 +28153 28226 28227 28154 32150 32223 32224 32151 +28154 28227 28228 28155 32151 32224 32225 32152 +28155 28228 28229 28156 32152 32225 32226 32153 +28156 28229 28230 28157 32153 32226 32227 32154 +28157 28230 28231 28158 32154 32227 32228 32155 +28158 28231 28232 28159 32155 32228 32229 32156 +28159 28232 28233 28160 32156 32229 32230 32157 +28160 28233 28234 28161 32157 32230 32231 32158 +28161 28234 28235 28162 32158 32231 32232 32159 +28162 28235 28236 28163 32159 32232 32233 32160 +28163 28236 28237 28164 32160 32233 32234 32161 +28164 28237 28238 28165 32161 32234 32235 32162 +28165 28238 28239 28166 32162 32235 32236 32163 +28166 28239 28240 28167 32163 32236 32237 32164 +28167 28240 28241 28168 32164 32237 32238 32165 +28168 28241 28242 28169 32165 32238 32239 32166 +28169 28242 28243 28170 32166 32239 32240 32167 +28170 28243 28244 28171 32167 32240 32241 32168 +28171 28244 28245 28172 32168 32241 32242 32169 +28172 28245 28246 28173 32169 32242 32243 32170 +28173 28246 28247 28174 32170 32243 32244 32171 +28174 28247 28248 28175 32171 32244 32245 32172 +28175 28248 28249 28176 32172 32245 32246 32173 +28176 28249 28250 28177 32173 32246 32247 32174 +28177 28250 28251 28178 32174 32247 32248 32175 +28178 28251 28252 28179 32175 32248 32249 32176 +28179 28252 28253 28180 32176 32249 32250 32177 +28180 28253 28254 28181 32177 32250 32251 32178 +28181 28254 28255 28182 32178 32251 32252 32179 +28182 28255 28256 28183 32179 32252 32253 32180 +28183 28256 28257 28184 32180 32253 32254 32181 +28184 28257 28258 28185 32181 32254 32255 32182 +28186 28259 28260 28187 32183 32256 32257 32184 +28187 28260 28261 28188 32184 32257 32258 32185 +28188 28261 28262 28189 32185 32258 32259 32186 +28189 28262 28263 28190 32186 32259 32260 32187 +28190 28263 28264 28191 32187 32260 32261 32188 +28191 28264 28265 28192 32188 32261 32262 32189 +28192 28265 28266 28193 32189 32262 32263 32190 +28193 28266 28267 28194 32190 32263 32264 32191 +28194 28267 28268 28195 32191 32264 32265 32192 +28195 28268 28269 28196 32192 32265 32266 32193 +28196 28269 28270 28197 32193 32266 32267 32194 +28197 28270 28271 28198 32194 32267 32268 32195 +28198 28271 28272 28199 32195 32268 32269 32196 +28199 28272 28273 28200 32196 32269 32270 32197 +28200 28273 28274 28201 32197 32270 32271 32198 +28201 28274 28275 28202 32198 32271 32272 32199 +28202 28275 28276 28203 32199 32272 32273 32200 +28203 28276 28277 28204 32200 32273 32274 32201 +28204 28277 28278 28205 32201 32274 32275 32202 +28205 28278 28279 28206 32202 32275 32276 32203 +28206 28279 28280 28207 32203 32276 32277 32204 +28207 28280 28281 28208 32204 32277 32278 32205 +28208 28281 28282 28209 32205 32278 32279 32206 +28209 28282 28283 28210 32206 32279 32280 32207 +28210 28283 28284 28211 32207 32280 32281 32208 +28211 28284 28285 28212 32208 32281 32282 32209 +28212 28285 28286 28213 32209 32282 32283 32210 +28213 28286 28287 28214 32210 32283 32284 32211 +28214 28287 28288 28215 32211 32284 32285 32212 +28215 28288 28289 28216 32212 32285 32286 32213 +28216 28289 28290 28217 32213 32286 32287 32214 +28217 28290 28291 28218 32214 32287 32288 32215 +28218 28291 28292 28219 32215 32288 32289 32216 +28219 28292 28293 28220 32216 32289 32290 32217 +28220 28293 28294 28221 32217 32290 32291 32218 +28221 28294 28295 28222 32218 32291 32292 32219 +28222 28295 28296 28223 32219 32292 32293 32220 +28223 28296 28297 28224 32220 32293 32294 32221 +28224 28297 28298 28225 32221 32294 32295 32222 +28225 28298 28299 28226 32222 32295 32296 32223 +28226 28299 28300 28227 32223 32296 32297 32224 +28227 28300 28301 28228 32224 32297 32298 32225 +28228 28301 28302 28229 32225 32298 32299 32226 +28229 28302 28303 28230 32226 32299 32300 32227 +28230 28303 28304 28231 32227 32300 32301 32228 +28231 28304 28305 28232 32228 32301 32302 32229 +28232 28305 28306 28233 32229 32302 32303 32230 +28233 28306 28307 28234 32230 32303 32304 32231 +28234 28307 28308 28235 32231 32304 32305 32232 +28235 28308 28309 28236 32232 32305 32306 32233 +28236 28309 28310 28237 32233 32306 32307 32234 +28237 28310 28311 28238 32234 32307 32308 32235 +28238 28311 28312 28239 32235 32308 32309 32236 +28239 28312 28313 28240 32236 32309 32310 32237 +28240 28313 28314 28241 32237 32310 32311 32238 +28241 28314 28315 28242 32238 32311 32312 32239 +28242 28315 28316 28243 32239 32312 32313 32240 +28243 28316 28317 28244 32240 32313 32314 32241 +28244 28317 28318 28245 32241 32314 32315 32242 +28245 28318 28319 28246 32242 32315 32316 32243 +28246 28319 28320 28247 32243 32316 32317 32244 +28247 28320 28321 28248 32244 32317 32318 32245 +28248 28321 28322 28249 32245 32318 32319 32246 +28249 28322 28323 28250 32246 32319 32320 32247 +28250 28323 28324 28251 32247 32320 32321 32248 +28251 28324 28325 28252 32248 32321 32322 32249 +28252 28325 28326 28253 32249 32322 32323 32250 +28253 28326 28327 28254 32250 32323 32324 32251 +28254 28327 28328 28255 32251 32324 32325 32252 +28255 28328 28329 28256 32252 32325 32326 32253 +28256 28329 28330 28257 32253 32326 32327 32254 +28257 28330 28331 28258 32254 32327 32328 32255 +28259 28332 28333 28260 32256 32329 32330 32257 +28260 28333 28334 28261 32257 32330 32331 32258 +28261 28334 28335 28262 32258 32331 32332 32259 +28262 28335 28336 28263 32259 32332 32333 32260 +28263 28336 28337 28264 32260 32333 32334 32261 +28264 28337 28338 28265 32261 32334 32335 32262 +28265 28338 28339 28266 32262 32335 32336 32263 +28266 28339 28340 28267 32263 32336 32337 32264 +28267 28340 28341 28268 32264 32337 32338 32265 +28268 28341 28342 28269 32265 32338 32339 32266 +28269 28342 28343 28270 32266 32339 32340 32267 +28270 28343 28344 28271 32267 32340 32341 32268 +28271 28344 28345 28272 32268 32341 32342 32269 +28272 28345 28346 28273 32269 32342 32343 32270 +28273 28346 28347 28274 32270 32343 32344 32271 +28274 28347 28348 28275 32271 32344 32345 32272 +28275 28348 28349 28276 32272 32345 32346 32273 +28276 28349 28350 28277 32273 32346 32347 32274 +28277 28350 28351 28278 32274 32347 32348 32275 +28278 28351 28352 28279 32275 32348 32349 32276 +28279 28352 28353 28280 32276 32349 32350 32277 +28280 28353 28354 28281 32277 32350 32351 32278 +28281 28354 28355 28282 32278 32351 32352 32279 +28282 28355 28356 28283 32279 32352 32353 32280 +28283 28356 28357 28284 32280 32353 32354 32281 +28284 28357 28358 28285 32281 32354 32355 32282 +28285 28358 28359 28286 32282 32355 32356 32283 +28286 28359 28360 28287 32283 32356 32357 32284 +28287 28360 28361 28288 32284 32357 32358 32285 +28288 28361 28362 28289 32285 32358 32359 32286 +28289 28362 28363 28290 32286 32359 32360 32287 +28290 28363 28364 28291 32287 32360 32361 32288 +28291 28364 28365 28292 32288 32361 32362 32289 +28292 28365 28366 28293 32289 32362 32363 32290 +28293 28366 28367 28294 32290 32363 32364 32291 +28294 28367 28368 28295 32291 32364 32365 32292 +28295 28368 28369 28296 32292 32365 32366 32293 +28296 28369 28370 28297 32293 32366 32367 32294 +28297 28370 28371 28298 32294 32367 32368 32295 +28298 28371 28372 28299 32295 32368 32369 32296 +28299 28372 28373 28300 32296 32369 32370 32297 +28300 28373 28374 28301 32297 32370 32371 32298 +28301 28374 28375 28302 32298 32371 32372 32299 +28302 28375 28376 28303 32299 32372 32373 32300 +28303 28376 28377 28304 32300 32373 32374 32301 +28304 28377 28378 28305 32301 32374 32375 32302 +28305 28378 28379 28306 32302 32375 32376 32303 +28306 28379 28380 28307 32303 32376 32377 32304 +28307 28380 28381 28308 32304 32377 32378 32305 +28308 28381 28382 28309 32305 32378 32379 32306 +28309 28382 28383 28310 32306 32379 32380 32307 +28310 28383 28384 28311 32307 32380 32381 32308 +28311 28384 28385 28312 32308 32381 32382 32309 +28312 28385 28386 28313 32309 32382 32383 32310 +28313 28386 28387 28314 32310 32383 32384 32311 +28314 28387 28388 28315 32311 32384 32385 32312 +28315 28388 28389 28316 32312 32385 32386 32313 +28316 28389 28390 28317 32313 32386 32387 32314 +28317 28390 28391 28318 32314 32387 32388 32315 +28318 28391 28392 28319 32315 32388 32389 32316 +28319 28392 28393 28320 32316 32389 32390 32317 +28320 28393 28394 28321 32317 32390 32391 32318 +28321 28394 28395 28322 32318 32391 32392 32319 +28322 28395 28396 28323 32319 32392 32393 32320 +28323 28396 28397 28324 32320 32393 32394 32321 +28324 28397 28398 28325 32321 32394 32395 32322 +28325 28398 28399 28326 32322 32395 32396 32323 +28326 28399 28400 28327 32323 32396 32397 32324 +28327 28400 28401 28328 32324 32397 32398 32325 +28328 28401 28402 28329 32325 32398 32399 32326 +28329 28402 28403 28330 32326 32399 32400 32327 +28330 28403 28404 28331 32327 32400 32401 32328 +28332 28405 28406 28333 32329 32402 32403 32330 +28333 28406 28407 28334 32330 32403 32404 32331 +28334 28407 28408 28335 32331 32404 32405 32332 +28335 28408 28409 28336 32332 32405 32406 32333 +28336 28409 28410 28337 32333 32406 32407 32334 +28337 28410 28411 28338 32334 32407 32408 32335 +28338 28411 28412 28339 32335 32408 32409 32336 +28339 28412 28413 28340 32336 32409 32410 32337 +28340 28413 28414 28341 32337 32410 32411 32338 +28341 28414 28415 28342 32338 32411 32412 32339 +28342 28415 28416 28343 32339 32412 32413 32340 +28343 28416 28417 28344 32340 32413 32414 32341 +28344 28417 28418 28345 32341 32414 32415 32342 +28345 28418 28419 28346 32342 32415 32416 32343 +28346 28419 28420 28347 32343 32416 32417 32344 +28347 28420 28421 28348 32344 32417 32418 32345 +28348 28421 28422 28349 32345 32418 32419 32346 +28349 28422 28423 28350 32346 32419 32420 32347 +28350 28423 28424 28351 32347 32420 32421 32348 +28351 28424 28425 28352 32348 32421 32422 32349 +28352 28425 28426 28353 32349 32422 32423 32350 +28353 28426 28427 28354 32350 32423 32424 32351 +28354 28427 28428 28355 32351 32424 32425 32352 +28355 28428 28429 28356 32352 32425 32426 32353 +28356 28429 28430 28357 32353 32426 32427 32354 +28357 28430 28431 28358 32354 32427 32428 32355 +28358 28431 28432 28359 32355 32428 32429 32356 +28359 28432 28433 28360 32356 32429 32430 32357 +28360 28433 28434 28361 32357 32430 32431 32358 +28361 28434 28435 28362 32358 32431 32432 32359 +28362 28435 28436 28363 32359 32432 32433 32360 +28363 28436 28437 28364 32360 32433 32434 32361 +28364 28437 28438 28365 32361 32434 32435 32362 +28365 28438 28439 28366 32362 32435 32436 32363 +28366 28439 28440 28367 32363 32436 32437 32364 +28367 28440 28441 28368 32364 32437 32438 32365 +28368 28441 28442 28369 32365 32438 32439 32366 +28369 28442 28443 28370 32366 32439 32440 32367 +28370 28443 28444 28371 32367 32440 32441 32368 +28371 28444 28445 28372 32368 32441 32442 32369 +28372 28445 28446 28373 32369 32442 32443 32370 +28373 28446 28447 28374 32370 32443 32444 32371 +28374 28447 28448 28375 32371 32444 32445 32372 +28375 28448 28449 28376 32372 32445 32446 32373 +28376 28449 28450 28377 32373 32446 32447 32374 +28377 28450 28451 28378 32374 32447 32448 32375 +28378 28451 28452 28379 32375 32448 32449 32376 +28379 28452 28453 28380 32376 32449 32450 32377 +28380 28453 28454 28381 32377 32450 32451 32378 +28381 28454 28455 28382 32378 32451 32452 32379 +28382 28455 28456 28383 32379 32452 32453 32380 +28383 28456 28457 28384 32380 32453 32454 32381 +28384 28457 28458 28385 32381 32454 32455 32382 +28385 28458 28459 28386 32382 32455 32456 32383 +28386 28459 28460 28387 32383 32456 32457 32384 +28387 28460 28461 28388 32384 32457 32458 32385 +28388 28461 28462 28389 32385 32458 32459 32386 +28389 28462 28463 28390 32386 32459 32460 32387 +28390 28463 28464 28391 32387 32460 32461 32388 +28391 28464 28465 28392 32388 32461 32462 32389 +28392 28465 28466 28393 32389 32462 32463 32390 +28393 28466 28467 28394 32390 32463 32464 32391 +28394 28467 28468 28395 32391 32464 32465 32392 +28395 28468 28469 28396 32392 32465 32466 32393 +28396 28469 28470 28397 32393 32466 32467 32394 +28397 28470 28471 28398 32394 32467 32468 32395 +28398 28471 28472 28399 32395 32468 32469 32396 +28399 28472 28473 28400 32396 32469 32470 32397 +28400 28473 28474 28401 32397 32470 32471 32398 +28401 28474 28475 28402 32398 32471 32472 32399 +28402 28475 28476 28403 32399 32472 32473 32400 +28403 28476 28477 28404 32400 32473 32474 32401 +28405 28478 28479 28406 32402 32475 32476 32403 +28406 28479 28480 28407 32403 32476 32477 32404 +28407 28480 28481 28408 32404 32477 32478 32405 +28408 28481 28482 28409 32405 32478 32479 32406 +28409 28482 28483 28410 32406 32479 32480 32407 +28410 28483 28484 28411 32407 32480 32481 32408 +28411 28484 28485 28412 32408 32481 32482 32409 +28412 28485 28486 28413 32409 32482 32483 32410 +28413 28486 28487 28414 32410 32483 32484 32411 +28414 28487 28488 28415 32411 32484 32485 32412 +28415 28488 28489 28416 32412 32485 32486 32413 +28416 28489 28490 28417 32413 32486 32487 32414 +28417 28490 28491 28418 32414 32487 32488 32415 +28418 28491 28492 28419 32415 32488 32489 32416 +28419 28492 28493 28420 32416 32489 32490 32417 +28420 28493 28494 28421 32417 32490 32491 32418 +28421 28494 28495 28422 32418 32491 32492 32419 +28422 28495 28496 28423 32419 32492 32493 32420 +28423 28496 28497 28424 32420 32493 32494 32421 +28424 28497 28498 28425 32421 32494 32495 32422 +28425 28498 28499 28426 32422 32495 32496 32423 +28426 28499 28500 28427 32423 32496 32497 32424 +28427 28500 28501 28428 32424 32497 32498 32425 +28428 28501 28502 28429 32425 32498 32499 32426 +28429 28502 28503 28430 32426 32499 32500 32427 +28430 28503 28504 28431 32427 32500 32501 32428 +28431 28504 28505 28432 32428 32501 32502 32429 +28432 28505 28506 28433 32429 32502 32503 32430 +28433 28506 28507 28434 32430 32503 32504 32431 +28434 28507 28508 28435 32431 32504 32505 32432 +28435 28508 28509 28436 32432 32505 32506 32433 +28436 28509 28510 28437 32433 32506 32507 32434 +28437 28510 28511 28438 32434 32507 32508 32435 +28438 28511 28512 28439 32435 32508 32509 32436 +28439 28512 28513 28440 32436 32509 32510 32437 +28440 28513 28514 28441 32437 32510 32511 32438 +28441 28514 28515 28442 32438 32511 32512 32439 +28442 28515 28516 28443 32439 32512 32513 32440 +28443 28516 28517 28444 32440 32513 32514 32441 +28444 28517 28518 28445 32441 32514 32515 32442 +28445 28518 28519 28446 32442 32515 32516 32443 +28446 28519 28520 28447 32443 32516 32517 32444 +28447 28520 28521 28448 32444 32517 32518 32445 +28448 28521 28522 28449 32445 32518 32519 32446 +28449 28522 28523 28450 32446 32519 32520 32447 +28450 28523 28524 28451 32447 32520 32521 32448 +28451 28524 28525 28452 32448 32521 32522 32449 +28452 28525 28526 28453 32449 32522 32523 32450 +28453 28526 28527 28454 32450 32523 32524 32451 +28454 28527 28528 28455 32451 32524 32525 32452 +28455 28528 28529 28456 32452 32525 32526 32453 +28456 28529 28530 28457 32453 32526 32527 32454 +28457 28530 28531 28458 32454 32527 32528 32455 +28458 28531 28532 28459 32455 32528 32529 32456 +28459 28532 28533 28460 32456 32529 32530 32457 +28460 28533 28534 28461 32457 32530 32531 32458 +28461 28534 28535 28462 32458 32531 32532 32459 +28462 28535 28536 28463 32459 32532 32533 32460 +28463 28536 28537 28464 32460 32533 32534 32461 +28464 28537 28538 28465 32461 32534 32535 32462 +28465 28538 28539 28466 32462 32535 32536 32463 +28466 28539 28540 28467 32463 32536 32537 32464 +28467 28540 28541 28468 32464 32537 32538 32465 +28468 28541 28542 28469 32465 32538 32539 32466 +28469 28542 28543 28470 32466 32539 32540 32467 +28470 28543 28544 28471 32467 32540 32541 32468 +28471 28544 28545 28472 32468 32541 32542 32469 +28472 28545 28546 28473 32469 32542 32543 32470 +28473 28546 28547 28474 32470 32543 32544 32471 +28474 28547 28548 28475 32471 32544 32545 32472 +28475 28548 28549 28476 32472 32545 32546 32473 +28476 28549 28550 28477 32473 32546 32547 32474 +28478 28551 28552 28479 32475 32548 32549 32476 +28479 28552 28553 28480 32476 32549 32550 32477 +28480 28553 28554 28481 32477 32550 32551 32478 +28481 28554 28555 28482 32478 32551 32552 32479 +28482 28555 28556 28483 32479 32552 32553 32480 +28483 28556 28557 28484 32480 32553 32554 32481 +28484 28557 28558 28485 32481 32554 32555 32482 +28485 28558 28559 28486 32482 32555 32556 32483 +28486 28559 28560 28487 32483 32556 32557 32484 +28487 28560 28561 28488 32484 32557 32558 32485 +28488 28561 28562 28489 32485 32558 32559 32486 +28489 28562 28563 28490 32486 32559 32560 32487 +28490 28563 28564 28491 32487 32560 32561 32488 +28491 28564 28565 28492 32488 32561 32562 32489 +28492 28565 28566 28493 32489 32562 32563 32490 +28493 28566 28567 28494 32490 32563 32564 32491 +28494 28567 28568 28495 32491 32564 32565 32492 +28495 28568 28569 28496 32492 32565 32566 32493 +28496 28569 28570 28497 32493 32566 32567 32494 +28497 28570 28571 28498 32494 32567 32568 32495 +28498 28571 28572 28499 32495 32568 32569 32496 +28499 28572 28573 28500 32496 32569 32570 32497 +28500 28573 28574 28501 32497 32570 32571 32498 +28501 28574 28575 28502 32498 32571 32572 32499 +28502 28575 28576 28503 32499 32572 32573 32500 +28503 28576 28577 28504 32500 32573 32574 32501 +28504 28577 28578 28505 32501 32574 32575 32502 +28505 28578 28579 28506 32502 32575 32576 32503 +28506 28579 28580 28507 32503 32576 32577 32504 +28507 28580 28581 28508 32504 32577 32578 32505 +28508 28581 28582 28509 32505 32578 32579 32506 +28509 28582 28583 28510 32506 32579 32580 32507 +28510 28583 28584 28511 32507 32580 32581 32508 +28511 28584 28585 28512 32508 32581 32582 32509 +28512 28585 28586 28513 32509 32582 32583 32510 +28513 28586 28587 28514 32510 32583 32584 32511 +28514 28587 28588 28515 32511 32584 32585 32512 +28515 28588 28589 28516 32512 32585 32586 32513 +28516 28589 28590 28517 32513 32586 32587 32514 +28517 28590 28591 28518 32514 32587 32588 32515 +28518 28591 28592 28519 32515 32588 32589 32516 +28519 28592 28593 28520 32516 32589 32590 32517 +28520 28593 28594 28521 32517 32590 32591 32518 +28521 28594 28595 28522 32518 32591 32592 32519 +28522 28595 28596 28523 32519 32592 32593 32520 +28523 28596 28597 28524 32520 32593 32594 32521 +28524 28597 28598 28525 32521 32594 32595 32522 +28525 28598 28599 28526 32522 32595 32596 32523 +28526 28599 28600 28527 32523 32596 32597 32524 +28527 28600 28601 28528 32524 32597 32598 32525 +28528 28601 28602 28529 32525 32598 32599 32526 +28529 28602 28603 28530 32526 32599 32600 32527 +28530 28603 28604 28531 32527 32600 32601 32528 +28531 28604 28605 28532 32528 32601 32602 32529 +28532 28605 28606 28533 32529 32602 32603 32530 +28533 28606 28607 28534 32530 32603 32604 32531 +28534 28607 28608 28535 32531 32604 32605 32532 +28535 28608 28609 28536 32532 32605 32606 32533 +28536 28609 28610 28537 32533 32606 32607 32534 +28537 28610 28611 28538 32534 32607 32608 32535 +28538 28611 28612 28539 32535 32608 32609 32536 +28539 28612 28613 28540 32536 32609 32610 32537 +28540 28613 28614 28541 32537 32610 32611 32538 +28541 28614 28615 28542 32538 32611 32612 32539 +28542 28615 28616 28543 32539 32612 32613 32540 +28543 28616 28617 28544 32540 32613 32614 32541 +28544 28617 28618 28545 32541 32614 32615 32542 +28545 28618 28619 28546 32542 32615 32616 32543 +28546 28619 28620 28547 32543 32616 32617 32544 +28547 28620 28621 28548 32544 32617 32618 32545 +28548 28621 28622 28549 32545 32618 32619 32546 +28549 28622 28623 28550 32546 32619 32620 32547 +28551 28624 28625 28552 32548 32621 32622 32549 +28552 28625 28626 28553 32549 32622 32623 32550 +28553 28626 28627 28554 32550 32623 32624 32551 +28554 28627 28628 28555 32551 32624 32625 32552 +28555 28628 28629 28556 32552 32625 32626 32553 +28556 28629 28630 28557 32553 32626 32627 32554 +28557 28630 28631 28558 32554 32627 32628 32555 +28558 28631 28632 28559 32555 32628 32629 32556 +28559 28632 28633 28560 32556 32629 32630 32557 +28560 28633 28634 28561 32557 32630 32631 32558 +28561 28634 28635 28562 32558 32631 32632 32559 +28562 28635 28636 28563 32559 32632 32633 32560 +28563 28636 28637 28564 32560 32633 32634 32561 +28564 28637 28638 28565 32561 32634 32635 32562 +28565 28638 28639 28566 32562 32635 32636 32563 +28566 28639 28640 28567 32563 32636 32637 32564 +28567 28640 28641 28568 32564 32637 32638 32565 +28568 28641 28642 28569 32565 32638 32639 32566 +28569 28642 28643 28570 32566 32639 32640 32567 +28570 28643 28644 28571 32567 32640 32641 32568 +28571 28644 28645 28572 32568 32641 32642 32569 +28572 28645 28646 28573 32569 32642 32643 32570 +28573 28646 28647 28574 32570 32643 32644 32571 +28574 28647 28648 28575 32571 32644 32645 32572 +28575 28648 28649 28576 32572 32645 32646 32573 +28576 28649 28650 28577 32573 32646 32647 32574 +28577 28650 28651 28578 32574 32647 32648 32575 +28578 28651 28652 28579 32575 32648 32649 32576 +28579 28652 28653 28580 32576 32649 32650 32577 +28580 28653 28654 28581 32577 32650 32651 32578 +28581 28654 28655 28582 32578 32651 32652 32579 +28582 28655 28656 28583 32579 32652 32653 32580 +28583 28656 28657 28584 32580 32653 32654 32581 +28584 28657 28658 28585 32581 32654 32655 32582 +28585 28658 28659 28586 32582 32655 32656 32583 +28586 28659 28660 28587 32583 32656 32657 32584 +28587 28660 28661 28588 32584 32657 32658 32585 +28588 28661 28662 28589 32585 32658 32659 32586 +28589 28662 28663 28590 32586 32659 32660 32587 +28590 28663 28664 28591 32587 32660 32661 32588 +28591 28664 28665 28592 32588 32661 32662 32589 +28592 28665 28666 28593 32589 32662 32663 32590 +28593 28666 28667 28594 32590 32663 32664 32591 +28594 28667 28668 28595 32591 32664 32665 32592 +28595 28668 28669 28596 32592 32665 32666 32593 +28596 28669 28670 28597 32593 32666 32667 32594 +28597 28670 28671 28598 32594 32667 32668 32595 +28598 28671 28672 28599 32595 32668 32669 32596 +28599 28672 28673 28600 32596 32669 32670 32597 +28600 28673 28674 28601 32597 32670 32671 32598 +28601 28674 28675 28602 32598 32671 32672 32599 +28602 28675 28676 28603 32599 32672 32673 32600 +28603 28676 28677 28604 32600 32673 32674 32601 +28604 28677 28678 28605 32601 32674 32675 32602 +28605 28678 28679 28606 32602 32675 32676 32603 +28606 28679 28680 28607 32603 32676 32677 32604 +28607 28680 28681 28608 32604 32677 32678 32605 +28608 28681 28682 28609 32605 32678 32679 32606 +28609 28682 28683 28610 32606 32679 32680 32607 +28610 28683 28684 28611 32607 32680 32681 32608 +28611 28684 28685 28612 32608 32681 32682 32609 +28612 28685 28686 28613 32609 32682 32683 32610 +28613 28686 28687 28614 32610 32683 32684 32611 +28614 28687 28688 28615 32611 32684 32685 32612 +28615 28688 28689 28616 32612 32685 32686 32613 +28616 28689 28690 28617 32613 32686 32687 32614 +28617 28690 28691 28618 32614 32687 32688 32615 +28618 28691 28692 28619 32615 32688 32689 32616 +28619 28692 28693 28620 32616 32689 32690 32617 +28620 28693 28694 28621 32617 32690 32691 32618 +28621 28694 28695 28622 32618 32691 32692 32619 +28622 28695 28696 28623 32619 32692 32693 32620 +28624 28697 28698 28625 32621 32694 32695 32622 +28625 28698 28699 28626 32622 32695 32696 32623 +28626 28699 28700 28627 32623 32696 32697 32624 +28627 28700 28701 28628 32624 32697 32698 32625 +28628 28701 28702 28629 32625 32698 32699 32626 +28629 28702 28703 28630 32626 32699 32700 32627 +28630 28703 28704 28631 32627 32700 32701 32628 +28631 28704 28705 28632 32628 32701 32702 32629 +28632 28705 28706 28633 32629 32702 32703 32630 +28633 28706 28707 28634 32630 32703 32704 32631 +28634 28707 28708 28635 32631 32704 32705 32632 +28635 28708 28709 28636 32632 32705 32706 32633 +28636 28709 28710 28637 32633 32706 32707 32634 +28637 28710 28711 28638 32634 32707 32708 32635 +28638 28711 28712 28639 32635 32708 32709 32636 +28639 28712 28713 28640 32636 32709 32710 32637 +28640 28713 28714 28641 32637 32710 32711 32638 +28641 28714 28715 28642 32638 32711 32712 32639 +28642 28715 28716 28643 32639 32712 32713 32640 +28643 28716 28717 28644 32640 32713 32714 32641 +28644 28717 28718 28645 32641 32714 32715 32642 +28645 28718 28719 28646 32642 32715 32716 32643 +28646 28719 28720 28647 32643 32716 32717 32644 +28647 28720 28721 28648 32644 32717 32718 32645 +28648 28721 28722 28649 32645 32718 32719 32646 +28649 28722 28723 28650 32646 32719 32720 32647 +28650 28723 28724 28651 32647 32720 32721 32648 +28651 28724 28725 28652 32648 32721 32722 32649 +28652 28725 28726 28653 32649 32722 32723 32650 +28653 28726 28727 28654 32650 32723 32724 32651 +28654 28727 28728 28655 32651 32724 32725 32652 +28655 28728 28729 28656 32652 32725 32726 32653 +28656 28729 28730 28657 32653 32726 32727 32654 +28657 28730 28731 28658 32654 32727 32728 32655 +28658 28731 28732 28659 32655 32728 32729 32656 +28659 28732 28733 28660 32656 32729 32730 32657 +28660 28733 28734 28661 32657 32730 32731 32658 +28661 28734 28735 28662 32658 32731 32732 32659 +28662 28735 28736 28663 32659 32732 32733 32660 +28663 28736 28737 28664 32660 32733 32734 32661 +28664 28737 28738 28665 32661 32734 32735 32662 +28665 28738 28739 28666 32662 32735 32736 32663 +28666 28739 28740 28667 32663 32736 32737 32664 +28667 28740 28741 28668 32664 32737 32738 32665 +28668 28741 28742 28669 32665 32738 32739 32666 +28669 28742 28743 28670 32666 32739 32740 32667 +28670 28743 28744 28671 32667 32740 32741 32668 +28671 28744 28745 28672 32668 32741 32742 32669 +28672 28745 28746 28673 32669 32742 32743 32670 +28673 28746 28747 28674 32670 32743 32744 32671 +28674 28747 28748 28675 32671 32744 32745 32672 +28675 28748 28749 28676 32672 32745 32746 32673 +28676 28749 28750 28677 32673 32746 32747 32674 +28677 28750 28751 28678 32674 32747 32748 32675 +28678 28751 28752 28679 32675 32748 32749 32676 +28679 28752 28753 28680 32676 32749 32750 32677 +28680 28753 28754 28681 32677 32750 32751 32678 +28681 28754 28755 28682 32678 32751 32752 32679 +28682 28755 28756 28683 32679 32752 32753 32680 +28683 28756 28757 28684 32680 32753 32754 32681 +28684 28757 28758 28685 32681 32754 32755 32682 +28685 28758 28759 28686 32682 32755 32756 32683 +28686 28759 28760 28687 32683 32756 32757 32684 +28687 28760 28761 28688 32684 32757 32758 32685 +28688 28761 28762 28689 32685 32758 32759 32686 +28689 28762 28763 28690 32686 32759 32760 32687 +28690 28763 28764 28691 32687 32760 32761 32688 +28691 28764 28765 28692 32688 32761 32762 32689 +28692 28765 28766 28693 32689 32762 32763 32690 +28693 28766 28767 28694 32690 32763 32764 32691 +28694 28767 28768 28695 32691 32764 32765 32692 +28695 28768 28769 28696 32692 32765 32766 32693 +28697 28770 28771 28698 32694 32767 32768 32695 +28698 28771 28772 28699 32695 32768 32769 32696 +28699 28772 28773 28700 32696 32769 32770 32697 +28700 28773 28774 28701 32697 32770 32771 32698 +28701 28774 28775 28702 32698 32771 32772 32699 +28702 28775 28776 28703 32699 32772 32773 32700 +28703 28776 28777 28704 32700 32773 32774 32701 +28704 28777 28778 28705 32701 32774 32775 32702 +28705 28778 28779 28706 32702 32775 32776 32703 +28706 28779 28780 28707 32703 32776 32777 32704 +28707 28780 28781 28708 32704 32777 32778 32705 +28708 28781 28782 28709 32705 32778 32779 32706 +28709 28782 28783 28710 32706 32779 32780 32707 +28710 28783 28784 28711 32707 32780 32781 32708 +28711 28784 28785 28712 32708 32781 32782 32709 +28712 28785 28786 28713 32709 32782 32783 32710 +28713 28786 28787 28714 32710 32783 32784 32711 +28714 28787 28788 28715 32711 32784 32785 32712 +28715 28788 28789 28716 32712 32785 32786 32713 +28716 28789 28790 28717 32713 32786 32787 32714 +28717 28790 28791 28718 32714 32787 32788 32715 +28718 28791 28792 28719 32715 32788 32789 32716 +28719 28792 28793 28720 32716 32789 32790 32717 +28720 28793 28794 28721 32717 32790 32791 32718 +28721 28794 28795 28722 32718 32791 32792 32719 +28722 28795 28796 28723 32719 32792 32793 32720 +28723 28796 28797 28724 32720 32793 32794 32721 +28724 28797 28798 28725 32721 32794 32795 32722 +28725 28798 28799 28726 32722 32795 32796 32723 +28726 28799 28800 28727 32723 32796 32797 32724 +28727 28800 28801 28728 32724 32797 32798 32725 +28728 28801 28802 28729 32725 32798 32799 32726 +28729 28802 28803 28730 32726 32799 32800 32727 +28730 28803 28804 28731 32727 32800 32801 32728 +28731 28804 28805 28732 32728 32801 32802 32729 +28732 28805 28806 28733 32729 32802 32803 32730 +28733 28806 28807 28734 32730 32803 32804 32731 +28734 28807 28808 28735 32731 32804 32805 32732 +28735 28808 28809 28736 32732 32805 32806 32733 +28736 28809 28810 28737 32733 32806 32807 32734 +28737 28810 28811 28738 32734 32807 32808 32735 +28738 28811 28812 28739 32735 32808 32809 32736 +28739 28812 28813 28740 32736 32809 32810 32737 +28740 28813 28814 28741 32737 32810 32811 32738 +28741 28814 28815 28742 32738 32811 32812 32739 +28742 28815 28816 28743 32739 32812 32813 32740 +28743 28816 28817 28744 32740 32813 32814 32741 +28744 28817 28818 28745 32741 32814 32815 32742 +28745 28818 28819 28746 32742 32815 32816 32743 +28746 28819 28820 28747 32743 32816 32817 32744 +28747 28820 28821 28748 32744 32817 32818 32745 +28748 28821 28822 28749 32745 32818 32819 32746 +28749 28822 28823 28750 32746 32819 32820 32747 +28750 28823 28824 28751 32747 32820 32821 32748 +28751 28824 28825 28752 32748 32821 32822 32749 +28752 28825 28826 28753 32749 32822 32823 32750 +28753 28826 28827 28754 32750 32823 32824 32751 +28754 28827 28828 28755 32751 32824 32825 32752 +28755 28828 28829 28756 32752 32825 32826 32753 +28756 28829 28830 28757 32753 32826 32827 32754 +28757 28830 28831 28758 32754 32827 32828 32755 +28758 28831 28832 28759 32755 32828 32829 32756 +28759 28832 28833 28760 32756 32829 32830 32757 +28760 28833 28834 28761 32757 32830 32831 32758 +28761 28834 28835 28762 32758 32831 32832 32759 +28762 28835 28836 28763 32759 32832 32833 32760 +28763 28836 28837 28764 32760 32833 32834 32761 +28764 28837 28838 28765 32761 32834 32835 32762 +28765 28838 28839 28766 32762 32835 32836 32763 +28766 28839 28840 28767 32763 32836 32837 32764 +28767 28840 28841 28768 32764 32837 32838 32765 +28768 28841 28842 28769 32765 32838 32839 32766 +28770 28843 28844 28771 32767 32840 32841 32768 +28771 28844 28845 28772 32768 32841 32842 32769 +28772 28845 28846 28773 32769 32842 32843 32770 +28773 28846 28847 28774 32770 32843 32844 32771 +28774 28847 28848 28775 32771 32844 32845 32772 +28775 28848 28849 28776 32772 32845 32846 32773 +28776 28849 28850 28777 32773 32846 32847 32774 +28777 28850 28851 28778 32774 32847 32848 32775 +28778 28851 28852 28779 32775 32848 32849 32776 +28779 28852 28853 28780 32776 32849 32850 32777 +28780 28853 28854 28781 32777 32850 32851 32778 +28781 28854 28855 28782 32778 32851 32852 32779 +28782 28855 28856 28783 32779 32852 32853 32780 +28783 28856 28857 28784 32780 32853 32854 32781 +28784 28857 28858 28785 32781 32854 32855 32782 +28785 28858 28859 28786 32782 32855 32856 32783 +28786 28859 28860 28787 32783 32856 32857 32784 +28787 28860 28861 28788 32784 32857 32858 32785 +28788 28861 28862 28789 32785 32858 32859 32786 +28789 28862 28863 28790 32786 32859 32860 32787 +28790 28863 28864 28791 32787 32860 32861 32788 +28791 28864 28865 28792 32788 32861 32862 32789 +28792 28865 28866 28793 32789 32862 32863 32790 +28793 28866 28867 28794 32790 32863 32864 32791 +28794 28867 28868 28795 32791 32864 32865 32792 +28795 28868 28869 28796 32792 32865 32866 32793 +28796 28869 28870 28797 32793 32866 32867 32794 +28797 28870 28871 28798 32794 32867 32868 32795 +28798 28871 28872 28799 32795 32868 32869 32796 +28799 28872 28873 28800 32796 32869 32870 32797 +28800 28873 28874 28801 32797 32870 32871 32798 +28801 28874 28875 28802 32798 32871 32872 32799 +28802 28875 28876 28803 32799 32872 32873 32800 +28803 28876 28877 28804 32800 32873 32874 32801 +28804 28877 28878 28805 32801 32874 32875 32802 +28805 28878 28879 28806 32802 32875 32876 32803 +28806 28879 28880 28807 32803 32876 32877 32804 +28807 28880 28881 28808 32804 32877 32878 32805 +28808 28881 28882 28809 32805 32878 32879 32806 +28809 28882 28883 28810 32806 32879 32880 32807 +28810 28883 28884 28811 32807 32880 32881 32808 +28811 28884 28885 28812 32808 32881 32882 32809 +28812 28885 28886 28813 32809 32882 32883 32810 +28813 28886 28887 28814 32810 32883 32884 32811 +28814 28887 28888 28815 32811 32884 32885 32812 +28815 28888 28889 28816 32812 32885 32886 32813 +28816 28889 28890 28817 32813 32886 32887 32814 +28817 28890 28891 28818 32814 32887 32888 32815 +28818 28891 28892 28819 32815 32888 32889 32816 +28819 28892 28893 28820 32816 32889 32890 32817 +28820 28893 28894 28821 32817 32890 32891 32818 +28821 28894 28895 28822 32818 32891 32892 32819 +28822 28895 28896 28823 32819 32892 32893 32820 +28823 28896 28897 28824 32820 32893 32894 32821 +28824 28897 28898 28825 32821 32894 32895 32822 +28825 28898 28899 28826 32822 32895 32896 32823 +28826 28899 28900 28827 32823 32896 32897 32824 +28827 28900 28901 28828 32824 32897 32898 32825 +28828 28901 28902 28829 32825 32898 32899 32826 +28829 28902 28903 28830 32826 32899 32900 32827 +28830 28903 28904 28831 32827 32900 32901 32828 +28831 28904 28905 28832 32828 32901 32902 32829 +28832 28905 28906 28833 32829 32902 32903 32830 +28833 28906 28907 28834 32830 32903 32904 32831 +28834 28907 28908 28835 32831 32904 32905 32832 +28835 28908 28909 28836 32832 32905 32906 32833 +28836 28909 28910 28837 32833 32906 32907 32834 +28837 28910 28911 28838 32834 32907 32908 32835 +28838 28911 28912 28839 32835 32908 32909 32836 +28839 28912 28913 28840 32836 32909 32910 32837 +28840 28913 28914 28841 32837 32910 32911 32838 +28841 28914 28915 28842 32838 32911 32912 32839 +28843 28916 28917 28844 32840 32913 32914 32841 +28844 28917 28918 28845 32841 32914 32915 32842 +28845 28918 28919 28846 32842 32915 32916 32843 +28846 28919 28920 28847 32843 32916 32917 32844 +28847 28920 28921 28848 32844 32917 32918 32845 +28848 28921 28922 28849 32845 32918 32919 32846 +28849 28922 28923 28850 32846 32919 32920 32847 +28850 28923 28924 28851 32847 32920 32921 32848 +28851 28924 28925 28852 32848 32921 32922 32849 +28852 28925 28926 28853 32849 32922 32923 32850 +28853 28926 28927 28854 32850 32923 32924 32851 +28854 28927 28928 28855 32851 32924 32925 32852 +28855 28928 28929 28856 32852 32925 32926 32853 +28856 28929 28930 28857 32853 32926 32927 32854 +28857 28930 28931 28858 32854 32927 32928 32855 +28858 28931 28932 28859 32855 32928 32929 32856 +28859 28932 28933 28860 32856 32929 32930 32857 +28860 28933 28934 28861 32857 32930 32931 32858 +28861 28934 28935 28862 32858 32931 32932 32859 +28862 28935 28936 28863 32859 32932 32933 32860 +28863 28936 28937 28864 32860 32933 32934 32861 +28864 28937 28938 28865 32861 32934 32935 32862 +28865 28938 28939 28866 32862 32935 32936 32863 +28866 28939 28940 28867 32863 32936 32937 32864 +28867 28940 28941 28868 32864 32937 32938 32865 +28868 28941 28942 28869 32865 32938 32939 32866 +28869 28942 28943 28870 32866 32939 32940 32867 +28870 28943 28944 28871 32867 32940 32941 32868 +28871 28944 28945 28872 32868 32941 32942 32869 +28872 28945 28946 28873 32869 32942 32943 32870 +28873 28946 28947 28874 32870 32943 32944 32871 +28874 28947 28948 28875 32871 32944 32945 32872 +28875 28948 28949 28876 32872 32945 32946 32873 +28876 28949 28950 28877 32873 32946 32947 32874 +28877 28950 28951 28878 32874 32947 32948 32875 +28878 28951 28952 28879 32875 32948 32949 32876 +28879 28952 28953 28880 32876 32949 32950 32877 +28880 28953 28954 28881 32877 32950 32951 32878 +28881 28954 28955 28882 32878 32951 32952 32879 +28882 28955 28956 28883 32879 32952 32953 32880 +28883 28956 28957 28884 32880 32953 32954 32881 +28884 28957 28958 28885 32881 32954 32955 32882 +28885 28958 28959 28886 32882 32955 32956 32883 +28886 28959 28960 28887 32883 32956 32957 32884 +28887 28960 28961 28888 32884 32957 32958 32885 +28888 28961 28962 28889 32885 32958 32959 32886 +28889 28962 28963 28890 32886 32959 32960 32887 +28890 28963 28964 28891 32887 32960 32961 32888 +28891 28964 28965 28892 32888 32961 32962 32889 +28892 28965 28966 28893 32889 32962 32963 32890 +28893 28966 28967 28894 32890 32963 32964 32891 +28894 28967 28968 28895 32891 32964 32965 32892 +28895 28968 28969 28896 32892 32965 32966 32893 +28896 28969 28970 28897 32893 32966 32967 32894 +28897 28970 28971 28898 32894 32967 32968 32895 +28898 28971 28972 28899 32895 32968 32969 32896 +28899 28972 28973 28900 32896 32969 32970 32897 +28900 28973 28974 28901 32897 32970 32971 32898 +28901 28974 28975 28902 32898 32971 32972 32899 +28902 28975 28976 28903 32899 32972 32973 32900 +28903 28976 28977 28904 32900 32973 32974 32901 +28904 28977 28978 28905 32901 32974 32975 32902 +28905 28978 28979 28906 32902 32975 32976 32903 +28906 28979 28980 28907 32903 32976 32977 32904 +28907 28980 28981 28908 32904 32977 32978 32905 +28908 28981 28982 28909 32905 32978 32979 32906 +28909 28982 28983 28910 32906 32979 32980 32907 +28910 28983 28984 28911 32907 32980 32981 32908 +28911 28984 28985 28912 32908 32981 32982 32909 +28912 28985 28986 28913 32909 32982 32983 32910 +28913 28986 28987 28914 32910 32983 32984 32911 +28914 28987 28988 28915 32911 32984 32985 32912 +28916 28989 28990 28917 32913 32986 32987 32914 +28917 28990 28991 28918 32914 32987 32988 32915 +28918 28991 28992 28919 32915 32988 32989 32916 +28919 28992 28993 28920 32916 32989 32990 32917 +28920 28993 28994 28921 32917 32990 32991 32918 +28921 28994 28995 28922 32918 32991 32992 32919 +28922 28995 28996 28923 32919 32992 32993 32920 +28923 28996 28997 28924 32920 32993 32994 32921 +28924 28997 28998 28925 32921 32994 32995 32922 +28925 28998 28999 28926 32922 32995 32996 32923 +28926 28999 29000 28927 32923 32996 32997 32924 +28927 29000 29001 28928 32924 32997 32998 32925 +28928 29001 29002 28929 32925 32998 32999 32926 +28929 29002 29003 28930 32926 32999 33000 32927 +28930 29003 29004 28931 32927 33000 33001 32928 +28931 29004 29005 28932 32928 33001 33002 32929 +28932 29005 29006 28933 32929 33002 33003 32930 +28933 29006 29007 28934 32930 33003 33004 32931 +28934 29007 29008 28935 32931 33004 33005 32932 +28935 29008 29009 28936 32932 33005 33006 32933 +28936 29009 29010 28937 32933 33006 33007 32934 +28937 29010 29011 28938 32934 33007 33008 32935 +28938 29011 29012 28939 32935 33008 33009 32936 +28939 29012 29013 28940 32936 33009 33010 32937 +28940 29013 29014 28941 32937 33010 33011 32938 +28941 29014 29015 28942 32938 33011 33012 32939 +28942 29015 29016 28943 32939 33012 33013 32940 +28943 29016 29017 28944 32940 33013 33014 32941 +28944 29017 29018 28945 32941 33014 33015 32942 +28945 29018 29019 28946 32942 33015 33016 32943 +28946 29019 29020 28947 32943 33016 33017 32944 +28947 29020 29021 28948 32944 33017 33018 32945 +28948 29021 29022 28949 32945 33018 33019 32946 +28949 29022 29023 28950 32946 33019 33020 32947 +28950 29023 29024 28951 32947 33020 33021 32948 +28951 29024 29025 28952 32948 33021 33022 32949 +28952 29025 29026 28953 32949 33022 33023 32950 +28953 29026 29027 28954 32950 33023 33024 32951 +28954 29027 29028 28955 32951 33024 33025 32952 +28955 29028 29029 28956 32952 33025 33026 32953 +28956 29029 29030 28957 32953 33026 33027 32954 +28957 29030 29031 28958 32954 33027 33028 32955 +28958 29031 29032 28959 32955 33028 33029 32956 +28959 29032 29033 28960 32956 33029 33030 32957 +28960 29033 29034 28961 32957 33030 33031 32958 +28961 29034 29035 28962 32958 33031 33032 32959 +28962 29035 29036 28963 32959 33032 33033 32960 +28963 29036 29037 28964 32960 33033 33034 32961 +28964 29037 29038 28965 32961 33034 33035 32962 +28965 29038 29039 28966 32962 33035 33036 32963 +28966 29039 29040 28967 32963 33036 33037 32964 +28967 29040 29041 28968 32964 33037 33038 32965 +28968 29041 29042 28969 32965 33038 33039 32966 +28969 29042 29043 28970 32966 33039 33040 32967 +28970 29043 29044 28971 32967 33040 33041 32968 +28971 29044 29045 28972 32968 33041 33042 32969 +28972 29045 29046 28973 32969 33042 33043 32970 +28973 29046 29047 28974 32970 33043 33044 32971 +28974 29047 29048 28975 32971 33044 33045 32972 +28975 29048 29049 28976 32972 33045 33046 32973 +28976 29049 29050 28977 32973 33046 33047 32974 +28977 29050 29051 28978 32974 33047 33048 32975 +28978 29051 29052 28979 32975 33048 33049 32976 +28979 29052 29053 28980 32976 33049 33050 32977 +28980 29053 29054 28981 32977 33050 33051 32978 +28981 29054 29055 28982 32978 33051 33052 32979 +28982 29055 29056 28983 32979 33052 33053 32980 +28983 29056 29057 28984 32980 33053 33054 32981 +28984 29057 29058 28985 32981 33054 33055 32982 +28985 29058 29059 28986 32982 33055 33056 32983 +28986 29059 29060 28987 32983 33056 33057 32984 +28987 29060 29061 28988 32984 33057 33058 32985 +28989 29062 29063 28990 32986 33059 33060 32987 +28990 29063 29064 28991 32987 33060 33061 32988 +28991 29064 29065 28992 32988 33061 33062 32989 +28992 29065 29066 28993 32989 33062 33063 32990 +28993 29066 29067 28994 32990 33063 33064 32991 +28994 29067 29068 28995 32991 33064 33065 32992 +28995 29068 29069 28996 32992 33065 33066 32993 +28996 29069 29070 28997 32993 33066 33067 32994 +28997 29070 29071 28998 32994 33067 33068 32995 +28998 29071 29072 28999 32995 33068 33069 32996 +28999 29072 29073 29000 32996 33069 33070 32997 +29000 29073 29074 29001 32997 33070 33071 32998 +29001 29074 29075 29002 32998 33071 33072 32999 +29002 29075 29076 29003 32999 33072 33073 33000 +29003 29076 29077 29004 33000 33073 33074 33001 +29004 29077 29078 29005 33001 33074 33075 33002 +29005 29078 29079 29006 33002 33075 33076 33003 +29006 29079 29080 29007 33003 33076 33077 33004 +29007 29080 29081 29008 33004 33077 33078 33005 +29008 29081 29082 29009 33005 33078 33079 33006 +29009 29082 29083 29010 33006 33079 33080 33007 +29010 29083 29084 29011 33007 33080 33081 33008 +29011 29084 29085 29012 33008 33081 33082 33009 +29012 29085 29086 29013 33009 33082 33083 33010 +29013 29086 29087 29014 33010 33083 33084 33011 +29014 29087 29088 29015 33011 33084 33085 33012 +29015 29088 29089 29016 33012 33085 33086 33013 +29016 29089 29090 29017 33013 33086 33087 33014 +29017 29090 29091 29018 33014 33087 33088 33015 +29018 29091 29092 29019 33015 33088 33089 33016 +29019 29092 29093 29020 33016 33089 33090 33017 +29020 29093 29094 29021 33017 33090 33091 33018 +29021 29094 29095 29022 33018 33091 33092 33019 +29022 29095 29096 29023 33019 33092 33093 33020 +29023 29096 29097 29024 33020 33093 33094 33021 +29024 29097 29098 29025 33021 33094 33095 33022 +29025 29098 29099 29026 33022 33095 33096 33023 +29026 29099 29100 29027 33023 33096 33097 33024 +29027 29100 29101 29028 33024 33097 33098 33025 +29028 29101 29102 29029 33025 33098 33099 33026 +29029 29102 29103 29030 33026 33099 33100 33027 +29030 29103 29104 29031 33027 33100 33101 33028 +29031 29104 29105 29032 33028 33101 33102 33029 +29032 29105 29106 29033 33029 33102 33103 33030 +29033 29106 29107 29034 33030 33103 33104 33031 +29034 29107 29108 29035 33031 33104 33105 33032 +29035 29108 29109 29036 33032 33105 33106 33033 +29036 29109 29110 29037 33033 33106 33107 33034 +29037 29110 29111 29038 33034 33107 33108 33035 +29038 29111 29112 29039 33035 33108 33109 33036 +29039 29112 29113 29040 33036 33109 33110 33037 +29040 29113 29114 29041 33037 33110 33111 33038 +29041 29114 29115 29042 33038 33111 33112 33039 +29042 29115 29116 29043 33039 33112 33113 33040 +29043 29116 29117 29044 33040 33113 33114 33041 +29044 29117 29118 29045 33041 33114 33115 33042 +29045 29118 29119 29046 33042 33115 33116 33043 +29046 29119 29120 29047 33043 33116 33117 33044 +29047 29120 29121 29048 33044 33117 33118 33045 +29048 29121 29122 29049 33045 33118 33119 33046 +29049 29122 29123 29050 33046 33119 33120 33047 +29050 29123 29124 29051 33047 33120 33121 33048 +29051 29124 29125 29052 33048 33121 33122 33049 +29052 29125 29126 29053 33049 33122 33123 33050 +29053 29126 29127 29054 33050 33123 33124 33051 +29054 29127 29128 29055 33051 33124 33125 33052 +29055 29128 29129 29056 33052 33125 33126 33053 +29056 29129 29130 29057 33053 33126 33127 33054 +29057 29130 29131 29058 33054 33127 33128 33055 +29058 29131 29132 29059 33055 33128 33129 33056 +29059 29132 29133 29060 33056 33129 33130 33057 +29060 29133 29134 29061 33057 33130 33131 33058 +29062 29135 29136 29063 33059 33132 33133 33060 +29063 29136 29137 29064 33060 33133 33134 33061 +29064 29137 29138 29065 33061 33134 33135 33062 +29065 29138 29139 29066 33062 33135 33136 33063 +29066 29139 29140 29067 33063 33136 33137 33064 +29067 29140 29141 29068 33064 33137 33138 33065 +29068 29141 29142 29069 33065 33138 33139 33066 +29069 29142 29143 29070 33066 33139 33140 33067 +29070 29143 29144 29071 33067 33140 33141 33068 +29071 29144 29145 29072 33068 33141 33142 33069 +29072 29145 29146 29073 33069 33142 33143 33070 +29073 29146 29147 29074 33070 33143 33144 33071 +29074 29147 29148 29075 33071 33144 33145 33072 +29075 29148 29149 29076 33072 33145 33146 33073 +29076 29149 29150 29077 33073 33146 33147 33074 +29077 29150 29151 29078 33074 33147 33148 33075 +29078 29151 29152 29079 33075 33148 33149 33076 +29079 29152 29153 29080 33076 33149 33150 33077 +29080 29153 29154 29081 33077 33150 33151 33078 +29081 29154 29155 29082 33078 33151 33152 33079 +29082 29155 29156 29083 33079 33152 33153 33080 +29083 29156 29157 29084 33080 33153 33154 33081 +29084 29157 29158 29085 33081 33154 33155 33082 +29085 29158 29159 29086 33082 33155 33156 33083 +29086 29159 29160 29087 33083 33156 33157 33084 +29087 29160 29161 29088 33084 33157 33158 33085 +29088 29161 29162 29089 33085 33158 33159 33086 +29089 29162 29163 29090 33086 33159 33160 33087 +29090 29163 29164 29091 33087 33160 33161 33088 +29091 29164 29165 29092 33088 33161 33162 33089 +29092 29165 29166 29093 33089 33162 33163 33090 +29093 29166 29167 29094 33090 33163 33164 33091 +29094 29167 29168 29095 33091 33164 33165 33092 +29095 29168 29169 29096 33092 33165 33166 33093 +29096 29169 29170 29097 33093 33166 33167 33094 +29097 29170 29171 29098 33094 33167 33168 33095 +29098 29171 29172 29099 33095 33168 33169 33096 +29099 29172 29173 29100 33096 33169 33170 33097 +29100 29173 29174 29101 33097 33170 33171 33098 +29101 29174 29175 29102 33098 33171 33172 33099 +29102 29175 29176 29103 33099 33172 33173 33100 +29103 29176 29177 29104 33100 33173 33174 33101 +29104 29177 29178 29105 33101 33174 33175 33102 +29105 29178 29179 29106 33102 33175 33176 33103 +29106 29179 29180 29107 33103 33176 33177 33104 +29107 29180 29181 29108 33104 33177 33178 33105 +29108 29181 29182 29109 33105 33178 33179 33106 +29109 29182 29183 29110 33106 33179 33180 33107 +29110 29183 29184 29111 33107 33180 33181 33108 +29111 29184 29185 29112 33108 33181 33182 33109 +29112 29185 29186 29113 33109 33182 33183 33110 +29113 29186 29187 29114 33110 33183 33184 33111 +29114 29187 29188 29115 33111 33184 33185 33112 +29115 29188 29189 29116 33112 33185 33186 33113 +29116 29189 29190 29117 33113 33186 33187 33114 +29117 29190 29191 29118 33114 33187 33188 33115 +29118 29191 29192 29119 33115 33188 33189 33116 +29119 29192 29193 29120 33116 33189 33190 33117 +29120 29193 29194 29121 33117 33190 33191 33118 +29121 29194 29195 29122 33118 33191 33192 33119 +29122 29195 29196 29123 33119 33192 33193 33120 +29123 29196 29197 29124 33120 33193 33194 33121 +29124 29197 29198 29125 33121 33194 33195 33122 +29125 29198 29199 29126 33122 33195 33196 33123 +29126 29199 29200 29127 33123 33196 33197 33124 +29127 29200 29201 29128 33124 33197 33198 33125 +29128 29201 29202 29129 33125 33198 33199 33126 +29129 29202 29203 29130 33126 33199 33200 33127 +29130 29203 29204 29131 33127 33200 33201 33128 +29131 29204 29205 29132 33128 33201 33202 33129 +29132 29205 29206 29133 33129 33202 33203 33130 +29133 29206 29207 29134 33130 33203 33204 33131 +29135 29208 29209 29136 33132 33205 33206 33133 +29136 29209 29210 29137 33133 33206 33207 33134 +29137 29210 29211 29138 33134 33207 33208 33135 +29138 29211 29212 29139 33135 33208 33209 33136 +29139 29212 29213 29140 33136 33209 33210 33137 +29140 29213 29214 29141 33137 33210 33211 33138 +29141 29214 29215 29142 33138 33211 33212 33139 +29142 29215 29216 29143 33139 33212 33213 33140 +29143 29216 29217 29144 33140 33213 33214 33141 +29144 29217 29218 29145 33141 33214 33215 33142 +29145 29218 29219 29146 33142 33215 33216 33143 +29146 29219 29220 29147 33143 33216 33217 33144 +29147 29220 29221 29148 33144 33217 33218 33145 +29148 29221 29222 29149 33145 33218 33219 33146 +29149 29222 29223 29150 33146 33219 33220 33147 +29150 29223 29224 29151 33147 33220 33221 33148 +29151 29224 29225 29152 33148 33221 33222 33149 +29152 29225 29226 29153 33149 33222 33223 33150 +29153 29226 29227 29154 33150 33223 33224 33151 +29154 29227 29228 29155 33151 33224 33225 33152 +29155 29228 29229 29156 33152 33225 33226 33153 +29156 29229 29230 29157 33153 33226 33227 33154 +29157 29230 29231 29158 33154 33227 33228 33155 +29158 29231 29232 29159 33155 33228 33229 33156 +29159 29232 29233 29160 33156 33229 33230 33157 +29160 29233 29234 29161 33157 33230 33231 33158 +29161 29234 29235 29162 33158 33231 33232 33159 +29162 29235 29236 29163 33159 33232 33233 33160 +29163 29236 29237 29164 33160 33233 33234 33161 +29164 29237 29238 29165 33161 33234 33235 33162 +29165 29238 29239 29166 33162 33235 33236 33163 +29166 29239 29240 29167 33163 33236 33237 33164 +29167 29240 29241 29168 33164 33237 33238 33165 +29168 29241 29242 29169 33165 33238 33239 33166 +29169 29242 29243 29170 33166 33239 33240 33167 +29170 29243 29244 29171 33167 33240 33241 33168 +29171 29244 29245 29172 33168 33241 33242 33169 +29172 29245 29246 29173 33169 33242 33243 33170 +29173 29246 29247 29174 33170 33243 33244 33171 +29174 29247 29248 29175 33171 33244 33245 33172 +29175 29248 29249 29176 33172 33245 33246 33173 +29176 29249 29250 29177 33173 33246 33247 33174 +29177 29250 29251 29178 33174 33247 33248 33175 +29178 29251 29252 29179 33175 33248 33249 33176 +29179 29252 29253 29180 33176 33249 33250 33177 +29180 29253 29254 29181 33177 33250 33251 33178 +29181 29254 29255 29182 33178 33251 33252 33179 +29182 29255 29256 29183 33179 33252 33253 33180 +29183 29256 29257 29184 33180 33253 33254 33181 +29184 29257 29258 29185 33181 33254 33255 33182 +29185 29258 29259 29186 33182 33255 33256 33183 +29186 29259 29260 29187 33183 33256 33257 33184 +29187 29260 29261 29188 33184 33257 33258 33185 +29188 29261 29262 29189 33185 33258 33259 33186 +29189 29262 29263 29190 33186 33259 33260 33187 +29190 29263 29264 29191 33187 33260 33261 33188 +29191 29264 29265 29192 33188 33261 33262 33189 +29192 29265 29266 29193 33189 33262 33263 33190 +29193 29266 29267 29194 33190 33263 33264 33191 +29194 29267 29268 29195 33191 33264 33265 33192 +29195 29268 29269 29196 33192 33265 33266 33193 +29196 29269 29270 29197 33193 33266 33267 33194 +29197 29270 29271 29198 33194 33267 33268 33195 +29198 29271 29272 29199 33195 33268 33269 33196 +29199 29272 29273 29200 33196 33269 33270 33197 +29200 29273 29274 29201 33197 33270 33271 33198 +29201 29274 29275 29202 33198 33271 33272 33199 +29202 29275 29276 29203 33199 33272 33273 33200 +29203 29276 29277 29204 33200 33273 33274 33201 +29204 29277 29278 29205 33201 33274 33275 33202 +29205 29278 29279 29206 33202 33275 33276 33203 +29206 29279 29280 29207 33203 33276 33277 33204 +29208 29281 29282 29209 33205 33278 33279 33206 +29209 29282 29283 29210 33206 33279 33280 33207 +29210 29283 29284 29211 33207 33280 33281 33208 +29211 29284 29285 29212 33208 33281 33282 33209 +29212 29285 29286 29213 33209 33282 33283 33210 +29213 29286 29287 29214 33210 33283 33284 33211 +29214 29287 29288 29215 33211 33284 33285 33212 +29215 29288 29289 29216 33212 33285 33286 33213 +29216 29289 29290 29217 33213 33286 33287 33214 +29217 29290 29291 29218 33214 33287 33288 33215 +29218 29291 29292 29219 33215 33288 33289 33216 +29219 29292 29293 29220 33216 33289 33290 33217 +29220 29293 29294 29221 33217 33290 33291 33218 +29221 29294 29295 29222 33218 33291 33292 33219 +29222 29295 29296 29223 33219 33292 33293 33220 +29223 29296 29297 29224 33220 33293 33294 33221 +29224 29297 29298 29225 33221 33294 33295 33222 +29225 29298 29299 29226 33222 33295 33296 33223 +29226 29299 29300 29227 33223 33296 33297 33224 +29227 29300 29301 29228 33224 33297 33298 33225 +29228 29301 29302 29229 33225 33298 33299 33226 +29229 29302 29303 29230 33226 33299 33300 33227 +29230 29303 29304 29231 33227 33300 33301 33228 +29231 29304 29305 29232 33228 33301 33302 33229 +29232 29305 29306 29233 33229 33302 33303 33230 +29233 29306 29307 29234 33230 33303 33304 33231 +29234 29307 29308 29235 33231 33304 33305 33232 +29235 29308 29309 29236 33232 33305 33306 33233 +29236 29309 29310 29237 33233 33306 33307 33234 +29237 29310 29311 29238 33234 33307 33308 33235 +29238 29311 29312 29239 33235 33308 33309 33236 +29239 29312 29313 29240 33236 33309 33310 33237 +29240 29313 29314 29241 33237 33310 33311 33238 +29241 29314 29315 29242 33238 33311 33312 33239 +29242 29315 29316 29243 33239 33312 33313 33240 +29243 29316 29317 29244 33240 33313 33314 33241 +29244 29317 29318 29245 33241 33314 33315 33242 +29245 29318 29319 29246 33242 33315 33316 33243 +29246 29319 29320 29247 33243 33316 33317 33244 +29247 29320 29321 29248 33244 33317 33318 33245 +29248 29321 29322 29249 33245 33318 33319 33246 +29249 29322 29323 29250 33246 33319 33320 33247 +29250 29323 29324 29251 33247 33320 33321 33248 +29251 29324 29325 29252 33248 33321 33322 33249 +29252 29325 29326 29253 33249 33322 33323 33250 +29253 29326 29327 29254 33250 33323 33324 33251 +29254 29327 29328 29255 33251 33324 33325 33252 +29255 29328 29329 29256 33252 33325 33326 33253 +29256 29329 29330 29257 33253 33326 33327 33254 +29257 29330 29331 29258 33254 33327 33328 33255 +29258 29331 29332 29259 33255 33328 33329 33256 +29259 29332 29333 29260 33256 33329 33330 33257 +29260 29333 29334 29261 33257 33330 33331 33258 +29261 29334 29335 29262 33258 33331 33332 33259 +29262 29335 29336 29263 33259 33332 33333 33260 +29263 29336 29337 29264 33260 33333 33334 33261 +29264 29337 29338 29265 33261 33334 33335 33262 +29265 29338 29339 29266 33262 33335 33336 33263 +29266 29339 29340 29267 33263 33336 33337 33264 +29267 29340 29341 29268 33264 33337 33338 33265 +29268 29341 29342 29269 33265 33338 33339 33266 +29269 29342 29343 29270 33266 33339 33340 33267 +29270 29343 29344 29271 33267 33340 33341 33268 +29271 29344 29345 29272 33268 33341 33342 33269 +29272 29345 29346 29273 33269 33342 33343 33270 +29273 29346 29347 29274 33270 33343 33344 33271 +29274 29347 29348 29275 33271 33344 33345 33272 +29275 29348 29349 29276 33272 33345 33346 33273 +29276 29349 29350 29277 33273 33346 33347 33274 +29277 29350 29351 29278 33274 33347 33348 33275 +29278 29351 29352 29279 33275 33348 33349 33276 +29279 29352 29353 29280 33276 33349 33350 33277 +29281 29354 29355 29282 33278 33351 33352 33279 +29282 29355 29356 29283 33279 33352 33353 33280 +29283 29356 29357 29284 33280 33353 33354 33281 +29284 29357 29358 29285 33281 33354 33355 33282 +29285 29358 29359 29286 33282 33355 33356 33283 +29286 29359 29360 29287 33283 33356 33357 33284 +29287 29360 29361 29288 33284 33357 33358 33285 +29288 29361 29362 29289 33285 33358 33359 33286 +29289 29362 29363 29290 33286 33359 33360 33287 +29290 29363 29364 29291 33287 33360 33361 33288 +29291 29364 29365 29292 33288 33361 33362 33289 +29292 29365 29366 29293 33289 33362 33363 33290 +29293 29366 29367 29294 33290 33363 33364 33291 +29294 29367 29368 29295 33291 33364 33365 33292 +29295 29368 29369 29296 33292 33365 33366 33293 +29296 29369 29370 29297 33293 33366 33367 33294 +29297 29370 29371 29298 33294 33367 33368 33295 +29298 29371 29372 29299 33295 33368 33369 33296 +29299 29372 29373 29300 33296 33369 33370 33297 +29300 29373 29374 29301 33297 33370 33371 33298 +29301 29374 29375 29302 33298 33371 33372 33299 +29302 29375 29376 29303 33299 33372 33373 33300 +29303 29376 29377 29304 33300 33373 33374 33301 +29304 29377 29378 29305 33301 33374 33375 33302 +29305 29378 29379 29306 33302 33375 33376 33303 +29306 29379 29380 29307 33303 33376 33377 33304 +29307 29380 29381 29308 33304 33377 33378 33305 +29308 29381 29382 29309 33305 33378 33379 33306 +29309 29382 29383 29310 33306 33379 33380 33307 +29310 29383 29384 29311 33307 33380 33381 33308 +29311 29384 29385 29312 33308 33381 33382 33309 +29312 29385 29386 29313 33309 33382 33383 33310 +29313 29386 29387 29314 33310 33383 33384 33311 +29314 29387 29388 29315 33311 33384 33385 33312 +29315 29388 29389 29316 33312 33385 33386 33313 +29316 29389 29390 29317 33313 33386 33387 33314 +29317 29390 29391 29318 33314 33387 33388 33315 +29318 29391 29392 29319 33315 33388 33389 33316 +29319 29392 29393 29320 33316 33389 33390 33317 +29320 29393 29394 29321 33317 33390 33391 33318 +29321 29394 29395 29322 33318 33391 33392 33319 +29322 29395 29396 29323 33319 33392 33393 33320 +29323 29396 29397 29324 33320 33393 33394 33321 +29324 29397 29398 29325 33321 33394 33395 33322 +29325 29398 29399 29326 33322 33395 33396 33323 +29326 29399 29400 29327 33323 33396 33397 33324 +29327 29400 29401 29328 33324 33397 33398 33325 +29328 29401 29402 29329 33325 33398 33399 33326 +29329 29402 29403 29330 33326 33399 33400 33327 +29330 29403 29404 29331 33327 33400 33401 33328 +29331 29404 29405 29332 33328 33401 33402 33329 +29332 29405 29406 29333 33329 33402 33403 33330 +29333 29406 29407 29334 33330 33403 33404 33331 +29334 29407 29408 29335 33331 33404 33405 33332 +29335 29408 29409 29336 33332 33405 33406 33333 +29336 29409 29410 29337 33333 33406 33407 33334 +29337 29410 29411 29338 33334 33407 33408 33335 +29338 29411 29412 29339 33335 33408 33409 33336 +29339 29412 29413 29340 33336 33409 33410 33337 +29340 29413 29414 29341 33337 33410 33411 33338 +29341 29414 29415 29342 33338 33411 33412 33339 +29342 29415 29416 29343 33339 33412 33413 33340 +29343 29416 29417 29344 33340 33413 33414 33341 +29344 29417 29418 29345 33341 33414 33415 33342 +29345 29418 29419 29346 33342 33415 33416 33343 +29346 29419 29420 29347 33343 33416 33417 33344 +29347 29420 29421 29348 33344 33417 33418 33345 +29348 29421 29422 29349 33345 33418 33419 33346 +29349 29422 29423 29350 33346 33419 33420 33347 +29350 29423 29424 29351 33347 33420 33421 33348 +29351 29424 29425 29352 33348 33421 33422 33349 +29352 29425 29426 29353 33349 33422 33423 33350 +29354 29427 29428 29355 33351 33424 33425 33352 +29355 29428 29429 29356 33352 33425 33426 33353 +29356 29429 29430 29357 33353 33426 33427 33354 +29357 29430 29431 29358 33354 33427 33428 33355 +29358 29431 29432 29359 33355 33428 33429 33356 +29359 29432 29433 29360 33356 33429 33430 33357 +29360 29433 29434 29361 33357 33430 33431 33358 +29361 29434 29435 29362 33358 33431 33432 33359 +29362 29435 29436 29363 33359 33432 33433 33360 +29363 29436 29437 29364 33360 33433 33434 33361 +29364 29437 29438 29365 33361 33434 33435 33362 +29365 29438 29439 29366 33362 33435 33436 33363 +29366 29439 29440 29367 33363 33436 33437 33364 +29367 29440 29441 29368 33364 33437 33438 33365 +29368 29441 29442 29369 33365 33438 33439 33366 +29369 29442 29443 29370 33366 33439 33440 33367 +29370 29443 29444 29371 33367 33440 33441 33368 +29371 29444 29445 29372 33368 33441 33442 33369 +29372 29445 29446 29373 33369 33442 33443 33370 +29373 29446 29447 29374 33370 33443 33444 33371 +29374 29447 29448 29375 33371 33444 33445 33372 +29375 29448 29449 29376 33372 33445 33446 33373 +29376 29449 29450 29377 33373 33446 33447 33374 +29377 29450 29451 29378 33374 33447 33448 33375 +29378 29451 29452 29379 33375 33448 33449 33376 +29379 29452 29453 29380 33376 33449 33450 33377 +29380 29453 29454 29381 33377 33450 33451 33378 +29381 29454 29455 29382 33378 33451 33452 33379 +29382 29455 29456 29383 33379 33452 33453 33380 +29383 29456 29457 29384 33380 33453 33454 33381 +29384 29457 29458 29385 33381 33454 33455 33382 +29385 29458 29459 29386 33382 33455 33456 33383 +29386 29459 29460 29387 33383 33456 33457 33384 +29387 29460 29461 29388 33384 33457 33458 33385 +29388 29461 29462 29389 33385 33458 33459 33386 +29389 29462 29463 29390 33386 33459 33460 33387 +29390 29463 29464 29391 33387 33460 33461 33388 +29391 29464 29465 29392 33388 33461 33462 33389 +29392 29465 29466 29393 33389 33462 33463 33390 +29393 29466 29467 29394 33390 33463 33464 33391 +29394 29467 29468 29395 33391 33464 33465 33392 +29395 29468 29469 29396 33392 33465 33466 33393 +29396 29469 29470 29397 33393 33466 33467 33394 +29397 29470 29471 29398 33394 33467 33468 33395 +29398 29471 29472 29399 33395 33468 33469 33396 +29399 29472 29473 29400 33396 33469 33470 33397 +29400 29473 29474 29401 33397 33470 33471 33398 +29401 29474 29475 29402 33398 33471 33472 33399 +29402 29475 29476 29403 33399 33472 33473 33400 +29403 29476 29477 29404 33400 33473 33474 33401 +29404 29477 29478 29405 33401 33474 33475 33402 +29405 29478 29479 29406 33402 33475 33476 33403 +29406 29479 29480 29407 33403 33476 33477 33404 +29407 29480 29481 29408 33404 33477 33478 33405 +29408 29481 29482 29409 33405 33478 33479 33406 +29409 29482 29483 29410 33406 33479 33480 33407 +29410 29483 29484 29411 33407 33480 33481 33408 +29411 29484 29485 29412 33408 33481 33482 33409 +29412 29485 29486 29413 33409 33482 33483 33410 +29413 29486 29487 29414 33410 33483 33484 33411 +29414 29487 29488 29415 33411 33484 33485 33412 +29415 29488 29489 29416 33412 33485 33486 33413 +29416 29489 29490 29417 33413 33486 33487 33414 +29417 29490 29491 29418 33414 33487 33488 33415 +29418 29491 29492 29419 33415 33488 33489 33416 +29419 29492 29493 29420 33416 33489 33490 33417 +29420 29493 29494 29421 33417 33490 33491 33418 +29421 29494 29495 29422 33418 33491 33492 33419 +29422 29495 29496 29423 33419 33492 33493 33420 +29423 29496 29497 29424 33420 33493 33494 33421 +29424 29497 29498 29425 33421 33494 33495 33422 +29425 29498 29499 29426 33422 33495 33496 33423 +29427 29500 29501 29428 33424 33497 33498 33425 +29428 29501 29502 29429 33425 33498 33499 33426 +29429 29502 29503 29430 33426 33499 33500 33427 +29430 29503 29504 29431 33427 33500 33501 33428 +29431 29504 29505 29432 33428 33501 33502 33429 +29432 29505 29506 29433 33429 33502 33503 33430 +29433 29506 29507 29434 33430 33503 33504 33431 +29434 29507 29508 29435 33431 33504 33505 33432 +29435 29508 29509 29436 33432 33505 33506 33433 +29436 29509 29510 29437 33433 33506 33507 33434 +29437 29510 29511 29438 33434 33507 33508 33435 +29438 29511 29512 29439 33435 33508 33509 33436 +29439 29512 29513 29440 33436 33509 33510 33437 +29440 29513 29514 29441 33437 33510 33511 33438 +29441 29514 29515 29442 33438 33511 33512 33439 +29442 29515 29516 29443 33439 33512 33513 33440 +29443 29516 29517 29444 33440 33513 33514 33441 +29444 29517 29518 29445 33441 33514 33515 33442 +29445 29518 29519 29446 33442 33515 33516 33443 +29446 29519 29520 29447 33443 33516 33517 33444 +29447 29520 29521 29448 33444 33517 33518 33445 +29448 29521 29522 29449 33445 33518 33519 33446 +29449 29522 29523 29450 33446 33519 33520 33447 +29450 29523 29524 29451 33447 33520 33521 33448 +29451 29524 29525 29452 33448 33521 33522 33449 +29452 29525 29526 29453 33449 33522 33523 33450 +29453 29526 29527 29454 33450 33523 33524 33451 +29454 29527 29528 29455 33451 33524 33525 33452 +29455 29528 29529 29456 33452 33525 33526 33453 +29456 29529 29530 29457 33453 33526 33527 33454 +29457 29530 29531 29458 33454 33527 33528 33455 +29458 29531 29532 29459 33455 33528 33529 33456 +29459 29532 29533 29460 33456 33529 33530 33457 +29460 29533 29534 29461 33457 33530 33531 33458 +29461 29534 29535 29462 33458 33531 33532 33459 +29462 29535 29536 29463 33459 33532 33533 33460 +29463 29536 29537 29464 33460 33533 33534 33461 +29464 29537 29538 29465 33461 33534 33535 33462 +29465 29538 29539 29466 33462 33535 33536 33463 +29466 29539 29540 29467 33463 33536 33537 33464 +29467 29540 29541 29468 33464 33537 33538 33465 +29468 29541 29542 29469 33465 33538 33539 33466 +29469 29542 29543 29470 33466 33539 33540 33467 +29470 29543 29544 29471 33467 33540 33541 33468 +29471 29544 29545 29472 33468 33541 33542 33469 +29472 29545 29546 29473 33469 33542 33543 33470 +29473 29546 29547 29474 33470 33543 33544 33471 +29474 29547 29548 29475 33471 33544 33545 33472 +29475 29548 29549 29476 33472 33545 33546 33473 +29476 29549 29550 29477 33473 33546 33547 33474 +29477 29550 29551 29478 33474 33547 33548 33475 +29478 29551 29552 29479 33475 33548 33549 33476 +29479 29552 29553 29480 33476 33549 33550 33477 +29480 29553 29554 29481 33477 33550 33551 33478 +29481 29554 29555 29482 33478 33551 33552 33479 +29482 29555 29556 29483 33479 33552 33553 33480 +29483 29556 29557 29484 33480 33553 33554 33481 +29484 29557 29558 29485 33481 33554 33555 33482 +29485 29558 29559 29486 33482 33555 33556 33483 +29486 29559 29560 29487 33483 33556 33557 33484 +29487 29560 29561 29488 33484 33557 33558 33485 +29488 29561 29562 29489 33485 33558 33559 33486 +29489 29562 29563 29490 33486 33559 33560 33487 +29490 29563 29564 29491 33487 33560 33561 33488 +29491 29564 29565 29492 33488 33561 33562 33489 +29492 29565 29566 29493 33489 33562 33563 33490 +29493 29566 29567 29494 33490 33563 33564 33491 +29494 29567 29568 29495 33491 33564 33565 33492 +29495 29568 29569 29496 33492 33565 33566 33493 +29496 29569 29570 29497 33493 33566 33567 33494 +29497 29570 29571 29498 33494 33567 33568 33495 +29498 29571 29572 29499 33495 33568 33569 33496 +29500 29573 29574 29501 33497 33570 33571 33498 +29501 29574 29575 29502 33498 33571 33572 33499 +29502 29575 29576 29503 33499 33572 33573 33500 +29503 29576 29577 29504 33500 33573 33574 33501 +29504 29577 29578 29505 33501 33574 33575 33502 +29505 29578 29579 29506 33502 33575 33576 33503 +29506 29579 29580 29507 33503 33576 33577 33504 +29507 29580 29581 29508 33504 33577 33578 33505 +29508 29581 29582 29509 33505 33578 33579 33506 +29509 29582 29583 29510 33506 33579 33580 33507 +29510 29583 29584 29511 33507 33580 33581 33508 +29511 29584 29585 29512 33508 33581 33582 33509 +29512 29585 29586 29513 33509 33582 33583 33510 +29513 29586 29587 29514 33510 33583 33584 33511 +29514 29587 29588 29515 33511 33584 33585 33512 +29515 29588 29589 29516 33512 33585 33586 33513 +29516 29589 29590 29517 33513 33586 33587 33514 +29517 29590 29591 29518 33514 33587 33588 33515 +29518 29591 29592 29519 33515 33588 33589 33516 +29519 29592 29593 29520 33516 33589 33590 33517 +29520 29593 29594 29521 33517 33590 33591 33518 +29521 29594 29595 29522 33518 33591 33592 33519 +29522 29595 29596 29523 33519 33592 33593 33520 +29523 29596 29597 29524 33520 33593 33594 33521 +29524 29597 29598 29525 33521 33594 33595 33522 +29525 29598 29599 29526 33522 33595 33596 33523 +29526 29599 29600 29527 33523 33596 33597 33524 +29527 29600 29601 29528 33524 33597 33598 33525 +29528 29601 29602 29529 33525 33598 33599 33526 +29529 29602 29603 29530 33526 33599 33600 33527 +29530 29603 29604 29531 33527 33600 33601 33528 +29531 29604 29605 29532 33528 33601 33602 33529 +29532 29605 29606 29533 33529 33602 33603 33530 +29533 29606 29607 29534 33530 33603 33604 33531 +29534 29607 29608 29535 33531 33604 33605 33532 +29535 29608 29609 29536 33532 33605 33606 33533 +29536 29609 29610 29537 33533 33606 33607 33534 +29537 29610 29611 29538 33534 33607 33608 33535 +29538 29611 29612 29539 33535 33608 33609 33536 +29539 29612 29613 29540 33536 33609 33610 33537 +29540 29613 29614 29541 33537 33610 33611 33538 +29541 29614 29615 29542 33538 33611 33612 33539 +29542 29615 29616 29543 33539 33612 33613 33540 +29543 29616 29617 29544 33540 33613 33614 33541 +29544 29617 29618 29545 33541 33614 33615 33542 +29545 29618 29619 29546 33542 33615 33616 33543 +29546 29619 29620 29547 33543 33616 33617 33544 +29547 29620 29621 29548 33544 33617 33618 33545 +29548 29621 29622 29549 33545 33618 33619 33546 +29549 29622 29623 29550 33546 33619 33620 33547 +29550 29623 29624 29551 33547 33620 33621 33548 +29551 29624 29625 29552 33548 33621 33622 33549 +29552 29625 29626 29553 33549 33622 33623 33550 +29553 29626 29627 29554 33550 33623 33624 33551 +29554 29627 29628 29555 33551 33624 33625 33552 +29555 29628 29629 29556 33552 33625 33626 33553 +29556 29629 29630 29557 33553 33626 33627 33554 +29557 29630 29631 29558 33554 33627 33628 33555 +29558 29631 29632 29559 33555 33628 33629 33556 +29559 29632 29633 29560 33556 33629 33630 33557 +29560 29633 29634 29561 33557 33630 33631 33558 +29561 29634 29635 29562 33558 33631 33632 33559 +29562 29635 29636 29563 33559 33632 33633 33560 +29563 29636 29637 29564 33560 33633 33634 33561 +29564 29637 29638 29565 33561 33634 33635 33562 +29565 29638 29639 29566 33562 33635 33636 33563 +29566 29639 29640 29567 33563 33636 33637 33564 +29567 29640 29641 29568 33564 33637 33638 33565 +29568 29641 29642 29569 33565 33638 33639 33566 +29569 29642 29643 29570 33566 33639 33640 33567 +29570 29643 29644 29571 33567 33640 33641 33568 +29571 29644 29645 29572 33568 33641 33642 33569 +29573 29646 29647 29574 33570 33643 33644 33571 +29574 29647 29648 29575 33571 33644 33645 33572 +29575 29648 29649 29576 33572 33645 33646 33573 +29576 29649 29650 29577 33573 33646 33647 33574 +29577 29650 29651 29578 33574 33647 33648 33575 +29578 29651 29652 29579 33575 33648 33649 33576 +29579 29652 29653 29580 33576 33649 33650 33577 +29580 29653 29654 29581 33577 33650 33651 33578 +29581 29654 29655 29582 33578 33651 33652 33579 +29582 29655 29656 29583 33579 33652 33653 33580 +29583 29656 29657 29584 33580 33653 33654 33581 +29584 29657 29658 29585 33581 33654 33655 33582 +29585 29658 29659 29586 33582 33655 33656 33583 +29586 29659 29660 29587 33583 33656 33657 33584 +29587 29660 29661 29588 33584 33657 33658 33585 +29588 29661 29662 29589 33585 33658 33659 33586 +29589 29662 29663 29590 33586 33659 33660 33587 +29590 29663 29664 29591 33587 33660 33661 33588 +29591 29664 29665 29592 33588 33661 33662 33589 +29592 29665 29666 29593 33589 33662 33663 33590 +29593 29666 29667 29594 33590 33663 33664 33591 +29594 29667 29668 29595 33591 33664 33665 33592 +29595 29668 29669 29596 33592 33665 33666 33593 +29596 29669 29670 29597 33593 33666 33667 33594 +29597 29670 29671 29598 33594 33667 33668 33595 +29598 29671 29672 29599 33595 33668 33669 33596 +29599 29672 29673 29600 33596 33669 33670 33597 +29600 29673 29674 29601 33597 33670 33671 33598 +29601 29674 29675 29602 33598 33671 33672 33599 +29602 29675 29676 29603 33599 33672 33673 33600 +29603 29676 29677 29604 33600 33673 33674 33601 +29604 29677 29678 29605 33601 33674 33675 33602 +29605 29678 29679 29606 33602 33675 33676 33603 +29606 29679 29680 29607 33603 33676 33677 33604 +29607 29680 29681 29608 33604 33677 33678 33605 +29608 29681 29682 29609 33605 33678 33679 33606 +29609 29682 29683 29610 33606 33679 33680 33607 +29610 29683 29684 29611 33607 33680 33681 33608 +29611 29684 29685 29612 33608 33681 33682 33609 +29612 29685 29686 29613 33609 33682 33683 33610 +29613 29686 29687 29614 33610 33683 33684 33611 +29614 29687 29688 29615 33611 33684 33685 33612 +29615 29688 29689 29616 33612 33685 33686 33613 +29616 29689 29690 29617 33613 33686 33687 33614 +29617 29690 29691 29618 33614 33687 33688 33615 +29618 29691 29692 29619 33615 33688 33689 33616 +29619 29692 29693 29620 33616 33689 33690 33617 +29620 29693 29694 29621 33617 33690 33691 33618 +29621 29694 29695 29622 33618 33691 33692 33619 +29622 29695 29696 29623 33619 33692 33693 33620 +29623 29696 29697 29624 33620 33693 33694 33621 +29624 29697 29698 29625 33621 33694 33695 33622 +29625 29698 29699 29626 33622 33695 33696 33623 +29626 29699 29700 29627 33623 33696 33697 33624 +29627 29700 29701 29628 33624 33697 33698 33625 +29628 29701 29702 29629 33625 33698 33699 33626 +29629 29702 29703 29630 33626 33699 33700 33627 +29630 29703 29704 29631 33627 33700 33701 33628 +29631 29704 29705 29632 33628 33701 33702 33629 +29632 29705 29706 29633 33629 33702 33703 33630 +29633 29706 29707 29634 33630 33703 33704 33631 +29634 29707 29708 29635 33631 33704 33705 33632 +29635 29708 29709 29636 33632 33705 33706 33633 +29636 29709 29710 29637 33633 33706 33707 33634 +29637 29710 29711 29638 33634 33707 33708 33635 +29638 29711 29712 29639 33635 33708 33709 33636 +29639 29712 29713 29640 33636 33709 33710 33637 +29640 29713 29714 29641 33637 33710 33711 33638 +29641 29714 29715 29642 33638 33711 33712 33639 +29642 29715 29716 29643 33639 33712 33713 33640 +29643 29716 29717 29644 33640 33713 33714 33641 +29644 29717 29718 29645 33641 33714 33715 33642 +29646 29719 29720 29647 33643 33716 33717 33644 +29647 29720 29721 29648 33644 33717 33718 33645 +29648 29721 29722 29649 33645 33718 33719 33646 +29649 29722 29723 29650 33646 33719 33720 33647 +29650 29723 29724 29651 33647 33720 33721 33648 +29651 29724 29725 29652 33648 33721 33722 33649 +29652 29725 29726 29653 33649 33722 33723 33650 +29653 29726 29727 29654 33650 33723 33724 33651 +29654 29727 29728 29655 33651 33724 33725 33652 +29655 29728 29729 29656 33652 33725 33726 33653 +29656 29729 29730 29657 33653 33726 33727 33654 +29657 29730 29731 29658 33654 33727 33728 33655 +29658 29731 29732 29659 33655 33728 33729 33656 +29659 29732 29733 29660 33656 33729 33730 33657 +29660 29733 29734 29661 33657 33730 33731 33658 +29661 29734 29735 29662 33658 33731 33732 33659 +29662 29735 29736 29663 33659 33732 33733 33660 +29663 29736 29737 29664 33660 33733 33734 33661 +29664 29737 29738 29665 33661 33734 33735 33662 +29665 29738 29739 29666 33662 33735 33736 33663 +29666 29739 29740 29667 33663 33736 33737 33664 +29667 29740 29741 29668 33664 33737 33738 33665 +29668 29741 29742 29669 33665 33738 33739 33666 +29669 29742 29743 29670 33666 33739 33740 33667 +29670 29743 29744 29671 33667 33740 33741 33668 +29671 29744 29745 29672 33668 33741 33742 33669 +29672 29745 29746 29673 33669 33742 33743 33670 +29673 29746 29747 29674 33670 33743 33744 33671 +29674 29747 29748 29675 33671 33744 33745 33672 +29675 29748 29749 29676 33672 33745 33746 33673 +29676 29749 29750 29677 33673 33746 33747 33674 +29677 29750 29751 29678 33674 33747 33748 33675 +29678 29751 29752 29679 33675 33748 33749 33676 +29679 29752 29753 29680 33676 33749 33750 33677 +29680 29753 29754 29681 33677 33750 33751 33678 +29681 29754 29755 29682 33678 33751 33752 33679 +29682 29755 29756 29683 33679 33752 33753 33680 +29683 29756 29757 29684 33680 33753 33754 33681 +29684 29757 29758 29685 33681 33754 33755 33682 +29685 29758 29759 29686 33682 33755 33756 33683 +29686 29759 29760 29687 33683 33756 33757 33684 +29687 29760 29761 29688 33684 33757 33758 33685 +29688 29761 29762 29689 33685 33758 33759 33686 +29689 29762 29763 29690 33686 33759 33760 33687 +29690 29763 29764 29691 33687 33760 33761 33688 +29691 29764 29765 29692 33688 33761 33762 33689 +29692 29765 29766 29693 33689 33762 33763 33690 +29693 29766 29767 29694 33690 33763 33764 33691 +29694 29767 29768 29695 33691 33764 33765 33692 +29695 29768 29769 29696 33692 33765 33766 33693 +29696 29769 29770 29697 33693 33766 33767 33694 +29697 29770 29771 29698 33694 33767 33768 33695 +29698 29771 29772 29699 33695 33768 33769 33696 +29699 29772 29773 29700 33696 33769 33770 33697 +29700 29773 29774 29701 33697 33770 33771 33698 +29701 29774 29775 29702 33698 33771 33772 33699 +29702 29775 29776 29703 33699 33772 33773 33700 +29703 29776 29777 29704 33700 33773 33774 33701 +29704 29777 29778 29705 33701 33774 33775 33702 +29705 29778 29779 29706 33702 33775 33776 33703 +29706 29779 29780 29707 33703 33776 33777 33704 +29707 29780 29781 29708 33704 33777 33778 33705 +29708 29781 29782 29709 33705 33778 33779 33706 +29709 29782 29783 29710 33706 33779 33780 33707 +29710 29783 29784 29711 33707 33780 33781 33708 +29711 29784 29785 29712 33708 33781 33782 33709 +29712 29785 29786 29713 33709 33782 33783 33710 +29713 29786 29787 29714 33710 33783 33784 33711 +29714 29787 29788 29715 33711 33784 33785 33712 +29715 29788 29789 29716 33712 33785 33786 33713 +29716 29789 29790 29717 33713 33786 33787 33714 +29717 29790 29791 29718 33714 33787 33788 33715 +29719 29792 29793 29720 33716 33789 33790 33717 +29720 29793 29794 29721 33717 33790 33791 33718 +29721 29794 29795 29722 33718 33791 33792 33719 +29722 29795 29796 29723 33719 33792 33793 33720 +29723 29796 29797 29724 33720 33793 33794 33721 +29724 29797 29798 29725 33721 33794 33795 33722 +29725 29798 29799 29726 33722 33795 33796 33723 +29726 29799 29800 29727 33723 33796 33797 33724 +29727 29800 29801 29728 33724 33797 33798 33725 +29728 29801 29802 29729 33725 33798 33799 33726 +29729 29802 29803 29730 33726 33799 33800 33727 +29730 29803 29804 29731 33727 33800 33801 33728 +29731 29804 29805 29732 33728 33801 33802 33729 +29732 29805 29806 29733 33729 33802 33803 33730 +29733 29806 29807 29734 33730 33803 33804 33731 +29734 29807 29808 29735 33731 33804 33805 33732 +29735 29808 29809 29736 33732 33805 33806 33733 +29736 29809 29810 29737 33733 33806 33807 33734 +29737 29810 29811 29738 33734 33807 33808 33735 +29738 29811 29812 29739 33735 33808 33809 33736 +29739 29812 29813 29740 33736 33809 33810 33737 +29740 29813 29814 29741 33737 33810 33811 33738 +29741 29814 29815 29742 33738 33811 33812 33739 +29742 29815 29816 29743 33739 33812 33813 33740 +29743 29816 29817 29744 33740 33813 33814 33741 +29744 29817 29818 29745 33741 33814 33815 33742 +29745 29818 29819 29746 33742 33815 33816 33743 +29746 29819 29820 29747 33743 33816 33817 33744 +29747 29820 29821 29748 33744 33817 33818 33745 +29748 29821 29822 29749 33745 33818 33819 33746 +29749 29822 29823 29750 33746 33819 33820 33747 +29750 29823 29824 29751 33747 33820 33821 33748 +29751 29824 29825 29752 33748 33821 33822 33749 +29752 29825 29826 29753 33749 33822 33823 33750 +29753 29826 29827 29754 33750 33823 33824 33751 +29754 29827 29828 29755 33751 33824 33825 33752 +29755 29828 29829 29756 33752 33825 33826 33753 +29756 29829 29830 29757 33753 33826 33827 33754 +29757 29830 29831 29758 33754 33827 33828 33755 +29758 29831 29832 29759 33755 33828 33829 33756 +29759 29832 29833 29760 33756 33829 33830 33757 +29760 29833 29834 29761 33757 33830 33831 33758 +29761 29834 29835 29762 33758 33831 33832 33759 +29762 29835 29836 29763 33759 33832 33833 33760 +29763 29836 29837 29764 33760 33833 33834 33761 +29764 29837 29838 29765 33761 33834 33835 33762 +29765 29838 29839 29766 33762 33835 33836 33763 +29766 29839 29840 29767 33763 33836 33837 33764 +29767 29840 29841 29768 33764 33837 33838 33765 +29768 29841 29842 29769 33765 33838 33839 33766 +29769 29842 29843 29770 33766 33839 33840 33767 +29770 29843 29844 29771 33767 33840 33841 33768 +29771 29844 29845 29772 33768 33841 33842 33769 +29772 29845 29846 29773 33769 33842 33843 33770 +29773 29846 29847 29774 33770 33843 33844 33771 +29774 29847 29848 29775 33771 33844 33845 33772 +29775 29848 29849 29776 33772 33845 33846 33773 +29776 29849 29850 29777 33773 33846 33847 33774 +29777 29850 29851 29778 33774 33847 33848 33775 +29778 29851 29852 29779 33775 33848 33849 33776 +29779 29852 29853 29780 33776 33849 33850 33777 +29780 29853 29854 29781 33777 33850 33851 33778 +29781 29854 29855 29782 33778 33851 33852 33779 +29782 29855 29856 29783 33779 33852 33853 33780 +29783 29856 29857 29784 33780 33853 33854 33781 +29784 29857 29858 29785 33781 33854 33855 33782 +29785 29858 29859 29786 33782 33855 33856 33783 +29786 29859 29860 29787 33783 33856 33857 33784 +29787 29860 29861 29788 33784 33857 33858 33785 +29788 29861 29862 29789 33785 33858 33859 33786 +29789 29862 29863 29790 33786 33859 33860 33787 +29790 29863 29864 29791 33787 33860 33861 33788 +29792 29865 29866 29793 33789 33862 33863 33790 +29793 29866 29867 29794 33790 33863 33864 33791 +29794 29867 29868 29795 33791 33864 33865 33792 +29795 29868 29869 29796 33792 33865 33866 33793 +29796 29869 29870 29797 33793 33866 33867 33794 +29797 29870 29871 29798 33794 33867 33868 33795 +29798 29871 29872 29799 33795 33868 33869 33796 +29799 29872 29873 29800 33796 33869 33870 33797 +29800 29873 29874 29801 33797 33870 33871 33798 +29801 29874 29875 29802 33798 33871 33872 33799 +29802 29875 29876 29803 33799 33872 33873 33800 +29803 29876 29877 29804 33800 33873 33874 33801 +29804 29877 29878 29805 33801 33874 33875 33802 +29805 29878 29879 29806 33802 33875 33876 33803 +29806 29879 29880 29807 33803 33876 33877 33804 +29807 29880 29881 29808 33804 33877 33878 33805 +29808 29881 29882 29809 33805 33878 33879 33806 +29809 29882 29883 29810 33806 33879 33880 33807 +29810 29883 29884 29811 33807 33880 33881 33808 +29811 29884 29885 29812 33808 33881 33882 33809 +29812 29885 29886 29813 33809 33882 33883 33810 +29813 29886 29887 29814 33810 33883 33884 33811 +29814 29887 29888 29815 33811 33884 33885 33812 +29815 29888 29889 29816 33812 33885 33886 33813 +29816 29889 29890 29817 33813 33886 33887 33814 +29817 29890 29891 29818 33814 33887 33888 33815 +29818 29891 29892 29819 33815 33888 33889 33816 +29819 29892 29893 29820 33816 33889 33890 33817 +29820 29893 29894 29821 33817 33890 33891 33818 +29821 29894 29895 29822 33818 33891 33892 33819 +29822 29895 29896 29823 33819 33892 33893 33820 +29823 29896 29897 29824 33820 33893 33894 33821 +29824 29897 29898 29825 33821 33894 33895 33822 +29825 29898 29899 29826 33822 33895 33896 33823 +29826 29899 29900 29827 33823 33896 33897 33824 +29827 29900 29901 29828 33824 33897 33898 33825 +29828 29901 29902 29829 33825 33898 33899 33826 +29829 29902 29903 29830 33826 33899 33900 33827 +29830 29903 29904 29831 33827 33900 33901 33828 +29831 29904 29905 29832 33828 33901 33902 33829 +29832 29905 29906 29833 33829 33902 33903 33830 +29833 29906 29907 29834 33830 33903 33904 33831 +29834 29907 29908 29835 33831 33904 33905 33832 +29835 29908 29909 29836 33832 33905 33906 33833 +29836 29909 29910 29837 33833 33906 33907 33834 +29837 29910 29911 29838 33834 33907 33908 33835 +29838 29911 29912 29839 33835 33908 33909 33836 +29839 29912 29913 29840 33836 33909 33910 33837 +29840 29913 29914 29841 33837 33910 33911 33838 +29841 29914 29915 29842 33838 33911 33912 33839 +29842 29915 29916 29843 33839 33912 33913 33840 +29843 29916 29917 29844 33840 33913 33914 33841 +29844 29917 29918 29845 33841 33914 33915 33842 +29845 29918 29919 29846 33842 33915 33916 33843 +29846 29919 29920 29847 33843 33916 33917 33844 +29847 29920 29921 29848 33844 33917 33918 33845 +29848 29921 29922 29849 33845 33918 33919 33846 +29849 29922 29923 29850 33846 33919 33920 33847 +29850 29923 29924 29851 33847 33920 33921 33848 +29851 29924 29925 29852 33848 33921 33922 33849 +29852 29925 29926 29853 33849 33922 33923 33850 +29853 29926 29927 29854 33850 33923 33924 33851 +29854 29927 29928 29855 33851 33924 33925 33852 +29855 29928 29929 29856 33852 33925 33926 33853 +29856 29929 29930 29857 33853 33926 33927 33854 +29857 29930 29931 29858 33854 33927 33928 33855 +29858 29931 29932 29859 33855 33928 33929 33856 +29859 29932 29933 29860 33856 33929 33930 33857 +29860 29933 29934 29861 33857 33930 33931 33858 +29861 29934 29935 29862 33858 33931 33932 33859 +29862 29935 29936 29863 33859 33932 33933 33860 +29863 29936 29937 29864 33860 33933 33934 33861 +29865 29938 29939 29866 33862 33935 33936 33863 +29866 29939 29940 29867 33863 33936 33937 33864 +29867 29940 29941 29868 33864 33937 33938 33865 +29868 29941 29942 29869 33865 33938 33939 33866 +29869 29942 29943 29870 33866 33939 33940 33867 +29870 29943 29944 29871 33867 33940 33941 33868 +29871 29944 29945 29872 33868 33941 33942 33869 +29872 29945 29946 29873 33869 33942 33943 33870 +29873 29946 29947 29874 33870 33943 33944 33871 +29874 29947 29948 29875 33871 33944 33945 33872 +29875 29948 29949 29876 33872 33945 33946 33873 +29876 29949 29950 29877 33873 33946 33947 33874 +29877 29950 29951 29878 33874 33947 33948 33875 +29878 29951 29952 29879 33875 33948 33949 33876 +29879 29952 29953 29880 33876 33949 33950 33877 +29880 29953 29954 29881 33877 33950 33951 33878 +29881 29954 29955 29882 33878 33951 33952 33879 +29882 29955 29956 29883 33879 33952 33953 33880 +29883 29956 29957 29884 33880 33953 33954 33881 +29884 29957 29958 29885 33881 33954 33955 33882 +29885 29958 29959 29886 33882 33955 33956 33883 +29886 29959 29960 29887 33883 33956 33957 33884 +29887 29960 29961 29888 33884 33957 33958 33885 +29888 29961 29962 29889 33885 33958 33959 33886 +29889 29962 29963 29890 33886 33959 33960 33887 +29890 29963 29964 29891 33887 33960 33961 33888 +29891 29964 29965 29892 33888 33961 33962 33889 +29892 29965 29966 29893 33889 33962 33963 33890 +29893 29966 29967 29894 33890 33963 33964 33891 +29894 29967 29968 29895 33891 33964 33965 33892 +29895 29968 29969 29896 33892 33965 33966 33893 +29896 29969 29970 29897 33893 33966 33967 33894 +29897 29970 29971 29898 33894 33967 33968 33895 +29898 29971 29972 29899 33895 33968 33969 33896 +29899 29972 29973 29900 33896 33969 33970 33897 +29900 29973 29974 29901 33897 33970 33971 33898 +29901 29974 29975 29902 33898 33971 33972 33899 +29902 29975 29976 29903 33899 33972 33973 33900 +29903 29976 29977 29904 33900 33973 33974 33901 +29904 29977 29978 29905 33901 33974 33975 33902 +29905 29978 29979 29906 33902 33975 33976 33903 +29906 29979 29980 29907 33903 33976 33977 33904 +29907 29980 29981 29908 33904 33977 33978 33905 +29908 29981 29982 29909 33905 33978 33979 33906 +29909 29982 29983 29910 33906 33979 33980 33907 +29910 29983 29984 29911 33907 33980 33981 33908 +29911 29984 29985 29912 33908 33981 33982 33909 +29912 29985 29986 29913 33909 33982 33983 33910 +29913 29986 29987 29914 33910 33983 33984 33911 +29914 29987 29988 29915 33911 33984 33985 33912 +29915 29988 29989 29916 33912 33985 33986 33913 +29916 29989 29990 29917 33913 33986 33987 33914 +29917 29990 29991 29918 33914 33987 33988 33915 +29918 29991 29992 29919 33915 33988 33989 33916 +29919 29992 29993 29920 33916 33989 33990 33917 +29920 29993 29994 29921 33917 33990 33991 33918 +29921 29994 29995 29922 33918 33991 33992 33919 +29922 29995 29996 29923 33919 33992 33993 33920 +29923 29996 29997 29924 33920 33993 33994 33921 +29924 29997 29998 29925 33921 33994 33995 33922 +29925 29998 29999 29926 33922 33995 33996 33923 +29926 29999 30000 29927 33923 33996 33997 33924 +29927 30000 30001 29928 33924 33997 33998 33925 +29928 30001 30002 29929 33925 33998 33999 33926 +29929 30002 30003 29930 33926 33999 34000 33927 +29930 30003 30004 29931 33927 34000 34001 33928 +29931 30004 30005 29932 33928 34001 34002 33929 +29932 30005 30006 29933 33929 34002 34003 33930 +29933 30006 30007 29934 33930 34003 34004 33931 +29934 30007 30008 29935 33931 34004 34005 33932 +29935 30008 30009 29936 33932 34005 34006 33933 +29936 30009 30010 29937 33933 34006 34007 33934 +29938 30011 30012 29939 33935 34008 34009 33936 +29939 30012 30013 29940 33936 34009 34010 33937 +29940 30013 30014 29941 33937 34010 34011 33938 +29941 30014 30015 29942 33938 34011 34012 33939 +29942 30015 30016 29943 33939 34012 34013 33940 +29943 30016 30017 29944 33940 34013 34014 33941 +29944 30017 30018 29945 33941 34014 34015 33942 +29945 30018 30019 29946 33942 34015 34016 33943 +29946 30019 30020 29947 33943 34016 34017 33944 +29947 30020 30021 29948 33944 34017 34018 33945 +29948 30021 30022 29949 33945 34018 34019 33946 +29949 30022 30023 29950 33946 34019 34020 33947 +29950 30023 30024 29951 33947 34020 34021 33948 +29951 30024 30025 29952 33948 34021 34022 33949 +29952 30025 30026 29953 33949 34022 34023 33950 +29953 30026 30027 29954 33950 34023 34024 33951 +29954 30027 30028 29955 33951 34024 34025 33952 +29955 30028 30029 29956 33952 34025 34026 33953 +29956 30029 30030 29957 33953 34026 34027 33954 +29957 30030 30031 29958 33954 34027 34028 33955 +29958 30031 30032 29959 33955 34028 34029 33956 +29959 30032 30033 29960 33956 34029 34030 33957 +29960 30033 30034 29961 33957 34030 34031 33958 +29961 30034 30035 29962 33958 34031 34032 33959 +29962 30035 30036 29963 33959 34032 34033 33960 +29963 30036 30037 29964 33960 34033 34034 33961 +29964 30037 30038 29965 33961 34034 34035 33962 +29965 30038 30039 29966 33962 34035 34036 33963 +29966 30039 30040 29967 33963 34036 34037 33964 +29967 30040 30041 29968 33964 34037 34038 33965 +29968 30041 30042 29969 33965 34038 34039 33966 +29969 30042 30043 29970 33966 34039 34040 33967 +29970 30043 30044 29971 33967 34040 34041 33968 +29971 30044 30045 29972 33968 34041 34042 33969 +29972 30045 30046 29973 33969 34042 34043 33970 +29973 30046 30047 29974 33970 34043 34044 33971 +29974 30047 30048 29975 33971 34044 34045 33972 +29975 30048 30049 29976 33972 34045 34046 33973 +29976 30049 30050 29977 33973 34046 34047 33974 +29977 30050 30051 29978 33974 34047 34048 33975 +29978 30051 30052 29979 33975 34048 34049 33976 +29979 30052 30053 29980 33976 34049 34050 33977 +29980 30053 30054 29981 33977 34050 34051 33978 +29981 30054 30055 29982 33978 34051 34052 33979 +29982 30055 30056 29983 33979 34052 34053 33980 +29983 30056 30057 29984 33980 34053 34054 33981 +29984 30057 30058 29985 33981 34054 34055 33982 +29985 30058 30059 29986 33982 34055 34056 33983 +29986 30059 30060 29987 33983 34056 34057 33984 +29987 30060 30061 29988 33984 34057 34058 33985 +29988 30061 30062 29989 33985 34058 34059 33986 +29989 30062 30063 29990 33986 34059 34060 33987 +29990 30063 30064 29991 33987 34060 34061 33988 +29991 30064 30065 29992 33988 34061 34062 33989 +29992 30065 30066 29993 33989 34062 34063 33990 +29993 30066 30067 29994 33990 34063 34064 33991 +29994 30067 30068 29995 33991 34064 34065 33992 +29995 30068 30069 29996 33992 34065 34066 33993 +29996 30069 30070 29997 33993 34066 34067 33994 +29997 30070 30071 29998 33994 34067 34068 33995 +29998 30071 30072 29999 33995 34068 34069 33996 +29999 30072 30073 30000 33996 34069 34070 33997 +30000 30073 30074 30001 33997 34070 34071 33998 +30001 30074 30075 30002 33998 34071 34072 33999 +30002 30075 30076 30003 33999 34072 34073 34000 +30003 30076 30077 30004 34000 34073 34074 34001 +30004 30077 30078 30005 34001 34074 34075 34002 +30005 30078 30079 30006 34002 34075 34076 34003 +30006 30079 30080 30007 34003 34076 34077 34004 +30007 30080 30081 30008 34004 34077 34078 34005 +30008 30081 30082 30009 34005 34078 34079 34006 +30009 30082 30083 30010 34006 34079 34080 34007 +30011 30084 30085 30012 34008 34081 34082 34009 +30012 30085 30086 30013 34009 34082 34083 34010 +30013 30086 30087 30014 34010 34083 34084 34011 +30014 30087 30088 30015 34011 34084 34085 34012 +30015 30088 30089 30016 34012 34085 34086 34013 +30016 30089 30090 30017 34013 34086 34087 34014 +30017 30090 30091 30018 34014 34087 34088 34015 +30018 30091 30092 30019 34015 34088 34089 34016 +30019 30092 30093 30020 34016 34089 34090 34017 +30020 30093 30094 30021 34017 34090 34091 34018 +30021 30094 30095 30022 34018 34091 34092 34019 +30022 30095 30096 30023 34019 34092 34093 34020 +30023 30096 30097 30024 34020 34093 34094 34021 +30024 30097 30098 30025 34021 34094 34095 34022 +30025 30098 30099 30026 34022 34095 34096 34023 +30026 30099 30100 30027 34023 34096 34097 34024 +30027 30100 30101 30028 34024 34097 34098 34025 +30028 30101 30102 30029 34025 34098 34099 34026 +30029 30102 30103 30030 34026 34099 34100 34027 +30030 30103 30104 30031 34027 34100 34101 34028 +30031 30104 30105 30032 34028 34101 34102 34029 +30032 30105 30106 30033 34029 34102 34103 34030 +30033 30106 30107 30034 34030 34103 34104 34031 +30034 30107 30108 30035 34031 34104 34105 34032 +30035 30108 30109 30036 34032 34105 34106 34033 +30036 30109 30110 30037 34033 34106 34107 34034 +30037 30110 30111 30038 34034 34107 34108 34035 +30038 30111 30112 30039 34035 34108 34109 34036 +30039 30112 30113 30040 34036 34109 34110 34037 +30040 30113 30114 30041 34037 34110 34111 34038 +30041 30114 30115 30042 34038 34111 34112 34039 +30042 30115 30116 30043 34039 34112 34113 34040 +30043 30116 30117 30044 34040 34113 34114 34041 +30044 30117 30118 30045 34041 34114 34115 34042 +30045 30118 30119 30046 34042 34115 34116 34043 +30046 30119 30120 30047 34043 34116 34117 34044 +30047 30120 30121 30048 34044 34117 34118 34045 +30048 30121 30122 30049 34045 34118 34119 34046 +30049 30122 30123 30050 34046 34119 34120 34047 +30050 30123 30124 30051 34047 34120 34121 34048 +30051 30124 30125 30052 34048 34121 34122 34049 +30052 30125 30126 30053 34049 34122 34123 34050 +30053 30126 30127 30054 34050 34123 34124 34051 +30054 30127 30128 30055 34051 34124 34125 34052 +30055 30128 30129 30056 34052 34125 34126 34053 +30056 30129 30130 30057 34053 34126 34127 34054 +30057 30130 30131 30058 34054 34127 34128 34055 +30058 30131 30132 30059 34055 34128 34129 34056 +30059 30132 30133 30060 34056 34129 34130 34057 +30060 30133 30134 30061 34057 34130 34131 34058 +30061 30134 30135 30062 34058 34131 34132 34059 +30062 30135 30136 30063 34059 34132 34133 34060 +30063 30136 30137 30064 34060 34133 34134 34061 +30064 30137 30138 30065 34061 34134 34135 34062 +30065 30138 30139 30066 34062 34135 34136 34063 +30066 30139 30140 30067 34063 34136 34137 34064 +30067 30140 30141 30068 34064 34137 34138 34065 +30068 30141 30142 30069 34065 34138 34139 34066 +30069 30142 30143 30070 34066 34139 34140 34067 +30070 30143 30144 30071 34067 34140 34141 34068 +30071 30144 30145 30072 34068 34141 34142 34069 +30072 30145 30146 30073 34069 34142 34143 34070 +30073 30146 30147 30074 34070 34143 34144 34071 +30074 30147 30148 30075 34071 34144 34145 34072 +30075 30148 30149 30076 34072 34145 34146 34073 +30076 30149 30150 30077 34073 34146 34147 34074 +30077 30150 30151 30078 34074 34147 34148 34075 +30078 30151 30152 30079 34075 34148 34149 34076 +30079 30152 30153 30080 34076 34149 34150 34077 +30080 30153 30154 30081 34077 34150 34151 34078 +30081 30154 30155 30082 34078 34151 34152 34079 +30082 30155 30156 30083 34079 34152 34153 34080 +30084 30157 30158 30085 34081 34154 34155 34082 +30085 30158 30159 30086 34082 34155 34156 34083 +30086 30159 30160 30087 34083 34156 34157 34084 +30087 30160 30161 30088 34084 34157 34158 34085 +30088 30161 30162 30089 34085 34158 34159 34086 +30089 30162 30163 30090 34086 34159 34160 34087 +30090 30163 30164 30091 34087 34160 34161 34088 +30091 30164 30165 30092 34088 34161 34162 34089 +30092 30165 30166 30093 34089 34162 34163 34090 +30093 30166 30167 30094 34090 34163 34164 34091 +30094 30167 30168 30095 34091 34164 34165 34092 +30095 30168 30169 30096 34092 34165 34166 34093 +30096 30169 30170 30097 34093 34166 34167 34094 +30097 30170 30171 30098 34094 34167 34168 34095 +30098 30171 30172 30099 34095 34168 34169 34096 +30099 30172 30173 30100 34096 34169 34170 34097 +30100 30173 30174 30101 34097 34170 34171 34098 +30101 30174 30175 30102 34098 34171 34172 34099 +30102 30175 30176 30103 34099 34172 34173 34100 +30103 30176 30177 30104 34100 34173 34174 34101 +30104 30177 30178 30105 34101 34174 34175 34102 +30105 30178 30179 30106 34102 34175 34176 34103 +30106 30179 30180 30107 34103 34176 34177 34104 +30107 30180 30181 30108 34104 34177 34178 34105 +30108 30181 30182 30109 34105 34178 34179 34106 +30109 30182 30183 30110 34106 34179 34180 34107 +30110 30183 30184 30111 34107 34180 34181 34108 +30111 30184 30185 30112 34108 34181 34182 34109 +30112 30185 30186 30113 34109 34182 34183 34110 +30113 30186 30187 30114 34110 34183 34184 34111 +30114 30187 30188 30115 34111 34184 34185 34112 +30115 30188 30189 30116 34112 34185 34186 34113 +30116 30189 30190 30117 34113 34186 34187 34114 +30117 30190 30191 30118 34114 34187 34188 34115 +30118 30191 30192 30119 34115 34188 34189 34116 +30119 30192 30193 30120 34116 34189 34190 34117 +30120 30193 30194 30121 34117 34190 34191 34118 +30121 30194 30195 30122 34118 34191 34192 34119 +30122 30195 30196 30123 34119 34192 34193 34120 +30123 30196 30197 30124 34120 34193 34194 34121 +30124 30197 30198 30125 34121 34194 34195 34122 +30125 30198 30199 30126 34122 34195 34196 34123 +30126 30199 30200 30127 34123 34196 34197 34124 +30127 30200 30201 30128 34124 34197 34198 34125 +30128 30201 30202 30129 34125 34198 34199 34126 +30129 30202 30203 30130 34126 34199 34200 34127 +30130 30203 30204 30131 34127 34200 34201 34128 +30131 30204 30205 30132 34128 34201 34202 34129 +30132 30205 30206 30133 34129 34202 34203 34130 +30133 30206 30207 30134 34130 34203 34204 34131 +30134 30207 30208 30135 34131 34204 34205 34132 +30135 30208 30209 30136 34132 34205 34206 34133 +30136 30209 30210 30137 34133 34206 34207 34134 +30137 30210 30211 30138 34134 34207 34208 34135 +30138 30211 30212 30139 34135 34208 34209 34136 +30139 30212 30213 30140 34136 34209 34210 34137 +30140 30213 30214 30141 34137 34210 34211 34138 +30141 30214 30215 30142 34138 34211 34212 34139 +30142 30215 30216 30143 34139 34212 34213 34140 +30143 30216 30217 30144 34140 34213 34214 34141 +30144 30217 30218 30145 34141 34214 34215 34142 +30145 30218 30219 30146 34142 34215 34216 34143 +30146 30219 30220 30147 34143 34216 34217 34144 +30147 30220 30221 30148 34144 34217 34218 34145 +30148 30221 30222 30149 34145 34218 34219 34146 +30149 30222 30223 30150 34146 34219 34220 34147 +30150 30223 30224 30151 34147 34220 34221 34148 +30151 30224 30225 30152 34148 34221 34222 34149 +30152 30225 30226 30153 34149 34222 34223 34150 +30153 30226 30227 30154 34150 34223 34224 34151 +30154 30227 30228 30155 34151 34224 34225 34152 +30155 30228 30229 30156 34152 34225 34226 34153 +30157 30230 30231 30158 34154 34227 34228 34155 +30158 30231 30232 30159 34155 34228 34229 34156 +30159 30232 30233 30160 34156 34229 34230 34157 +30160 30233 30234 30161 34157 34230 34231 34158 +30161 30234 30235 30162 34158 34231 34232 34159 +30162 30235 30236 30163 34159 34232 34233 34160 +30163 30236 30237 30164 34160 34233 34234 34161 +30164 30237 30238 30165 34161 34234 34235 34162 +30165 30238 30239 30166 34162 34235 34236 34163 +30166 30239 30240 30167 34163 34236 34237 34164 +30167 30240 30241 30168 34164 34237 34238 34165 +30168 30241 30242 30169 34165 34238 34239 34166 +30169 30242 30243 30170 34166 34239 34240 34167 +30170 30243 30244 30171 34167 34240 34241 34168 +30171 30244 30245 30172 34168 34241 34242 34169 +30172 30245 30246 30173 34169 34242 34243 34170 +30173 30246 30247 30174 34170 34243 34244 34171 +30174 30247 30248 30175 34171 34244 34245 34172 +30175 30248 30249 30176 34172 34245 34246 34173 +30176 30249 30250 30177 34173 34246 34247 34174 +30177 30250 30251 30178 34174 34247 34248 34175 +30178 30251 30252 30179 34175 34248 34249 34176 +30179 30252 30253 30180 34176 34249 34250 34177 +30180 30253 30254 30181 34177 34250 34251 34178 +30181 30254 30255 30182 34178 34251 34252 34179 +30182 30255 30256 30183 34179 34252 34253 34180 +30183 30256 30257 30184 34180 34253 34254 34181 +30184 30257 30258 30185 34181 34254 34255 34182 +30185 30258 30259 30186 34182 34255 34256 34183 +30186 30259 30260 30187 34183 34256 34257 34184 +30187 30260 30261 30188 34184 34257 34258 34185 +30188 30261 30262 30189 34185 34258 34259 34186 +30189 30262 30263 30190 34186 34259 34260 34187 +30190 30263 30264 30191 34187 34260 34261 34188 +30191 30264 30265 30192 34188 34261 34262 34189 +30192 30265 30266 30193 34189 34262 34263 34190 +30193 30266 30267 30194 34190 34263 34264 34191 +30194 30267 30268 30195 34191 34264 34265 34192 +30195 30268 30269 30196 34192 34265 34266 34193 +30196 30269 30270 30197 34193 34266 34267 34194 +30197 30270 30271 30198 34194 34267 34268 34195 +30198 30271 30272 30199 34195 34268 34269 34196 +30199 30272 30273 30200 34196 34269 34270 34197 +30200 30273 30274 30201 34197 34270 34271 34198 +30201 30274 30275 30202 34198 34271 34272 34199 +30202 30275 30276 30203 34199 34272 34273 34200 +30203 30276 30277 30204 34200 34273 34274 34201 +30204 30277 30278 30205 34201 34274 34275 34202 +30205 30278 30279 30206 34202 34275 34276 34203 +30206 30279 30280 30207 34203 34276 34277 34204 +30207 30280 30281 30208 34204 34277 34278 34205 +30208 30281 30282 30209 34205 34278 34279 34206 +30209 30282 30283 30210 34206 34279 34280 34207 +30210 30283 30284 30211 34207 34280 34281 34208 +30211 30284 30285 30212 34208 34281 34282 34209 +30212 30285 30286 30213 34209 34282 34283 34210 +30213 30286 30287 30214 34210 34283 34284 34211 +30214 30287 30288 30215 34211 34284 34285 34212 +30215 30288 30289 30216 34212 34285 34286 34213 +30216 30289 30290 30217 34213 34286 34287 34214 +30217 30290 30291 30218 34214 34287 34288 34215 +30218 30291 30292 30219 34215 34288 34289 34216 +30219 30292 30293 30220 34216 34289 34290 34217 +30220 30293 30294 30221 34217 34290 34291 34218 +30221 30294 30295 30222 34218 34291 34292 34219 +30222 30295 30296 30223 34219 34292 34293 34220 +30223 30296 30297 30224 34220 34293 34294 34221 +30224 30297 30298 30225 34221 34294 34295 34222 +30225 30298 30299 30226 34222 34295 34296 34223 +30226 30299 30300 30227 34223 34296 34297 34224 +30227 30300 30301 30228 34224 34297 34298 34225 +30228 30301 30302 30229 34225 34298 34299 34226 +30230 30303 30304 30231 34227 34300 34301 34228 +30231 30304 30305 30232 34228 34301 34302 34229 +30232 30305 30306 30233 34229 34302 34303 34230 +30233 30306 30307 30234 34230 34303 34304 34231 +30234 30307 30308 30235 34231 34304 34305 34232 +30235 30308 30309 30236 34232 34305 34306 34233 +30236 30309 30310 30237 34233 34306 34307 34234 +30237 30310 30311 30238 34234 34307 34308 34235 +30238 30311 30312 30239 34235 34308 34309 34236 +30239 30312 30313 30240 34236 34309 34310 34237 +30240 30313 30314 30241 34237 34310 34311 34238 +30241 30314 30315 30242 34238 34311 34312 34239 +30242 30315 30316 30243 34239 34312 34313 34240 +30243 30316 30317 30244 34240 34313 34314 34241 +30244 30317 30318 30245 34241 34314 34315 34242 +30245 30318 30319 30246 34242 34315 34316 34243 +30246 30319 30320 30247 34243 34316 34317 34244 +30247 30320 30321 30248 34244 34317 34318 34245 +30248 30321 30322 30249 34245 34318 34319 34246 +30249 30322 30323 30250 34246 34319 34320 34247 +30250 30323 30324 30251 34247 34320 34321 34248 +30251 30324 30325 30252 34248 34321 34322 34249 +30252 30325 30326 30253 34249 34322 34323 34250 +30253 30326 30327 30254 34250 34323 34324 34251 +30254 30327 30328 30255 34251 34324 34325 34252 +30255 30328 30329 30256 34252 34325 34326 34253 +30256 30329 30330 30257 34253 34326 34327 34254 +30257 30330 30331 30258 34254 34327 34328 34255 +30258 30331 30332 30259 34255 34328 34329 34256 +30259 30332 30333 30260 34256 34329 34330 34257 +30260 30333 30334 30261 34257 34330 34331 34258 +30261 30334 30335 30262 34258 34331 34332 34259 +30262 30335 30336 30263 34259 34332 34333 34260 +30263 30336 30337 30264 34260 34333 34334 34261 +30264 30337 30338 30265 34261 34334 34335 34262 +30265 30338 30339 30266 34262 34335 34336 34263 +30266 30339 30340 30267 34263 34336 34337 34264 +30267 30340 30341 30268 34264 34337 34338 34265 +30268 30341 30342 30269 34265 34338 34339 34266 +30269 30342 30343 30270 34266 34339 34340 34267 +30270 30343 30344 30271 34267 34340 34341 34268 +30271 30344 30345 30272 34268 34341 34342 34269 +30272 30345 30346 30273 34269 34342 34343 34270 +30273 30346 30347 30274 34270 34343 34344 34271 +30274 30347 30348 30275 34271 34344 34345 34272 +30275 30348 30349 30276 34272 34345 34346 34273 +30276 30349 30350 30277 34273 34346 34347 34274 +30277 30350 30351 30278 34274 34347 34348 34275 +30278 30351 30352 30279 34275 34348 34349 34276 +30279 30352 30353 30280 34276 34349 34350 34277 +30280 30353 30354 30281 34277 34350 34351 34278 +30281 30354 30355 30282 34278 34351 34352 34279 +30282 30355 30356 30283 34279 34352 34353 34280 +30283 30356 30357 30284 34280 34353 34354 34281 +30284 30357 30358 30285 34281 34354 34355 34282 +30285 30358 30359 30286 34282 34355 34356 34283 +30286 30359 30360 30287 34283 34356 34357 34284 +30287 30360 30361 30288 34284 34357 34358 34285 +30288 30361 30362 30289 34285 34358 34359 34286 +30289 30362 30363 30290 34286 34359 34360 34287 +30290 30363 30364 30291 34287 34360 34361 34288 +30291 30364 30365 30292 34288 34361 34362 34289 +30292 30365 30366 30293 34289 34362 34363 34290 +30293 30366 30367 30294 34290 34363 34364 34291 +30294 30367 30368 30295 34291 34364 34365 34292 +30295 30368 30369 30296 34292 34365 34366 34293 +30296 30369 30370 30297 34293 34366 34367 34294 +30297 30370 30371 30298 34294 34367 34368 34295 +30298 30371 30372 30299 34295 34368 34369 34296 +30299 30372 30373 30300 34296 34369 34370 34297 +30300 30373 30374 30301 34297 34370 34371 34298 +30301 30374 30375 30302 34298 34371 34372 34299 +30303 30376 30377 30304 34300 34373 34374 34301 +30304 30377 30378 30305 34301 34374 34375 34302 +30305 30378 30379 30306 34302 34375 34376 34303 +30306 30379 30380 30307 34303 34376 34377 34304 +30307 30380 30381 30308 34304 34377 34378 34305 +30308 30381 30382 30309 34305 34378 34379 34306 +30309 30382 30383 30310 34306 34379 34380 34307 +30310 30383 30384 30311 34307 34380 34381 34308 +30311 30384 30385 30312 34308 34381 34382 34309 +30312 30385 30386 30313 34309 34382 34383 34310 +30313 30386 30387 30314 34310 34383 34384 34311 +30314 30387 30388 30315 34311 34384 34385 34312 +30315 30388 30389 30316 34312 34385 34386 34313 +30316 30389 30390 30317 34313 34386 34387 34314 +30317 30390 30391 30318 34314 34387 34388 34315 +30318 30391 30392 30319 34315 34388 34389 34316 +30319 30392 30393 30320 34316 34389 34390 34317 +30320 30393 30394 30321 34317 34390 34391 34318 +30321 30394 30395 30322 34318 34391 34392 34319 +30322 30395 30396 30323 34319 34392 34393 34320 +30323 30396 30397 30324 34320 34393 34394 34321 +30324 30397 30398 30325 34321 34394 34395 34322 +30325 30398 30399 30326 34322 34395 34396 34323 +30326 30399 30400 30327 34323 34396 34397 34324 +30327 30400 30401 30328 34324 34397 34398 34325 +30328 30401 30402 30329 34325 34398 34399 34326 +30329 30402 30403 30330 34326 34399 34400 34327 +30330 30403 30404 30331 34327 34400 34401 34328 +30331 30404 30405 30332 34328 34401 34402 34329 +30332 30405 30406 30333 34329 34402 34403 34330 +30333 30406 30407 30334 34330 34403 34404 34331 +30334 30407 30408 30335 34331 34404 34405 34332 +30335 30408 30409 30336 34332 34405 34406 34333 +30336 30409 30410 30337 34333 34406 34407 34334 +30337 30410 30411 30338 34334 34407 34408 34335 +30338 30411 30412 30339 34335 34408 34409 34336 +30339 30412 30413 30340 34336 34409 34410 34337 +30340 30413 30414 30341 34337 34410 34411 34338 +30341 30414 30415 30342 34338 34411 34412 34339 +30342 30415 30416 30343 34339 34412 34413 34340 +30343 30416 30417 30344 34340 34413 34414 34341 +30344 30417 30418 30345 34341 34414 34415 34342 +30345 30418 30419 30346 34342 34415 34416 34343 +30346 30419 30420 30347 34343 34416 34417 34344 +30347 30420 30421 30348 34344 34417 34418 34345 +30348 30421 30422 30349 34345 34418 34419 34346 +30349 30422 30423 30350 34346 34419 34420 34347 +30350 30423 30424 30351 34347 34420 34421 34348 +30351 30424 30425 30352 34348 34421 34422 34349 +30352 30425 30426 30353 34349 34422 34423 34350 +30353 30426 30427 30354 34350 34423 34424 34351 +30354 30427 30428 30355 34351 34424 34425 34352 +30355 30428 30429 30356 34352 34425 34426 34353 +30356 30429 30430 30357 34353 34426 34427 34354 +30357 30430 30431 30358 34354 34427 34428 34355 +30358 30431 30432 30359 34355 34428 34429 34356 +30359 30432 30433 30360 34356 34429 34430 34357 +30360 30433 30434 30361 34357 34430 34431 34358 +30361 30434 30435 30362 34358 34431 34432 34359 +30362 30435 30436 30363 34359 34432 34433 34360 +30363 30436 30437 30364 34360 34433 34434 34361 +30364 30437 30438 30365 34361 34434 34435 34362 +30365 30438 30439 30366 34362 34435 34436 34363 +30366 30439 30440 30367 34363 34436 34437 34364 +30367 30440 30441 30368 34364 34437 34438 34365 +30368 30441 30442 30369 34365 34438 34439 34366 +30369 30442 30443 30370 34366 34439 34440 34367 +30370 30443 30444 30371 34367 34440 34441 34368 +30371 30444 30445 30372 34368 34441 34442 34369 +30372 30445 30446 30373 34369 34442 34443 34370 +30373 30446 30447 30374 34370 34443 34444 34371 +30374 30447 30448 30375 34371 34444 34445 34372 +0 5 0 7 0 1 +1 2 1 4 0 8 +1 17 2 3 5 9 +4 18 2 20 6 10 +1 21 3 4 7 11 +2 5 5 6 0 22 +3 6 5 25 7 23 +4 7 6 7 0 26 +8 9 8 11 1 27 +8 12 9 10 2 28 +11 13 9 15 3 29 +8 16 10 11 4 30 +9 43 12 13 17 31 +10 44 12 14 18 32 +15 45 13 47 19 33 +10 48 14 16 20 34 +11 49 15 16 21 35 +12 22 17 18 2 50 +13 23 17 19 3 51 +14 24 18 54 20 52 +15 25 19 21 3 55 +16 26 20 21 4 56 +17 22 22 23 5 57 +18 23 22 24 6 58 +19 24 23 61 25 59 +20 25 24 26 6 62 +21 26 25 26 7 63 +27 28 27 30 8 64 +27 31 28 29 9 65 +30 32 28 34 10 66 +27 35 29 30 11 67 +28 36 31 32 12 68 +29 37 31 33 13 69 +34 38 32 40 14 70 +29 41 33 35 15 71 +30 42 34 35 16 72 +31 80 36 37 43 73 +32 81 36 38 44 74 +33 82 37 39 45 75 +40 83 38 84 46 76 +33 85 39 41 47 77 +34 86 40 42 48 78 +35 87 41 42 49 79 +36 50 43 44 12 88 +37 51 43 45 13 89 +38 52 44 46 14 90 +39 53 45 92 47 91 +40 54 46 48 14 93 +41 55 47 49 15 94 +42 56 48 49 16 95 +43 57 50 51 17 96 +44 58 50 52 18 97 +45 59 51 53 19 98 +46 60 52 100 54 99 +47 61 53 55 19 101 +48 62 54 56 20 102 +49 63 55 56 21 103 +50 57 57 58 22 104 +51 58 57 59 23 105 +52 59 58 60 24 106 +53 60 59 108 61 107 +54 61 60 62 24 109 +55 62 61 63 25 110 +56 63 62 63 26 111 +64 65 64 67 27 112 +64 68 65 66 28 113 +67 69 65 71 29 114 +64 72 66 67 30 115 +65 73 68 69 31 116 +66 74 68 70 32 117 +71 75 69 77 33 118 +66 78 70 72 34 119 +67 79 71 72 35 120 +68 80 73 74 36 121 +69 81 73 75 37 122 +70 82 74 76 38 123 +77 83 75 84 39 124 +70 85 76 78 40 125 +71 86 77 79 41 126 +72 87 78 79 42 127 +73 88 80 81 36 128 +74 89 80 82 37 129 +75 90 81 83 38 130 +76 91 82 84 39 131 +76 92 83 85 39 132 +77 93 84 86 40 133 +78 94 85 87 41 134 +79 95 86 87 42 135 +80 96 88 89 43 136 +81 97 88 90 44 137 +82 98 89 91 45 138 +83 99 90 92 46 139 +84 100 91 93 46 140 +85 101 92 94 47 141 +86 102 93 95 48 142 +87 103 94 95 49 143 +88 104 96 97 50 144 +89 105 96 98 51 145 +90 106 97 99 52 146 +91 107 98 100 53 147 +92 108 99 101 53 148 +93 109 100 102 54 149 +94 110 101 103 55 150 +95 111 102 103 56 151 +96 104 104 105 57 152 +97 105 104 106 58 153 +98 106 105 107 59 154 +99 107 106 108 60 155 +100 108 107 109 60 156 +101 109 108 110 61 157 +102 110 109 111 62 158 +103 111 110 111 63 159 +112 163 160 162 64 161 +163 165 113 166 65 164 +169 175 166 168 66 167 +162 184 169 171 67 170 +165 187 172 174 68 173 +175 177 174 178 69 176 +181 193 178 180 70 179 +168 202 181 183 71 182 +184 186 183 120 72 185 +187 189 121 190 73 188 +177 211 190 192 74 191 +193 195 192 196 75 194 +199 217 196 198 76 197 +180 223 199 201 77 200 +202 204 201 205 78 203 +186 229 205 207 79 206 +189 232 208 210 80 209 +211 213 210 214 81 212 +195 238 214 216 82 215 +217 219 216 220 83 218 +198 244 220 222 84 221 +223 225 222 226 85 224 +204 250 226 228 86 227 +229 231 228 135 87 230 +232 234 136 235 88 233 +213 259 235 237 89 236 +238 240 237 241 90 239 +219 265 241 243 91 242 +244 246 243 247 92 245 +225 271 247 249 93 248 +250 252 249 253 94 251 +231 277 253 255 95 254 +234 280 256 258 96 257 +259 261 258 262 97 260 +240 286 262 264 98 263 +265 267 264 268 99 266 +246 292 268 270 100 269 +271 273 270 274 101 272 +252 298 274 276 102 275 +277 279 276 151 103 278 +280 282 152 283 104 281 +261 153 283 285 105 284 +286 288 285 289 106 287 +267 155 289 291 107 290 +292 294 291 295 108 293 +273 157 295 297 109 296 +298 300 297 301 110 299 +279 159 301 303 111 302 +308 310 160 161 112 309 +305 311 160 162 112 306 +304 312 161 115 112 307 +112 164 329 313 113 320 +163 165 330 314 113 321 +164 116 331 315 113 322 +332 334 113 167 114 333 +323 335 166 168 114 324 +316 336 167 119 114 325 +337 339 114 170 115 338 +326 328 169 171 115 327 +317 319 170 171 115 318 +368 370 172 173 116 369 +353 355 172 174 116 354 +340 342 173 117 116 341 +114 176 371 343 117 356 +175 177 372 344 117 357 +176 122 373 345 117 358 +374 376 117 179 118 375 +359 377 178 180 118 360 +346 378 179 125 118 361 +379 381 118 182 119 380 +362 364 181 183 119 363 +347 349 182 120 119 348 +115 185 382 350 120 365 +184 186 383 351 120 366 +185 127 384 352 120 367 +116 188 425 385 121 404 +187 189 426 386 121 405 +188 128 427 387 121 406 +428 430 121 191 122 429 +407 409 190 192 122 408 +388 390 191 123 122 389 +118 194 431 391 123 410 +193 195 432 392 123 411 +194 130 433 393 123 412 +434 436 123 197 124 435 +413 437 196 198 124 414 +394 438 197 132 124 415 +439 441 124 200 125 440 +416 418 199 201 125 417 +395 397 200 126 125 396 +119 203 442 398 126 419 +202 204 443 399 126 420 +203 134 444 400 126 421 +445 447 126 206 127 446 +422 424 205 207 127 423 +401 403 206 207 127 402 +496 498 208 209 128 497 +472 474 208 210 128 473 +448 450 209 129 128 449 +122 212 499 451 129 475 +211 213 500 452 129 476 +212 137 501 453 129 477 +502 504 129 215 130 503 +478 480 214 216 130 479 +454 456 215 131 130 455 +124 218 505 457 131 481 +217 219 506 458 131 482 +218 139 507 459 131 483 +508 510 131 221 132 509 +484 486 220 222 132 485 +460 462 221 133 132 461 +125 224 511 463 133 487 +223 225 512 464 133 488 +224 141 513 465 133 489 +514 516 133 227 134 515 +490 492 226 228 134 491 +466 468 227 135 134 467 +127 230 517 469 135 493 +229 231 518 470 135 494 +230 143 519 471 135 495 +128 233 568 520 136 544 +232 234 569 521 136 545 +233 144 570 522 136 546 +571 573 136 236 137 572 +547 549 235 237 137 548 +523 525 236 138 137 524 +130 239 574 526 138 550 +238 240 575 527 138 551 +239 146 576 528 138 552 +577 579 138 242 139 578 +553 555 241 243 139 554 +529 531 242 140 139 530 +132 245 580 532 140 556 +244 246 581 533 140 557 +245 148 582 534 140 558 +583 585 140 248 141 584 +559 561 247 249 141 560 +535 537 248 142 141 536 +134 251 586 538 142 562 +250 252 587 539 142 563 +251 150 588 540 142 564 +589 591 142 254 143 590 +565 567 253 255 143 566 +541 543 254 255 143 542 +640 642 256 257 144 641 +616 618 256 258 144 617 +592 594 257 145 144 593 +137 260 643 595 145 619 +259 261 644 596 145 620 +260 153 645 597 145 621 +646 648 145 263 146 647 +622 624 262 264 146 623 +598 600 263 147 146 599 +139 266 649 601 147 625 +265 267 650 602 147 626 +266 155 651 603 147 627 +652 654 147 269 148 653 +628 630 268 270 148 629 +604 606 269 149 148 605 +141 272 655 607 149 631 +271 273 656 608 149 632 +272 157 657 609 149 633 +658 660 149 275 150 659 +634 636 274 276 150 635 +610 612 275 151 150 611 +143 278 661 613 151 637 +277 279 662 614 151 638 +278 159 663 615 151 639 +144 281 712 664 152 688 +280 282 713 665 152 689 +281 282 714 666 152 690 +715 717 152 284 153 716 +691 693 283 285 153 692 +667 669 284 154 153 668 +146 287 718 670 154 694 +286 288 719 671 154 695 +287 288 720 672 154 696 +721 723 154 290 155 722 +697 699 289 291 155 698 +673 675 290 156 155 674 +148 293 724 676 156 700 +292 294 725 677 156 701 +293 294 726 678 156 702 +727 729 156 296 157 728 +703 705 295 297 157 704 +679 681 296 158 157 680 +150 299 730 682 158 706 +298 300 731 683 158 707 +299 300 732 684 158 708 +733 735 158 302 159 734 +709 711 301 303 159 710 +685 687 302 303 159 686 +304 307 305 317 162 744 +305 306 308 304 161 739 +305 311 309 307 161 738 +304 312 306 326 162 743 +308 309 308 305 160 736 +308 310 309 306 160 737 +309 329 310 311 160 740 +306 320 310 312 161 741 +307 313 311 337 162 742 +312 314 320 332 163 747 +313 315 321 333 164 754 +314 340 322 334 165 763 +339 325 323 347 168 768 +304 318 326 317 171 751 +317 319 327 318 171 760 +318 350 328 319 171 771 +311 321 329 313 163 746 +320 322 330 314 164 753 +321 353 331 315 165 762 +338 324 332 316 167 757 +323 335 333 325 167 756 +316 336 324 362 168 767 +307 327 337 317 170 750 +326 328 338 318 170 759 +327 365 339 319 170 770 +310 330 329 320 163 745 +329 331 330 321 164 752 +330 368 331 322 165 761 +337 333 313 323 166 748 +332 334 314 324 166 755 +333 371 315 335 166 764 +324 356 334 336 167 765 +325 343 335 379 168 766 +312 338 332 326 169 749 +337 339 323 327 169 758 +338 382 316 328 169 769 +315 341 353 371 174 774 +340 342 354 372 174 787 +341 385 355 373 174 802 +336 344 356 374 175 777 +343 345 357 375 176 790 +344 388 358 376 177 805 +381 361 359 395 180 810 +316 348 362 382 183 781 +347 349 363 383 183 796 +348 398 364 384 183 813 +319 351 365 350 184 784 +350 352 366 351 185 799 +351 401 367 352 186 816 +322 354 368 340 173 773 +353 355 369 341 173 786 +354 404 370 342 173 801 +335 357 371 343 175 776 +356 358 372 344 176 789 +357 407 373 345 177 804 +380 360 374 346 179 793 +359 377 375 361 179 792 +346 378 360 416 180 809 +325 363 379 347 182 780 +362 364 380 348 182 795 +363 419 381 349 182 812 +328 366 382 350 184 783 +365 367 383 351 185 798 +366 422 384 352 186 815 +331 369 368 353 172 772 +368 370 369 354 172 785 +369 425 370 355 172 800 +334 372 340 356 175 775 +371 373 341 357 176 788 +372 428 342 358 177 803 +379 375 343 359 178 778 +374 376 344 360 178 791 +375 431 345 377 178 806 +360 410 376 378 179 807 +361 391 377 439 180 808 +336 380 374 362 181 779 +379 381 359 363 181 794 +380 442 346 364 181 811 +339 383 347 365 184 782 +382 384 348 366 185 797 +383 445 349 367 186 814 +342 386 404 428 187 819 +385 387 405 429 188 838 +386 448 406 430 189 859 +345 389 407 431 192 822 +388 390 408 432 192 841 +389 451 409 433 192 862 +378 392 410 434 193 825 +391 393 411 435 194 844 +392 454 412 436 195 865 +441 415 413 460 198 870 +346 396 416 442 201 829 +395 397 417 443 201 850 +396 463 418 444 201 873 +349 399 419 445 202 832 +398 400 420 446 203 853 +399 466 421 447 204 876 +352 402 422 401 207 835 +401 403 423 402 207 856 +402 469 424 403 207 879 +355 405 425 385 187 818 +404 406 426 386 188 837 +405 472 427 387 189 858 +358 408 428 388 191 821 +407 409 429 389 191 840 +408 475 430 390 191 861 +377 411 431 391 193 824 +410 412 432 392 194 843 +411 478 433 393 195 864 +440 414 434 394 197 847 +413 437 435 415 197 846 +394 438 414 484 198 869 +361 417 439 395 200 828 +416 418 440 396 200 849 +417 487 441 397 200 872 +364 420 442 398 202 831 +419 421 443 399 203 852 +420 490 444 400 204 875 +367 423 445 401 206 834 +422 424 446 402 206 855 +423 493 447 403 206 878 +370 426 425 404 187 817 +425 427 426 405 188 836 +426 496 427 406 189 857 +373 429 385 407 190 820 +428 430 386 408 190 839 +429 499 387 409 190 860 +376 432 388 410 193 823 +431 433 389 411 194 842 +432 502 390 412 195 863 +439 435 391 413 196 826 +434 436 392 414 196 845 +435 505 393 437 196 866 +414 481 436 438 197 867 +415 457 437 508 198 868 +378 440 434 416 199 827 +439 441 413 417 199 848 +440 511 394 418 199 871 +381 443 395 419 202 830 +442 444 396 420 203 851 +443 514 397 421 204 874 +384 446 398 422 205 833 +445 447 399 423 205 854 +446 517 400 424 205 877 +387 449 472 499 210 882 +448 450 473 500 210 906 +449 520 474 501 210 930 +390 452 475 502 211 885 +451 453 476 503 212 909 +452 523 477 504 213 933 +393 455 478 505 216 888 +454 456 479 506 216 912 +455 526 480 507 216 936 +438 458 481 508 217 891 +457 459 482 509 218 915 +458 529 483 510 219 939 +394 461 484 511 222 894 +460 462 485 512 222 918 +461 532 486 513 222 942 +397 464 487 514 223 897 +463 465 488 515 224 921 +464 535 489 516 225 945 +400 467 490 517 228 900 +466 468 491 518 228 924 +467 538 492 519 228 948 +403 470 493 469 229 903 +469 471 494 470 230 927 +470 541 495 471 231 951 +406 473 496 448 209 881 +472 474 497 449 209 905 +473 544 498 450 209 929 +409 476 499 451 211 884 +475 477 500 452 212 908 +476 547 501 453 213 932 +412 479 502 454 215 887 +478 480 503 455 215 911 +479 550 504 456 215 935 +437 482 505 457 217 890 +481 483 506 458 218 914 +482 553 507 459 219 938 +415 485 508 460 221 893 +484 486 509 461 221 917 +485 556 510 462 221 941 +418 488 511 463 223 896 +487 489 512 464 224 920 +488 559 513 465 225 944 +421 491 514 466 227 899 +490 492 515 467 227 923 +491 562 516 468 227 947 +424 494 517 469 229 902 +493 495 518 470 230 926 +494 565 519 471 231 950 +427 497 496 472 208 880 +496 498 497 473 208 904 +497 568 498 474 208 928 +430 500 448 475 211 883 +499 501 449 476 212 907 +500 571 450 477 213 931 +433 503 451 478 214 886 +502 504 452 479 214 910 +503 574 453 480 214 934 +436 506 454 481 217 889 +505 507 455 482 218 913 +506 577 456 483 219 937 +438 509 457 484 220 892 +508 510 458 485 220 916 +509 580 459 486 220 940 +441 512 460 487 223 895 +511 513 461 488 224 919 +512 583 462 489 225 943 +444 515 463 490 226 898 +514 516 464 491 226 922 +515 586 465 492 226 946 +447 518 466 493 229 901 +517 519 467 494 230 925 +518 589 468 495 231 949 +450 521 544 571 232 954 +520 522 545 572 233 978 +521 592 546 573 234 1002 +453 524 547 574 237 957 +523 525 548 575 237 981 +524 595 549 576 237 1005 +456 527 550 577 238 960 +526 528 551 578 239 984 +527 598 552 579 240 1008 +459 530 553 580 243 963 +529 531 554 581 243 987 +530 601 555 582 243 1011 +462 533 556 583 244 966 +532 534 557 584 245 990 +533 604 558 585 246 1014 +465 536 559 586 249 969 +535 537 560 587 249 993 +536 607 561 588 249 1017 +468 539 562 589 250 972 +538 540 563 590 251 996 +539 610 564 591 252 1020 +471 542 565 541 255 975 +541 543 566 542 255 999 +542 613 567 543 255 1023 +474 545 568 520 232 953 +544 546 569 521 233 977 +545 616 570 522 234 1001 +477 548 571 523 236 956 +547 549 572 524 236 980 +548 619 573 525 236 1004 +480 551 574 526 238 959 +550 552 575 527 239 983 +551 622 576 528 240 1007 +483 554 577 529 242 962 +553 555 578 530 242 986 +554 625 579 531 242 1010 +486 557 580 532 244 965 +556 558 581 533 245 989 +557 628 582 534 246 1013 +489 560 583 535 248 968 +559 561 584 536 248 992 +560 631 585 537 248 1016 +492 563 586 538 250 971 +562 564 587 539 251 995 +563 634 588 540 252 1019 +495 566 589 541 254 974 +565 567 590 542 254 998 +566 637 591 543 254 1022 +498 569 568 544 232 952 +568 570 569 545 233 976 +569 640 570 546 234 1000 +501 572 520 547 235 955 +571 573 521 548 235 979 +572 643 522 549 235 1003 +504 575 523 550 238 958 +574 576 524 551 239 982 +575 646 525 552 240 1006 +507 578 526 553 241 961 +577 579 527 554 241 985 +578 649 528 555 241 1009 +510 581 529 556 244 964 +580 582 530 557 245 988 +581 652 531 558 246 1012 +513 584 532 559 247 967 +583 585 533 560 247 991 +584 655 534 561 247 1015 +516 587 535 562 250 970 +586 588 536 563 251 994 +587 658 537 564 252 1018 +519 590 538 565 253 973 +589 591 539 566 253 997 +590 661 540 567 253 1021 +522 593 616 643 258 1026 +592 594 617 644 258 1050 +593 664 618 645 258 1074 +525 596 619 646 259 1029 +595 597 620 647 260 1053 +596 667 621 648 261 1077 +528 599 622 649 264 1032 +598 600 623 650 264 1056 +599 670 624 651 264 1080 +531 602 625 652 265 1035 +601 603 626 653 266 1059 +602 673 627 654 267 1083 +534 605 628 655 270 1038 +604 606 629 656 270 1062 +605 676 630 657 270 1086 +537 608 631 658 271 1041 +607 609 632 659 272 1065 +608 679 633 660 273 1089 +540 611 634 661 276 1044 +610 612 635 662 276 1068 +611 682 636 663 276 1092 +543 614 637 613 277 1047 +613 615 638 614 278 1071 +614 685 639 615 279 1095 +546 617 640 592 257 1025 +616 618 641 593 257 1049 +617 688 642 594 257 1073 +549 620 643 595 259 1028 +619 621 644 596 260 1052 +620 691 645 597 261 1076 +552 623 646 598 263 1031 +622 624 647 599 263 1055 +623 694 648 600 263 1079 +555 626 649 601 265 1034 +625 627 650 602 266 1058 +626 697 651 603 267 1082 +558 629 652 604 269 1037 +628 630 653 605 269 1061 +629 700 654 606 269 1085 +561 632 655 607 271 1040 +631 633 656 608 272 1064 +632 703 657 609 273 1088 +564 635 658 610 275 1043 +634 636 659 611 275 1067 +635 706 660 612 275 1091 +567 638 661 613 277 1046 +637 639 662 614 278 1070 +638 709 663 615 279 1094 +570 641 640 616 256 1024 +640 642 641 617 256 1048 +641 712 642 618 256 1072 +573 644 592 619 259 1027 +643 645 593 620 260 1051 +644 715 594 621 261 1075 +576 647 595 622 262 1030 +646 648 596 623 262 1054 +647 718 597 624 262 1078 +579 650 598 625 265 1033 +649 651 599 626 266 1057 +650 721 600 627 267 1081 +582 653 601 628 268 1036 +652 654 602 629 268 1060 +653 724 603 630 268 1084 +585 656 604 631 271 1039 +655 657 605 632 272 1063 +656 727 606 633 273 1087 +588 659 607 634 274 1042 +658 660 608 635 274 1066 +659 730 609 636 274 1090 +591 662 610 637 277 1045 +661 663 611 638 278 1069 +662 733 612 639 279 1093 +594 665 688 715 280 1098 +664 666 689 716 281 1122 +665 666 690 717 282 1146 +597 668 691 718 285 1101 +667 669 692 719 285 1125 +668 669 693 720 285 1149 +600 671 694 721 286 1104 +670 672 695 722 287 1128 +671 672 696 723 288 1152 +603 674 697 724 291 1107 +673 675 698 725 291 1131 +674 675 699 726 291 1155 +606 677 700 727 292 1110 +676 678 701 728 293 1134 +677 678 702 729 294 1158 +609 680 703 730 297 1113 +679 681 704 731 297 1137 +680 681 705 732 297 1161 +612 683 706 733 298 1116 +682 684 707 734 299 1140 +683 684 708 735 300 1164 +615 686 709 685 303 1119 +685 687 710 686 303 1143 +686 687 711 687 303 1167 +618 689 712 664 280 1097 +688 690 713 665 281 1121 +689 690 714 666 282 1145 +621 692 715 667 284 1100 +691 693 716 668 284 1124 +692 693 717 669 284 1148 +624 695 718 670 286 1103 +694 696 719 671 287 1127 +695 696 720 672 288 1151 +627 698 721 673 290 1106 +697 699 722 674 290 1130 +698 699 723 675 290 1154 +630 701 724 676 292 1109 +700 702 725 677 293 1133 +701 702 726 678 294 1157 +633 704 727 679 296 1112 +703 705 728 680 296 1136 +704 705 729 681 296 1160 +636 707 730 682 298 1115 +706 708 731 683 299 1139 +707 708 732 684 300 1163 +639 710 733 685 302 1118 +709 711 734 686 302 1142 +710 711 735 687 302 1166 +642 713 712 688 280 1096 +712 714 713 689 281 1120 +713 714 714 690 282 1144 +645 716 664 691 283 1099 +715 717 665 692 283 1123 +716 717 666 693 283 1147 +648 719 667 694 286 1102 +718 720 668 695 287 1126 +719 720 669 696 288 1150 +651 722 670 697 289 1105 +721 723 671 698 289 1129 +722 723 672 699 289 1153 +654 725 673 700 292 1108 +724 726 674 701 293 1132 +725 726 675 702 294 1156 +657 728 676 703 295 1111 +727 729 677 704 295 1135 +728 729 678 705 295 1159 +660 731 679 706 298 1114 +730 732 680 707 299 1138 +731 732 681 708 300 1162 +663 734 682 709 301 1117 +733 735 683 710 301 1141 +734 735 684 711 301 1165 +736 737 736 739 308 1168 +736 740 737 738 309 1169 +739 741 737 743 306 1170 +736 744 738 739 305 1171 +737 745 740 741 310 1172 +738 746 740 742 311 1173 +743 747 741 749 312 1174 +738 750 742 744 307 1175 +739 751 743 744 304 1176 +740 752 745 746 329 1177 +741 753 745 747 320 1178 +742 754 746 748 313 1179 +749 755 747 757 332 1180 +742 758 748 750 337 1181 +743 759 749 751 326 1182 +744 760 750 751 317 1183 +745 761 752 753 330 1184 +746 762 752 754 321 1185 +747 763 753 755 314 1186 +748 764 754 756 333 1187 +757 765 755 767 324 1188 +748 768 756 758 323 1189 +749 769 757 759 338 1190 +750 770 758 760 327 1191 +751 771 759 760 318 1192 +752 772 761 762 331 1193 +753 773 761 763 322 1194 +754 774 762 764 315 1195 +755 775 763 765 334 1196 +756 776 764 766 335 1197 +767 777 765 779 336 1198 +756 780 766 768 325 1199 +757 781 767 769 316 1200 +758 782 768 770 339 1201 +759 783 769 771 328 1202 +760 784 770 771 319 1203 +761 785 772 773 368 1204 +762 786 772 774 353 1205 +763 787 773 775 340 1206 +764 788 774 776 371 1207 +765 789 775 777 356 1208 +766 790 776 778 343 1209 +779 791 777 793 374 1210 +766 794 778 780 379 1211 +767 795 779 781 362 1212 +768 796 780 782 347 1213 +769 797 781 783 382 1214 +770 798 782 784 365 1215 +771 799 783 784 350 1216 +772 800 785 786 369 1217 +773 801 785 787 354 1218 +774 802 786 788 341 1219 +775 803 787 789 372 1220 +776 804 788 790 357 1221 +777 805 789 791 344 1222 +778 806 790 792 375 1223 +793 807 791 809 360 1224 +778 810 792 794 359 1225 +779 811 793 795 380 1226 +780 812 794 796 363 1227 +781 813 795 797 348 1228 +782 814 796 798 383 1229 +783 815 797 799 366 1230 +784 816 798 799 351 1231 +785 817 800 801 370 1232 +786 818 800 802 355 1233 +787 819 801 803 342 1234 +788 820 802 804 373 1235 +789 821 803 805 358 1236 +790 822 804 806 345 1237 +791 823 805 807 376 1238 +792 824 806 808 377 1239 +809 825 807 827 378 1240 +792 828 808 810 361 1241 +793 829 809 811 346 1242 +794 830 810 812 381 1243 +795 831 811 813 364 1244 +796 832 812 814 349 1245 +797 833 813 815 384 1246 +798 834 814 816 367 1247 +799 835 815 816 352 1248 +800 836 817 818 425 1249 +801 837 817 819 404 1250 +802 838 818 820 385 1251 +803 839 819 821 428 1252 +804 840 820 822 407 1253 +805 841 821 823 388 1254 +806 842 822 824 431 1255 +807 843 823 825 410 1256 +808 844 824 826 391 1257 +827 845 825 847 434 1258 +808 848 826 828 439 1259 +809 849 827 829 416 1260 +810 850 828 830 395 1261 +811 851 829 831 442 1262 +812 852 830 832 419 1263 +813 853 831 833 398 1264 +814 854 832 834 445 1265 +815 855 833 835 422 1266 +816 856 834 835 401 1267 +817 857 836 837 426 1268 +818 858 836 838 405 1269 +819 859 837 839 386 1270 +820 860 838 840 429 1271 +821 861 839 841 408 1272 +822 862 840 842 389 1273 +823 863 841 843 432 1274 +824 864 842 844 411 1275 +825 865 843 845 392 1276 +826 866 844 846 435 1277 +847 867 845 869 414 1278 +826 870 846 848 413 1279 +827 871 847 849 440 1280 +828 872 848 850 417 1281 +829 873 849 851 396 1282 +830 874 850 852 443 1283 +831 875 851 853 420 1284 +832 876 852 854 399 1285 +833 877 853 855 446 1286 +834 878 854 856 423 1287 +835 879 855 856 402 1288 +836 880 857 858 427 1289 +837 881 857 859 406 1290 +838 882 858 860 387 1291 +839 883 859 861 430 1292 +840 884 860 862 409 1293 +841 885 861 863 390 1294 +842 886 862 864 433 1295 +843 887 863 865 412 1296 +844 888 864 866 393 1297 +845 889 865 867 436 1298 +846 890 866 868 437 1299 +869 891 867 892 438 1300 +846 893 868 870 415 1301 +847 894 869 871 394 1302 +848 895 870 872 441 1303 +849 896 871 873 418 1304 +850 897 872 874 397 1305 +851 898 873 875 444 1306 +852 899 874 876 421 1307 +853 900 875 877 400 1308 +854 901 876 878 447 1309 +855 902 877 879 424 1310 +856 903 878 879 403 1311 +857 904 880 881 496 1312 +858 905 880 882 472 1313 +859 906 881 883 448 1314 +860 907 882 884 499 1315 +861 908 883 885 475 1316 +862 909 884 886 451 1317 +863 910 885 887 502 1318 +864 911 886 888 478 1319 +865 912 887 889 454 1320 +866 913 888 890 505 1321 +867 914 889 891 481 1322 +868 915 890 892 457 1323 +868 916 891 893 508 1324 +869 917 892 894 484 1325 +870 918 893 895 460 1326 +871 919 894 896 511 1327 +872 920 895 897 487 1328 +873 921 896 898 463 1329 +874 922 897 899 514 1330 +875 923 898 900 490 1331 +876 924 899 901 466 1332 +877 925 900 902 517 1333 +878 926 901 903 493 1334 +879 927 902 903 469 1335 +880 928 904 905 497 1336 +881 929 904 906 473 1337 +882 930 905 907 449 1338 +883 931 906 908 500 1339 +884 932 907 909 476 1340 +885 933 908 910 452 1341 +886 934 909 911 503 1342 +887 935 910 912 479 1343 +888 936 911 913 455 1344 +889 937 912 914 506 1345 +890 938 913 915 482 1346 +891 939 914 916 458 1347 +892 940 915 917 509 1348 +893 941 916 918 485 1349 +894 942 917 919 461 1350 +895 943 918 920 512 1351 +896 944 919 921 488 1352 +897 945 920 922 464 1353 +898 946 921 923 515 1354 +899 947 922 924 491 1355 +900 948 923 925 467 1356 +901 949 924 926 518 1357 +902 950 925 927 494 1358 +903 951 926 927 470 1359 +904 952 928 929 498 1360 +905 953 928 930 474 1361 +906 954 929 931 450 1362 +907 955 930 932 501 1363 +908 956 931 933 477 1364 +909 957 932 934 453 1365 +910 958 933 935 504 1366 +911 959 934 936 480 1367 +912 960 935 937 456 1368 +913 961 936 938 507 1369 +914 962 937 939 483 1370 +915 963 938 940 459 1371 +916 964 939 941 510 1372 +917 965 940 942 486 1373 +918 966 941 943 462 1374 +919 967 942 944 513 1375 +920 968 943 945 489 1376 +921 969 944 946 465 1377 +922 970 945 947 516 1378 +923 971 946 948 492 1379 +924 972 947 949 468 1380 +925 973 948 950 519 1381 +926 974 949 951 495 1382 +927 975 950 951 471 1383 +928 976 952 953 568 1384 +929 977 952 954 544 1385 +930 978 953 955 520 1386 +931 979 954 956 571 1387 +932 980 955 957 547 1388 +933 981 956 958 523 1389 +934 982 957 959 574 1390 +935 983 958 960 550 1391 +936 984 959 961 526 1392 +937 985 960 962 577 1393 +938 986 961 963 553 1394 +939 987 962 964 529 1395 +940 988 963 965 580 1396 +941 989 964 966 556 1397 +942 990 965 967 532 1398 +943 991 966 968 583 1399 +944 992 967 969 559 1400 +945 993 968 970 535 1401 +946 994 969 971 586 1402 +947 995 970 972 562 1403 +948 996 971 973 538 1404 +949 997 972 974 589 1405 +950 998 973 975 565 1406 +951 999 974 975 541 1407 +952 1000 976 977 569 1408 +953 1001 976 978 545 1409 +954 1002 977 979 521 1410 +955 1003 978 980 572 1411 +956 1004 979 981 548 1412 +957 1005 980 982 524 1413 +958 1006 981 983 575 1414 +959 1007 982 984 551 1415 +960 1008 983 985 527 1416 +961 1009 984 986 578 1417 +962 1010 985 987 554 1418 +963 1011 986 988 530 1419 +964 1012 987 989 581 1420 +965 1013 988 990 557 1421 +966 1014 989 991 533 1422 +967 1015 990 992 584 1423 +968 1016 991 993 560 1424 +969 1017 992 994 536 1425 +970 1018 993 995 587 1426 +971 1019 994 996 563 1427 +972 1020 995 997 539 1428 +973 1021 996 998 590 1429 +974 1022 997 999 566 1430 +975 1023 998 999 542 1431 +976 1024 1000 1001 570 1432 +977 1025 1000 1002 546 1433 +978 1026 1001 1003 522 1434 +979 1027 1002 1004 573 1435 +980 1028 1003 1005 549 1436 +981 1029 1004 1006 525 1437 +982 1030 1005 1007 576 1438 +983 1031 1006 1008 552 1439 +984 1032 1007 1009 528 1440 +985 1033 1008 1010 579 1441 +986 1034 1009 1011 555 1442 +987 1035 1010 1012 531 1443 +988 1036 1011 1013 582 1444 +989 1037 1012 1014 558 1445 +990 1038 1013 1015 534 1446 +991 1039 1014 1016 585 1447 +992 1040 1015 1017 561 1448 +993 1041 1016 1018 537 1449 +994 1042 1017 1019 588 1450 +995 1043 1018 1020 564 1451 +996 1044 1019 1021 540 1452 +997 1045 1020 1022 591 1453 +998 1046 1021 1023 567 1454 +999 1047 1022 1023 543 1455 +1000 1048 1024 1025 640 1456 +1001 1049 1024 1026 616 1457 +1002 1050 1025 1027 592 1458 +1003 1051 1026 1028 643 1459 +1004 1052 1027 1029 619 1460 +1005 1053 1028 1030 595 1461 +1006 1054 1029 1031 646 1462 +1007 1055 1030 1032 622 1463 +1008 1056 1031 1033 598 1464 +1009 1057 1032 1034 649 1465 +1010 1058 1033 1035 625 1466 +1011 1059 1034 1036 601 1467 +1012 1060 1035 1037 652 1468 +1013 1061 1036 1038 628 1469 +1014 1062 1037 1039 604 1470 +1015 1063 1038 1040 655 1471 +1016 1064 1039 1041 631 1472 +1017 1065 1040 1042 607 1473 +1018 1066 1041 1043 658 1474 +1019 1067 1042 1044 634 1475 +1020 1068 1043 1045 610 1476 +1021 1069 1044 1046 661 1477 +1022 1070 1045 1047 637 1478 +1023 1071 1046 1047 613 1479 +1024 1072 1048 1049 641 1480 +1025 1073 1048 1050 617 1481 +1026 1074 1049 1051 593 1482 +1027 1075 1050 1052 644 1483 +1028 1076 1051 1053 620 1484 +1029 1077 1052 1054 596 1485 +1030 1078 1053 1055 647 1486 +1031 1079 1054 1056 623 1487 +1032 1080 1055 1057 599 1488 +1033 1081 1056 1058 650 1489 +1034 1082 1057 1059 626 1490 +1035 1083 1058 1060 602 1491 +1036 1084 1059 1061 653 1492 +1037 1085 1060 1062 629 1493 +1038 1086 1061 1063 605 1494 +1039 1087 1062 1064 656 1495 +1040 1088 1063 1065 632 1496 +1041 1089 1064 1066 608 1497 +1042 1090 1065 1067 659 1498 +1043 1091 1066 1068 635 1499 +1044 1092 1067 1069 611 1500 +1045 1093 1068 1070 662 1501 +1046 1094 1069 1071 638 1502 +1047 1095 1070 1071 614 1503 +1048 1096 1072 1073 642 1504 +1049 1097 1072 1074 618 1505 +1050 1098 1073 1075 594 1506 +1051 1099 1074 1076 645 1507 +1052 1100 1075 1077 621 1508 +1053 1101 1076 1078 597 1509 +1054 1102 1077 1079 648 1510 +1055 1103 1078 1080 624 1511 +1056 1104 1079 1081 600 1512 +1057 1105 1080 1082 651 1513 +1058 1106 1081 1083 627 1514 +1059 1107 1082 1084 603 1515 +1060 1108 1083 1085 654 1516 +1061 1109 1084 1086 630 1517 +1062 1110 1085 1087 606 1518 +1063 1111 1086 1088 657 1519 +1064 1112 1087 1089 633 1520 +1065 1113 1088 1090 609 1521 +1066 1114 1089 1091 660 1522 +1067 1115 1090 1092 636 1523 +1068 1116 1091 1093 612 1524 +1069 1117 1092 1094 663 1525 +1070 1118 1093 1095 639 1526 +1071 1119 1094 1095 615 1527 +1072 1120 1096 1097 712 1528 +1073 1121 1096 1098 688 1529 +1074 1122 1097 1099 664 1530 +1075 1123 1098 1100 715 1531 +1076 1124 1099 1101 691 1532 +1077 1125 1100 1102 667 1533 +1078 1126 1101 1103 718 1534 +1079 1127 1102 1104 694 1535 +1080 1128 1103 1105 670 1536 +1081 1129 1104 1106 721 1537 +1082 1130 1105 1107 697 1538 +1083 1131 1106 1108 673 1539 +1084 1132 1107 1109 724 1540 +1085 1133 1108 1110 700 1541 +1086 1134 1109 1111 676 1542 +1087 1135 1110 1112 727 1543 +1088 1136 1111 1113 703 1544 +1089 1137 1112 1114 679 1545 +1090 1138 1113 1115 730 1546 +1091 1139 1114 1116 706 1547 +1092 1140 1115 1117 682 1548 +1093 1141 1116 1118 733 1549 +1094 1142 1117 1119 709 1550 +1095 1143 1118 1119 685 1551 +1096 1144 1120 1121 713 1552 +1097 1145 1120 1122 689 1553 +1098 1146 1121 1123 665 1554 +1099 1147 1122 1124 716 1555 +1100 1148 1123 1125 692 1556 +1101 1149 1124 1126 668 1557 +1102 1150 1125 1127 719 1558 +1103 1151 1126 1128 695 1559 +1104 1152 1127 1129 671 1560 +1105 1153 1128 1130 722 1561 +1106 1154 1129 1131 698 1562 +1107 1155 1130 1132 674 1563 +1108 1156 1131 1133 725 1564 +1109 1157 1132 1134 701 1565 +1110 1158 1133 1135 677 1566 +1111 1159 1134 1136 728 1567 +1112 1160 1135 1137 704 1568 +1113 1161 1136 1138 680 1569 +1114 1162 1137 1139 731 1570 +1115 1163 1138 1140 707 1571 +1116 1164 1139 1141 683 1572 +1117 1165 1140 1142 734 1573 +1118 1166 1141 1143 710 1574 +1119 1167 1142 1143 686 1575 +1120 1144 1144 1145 714 1576 +1121 1145 1144 1146 690 1577 +1122 1146 1145 1147 666 1578 +1123 1147 1146 1148 717 1579 +1124 1148 1147 1149 693 1580 +1125 1149 1148 1150 669 1581 +1126 1150 1149 1151 720 1582 +1127 1151 1150 1152 696 1583 +1128 1152 1151 1153 672 1584 +1129 1153 1152 1154 723 1585 +1130 1154 1153 1155 699 1586 +1131 1155 1154 1156 675 1587 +1132 1156 1155 1157 726 1588 +1133 1157 1156 1158 702 1589 +1134 1158 1157 1159 678 1590 +1135 1159 1158 1160 729 1591 +1136 1160 1159 1161 705 1592 +1137 1161 1160 1162 681 1593 +1138 1162 1161 1163 732 1594 +1139 1163 1162 1164 708 1595 +1140 1164 1163 1165 684 1596 +1141 1165 1164 1166 735 1597 +1142 1166 1165 1167 711 1598 +1143 1167 1166 1167 687 1599 +1168 1169 1168 1171 736 1600 +1168 1172 1169 1170 737 1601 +1171 1173 1169 1175 738 1602 +1168 1176 1170 1171 739 1603 +1169 1177 1172 1173 740 1604 +1170 1178 1172 1174 741 1605 +1175 1179 1173 1181 742 1606 +1170 1182 1174 1176 743 1607 +1171 1183 1175 1176 744 1608 +1172 1184 1177 1178 745 1609 +1173 1185 1177 1179 746 1610 +1174 1186 1178 1180 747 1611 +1181 1187 1179 1189 748 1612 +1174 1190 1180 1182 749 1613 +1175 1191 1181 1183 750 1614 +1176 1192 1182 1183 751 1615 +1177 1193 1184 1185 752 1616 +1178 1194 1184 1186 753 1617 +1179 1195 1185 1187 754 1618 +1180 1196 1186 1188 755 1619 +1189 1197 1187 1199 756 1620 +1180 1200 1188 1190 757 1621 +1181 1201 1189 1191 758 1622 +1182 1202 1190 1192 759 1623 +1183 1203 1191 1192 760 1624 +1184 1204 1193 1194 761 1625 +1185 1205 1193 1195 762 1626 +1186 1206 1194 1196 763 1627 +1187 1207 1195 1197 764 1628 +1188 1208 1196 1198 765 1629 +1199 1209 1197 1211 766 1630 +1188 1212 1198 1200 767 1631 +1189 1213 1199 1201 768 1632 +1190 1214 1200 1202 769 1633 +1191 1215 1201 1203 770 1634 +1192 1216 1202 1203 771 1635 +1193 1217 1204 1205 772 1636 +1194 1218 1204 1206 773 1637 +1195 1219 1205 1207 774 1638 +1196 1220 1206 1208 775 1639 +1197 1221 1207 1209 776 1640 +1198 1222 1208 1210 777 1641 +1211 1223 1209 1225 778 1642 +1198 1226 1210 1212 779 1643 +1199 1227 1211 1213 780 1644 +1200 1228 1212 1214 781 1645 +1201 1229 1213 1215 782 1646 +1202 1230 1214 1216 783 1647 +1203 1231 1215 1216 784 1648 +1204 1232 1217 1218 785 1649 +1205 1233 1217 1219 786 1650 +1206 1234 1218 1220 787 1651 +1207 1235 1219 1221 788 1652 +1208 1236 1220 1222 789 1653 +1209 1237 1221 1223 790 1654 +1210 1238 1222 1224 791 1655 +1225 1239 1223 1241 792 1656 +1210 1242 1224 1226 793 1657 +1211 1243 1225 1227 794 1658 +1212 1244 1226 1228 795 1659 +1213 1245 1227 1229 796 1660 +1214 1246 1228 1230 797 1661 +1215 1247 1229 1231 798 1662 +1216 1248 1230 1231 799 1663 +1217 1249 1232 1233 800 1664 +1218 1250 1232 1234 801 1665 +1219 1251 1233 1235 802 1666 +1220 1252 1234 1236 803 1667 +1221 1253 1235 1237 804 1668 +1222 1254 1236 1238 805 1669 +1223 1255 1237 1239 806 1670 +1224 1256 1238 1240 807 1671 +1241 1257 1239 1259 808 1672 +1224 1260 1240 1242 809 1673 +1225 1261 1241 1243 810 1674 +1226 1262 1242 1244 811 1675 +1227 1263 1243 1245 812 1676 +1228 1264 1244 1246 813 1677 +1229 1265 1245 1247 814 1678 +1230 1266 1246 1248 815 1679 +1231 1267 1247 1248 816 1680 +1232 1268 1249 1250 817 1681 +1233 1269 1249 1251 818 1682 +1234 1270 1250 1252 819 1683 +1235 1271 1251 1253 820 1684 +1236 1272 1252 1254 821 1685 +1237 1273 1253 1255 822 1686 +1238 1274 1254 1256 823 1687 +1239 1275 1255 1257 824 1688 +1240 1276 1256 1258 825 1689 +1259 1277 1257 1279 826 1690 +1240 1280 1258 1260 827 1691 +1241 1281 1259 1261 828 1692 +1242 1282 1260 1262 829 1693 +1243 1283 1261 1263 830 1694 +1244 1284 1262 1264 831 1695 +1245 1285 1263 1265 832 1696 +1246 1286 1264 1266 833 1697 +1247 1287 1265 1267 834 1698 +1248 1288 1266 1267 835 1699 +1249 1289 1268 1269 836 1700 +1250 1290 1268 1270 837 1701 +1251 1291 1269 1271 838 1702 +1252 1292 1270 1272 839 1703 +1253 1293 1271 1273 840 1704 +1254 1294 1272 1274 841 1705 +1255 1295 1273 1275 842 1706 +1256 1296 1274 1276 843 1707 +1257 1297 1275 1277 844 1708 +1258 1298 1276 1278 845 1709 +1279 1299 1277 1301 846 1710 +1258 1302 1278 1280 847 1711 +1259 1303 1279 1281 848 1712 +1260 1304 1280 1282 849 1713 +1261 1305 1281 1283 850 1714 +1262 1306 1282 1284 851 1715 +1263 1307 1283 1285 852 1716 +1264 1308 1284 1286 853 1717 +1265 1309 1285 1287 854 1718 +1266 1310 1286 1288 855 1719 +1267 1311 1287 1288 856 1720 +1268 1312 1289 1290 857 1721 +1269 1313 1289 1291 858 1722 +1270 1314 1290 1292 859 1723 +1271 1315 1291 1293 860 1724 +1272 1316 1292 1294 861 1725 +1273 1317 1293 1295 862 1726 +1274 1318 1294 1296 863 1727 +1275 1319 1295 1297 864 1728 +1276 1320 1296 1298 865 1729 +1277 1321 1297 1299 866 1730 +1278 1322 1298 1300 867 1731 +1301 1323 1299 1324 868 1732 +1278 1325 1300 1302 869 1733 +1279 1326 1301 1303 870 1734 +1280 1327 1302 1304 871 1735 +1281 1328 1303 1305 872 1736 +1282 1329 1304 1306 873 1737 +1283 1330 1305 1307 874 1738 +1284 1331 1306 1308 875 1739 +1285 1332 1307 1309 876 1740 +1286 1333 1308 1310 877 1741 +1287 1334 1309 1311 878 1742 +1288 1335 1310 1311 879 1743 +1289 1336 1312 1313 880 1744 +1290 1337 1312 1314 881 1745 +1291 1338 1313 1315 882 1746 +1292 1339 1314 1316 883 1747 +1293 1340 1315 1317 884 1748 +1294 1341 1316 1318 885 1749 +1295 1342 1317 1319 886 1750 +1296 1343 1318 1320 887 1751 +1297 1344 1319 1321 888 1752 +1298 1345 1320 1322 889 1753 +1299 1346 1321 1323 890 1754 +1300 1347 1322 1324 891 1755 +1300 1348 1323 1325 892 1756 +1301 1349 1324 1326 893 1757 +1302 1350 1325 1327 894 1758 +1303 1351 1326 1328 895 1759 +1304 1352 1327 1329 896 1760 +1305 1353 1328 1330 897 1761 +1306 1354 1329 1331 898 1762 +1307 1355 1330 1332 899 1763 +1308 1356 1331 1333 900 1764 +1309 1357 1332 1334 901 1765 +1310 1358 1333 1335 902 1766 +1311 1359 1334 1335 903 1767 +1312 1360 1336 1337 904 1768 +1313 1361 1336 1338 905 1769 +1314 1362 1337 1339 906 1770 +1315 1363 1338 1340 907 1771 +1316 1364 1339 1341 908 1772 +1317 1365 1340 1342 909 1773 +1318 1366 1341 1343 910 1774 +1319 1367 1342 1344 911 1775 +1320 1368 1343 1345 912 1776 +1321 1369 1344 1346 913 1777 +1322 1370 1345 1347 914 1778 +1323 1371 1346 1348 915 1779 +1324 1372 1347 1349 916 1780 +1325 1373 1348 1350 917 1781 +1326 1374 1349 1351 918 1782 +1327 1375 1350 1352 919 1783 +1328 1376 1351 1353 920 1784 +1329 1377 1352 1354 921 1785 +1330 1378 1353 1355 922 1786 +1331 1379 1354 1356 923 1787 +1332 1380 1355 1357 924 1788 +1333 1381 1356 1358 925 1789 +1334 1382 1357 1359 926 1790 +1335 1383 1358 1359 927 1791 +1336 1384 1360 1361 928 1792 +1337 1385 1360 1362 929 1793 +1338 1386 1361 1363 930 1794 +1339 1387 1362 1364 931 1795 +1340 1388 1363 1365 932 1796 +1341 1389 1364 1366 933 1797 +1342 1390 1365 1367 934 1798 +1343 1391 1366 1368 935 1799 +1344 1392 1367 1369 936 1800 +1345 1393 1368 1370 937 1801 +1346 1394 1369 1371 938 1802 +1347 1395 1370 1372 939 1803 +1348 1396 1371 1373 940 1804 +1349 1397 1372 1374 941 1805 +1350 1398 1373 1375 942 1806 +1351 1399 1374 1376 943 1807 +1352 1400 1375 1377 944 1808 +1353 1401 1376 1378 945 1809 +1354 1402 1377 1379 946 1810 +1355 1403 1378 1380 947 1811 +1356 1404 1379 1381 948 1812 +1357 1405 1380 1382 949 1813 +1358 1406 1381 1383 950 1814 +1359 1407 1382 1383 951 1815 +1360 1408 1384 1385 952 1816 +1361 1409 1384 1386 953 1817 +1362 1410 1385 1387 954 1818 +1363 1411 1386 1388 955 1819 +1364 1412 1387 1389 956 1820 +1365 1413 1388 1390 957 1821 +1366 1414 1389 1391 958 1822 +1367 1415 1390 1392 959 1823 +1368 1416 1391 1393 960 1824 +1369 1417 1392 1394 961 1825 +1370 1418 1393 1395 962 1826 +1371 1419 1394 1396 963 1827 +1372 1420 1395 1397 964 1828 +1373 1421 1396 1398 965 1829 +1374 1422 1397 1399 966 1830 +1375 1423 1398 1400 967 1831 +1376 1424 1399 1401 968 1832 +1377 1425 1400 1402 969 1833 +1378 1426 1401 1403 970 1834 +1379 1427 1402 1404 971 1835 +1380 1428 1403 1405 972 1836 +1381 1429 1404 1406 973 1837 +1382 1430 1405 1407 974 1838 +1383 1431 1406 1407 975 1839 +1384 1432 1408 1409 976 1840 +1385 1433 1408 1410 977 1841 +1386 1434 1409 1411 978 1842 +1387 1435 1410 1412 979 1843 +1388 1436 1411 1413 980 1844 +1389 1437 1412 1414 981 1845 +1390 1438 1413 1415 982 1846 +1391 1439 1414 1416 983 1847 +1392 1440 1415 1417 984 1848 +1393 1441 1416 1418 985 1849 +1394 1442 1417 1419 986 1850 +1395 1443 1418 1420 987 1851 +1396 1444 1419 1421 988 1852 +1397 1445 1420 1422 989 1853 +1398 1446 1421 1423 990 1854 +1399 1447 1422 1424 991 1855 +1400 1448 1423 1425 992 1856 +1401 1449 1424 1426 993 1857 +1402 1450 1425 1427 994 1858 +1403 1451 1426 1428 995 1859 +1404 1452 1427 1429 996 1860 +1405 1453 1428 1430 997 1861 +1406 1454 1429 1431 998 1862 +1407 1455 1430 1431 999 1863 +1408 1456 1432 1433 1000 1864 +1409 1457 1432 1434 1001 1865 +1410 1458 1433 1435 1002 1866 +1411 1459 1434 1436 1003 1867 +1412 1460 1435 1437 1004 1868 +1413 1461 1436 1438 1005 1869 +1414 1462 1437 1439 1006 1870 +1415 1463 1438 1440 1007 1871 +1416 1464 1439 1441 1008 1872 +1417 1465 1440 1442 1009 1873 +1418 1466 1441 1443 1010 1874 +1419 1467 1442 1444 1011 1875 +1420 1468 1443 1445 1012 1876 +1421 1469 1444 1446 1013 1877 +1422 1470 1445 1447 1014 1878 +1423 1471 1446 1448 1015 1879 +1424 1472 1447 1449 1016 1880 +1425 1473 1448 1450 1017 1881 +1426 1474 1449 1451 1018 1882 +1427 1475 1450 1452 1019 1883 +1428 1476 1451 1453 1020 1884 +1429 1477 1452 1454 1021 1885 +1430 1478 1453 1455 1022 1886 +1431 1479 1454 1455 1023 1887 +1432 1480 1456 1457 1024 1888 +1433 1481 1456 1458 1025 1889 +1434 1482 1457 1459 1026 1890 +1435 1483 1458 1460 1027 1891 +1436 1484 1459 1461 1028 1892 +1437 1485 1460 1462 1029 1893 +1438 1486 1461 1463 1030 1894 +1439 1487 1462 1464 1031 1895 +1440 1488 1463 1465 1032 1896 +1441 1489 1464 1466 1033 1897 +1442 1490 1465 1467 1034 1898 +1443 1491 1466 1468 1035 1899 +1444 1492 1467 1469 1036 1900 +1445 1493 1468 1470 1037 1901 +1446 1494 1469 1471 1038 1902 +1447 1495 1470 1472 1039 1903 +1448 1496 1471 1473 1040 1904 +1449 1497 1472 1474 1041 1905 +1450 1498 1473 1475 1042 1906 +1451 1499 1474 1476 1043 1907 +1452 1500 1475 1477 1044 1908 +1453 1501 1476 1478 1045 1909 +1454 1502 1477 1479 1046 1910 +1455 1503 1478 1479 1047 1911 +1456 1504 1480 1481 1048 1912 +1457 1505 1480 1482 1049 1913 +1458 1506 1481 1483 1050 1914 +1459 1507 1482 1484 1051 1915 +1460 1508 1483 1485 1052 1916 +1461 1509 1484 1486 1053 1917 +1462 1510 1485 1487 1054 1918 +1463 1511 1486 1488 1055 1919 +1464 1512 1487 1489 1056 1920 +1465 1513 1488 1490 1057 1921 +1466 1514 1489 1491 1058 1922 +1467 1515 1490 1492 1059 1923 +1468 1516 1491 1493 1060 1924 +1469 1517 1492 1494 1061 1925 +1470 1518 1493 1495 1062 1926 +1471 1519 1494 1496 1063 1927 +1472 1520 1495 1497 1064 1928 +1473 1521 1496 1498 1065 1929 +1474 1522 1497 1499 1066 1930 +1475 1523 1498 1500 1067 1931 +1476 1524 1499 1501 1068 1932 +1477 1525 1500 1502 1069 1933 +1478 1526 1501 1503 1070 1934 +1479 1527 1502 1503 1071 1935 +1480 1528 1504 1505 1072 1936 +1481 1529 1504 1506 1073 1937 +1482 1530 1505 1507 1074 1938 +1483 1531 1506 1508 1075 1939 +1484 1532 1507 1509 1076 1940 +1485 1533 1508 1510 1077 1941 +1486 1534 1509 1511 1078 1942 +1487 1535 1510 1512 1079 1943 +1488 1536 1511 1513 1080 1944 +1489 1537 1512 1514 1081 1945 +1490 1538 1513 1515 1082 1946 +1491 1539 1514 1516 1083 1947 +1492 1540 1515 1517 1084 1948 +1493 1541 1516 1518 1085 1949 +1494 1542 1517 1519 1086 1950 +1495 1543 1518 1520 1087 1951 +1496 1544 1519 1521 1088 1952 +1497 1545 1520 1522 1089 1953 +1498 1546 1521 1523 1090 1954 +1499 1547 1522 1524 1091 1955 +1500 1548 1523 1525 1092 1956 +1501 1549 1524 1526 1093 1957 +1502 1550 1525 1527 1094 1958 +1503 1551 1526 1527 1095 1959 +1504 1552 1528 1529 1096 1960 +1505 1553 1528 1530 1097 1961 +1506 1554 1529 1531 1098 1962 +1507 1555 1530 1532 1099 1963 +1508 1556 1531 1533 1100 1964 +1509 1557 1532 1534 1101 1965 +1510 1558 1533 1535 1102 1966 +1511 1559 1534 1536 1103 1967 +1512 1560 1535 1537 1104 1968 +1513 1561 1536 1538 1105 1969 +1514 1562 1537 1539 1106 1970 +1515 1563 1538 1540 1107 1971 +1516 1564 1539 1541 1108 1972 +1517 1565 1540 1542 1109 1973 +1518 1566 1541 1543 1110 1974 +1519 1567 1542 1544 1111 1975 +1520 1568 1543 1545 1112 1976 +1521 1569 1544 1546 1113 1977 +1522 1570 1545 1547 1114 1978 +1523 1571 1546 1548 1115 1979 +1524 1572 1547 1549 1116 1980 +1525 1573 1548 1550 1117 1981 +1526 1574 1549 1551 1118 1982 +1527 1575 1550 1551 1119 1983 +1528 1576 1552 1553 1120 1984 +1529 1577 1552 1554 1121 1985 +1530 1578 1553 1555 1122 1986 +1531 1579 1554 1556 1123 1987 +1532 1580 1555 1557 1124 1988 +1533 1581 1556 1558 1125 1989 +1534 1582 1557 1559 1126 1990 +1535 1583 1558 1560 1127 1991 +1536 1584 1559 1561 1128 1992 +1537 1585 1560 1562 1129 1993 +1538 1586 1561 1563 1130 1994 +1539 1587 1562 1564 1131 1995 +1540 1588 1563 1565 1132 1996 +1541 1589 1564 1566 1133 1997 +1542 1590 1565 1567 1134 1998 +1543 1591 1566 1568 1135 1999 +1544 1592 1567 1569 1136 2000 +1545 1593 1568 1570 1137 2001 +1546 1594 1569 1571 1138 2002 +1547 1595 1570 1572 1139 2003 +1548 1596 1571 1573 1140 2004 +1549 1597 1572 1574 1141 2005 +1550 1598 1573 1575 1142 2006 +1551 1599 1574 1575 1143 2007 +1552 1576 1576 1577 1144 2008 +1553 1577 1576 1578 1145 2009 +1554 1578 1577 1579 1146 2010 +1555 1579 1578 1580 1147 2011 +1556 1580 1579 1581 1148 2012 +1557 1581 1580 1582 1149 2013 +1558 1582 1581 1583 1150 2014 +1559 1583 1582 1584 1151 2015 +1560 1584 1583 1585 1152 2016 +1561 1585 1584 1586 1153 2017 +1562 1586 1585 1587 1154 2018 +1563 1587 1586 1588 1155 2019 +1564 1588 1587 1589 1156 2020 +1565 1589 1588 1590 1157 2021 +1566 1590 1589 1591 1158 2022 +1567 1591 1590 1592 1159 2023 +1568 1592 1591 1593 1160 2024 +1569 1593 1592 1594 1161 2025 +1570 1594 1593 1595 1162 2026 +1571 1595 1594 1596 1163 2027 +1572 1596 1595 1597 1164 2028 +1573 1597 1596 1598 1165 2029 +1574 1598 1597 1599 1166 2030 +1575 1599 1598 1599 1167 2031 +1600 1601 1600 1603 1168 2032 +1600 1604 1601 1602 1169 2033 +1603 1605 1601 1607 1170 2034 +1600 1608 1602 1603 1171 2035 +1601 1609 1604 1605 1172 2036 +1602 1610 1604 1606 1173 2037 +1607 1611 1605 1613 1174 2038 +1602 1614 1606 1608 1175 2039 +1603 1615 1607 1608 1176 2040 +1604 1616 1609 1610 1177 2041 +1605 1617 1609 1611 1178 2042 +1606 1618 1610 1612 1179 2043 +1613 1619 1611 1621 1180 2044 +1606 1622 1612 1614 1181 2045 +1607 1623 1613 1615 1182 2046 +1608 1624 1614 1615 1183 2047 +1609 1625 1616 1617 1184 2048 +1610 1626 1616 1618 1185 2049 +1611 1627 1617 1619 1186 2050 +1612 1628 1618 1620 1187 2051 +1621 1629 1619 1631 1188 2052 +1612 1632 1620 1622 1189 2053 +1613 1633 1621 1623 1190 2054 +1614 1634 1622 1624 1191 2055 +1615 1635 1623 1624 1192 2056 +1616 1636 1625 1626 1193 2057 +1617 1637 1625 1627 1194 2058 +1618 1638 1626 1628 1195 2059 +1619 1639 1627 1629 1196 2060 +1620 1640 1628 1630 1197 2061 +1631 1641 1629 1643 1198 2062 +1620 1644 1630 1632 1199 2063 +1621 1645 1631 1633 1200 2064 +1622 1646 1632 1634 1201 2065 +1623 1647 1633 1635 1202 2066 +1624 1648 1634 1635 1203 2067 +1625 1649 1636 1637 1204 2068 +1626 1650 1636 1638 1205 2069 +1627 1651 1637 1639 1206 2070 +1628 1652 1638 1640 1207 2071 +1629 1653 1639 1641 1208 2072 +1630 1654 1640 1642 1209 2073 +1643 1655 1641 1657 1210 2074 +1630 1658 1642 1644 1211 2075 +1631 1659 1643 1645 1212 2076 +1632 1660 1644 1646 1213 2077 +1633 1661 1645 1647 1214 2078 +1634 1662 1646 1648 1215 2079 +1635 1663 1647 1648 1216 2080 +1636 1664 1649 1650 1217 2081 +1637 1665 1649 1651 1218 2082 +1638 1666 1650 1652 1219 2083 +1639 1667 1651 1653 1220 2084 +1640 1668 1652 1654 1221 2085 +1641 1669 1653 1655 1222 2086 +1642 1670 1654 1656 1223 2087 +1657 1671 1655 1673 1224 2088 +1642 1674 1656 1658 1225 2089 +1643 1675 1657 1659 1226 2090 +1644 1676 1658 1660 1227 2091 +1645 1677 1659 1661 1228 2092 +1646 1678 1660 1662 1229 2093 +1647 1679 1661 1663 1230 2094 +1648 1680 1662 1663 1231 2095 +1649 1681 1664 1665 1232 2096 +1650 1682 1664 1666 1233 2097 +1651 1683 1665 1667 1234 2098 +1652 1684 1666 1668 1235 2099 +1653 1685 1667 1669 1236 2100 +1654 1686 1668 1670 1237 2101 +1655 1687 1669 1671 1238 2102 +1656 1688 1670 1672 1239 2103 +1673 1689 1671 1691 1240 2104 +1656 1692 1672 1674 1241 2105 +1657 1693 1673 1675 1242 2106 +1658 1694 1674 1676 1243 2107 +1659 1695 1675 1677 1244 2108 +1660 1696 1676 1678 1245 2109 +1661 1697 1677 1679 1246 2110 +1662 1698 1678 1680 1247 2111 +1663 1699 1679 1680 1248 2112 +1664 1700 1681 1682 1249 2113 +1665 1701 1681 1683 1250 2114 +1666 1702 1682 1684 1251 2115 +1667 1703 1683 1685 1252 2116 +1668 1704 1684 1686 1253 2117 +1669 1705 1685 1687 1254 2118 +1670 1706 1686 1688 1255 2119 +1671 1707 1687 1689 1256 2120 +1672 1708 1688 1690 1257 2121 +1691 1709 1689 1711 1258 2122 +1672 1712 1690 1692 1259 2123 +1673 1713 1691 1693 1260 2124 +1674 1714 1692 1694 1261 2125 +1675 1715 1693 1695 1262 2126 +1676 1716 1694 1696 1263 2127 +1677 1717 1695 1697 1264 2128 +1678 1718 1696 1698 1265 2129 +1679 1719 1697 1699 1266 2130 +1680 1720 1698 1699 1267 2131 +1681 1721 1700 1701 1268 2132 +1682 1722 1700 1702 1269 2133 +1683 1723 1701 1703 1270 2134 +1684 1724 1702 1704 1271 2135 +1685 1725 1703 1705 1272 2136 +1686 1726 1704 1706 1273 2137 +1687 1727 1705 1707 1274 2138 +1688 1728 1706 1708 1275 2139 +1689 1729 1707 1709 1276 2140 +1690 1730 1708 1710 1277 2141 +1711 1731 1709 1733 1278 2142 +1690 1734 1710 1712 1279 2143 +1691 1735 1711 1713 1280 2144 +1692 1736 1712 1714 1281 2145 +1693 1737 1713 1715 1282 2146 +1694 1738 1714 1716 1283 2147 +1695 1739 1715 1717 1284 2148 +1696 1740 1716 1718 1285 2149 +1697 1741 1717 1719 1286 2150 +1698 1742 1718 1720 1287 2151 +1699 1743 1719 1720 1288 2152 +1700 1744 1721 1722 1289 2153 +1701 1745 1721 1723 1290 2154 +1702 1746 1722 1724 1291 2155 +1703 1747 1723 1725 1292 2156 +1704 1748 1724 1726 1293 2157 +1705 1749 1725 1727 1294 2158 +1706 1750 1726 1728 1295 2159 +1707 1751 1727 1729 1296 2160 +1708 1752 1728 1730 1297 2161 +1709 1753 1729 1731 1298 2162 +1710 1754 1730 1732 1299 2163 +1733 1755 1731 1756 1300 2164 +1710 1757 1732 1734 1301 2165 +1711 1758 1733 1735 1302 2166 +1712 1759 1734 1736 1303 2167 +1713 1760 1735 1737 1304 2168 +1714 1761 1736 1738 1305 2169 +1715 1762 1737 1739 1306 2170 +1716 1763 1738 1740 1307 2171 +1717 1764 1739 1741 1308 2172 +1718 1765 1740 1742 1309 2173 +1719 1766 1741 1743 1310 2174 +1720 1767 1742 1743 1311 2175 +1721 1768 1744 1745 1312 2176 +1722 1769 1744 1746 1313 2177 +1723 1770 1745 1747 1314 2178 +1724 1771 1746 1748 1315 2179 +1725 1772 1747 1749 1316 2180 +1726 1773 1748 1750 1317 2181 +1727 1774 1749 1751 1318 2182 +1728 1775 1750 1752 1319 2183 +1729 1776 1751 1753 1320 2184 +1730 1777 1752 1754 1321 2185 +1731 1778 1753 1755 1322 2186 +1732 1779 1754 1756 1323 2187 +1732 1780 1755 1757 1324 2188 +1733 1781 1756 1758 1325 2189 +1734 1782 1757 1759 1326 2190 +1735 1783 1758 1760 1327 2191 +1736 1784 1759 1761 1328 2192 +1737 1785 1760 1762 1329 2193 +1738 1786 1761 1763 1330 2194 +1739 1787 1762 1764 1331 2195 +1740 1788 1763 1765 1332 2196 +1741 1789 1764 1766 1333 2197 +1742 1790 1765 1767 1334 2198 +1743 1791 1766 1767 1335 2199 +1744 1792 1768 1769 1336 2200 +1745 1793 1768 1770 1337 2201 +1746 1794 1769 1771 1338 2202 +1747 1795 1770 1772 1339 2203 +1748 1796 1771 1773 1340 2204 +1749 1797 1772 1774 1341 2205 +1750 1798 1773 1775 1342 2206 +1751 1799 1774 1776 1343 2207 +1752 1800 1775 1777 1344 2208 +1753 1801 1776 1778 1345 2209 +1754 1802 1777 1779 1346 2210 +1755 1803 1778 1780 1347 2211 +1756 1804 1779 1781 1348 2212 +1757 1805 1780 1782 1349 2213 +1758 1806 1781 1783 1350 2214 +1759 1807 1782 1784 1351 2215 +1760 1808 1783 1785 1352 2216 +1761 1809 1784 1786 1353 2217 +1762 1810 1785 1787 1354 2218 +1763 1811 1786 1788 1355 2219 +1764 1812 1787 1789 1356 2220 +1765 1813 1788 1790 1357 2221 +1766 1814 1789 1791 1358 2222 +1767 1815 1790 1791 1359 2223 +1768 1816 1792 1793 1360 2224 +1769 1817 1792 1794 1361 2225 +1770 1818 1793 1795 1362 2226 +1771 1819 1794 1796 1363 2227 +1772 1820 1795 1797 1364 2228 +1773 1821 1796 1798 1365 2229 +1774 1822 1797 1799 1366 2230 +1775 1823 1798 1800 1367 2231 +1776 1824 1799 1801 1368 2232 +1777 1825 1800 1802 1369 2233 +1778 1826 1801 1803 1370 2234 +1779 1827 1802 1804 1371 2235 +1780 1828 1803 1805 1372 2236 +1781 1829 1804 1806 1373 2237 +1782 1830 1805 1807 1374 2238 +1783 1831 1806 1808 1375 2239 +1784 1832 1807 1809 1376 2240 +1785 1833 1808 1810 1377 2241 +1786 1834 1809 1811 1378 2242 +1787 1835 1810 1812 1379 2243 +1788 1836 1811 1813 1380 2244 +1789 1837 1812 1814 1381 2245 +1790 1838 1813 1815 1382 2246 +1791 1839 1814 1815 1383 2247 +1792 1840 1816 1817 1384 2248 +1793 1841 1816 1818 1385 2249 +1794 1842 1817 1819 1386 2250 +1795 1843 1818 1820 1387 2251 +1796 1844 1819 1821 1388 2252 +1797 1845 1820 1822 1389 2253 +1798 1846 1821 1823 1390 2254 +1799 1847 1822 1824 1391 2255 +1800 1848 1823 1825 1392 2256 +1801 1849 1824 1826 1393 2257 +1802 1850 1825 1827 1394 2258 +1803 1851 1826 1828 1395 2259 +1804 1852 1827 1829 1396 2260 +1805 1853 1828 1830 1397 2261 +1806 1854 1829 1831 1398 2262 +1807 1855 1830 1832 1399 2263 +1808 1856 1831 1833 1400 2264 +1809 1857 1832 1834 1401 2265 +1810 1858 1833 1835 1402 2266 +1811 1859 1834 1836 1403 2267 +1812 1860 1835 1837 1404 2268 +1813 1861 1836 1838 1405 2269 +1814 1862 1837 1839 1406 2270 +1815 1863 1838 1839 1407 2271 +1816 1864 1840 1841 1408 2272 +1817 1865 1840 1842 1409 2273 +1818 1866 1841 1843 1410 2274 +1819 1867 1842 1844 1411 2275 +1820 1868 1843 1845 1412 2276 +1821 1869 1844 1846 1413 2277 +1822 1870 1845 1847 1414 2278 +1823 1871 1846 1848 1415 2279 +1824 1872 1847 1849 1416 2280 +1825 1873 1848 1850 1417 2281 +1826 1874 1849 1851 1418 2282 +1827 1875 1850 1852 1419 2283 +1828 1876 1851 1853 1420 2284 +1829 1877 1852 1854 1421 2285 +1830 1878 1853 1855 1422 2286 +1831 1879 1854 1856 1423 2287 +1832 1880 1855 1857 1424 2288 +1833 1881 1856 1858 1425 2289 +1834 1882 1857 1859 1426 2290 +1835 1883 1858 1860 1427 2291 +1836 1884 1859 1861 1428 2292 +1837 1885 1860 1862 1429 2293 +1838 1886 1861 1863 1430 2294 +1839 1887 1862 1863 1431 2295 +1840 1888 1864 1865 1432 2296 +1841 1889 1864 1866 1433 2297 +1842 1890 1865 1867 1434 2298 +1843 1891 1866 1868 1435 2299 +1844 1892 1867 1869 1436 2300 +1845 1893 1868 1870 1437 2301 +1846 1894 1869 1871 1438 2302 +1847 1895 1870 1872 1439 2303 +1848 1896 1871 1873 1440 2304 +1849 1897 1872 1874 1441 2305 +1850 1898 1873 1875 1442 2306 +1851 1899 1874 1876 1443 2307 +1852 1900 1875 1877 1444 2308 +1853 1901 1876 1878 1445 2309 +1854 1902 1877 1879 1446 2310 +1855 1903 1878 1880 1447 2311 +1856 1904 1879 1881 1448 2312 +1857 1905 1880 1882 1449 2313 +1858 1906 1881 1883 1450 2314 +1859 1907 1882 1884 1451 2315 +1860 1908 1883 1885 1452 2316 +1861 1909 1884 1886 1453 2317 +1862 1910 1885 1887 1454 2318 +1863 1911 1886 1887 1455 2319 +1864 1912 1888 1889 1456 2320 +1865 1913 1888 1890 1457 2321 +1866 1914 1889 1891 1458 2322 +1867 1915 1890 1892 1459 2323 +1868 1916 1891 1893 1460 2324 +1869 1917 1892 1894 1461 2325 +1870 1918 1893 1895 1462 2326 +1871 1919 1894 1896 1463 2327 +1872 1920 1895 1897 1464 2328 +1873 1921 1896 1898 1465 2329 +1874 1922 1897 1899 1466 2330 +1875 1923 1898 1900 1467 2331 +1876 1924 1899 1901 1468 2332 +1877 1925 1900 1902 1469 2333 +1878 1926 1901 1903 1470 2334 +1879 1927 1902 1904 1471 2335 +1880 1928 1903 1905 1472 2336 +1881 1929 1904 1906 1473 2337 +1882 1930 1905 1907 1474 2338 +1883 1931 1906 1908 1475 2339 +1884 1932 1907 1909 1476 2340 +1885 1933 1908 1910 1477 2341 +1886 1934 1909 1911 1478 2342 +1887 1935 1910 1911 1479 2343 +1888 1936 1912 1913 1480 2344 +1889 1937 1912 1914 1481 2345 +1890 1938 1913 1915 1482 2346 +1891 1939 1914 1916 1483 2347 +1892 1940 1915 1917 1484 2348 +1893 1941 1916 1918 1485 2349 +1894 1942 1917 1919 1486 2350 +1895 1943 1918 1920 1487 2351 +1896 1944 1919 1921 1488 2352 +1897 1945 1920 1922 1489 2353 +1898 1946 1921 1923 1490 2354 +1899 1947 1922 1924 1491 2355 +1900 1948 1923 1925 1492 2356 +1901 1949 1924 1926 1493 2357 +1902 1950 1925 1927 1494 2358 +1903 1951 1926 1928 1495 2359 +1904 1952 1927 1929 1496 2360 +1905 1953 1928 1930 1497 2361 +1906 1954 1929 1931 1498 2362 +1907 1955 1930 1932 1499 2363 +1908 1956 1931 1933 1500 2364 +1909 1957 1932 1934 1501 2365 +1910 1958 1933 1935 1502 2366 +1911 1959 1934 1935 1503 2367 +1912 1960 1936 1937 1504 2368 +1913 1961 1936 1938 1505 2369 +1914 1962 1937 1939 1506 2370 +1915 1963 1938 1940 1507 2371 +1916 1964 1939 1941 1508 2372 +1917 1965 1940 1942 1509 2373 +1918 1966 1941 1943 1510 2374 +1919 1967 1942 1944 1511 2375 +1920 1968 1943 1945 1512 2376 +1921 1969 1944 1946 1513 2377 +1922 1970 1945 1947 1514 2378 +1923 1971 1946 1948 1515 2379 +1924 1972 1947 1949 1516 2380 +1925 1973 1948 1950 1517 2381 +1926 1974 1949 1951 1518 2382 +1927 1975 1950 1952 1519 2383 +1928 1976 1951 1953 1520 2384 +1929 1977 1952 1954 1521 2385 +1930 1978 1953 1955 1522 2386 +1931 1979 1954 1956 1523 2387 +1932 1980 1955 1957 1524 2388 +1933 1981 1956 1958 1525 2389 +1934 1982 1957 1959 1526 2390 +1935 1983 1958 1959 1527 2391 +1936 1984 1960 1961 1528 2392 +1937 1985 1960 1962 1529 2393 +1938 1986 1961 1963 1530 2394 +1939 1987 1962 1964 1531 2395 +1940 1988 1963 1965 1532 2396 +1941 1989 1964 1966 1533 2397 +1942 1990 1965 1967 1534 2398 +1943 1991 1966 1968 1535 2399 +1944 1992 1967 1969 1536 2400 +1945 1993 1968 1970 1537 2401 +1946 1994 1969 1971 1538 2402 +1947 1995 1970 1972 1539 2403 +1948 1996 1971 1973 1540 2404 +1949 1997 1972 1974 1541 2405 +1950 1998 1973 1975 1542 2406 +1951 1999 1974 1976 1543 2407 +1952 2000 1975 1977 1544 2408 +1953 2001 1976 1978 1545 2409 +1954 2002 1977 1979 1546 2410 +1955 2003 1978 1980 1547 2411 +1956 2004 1979 1981 1548 2412 +1957 2005 1980 1982 1549 2413 +1958 2006 1981 1983 1550 2414 +1959 2007 1982 1983 1551 2415 +1960 2008 1984 1985 1552 2416 +1961 2009 1984 1986 1553 2417 +1962 2010 1985 1987 1554 2418 +1963 2011 1986 1988 1555 2419 +1964 2012 1987 1989 1556 2420 +1965 2013 1988 1990 1557 2421 +1966 2014 1989 1991 1558 2422 +1967 2015 1990 1992 1559 2423 +1968 2016 1991 1993 1560 2424 +1969 2017 1992 1994 1561 2425 +1970 2018 1993 1995 1562 2426 +1971 2019 1994 1996 1563 2427 +1972 2020 1995 1997 1564 2428 +1973 2021 1996 1998 1565 2429 +1974 2022 1997 1999 1566 2430 +1975 2023 1998 2000 1567 2431 +1976 2024 1999 2001 1568 2432 +1977 2025 2000 2002 1569 2433 +1978 2026 2001 2003 1570 2434 +1979 2027 2002 2004 1571 2435 +1980 2028 2003 2005 1572 2436 +1981 2029 2004 2006 1573 2437 +1982 2030 2005 2007 1574 2438 +1983 2031 2006 2007 1575 2439 +1984 2008 2008 2009 1576 2440 +1985 2009 2008 2010 1577 2441 +1986 2010 2009 2011 1578 2442 +1987 2011 2010 2012 1579 2443 +1988 2012 2011 2013 1580 2444 +1989 2013 2012 2014 1581 2445 +1990 2014 2013 2015 1582 2446 +1991 2015 2014 2016 1583 2447 +1992 2016 2015 2017 1584 2448 +1993 2017 2016 2018 1585 2449 +1994 2018 2017 2019 1586 2450 +1995 2019 2018 2020 1587 2451 +1996 2020 2019 2021 1588 2452 +1997 2021 2020 2022 1589 2453 +1998 2022 2021 2023 1590 2454 +1999 2023 2022 2024 1591 2455 +2000 2024 2023 2025 1592 2456 +2001 2025 2024 2026 1593 2457 +2002 2026 2025 2027 1594 2458 +2003 2027 2026 2028 1595 2459 +2004 2028 2027 2029 1596 2460 +2005 2029 2028 2030 1597 2461 +2006 2030 2029 2031 1598 2462 +2007 2031 2030 2031 1599 2463 +2032 2033 2032 2035 1600 2464 +2032 2036 2033 2034 1601 2465 +2035 2037 2033 2039 1602 2466 +2032 2040 2034 2035 1603 2467 +2033 2041 2036 2037 1604 2468 +2034 2042 2036 2038 1605 2469 +2039 2043 2037 2045 1606 2470 +2034 2046 2038 2040 1607 2471 +2035 2047 2039 2040 1608 2472 +2036 2048 2041 2042 1609 2473 +2037 2049 2041 2043 1610 2474 +2038 2050 2042 2044 1611 2475 +2045 2051 2043 2053 1612 2476 +2038 2054 2044 2046 1613 2477 +2039 2055 2045 2047 1614 2478 +2040 2056 2046 2047 1615 2479 +2041 2057 2048 2049 1616 2480 +2042 2058 2048 2050 1617 2481 +2043 2059 2049 2051 1618 2482 +2044 2060 2050 2052 1619 2483 +2053 2061 2051 2063 1620 2484 +2044 2064 2052 2054 1621 2485 +2045 2065 2053 2055 1622 2486 +2046 2066 2054 2056 1623 2487 +2047 2067 2055 2056 1624 2488 +2048 2068 2057 2058 1625 2489 +2049 2069 2057 2059 1626 2490 +2050 2070 2058 2060 1627 2491 +2051 2071 2059 2061 1628 2492 +2052 2072 2060 2062 1629 2493 +2063 2073 2061 2075 1630 2494 +2052 2076 2062 2064 1631 2495 +2053 2077 2063 2065 1632 2496 +2054 2078 2064 2066 1633 2497 +2055 2079 2065 2067 1634 2498 +2056 2080 2066 2067 1635 2499 +2057 2081 2068 2069 1636 2500 +2058 2082 2068 2070 1637 2501 +2059 2083 2069 2071 1638 2502 +2060 2084 2070 2072 1639 2503 +2061 2085 2071 2073 1640 2504 +2062 2086 2072 2074 1641 2505 +2075 2087 2073 2089 1642 2506 +2062 2090 2074 2076 1643 2507 +2063 2091 2075 2077 1644 2508 +2064 2092 2076 2078 1645 2509 +2065 2093 2077 2079 1646 2510 +2066 2094 2078 2080 1647 2511 +2067 2095 2079 2080 1648 2512 +2068 2096 2081 2082 1649 2513 +2069 2097 2081 2083 1650 2514 +2070 2098 2082 2084 1651 2515 +2071 2099 2083 2085 1652 2516 +2072 2100 2084 2086 1653 2517 +2073 2101 2085 2087 1654 2518 +2074 2102 2086 2088 1655 2519 +2089 2103 2087 2105 1656 2520 +2074 2106 2088 2090 1657 2521 +2075 2107 2089 2091 1658 2522 +2076 2108 2090 2092 1659 2523 +2077 2109 2091 2093 1660 2524 +2078 2110 2092 2094 1661 2525 +2079 2111 2093 2095 1662 2526 +2080 2112 2094 2095 1663 2527 +2081 2113 2096 2097 1664 2528 +2082 2114 2096 2098 1665 2529 +2083 2115 2097 2099 1666 2530 +2084 2116 2098 2100 1667 2531 +2085 2117 2099 2101 1668 2532 +2086 2118 2100 2102 1669 2533 +2087 2119 2101 2103 1670 2534 +2088 2120 2102 2104 1671 2535 +2105 2121 2103 2123 1672 2536 +2088 2124 2104 2106 1673 2537 +2089 2125 2105 2107 1674 2538 +2090 2126 2106 2108 1675 2539 +2091 2127 2107 2109 1676 2540 +2092 2128 2108 2110 1677 2541 +2093 2129 2109 2111 1678 2542 +2094 2130 2110 2112 1679 2543 +2095 2131 2111 2112 1680 2544 +2096 2132 2113 2114 1681 2545 +2097 2133 2113 2115 1682 2546 +2098 2134 2114 2116 1683 2547 +2099 2135 2115 2117 1684 2548 +2100 2136 2116 2118 1685 2549 +2101 2137 2117 2119 1686 2550 +2102 2138 2118 2120 1687 2551 +2103 2139 2119 2121 1688 2552 +2104 2140 2120 2122 1689 2553 +2123 2141 2121 2143 1690 2554 +2104 2144 2122 2124 1691 2555 +2105 2145 2123 2125 1692 2556 +2106 2146 2124 2126 1693 2557 +2107 2147 2125 2127 1694 2558 +2108 2148 2126 2128 1695 2559 +2109 2149 2127 2129 1696 2560 +2110 2150 2128 2130 1697 2561 +2111 2151 2129 2131 1698 2562 +2112 2152 2130 2131 1699 2563 +2113 2153 2132 2133 1700 2564 +2114 2154 2132 2134 1701 2565 +2115 2155 2133 2135 1702 2566 +2116 2156 2134 2136 1703 2567 +2117 2157 2135 2137 1704 2568 +2118 2158 2136 2138 1705 2569 +2119 2159 2137 2139 1706 2570 +2120 2160 2138 2140 1707 2571 +2121 2161 2139 2141 1708 2572 +2122 2162 2140 2142 1709 2573 +2143 2163 2141 2165 1710 2574 +2122 2166 2142 2144 1711 2575 +2123 2167 2143 2145 1712 2576 +2124 2168 2144 2146 1713 2577 +2125 2169 2145 2147 1714 2578 +2126 2170 2146 2148 1715 2579 +2127 2171 2147 2149 1716 2580 +2128 2172 2148 2150 1717 2581 +2129 2173 2149 2151 1718 2582 +2130 2174 2150 2152 1719 2583 +2131 2175 2151 2152 1720 2584 +2132 2176 2153 2154 1721 2585 +2133 2177 2153 2155 1722 2586 +2134 2178 2154 2156 1723 2587 +2135 2179 2155 2157 1724 2588 +2136 2180 2156 2158 1725 2589 +2137 2181 2157 2159 1726 2590 +2138 2182 2158 2160 1727 2591 +2139 2183 2159 2161 1728 2592 +2140 2184 2160 2162 1729 2593 +2141 2185 2161 2163 1730 2594 +2142 2186 2162 2164 1731 2595 +2165 2187 2163 2188 1732 2596 +2142 2189 2164 2166 1733 2597 +2143 2190 2165 2167 1734 2598 +2144 2191 2166 2168 1735 2599 +2145 2192 2167 2169 1736 2600 +2146 2193 2168 2170 1737 2601 +2147 2194 2169 2171 1738 2602 +2148 2195 2170 2172 1739 2603 +2149 2196 2171 2173 1740 2604 +2150 2197 2172 2174 1741 2605 +2151 2198 2173 2175 1742 2606 +2152 2199 2174 2175 1743 2607 +2153 2200 2176 2177 1744 2608 +2154 2201 2176 2178 1745 2609 +2155 2202 2177 2179 1746 2610 +2156 2203 2178 2180 1747 2611 +2157 2204 2179 2181 1748 2612 +2158 2205 2180 2182 1749 2613 +2159 2206 2181 2183 1750 2614 +2160 2207 2182 2184 1751 2615 +2161 2208 2183 2185 1752 2616 +2162 2209 2184 2186 1753 2617 +2163 2210 2185 2187 1754 2618 +2164 2211 2186 2188 1755 2619 +2164 2212 2187 2189 1756 2620 +2165 2213 2188 2190 1757 2621 +2166 2214 2189 2191 1758 2622 +2167 2215 2190 2192 1759 2623 +2168 2216 2191 2193 1760 2624 +2169 2217 2192 2194 1761 2625 +2170 2218 2193 2195 1762 2626 +2171 2219 2194 2196 1763 2627 +2172 2220 2195 2197 1764 2628 +2173 2221 2196 2198 1765 2629 +2174 2222 2197 2199 1766 2630 +2175 2223 2198 2199 1767 2631 +2176 2224 2200 2201 1768 2632 +2177 2225 2200 2202 1769 2633 +2178 2226 2201 2203 1770 2634 +2179 2227 2202 2204 1771 2635 +2180 2228 2203 2205 1772 2636 +2181 2229 2204 2206 1773 2637 +2182 2230 2205 2207 1774 2638 +2183 2231 2206 2208 1775 2639 +2184 2232 2207 2209 1776 2640 +2185 2233 2208 2210 1777 2641 +2186 2234 2209 2211 1778 2642 +2187 2235 2210 2212 1779 2643 +2188 2236 2211 2213 1780 2644 +2189 2237 2212 2214 1781 2645 +2190 2238 2213 2215 1782 2646 +2191 2239 2214 2216 1783 2647 +2192 2240 2215 2217 1784 2648 +2193 2241 2216 2218 1785 2649 +2194 2242 2217 2219 1786 2650 +2195 2243 2218 2220 1787 2651 +2196 2244 2219 2221 1788 2652 +2197 2245 2220 2222 1789 2653 +2198 2246 2221 2223 1790 2654 +2199 2247 2222 2223 1791 2655 +2200 2248 2224 2225 1792 2656 +2201 2249 2224 2226 1793 2657 +2202 2250 2225 2227 1794 2658 +2203 2251 2226 2228 1795 2659 +2204 2252 2227 2229 1796 2660 +2205 2253 2228 2230 1797 2661 +2206 2254 2229 2231 1798 2662 +2207 2255 2230 2232 1799 2663 +2208 2256 2231 2233 1800 2664 +2209 2257 2232 2234 1801 2665 +2210 2258 2233 2235 1802 2666 +2211 2259 2234 2236 1803 2667 +2212 2260 2235 2237 1804 2668 +2213 2261 2236 2238 1805 2669 +2214 2262 2237 2239 1806 2670 +2215 2263 2238 2240 1807 2671 +2216 2264 2239 2241 1808 2672 +2217 2265 2240 2242 1809 2673 +2218 2266 2241 2243 1810 2674 +2219 2267 2242 2244 1811 2675 +2220 2268 2243 2245 1812 2676 +2221 2269 2244 2246 1813 2677 +2222 2270 2245 2247 1814 2678 +2223 2271 2246 2247 1815 2679 +2224 2272 2248 2249 1816 2680 +2225 2273 2248 2250 1817 2681 +2226 2274 2249 2251 1818 2682 +2227 2275 2250 2252 1819 2683 +2228 2276 2251 2253 1820 2684 +2229 2277 2252 2254 1821 2685 +2230 2278 2253 2255 1822 2686 +2231 2279 2254 2256 1823 2687 +2232 2280 2255 2257 1824 2688 +2233 2281 2256 2258 1825 2689 +2234 2282 2257 2259 1826 2690 +2235 2283 2258 2260 1827 2691 +2236 2284 2259 2261 1828 2692 +2237 2285 2260 2262 1829 2693 +2238 2286 2261 2263 1830 2694 +2239 2287 2262 2264 1831 2695 +2240 2288 2263 2265 1832 2696 +2241 2289 2264 2266 1833 2697 +2242 2290 2265 2267 1834 2698 +2243 2291 2266 2268 1835 2699 +2244 2292 2267 2269 1836 2700 +2245 2293 2268 2270 1837 2701 +2246 2294 2269 2271 1838 2702 +2247 2295 2270 2271 1839 2703 +2248 2296 2272 2273 1840 2704 +2249 2297 2272 2274 1841 2705 +2250 2298 2273 2275 1842 2706 +2251 2299 2274 2276 1843 2707 +2252 2300 2275 2277 1844 2708 +2253 2301 2276 2278 1845 2709 +2254 2302 2277 2279 1846 2710 +2255 2303 2278 2280 1847 2711 +2256 2304 2279 2281 1848 2712 +2257 2305 2280 2282 1849 2713 +2258 2306 2281 2283 1850 2714 +2259 2307 2282 2284 1851 2715 +2260 2308 2283 2285 1852 2716 +2261 2309 2284 2286 1853 2717 +2262 2310 2285 2287 1854 2718 +2263 2311 2286 2288 1855 2719 +2264 2312 2287 2289 1856 2720 +2265 2313 2288 2290 1857 2721 +2266 2314 2289 2291 1858 2722 +2267 2315 2290 2292 1859 2723 +2268 2316 2291 2293 1860 2724 +2269 2317 2292 2294 1861 2725 +2270 2318 2293 2295 1862 2726 +2271 2319 2294 2295 1863 2727 +2272 2320 2296 2297 1864 2728 +2273 2321 2296 2298 1865 2729 +2274 2322 2297 2299 1866 2730 +2275 2323 2298 2300 1867 2731 +2276 2324 2299 2301 1868 2732 +2277 2325 2300 2302 1869 2733 +2278 2326 2301 2303 1870 2734 +2279 2327 2302 2304 1871 2735 +2280 2328 2303 2305 1872 2736 +2281 2329 2304 2306 1873 2737 +2282 2330 2305 2307 1874 2738 +2283 2331 2306 2308 1875 2739 +2284 2332 2307 2309 1876 2740 +2285 2333 2308 2310 1877 2741 +2286 2334 2309 2311 1878 2742 +2287 2335 2310 2312 1879 2743 +2288 2336 2311 2313 1880 2744 +2289 2337 2312 2314 1881 2745 +2290 2338 2313 2315 1882 2746 +2291 2339 2314 2316 1883 2747 +2292 2340 2315 2317 1884 2748 +2293 2341 2316 2318 1885 2749 +2294 2342 2317 2319 1886 2750 +2295 2343 2318 2319 1887 2751 +2296 2344 2320 2321 1888 2752 +2297 2345 2320 2322 1889 2753 +2298 2346 2321 2323 1890 2754 +2299 2347 2322 2324 1891 2755 +2300 2348 2323 2325 1892 2756 +2301 2349 2324 2326 1893 2757 +2302 2350 2325 2327 1894 2758 +2303 2351 2326 2328 1895 2759 +2304 2352 2327 2329 1896 2760 +2305 2353 2328 2330 1897 2761 +2306 2354 2329 2331 1898 2762 +2307 2355 2330 2332 1899 2763 +2308 2356 2331 2333 1900 2764 +2309 2357 2332 2334 1901 2765 +2310 2358 2333 2335 1902 2766 +2311 2359 2334 2336 1903 2767 +2312 2360 2335 2337 1904 2768 +2313 2361 2336 2338 1905 2769 +2314 2362 2337 2339 1906 2770 +2315 2363 2338 2340 1907 2771 +2316 2364 2339 2341 1908 2772 +2317 2365 2340 2342 1909 2773 +2318 2366 2341 2343 1910 2774 +2319 2367 2342 2343 1911 2775 +2320 2368 2344 2345 1912 2776 +2321 2369 2344 2346 1913 2777 +2322 2370 2345 2347 1914 2778 +2323 2371 2346 2348 1915 2779 +2324 2372 2347 2349 1916 2780 +2325 2373 2348 2350 1917 2781 +2326 2374 2349 2351 1918 2782 +2327 2375 2350 2352 1919 2783 +2328 2376 2351 2353 1920 2784 +2329 2377 2352 2354 1921 2785 +2330 2378 2353 2355 1922 2786 +2331 2379 2354 2356 1923 2787 +2332 2380 2355 2357 1924 2788 +2333 2381 2356 2358 1925 2789 +2334 2382 2357 2359 1926 2790 +2335 2383 2358 2360 1927 2791 +2336 2384 2359 2361 1928 2792 +2337 2385 2360 2362 1929 2793 +2338 2386 2361 2363 1930 2794 +2339 2387 2362 2364 1931 2795 +2340 2388 2363 2365 1932 2796 +2341 2389 2364 2366 1933 2797 +2342 2390 2365 2367 1934 2798 +2343 2391 2366 2367 1935 2799 +2344 2392 2368 2369 1936 2800 +2345 2393 2368 2370 1937 2801 +2346 2394 2369 2371 1938 2802 +2347 2395 2370 2372 1939 2803 +2348 2396 2371 2373 1940 2804 +2349 2397 2372 2374 1941 2805 +2350 2398 2373 2375 1942 2806 +2351 2399 2374 2376 1943 2807 +2352 2400 2375 2377 1944 2808 +2353 2401 2376 2378 1945 2809 +2354 2402 2377 2379 1946 2810 +2355 2403 2378 2380 1947 2811 +2356 2404 2379 2381 1948 2812 +2357 2405 2380 2382 1949 2813 +2358 2406 2381 2383 1950 2814 +2359 2407 2382 2384 1951 2815 +2360 2408 2383 2385 1952 2816 +2361 2409 2384 2386 1953 2817 +2362 2410 2385 2387 1954 2818 +2363 2411 2386 2388 1955 2819 +2364 2412 2387 2389 1956 2820 +2365 2413 2388 2390 1957 2821 +2366 2414 2389 2391 1958 2822 +2367 2415 2390 2391 1959 2823 +2368 2416 2392 2393 1960 2824 +2369 2417 2392 2394 1961 2825 +2370 2418 2393 2395 1962 2826 +2371 2419 2394 2396 1963 2827 +2372 2420 2395 2397 1964 2828 +2373 2421 2396 2398 1965 2829 +2374 2422 2397 2399 1966 2830 +2375 2423 2398 2400 1967 2831 +2376 2424 2399 2401 1968 2832 +2377 2425 2400 2402 1969 2833 +2378 2426 2401 2403 1970 2834 +2379 2427 2402 2404 1971 2835 +2380 2428 2403 2405 1972 2836 +2381 2429 2404 2406 1973 2837 +2382 2430 2405 2407 1974 2838 +2383 2431 2406 2408 1975 2839 +2384 2432 2407 2409 1976 2840 +2385 2433 2408 2410 1977 2841 +2386 2434 2409 2411 1978 2842 +2387 2435 2410 2412 1979 2843 +2388 2436 2411 2413 1980 2844 +2389 2437 2412 2414 1981 2845 +2390 2438 2413 2415 1982 2846 +2391 2439 2414 2415 1983 2847 +2392 2440 2416 2417 1984 2848 +2393 2441 2416 2418 1985 2849 +2394 2442 2417 2419 1986 2850 +2395 2443 2418 2420 1987 2851 +2396 2444 2419 2421 1988 2852 +2397 2445 2420 2422 1989 2853 +2398 2446 2421 2423 1990 2854 +2399 2447 2422 2424 1991 2855 +2400 2448 2423 2425 1992 2856 +2401 2449 2424 2426 1993 2857 +2402 2450 2425 2427 1994 2858 +2403 2451 2426 2428 1995 2859 +2404 2452 2427 2429 1996 2860 +2405 2453 2428 2430 1997 2861 +2406 2454 2429 2431 1998 2862 +2407 2455 2430 2432 1999 2863 +2408 2456 2431 2433 2000 2864 +2409 2457 2432 2434 2001 2865 +2410 2458 2433 2435 2002 2866 +2411 2459 2434 2436 2003 2867 +2412 2460 2435 2437 2004 2868 +2413 2461 2436 2438 2005 2869 +2414 2462 2437 2439 2006 2870 +2415 2463 2438 2439 2007 2871 +2416 2440 2440 2441 2008 2872 +2417 2441 2440 2442 2009 2873 +2418 2442 2441 2443 2010 2874 +2419 2443 2442 2444 2011 2875 +2420 2444 2443 2445 2012 2876 +2421 2445 2444 2446 2013 2877 +2422 2446 2445 2447 2014 2878 +2423 2447 2446 2448 2015 2879 +2424 2448 2447 2449 2016 2880 +2425 2449 2448 2450 2017 2881 +2426 2450 2449 2451 2018 2882 +2427 2451 2450 2452 2019 2883 +2428 2452 2451 2453 2020 2884 +2429 2453 2452 2454 2021 2885 +2430 2454 2453 2455 2022 2886 +2431 2455 2454 2456 2023 2887 +2432 2456 2455 2457 2024 2888 +2433 2457 2456 2458 2025 2889 +2434 2458 2457 2459 2026 2890 +2435 2459 2458 2460 2027 2891 +2436 2460 2459 2461 2028 2892 +2437 2461 2460 2462 2029 2893 +2438 2462 2461 2463 2030 2894 +2439 2463 2462 2463 2031 2895 +2464 2899 2896 2898 2032 2897 +2899 2901 2465 2902 2033 2900 +2905 2911 2902 2904 2034 2903 +2898 2920 2905 2907 2035 2906 +2901 2923 2908 2910 2036 2909 +2911 2913 2910 2914 2037 2912 +2917 2929 2914 2916 2038 2915 +2904 2938 2917 2919 2039 2918 +2920 2922 2919 2472 2040 2921 +2923 2925 2473 2926 2041 2924 +2913 2947 2926 2928 2042 2927 +2929 2931 2928 2932 2043 2930 +2935 2953 2932 2934 2044 2933 +2916 2962 2935 2937 2045 2936 +2938 2940 2937 2941 2046 2939 +2922 2968 2941 2943 2047 2942 +2925 2971 2944 2946 2048 2945 +2947 2949 2946 2950 2049 2948 +2931 2977 2950 2952 2050 2951 +2953 2955 2952 2956 2051 2954 +2959 2983 2956 2958 2052 2957 +2934 2992 2959 2961 2053 2960 +2962 2964 2961 2965 2054 2963 +2940 2998 2965 2967 2055 2966 +2968 2970 2967 2488 2056 2969 +2971 2973 2489 2974 2057 2972 +2949 3007 2974 2976 2058 2975 +2977 2979 2976 2980 2059 2978 +2955 3013 2980 2982 2060 2981 +2983 2985 2982 2986 2061 2984 +2989 3019 2986 2988 2062 2987 +2958 3028 2989 2991 2063 2990 +2992 2994 2991 2995 2064 2993 +2964 3034 2995 2997 2065 2996 +2998 3000 2997 3001 2066 2999 +2970 3040 3001 3003 2067 3002 +2973 3043 3004 3006 2068 3005 +3007 3009 3006 3010 2069 3008 +2979 3049 3010 3012 2070 3011 +3013 3015 3012 3016 2071 3014 +2985 3055 3016 3018 2072 3017 +3019 3021 3018 3022 2073 3020 +3025 3061 3022 3024 2074 3023 +2988 3070 3025 3027 2075 3026 +3028 3030 3027 3031 2076 3029 +2994 3076 3031 3033 2077 3032 +3034 3036 3033 3037 2078 3035 +3000 3082 3037 3039 2079 3038 +3040 3042 3039 2512 2080 3041 +3043 3045 2513 3046 2081 3044 +3009 3091 3046 3048 2082 3047 +3049 3051 3048 3052 2083 3050 +3015 3097 3052 3054 2084 3053 +3055 3057 3054 3058 2085 3056 +3021 3103 3058 3060 2086 3059 +3061 3063 3060 3064 2087 3062 +3067 3109 3064 3066 2088 3065 +3024 3118 3067 3069 2089 3068 +3070 3072 3069 3073 2090 3071 +3030 3124 3073 3075 2091 3074 +3076 3078 3075 3079 2092 3077 +3036 3130 3079 3081 2093 3080 +3082 3084 3081 3085 2094 3083 +3042 3136 3085 3087 2095 3086 +3045 3139 3088 3090 2096 3089 +3091 3093 3090 3094 2097 3092 +3051 3145 3094 3096 2098 3095 +3097 3099 3096 3100 2099 3098 +3057 3151 3100 3102 2100 3101 +3103 3105 3102 3106 2101 3104 +3063 3157 3106 3108 2102 3107 +3109 3111 3108 3112 2103 3110 +3115 3163 3112 3114 2104 3113 +3066 3172 3115 3117 2105 3116 +3118 3120 3117 3121 2106 3119 +3072 3178 3121 3123 2107 3122 +3124 3126 3123 3127 2108 3125 +3078 3184 3127 3129 2109 3128 +3130 3132 3129 3133 2110 3131 +3084 3190 3133 3135 2111 3134 +3136 3138 3135 2544 2112 3137 +3139 3141 2545 3142 2113 3140 +3093 3199 3142 3144 2114 3143 +3145 3147 3144 3148 2115 3146 +3099 3205 3148 3150 2116 3149 +3151 3153 3150 3154 2117 3152 +3105 3211 3154 3156 2118 3155 +3157 3159 3156 3160 2119 3158 +3111 3217 3160 3162 2120 3161 +3163 3165 3162 3166 2121 3164 +3169 3223 3166 3168 2122 3167 +3114 3232 3169 3171 2123 3170 +3172 3174 3171 3175 2124 3173 +3120 3238 3175 3177 2125 3176 +3178 3180 3177 3181 2126 3179 +3126 3244 3181 3183 2127 3182 +3184 3186 3183 3187 2128 3185 +3132 3250 3187 3189 2129 3188 +3190 3192 3189 3193 2130 3191 +3138 3256 3193 3195 2131 3194 +3141 3259 3196 3198 2132 3197 +3199 3201 3198 3202 2133 3200 +3147 3265 3202 3204 2134 3203 +3205 3207 3204 3208 2135 3206 +3153 3271 3208 3210 2136 3209 +3211 3213 3210 3214 2137 3212 +3159 3277 3214 3216 2138 3215 +3217 3219 3216 3220 2139 3218 +3165 3283 3220 3222 2140 3221 +3223 3225 3222 3226 2141 3224 +3229 3289 3226 3228 2142 3227 +3168 3298 3229 3231 2143 3230 +3232 3234 3231 3235 2144 3233 +3174 3304 3235 3237 2145 3236 +3238 3240 3237 3241 2146 3239 +3180 3310 3241 3243 2147 3242 +3244 3246 3243 3247 2148 3245 +3186 3316 3247 3249 2149 3248 +3250 3252 3249 3253 2150 3251 +3192 3322 3253 3255 2151 3254 +3256 3258 3255 2584 2152 3257 +3259 3261 2585 3262 2153 3260 +3201 3331 3262 3264 2154 3263 +3265 3267 3264 3268 2155 3266 +3207 3337 3268 3270 2156 3269 +3271 3273 3270 3274 2157 3272 +3213 3343 3274 3276 2158 3275 +3277 3279 3276 3280 2159 3278 +3219 3349 3280 3282 2160 3281 +3283 3285 3282 3286 2161 3284 +3225 3355 3286 3288 2162 3287 +3289 3291 3288 3292 2163 3290 +3295 3361 3292 3294 2164 3293 +3228 3367 3295 3297 2165 3296 +3298 3300 3297 3301 2166 3299 +3234 3373 3301 3303 2167 3302 +3304 3306 3303 3307 2168 3305 +3240 3379 3307 3309 2169 3308 +3310 3312 3309 3313 2170 3311 +3246 3385 3313 3315 2171 3314 +3316 3318 3315 3319 2172 3317 +3252 3391 3319 3321 2173 3320 +3322 3324 3321 3325 2174 3323 +3258 3397 3325 3327 2175 3326 +3261 3400 3328 3330 2176 3329 +3331 3333 3330 3334 2177 3332 +3267 3406 3334 3336 2178 3335 +3337 3339 3336 3340 2179 3338 +3273 3412 3340 3342 2180 3341 +3343 3345 3342 3346 2181 3344 +3279 3418 3346 3348 2182 3347 +3349 3351 3348 3352 2183 3350 +3285 3424 3352 3354 2184 3353 +3355 3357 3354 3358 2185 3356 +3291 3430 3358 3360 2186 3359 +3361 3363 3360 3364 2187 3362 +3294 3436 3364 3366 2188 3365 +3367 3369 3366 3370 2189 3368 +3300 3442 3370 3372 2190 3371 +3373 3375 3372 3376 2191 3374 +3306 3448 3376 3378 2192 3377 +3379 3381 3378 3382 2193 3380 +3312 3454 3382 3384 2194 3383 +3385 3387 3384 3388 2195 3386 +3318 3460 3388 3390 2196 3389 +3391 3393 3390 3394 2197 3392 +3324 3466 3394 3396 2198 3395 +3397 3399 3396 2631 2199 3398 +3400 3402 2632 3403 2200 3401 +3333 3475 3403 3405 2201 3404 +3406 3408 3405 3409 2202 3407 +3339 3481 3409 3411 2203 3410 +3412 3414 3411 3415 2204 3413 +3345 3487 3415 3417 2205 3416 +3418 3420 3417 3421 2206 3419 +3351 3493 3421 3423 2207 3422 +3424 3426 3423 3427 2208 3425 +3357 3499 3427 3429 2209 3428 +3430 3432 3429 3433 2210 3431 +3363 3505 3433 3435 2211 3434 +3436 3438 3435 3439 2212 3437 +3369 3511 3439 3441 2213 3440 +3442 3444 3441 3445 2214 3443 +3375 3517 3445 3447 2215 3446 +3448 3450 3447 3451 2216 3449 +3381 3523 3451 3453 2217 3452 +3454 3456 3453 3457 2218 3455 +3387 3529 3457 3459 2219 3458 +3460 3462 3459 3463 2220 3461 +3393 3535 3463 3465 2221 3464 +3466 3468 3465 3469 2222 3467 +3399 3541 3469 3471 2223 3470 +3402 3544 3472 3474 2224 3473 +3475 3477 3474 3478 2225 3476 +3408 3550 3478 3480 2226 3479 +3481 3483 3480 3484 2227 3482 +3414 3556 3484 3486 2228 3485 +3487 3489 3486 3490 2229 3488 +3420 3562 3490 3492 2230 3491 +3493 3495 3492 3496 2231 3494 +3426 3568 3496 3498 2232 3497 +3499 3501 3498 3502 2233 3500 +3432 3574 3502 3504 2234 3503 +3505 3507 3504 3508 2235 3506 +3438 3580 3508 3510 2236 3509 +3511 3513 3510 3514 2237 3512 +3444 3586 3514 3516 2238 3515 +3517 3519 3516 3520 2239 3518 +3450 3592 3520 3522 2240 3521 +3523 3525 3522 3526 2241 3524 +3456 3598 3526 3528 2242 3527 +3529 3531 3528 3532 2243 3530 +3462 3604 3532 3534 2244 3533 +3535 3537 3534 3538 2245 3536 +3468 3610 3538 3540 2246 3539 +3541 3543 3540 2679 2247 3542 +3544 3546 2680 3547 2248 3545 +3477 3619 3547 3549 2249 3548 +3550 3552 3549 3553 2250 3551 +3483 3625 3553 3555 2251 3554 +3556 3558 3555 3559 2252 3557 +3489 3631 3559 3561 2253 3560 +3562 3564 3561 3565 2254 3563 +3495 3637 3565 3567 2255 3566 +3568 3570 3567 3571 2256 3569 +3501 3643 3571 3573 2257 3572 +3574 3576 3573 3577 2258 3575 +3507 3649 3577 3579 2259 3578 +3580 3582 3579 3583 2260 3581 +3513 3655 3583 3585 2261 3584 +3586 3588 3585 3589 2262 3587 +3519 3661 3589 3591 2263 3590 +3592 3594 3591 3595 2264 3593 +3525 3667 3595 3597 2265 3596 +3598 3600 3597 3601 2266 3599 +3531 3673 3601 3603 2267 3602 +3604 3606 3603 3607 2268 3605 +3537 3679 3607 3609 2269 3608 +3610 3612 3609 3613 2270 3611 +3543 3685 3613 3615 2271 3614 +3546 3688 3616 3618 2272 3617 +3619 3621 3618 3622 2273 3620 +3552 3694 3622 3624 2274 3623 +3625 3627 3624 3628 2275 3626 +3558 3700 3628 3630 2276 3629 +3631 3633 3630 3634 2277 3632 +3564 3706 3634 3636 2278 3635 +3637 3639 3636 3640 2279 3638 +3570 3712 3640 3642 2280 3641 +3643 3645 3642 3646 2281 3644 +3576 3718 3646 3648 2282 3647 +3649 3651 3648 3652 2283 3650 +3582 3724 3652 3654 2284 3653 +3655 3657 3654 3658 2285 3656 +3588 3730 3658 3660 2286 3659 +3661 3663 3660 3664 2287 3662 +3594 3736 3664 3666 2288 3665 +3667 3669 3666 3670 2289 3668 +3600 3742 3670 3672 2290 3671 +3673 3675 3672 3676 2291 3674 +3606 3748 3676 3678 2292 3677 +3679 3681 3678 3682 2293 3680 +3612 3754 3682 3684 2294 3683 +3685 3687 3684 2727 2295 3686 +3688 3690 2728 3691 2296 3689 +3621 3763 3691 3693 2297 3692 +3694 3696 3693 3697 2298 3695 +3627 3769 3697 3699 2299 3698 +3700 3702 3699 3703 2300 3701 +3633 3775 3703 3705 2301 3704 +3706 3708 3705 3709 2302 3707 +3639 3781 3709 3711 2303 3710 +3712 3714 3711 3715 2304 3713 +3645 3787 3715 3717 2305 3716 +3718 3720 3717 3721 2306 3719 +3651 3793 3721 3723 2307 3722 +3724 3726 3723 3727 2308 3725 +3657 3799 3727 3729 2309 3728 +3730 3732 3729 3733 2310 3731 +3663 3805 3733 3735 2311 3734 +3736 3738 3735 3739 2312 3737 +3669 3811 3739 3741 2313 3740 +3742 3744 3741 3745 2314 3743 +3675 3817 3745 3747 2315 3746 +3748 3750 3747 3751 2316 3749 +3681 3823 3751 3753 2317 3752 +3754 3756 3753 3757 2318 3755 +3687 3829 3757 3759 2319 3758 +3690 3832 3760 3762 2320 3761 +3763 3765 3762 3766 2321 3764 +3696 3838 3766 3768 2322 3767 +3769 3771 3768 3772 2323 3770 +3702 3844 3772 3774 2324 3773 +3775 3777 3774 3778 2325 3776 +3708 3850 3778 3780 2326 3779 +3781 3783 3780 3784 2327 3782 +3714 3856 3784 3786 2328 3785 +3787 3789 3786 3790 2329 3788 +3720 3862 3790 3792 2330 3791 +3793 3795 3792 3796 2331 3794 +3726 3868 3796 3798 2332 3797 +3799 3801 3798 3802 2333 3800 +3732 3874 3802 3804 2334 3803 +3805 3807 3804 3808 2335 3806 +3738 3880 3808 3810 2336 3809 +3811 3813 3810 3814 2337 3812 +3744 3886 3814 3816 2338 3815 +3817 3819 3816 3820 2339 3818 +3750 3892 3820 3822 2340 3821 +3823 3825 3822 3826 2341 3824 +3756 3898 3826 3828 2342 3827 +3829 3831 3828 2775 2343 3830 +3832 3834 2776 3835 2344 3833 +3765 3907 3835 3837 2345 3836 +3838 3840 3837 3841 2346 3839 +3771 3913 3841 3843 2347 3842 +3844 3846 3843 3847 2348 3845 +3777 3919 3847 3849 2349 3848 +3850 3852 3849 3853 2350 3851 +3783 3925 3853 3855 2351 3854 +3856 3858 3855 3859 2352 3857 +3789 3931 3859 3861 2353 3860 +3862 3864 3861 3865 2354 3863 +3795 3937 3865 3867 2355 3866 +3868 3870 3867 3871 2356 3869 +3801 3943 3871 3873 2357 3872 +3874 3876 3873 3877 2358 3875 +3807 3949 3877 3879 2359 3878 +3880 3882 3879 3883 2360 3881 +3813 3955 3883 3885 2361 3884 +3886 3888 3885 3889 2362 3887 +3819 3961 3889 3891 2363 3890 +3892 3894 3891 3895 2364 3893 +3825 3967 3895 3897 2365 3896 +3898 3900 3897 3901 2366 3899 +3831 3973 3901 3903 2367 3902 +3834 3976 3904 3906 2368 3905 +3907 3909 3906 3910 2369 3908 +3840 3982 3910 3912 2370 3911 +3913 3915 3912 3916 2371 3914 +3846 3988 3916 3918 2372 3917 +3919 3921 3918 3922 2373 3920 +3852 3994 3922 3924 2374 3923 +3925 3927 3924 3928 2375 3926 +3858 4000 3928 3930 2376 3929 +3931 3933 3930 3934 2377 3932 +3864 4006 3934 3936 2378 3935 +3937 3939 3936 3940 2379 3938 +3870 4012 3940 3942 2380 3941 +3943 3945 3942 3946 2381 3944 +3876 4018 3946 3948 2382 3947 +3949 3951 3948 3952 2383 3950 +3882 4024 3952 3954 2384 3953 +3955 3957 3954 3958 2385 3956 +3888 4030 3958 3960 2386 3959 +3961 3963 3960 3964 2387 3962 +3894 4036 3964 3966 2388 3965 +3967 3969 3966 3970 2389 3968 +3900 4042 3970 3972 2390 3971 +3973 3975 3972 2823 2391 3974 +3976 3978 2824 3979 2392 3977 +3909 4051 3979 3981 2393 3980 +3982 3984 3981 3985 2394 3983 +3915 4057 3985 3987 2395 3986 +3988 3990 3987 3991 2396 3989 +3921 4063 3991 3993 2397 3992 +3994 3996 3993 3997 2398 3995 +3927 4069 3997 3999 2399 3998 +4000 4002 3999 4003 2400 4001 +3933 4075 4003 4005 2401 4004 +4006 4008 4005 4009 2402 4007 +3939 4081 4009 4011 2403 4010 +4012 4014 4011 4015 2404 4013 +3945 4087 4015 4017 2405 4016 +4018 4020 4017 4021 2406 4019 +3951 4093 4021 4023 2407 4022 +4024 4026 4023 4027 2408 4025 +3957 4099 4027 4029 2409 4028 +4030 4032 4029 4033 2410 4031 +3963 4105 4033 4035 2411 4034 +4036 4038 4035 4039 2412 4037 +3969 4111 4039 4041 2413 4040 +4042 4044 4041 4045 2414 4043 +3975 4117 4045 4047 2415 4046 +3978 4120 4048 4050 2416 4049 +4051 4053 4050 4054 2417 4052 +3984 4126 4054 4056 2418 4055 +4057 4059 4056 4060 2419 4058 +3990 4132 4060 4062 2420 4061 +4063 4065 4062 4066 2421 4064 +3996 4138 4066 4068 2422 4067 +4069 4071 4068 4072 2423 4070 +4002 4144 4072 4074 2424 4073 +4075 4077 4074 4078 2425 4076 +4008 4150 4078 4080 2426 4079 +4081 4083 4080 4084 2427 4082 +4014 4156 4084 4086 2428 4085 +4087 4089 4086 4090 2429 4088 +4020 4162 4090 4092 2430 4091 +4093 4095 4092 4096 2431 4094 +4026 4168 4096 4098 2432 4097 +4099 4101 4098 4102 2433 4100 +4032 4174 4102 4104 2434 4103 +4105 4107 4104 4108 2435 4106 +4038 4180 4108 4110 2436 4109 +4111 4113 4110 4114 2437 4112 +4044 4186 4114 4116 2438 4115 +4117 4119 4116 2871 2439 4118 +4120 4122 2872 4123 2440 4121 +4053 2873 4123 4125 2441 4124 +4126 4128 4125 4129 2442 4127 +4059 2875 4129 4131 2443 4130 +4132 4134 4131 4135 2444 4133 +4065 2877 4135 4137 2445 4136 +4138 4140 4137 4141 2446 4139 +4071 2879 4141 4143 2447 4142 +4144 4146 4143 4147 2448 4145 +4077 2881 4147 4149 2449 4148 +4150 4152 4149 4153 2450 4151 +4083 2883 4153 4155 2451 4154 +4156 4158 4155 4159 2452 4157 +4089 2885 4159 4161 2453 4160 +4162 4164 4161 4165 2454 4163 +4095 2887 4165 4167 2455 4166 +4168 4170 4167 4171 2456 4169 +4101 2889 4171 4173 2457 4172 +4174 4176 4173 4177 2458 4175 +4107 2891 4177 4179 2459 4178 +4180 4182 4179 4183 2460 4181 +4113 2893 4183 4185 2461 4184 +4186 4188 4185 4189 2462 4187 +4119 2895 4189 4191 2463 4190 +4196 4198 2896 2897 2464 4197 +4193 4199 2896 2898 2464 4194 +4192 4200 2897 2467 2464 4195 +2464 2900 4217 4201 2465 4208 +2899 2901 4218 4202 2465 4209 +2900 2468 4219 4203 2465 4210 +4220 4222 2465 2903 2466 4221 +4211 4223 2902 2904 2466 4212 +4204 4224 2903 2471 2466 4213 +4225 4227 2466 2906 2467 4226 +4214 4216 2905 2907 2467 4215 +4205 4207 2906 2907 2467 4206 +4256 4258 2908 2909 2468 4257 +4241 4243 2908 2910 2468 4242 +4228 4230 2909 2469 2468 4229 +2466 2912 4259 4231 2469 4244 +2911 2913 4260 4232 2469 4245 +2912 2474 4261 4233 2469 4246 +4262 4264 2469 2915 2470 4263 +4247 4265 2914 2916 2470 4248 +4234 4266 2915 2477 2470 4249 +4267 4269 2470 2918 2471 4268 +4250 4252 2917 2919 2471 4251 +4235 4237 2918 2472 2471 4236 +2467 2921 4270 4238 2472 4253 +2920 2922 4271 4239 2472 4254 +2921 2479 4272 4240 2472 4255 +2468 2924 4313 4273 2473 4292 +2923 2925 4314 4274 2473 4293 +2924 2480 4315 4275 2473 4294 +4316 4318 2473 2927 2474 4317 +4295 4297 2926 2928 2474 4296 +4276 4278 2927 2475 2474 4277 +2470 2930 4319 4279 2475 4298 +2929 2931 4320 4280 2475 4299 +2930 2482 4321 4281 2475 4300 +4322 4324 2475 2933 2476 4323 +4301 4325 2932 2934 2476 4302 +4282 4326 2933 2485 2476 4303 +4327 4329 2476 2936 2477 4328 +4304 4306 2935 2937 2477 4305 +4283 4285 2936 2478 2477 4284 +2471 2939 4330 4286 2478 4307 +2938 2940 4331 4287 2478 4308 +2939 2487 4332 4288 2478 4309 +4333 4335 2478 2942 2479 4334 +4310 4312 2941 2943 2479 4311 +4289 4291 2942 2943 2479 4290 +4388 4390 2944 2945 2480 4389 +4361 4363 2944 2946 2480 4362 +4336 4338 2945 2481 2480 4337 +2474 2948 4391 4339 2481 4364 +2947 2949 4392 4340 2481 4365 +2948 2490 4393 4341 2481 4366 +4394 4396 2481 2951 2482 4395 +4367 4369 2950 2952 2482 4368 +4342 4344 2951 2483 2482 4343 +2476 2954 4397 4345 2483 4370 +2953 2955 4398 4346 2483 4371 +2954 2492 4399 4347 2483 4372 +4400 4402 2483 2957 2484 4401 +4373 4403 2956 2958 2484 4374 +4348 4404 2957 2495 2484 4375 +4405 4407 2484 2960 2485 4406 +4376 4378 2959 2961 2485 4377 +4349 4351 2960 2486 2485 4350 +2477 2963 4408 4352 2486 4379 +2962 2964 4409 4353 2486 4380 +2963 2497 4410 4354 2486 4381 +4411 4413 2486 2966 2487 4412 +4382 4384 2965 2967 2487 4383 +4355 4357 2966 2488 2487 4356 +2479 2969 4414 4358 2488 4385 +2968 2970 4415 4359 2488 4386 +2969 2499 4416 4360 2488 4387 +2480 2972 4481 4417 2489 4448 +2971 2973 4482 4418 2489 4449 +2972 2500 4483 4419 2489 4450 +4484 4486 2489 2975 2490 4485 +4451 4453 2974 2976 2490 4452 +4420 4422 2975 2491 2490 4421 +2482 2978 4487 4423 2491 4454 +2977 2979 4488 4424 2491 4455 +2978 2502 4489 4425 2491 4456 +4490 4492 2491 2981 2492 4491 +4457 4459 2980 2982 2492 4458 +4426 4428 2981 2493 2492 4427 +2484 2984 4493 4429 2493 4460 +2983 2985 4494 4430 2493 4461 +2984 2504 4495 4431 2493 4462 +4496 4498 2493 2987 2494 4497 +4463 4499 2986 2988 2494 4464 +4432 4500 2987 2507 2494 4465 +4501 4503 2494 2990 2495 4502 +4466 4468 2989 2991 2495 4467 +4433 4435 2990 2496 2495 4434 +2485 2993 4504 4436 2496 4469 +2992 2994 4505 4437 2496 4470 +2993 2509 4506 4438 2496 4471 +4507 4509 2496 2996 2497 4508 +4472 4474 2995 2997 2497 4473 +4439 4441 2996 2498 2497 4440 +2487 2999 4510 4442 2498 4475 +2998 3000 4511 4443 2498 4476 +2999 2511 4512 4444 2498 4477 +4513 4515 2498 3002 2499 4514 +4478 4480 3001 3003 2499 4479 +4445 4447 3002 3003 2499 4446 +4592 4594 3004 3005 2500 4593 +4553 4555 3004 3006 2500 4554 +4516 4518 3005 2501 2500 4517 +2490 3008 4595 4519 2501 4556 +3007 3009 4596 4520 2501 4557 +3008 2514 4597 4521 2501 4558 +4598 4600 2501 3011 2502 4599 +4559 4561 3010 3012 2502 4560 +4522 4524 3011 2503 2502 4523 +2492 3014 4601 4525 2503 4562 +3013 3015 4602 4526 2503 4563 +3014 2516 4603 4527 2503 4564 +4604 4606 2503 3017 2504 4605 +4565 4567 3016 3018 2504 4566 +4528 4530 3017 2505 2504 4529 +2494 3020 4607 4531 2505 4568 +3019 3021 4608 4532 2505 4569 +3020 2518 4609 4533 2505 4570 +4610 4612 2505 3023 2506 4611 +4571 4613 3022 3024 2506 4572 +4534 4614 3023 2521 2506 4573 +4615 4617 2506 3026 2507 4616 +4574 4576 3025 3027 2507 4575 +4535 4537 3026 2508 2507 4536 +2495 3029 4618 4538 2508 4577 +3028 3030 4619 4539 2508 4578 +3029 2523 4620 4540 2508 4579 +4621 4623 2508 3032 2509 4622 +4580 4582 3031 3033 2509 4581 +4541 4543 3032 2510 2509 4542 +2497 3035 4624 4544 2510 4583 +3034 3036 4625 4545 2510 4584 +3035 2525 4626 4546 2510 4585 +4627 4629 2510 3038 2511 4628 +4586 4588 3037 3039 2511 4587 +4547 4549 3038 2512 2511 4548 +2499 3041 4630 4550 2512 4589 +3040 3042 4631 4551 2512 4590 +3041 2527 4632 4552 2512 4591 +2500 3044 4721 4633 2513 4676 +3043 3045 4722 4634 2513 4677 +3044 2528 4723 4635 2513 4678 +4724 4726 2513 3047 2514 4725 +4679 4681 3046 3048 2514 4680 +4636 4638 3047 2515 2514 4637 +2502 3050 4727 4639 2515 4682 +3049 3051 4728 4640 2515 4683 +3050 2530 4729 4641 2515 4684 +4730 4732 2515 3053 2516 4731 +4685 4687 3052 3054 2516 4686 +4642 4644 3053 2517 2516 4643 +2504 3056 4733 4645 2517 4688 +3055 3057 4734 4646 2517 4689 +3056 2532 4735 4647 2517 4690 +4736 4738 2517 3059 2518 4737 +4691 4693 3058 3060 2518 4692 +4648 4650 3059 2519 2518 4649 +2506 3062 4739 4651 2519 4694 +3061 3063 4740 4652 2519 4695 +3062 2534 4741 4653 2519 4696 +4742 4744 2519 3065 2520 4743 +4697 4745 3064 3066 2520 4698 +4654 4746 3065 2537 2520 4699 +4747 4749 2520 3068 2521 4748 +4700 4702 3067 3069 2521 4701 +4655 4657 3068 2522 2521 4656 +2507 3071 4750 4658 2522 4703 +3070 3072 4751 4659 2522 4704 +3071 2539 4752 4660 2522 4705 +4753 4755 2522 3074 2523 4754 +4706 4708 3073 3075 2523 4707 +4661 4663 3074 2524 2523 4662 +2509 3077 4756 4664 2524 4709 +3076 3078 4757 4665 2524 4710 +3077 2541 4758 4666 2524 4711 +4759 4761 2524 3080 2525 4760 +4712 4714 3079 3081 2525 4713 +4667 4669 3080 2526 2525 4668 +2511 3083 4762 4670 2526 4715 +3082 3084 4763 4671 2526 4716 +3083 2543 4764 4672 2526 4717 +4765 4767 2526 3086 2527 4766 +4718 4720 3085 3087 2527 4719 +4673 4675 3086 3087 2527 4674 +4868 4870 3088 3089 2528 4869 +4817 4819 3088 3090 2528 4818 +4768 4770 3089 2529 2528 4769 +2514 3092 4871 4771 2529 4820 +3091 3093 4872 4772 2529 4821 +3092 2546 4873 4773 2529 4822 +4874 4876 2529 3095 2530 4875 +4823 4825 3094 3096 2530 4824 +4774 4776 3095 2531 2530 4775 +2516 3098 4877 4777 2531 4826 +3097 3099 4878 4778 2531 4827 +3098 2548 4879 4779 2531 4828 +4880 4882 2531 3101 2532 4881 +4829 4831 3100 3102 2532 4830 +4780 4782 3101 2533 2532 4781 +2518 3104 4883 4783 2533 4832 +3103 3105 4884 4784 2533 4833 +3104 2550 4885 4785 2533 4834 +4886 4888 2533 3107 2534 4887 +4835 4837 3106 3108 2534 4836 +4786 4788 3107 2535 2534 4787 +2520 3110 4889 4789 2535 4838 +3109 3111 4890 4790 2535 4839 +3110 2552 4891 4791 2535 4840 +4892 4894 2535 3113 2536 4893 +4841 4895 3112 3114 2536 4842 +4792 4896 3113 2555 2536 4843 +4897 4899 2536 3116 2537 4898 +4844 4846 3115 3117 2537 4845 +4793 4795 3116 2538 2537 4794 +2521 3119 4900 4796 2538 4847 +3118 3120 4901 4797 2538 4848 +3119 2557 4902 4798 2538 4849 +4903 4905 2538 3122 2539 4904 +4850 4852 3121 3123 2539 4851 +4799 4801 3122 2540 2539 4800 +2523 3125 4906 4802 2540 4853 +3124 3126 4907 4803 2540 4854 +3125 2559 4908 4804 2540 4855 +4909 4911 2540 3128 2541 4910 +4856 4858 3127 3129 2541 4857 +4805 4807 3128 2542 2541 4806 +2525 3131 4912 4808 2542 4859 +3130 3132 4913 4809 2542 4860 +3131 2561 4914 4810 2542 4861 +4915 4917 2542 3134 2543 4916 +4862 4864 3133 3135 2543 4863 +4811 4813 3134 2544 2543 4812 +2527 3137 4918 4814 2544 4865 +3136 3138 4919 4815 2544 4866 +3137 2563 4920 4816 2544 4867 +2528 3140 5033 4921 2545 4976 +3139 3141 5034 4922 2545 4977 +3140 2564 5035 4923 2545 4978 +5036 5038 2545 3143 2546 5037 +4979 4981 3142 3144 2546 4980 +4924 4926 3143 2547 2546 4925 +2530 3146 5039 4927 2547 4982 +3145 3147 5040 4928 2547 4983 +3146 2566 5041 4929 2547 4984 +5042 5044 2547 3149 2548 5043 +4985 4987 3148 3150 2548 4986 +4930 4932 3149 2549 2548 4931 +2532 3152 5045 4933 2549 4988 +3151 3153 5046 4934 2549 4989 +3152 2568 5047 4935 2549 4990 +5048 5050 2549 3155 2550 5049 +4991 4993 3154 3156 2550 4992 +4936 4938 3155 2551 2550 4937 +2534 3158 5051 4939 2551 4994 +3157 3159 5052 4940 2551 4995 +3158 2570 5053 4941 2551 4996 +5054 5056 2551 3161 2552 5055 +4997 4999 3160 3162 2552 4998 +4942 4944 3161 2553 2552 4943 +2536 3164 5057 4945 2553 5000 +3163 3165 5058 4946 2553 5001 +3164 2572 5059 4947 2553 5002 +5060 5062 2553 3167 2554 5061 +5003 5063 3166 3168 2554 5004 +4948 5064 3167 2575 2554 5005 +5065 5067 2554 3170 2555 5066 +5006 5008 3169 3171 2555 5007 +4949 4951 3170 2556 2555 4950 +2537 3173 5068 4952 2556 5009 +3172 3174 5069 4953 2556 5010 +3173 2577 5070 4954 2556 5011 +5071 5073 2556 3176 2557 5072 +5012 5014 3175 3177 2557 5013 +4955 4957 3176 2558 2557 4956 +2539 3179 5074 4958 2558 5015 +3178 3180 5075 4959 2558 5016 +3179 2579 5076 4960 2558 5017 +5077 5079 2558 3182 2559 5078 +5018 5020 3181 3183 2559 5019 +4961 4963 3182 2560 2559 4962 +2541 3185 5080 4964 2560 5021 +3184 3186 5081 4965 2560 5022 +3185 2581 5082 4966 2560 5023 +5083 5085 2560 3188 2561 5084 +5024 5026 3187 3189 2561 5025 +4967 4969 3188 2562 2561 4968 +2543 3191 5086 4970 2562 5027 +3190 3192 5087 4971 2562 5028 +3191 2583 5088 4972 2562 5029 +5089 5091 2562 3194 2563 5090 +5030 5032 3193 3195 2563 5031 +4973 4975 3194 3195 2563 4974 +5216 5218 3196 3197 2564 5217 +5153 5155 3196 3198 2564 5154 +5092 5094 3197 2565 2564 5093 +2546 3200 5219 5095 2565 5156 +3199 3201 5220 5096 2565 5157 +3200 2586 5221 5097 2565 5158 +5222 5224 2565 3203 2566 5223 +5159 5161 3202 3204 2566 5160 +5098 5100 3203 2567 2566 5099 +2548 3206 5225 5101 2567 5162 +3205 3207 5226 5102 2567 5163 +3206 2588 5227 5103 2567 5164 +5228 5230 2567 3209 2568 5229 +5165 5167 3208 3210 2568 5166 +5104 5106 3209 2569 2568 5105 +2550 3212 5231 5107 2569 5168 +3211 3213 5232 5108 2569 5169 +3212 2590 5233 5109 2569 5170 +5234 5236 2569 3215 2570 5235 +5171 5173 3214 3216 2570 5172 +5110 5112 3215 2571 2570 5111 +2552 3218 5237 5113 2571 5174 +3217 3219 5238 5114 2571 5175 +3218 2592 5239 5115 2571 5176 +5240 5242 2571 3221 2572 5241 +5177 5179 3220 3222 2572 5178 +5116 5118 3221 2573 2572 5117 +2554 3224 5243 5119 2573 5180 +3223 3225 5244 5120 2573 5181 +3224 2594 5245 5121 2573 5182 +5246 5248 2573 3227 2574 5247 +5183 5249 3226 3228 2574 5184 +5122 5250 3227 2597 2574 5185 +5251 5253 2574 3230 2575 5252 +5186 5188 3229 3231 2575 5187 +5123 5125 3230 2576 2575 5124 +2555 3233 5254 5126 2576 5189 +3232 3234 5255 5127 2576 5190 +3233 2599 5256 5128 2576 5191 +5257 5259 2576 3236 2577 5258 +5192 5194 3235 3237 2577 5193 +5129 5131 3236 2578 2577 5130 +2557 3239 5260 5132 2578 5195 +3238 3240 5261 5133 2578 5196 +3239 2601 5262 5134 2578 5197 +5263 5265 2578 3242 2579 5264 +5198 5200 3241 3243 2579 5199 +5135 5137 3242 2580 2579 5136 +2559 3245 5266 5138 2580 5201 +3244 3246 5267 5139 2580 5202 +3245 2603 5268 5140 2580 5203 +5269 5271 2580 3248 2581 5270 +5204 5206 3247 3249 2581 5205 +5141 5143 3248 2582 2581 5142 +2561 3251 5272 5144 2582 5207 +3250 3252 5273 5145 2582 5208 +3251 2605 5274 5146 2582 5209 +5275 5277 2582 3254 2583 5276 +5210 5212 3253 3255 2583 5211 +5147 5149 3254 2584 2583 5148 +2563 3257 5278 5150 2584 5213 +3256 3258 5279 5151 2584 5214 +3257 2607 5280 5152 2584 5215 +2564 3260 5417 5281 2585 5348 +3259 3261 5418 5282 2585 5349 +3260 2608 5419 5283 2585 5350 +5420 5422 2585 3263 2586 5421 +5351 5353 3262 3264 2586 5352 +5284 5286 3263 2587 2586 5285 +2566 3266 5423 5287 2587 5354 +3265 3267 5424 5288 2587 5355 +3266 2610 5425 5289 2587 5356 +5426 5428 2587 3269 2588 5427 +5357 5359 3268 3270 2588 5358 +5290 5292 3269 2589 2588 5291 +2568 3272 5429 5293 2589 5360 +3271 3273 5430 5294 2589 5361 +3272 2612 5431 5295 2589 5362 +5432 5434 2589 3275 2590 5433 +5363 5365 3274 3276 2590 5364 +5296 5298 3275 2591 2590 5297 +2570 3278 5435 5299 2591 5366 +3277 3279 5436 5300 2591 5367 +3278 2614 5437 5301 2591 5368 +5438 5440 2591 3281 2592 5439 +5369 5371 3280 3282 2592 5370 +5302 5304 3281 2593 2592 5303 +2572 3284 5441 5305 2593 5372 +3283 3285 5442 5306 2593 5373 +3284 2616 5443 5307 2593 5374 +5444 5446 2593 3287 2594 5445 +5375 5377 3286 3288 2594 5376 +5308 5310 3287 2595 2594 5309 +2574 3290 5447 5311 2595 5378 +3289 3291 5448 5312 2595 5379 +3290 2618 5449 5313 2595 5380 +5450 5452 2595 3293 2596 5451 +5381 5453 3292 3294 2596 5382 +5314 5454 3293 2620 2596 5383 +5455 5457 2596 3296 2597 5456 +5384 5386 3295 3297 2597 5385 +5315 5317 3296 2598 2597 5316 +2575 3299 5458 5318 2598 5387 +3298 3300 5459 5319 2598 5388 +3299 2622 5460 5320 2598 5389 +5461 5463 2598 3302 2599 5462 +5390 5392 3301 3303 2599 5391 +5321 5323 3302 2600 2599 5322 +2577 3305 5464 5324 2600 5393 +3304 3306 5465 5325 2600 5394 +3305 2624 5466 5326 2600 5395 +5467 5469 2600 3308 2601 5468 +5396 5398 3307 3309 2601 5397 +5327 5329 3308 2602 2601 5328 +2579 3311 5470 5330 2602 5399 +3310 3312 5471 5331 2602 5400 +3311 2626 5472 5332 2602 5401 +5473 5475 2602 3314 2603 5474 +5402 5404 3313 3315 2603 5403 +5333 5335 3314 2604 2603 5334 +2581 3317 5476 5336 2604 5405 +3316 3318 5477 5337 2604 5406 +3317 2628 5478 5338 2604 5407 +5479 5481 2604 3320 2605 5480 +5408 5410 3319 3321 2605 5409 +5339 5341 3320 2606 2605 5340 +2583 3323 5482 5342 2606 5411 +3322 3324 5483 5343 2606 5412 +3323 2630 5484 5344 2606 5413 +5485 5487 2606 3326 2607 5486 +5414 5416 3325 3327 2607 5415 +5345 5347 3326 3327 2607 5346 +5632 5634 3328 3329 2608 5633 +5560 5562 3328 3330 2608 5561 +5488 5490 3329 2609 2608 5489 +2586 3332 5635 5491 2609 5563 +3331 3333 5636 5492 2609 5564 +3332 2633 5637 5493 2609 5565 +5638 5640 2609 3335 2610 5639 +5566 5568 3334 3336 2610 5567 +5494 5496 3335 2611 2610 5495 +2588 3338 5641 5497 2611 5569 +3337 3339 5642 5498 2611 5570 +3338 2635 5643 5499 2611 5571 +5644 5646 2611 3341 2612 5645 +5572 5574 3340 3342 2612 5573 +5500 5502 3341 2613 2612 5501 +2590 3344 5647 5503 2613 5575 +3343 3345 5648 5504 2613 5576 +3344 2637 5649 5505 2613 5577 +5650 5652 2613 3347 2614 5651 +5578 5580 3346 3348 2614 5579 +5506 5508 3347 2615 2614 5507 +2592 3350 5653 5509 2615 5581 +3349 3351 5654 5510 2615 5582 +3350 2639 5655 5511 2615 5583 +5656 5658 2615 3353 2616 5657 +5584 5586 3352 3354 2616 5585 +5512 5514 3353 2617 2616 5513 +2594 3356 5659 5515 2617 5587 +3355 3357 5660 5516 2617 5588 +3356 2641 5661 5517 2617 5589 +5662 5664 2617 3359 2618 5663 +5590 5592 3358 3360 2618 5591 +5518 5520 3359 2619 2618 5519 +2596 3362 5665 5521 2619 5593 +3361 3363 5666 5522 2619 5594 +3362 2643 5667 5523 2619 5595 +5668 5670 2619 3365 2620 5669 +5596 5598 3364 3366 2620 5597 +5524 5526 3365 2621 2620 5525 +2597 3368 5671 5527 2621 5599 +3367 3369 5672 5528 2621 5600 +3368 2645 5673 5529 2621 5601 +5674 5676 2621 3371 2622 5675 +5602 5604 3370 3372 2622 5603 +5530 5532 3371 2623 2622 5531 +2599 3374 5677 5533 2623 5605 +3373 3375 5678 5534 2623 5606 +3374 2647 5679 5535 2623 5607 +5680 5682 2623 3377 2624 5681 +5608 5610 3376 3378 2624 5609 +5536 5538 3377 2625 2624 5537 +2601 3380 5683 5539 2625 5611 +3379 3381 5684 5540 2625 5612 +3380 2649 5685 5541 2625 5613 +5686 5688 2625 3383 2626 5687 +5614 5616 3382 3384 2626 5615 +5542 5544 3383 2627 2626 5543 +2603 3386 5689 5545 2627 5617 +3385 3387 5690 5546 2627 5618 +3386 2651 5691 5547 2627 5619 +5692 5694 2627 3389 2628 5693 +5620 5622 3388 3390 2628 5621 +5548 5550 3389 2629 2628 5549 +2605 3392 5695 5551 2629 5623 +3391 3393 5696 5552 2629 5624 +3392 2653 5697 5553 2629 5625 +5698 5700 2629 3395 2630 5699 +5626 5628 3394 3396 2630 5627 +5554 5556 3395 2631 2630 5555 +2607 3398 5701 5557 2631 5629 +3397 3399 5702 5558 2631 5630 +3398 2655 5703 5559 2631 5631 +2608 3401 5848 5704 2632 5776 +3400 3402 5849 5705 2632 5777 +3401 2656 5850 5706 2632 5778 +5851 5853 2632 3404 2633 5852 +5779 5781 3403 3405 2633 5780 +5707 5709 3404 2634 2633 5708 +2610 3407 5854 5710 2634 5782 +3406 3408 5855 5711 2634 5783 +3407 2658 5856 5712 2634 5784 +5857 5859 2634 3410 2635 5858 +5785 5787 3409 3411 2635 5786 +5713 5715 3410 2636 2635 5714 +2612 3413 5860 5716 2636 5788 +3412 3414 5861 5717 2636 5789 +3413 2660 5862 5718 2636 5790 +5863 5865 2636 3416 2637 5864 +5791 5793 3415 3417 2637 5792 +5719 5721 3416 2638 2637 5720 +2614 3419 5866 5722 2638 5794 +3418 3420 5867 5723 2638 5795 +3419 2662 5868 5724 2638 5796 +5869 5871 2638 3422 2639 5870 +5797 5799 3421 3423 2639 5798 +5725 5727 3422 2640 2639 5726 +2616 3425 5872 5728 2640 5800 +3424 3426 5873 5729 2640 5801 +3425 2664 5874 5730 2640 5802 +5875 5877 2640 3428 2641 5876 +5803 5805 3427 3429 2641 5804 +5731 5733 3428 2642 2641 5732 +2618 3431 5878 5734 2642 5806 +3430 3432 5879 5735 2642 5807 +3431 2666 5880 5736 2642 5808 +5881 5883 2642 3434 2643 5882 +5809 5811 3433 3435 2643 5810 +5737 5739 3434 2644 2643 5738 +2620 3437 5884 5740 2644 5812 +3436 3438 5885 5741 2644 5813 +3437 2668 5886 5742 2644 5814 +5887 5889 2644 3440 2645 5888 +5815 5817 3439 3441 2645 5816 +5743 5745 3440 2646 2645 5744 +2622 3443 5890 5746 2646 5818 +3442 3444 5891 5747 2646 5819 +3443 2670 5892 5748 2646 5820 +5893 5895 2646 3446 2647 5894 +5821 5823 3445 3447 2647 5822 +5749 5751 3446 2648 2647 5750 +2624 3449 5896 5752 2648 5824 +3448 3450 5897 5753 2648 5825 +3449 2672 5898 5754 2648 5826 +5899 5901 2648 3452 2649 5900 +5827 5829 3451 3453 2649 5828 +5755 5757 3452 2650 2649 5756 +2626 3455 5902 5758 2650 5830 +3454 3456 5903 5759 2650 5831 +3455 2674 5904 5760 2650 5832 +5905 5907 2650 3458 2651 5906 +5833 5835 3457 3459 2651 5834 +5761 5763 3458 2652 2651 5762 +2628 3461 5908 5764 2652 5836 +3460 3462 5909 5765 2652 5837 +3461 2676 5910 5766 2652 5838 +5911 5913 2652 3464 2653 5912 +5839 5841 3463 3465 2653 5840 +5767 5769 3464 2654 2653 5768 +2630 3467 5914 5770 2654 5842 +3466 3468 5915 5771 2654 5843 +3467 2678 5916 5772 2654 5844 +5917 5919 2654 3470 2655 5918 +5845 5847 3469 3471 2655 5846 +5773 5775 3470 3471 2655 5774 +6064 6066 3472 3473 2656 6065 +5992 5994 3472 3474 2656 5993 +5920 5922 3473 2657 2656 5921 +2633 3476 6067 5923 2657 5995 +3475 3477 6068 5924 2657 5996 +3476 2681 6069 5925 2657 5997 +6070 6072 2657 3479 2658 6071 +5998 6000 3478 3480 2658 5999 +5926 5928 3479 2659 2658 5927 +2635 3482 6073 5929 2659 6001 +3481 3483 6074 5930 2659 6002 +3482 2683 6075 5931 2659 6003 +6076 6078 2659 3485 2660 6077 +6004 6006 3484 3486 2660 6005 +5932 5934 3485 2661 2660 5933 +2637 3488 6079 5935 2661 6007 +3487 3489 6080 5936 2661 6008 +3488 2685 6081 5937 2661 6009 +6082 6084 2661 3491 2662 6083 +6010 6012 3490 3492 2662 6011 +5938 5940 3491 2663 2662 5939 +2639 3494 6085 5941 2663 6013 +3493 3495 6086 5942 2663 6014 +3494 2687 6087 5943 2663 6015 +6088 6090 2663 3497 2664 6089 +6016 6018 3496 3498 2664 6017 +5944 5946 3497 2665 2664 5945 +2641 3500 6091 5947 2665 6019 +3499 3501 6092 5948 2665 6020 +3500 2689 6093 5949 2665 6021 +6094 6096 2665 3503 2666 6095 +6022 6024 3502 3504 2666 6023 +5950 5952 3503 2667 2666 5951 +2643 3506 6097 5953 2667 6025 +3505 3507 6098 5954 2667 6026 +3506 2691 6099 5955 2667 6027 +6100 6102 2667 3509 2668 6101 +6028 6030 3508 3510 2668 6029 +5956 5958 3509 2669 2668 5957 +2645 3512 6103 5959 2669 6031 +3511 3513 6104 5960 2669 6032 +3512 2693 6105 5961 2669 6033 +6106 6108 2669 3515 2670 6107 +6034 6036 3514 3516 2670 6035 +5962 5964 3515 2671 2670 5963 +2647 3518 6109 5965 2671 6037 +3517 3519 6110 5966 2671 6038 +3518 2695 6111 5967 2671 6039 +6112 6114 2671 3521 2672 6113 +6040 6042 3520 3522 2672 6041 +5968 5970 3521 2673 2672 5969 +2649 3524 6115 5971 2673 6043 +3523 3525 6116 5972 2673 6044 +3524 2697 6117 5973 2673 6045 +6118 6120 2673 3527 2674 6119 +6046 6048 3526 3528 2674 6047 +5974 5976 3527 2675 2674 5975 +2651 3530 6121 5977 2675 6049 +3529 3531 6122 5978 2675 6050 +3530 2699 6123 5979 2675 6051 +6124 6126 2675 3533 2676 6125 +6052 6054 3532 3534 2676 6053 +5980 5982 3533 2677 2676 5981 +2653 3536 6127 5983 2677 6055 +3535 3537 6128 5984 2677 6056 +3536 2701 6129 5985 2677 6057 +6130 6132 2677 3539 2678 6131 +6058 6060 3538 3540 2678 6059 +5986 5988 3539 2679 2678 5987 +2655 3542 6133 5989 2679 6061 +3541 3543 6134 5990 2679 6062 +3542 2703 6135 5991 2679 6063 +2656 3545 6280 6136 2680 6208 +3544 3546 6281 6137 2680 6209 +3545 2704 6282 6138 2680 6210 +6283 6285 2680 3548 2681 6284 +6211 6213 3547 3549 2681 6212 +6139 6141 3548 2682 2681 6140 +2658 3551 6286 6142 2682 6214 +3550 3552 6287 6143 2682 6215 +3551 2706 6288 6144 2682 6216 +6289 6291 2682 3554 2683 6290 +6217 6219 3553 3555 2683 6218 +6145 6147 3554 2684 2683 6146 +2660 3557 6292 6148 2684 6220 +3556 3558 6293 6149 2684 6221 +3557 2708 6294 6150 2684 6222 +6295 6297 2684 3560 2685 6296 +6223 6225 3559 3561 2685 6224 +6151 6153 3560 2686 2685 6152 +2662 3563 6298 6154 2686 6226 +3562 3564 6299 6155 2686 6227 +3563 2710 6300 6156 2686 6228 +6301 6303 2686 3566 2687 6302 +6229 6231 3565 3567 2687 6230 +6157 6159 3566 2688 2687 6158 +2664 3569 6304 6160 2688 6232 +3568 3570 6305 6161 2688 6233 +3569 2712 6306 6162 2688 6234 +6307 6309 2688 3572 2689 6308 +6235 6237 3571 3573 2689 6236 +6163 6165 3572 2690 2689 6164 +2666 3575 6310 6166 2690 6238 +3574 3576 6311 6167 2690 6239 +3575 2714 6312 6168 2690 6240 +6313 6315 2690 3578 2691 6314 +6241 6243 3577 3579 2691 6242 +6169 6171 3578 2692 2691 6170 +2668 3581 6316 6172 2692 6244 +3580 3582 6317 6173 2692 6245 +3581 2716 6318 6174 2692 6246 +6319 6321 2692 3584 2693 6320 +6247 6249 3583 3585 2693 6248 +6175 6177 3584 2694 2693 6176 +2670 3587 6322 6178 2694 6250 +3586 3588 6323 6179 2694 6251 +3587 2718 6324 6180 2694 6252 +6325 6327 2694 3590 2695 6326 +6253 6255 3589 3591 2695 6254 +6181 6183 3590 2696 2695 6182 +2672 3593 6328 6184 2696 6256 +3592 3594 6329 6185 2696 6257 +3593 2720 6330 6186 2696 6258 +6331 6333 2696 3596 2697 6332 +6259 6261 3595 3597 2697 6260 +6187 6189 3596 2698 2697 6188 +2674 3599 6334 6190 2698 6262 +3598 3600 6335 6191 2698 6263 +3599 2722 6336 6192 2698 6264 +6337 6339 2698 3602 2699 6338 +6265 6267 3601 3603 2699 6266 +6193 6195 3602 2700 2699 6194 +2676 3605 6340 6196 2700 6268 +3604 3606 6341 6197 2700 6269 +3605 2724 6342 6198 2700 6270 +6343 6345 2700 3608 2701 6344 +6271 6273 3607 3609 2701 6272 +6199 6201 3608 2702 2701 6200 +2678 3611 6346 6202 2702 6274 +3610 3612 6347 6203 2702 6275 +3611 2726 6348 6204 2702 6276 +6349 6351 2702 3614 2703 6350 +6277 6279 3613 3615 2703 6278 +6205 6207 3614 3615 2703 6206 +6496 6498 3616 3617 2704 6497 +6424 6426 3616 3618 2704 6425 +6352 6354 3617 2705 2704 6353 +2681 3620 6499 6355 2705 6427 +3619 3621 6500 6356 2705 6428 +3620 2729 6501 6357 2705 6429 +6502 6504 2705 3623 2706 6503 +6430 6432 3622 3624 2706 6431 +6358 6360 3623 2707 2706 6359 +2683 3626 6505 6361 2707 6433 +3625 3627 6506 6362 2707 6434 +3626 2731 6507 6363 2707 6435 +6508 6510 2707 3629 2708 6509 +6436 6438 3628 3630 2708 6437 +6364 6366 3629 2709 2708 6365 +2685 3632 6511 6367 2709 6439 +3631 3633 6512 6368 2709 6440 +3632 2733 6513 6369 2709 6441 +6514 6516 2709 3635 2710 6515 +6442 6444 3634 3636 2710 6443 +6370 6372 3635 2711 2710 6371 +2687 3638 6517 6373 2711 6445 +3637 3639 6518 6374 2711 6446 +3638 2735 6519 6375 2711 6447 +6520 6522 2711 3641 2712 6521 +6448 6450 3640 3642 2712 6449 +6376 6378 3641 2713 2712 6377 +2689 3644 6523 6379 2713 6451 +3643 3645 6524 6380 2713 6452 +3644 2737 6525 6381 2713 6453 +6526 6528 2713 3647 2714 6527 +6454 6456 3646 3648 2714 6455 +6382 6384 3647 2715 2714 6383 +2691 3650 6529 6385 2715 6457 +3649 3651 6530 6386 2715 6458 +3650 2739 6531 6387 2715 6459 +6532 6534 2715 3653 2716 6533 +6460 6462 3652 3654 2716 6461 +6388 6390 3653 2717 2716 6389 +2693 3656 6535 6391 2717 6463 +3655 3657 6536 6392 2717 6464 +3656 2741 6537 6393 2717 6465 +6538 6540 2717 3659 2718 6539 +6466 6468 3658 3660 2718 6467 +6394 6396 3659 2719 2718 6395 +2695 3662 6541 6397 2719 6469 +3661 3663 6542 6398 2719 6470 +3662 2743 6543 6399 2719 6471 +6544 6546 2719 3665 2720 6545 +6472 6474 3664 3666 2720 6473 +6400 6402 3665 2721 2720 6401 +2697 3668 6547 6403 2721 6475 +3667 3669 6548 6404 2721 6476 +3668 2745 6549 6405 2721 6477 +6550 6552 2721 3671 2722 6551 +6478 6480 3670 3672 2722 6479 +6406 6408 3671 2723 2722 6407 +2699 3674 6553 6409 2723 6481 +3673 3675 6554 6410 2723 6482 +3674 2747 6555 6411 2723 6483 +6556 6558 2723 3677 2724 6557 +6484 6486 3676 3678 2724 6485 +6412 6414 3677 2725 2724 6413 +2701 3680 6559 6415 2725 6487 +3679 3681 6560 6416 2725 6488 +3680 2749 6561 6417 2725 6489 +6562 6564 2725 3683 2726 6563 +6490 6492 3682 3684 2726 6491 +6418 6420 3683 2727 2726 6419 +2703 3686 6565 6421 2727 6493 +3685 3687 6566 6422 2727 6494 +3686 2751 6567 6423 2727 6495 +2704 3689 6712 6568 2728 6640 +3688 3690 6713 6569 2728 6641 +3689 2752 6714 6570 2728 6642 +6715 6717 2728 3692 2729 6716 +6643 6645 3691 3693 2729 6644 +6571 6573 3692 2730 2729 6572 +2706 3695 6718 6574 2730 6646 +3694 3696 6719 6575 2730 6647 +3695 2754 6720 6576 2730 6648 +6721 6723 2730 3698 2731 6722 +6649 6651 3697 3699 2731 6650 +6577 6579 3698 2732 2731 6578 +2708 3701 6724 6580 2732 6652 +3700 3702 6725 6581 2732 6653 +3701 2756 6726 6582 2732 6654 +6727 6729 2732 3704 2733 6728 +6655 6657 3703 3705 2733 6656 +6583 6585 3704 2734 2733 6584 +2710 3707 6730 6586 2734 6658 +3706 3708 6731 6587 2734 6659 +3707 2758 6732 6588 2734 6660 +6733 6735 2734 3710 2735 6734 +6661 6663 3709 3711 2735 6662 +6589 6591 3710 2736 2735 6590 +2712 3713 6736 6592 2736 6664 +3712 3714 6737 6593 2736 6665 +3713 2760 6738 6594 2736 6666 +6739 6741 2736 3716 2737 6740 +6667 6669 3715 3717 2737 6668 +6595 6597 3716 2738 2737 6596 +2714 3719 6742 6598 2738 6670 +3718 3720 6743 6599 2738 6671 +3719 2762 6744 6600 2738 6672 +6745 6747 2738 3722 2739 6746 +6673 6675 3721 3723 2739 6674 +6601 6603 3722 2740 2739 6602 +2716 3725 6748 6604 2740 6676 +3724 3726 6749 6605 2740 6677 +3725 2764 6750 6606 2740 6678 +6751 6753 2740 3728 2741 6752 +6679 6681 3727 3729 2741 6680 +6607 6609 3728 2742 2741 6608 +2718 3731 6754 6610 2742 6682 +3730 3732 6755 6611 2742 6683 +3731 2766 6756 6612 2742 6684 +6757 6759 2742 3734 2743 6758 +6685 6687 3733 3735 2743 6686 +6613 6615 3734 2744 2743 6614 +2720 3737 6760 6616 2744 6688 +3736 3738 6761 6617 2744 6689 +3737 2768 6762 6618 2744 6690 +6763 6765 2744 3740 2745 6764 +6691 6693 3739 3741 2745 6692 +6619 6621 3740 2746 2745 6620 +2722 3743 6766 6622 2746 6694 +3742 3744 6767 6623 2746 6695 +3743 2770 6768 6624 2746 6696 +6769 6771 2746 3746 2747 6770 +6697 6699 3745 3747 2747 6698 +6625 6627 3746 2748 2747 6626 +2724 3749 6772 6628 2748 6700 +3748 3750 6773 6629 2748 6701 +3749 2772 6774 6630 2748 6702 +6775 6777 2748 3752 2749 6776 +6703 6705 3751 3753 2749 6704 +6631 6633 3752 2750 2749 6632 +2726 3755 6778 6634 2750 6706 +3754 3756 6779 6635 2750 6707 +3755 2774 6780 6636 2750 6708 +6781 6783 2750 3758 2751 6782 +6709 6711 3757 3759 2751 6710 +6637 6639 3758 3759 2751 6638 +6928 6930 3760 3761 2752 6929 +6856 6858 3760 3762 2752 6857 +6784 6786 3761 2753 2752 6785 +2729 3764 6931 6787 2753 6859 +3763 3765 6932 6788 2753 6860 +3764 2777 6933 6789 2753 6861 +6934 6936 2753 3767 2754 6935 +6862 6864 3766 3768 2754 6863 +6790 6792 3767 2755 2754 6791 +2731 3770 6937 6793 2755 6865 +3769 3771 6938 6794 2755 6866 +3770 2779 6939 6795 2755 6867 +6940 6942 2755 3773 2756 6941 +6868 6870 3772 3774 2756 6869 +6796 6798 3773 2757 2756 6797 +2733 3776 6943 6799 2757 6871 +3775 3777 6944 6800 2757 6872 +3776 2781 6945 6801 2757 6873 +6946 6948 2757 3779 2758 6947 +6874 6876 3778 3780 2758 6875 +6802 6804 3779 2759 2758 6803 +2735 3782 6949 6805 2759 6877 +3781 3783 6950 6806 2759 6878 +3782 2783 6951 6807 2759 6879 +6952 6954 2759 3785 2760 6953 +6880 6882 3784 3786 2760 6881 +6808 6810 3785 2761 2760 6809 +2737 3788 6955 6811 2761 6883 +3787 3789 6956 6812 2761 6884 +3788 2785 6957 6813 2761 6885 +6958 6960 2761 3791 2762 6959 +6886 6888 3790 3792 2762 6887 +6814 6816 3791 2763 2762 6815 +2739 3794 6961 6817 2763 6889 +3793 3795 6962 6818 2763 6890 +3794 2787 6963 6819 2763 6891 +6964 6966 2763 3797 2764 6965 +6892 6894 3796 3798 2764 6893 +6820 6822 3797 2765 2764 6821 +2741 3800 6967 6823 2765 6895 +3799 3801 6968 6824 2765 6896 +3800 2789 6969 6825 2765 6897 +6970 6972 2765 3803 2766 6971 +6898 6900 3802 3804 2766 6899 +6826 6828 3803 2767 2766 6827 +2743 3806 6973 6829 2767 6901 +3805 3807 6974 6830 2767 6902 +3806 2791 6975 6831 2767 6903 +6976 6978 2767 3809 2768 6977 +6904 6906 3808 3810 2768 6905 +6832 6834 3809 2769 2768 6833 +2745 3812 6979 6835 2769 6907 +3811 3813 6980 6836 2769 6908 +3812 2793 6981 6837 2769 6909 +6982 6984 2769 3815 2770 6983 +6910 6912 3814 3816 2770 6911 +6838 6840 3815 2771 2770 6839 +2747 3818 6985 6841 2771 6913 +3817 3819 6986 6842 2771 6914 +3818 2795 6987 6843 2771 6915 +6988 6990 2771 3821 2772 6989 +6916 6918 3820 3822 2772 6917 +6844 6846 3821 2773 2772 6845 +2749 3824 6991 6847 2773 6919 +3823 3825 6992 6848 2773 6920 +3824 2797 6993 6849 2773 6921 +6994 6996 2773 3827 2774 6995 +6922 6924 3826 3828 2774 6923 +6850 6852 3827 2775 2774 6851 +2751 3830 6997 6853 2775 6925 +3829 3831 6998 6854 2775 6926 +3830 2799 6999 6855 2775 6927 +2752 3833 7144 7000 2776 7072 +3832 3834 7145 7001 2776 7073 +3833 2800 7146 7002 2776 7074 +7147 7149 2776 3836 2777 7148 +7075 7077 3835 3837 2777 7076 +7003 7005 3836 2778 2777 7004 +2754 3839 7150 7006 2778 7078 +3838 3840 7151 7007 2778 7079 +3839 2802 7152 7008 2778 7080 +7153 7155 2778 3842 2779 7154 +7081 7083 3841 3843 2779 7082 +7009 7011 3842 2780 2779 7010 +2756 3845 7156 7012 2780 7084 +3844 3846 7157 7013 2780 7085 +3845 2804 7158 7014 2780 7086 +7159 7161 2780 3848 2781 7160 +7087 7089 3847 3849 2781 7088 +7015 7017 3848 2782 2781 7016 +2758 3851 7162 7018 2782 7090 +3850 3852 7163 7019 2782 7091 +3851 2806 7164 7020 2782 7092 +7165 7167 2782 3854 2783 7166 +7093 7095 3853 3855 2783 7094 +7021 7023 3854 2784 2783 7022 +2760 3857 7168 7024 2784 7096 +3856 3858 7169 7025 2784 7097 +3857 2808 7170 7026 2784 7098 +7171 7173 2784 3860 2785 7172 +7099 7101 3859 3861 2785 7100 +7027 7029 3860 2786 2785 7028 +2762 3863 7174 7030 2786 7102 +3862 3864 7175 7031 2786 7103 +3863 2810 7176 7032 2786 7104 +7177 7179 2786 3866 2787 7178 +7105 7107 3865 3867 2787 7106 +7033 7035 3866 2788 2787 7034 +2764 3869 7180 7036 2788 7108 +3868 3870 7181 7037 2788 7109 +3869 2812 7182 7038 2788 7110 +7183 7185 2788 3872 2789 7184 +7111 7113 3871 3873 2789 7112 +7039 7041 3872 2790 2789 7040 +2766 3875 7186 7042 2790 7114 +3874 3876 7187 7043 2790 7115 +3875 2814 7188 7044 2790 7116 +7189 7191 2790 3878 2791 7190 +7117 7119 3877 3879 2791 7118 +7045 7047 3878 2792 2791 7046 +2768 3881 7192 7048 2792 7120 +3880 3882 7193 7049 2792 7121 +3881 2816 7194 7050 2792 7122 +7195 7197 2792 3884 2793 7196 +7123 7125 3883 3885 2793 7124 +7051 7053 3884 2794 2793 7052 +2770 3887 7198 7054 2794 7126 +3886 3888 7199 7055 2794 7127 +3887 2818 7200 7056 2794 7128 +7201 7203 2794 3890 2795 7202 +7129 7131 3889 3891 2795 7130 +7057 7059 3890 2796 2795 7058 +2772 3893 7204 7060 2796 7132 +3892 3894 7205 7061 2796 7133 +3893 2820 7206 7062 2796 7134 +7207 7209 2796 3896 2797 7208 +7135 7137 3895 3897 2797 7136 +7063 7065 3896 2798 2797 7064 +2774 3899 7210 7066 2798 7138 +3898 3900 7211 7067 2798 7139 +3899 2822 7212 7068 2798 7140 +7213 7215 2798 3902 2799 7214 +7141 7143 3901 3903 2799 7142 +7069 7071 3902 3903 2799 7070 +7360 7362 3904 3905 2800 7361 +7288 7290 3904 3906 2800 7289 +7216 7218 3905 2801 2800 7217 +2777 3908 7363 7219 2801 7291 +3907 3909 7364 7220 2801 7292 +3908 2825 7365 7221 2801 7293 +7366 7368 2801 3911 2802 7367 +7294 7296 3910 3912 2802 7295 +7222 7224 3911 2803 2802 7223 +2779 3914 7369 7225 2803 7297 +3913 3915 7370 7226 2803 7298 +3914 2827 7371 7227 2803 7299 +7372 7374 2803 3917 2804 7373 +7300 7302 3916 3918 2804 7301 +7228 7230 3917 2805 2804 7229 +2781 3920 7375 7231 2805 7303 +3919 3921 7376 7232 2805 7304 +3920 2829 7377 7233 2805 7305 +7378 7380 2805 3923 2806 7379 +7306 7308 3922 3924 2806 7307 +7234 7236 3923 2807 2806 7235 +2783 3926 7381 7237 2807 7309 +3925 3927 7382 7238 2807 7310 +3926 2831 7383 7239 2807 7311 +7384 7386 2807 3929 2808 7385 +7312 7314 3928 3930 2808 7313 +7240 7242 3929 2809 2808 7241 +2785 3932 7387 7243 2809 7315 +3931 3933 7388 7244 2809 7316 +3932 2833 7389 7245 2809 7317 +7390 7392 2809 3935 2810 7391 +7318 7320 3934 3936 2810 7319 +7246 7248 3935 2811 2810 7247 +2787 3938 7393 7249 2811 7321 +3937 3939 7394 7250 2811 7322 +3938 2835 7395 7251 2811 7323 +7396 7398 2811 3941 2812 7397 +7324 7326 3940 3942 2812 7325 +7252 7254 3941 2813 2812 7253 +2789 3944 7399 7255 2813 7327 +3943 3945 7400 7256 2813 7328 +3944 2837 7401 7257 2813 7329 +7402 7404 2813 3947 2814 7403 +7330 7332 3946 3948 2814 7331 +7258 7260 3947 2815 2814 7259 +2791 3950 7405 7261 2815 7333 +3949 3951 7406 7262 2815 7334 +3950 2839 7407 7263 2815 7335 +7408 7410 2815 3953 2816 7409 +7336 7338 3952 3954 2816 7337 +7264 7266 3953 2817 2816 7265 +2793 3956 7411 7267 2817 7339 +3955 3957 7412 7268 2817 7340 +3956 2841 7413 7269 2817 7341 +7414 7416 2817 3959 2818 7415 +7342 7344 3958 3960 2818 7343 +7270 7272 3959 2819 2818 7271 +2795 3962 7417 7273 2819 7345 +3961 3963 7418 7274 2819 7346 +3962 2843 7419 7275 2819 7347 +7420 7422 2819 3965 2820 7421 +7348 7350 3964 3966 2820 7349 +7276 7278 3965 2821 2820 7277 +2797 3968 7423 7279 2821 7351 +3967 3969 7424 7280 2821 7352 +3968 2845 7425 7281 2821 7353 +7426 7428 2821 3971 2822 7427 +7354 7356 3970 3972 2822 7355 +7282 7284 3971 2823 2822 7283 +2799 3974 7429 7285 2823 7357 +3973 3975 7430 7286 2823 7358 +3974 2847 7431 7287 2823 7359 +2800 3977 7576 7432 2824 7504 +3976 3978 7577 7433 2824 7505 +3977 2848 7578 7434 2824 7506 +7579 7581 2824 3980 2825 7580 +7507 7509 3979 3981 2825 7508 +7435 7437 3980 2826 2825 7436 +2802 3983 7582 7438 2826 7510 +3982 3984 7583 7439 2826 7511 +3983 2850 7584 7440 2826 7512 +7585 7587 2826 3986 2827 7586 +7513 7515 3985 3987 2827 7514 +7441 7443 3986 2828 2827 7442 +2804 3989 7588 7444 2828 7516 +3988 3990 7589 7445 2828 7517 +3989 2852 7590 7446 2828 7518 +7591 7593 2828 3992 2829 7592 +7519 7521 3991 3993 2829 7520 +7447 7449 3992 2830 2829 7448 +2806 3995 7594 7450 2830 7522 +3994 3996 7595 7451 2830 7523 +3995 2854 7596 7452 2830 7524 +7597 7599 2830 3998 2831 7598 +7525 7527 3997 3999 2831 7526 +7453 7455 3998 2832 2831 7454 +2808 4001 7600 7456 2832 7528 +4000 4002 7601 7457 2832 7529 +4001 2856 7602 7458 2832 7530 +7603 7605 2832 4004 2833 7604 +7531 7533 4003 4005 2833 7532 +7459 7461 4004 2834 2833 7460 +2810 4007 7606 7462 2834 7534 +4006 4008 7607 7463 2834 7535 +4007 2858 7608 7464 2834 7536 +7609 7611 2834 4010 2835 7610 +7537 7539 4009 4011 2835 7538 +7465 7467 4010 2836 2835 7466 +2812 4013 7612 7468 2836 7540 +4012 4014 7613 7469 2836 7541 +4013 2860 7614 7470 2836 7542 +7615 7617 2836 4016 2837 7616 +7543 7545 4015 4017 2837 7544 +7471 7473 4016 2838 2837 7472 +2814 4019 7618 7474 2838 7546 +4018 4020 7619 7475 2838 7547 +4019 2862 7620 7476 2838 7548 +7621 7623 2838 4022 2839 7622 +7549 7551 4021 4023 2839 7550 +7477 7479 4022 2840 2839 7478 +2816 4025 7624 7480 2840 7552 +4024 4026 7625 7481 2840 7553 +4025 2864 7626 7482 2840 7554 +7627 7629 2840 4028 2841 7628 +7555 7557 4027 4029 2841 7556 +7483 7485 4028 2842 2841 7484 +2818 4031 7630 7486 2842 7558 +4030 4032 7631 7487 2842 7559 +4031 2866 7632 7488 2842 7560 +7633 7635 2842 4034 2843 7634 +7561 7563 4033 4035 2843 7562 +7489 7491 4034 2844 2843 7490 +2820 4037 7636 7492 2844 7564 +4036 4038 7637 7493 2844 7565 +4037 2868 7638 7494 2844 7566 +7639 7641 2844 4040 2845 7640 +7567 7569 4039 4041 2845 7568 +7495 7497 4040 2846 2845 7496 +2822 4043 7642 7498 2846 7570 +4042 4044 7643 7499 2846 7571 +4043 2870 7644 7500 2846 7572 +7645 7647 2846 4046 2847 7646 +7573 7575 4045 4047 2847 7574 +7501 7503 4046 4047 2847 7502 +7792 7794 4048 4049 2848 7793 +7720 7722 4048 4050 2848 7721 +7648 7650 4049 2849 2848 7649 +2825 4052 7795 7651 2849 7723 +4051 4053 7796 7652 2849 7724 +4052 2873 7797 7653 2849 7725 +7798 7800 2849 4055 2850 7799 +7726 7728 4054 4056 2850 7727 +7654 7656 4055 2851 2850 7655 +2827 4058 7801 7657 2851 7729 +4057 4059 7802 7658 2851 7730 +4058 2875 7803 7659 2851 7731 +7804 7806 2851 4061 2852 7805 +7732 7734 4060 4062 2852 7733 +7660 7662 4061 2853 2852 7661 +2829 4064 7807 7663 2853 7735 +4063 4065 7808 7664 2853 7736 +4064 2877 7809 7665 2853 7737 +7810 7812 2853 4067 2854 7811 +7738 7740 4066 4068 2854 7739 +7666 7668 4067 2855 2854 7667 +2831 4070 7813 7669 2855 7741 +4069 4071 7814 7670 2855 7742 +4070 2879 7815 7671 2855 7743 +7816 7818 2855 4073 2856 7817 +7744 7746 4072 4074 2856 7745 +7672 7674 4073 2857 2856 7673 +2833 4076 7819 7675 2857 7747 +4075 4077 7820 7676 2857 7748 +4076 2881 7821 7677 2857 7749 +7822 7824 2857 4079 2858 7823 +7750 7752 4078 4080 2858 7751 +7678 7680 4079 2859 2858 7679 +2835 4082 7825 7681 2859 7753 +4081 4083 7826 7682 2859 7754 +4082 2883 7827 7683 2859 7755 +7828 7830 2859 4085 2860 7829 +7756 7758 4084 4086 2860 7757 +7684 7686 4085 2861 2860 7685 +2837 4088 7831 7687 2861 7759 +4087 4089 7832 7688 2861 7760 +4088 2885 7833 7689 2861 7761 +7834 7836 2861 4091 2862 7835 +7762 7764 4090 4092 2862 7763 +7690 7692 4091 2863 2862 7691 +2839 4094 7837 7693 2863 7765 +4093 4095 7838 7694 2863 7766 +4094 2887 7839 7695 2863 7767 +7840 7842 2863 4097 2864 7841 +7768 7770 4096 4098 2864 7769 +7696 7698 4097 2865 2864 7697 +2841 4100 7843 7699 2865 7771 +4099 4101 7844 7700 2865 7772 +4100 2889 7845 7701 2865 7773 +7846 7848 2865 4103 2866 7847 +7774 7776 4102 4104 2866 7775 +7702 7704 4103 2867 2866 7703 +2843 4106 7849 7705 2867 7777 +4105 4107 7850 7706 2867 7778 +4106 2891 7851 7707 2867 7779 +7852 7854 2867 4109 2868 7853 +7780 7782 4108 4110 2868 7781 +7708 7710 4109 2869 2868 7709 +2845 4112 7855 7711 2869 7783 +4111 4113 7856 7712 2869 7784 +4112 2893 7857 7713 2869 7785 +7858 7860 2869 4115 2870 7859 +7786 7788 4114 4116 2870 7787 +7714 7716 4115 2871 2870 7715 +2847 4118 7861 7717 2871 7789 +4117 4119 7862 7718 2871 7790 +4118 2895 7863 7719 2871 7791 +2848 4121 8008 7864 2872 7936 +4120 4122 8009 7865 2872 7937 +4121 4122 8010 7866 2872 7938 +8011 8013 2872 4124 2873 8012 +7939 7941 4123 4125 2873 7940 +7867 7869 4124 2874 2873 7868 +2850 4127 8014 7870 2874 7942 +4126 4128 8015 7871 2874 7943 +4127 4128 8016 7872 2874 7944 +8017 8019 2874 4130 2875 8018 +7945 7947 4129 4131 2875 7946 +7873 7875 4130 2876 2875 7874 +2852 4133 8020 7876 2876 7948 +4132 4134 8021 7877 2876 7949 +4133 4134 8022 7878 2876 7950 +8023 8025 2876 4136 2877 8024 +7951 7953 4135 4137 2877 7952 +7879 7881 4136 2878 2877 7880 +2854 4139 8026 7882 2878 7954 +4138 4140 8027 7883 2878 7955 +4139 4140 8028 7884 2878 7956 +8029 8031 2878 4142 2879 8030 +7957 7959 4141 4143 2879 7958 +7885 7887 4142 2880 2879 7886 +2856 4145 8032 7888 2880 7960 +4144 4146 8033 7889 2880 7961 +4145 4146 8034 7890 2880 7962 +8035 8037 2880 4148 2881 8036 +7963 7965 4147 4149 2881 7964 +7891 7893 4148 2882 2881 7892 +2858 4151 8038 7894 2882 7966 +4150 4152 8039 7895 2882 7967 +4151 4152 8040 7896 2882 7968 +8041 8043 2882 4154 2883 8042 +7969 7971 4153 4155 2883 7970 +7897 7899 4154 2884 2883 7898 +2860 4157 8044 7900 2884 7972 +4156 4158 8045 7901 2884 7973 +4157 4158 8046 7902 2884 7974 +8047 8049 2884 4160 2885 8048 +7975 7977 4159 4161 2885 7976 +7903 7905 4160 2886 2885 7904 +2862 4163 8050 7906 2886 7978 +4162 4164 8051 7907 2886 7979 +4163 4164 8052 7908 2886 7980 +8053 8055 2886 4166 2887 8054 +7981 7983 4165 4167 2887 7982 +7909 7911 4166 2888 2887 7910 +2864 4169 8056 7912 2888 7984 +4168 4170 8057 7913 2888 7985 +4169 4170 8058 7914 2888 7986 +8059 8061 2888 4172 2889 8060 +7987 7989 4171 4173 2889 7988 +7915 7917 4172 2890 2889 7916 +2866 4175 8062 7918 2890 7990 +4174 4176 8063 7919 2890 7991 +4175 4176 8064 7920 2890 7992 +8065 8067 2890 4178 2891 8066 +7993 7995 4177 4179 2891 7994 +7921 7923 4178 2892 2891 7922 +2868 4181 8068 7924 2892 7996 +4180 4182 8069 7925 2892 7997 +4181 4182 8070 7926 2892 7998 +8071 8073 2892 4184 2893 8072 +7999 8001 4183 4185 2893 8000 +7927 7929 4184 2894 2893 7928 +2870 4187 8074 7930 2894 8002 +4186 4188 8075 7931 2894 8003 +4187 4188 8076 7932 2894 8004 +8077 8079 2894 4190 2895 8078 +8005 8007 4189 4191 2895 8006 +7933 7935 4190 4191 2895 7934 +4192 4195 4193 4205 2898 8088 +4193 4194 4196 4192 2897 8083 +4193 4199 4197 4195 2897 8082 +4192 4200 4194 4214 2898 8087 +4196 4197 4196 4193 2896 8080 +4196 4198 4197 4194 2896 8081 +4197 4217 4198 4199 2896 8084 +4194 4208 4198 4200 2897 8085 +4195 4201 4199 4225 2898 8086 +4200 4202 4208 4220 2899 8091 +4201 4203 4209 4221 2900 8098 +4202 4228 4210 4222 2901 8107 +4227 4213 4211 4235 2904 8112 +4192 4206 4214 4205 2907 8095 +4205 4207 4215 4206 2907 8104 +4206 4238 4216 4207 2907 8115 +4199 4209 4217 4201 2899 8090 +4208 4210 4218 4202 2900 8097 +4209 4241 4219 4203 2901 8106 +4226 4212 4220 4204 2903 8101 +4211 4223 4221 4213 2903 8100 +4204 4224 4212 4250 2904 8111 +4195 4215 4225 4205 2906 8094 +4214 4216 4226 4206 2906 8103 +4215 4253 4227 4207 2906 8114 +4198 4218 4217 4208 2899 8089 +4217 4219 4218 4209 2900 8096 +4218 4256 4219 4210 2901 8105 +4225 4221 4201 4211 2902 8092 +4220 4222 4202 4212 2902 8099 +4221 4259 4203 4223 2902 8108 +4212 4244 4222 4224 2903 8109 +4213 4231 4223 4267 2904 8110 +4200 4226 4220 4214 2905 8093 +4225 4227 4211 4215 2905 8102 +4226 4270 4204 4216 2905 8113 +4203 4229 4241 4259 2910 8118 +4228 4230 4242 4260 2910 8131 +4229 4273 4243 4261 2910 8146 +4224 4232 4244 4262 2911 8121 +4231 4233 4245 4263 2912 8134 +4232 4276 4246 4264 2913 8149 +4269 4249 4247 4283 2916 8154 +4204 4236 4250 4270 2919 8125 +4235 4237 4251 4271 2919 8140 +4236 4286 4252 4272 2919 8157 +4207 4239 4253 4238 2920 8128 +4238 4240 4254 4239 2921 8143 +4239 4289 4255 4240 2922 8160 +4210 4242 4256 4228 2909 8117 +4241 4243 4257 4229 2909 8130 +4242 4292 4258 4230 2909 8145 +4223 4245 4259 4231 2911 8120 +4244 4246 4260 4232 2912 8133 +4245 4295 4261 4233 2913 8148 +4268 4248 4262 4234 2915 8137 +4247 4265 4263 4249 2915 8136 +4234 4266 4248 4304 2916 8153 +4213 4251 4267 4235 2918 8124 +4250 4252 4268 4236 2918 8139 +4251 4307 4269 4237 2918 8156 +4216 4254 4270 4238 2920 8127 +4253 4255 4271 4239 2921 8142 +4254 4310 4272 4240 2922 8159 +4219 4257 4256 4241 2908 8116 +4256 4258 4257 4242 2908 8129 +4257 4313 4258 4243 2908 8144 +4222 4260 4228 4244 2911 8119 +4259 4261 4229 4245 2912 8132 +4260 4316 4230 4246 2913 8147 +4267 4263 4231 4247 2914 8122 +4262 4264 4232 4248 2914 8135 +4263 4319 4233 4265 2914 8150 +4248 4298 4264 4266 2915 8151 +4249 4279 4265 4327 2916 8152 +4224 4268 4262 4250 2917 8123 +4267 4269 4247 4251 2917 8138 +4268 4330 4234 4252 2917 8155 +4227 4271 4235 4253 2920 8126 +4270 4272 4236 4254 2921 8141 +4271 4333 4237 4255 2922 8158 +4230 4274 4292 4316 2923 8163 +4273 4275 4293 4317 2924 8182 +4274 4336 4294 4318 2925 8203 +4233 4277 4295 4319 2928 8166 +4276 4278 4296 4320 2928 8185 +4277 4339 4297 4321 2928 8206 +4266 4280 4298 4322 2929 8169 +4279 4281 4299 4323 2930 8188 +4280 4342 4300 4324 2931 8209 +4329 4303 4301 4349 2934 8214 +4234 4284 4304 4330 2937 8173 +4283 4285 4305 4331 2937 8194 +4284 4352 4306 4332 2937 8217 +4237 4287 4307 4333 2938 8176 +4286 4288 4308 4334 2939 8197 +4287 4355 4309 4335 2940 8220 +4240 4290 4310 4289 2943 8179 +4289 4291 4311 4290 2943 8200 +4290 4358 4312 4291 2943 8223 +4243 4293 4313 4273 2923 8162 +4292 4294 4314 4274 2924 8181 +4293 4361 4315 4275 2925 8202 +4246 4296 4316 4276 2927 8165 +4295 4297 4317 4277 2927 8184 +4296 4364 4318 4278 2927 8205 +4265 4299 4319 4279 2929 8168 +4298 4300 4320 4280 2930 8187 +4299 4367 4321 4281 2931 8208 +4328 4302 4322 4282 2933 8191 +4301 4325 4323 4303 2933 8190 +4282 4326 4302 4376 2934 8213 +4249 4305 4327 4283 2936 8172 +4304 4306 4328 4284 2936 8193 +4305 4379 4329 4285 2936 8216 +4252 4308 4330 4286 2938 8175 +4307 4309 4331 4287 2939 8196 +4308 4382 4332 4288 2940 8219 +4255 4311 4333 4289 2942 8178 +4310 4312 4334 4290 2942 8199 +4311 4385 4335 4291 2942 8222 +4258 4314 4313 4292 2923 8161 +4313 4315 4314 4293 2924 8180 +4314 4388 4315 4294 2925 8201 +4261 4317 4273 4295 2926 8164 +4316 4318 4274 4296 2926 8183 +4317 4391 4275 4297 2926 8204 +4264 4320 4276 4298 2929 8167 +4319 4321 4277 4299 2930 8186 +4320 4394 4278 4300 2931 8207 +4327 4323 4279 4301 2932 8170 +4322 4324 4280 4302 2932 8189 +4323 4397 4281 4325 2932 8210 +4302 4370 4324 4326 2933 8211 +4303 4345 4325 4405 2934 8212 +4266 4328 4322 4304 2935 8171 +4327 4329 4301 4305 2935 8192 +4328 4408 4282 4306 2935 8215 +4269 4331 4283 4307 2938 8174 +4330 4332 4284 4308 2939 8195 +4331 4411 4285 4309 2940 8218 +4272 4334 4286 4310 2941 8177 +4333 4335 4287 4311 2941 8198 +4334 4414 4288 4312 2941 8221 +4275 4337 4361 4391 2946 8226 +4336 4338 4362 4392 2946 8251 +4337 4417 4363 4393 2946 8278 +4278 4340 4364 4394 2947 8229 +4339 4341 4365 4395 2948 8254 +4340 4420 4366 4396 2949 8281 +4281 4343 4367 4397 2952 8232 +4342 4344 4368 4398 2952 8257 +4343 4423 4369 4399 2952 8284 +4326 4346 4370 4400 2953 8235 +4345 4347 4371 4401 2954 8260 +4346 4426 4372 4402 2955 8287 +4407 4375 4373 4433 2958 8292 +4282 4350 4376 4408 2961 8239 +4349 4351 4377 4409 2961 8266 +4350 4436 4378 4410 2961 8295 +4285 4353 4379 4411 2962 8242 +4352 4354 4380 4412 2963 8269 +4353 4439 4381 4413 2964 8298 +4288 4356 4382 4414 2967 8245 +4355 4357 4383 4415 2967 8272 +4356 4442 4384 4416 2967 8301 +4291 4359 4385 4358 2968 8248 +4358 4360 4386 4359 2969 8275 +4359 4445 4387 4360 2970 8304 +4294 4362 4388 4336 2945 8225 +4361 4363 4389 4337 2945 8250 +4362 4448 4390 4338 2945 8277 +4297 4365 4391 4339 2947 8228 +4364 4366 4392 4340 2948 8253 +4365 4451 4393 4341 2949 8280 +4300 4368 4394 4342 2951 8231 +4367 4369 4395 4343 2951 8256 +4368 4454 4396 4344 2951 8283 +4325 4371 4397 4345 2953 8234 +4370 4372 4398 4346 2954 8259 +4371 4457 4399 4347 2955 8286 +4406 4374 4400 4348 2957 8263 +4373 4403 4401 4375 2957 8262 +4348 4404 4374 4466 2958 8291 +4303 4377 4405 4349 2960 8238 +4376 4378 4406 4350 2960 8265 +4377 4469 4407 4351 2960 8294 +4306 4380 4408 4352 2962 8241 +4379 4381 4409 4353 2963 8268 +4380 4472 4410 4354 2964 8297 +4309 4383 4411 4355 2966 8244 +4382 4384 4412 4356 2966 8271 +4383 4475 4413 4357 2966 8300 +4312 4386 4414 4358 2968 8247 +4385 4387 4415 4359 2969 8274 +4386 4478 4416 4360 2970 8303 +4315 4389 4388 4361 2944 8224 +4388 4390 4389 4362 2944 8249 +4389 4481 4390 4363 2944 8276 +4318 4392 4336 4364 2947 8227 +4391 4393 4337 4365 2948 8252 +4392 4484 4338 4366 2949 8279 +4321 4395 4339 4367 2950 8230 +4394 4396 4340 4368 2950 8255 +4395 4487 4341 4369 2950 8282 +4324 4398 4342 4370 2953 8233 +4397 4399 4343 4371 2954 8258 +4398 4490 4344 4372 2955 8285 +4405 4401 4345 4373 2956 8236 +4400 4402 4346 4374 2956 8261 +4401 4493 4347 4403 2956 8288 +4374 4460 4402 4404 2957 8289 +4375 4429 4403 4501 2958 8290 +4326 4406 4400 4376 2959 8237 +4405 4407 4373 4377 2959 8264 +4406 4504 4348 4378 2959 8293 +4329 4409 4349 4379 2962 8240 +4408 4410 4350 4380 2963 8267 +4409 4507 4351 4381 2964 8296 +4332 4412 4352 4382 2965 8243 +4411 4413 4353 4383 2965 8270 +4412 4510 4354 4384 2965 8299 +4335 4415 4355 4385 2968 8246 +4414 4416 4356 4386 2969 8273 +4415 4513 4357 4387 2970 8302 +4338 4418 4448 4484 2971 8307 +4417 4419 4449 4485 2972 8338 +4418 4516 4450 4486 2973 8371 +4341 4421 4451 4487 2976 8310 +4420 4422 4452 4488 2976 8341 +4421 4519 4453 4489 2976 8374 +4344 4424 4454 4490 2977 8313 +4423 4425 4455 4491 2978 8344 +4424 4522 4456 4492 2979 8377 +4347 4427 4457 4493 2982 8316 +4426 4428 4458 4494 2982 8347 +4427 4525 4459 4495 2982 8380 +4404 4430 4460 4496 2983 8319 +4429 4431 4461 4497 2984 8350 +4430 4528 4462 4498 2985 8383 +4503 4465 4463 4535 2988 8388 +4348 4434 4466 4504 2991 8323 +4433 4435 4467 4505 2991 8356 +4434 4538 4468 4506 2991 8391 +4351 4437 4469 4507 2992 8326 +4436 4438 4470 4508 2993 8359 +4437 4541 4471 4509 2994 8394 +4354 4440 4472 4510 2997 8329 +4439 4441 4473 4511 2997 8362 +4440 4544 4474 4512 2997 8397 +4357 4443 4475 4513 2998 8332 +4442 4444 4476 4514 2999 8365 +4443 4547 4477 4515 3000 8400 +4360 4446 4478 4445 3003 8335 +4445 4447 4479 4446 3003 8368 +4446 4550 4480 4447 3003 8403 +4363 4449 4481 4417 2971 8306 +4448 4450 4482 4418 2972 8337 +4449 4553 4483 4419 2973 8370 +4366 4452 4484 4420 2975 8309 +4451 4453 4485 4421 2975 8340 +4452 4556 4486 4422 2975 8373 +4369 4455 4487 4423 2977 8312 +4454 4456 4488 4424 2978 8343 +4455 4559 4489 4425 2979 8376 +4372 4458 4490 4426 2981 8315 +4457 4459 4491 4427 2981 8346 +4458 4562 4492 4428 2981 8379 +4403 4461 4493 4429 2983 8318 +4460 4462 4494 4430 2984 8349 +4461 4565 4495 4431 2985 8382 +4502 4464 4496 4432 2987 8353 +4463 4499 4497 4465 2987 8352 +4432 4500 4464 4574 2988 8387 +4375 4467 4501 4433 2990 8322 +4466 4468 4502 4434 2990 8355 +4467 4577 4503 4435 2990 8390 +4378 4470 4504 4436 2992 8325 +4469 4471 4505 4437 2993 8358 +4470 4580 4506 4438 2994 8393 +4381 4473 4507 4439 2996 8328 +4472 4474 4508 4440 2996 8361 +4473 4583 4509 4441 2996 8396 +4384 4476 4510 4442 2998 8331 +4475 4477 4511 4443 2999 8364 +4476 4586 4512 4444 3000 8399 +4387 4479 4513 4445 3002 8334 +4478 4480 4514 4446 3002 8367 +4479 4589 4515 4447 3002 8402 +4390 4482 4481 4448 2971 8305 +4481 4483 4482 4449 2972 8336 +4482 4592 4483 4450 2973 8369 +4393 4485 4417 4451 2974 8308 +4484 4486 4418 4452 2974 8339 +4485 4595 4419 4453 2974 8372 +4396 4488 4420 4454 2977 8311 +4487 4489 4421 4455 2978 8342 +4488 4598 4422 4456 2979 8375 +4399 4491 4423 4457 2980 8314 +4490 4492 4424 4458 2980 8345 +4491 4601 4425 4459 2980 8378 +4402 4494 4426 4460 2983 8317 +4493 4495 4427 4461 2984 8348 +4494 4604 4428 4462 2985 8381 +4501 4497 4429 4463 2986 8320 +4496 4498 4430 4464 2986 8351 +4497 4607 4431 4499 2986 8384 +4464 4568 4498 4500 2987 8385 +4465 4531 4499 4615 2988 8386 +4404 4502 4496 4466 2989 8321 +4501 4503 4463 4467 2989 8354 +4502 4618 4432 4468 2989 8389 +4407 4505 4433 4469 2992 8324 +4504 4506 4434 4470 2993 8357 +4505 4621 4435 4471 2994 8392 +4410 4508 4436 4472 2995 8327 +4507 4509 4437 4473 2995 8360 +4508 4624 4438 4474 2995 8395 +4413 4511 4439 4475 2998 8330 +4510 4512 4440 4476 2999 8363 +4511 4627 4441 4477 3000 8398 +4416 4514 4442 4478 3001 8333 +4513 4515 4443 4479 3001 8366 +4514 4630 4444 4480 3001 8401 +4419 4517 4553 4595 3006 8406 +4516 4518 4554 4596 3006 8443 +4517 4633 4555 4597 3006 8482 +4422 4520 4556 4598 3007 8409 +4519 4521 4557 4599 3008 8446 +4520 4636 4558 4600 3009 8485 +4425 4523 4559 4601 3012 8412 +4522 4524 4560 4602 3012 8449 +4523 4639 4561 4603 3012 8488 +4428 4526 4562 4604 3013 8415 +4525 4527 4563 4605 3014 8452 +4526 4642 4564 4606 3015 8491 +4431 4529 4565 4607 3018 8418 +4528 4530 4566 4608 3018 8455 +4529 4645 4567 4609 3018 8494 +4500 4532 4568 4610 3019 8421 +4531 4533 4569 4611 3020 8458 +4532 4648 4570 4612 3021 8497 +4617 4573 4571 4655 3024 8502 +4432 4536 4574 4618 3027 8425 +4535 4537 4575 4619 3027 8464 +4536 4658 4576 4620 3027 8505 +4435 4539 4577 4621 3028 8428 +4538 4540 4578 4622 3029 8467 +4539 4661 4579 4623 3030 8508 +4438 4542 4580 4624 3033 8431 +4541 4543 4581 4625 3033 8470 +4542 4664 4582 4626 3033 8511 +4441 4545 4583 4627 3034 8434 +4544 4546 4584 4628 3035 8473 +4545 4667 4585 4629 3036 8514 +4444 4548 4586 4630 3039 8437 +4547 4549 4587 4631 3039 8476 +4548 4670 4588 4632 3039 8517 +4447 4551 4589 4550 3040 8440 +4550 4552 4590 4551 3041 8479 +4551 4673 4591 4552 3042 8520 +4450 4554 4592 4516 3005 8405 +4553 4555 4593 4517 3005 8442 +4554 4676 4594 4518 3005 8481 +4453 4557 4595 4519 3007 8408 +4556 4558 4596 4520 3008 8445 +4557 4679 4597 4521 3009 8484 +4456 4560 4598 4522 3011 8411 +4559 4561 4599 4523 3011 8448 +4560 4682 4600 4524 3011 8487 +4459 4563 4601 4525 3013 8414 +4562 4564 4602 4526 3014 8451 +4563 4685 4603 4527 3015 8490 +4462 4566 4604 4528 3017 8417 +4565 4567 4605 4529 3017 8454 +4566 4688 4606 4530 3017 8493 +4499 4569 4607 4531 3019 8420 +4568 4570 4608 4532 3020 8457 +4569 4691 4609 4533 3021 8496 +4616 4572 4610 4534 3023 8461 +4571 4613 4611 4573 3023 8460 +4534 4614 4572 4700 3024 8501 +4465 4575 4615 4535 3026 8424 +4574 4576 4616 4536 3026 8463 +4575 4703 4617 4537 3026 8504 +4468 4578 4618 4538 3028 8427 +4577 4579 4619 4539 3029 8466 +4578 4706 4620 4540 3030 8507 +4471 4581 4621 4541 3032 8430 +4580 4582 4622 4542 3032 8469 +4581 4709 4623 4543 3032 8510 +4474 4584 4624 4544 3034 8433 +4583 4585 4625 4545 3035 8472 +4584 4712 4626 4546 3036 8513 +4477 4587 4627 4547 3038 8436 +4586 4588 4628 4548 3038 8475 +4587 4715 4629 4549 3038 8516 +4480 4590 4630 4550 3040 8439 +4589 4591 4631 4551 3041 8478 +4590 4718 4632 4552 3042 8519 +4483 4593 4592 4553 3004 8404 +4592 4594 4593 4554 3004 8441 +4593 4721 4594 4555 3004 8480 +4486 4596 4516 4556 3007 8407 +4595 4597 4517 4557 3008 8444 +4596 4724 4518 4558 3009 8483 +4489 4599 4519 4559 3010 8410 +4598 4600 4520 4560 3010 8447 +4599 4727 4521 4561 3010 8486 +4492 4602 4522 4562 3013 8413 +4601 4603 4523 4563 3014 8450 +4602 4730 4524 4564 3015 8489 +4495 4605 4525 4565 3016 8416 +4604 4606 4526 4566 3016 8453 +4605 4733 4527 4567 3016 8492 +4498 4608 4528 4568 3019 8419 +4607 4609 4529 4569 3020 8456 +4608 4736 4530 4570 3021 8495 +4615 4611 4531 4571 3022 8422 +4610 4612 4532 4572 3022 8459 +4611 4739 4533 4613 3022 8498 +4572 4694 4612 4614 3023 8499 +4573 4651 4613 4747 3024 8500 +4500 4616 4610 4574 3025 8423 +4615 4617 4571 4575 3025 8462 +4616 4750 4534 4576 3025 8503 +4503 4619 4535 4577 3028 8426 +4618 4620 4536 4578 3029 8465 +4619 4753 4537 4579 3030 8506 +4506 4622 4538 4580 3031 8429 +4621 4623 4539 4581 3031 8468 +4622 4756 4540 4582 3031 8509 +4509 4625 4541 4583 3034 8432 +4624 4626 4542 4584 3035 8471 +4625 4759 4543 4585 3036 8512 +4512 4628 4544 4586 3037 8435 +4627 4629 4545 4587 3037 8474 +4628 4762 4546 4588 3037 8515 +4515 4631 4547 4589 3040 8438 +4630 4632 4548 4590 3041 8477 +4631 4765 4549 4591 3042 8518 +4518 4634 4676 4724 3043 8523 +4633 4635 4677 4725 3044 8566 +4634 4768 4678 4726 3045 8611 +4521 4637 4679 4727 3048 8526 +4636 4638 4680 4728 3048 8569 +4637 4771 4681 4729 3048 8614 +4524 4640 4682 4730 3049 8529 +4639 4641 4683 4731 3050 8572 +4640 4774 4684 4732 3051 8617 +4527 4643 4685 4733 3054 8532 +4642 4644 4686 4734 3054 8575 +4643 4777 4687 4735 3054 8620 +4530 4646 4688 4736 3055 8535 +4645 4647 4689 4737 3056 8578 +4646 4780 4690 4738 3057 8623 +4533 4649 4691 4739 3060 8538 +4648 4650 4692 4740 3060 8581 +4649 4783 4693 4741 3060 8626 +4614 4652 4694 4742 3061 8541 +4651 4653 4695 4743 3062 8584 +4652 4786 4696 4744 3063 8629 +4749 4699 4697 4793 3066 8634 +4534 4656 4700 4750 3069 8545 +4655 4657 4701 4751 3069 8590 +4656 4796 4702 4752 3069 8637 +4537 4659 4703 4753 3070 8548 +4658 4660 4704 4754 3071 8593 +4659 4799 4705 4755 3072 8640 +4540 4662 4706 4756 3075 8551 +4661 4663 4707 4757 3075 8596 +4662 4802 4708 4758 3075 8643 +4543 4665 4709 4759 3076 8554 +4664 4666 4710 4760 3077 8599 +4665 4805 4711 4761 3078 8646 +4546 4668 4712 4762 3081 8557 +4667 4669 4713 4763 3081 8602 +4668 4808 4714 4764 3081 8649 +4549 4671 4715 4765 3082 8560 +4670 4672 4716 4766 3083 8605 +4671 4811 4717 4767 3084 8652 +4552 4674 4718 4673 3087 8563 +4673 4675 4719 4674 3087 8608 +4674 4814 4720 4675 3087 8655 +4555 4677 4721 4633 3043 8522 +4676 4678 4722 4634 3044 8565 +4677 4817 4723 4635 3045 8610 +4558 4680 4724 4636 3047 8525 +4679 4681 4725 4637 3047 8568 +4680 4820 4726 4638 3047 8613 +4561 4683 4727 4639 3049 8528 +4682 4684 4728 4640 3050 8571 +4683 4823 4729 4641 3051 8616 +4564 4686 4730 4642 3053 8531 +4685 4687 4731 4643 3053 8574 +4686 4826 4732 4644 3053 8619 +4567 4689 4733 4645 3055 8534 +4688 4690 4734 4646 3056 8577 +4689 4829 4735 4647 3057 8622 +4570 4692 4736 4648 3059 8537 +4691 4693 4737 4649 3059 8580 +4692 4832 4738 4650 3059 8625 +4613 4695 4739 4651 3061 8540 +4694 4696 4740 4652 3062 8583 +4695 4835 4741 4653 3063 8628 +4748 4698 4742 4654 3065 8587 +4697 4745 4743 4699 3065 8586 +4654 4746 4698 4844 3066 8633 +4573 4701 4747 4655 3068 8544 +4700 4702 4748 4656 3068 8589 +4701 4847 4749 4657 3068 8636 +4576 4704 4750 4658 3070 8547 +4703 4705 4751 4659 3071 8592 +4704 4850 4752 4660 3072 8639 +4579 4707 4753 4661 3074 8550 +4706 4708 4754 4662 3074 8595 +4707 4853 4755 4663 3074 8642 +4582 4710 4756 4664 3076 8553 +4709 4711 4757 4665 3077 8598 +4710 4856 4758 4666 3078 8645 +4585 4713 4759 4667 3080 8556 +4712 4714 4760 4668 3080 8601 +4713 4859 4761 4669 3080 8648 +4588 4716 4762 4670 3082 8559 +4715 4717 4763 4671 3083 8604 +4716 4862 4764 4672 3084 8651 +4591 4719 4765 4673 3086 8562 +4718 4720 4766 4674 3086 8607 +4719 4865 4767 4675 3086 8654 +4594 4722 4721 4676 3043 8521 +4721 4723 4722 4677 3044 8564 +4722 4868 4723 4678 3045 8609 +4597 4725 4633 4679 3046 8524 +4724 4726 4634 4680 3046 8567 +4725 4871 4635 4681 3046 8612 +4600 4728 4636 4682 3049 8527 +4727 4729 4637 4683 3050 8570 +4728 4874 4638 4684 3051 8615 +4603 4731 4639 4685 3052 8530 +4730 4732 4640 4686 3052 8573 +4731 4877 4641 4687 3052 8618 +4606 4734 4642 4688 3055 8533 +4733 4735 4643 4689 3056 8576 +4734 4880 4644 4690 3057 8621 +4609 4737 4645 4691 3058 8536 +4736 4738 4646 4692 3058 8579 +4737 4883 4647 4693 3058 8624 +4612 4740 4648 4694 3061 8539 +4739 4741 4649 4695 3062 8582 +4740 4886 4650 4696 3063 8627 +4747 4743 4651 4697 3064 8542 +4742 4744 4652 4698 3064 8585 +4743 4889 4653 4745 3064 8630 +4698 4838 4744 4746 3065 8631 +4699 4789 4745 4897 3066 8632 +4614 4748 4742 4700 3067 8543 +4747 4749 4697 4701 3067 8588 +4748 4900 4654 4702 3067 8635 +4617 4751 4655 4703 3070 8546 +4750 4752 4656 4704 3071 8591 +4751 4903 4657 4705 3072 8638 +4620 4754 4658 4706 3073 8549 +4753 4755 4659 4707 3073 8594 +4754 4906 4660 4708 3073 8641 +4623 4757 4661 4709 3076 8552 +4756 4758 4662 4710 3077 8597 +4757 4909 4663 4711 3078 8644 +4626 4760 4664 4712 3079 8555 +4759 4761 4665 4713 3079 8600 +4760 4912 4666 4714 3079 8647 +4629 4763 4667 4715 3082 8558 +4762 4764 4668 4716 3083 8603 +4763 4915 4669 4717 3084 8650 +4632 4766 4670 4718 3085 8561 +4765 4767 4671 4719 3085 8606 +4766 4918 4672 4720 3085 8653 +4635 4769 4817 4871 3090 8658 +4768 4770 4818 4872 3090 8707 +4769 4921 4819 4873 3090 8758 +4638 4772 4820 4874 3091 8661 +4771 4773 4821 4875 3092 8710 +4772 4924 4822 4876 3093 8761 +4641 4775 4823 4877 3096 8664 +4774 4776 4824 4878 3096 8713 +4775 4927 4825 4879 3096 8764 +4644 4778 4826 4880 3097 8667 +4777 4779 4827 4881 3098 8716 +4778 4930 4828 4882 3099 8767 +4647 4781 4829 4883 3102 8670 +4780 4782 4830 4884 3102 8719 +4781 4933 4831 4885 3102 8770 +4650 4784 4832 4886 3103 8673 +4783 4785 4833 4887 3104 8722 +4784 4936 4834 4888 3105 8773 +4653 4787 4835 4889 3108 8676 +4786 4788 4836 4890 3108 8725 +4787 4939 4837 4891 3108 8776 +4746 4790 4838 4892 3109 8679 +4789 4791 4839 4893 3110 8728 +4790 4942 4840 4894 3111 8779 +4899 4843 4841 4949 3114 8784 +4654 4794 4844 4900 3117 8683 +4793 4795 4845 4901 3117 8734 +4794 4952 4846 4902 3117 8787 +4657 4797 4847 4903 3118 8686 +4796 4798 4848 4904 3119 8737 +4797 4955 4849 4905 3120 8790 +4660 4800 4850 4906 3123 8689 +4799 4801 4851 4907 3123 8740 +4800 4958 4852 4908 3123 8793 +4663 4803 4853 4909 3124 8692 +4802 4804 4854 4910 3125 8743 +4803 4961 4855 4911 3126 8796 +4666 4806 4856 4912 3129 8695 +4805 4807 4857 4913 3129 8746 +4806 4964 4858 4914 3129 8799 +4669 4809 4859 4915 3130 8698 +4808 4810 4860 4916 3131 8749 +4809 4967 4861 4917 3132 8802 +4672 4812 4862 4918 3135 8701 +4811 4813 4863 4919 3135 8752 +4812 4970 4864 4920 3135 8805 +4675 4815 4865 4814 3136 8704 +4814 4816 4866 4815 3137 8755 +4815 4973 4867 4816 3138 8808 +4678 4818 4868 4768 3089 8657 +4817 4819 4869 4769 3089 8706 +4818 4976 4870 4770 3089 8757 +4681 4821 4871 4771 3091 8660 +4820 4822 4872 4772 3092 8709 +4821 4979 4873 4773 3093 8760 +4684 4824 4874 4774 3095 8663 +4823 4825 4875 4775 3095 8712 +4824 4982 4876 4776 3095 8763 +4687 4827 4877 4777 3097 8666 +4826 4828 4878 4778 3098 8715 +4827 4985 4879 4779 3099 8766 +4690 4830 4880 4780 3101 8669 +4829 4831 4881 4781 3101 8718 +4830 4988 4882 4782 3101 8769 +4693 4833 4883 4783 3103 8672 +4832 4834 4884 4784 3104 8721 +4833 4991 4885 4785 3105 8772 +4696 4836 4886 4786 3107 8675 +4835 4837 4887 4787 3107 8724 +4836 4994 4888 4788 3107 8775 +4745 4839 4889 4789 3109 8678 +4838 4840 4890 4790 3110 8727 +4839 4997 4891 4791 3111 8778 +4898 4842 4892 4792 3113 8731 +4841 4895 4893 4843 3113 8730 +4792 4896 4842 5006 3114 8783 +4699 4845 4897 4793 3116 8682 +4844 4846 4898 4794 3116 8733 +4845 5009 4899 4795 3116 8786 +4702 4848 4900 4796 3118 8685 +4847 4849 4901 4797 3119 8736 +4848 5012 4902 4798 3120 8789 +4705 4851 4903 4799 3122 8688 +4850 4852 4904 4800 3122 8739 +4851 5015 4905 4801 3122 8792 +4708 4854 4906 4802 3124 8691 +4853 4855 4907 4803 3125 8742 +4854 5018 4908 4804 3126 8795 +4711 4857 4909 4805 3128 8694 +4856 4858 4910 4806 3128 8745 +4857 5021 4911 4807 3128 8798 +4714 4860 4912 4808 3130 8697 +4859 4861 4913 4809 3131 8748 +4860 5024 4914 4810 3132 8801 +4717 4863 4915 4811 3134 8700 +4862 4864 4916 4812 3134 8751 +4863 5027 4917 4813 3134 8804 +4720 4866 4918 4814 3136 8703 +4865 4867 4919 4815 3137 8754 +4866 5030 4920 4816 3138 8807 +4723 4869 4868 4817 3088 8656 +4868 4870 4869 4818 3088 8705 +4869 5033 4870 4819 3088 8756 +4726 4872 4768 4820 3091 8659 +4871 4873 4769 4821 3092 8708 +4872 5036 4770 4822 3093 8759 +4729 4875 4771 4823 3094 8662 +4874 4876 4772 4824 3094 8711 +4875 5039 4773 4825 3094 8762 +4732 4878 4774 4826 3097 8665 +4877 4879 4775 4827 3098 8714 +4878 5042 4776 4828 3099 8765 +4735 4881 4777 4829 3100 8668 +4880 4882 4778 4830 3100 8717 +4881 5045 4779 4831 3100 8768 +4738 4884 4780 4832 3103 8671 +4883 4885 4781 4833 3104 8720 +4884 5048 4782 4834 3105 8771 +4741 4887 4783 4835 3106 8674 +4886 4888 4784 4836 3106 8723 +4887 5051 4785 4837 3106 8774 +4744 4890 4786 4838 3109 8677 +4889 4891 4787 4839 3110 8726 +4890 5054 4788 4840 3111 8777 +4897 4893 4789 4841 3112 8680 +4892 4894 4790 4842 3112 8729 +4893 5057 4791 4895 3112 8780 +4842 5000 4894 4896 3113 8781 +4843 4945 4895 5065 3114 8782 +4746 4898 4892 4844 3115 8681 +4897 4899 4841 4845 3115 8732 +4898 5068 4792 4846 3115 8785 +4749 4901 4793 4847 3118 8684 +4900 4902 4794 4848 3119 8735 +4901 5071 4795 4849 3120 8788 +4752 4904 4796 4850 3121 8687 +4903 4905 4797 4851 3121 8738 +4904 5074 4798 4852 3121 8791 +4755 4907 4799 4853 3124 8690 +4906 4908 4800 4854 3125 8741 +4907 5077 4801 4855 3126 8794 +4758 4910 4802 4856 3127 8693 +4909 4911 4803 4857 3127 8744 +4910 5080 4804 4858 3127 8797 +4761 4913 4805 4859 3130 8696 +4912 4914 4806 4860 3131 8747 +4913 5083 4807 4861 3132 8800 +4764 4916 4808 4862 3133 8699 +4915 4917 4809 4863 3133 8750 +4916 5086 4810 4864 3133 8803 +4767 4919 4811 4865 3136 8702 +4918 4920 4812 4866 3137 8753 +4919 5089 4813 4867 3138 8806 +4770 4922 4976 5036 3139 8811 +4921 4923 4977 5037 3140 8866 +4922 5092 4978 5038 3141 8923 +4773 4925 4979 5039 3144 8814 +4924 4926 4980 5040 3144 8869 +4925 5095 4981 5041 3144 8926 +4776 4928 4982 5042 3145 8817 +4927 4929 4983 5043 3146 8872 +4928 5098 4984 5044 3147 8929 +4779 4931 4985 5045 3150 8820 +4930 4932 4986 5046 3150 8875 +4931 5101 4987 5047 3150 8932 +4782 4934 4988 5048 3151 8823 +4933 4935 4989 5049 3152 8878 +4934 5104 4990 5050 3153 8935 +4785 4937 4991 5051 3156 8826 +4936 4938 4992 5052 3156 8881 +4937 5107 4993 5053 3156 8938 +4788 4940 4994 5054 3157 8829 +4939 4941 4995 5055 3158 8884 +4940 5110 4996 5056 3159 8941 +4791 4943 4997 5057 3162 8832 +4942 4944 4998 5058 3162 8887 +4943 5113 4999 5059 3162 8944 +4896 4946 5000 5060 3163 8835 +4945 4947 5001 5061 3164 8890 +4946 5116 5002 5062 3165 8947 +5067 5005 5003 5123 3168 8952 +4792 4950 5006 5068 3171 8839 +4949 4951 5007 5069 3171 8896 +4950 5126 5008 5070 3171 8955 +4795 4953 5009 5071 3172 8842 +4952 4954 5010 5072 3173 8899 +4953 5129 5011 5073 3174 8958 +4798 4956 5012 5074 3177 8845 +4955 4957 5013 5075 3177 8902 +4956 5132 5014 5076 3177 8961 +4801 4959 5015 5077 3178 8848 +4958 4960 5016 5078 3179 8905 +4959 5135 5017 5079 3180 8964 +4804 4962 5018 5080 3183 8851 +4961 4963 5019 5081 3183 8908 +4962 5138 5020 5082 3183 8967 +4807 4965 5021 5083 3184 8854 +4964 4966 5022 5084 3185 8911 +4965 5141 5023 5085 3186 8970 +4810 4968 5024 5086 3189 8857 +4967 4969 5025 5087 3189 8914 +4968 5144 5026 5088 3189 8973 +4813 4971 5027 5089 3190 8860 +4970 4972 5028 5090 3191 8917 +4971 5147 5029 5091 3192 8976 +4816 4974 5030 4973 3195 8863 +4973 4975 5031 4974 3195 8920 +4974 5150 5032 4975 3195 8979 +4819 4977 5033 4921 3139 8810 +4976 4978 5034 4922 3140 8865 +4977 5153 5035 4923 3141 8922 +4822 4980 5036 4924 3143 8813 +4979 4981 5037 4925 3143 8868 +4980 5156 5038 4926 3143 8925 +4825 4983 5039 4927 3145 8816 +4982 4984 5040 4928 3146 8871 +4983 5159 5041 4929 3147 8928 +4828 4986 5042 4930 3149 8819 +4985 4987 5043 4931 3149 8874 +4986 5162 5044 4932 3149 8931 +4831 4989 5045 4933 3151 8822 +4988 4990 5046 4934 3152 8877 +4989 5165 5047 4935 3153 8934 +4834 4992 5048 4936 3155 8825 +4991 4993 5049 4937 3155 8880 +4992 5168 5050 4938 3155 8937 +4837 4995 5051 4939 3157 8828 +4994 4996 5052 4940 3158 8883 +4995 5171 5053 4941 3159 8940 +4840 4998 5054 4942 3161 8831 +4997 4999 5055 4943 3161 8886 +4998 5174 5056 4944 3161 8943 +4895 5001 5057 4945 3163 8834 +5000 5002 5058 4946 3164 8889 +5001 5177 5059 4947 3165 8946 +5066 5004 5060 4948 3167 8893 +5003 5063 5061 5005 3167 8892 +4948 5064 5004 5186 3168 8951 +4843 5007 5065 4949 3170 8838 +5006 5008 5066 4950 3170 8895 +5007 5189 5067 4951 3170 8954 +4846 5010 5068 4952 3172 8841 +5009 5011 5069 4953 3173 8898 +5010 5192 5070 4954 3174 8957 +4849 5013 5071 4955 3176 8844 +5012 5014 5072 4956 3176 8901 +5013 5195 5073 4957 3176 8960 +4852 5016 5074 4958 3178 8847 +5015 5017 5075 4959 3179 8904 +5016 5198 5076 4960 3180 8963 +4855 5019 5077 4961 3182 8850 +5018 5020 5078 4962 3182 8907 +5019 5201 5079 4963 3182 8966 +4858 5022 5080 4964 3184 8853 +5021 5023 5081 4965 3185 8910 +5022 5204 5082 4966 3186 8969 +4861 5025 5083 4967 3188 8856 +5024 5026 5084 4968 3188 8913 +5025 5207 5085 4969 3188 8972 +4864 5028 5086 4970 3190 8859 +5027 5029 5087 4971 3191 8916 +5028 5210 5088 4972 3192 8975 +4867 5031 5089 4973 3194 8862 +5030 5032 5090 4974 3194 8919 +5031 5213 5091 4975 3194 8978 +4870 5034 5033 4976 3139 8809 +5033 5035 5034 4977 3140 8864 +5034 5216 5035 4978 3141 8921 +4873 5037 4921 4979 3142 8812 +5036 5038 4922 4980 3142 8867 +5037 5219 4923 4981 3142 8924 +4876 5040 4924 4982 3145 8815 +5039 5041 4925 4983 3146 8870 +5040 5222 4926 4984 3147 8927 +4879 5043 4927 4985 3148 8818 +5042 5044 4928 4986 3148 8873 +5043 5225 4929 4987 3148 8930 +4882 5046 4930 4988 3151 8821 +5045 5047 4931 4989 3152 8876 +5046 5228 4932 4990 3153 8933 +4885 5049 4933 4991 3154 8824 +5048 5050 4934 4992 3154 8879 +5049 5231 4935 4993 3154 8936 +4888 5052 4936 4994 3157 8827 +5051 5053 4937 4995 3158 8882 +5052 5234 4938 4996 3159 8939 +4891 5055 4939 4997 3160 8830 +5054 5056 4940 4998 3160 8885 +5055 5237 4941 4999 3160 8942 +4894 5058 4942 5000 3163 8833 +5057 5059 4943 5001 3164 8888 +5058 5240 4944 5002 3165 8945 +5065 5061 4945 5003 3166 8836 +5060 5062 4946 5004 3166 8891 +5061 5243 4947 5063 3166 8948 +5004 5180 5062 5064 3167 8949 +5005 5119 5063 5251 3168 8950 +4896 5066 5060 5006 3169 8837 +5065 5067 5003 5007 3169 8894 +5066 5254 4948 5008 3169 8953 +4899 5069 4949 5009 3172 8840 +5068 5070 4950 5010 3173 8897 +5069 5257 4951 5011 3174 8956 +4902 5072 4952 5012 3175 8843 +5071 5073 4953 5013 3175 8900 +5072 5260 4954 5014 3175 8959 +4905 5075 4955 5015 3178 8846 +5074 5076 4956 5016 3179 8903 +5075 5263 4957 5017 3180 8962 +4908 5078 4958 5018 3181 8849 +5077 5079 4959 5019 3181 8906 +5078 5266 4960 5020 3181 8965 +4911 5081 4961 5021 3184 8852 +5080 5082 4962 5022 3185 8909 +5081 5269 4963 5023 3186 8968 +4914 5084 4964 5024 3187 8855 +5083 5085 4965 5025 3187 8912 +5084 5272 4966 5026 3187 8971 +4917 5087 4967 5027 3190 8858 +5086 5088 4968 5028 3191 8915 +5087 5275 4969 5029 3192 8974 +4920 5090 4970 5030 3193 8861 +5089 5091 4971 5031 3193 8918 +5090 5278 4972 5032 3193 8977 +4923 5093 5153 5219 3198 8982 +5092 5094 5154 5220 3198 9043 +5093 5281 5155 5221 3198 9106 +4926 5096 5156 5222 3199 8985 +5095 5097 5157 5223 3200 9046 +5096 5284 5158 5224 3201 9109 +4929 5099 5159 5225 3204 8988 +5098 5100 5160 5226 3204 9049 +5099 5287 5161 5227 3204 9112 +4932 5102 5162 5228 3205 8991 +5101 5103 5163 5229 3206 9052 +5102 5290 5164 5230 3207 9115 +4935 5105 5165 5231 3210 8994 +5104 5106 5166 5232 3210 9055 +5105 5293 5167 5233 3210 9118 +4938 5108 5168 5234 3211 8997 +5107 5109 5169 5235 3212 9058 +5108 5296 5170 5236 3213 9121 +4941 5111 5171 5237 3216 9000 +5110 5112 5172 5238 3216 9061 +5111 5299 5173 5239 3216 9124 +4944 5114 5174 5240 3217 9003 +5113 5115 5175 5241 3218 9064 +5114 5302 5176 5242 3219 9127 +4947 5117 5177 5243 3222 9006 +5116 5118 5178 5244 3222 9067 +5117 5305 5179 5245 3222 9130 +5064 5120 5180 5246 3223 9009 +5119 5121 5181 5247 3224 9070 +5120 5308 5182 5248 3225 9133 +5253 5185 5183 5315 3228 9138 +4948 5124 5186 5254 3231 9013 +5123 5125 5187 5255 3231 9076 +5124 5318 5188 5256 3231 9141 +4951 5127 5189 5257 3232 9016 +5126 5128 5190 5258 3233 9079 +5127 5321 5191 5259 3234 9144 +4954 5130 5192 5260 3237 9019 +5129 5131 5193 5261 3237 9082 +5130 5324 5194 5262 3237 9147 +4957 5133 5195 5263 3238 9022 +5132 5134 5196 5264 3239 9085 +5133 5327 5197 5265 3240 9150 +4960 5136 5198 5266 3243 9025 +5135 5137 5199 5267 3243 9088 +5136 5330 5200 5268 3243 9153 +4963 5139 5201 5269 3244 9028 +5138 5140 5202 5270 3245 9091 +5139 5333 5203 5271 3246 9156 +4966 5142 5204 5272 3249 9031 +5141 5143 5205 5273 3249 9094 +5142 5336 5206 5274 3249 9159 +4969 5145 5207 5275 3250 9034 +5144 5146 5208 5276 3251 9097 +5145 5339 5209 5277 3252 9162 +4972 5148 5210 5278 3255 9037 +5147 5149 5211 5279 3255 9100 +5148 5342 5212 5280 3255 9165 +4975 5151 5213 5150 3256 9040 +5150 5152 5214 5151 3257 9103 +5151 5345 5215 5152 3258 9168 +4978 5154 5216 5092 3197 8981 +5153 5155 5217 5093 3197 9042 +5154 5348 5218 5094 3197 9105 +4981 5157 5219 5095 3199 8984 +5156 5158 5220 5096 3200 9045 +5157 5351 5221 5097 3201 9108 +4984 5160 5222 5098 3203 8987 +5159 5161 5223 5099 3203 9048 +5160 5354 5224 5100 3203 9111 +4987 5163 5225 5101 3205 8990 +5162 5164 5226 5102 3206 9051 +5163 5357 5227 5103 3207 9114 +4990 5166 5228 5104 3209 8993 +5165 5167 5229 5105 3209 9054 +5166 5360 5230 5106 3209 9117 +4993 5169 5231 5107 3211 8996 +5168 5170 5232 5108 3212 9057 +5169 5363 5233 5109 3213 9120 +4996 5172 5234 5110 3215 8999 +5171 5173 5235 5111 3215 9060 +5172 5366 5236 5112 3215 9123 +4999 5175 5237 5113 3217 9002 +5174 5176 5238 5114 3218 9063 +5175 5369 5239 5115 3219 9126 +5002 5178 5240 5116 3221 9005 +5177 5179 5241 5117 3221 9066 +5178 5372 5242 5118 3221 9129 +5063 5181 5243 5119 3223 9008 +5180 5182 5244 5120 3224 9069 +5181 5375 5245 5121 3225 9132 +5252 5184 5246 5122 3227 9073 +5183 5249 5247 5185 3227 9072 +5122 5250 5184 5384 3228 9137 +5005 5187 5251 5123 3230 9012 +5186 5188 5252 5124 3230 9075 +5187 5387 5253 5125 3230 9140 +5008 5190 5254 5126 3232 9015 +5189 5191 5255 5127 3233 9078 +5190 5390 5256 5128 3234 9143 +5011 5193 5257 5129 3236 9018 +5192 5194 5258 5130 3236 9081 +5193 5393 5259 5131 3236 9146 +5014 5196 5260 5132 3238 9021 +5195 5197 5261 5133 3239 9084 +5196 5396 5262 5134 3240 9149 +5017 5199 5263 5135 3242 9024 +5198 5200 5264 5136 3242 9087 +5199 5399 5265 5137 3242 9152 +5020 5202 5266 5138 3244 9027 +5201 5203 5267 5139 3245 9090 +5202 5402 5268 5140 3246 9155 +5023 5205 5269 5141 3248 9030 +5204 5206 5270 5142 3248 9093 +5205 5405 5271 5143 3248 9158 +5026 5208 5272 5144 3250 9033 +5207 5209 5273 5145 3251 9096 +5208 5408 5274 5146 3252 9161 +5029 5211 5275 5147 3254 9036 +5210 5212 5276 5148 3254 9099 +5211 5411 5277 5149 3254 9164 +5032 5214 5278 5150 3256 9039 +5213 5215 5279 5151 3257 9102 +5214 5414 5280 5152 3258 9167 +5035 5217 5216 5153 3196 8980 +5216 5218 5217 5154 3196 9041 +5217 5417 5218 5155 3196 9104 +5038 5220 5092 5156 3199 8983 +5219 5221 5093 5157 3200 9044 +5220 5420 5094 5158 3201 9107 +5041 5223 5095 5159 3202 8986 +5222 5224 5096 5160 3202 9047 +5223 5423 5097 5161 3202 9110 +5044 5226 5098 5162 3205 8989 +5225 5227 5099 5163 3206 9050 +5226 5426 5100 5164 3207 9113 +5047 5229 5101 5165 3208 8992 +5228 5230 5102 5166 3208 9053 +5229 5429 5103 5167 3208 9116 +5050 5232 5104 5168 3211 8995 +5231 5233 5105 5169 3212 9056 +5232 5432 5106 5170 3213 9119 +5053 5235 5107 5171 3214 8998 +5234 5236 5108 5172 3214 9059 +5235 5435 5109 5173 3214 9122 +5056 5238 5110 5174 3217 9001 +5237 5239 5111 5175 3218 9062 +5238 5438 5112 5176 3219 9125 +5059 5241 5113 5177 3220 9004 +5240 5242 5114 5178 3220 9065 +5241 5441 5115 5179 3220 9128 +5062 5244 5116 5180 3223 9007 +5243 5245 5117 5181 3224 9068 +5244 5444 5118 5182 3225 9131 +5251 5247 5119 5183 3226 9010 +5246 5248 5120 5184 3226 9071 +5247 5447 5121 5249 3226 9134 +5184 5378 5248 5250 3227 9135 +5185 5311 5249 5455 3228 9136 +5064 5252 5246 5186 3229 9011 +5251 5253 5183 5187 3229 9074 +5252 5458 5122 5188 3229 9139 +5067 5255 5123 5189 3232 9014 +5254 5256 5124 5190 3233 9077 +5255 5461 5125 5191 3234 9142 +5070 5258 5126 5192 3235 9017 +5257 5259 5127 5193 3235 9080 +5258 5464 5128 5194 3235 9145 +5073 5261 5129 5195 3238 9020 +5260 5262 5130 5196 3239 9083 +5261 5467 5131 5197 3240 9148 +5076 5264 5132 5198 3241 9023 +5263 5265 5133 5199 3241 9086 +5264 5470 5134 5200 3241 9151 +5079 5267 5135 5201 3244 9026 +5266 5268 5136 5202 3245 9089 +5267 5473 5137 5203 3246 9154 +5082 5270 5138 5204 3247 9029 +5269 5271 5139 5205 3247 9092 +5270 5476 5140 5206 3247 9157 +5085 5273 5141 5207 3250 9032 +5272 5274 5142 5208 3251 9095 +5273 5479 5143 5209 3252 9160 +5088 5276 5144 5210 3253 9035 +5275 5277 5145 5211 3253 9098 +5276 5482 5146 5212 3253 9163 +5091 5279 5147 5213 3256 9038 +5278 5280 5148 5214 3257 9101 +5279 5485 5149 5215 3258 9166 +5094 5282 5348 5420 3259 9171 +5281 5283 5349 5421 3260 9238 +5282 5488 5350 5422 3261 9307 +5097 5285 5351 5423 3264 9174 +5284 5286 5352 5424 3264 9241 +5285 5491 5353 5425 3264 9310 +5100 5288 5354 5426 3265 9177 +5287 5289 5355 5427 3266 9244 +5288 5494 5356 5428 3267 9313 +5103 5291 5357 5429 3270 9180 +5290 5292 5358 5430 3270 9247 +5291 5497 5359 5431 3270 9316 +5106 5294 5360 5432 3271 9183 +5293 5295 5361 5433 3272 9250 +5294 5500 5362 5434 3273 9319 +5109 5297 5363 5435 3276 9186 +5296 5298 5364 5436 3276 9253 +5297 5503 5365 5437 3276 9322 +5112 5300 5366 5438 3277 9189 +5299 5301 5367 5439 3278 9256 +5300 5506 5368 5440 3279 9325 +5115 5303 5369 5441 3282 9192 +5302 5304 5370 5442 3282 9259 +5303 5509 5371 5443 3282 9328 +5118 5306 5372 5444 3283 9195 +5305 5307 5373 5445 3284 9262 +5306 5512 5374 5446 3285 9331 +5121 5309 5375 5447 3288 9198 +5308 5310 5376 5448 3288 9265 +5309 5515 5377 5449 3288 9334 +5250 5312 5378 5450 3289 9201 +5311 5313 5379 5451 3290 9268 +5312 5518 5380 5452 3291 9337 +5457 5383 5381 5524 3294 9342 +5122 5316 5384 5458 3297 9205 +5315 5317 5385 5459 3297 9274 +5316 5527 5386 5460 3297 9345 +5125 5319 5387 5461 3298 9208 +5318 5320 5388 5462 3299 9277 +5319 5530 5389 5463 3300 9348 +5128 5322 5390 5464 3303 9211 +5321 5323 5391 5465 3303 9280 +5322 5533 5392 5466 3303 9351 +5131 5325 5393 5467 3304 9214 +5324 5326 5394 5468 3305 9283 +5325 5536 5395 5469 3306 9354 +5134 5328 5396 5470 3309 9217 +5327 5329 5397 5471 3309 9286 +5328 5539 5398 5472 3309 9357 +5137 5331 5399 5473 3310 9220 +5330 5332 5400 5474 3311 9289 +5331 5542 5401 5475 3312 9360 +5140 5334 5402 5476 3315 9223 +5333 5335 5403 5477 3315 9292 +5334 5545 5404 5478 3315 9363 +5143 5337 5405 5479 3316 9226 +5336 5338 5406 5480 3317 9295 +5337 5548 5407 5481 3318 9366 +5146 5340 5408 5482 3321 9229 +5339 5341 5409 5483 3321 9298 +5340 5551 5410 5484 3321 9369 +5149 5343 5411 5485 3322 9232 +5342 5344 5412 5486 3323 9301 +5343 5554 5413 5487 3324 9372 +5152 5346 5414 5345 3327 9235 +5345 5347 5415 5346 3327 9304 +5346 5557 5416 5347 3327 9375 +5155 5349 5417 5281 3259 9170 +5348 5350 5418 5282 3260 9237 +5349 5560 5419 5283 3261 9306 +5158 5352 5420 5284 3263 9173 +5351 5353 5421 5285 3263 9240 +5352 5563 5422 5286 3263 9309 +5161 5355 5423 5287 3265 9176 +5354 5356 5424 5288 3266 9243 +5355 5566 5425 5289 3267 9312 +5164 5358 5426 5290 3269 9179 +5357 5359 5427 5291 3269 9246 +5358 5569 5428 5292 3269 9315 +5167 5361 5429 5293 3271 9182 +5360 5362 5430 5294 3272 9249 +5361 5572 5431 5295 3273 9318 +5170 5364 5432 5296 3275 9185 +5363 5365 5433 5297 3275 9252 +5364 5575 5434 5298 3275 9321 +5173 5367 5435 5299 3277 9188 +5366 5368 5436 5300 3278 9255 +5367 5578 5437 5301 3279 9324 +5176 5370 5438 5302 3281 9191 +5369 5371 5439 5303 3281 9258 +5370 5581 5440 5304 3281 9327 +5179 5373 5441 5305 3283 9194 +5372 5374 5442 5306 3284 9261 +5373 5584 5443 5307 3285 9330 +5182 5376 5444 5308 3287 9197 +5375 5377 5445 5309 3287 9264 +5376 5587 5446 5310 3287 9333 +5249 5379 5447 5311 3289 9200 +5378 5380 5448 5312 3290 9267 +5379 5590 5449 5313 3291 9336 +5456 5382 5450 5314 3293 9271 +5381 5453 5451 5383 3293 9270 +5314 5454 5382 5596 3294 9341 +5185 5385 5455 5315 3296 9204 +5384 5386 5456 5316 3296 9273 +5385 5599 5457 5317 3296 9344 +5188 5388 5458 5318 3298 9207 +5387 5389 5459 5319 3299 9276 +5388 5602 5460 5320 3300 9347 +5191 5391 5461 5321 3302 9210 +5390 5392 5462 5322 3302 9279 +5391 5605 5463 5323 3302 9350 +5194 5394 5464 5324 3304 9213 +5393 5395 5465 5325 3305 9282 +5394 5608 5466 5326 3306 9353 +5197 5397 5467 5327 3308 9216 +5396 5398 5468 5328 3308 9285 +5397 5611 5469 5329 3308 9356 +5200 5400 5470 5330 3310 9219 +5399 5401 5471 5331 3311 9288 +5400 5614 5472 5332 3312 9359 +5203 5403 5473 5333 3314 9222 +5402 5404 5474 5334 3314 9291 +5403 5617 5475 5335 3314 9362 +5206 5406 5476 5336 3316 9225 +5405 5407 5477 5337 3317 9294 +5406 5620 5478 5338 3318 9365 +5209 5409 5479 5339 3320 9228 +5408 5410 5480 5340 3320 9297 +5409 5623 5481 5341 3320 9368 +5212 5412 5482 5342 3322 9231 +5411 5413 5483 5343 3323 9300 +5412 5626 5484 5344 3324 9371 +5215 5415 5485 5345 3326 9234 +5414 5416 5486 5346 3326 9303 +5415 5629 5487 5347 3326 9374 +5218 5418 5417 5348 3259 9169 +5417 5419 5418 5349 3260 9236 +5418 5632 5419 5350 3261 9305 +5221 5421 5281 5351 3262 9172 +5420 5422 5282 5352 3262 9239 +5421 5635 5283 5353 3262 9308 +5224 5424 5284 5354 3265 9175 +5423 5425 5285 5355 3266 9242 +5424 5638 5286 5356 3267 9311 +5227 5427 5287 5357 3268 9178 +5426 5428 5288 5358 3268 9245 +5427 5641 5289 5359 3268 9314 +5230 5430 5290 5360 3271 9181 +5429 5431 5291 5361 3272 9248 +5430 5644 5292 5362 3273 9317 +5233 5433 5293 5363 3274 9184 +5432 5434 5294 5364 3274 9251 +5433 5647 5295 5365 3274 9320 +5236 5436 5296 5366 3277 9187 +5435 5437 5297 5367 3278 9254 +5436 5650 5298 5368 3279 9323 +5239 5439 5299 5369 3280 9190 +5438 5440 5300 5370 3280 9257 +5439 5653 5301 5371 3280 9326 +5242 5442 5302 5372 3283 9193 +5441 5443 5303 5373 3284 9260 +5442 5656 5304 5374 3285 9329 +5245 5445 5305 5375 3286 9196 +5444 5446 5306 5376 3286 9263 +5445 5659 5307 5377 3286 9332 +5248 5448 5308 5378 3289 9199 +5447 5449 5309 5379 3290 9266 +5448 5662 5310 5380 3291 9335 +5455 5451 5311 5381 3292 9202 +5450 5452 5312 5382 3292 9269 +5451 5665 5313 5453 3292 9338 +5382 5593 5452 5454 3293 9339 +5383 5521 5453 5668 3294 9340 +5250 5456 5450 5384 3295 9203 +5455 5457 5381 5385 3295 9272 +5456 5671 5314 5386 3295 9343 +5253 5459 5315 5387 3298 9206 +5458 5460 5316 5388 3299 9275 +5459 5674 5317 5389 3300 9346 +5256 5462 5318 5390 3301 9209 +5461 5463 5319 5391 3301 9278 +5462 5677 5320 5392 3301 9349 +5259 5465 5321 5393 3304 9212 +5464 5466 5322 5394 3305 9281 +5465 5680 5323 5395 3306 9352 +5262 5468 5324 5396 3307 9215 +5467 5469 5325 5397 3307 9284 +5468 5683 5326 5398 3307 9355 +5265 5471 5327 5399 3310 9218 +5470 5472 5328 5400 3311 9287 +5471 5686 5329 5401 3312 9358 +5268 5474 5330 5402 3313 9221 +5473 5475 5331 5403 3313 9290 +5474 5689 5332 5404 3313 9361 +5271 5477 5333 5405 3316 9224 +5476 5478 5334 5406 3317 9293 +5477 5692 5335 5407 3318 9364 +5274 5480 5336 5408 3319 9227 +5479 5481 5337 5409 3319 9296 +5480 5695 5338 5410 3319 9367 +5277 5483 5339 5411 3322 9230 +5482 5484 5340 5412 3323 9299 +5483 5698 5341 5413 3324 9370 +5280 5486 5342 5414 3325 9233 +5485 5487 5343 5415 3325 9302 +5486 5701 5344 5416 3325 9373 +5283 5489 5560 5635 3330 9378 +5488 5490 5561 5636 3330 9450 +5489 5704 5562 5637 3330 9522 +5286 5492 5563 5638 3331 9381 +5491 5493 5564 5639 3332 9453 +5492 5707 5565 5640 3333 9525 +5289 5495 5566 5641 3336 9384 +5494 5496 5567 5642 3336 9456 +5495 5710 5568 5643 3336 9528 +5292 5498 5569 5644 3337 9387 +5497 5499 5570 5645 3338 9459 +5498 5713 5571 5646 3339 9531 +5295 5501 5572 5647 3342 9390 +5500 5502 5573 5648 3342 9462 +5501 5716 5574 5649 3342 9534 +5298 5504 5575 5650 3343 9393 +5503 5505 5576 5651 3344 9465 +5504 5719 5577 5652 3345 9537 +5301 5507 5578 5653 3348 9396 +5506 5508 5579 5654 3348 9468 +5507 5722 5580 5655 3348 9540 +5304 5510 5581 5656 3349 9399 +5509 5511 5582 5657 3350 9471 +5510 5725 5583 5658 3351 9543 +5307 5513 5584 5659 3354 9402 +5512 5514 5585 5660 3354 9474 +5513 5728 5586 5661 3354 9546 +5310 5516 5587 5662 3355 9405 +5515 5517 5588 5663 3356 9477 +5516 5731 5589 5664 3357 9549 +5313 5519 5590 5665 3360 9408 +5518 5520 5591 5666 3360 9480 +5519 5734 5592 5667 3360 9552 +5454 5522 5593 5668 3361 9411 +5521 5523 5594 5669 3362 9483 +5522 5737 5595 5670 3363 9555 +5314 5525 5596 5671 3366 9414 +5524 5526 5597 5672 3366 9486 +5525 5740 5598 5673 3366 9558 +5317 5528 5599 5674 3367 9417 +5527 5529 5600 5675 3368 9489 +5528 5743 5601 5676 3369 9561 +5320 5531 5602 5677 3372 9420 +5530 5532 5603 5678 3372 9492 +5531 5746 5604 5679 3372 9564 +5323 5534 5605 5680 3373 9423 +5533 5535 5606 5681 3374 9495 +5534 5749 5607 5682 3375 9567 +5326 5537 5608 5683 3378 9426 +5536 5538 5609 5684 3378 9498 +5537 5752 5610 5685 3378 9570 +5329 5540 5611 5686 3379 9429 +5539 5541 5612 5687 3380 9501 +5540 5755 5613 5688 3381 9573 +5332 5543 5614 5689 3384 9432 +5542 5544 5615 5690 3384 9504 +5543 5758 5616 5691 3384 9576 +5335 5546 5617 5692 3385 9435 +5545 5547 5618 5693 3386 9507 +5546 5761 5619 5694 3387 9579 +5338 5549 5620 5695 3390 9438 +5548 5550 5621 5696 3390 9510 +5549 5764 5622 5697 3390 9582 +5341 5552 5623 5698 3391 9441 +5551 5553 5624 5699 3392 9513 +5552 5767 5625 5700 3393 9585 +5344 5555 5626 5701 3396 9444 +5554 5556 5627 5702 3396 9516 +5555 5770 5628 5703 3396 9588 +5347 5558 5629 5557 3397 9447 +5557 5559 5630 5558 3398 9519 +5558 5773 5631 5559 3399 9591 +5350 5561 5632 5488 3329 9377 +5560 5562 5633 5489 3329 9449 +5561 5776 5634 5490 3329 9521 +5353 5564 5635 5491 3331 9380 +5563 5565 5636 5492 3332 9452 +5564 5779 5637 5493 3333 9524 +5356 5567 5638 5494 3335 9383 +5566 5568 5639 5495 3335 9455 +5567 5782 5640 5496 3335 9527 +5359 5570 5641 5497 3337 9386 +5569 5571 5642 5498 3338 9458 +5570 5785 5643 5499 3339 9530 +5362 5573 5644 5500 3341 9389 +5572 5574 5645 5501 3341 9461 +5573 5788 5646 5502 3341 9533 +5365 5576 5647 5503 3343 9392 +5575 5577 5648 5504 3344 9464 +5576 5791 5649 5505 3345 9536 +5368 5579 5650 5506 3347 9395 +5578 5580 5651 5507 3347 9467 +5579 5794 5652 5508 3347 9539 +5371 5582 5653 5509 3349 9398 +5581 5583 5654 5510 3350 9470 +5582 5797 5655 5511 3351 9542 +5374 5585 5656 5512 3353 9401 +5584 5586 5657 5513 3353 9473 +5585 5800 5658 5514 3353 9545 +5377 5588 5659 5515 3355 9404 +5587 5589 5660 5516 3356 9476 +5588 5803 5661 5517 3357 9548 +5380 5591 5662 5518 3359 9407 +5590 5592 5663 5519 3359 9479 +5591 5806 5664 5520 3359 9551 +5453 5594 5665 5521 3361 9410 +5593 5595 5666 5522 3362 9482 +5594 5809 5667 5523 3363 9554 +5383 5597 5668 5524 3365 9413 +5596 5598 5669 5525 3365 9485 +5597 5812 5670 5526 3365 9557 +5386 5600 5671 5527 3367 9416 +5599 5601 5672 5528 3368 9488 +5600 5815 5673 5529 3369 9560 +5389 5603 5674 5530 3371 9419 +5602 5604 5675 5531 3371 9491 +5603 5818 5676 5532 3371 9563 +5392 5606 5677 5533 3373 9422 +5605 5607 5678 5534 3374 9494 +5606 5821 5679 5535 3375 9566 +5395 5609 5680 5536 3377 9425 +5608 5610 5681 5537 3377 9497 +5609 5824 5682 5538 3377 9569 +5398 5612 5683 5539 3379 9428 +5611 5613 5684 5540 3380 9500 +5612 5827 5685 5541 3381 9572 +5401 5615 5686 5542 3383 9431 +5614 5616 5687 5543 3383 9503 +5615 5830 5688 5544 3383 9575 +5404 5618 5689 5545 3385 9434 +5617 5619 5690 5546 3386 9506 +5618 5833 5691 5547 3387 9578 +5407 5621 5692 5548 3389 9437 +5620 5622 5693 5549 3389 9509 +5621 5836 5694 5550 3389 9581 +5410 5624 5695 5551 3391 9440 +5623 5625 5696 5552 3392 9512 +5624 5839 5697 5553 3393 9584 +5413 5627 5698 5554 3395 9443 +5626 5628 5699 5555 3395 9515 +5627 5842 5700 5556 3395 9587 +5416 5630 5701 5557 3397 9446 +5629 5631 5702 5558 3398 9518 +5630 5845 5703 5559 3399 9590 +5419 5633 5632 5560 3328 9376 +5632 5634 5633 5561 3328 9448 +5633 5848 5634 5562 3328 9520 +5422 5636 5488 5563 3331 9379 +5635 5637 5489 5564 3332 9451 +5636 5851 5490 5565 3333 9523 +5425 5639 5491 5566 3334 9382 +5638 5640 5492 5567 3334 9454 +5639 5854 5493 5568 3334 9526 +5428 5642 5494 5569 3337 9385 +5641 5643 5495 5570 3338 9457 +5642 5857 5496 5571 3339 9529 +5431 5645 5497 5572 3340 9388 +5644 5646 5498 5573 3340 9460 +5645 5860 5499 5574 3340 9532 +5434 5648 5500 5575 3343 9391 +5647 5649 5501 5576 3344 9463 +5648 5863 5502 5577 3345 9535 +5437 5651 5503 5578 3346 9394 +5650 5652 5504 5579 3346 9466 +5651 5866 5505 5580 3346 9538 +5440 5654 5506 5581 3349 9397 +5653 5655 5507 5582 3350 9469 +5654 5869 5508 5583 3351 9541 +5443 5657 5509 5584 3352 9400 +5656 5658 5510 5585 3352 9472 +5657 5872 5511 5586 3352 9544 +5446 5660 5512 5587 3355 9403 +5659 5661 5513 5588 3356 9475 +5660 5875 5514 5589 3357 9547 +5449 5663 5515 5590 3358 9406 +5662 5664 5516 5591 3358 9478 +5663 5878 5517 5592 3358 9550 +5452 5666 5518 5593 3361 9409 +5665 5667 5519 5594 3362 9481 +5666 5881 5520 5595 3363 9553 +5454 5669 5521 5596 3364 9412 +5668 5670 5522 5597 3364 9484 +5669 5884 5523 5598 3364 9556 +5457 5672 5524 5599 3367 9415 +5671 5673 5525 5600 3368 9487 +5672 5887 5526 5601 3369 9559 +5460 5675 5527 5602 3370 9418 +5674 5676 5528 5603 3370 9490 +5675 5890 5529 5604 3370 9562 +5463 5678 5530 5605 3373 9421 +5677 5679 5531 5606 3374 9493 +5678 5893 5532 5607 3375 9565 +5466 5681 5533 5608 3376 9424 +5680 5682 5534 5609 3376 9496 +5681 5896 5535 5610 3376 9568 +5469 5684 5536 5611 3379 9427 +5683 5685 5537 5612 3380 9499 +5684 5899 5538 5613 3381 9571 +5472 5687 5539 5614 3382 9430 +5686 5688 5540 5615 3382 9502 +5687 5902 5541 5616 3382 9574 +5475 5690 5542 5617 3385 9433 +5689 5691 5543 5618 3386 9505 +5690 5905 5544 5619 3387 9577 +5478 5693 5545 5620 3388 9436 +5692 5694 5546 5621 3388 9508 +5693 5908 5547 5622 3388 9580 +5481 5696 5548 5623 3391 9439 +5695 5697 5549 5624 3392 9511 +5696 5911 5550 5625 3393 9583 +5484 5699 5551 5626 3394 9442 +5698 5700 5552 5627 3394 9514 +5699 5914 5553 5628 3394 9586 +5487 5702 5554 5629 3397 9445 +5701 5703 5555 5630 3398 9517 +5702 5917 5556 5631 3399 9589 +5490 5705 5776 5851 3400 9594 +5704 5706 5777 5852 3401 9666 +5705 5920 5778 5853 3402 9738 +5493 5708 5779 5854 3405 9597 +5707 5709 5780 5855 3405 9669 +5708 5923 5781 5856 3405 9741 +5496 5711 5782 5857 3406 9600 +5710 5712 5783 5858 3407 9672 +5711 5926 5784 5859 3408 9744 +5499 5714 5785 5860 3411 9603 +5713 5715 5786 5861 3411 9675 +5714 5929 5787 5862 3411 9747 +5502 5717 5788 5863 3412 9606 +5716 5718 5789 5864 3413 9678 +5717 5932 5790 5865 3414 9750 +5505 5720 5791 5866 3417 9609 +5719 5721 5792 5867 3417 9681 +5720 5935 5793 5868 3417 9753 +5508 5723 5794 5869 3418 9612 +5722 5724 5795 5870 3419 9684 +5723 5938 5796 5871 3420 9756 +5511 5726 5797 5872 3423 9615 +5725 5727 5798 5873 3423 9687 +5726 5941 5799 5874 3423 9759 +5514 5729 5800 5875 3424 9618 +5728 5730 5801 5876 3425 9690 +5729 5944 5802 5877 3426 9762 +5517 5732 5803 5878 3429 9621 +5731 5733 5804 5879 3429 9693 +5732 5947 5805 5880 3429 9765 +5520 5735 5806 5881 3430 9624 +5734 5736 5807 5882 3431 9696 +5735 5950 5808 5883 3432 9768 +5523 5738 5809 5884 3435 9627 +5737 5739 5810 5885 3435 9699 +5738 5953 5811 5886 3435 9771 +5526 5741 5812 5887 3436 9630 +5740 5742 5813 5888 3437 9702 +5741 5956 5814 5889 3438 9774 +5529 5744 5815 5890 3441 9633 +5743 5745 5816 5891 3441 9705 +5744 5959 5817 5892 3441 9777 +5532 5747 5818 5893 3442 9636 +5746 5748 5819 5894 3443 9708 +5747 5962 5820 5895 3444 9780 +5535 5750 5821 5896 3447 9639 +5749 5751 5822 5897 3447 9711 +5750 5965 5823 5898 3447 9783 +5538 5753 5824 5899 3448 9642 +5752 5754 5825 5900 3449 9714 +5753 5968 5826 5901 3450 9786 +5541 5756 5827 5902 3453 9645 +5755 5757 5828 5903 3453 9717 +5756 5971 5829 5904 3453 9789 +5544 5759 5830 5905 3454 9648 +5758 5760 5831 5906 3455 9720 +5759 5974 5832 5907 3456 9792 +5547 5762 5833 5908 3459 9651 +5761 5763 5834 5909 3459 9723 +5762 5977 5835 5910 3459 9795 +5550 5765 5836 5911 3460 9654 +5764 5766 5837 5912 3461 9726 +5765 5980 5838 5913 3462 9798 +5553 5768 5839 5914 3465 9657 +5767 5769 5840 5915 3465 9729 +5768 5983 5841 5916 3465 9801 +5556 5771 5842 5917 3466 9660 +5770 5772 5843 5918 3467 9732 +5771 5986 5844 5919 3468 9804 +5559 5774 5845 5773 3471 9663 +5773 5775 5846 5774 3471 9735 +5774 5989 5847 5775 3471 9807 +5562 5777 5848 5704 3400 9593 +5776 5778 5849 5705 3401 9665 +5777 5992 5850 5706 3402 9737 +5565 5780 5851 5707 3404 9596 +5779 5781 5852 5708 3404 9668 +5780 5995 5853 5709 3404 9740 +5568 5783 5854 5710 3406 9599 +5782 5784 5855 5711 3407 9671 +5783 5998 5856 5712 3408 9743 +5571 5786 5857 5713 3410 9602 +5785 5787 5858 5714 3410 9674 +5786 6001 5859 5715 3410 9746 +5574 5789 5860 5716 3412 9605 +5788 5790 5861 5717 3413 9677 +5789 6004 5862 5718 3414 9749 +5577 5792 5863 5719 3416 9608 +5791 5793 5864 5720 3416 9680 +5792 6007 5865 5721 3416 9752 +5580 5795 5866 5722 3418 9611 +5794 5796 5867 5723 3419 9683 +5795 6010 5868 5724 3420 9755 +5583 5798 5869 5725 3422 9614 +5797 5799 5870 5726 3422 9686 +5798 6013 5871 5727 3422 9758 +5586 5801 5872 5728 3424 9617 +5800 5802 5873 5729 3425 9689 +5801 6016 5874 5730 3426 9761 +5589 5804 5875 5731 3428 9620 +5803 5805 5876 5732 3428 9692 +5804 6019 5877 5733 3428 9764 +5592 5807 5878 5734 3430 9623 +5806 5808 5879 5735 3431 9695 +5807 6022 5880 5736 3432 9767 +5595 5810 5881 5737 3434 9626 +5809 5811 5882 5738 3434 9698 +5810 6025 5883 5739 3434 9770 +5598 5813 5884 5740 3436 9629 +5812 5814 5885 5741 3437 9701 +5813 6028 5886 5742 3438 9773 +5601 5816 5887 5743 3440 9632 +5815 5817 5888 5744 3440 9704 +5816 6031 5889 5745 3440 9776 +5604 5819 5890 5746 3442 9635 +5818 5820 5891 5747 3443 9707 +5819 6034 5892 5748 3444 9779 +5607 5822 5893 5749 3446 9638 +5821 5823 5894 5750 3446 9710 +5822 6037 5895 5751 3446 9782 +5610 5825 5896 5752 3448 9641 +5824 5826 5897 5753 3449 9713 +5825 6040 5898 5754 3450 9785 +5613 5828 5899 5755 3452 9644 +5827 5829 5900 5756 3452 9716 +5828 6043 5901 5757 3452 9788 +5616 5831 5902 5758 3454 9647 +5830 5832 5903 5759 3455 9719 +5831 6046 5904 5760 3456 9791 +5619 5834 5905 5761 3458 9650 +5833 5835 5906 5762 3458 9722 +5834 6049 5907 5763 3458 9794 +5622 5837 5908 5764 3460 9653 +5836 5838 5909 5765 3461 9725 +5837 6052 5910 5766 3462 9797 +5625 5840 5911 5767 3464 9656 +5839 5841 5912 5768 3464 9728 +5840 6055 5913 5769 3464 9800 +5628 5843 5914 5770 3466 9659 +5842 5844 5915 5771 3467 9731 +5843 6058 5916 5772 3468 9803 +5631 5846 5917 5773 3470 9662 +5845 5847 5918 5774 3470 9734 +5846 6061 5919 5775 3470 9806 +5634 5849 5848 5776 3400 9592 +5848 5850 5849 5777 3401 9664 +5849 6064 5850 5778 3402 9736 +5637 5852 5704 5779 3403 9595 +5851 5853 5705 5780 3403 9667 +5852 6067 5706 5781 3403 9739 +5640 5855 5707 5782 3406 9598 +5854 5856 5708 5783 3407 9670 +5855 6070 5709 5784 3408 9742 +5643 5858 5710 5785 3409 9601 +5857 5859 5711 5786 3409 9673 +5858 6073 5712 5787 3409 9745 +5646 5861 5713 5788 3412 9604 +5860 5862 5714 5789 3413 9676 +5861 6076 5715 5790 3414 9748 +5649 5864 5716 5791 3415 9607 +5863 5865 5717 5792 3415 9679 +5864 6079 5718 5793 3415 9751 +5652 5867 5719 5794 3418 9610 +5866 5868 5720 5795 3419 9682 +5867 6082 5721 5796 3420 9754 +5655 5870 5722 5797 3421 9613 +5869 5871 5723 5798 3421 9685 +5870 6085 5724 5799 3421 9757 +5658 5873 5725 5800 3424 9616 +5872 5874 5726 5801 3425 9688 +5873 6088 5727 5802 3426 9760 +5661 5876 5728 5803 3427 9619 +5875 5877 5729 5804 3427 9691 +5876 6091 5730 5805 3427 9763 +5664 5879 5731 5806 3430 9622 +5878 5880 5732 5807 3431 9694 +5879 6094 5733 5808 3432 9766 +5667 5882 5734 5809 3433 9625 +5881 5883 5735 5810 3433 9697 +5882 6097 5736 5811 3433 9769 +5670 5885 5737 5812 3436 9628 +5884 5886 5738 5813 3437 9700 +5885 6100 5739 5814 3438 9772 +5673 5888 5740 5815 3439 9631 +5887 5889 5741 5816 3439 9703 +5888 6103 5742 5817 3439 9775 +5676 5891 5743 5818 3442 9634 +5890 5892 5744 5819 3443 9706 +5891 6106 5745 5820 3444 9778 +5679 5894 5746 5821 3445 9637 +5893 5895 5747 5822 3445 9709 +5894 6109 5748 5823 3445 9781 +5682 5897 5749 5824 3448 9640 +5896 5898 5750 5825 3449 9712 +5897 6112 5751 5826 3450 9784 +5685 5900 5752 5827 3451 9643 +5899 5901 5753 5828 3451 9715 +5900 6115 5754 5829 3451 9787 +5688 5903 5755 5830 3454 9646 +5902 5904 5756 5831 3455 9718 +5903 6118 5757 5832 3456 9790 +5691 5906 5758 5833 3457 9649 +5905 5907 5759 5834 3457 9721 +5906 6121 5760 5835 3457 9793 +5694 5909 5761 5836 3460 9652 +5908 5910 5762 5837 3461 9724 +5909 6124 5763 5838 3462 9796 +5697 5912 5764 5839 3463 9655 +5911 5913 5765 5840 3463 9727 +5912 6127 5766 5841 3463 9799 +5700 5915 5767 5842 3466 9658 +5914 5916 5768 5843 3467 9730 +5915 6130 5769 5844 3468 9802 +5703 5918 5770 5845 3469 9661 +5917 5919 5771 5846 3469 9733 +5918 6133 5772 5847 3469 9805 +5706 5921 5992 6067 3474 9810 +5920 5922 5993 6068 3474 9882 +5921 6136 5994 6069 3474 9954 +5709 5924 5995 6070 3475 9813 +5923 5925 5996 6071 3476 9885 +5924 6139 5997 6072 3477 9957 +5712 5927 5998 6073 3480 9816 +5926 5928 5999 6074 3480 9888 +5927 6142 6000 6075 3480 9960 +5715 5930 6001 6076 3481 9819 +5929 5931 6002 6077 3482 9891 +5930 6145 6003 6078 3483 9963 +5718 5933 6004 6079 3486 9822 +5932 5934 6005 6080 3486 9894 +5933 6148 6006 6081 3486 9966 +5721 5936 6007 6082 3487 9825 +5935 5937 6008 6083 3488 9897 +5936 6151 6009 6084 3489 9969 +5724 5939 6010 6085 3492 9828 +5938 5940 6011 6086 3492 9900 +5939 6154 6012 6087 3492 9972 +5727 5942 6013 6088 3493 9831 +5941 5943 6014 6089 3494 9903 +5942 6157 6015 6090 3495 9975 +5730 5945 6016 6091 3498 9834 +5944 5946 6017 6092 3498 9906 +5945 6160 6018 6093 3498 9978 +5733 5948 6019 6094 3499 9837 +5947 5949 6020 6095 3500 9909 +5948 6163 6021 6096 3501 9981 +5736 5951 6022 6097 3504 9840 +5950 5952 6023 6098 3504 9912 +5951 6166 6024 6099 3504 9984 +5739 5954 6025 6100 3505 9843 +5953 5955 6026 6101 3506 9915 +5954 6169 6027 6102 3507 9987 +5742 5957 6028 6103 3510 9846 +5956 5958 6029 6104 3510 9918 +5957 6172 6030 6105 3510 9990 +5745 5960 6031 6106 3511 9849 +5959 5961 6032 6107 3512 9921 +5960 6175 6033 6108 3513 9993 +5748 5963 6034 6109 3516 9852 +5962 5964 6035 6110 3516 9924 +5963 6178 6036 6111 3516 9996 +5751 5966 6037 6112 3517 9855 +5965 5967 6038 6113 3518 9927 +5966 6181 6039 6114 3519 9999 +5754 5969 6040 6115 3522 9858 +5968 5970 6041 6116 3522 9930 +5969 6184 6042 6117 3522 10002 +5757 5972 6043 6118 3523 9861 +5971 5973 6044 6119 3524 9933 +5972 6187 6045 6120 3525 10005 +5760 5975 6046 6121 3528 9864 +5974 5976 6047 6122 3528 9936 +5975 6190 6048 6123 3528 10008 +5763 5978 6049 6124 3529 9867 +5977 5979 6050 6125 3530 9939 +5978 6193 6051 6126 3531 10011 +5766 5981 6052 6127 3534 9870 +5980 5982 6053 6128 3534 9942 +5981 6196 6054 6129 3534 10014 +5769 5984 6055 6130 3535 9873 +5983 5985 6056 6131 3536 9945 +5984 6199 6057 6132 3537 10017 +5772 5987 6058 6133 3540 9876 +5986 5988 6059 6134 3540 9948 +5987 6202 6060 6135 3540 10020 +5775 5990 6061 5989 3541 9879 +5989 5991 6062 5990 3542 9951 +5990 6205 6063 5991 3543 10023 +5778 5993 6064 5920 3473 9809 +5992 5994 6065 5921 3473 9881 +5993 6208 6066 5922 3473 9953 +5781 5996 6067 5923 3475 9812 +5995 5997 6068 5924 3476 9884 +5996 6211 6069 5925 3477 9956 +5784 5999 6070 5926 3479 9815 +5998 6000 6071 5927 3479 9887 +5999 6214 6072 5928 3479 9959 +5787 6002 6073 5929 3481 9818 +6001 6003 6074 5930 3482 9890 +6002 6217 6075 5931 3483 9962 +5790 6005 6076 5932 3485 9821 +6004 6006 6077 5933 3485 9893 +6005 6220 6078 5934 3485 9965 +5793 6008 6079 5935 3487 9824 +6007 6009 6080 5936 3488 9896 +6008 6223 6081 5937 3489 9968 +5796 6011 6082 5938 3491 9827 +6010 6012 6083 5939 3491 9899 +6011 6226 6084 5940 3491 9971 +5799 6014 6085 5941 3493 9830 +6013 6015 6086 5942 3494 9902 +6014 6229 6087 5943 3495 9974 +5802 6017 6088 5944 3497 9833 +6016 6018 6089 5945 3497 9905 +6017 6232 6090 5946 3497 9977 +5805 6020 6091 5947 3499 9836 +6019 6021 6092 5948 3500 9908 +6020 6235 6093 5949 3501 9980 +5808 6023 6094 5950 3503 9839 +6022 6024 6095 5951 3503 9911 +6023 6238 6096 5952 3503 9983 +5811 6026 6097 5953 3505 9842 +6025 6027 6098 5954 3506 9914 +6026 6241 6099 5955 3507 9986 +5814 6029 6100 5956 3509 9845 +6028 6030 6101 5957 3509 9917 +6029 6244 6102 5958 3509 9989 +5817 6032 6103 5959 3511 9848 +6031 6033 6104 5960 3512 9920 +6032 6247 6105 5961 3513 9992 +5820 6035 6106 5962 3515 9851 +6034 6036 6107 5963 3515 9923 +6035 6250 6108 5964 3515 9995 +5823 6038 6109 5965 3517 9854 +6037 6039 6110 5966 3518 9926 +6038 6253 6111 5967 3519 9998 +5826 6041 6112 5968 3521 9857 +6040 6042 6113 5969 3521 9929 +6041 6256 6114 5970 3521 10001 +5829 6044 6115 5971 3523 9860 +6043 6045 6116 5972 3524 9932 +6044 6259 6117 5973 3525 10004 +5832 6047 6118 5974 3527 9863 +6046 6048 6119 5975 3527 9935 +6047 6262 6120 5976 3527 10007 +5835 6050 6121 5977 3529 9866 +6049 6051 6122 5978 3530 9938 +6050 6265 6123 5979 3531 10010 +5838 6053 6124 5980 3533 9869 +6052 6054 6125 5981 3533 9941 +6053 6268 6126 5982 3533 10013 +5841 6056 6127 5983 3535 9872 +6055 6057 6128 5984 3536 9944 +6056 6271 6129 5985 3537 10016 +5844 6059 6130 5986 3539 9875 +6058 6060 6131 5987 3539 9947 +6059 6274 6132 5988 3539 10019 +5847 6062 6133 5989 3541 9878 +6061 6063 6134 5990 3542 9950 +6062 6277 6135 5991 3543 10022 +5850 6065 6064 5992 3472 9808 +6064 6066 6065 5993 3472 9880 +6065 6280 6066 5994 3472 9952 +5853 6068 5920 5995 3475 9811 +6067 6069 5921 5996 3476 9883 +6068 6283 5922 5997 3477 9955 +5856 6071 5923 5998 3478 9814 +6070 6072 5924 5999 3478 9886 +6071 6286 5925 6000 3478 9958 +5859 6074 5926 6001 3481 9817 +6073 6075 5927 6002 3482 9889 +6074 6289 5928 6003 3483 9961 +5862 6077 5929 6004 3484 9820 +6076 6078 5930 6005 3484 9892 +6077 6292 5931 6006 3484 9964 +5865 6080 5932 6007 3487 9823 +6079 6081 5933 6008 3488 9895 +6080 6295 5934 6009 3489 9967 +5868 6083 5935 6010 3490 9826 +6082 6084 5936 6011 3490 9898 +6083 6298 5937 6012 3490 9970 +5871 6086 5938 6013 3493 9829 +6085 6087 5939 6014 3494 9901 +6086 6301 5940 6015 3495 9973 +5874 6089 5941 6016 3496 9832 +6088 6090 5942 6017 3496 9904 +6089 6304 5943 6018 3496 9976 +5877 6092 5944 6019 3499 9835 +6091 6093 5945 6020 3500 9907 +6092 6307 5946 6021 3501 9979 +5880 6095 5947 6022 3502 9838 +6094 6096 5948 6023 3502 9910 +6095 6310 5949 6024 3502 9982 +5883 6098 5950 6025 3505 9841 +6097 6099 5951 6026 3506 9913 +6098 6313 5952 6027 3507 9985 +5886 6101 5953 6028 3508 9844 +6100 6102 5954 6029 3508 9916 +6101 6316 5955 6030 3508 9988 +5889 6104 5956 6031 3511 9847 +6103 6105 5957 6032 3512 9919 +6104 6319 5958 6033 3513 9991 +5892 6107 5959 6034 3514 9850 +6106 6108 5960 6035 3514 9922 +6107 6322 5961 6036 3514 9994 +5895 6110 5962 6037 3517 9853 +6109 6111 5963 6038 3518 9925 +6110 6325 5964 6039 3519 9997 +5898 6113 5965 6040 3520 9856 +6112 6114 5966 6041 3520 9928 +6113 6328 5967 6042 3520 10000 +5901 6116 5968 6043 3523 9859 +6115 6117 5969 6044 3524 9931 +6116 6331 5970 6045 3525 10003 +5904 6119 5971 6046 3526 9862 +6118 6120 5972 6047 3526 9934 +6119 6334 5973 6048 3526 10006 +5907 6122 5974 6049 3529 9865 +6121 6123 5975 6050 3530 9937 +6122 6337 5976 6051 3531 10009 +5910 6125 5977 6052 3532 9868 +6124 6126 5978 6053 3532 9940 +6125 6340 5979 6054 3532 10012 +5913 6128 5980 6055 3535 9871 +6127 6129 5981 6056 3536 9943 +6128 6343 5982 6057 3537 10015 +5916 6131 5983 6058 3538 9874 +6130 6132 5984 6059 3538 9946 +6131 6346 5985 6060 3538 10018 +5919 6134 5986 6061 3541 9877 +6133 6135 5987 6062 3542 9949 +6134 6349 5988 6063 3543 10021 +5922 6137 6208 6283 3544 10026 +6136 6138 6209 6284 3545 10098 +6137 6352 6210 6285 3546 10170 +5925 6140 6211 6286 3549 10029 +6139 6141 6212 6287 3549 10101 +6140 6355 6213 6288 3549 10173 +5928 6143 6214 6289 3550 10032 +6142 6144 6215 6290 3551 10104 +6143 6358 6216 6291 3552 10176 +5931 6146 6217 6292 3555 10035 +6145 6147 6218 6293 3555 10107 +6146 6361 6219 6294 3555 10179 +5934 6149 6220 6295 3556 10038 +6148 6150 6221 6296 3557 10110 +6149 6364 6222 6297 3558 10182 +5937 6152 6223 6298 3561 10041 +6151 6153 6224 6299 3561 10113 +6152 6367 6225 6300 3561 10185 +5940 6155 6226 6301 3562 10044 +6154 6156 6227 6302 3563 10116 +6155 6370 6228 6303 3564 10188 +5943 6158 6229 6304 3567 10047 +6157 6159 6230 6305 3567 10119 +6158 6373 6231 6306 3567 10191 +5946 6161 6232 6307 3568 10050 +6160 6162 6233 6308 3569 10122 +6161 6376 6234 6309 3570 10194 +5949 6164 6235 6310 3573 10053 +6163 6165 6236 6311 3573 10125 +6164 6379 6237 6312 3573 10197 +5952 6167 6238 6313 3574 10056 +6166 6168 6239 6314 3575 10128 +6167 6382 6240 6315 3576 10200 +5955 6170 6241 6316 3579 10059 +6169 6171 6242 6317 3579 10131 +6170 6385 6243 6318 3579 10203 +5958 6173 6244 6319 3580 10062 +6172 6174 6245 6320 3581 10134 +6173 6388 6246 6321 3582 10206 +5961 6176 6247 6322 3585 10065 +6175 6177 6248 6323 3585 10137 +6176 6391 6249 6324 3585 10209 +5964 6179 6250 6325 3586 10068 +6178 6180 6251 6326 3587 10140 +6179 6394 6252 6327 3588 10212 +5967 6182 6253 6328 3591 10071 +6181 6183 6254 6329 3591 10143 +6182 6397 6255 6330 3591 10215 +5970 6185 6256 6331 3592 10074 +6184 6186 6257 6332 3593 10146 +6185 6400 6258 6333 3594 10218 +5973 6188 6259 6334 3597 10077 +6187 6189 6260 6335 3597 10149 +6188 6403 6261 6336 3597 10221 +5976 6191 6262 6337 3598 10080 +6190 6192 6263 6338 3599 10152 +6191 6406 6264 6339 3600 10224 +5979 6194 6265 6340 3603 10083 +6193 6195 6266 6341 3603 10155 +6194 6409 6267 6342 3603 10227 +5982 6197 6268 6343 3604 10086 +6196 6198 6269 6344 3605 10158 +6197 6412 6270 6345 3606 10230 +5985 6200 6271 6346 3609 10089 +6199 6201 6272 6347 3609 10161 +6200 6415 6273 6348 3609 10233 +5988 6203 6274 6349 3610 10092 +6202 6204 6275 6350 3611 10164 +6203 6418 6276 6351 3612 10236 +5991 6206 6277 6205 3615 10095 +6205 6207 6278 6206 3615 10167 +6206 6421 6279 6207 3615 10239 +5994 6209 6280 6136 3544 10025 +6208 6210 6281 6137 3545 10097 +6209 6424 6282 6138 3546 10169 +5997 6212 6283 6139 3548 10028 +6211 6213 6284 6140 3548 10100 +6212 6427 6285 6141 3548 10172 +6000 6215 6286 6142 3550 10031 +6214 6216 6287 6143 3551 10103 +6215 6430 6288 6144 3552 10175 +6003 6218 6289 6145 3554 10034 +6217 6219 6290 6146 3554 10106 +6218 6433 6291 6147 3554 10178 +6006 6221 6292 6148 3556 10037 +6220 6222 6293 6149 3557 10109 +6221 6436 6294 6150 3558 10181 +6009 6224 6295 6151 3560 10040 +6223 6225 6296 6152 3560 10112 +6224 6439 6297 6153 3560 10184 +6012 6227 6298 6154 3562 10043 +6226 6228 6299 6155 3563 10115 +6227 6442 6300 6156 3564 10187 +6015 6230 6301 6157 3566 10046 +6229 6231 6302 6158 3566 10118 +6230 6445 6303 6159 3566 10190 +6018 6233 6304 6160 3568 10049 +6232 6234 6305 6161 3569 10121 +6233 6448 6306 6162 3570 10193 +6021 6236 6307 6163 3572 10052 +6235 6237 6308 6164 3572 10124 +6236 6451 6309 6165 3572 10196 +6024 6239 6310 6166 3574 10055 +6238 6240 6311 6167 3575 10127 +6239 6454 6312 6168 3576 10199 +6027 6242 6313 6169 3578 10058 +6241 6243 6314 6170 3578 10130 +6242 6457 6315 6171 3578 10202 +6030 6245 6316 6172 3580 10061 +6244 6246 6317 6173 3581 10133 +6245 6460 6318 6174 3582 10205 +6033 6248 6319 6175 3584 10064 +6247 6249 6320 6176 3584 10136 +6248 6463 6321 6177 3584 10208 +6036 6251 6322 6178 3586 10067 +6250 6252 6323 6179 3587 10139 +6251 6466 6324 6180 3588 10211 +6039 6254 6325 6181 3590 10070 +6253 6255 6326 6182 3590 10142 +6254 6469 6327 6183 3590 10214 +6042 6257 6328 6184 3592 10073 +6256 6258 6329 6185 3593 10145 +6257 6472 6330 6186 3594 10217 +6045 6260 6331 6187 3596 10076 +6259 6261 6332 6188 3596 10148 +6260 6475 6333 6189 3596 10220 +6048 6263 6334 6190 3598 10079 +6262 6264 6335 6191 3599 10151 +6263 6478 6336 6192 3600 10223 +6051 6266 6337 6193 3602 10082 +6265 6267 6338 6194 3602 10154 +6266 6481 6339 6195 3602 10226 +6054 6269 6340 6196 3604 10085 +6268 6270 6341 6197 3605 10157 +6269 6484 6342 6198 3606 10229 +6057 6272 6343 6199 3608 10088 +6271 6273 6344 6200 3608 10160 +6272 6487 6345 6201 3608 10232 +6060 6275 6346 6202 3610 10091 +6274 6276 6347 6203 3611 10163 +6275 6490 6348 6204 3612 10235 +6063 6278 6349 6205 3614 10094 +6277 6279 6350 6206 3614 10166 +6278 6493 6351 6207 3614 10238 +6066 6281 6280 6208 3544 10024 +6280 6282 6281 6209 3545 10096 +6281 6496 6282 6210 3546 10168 +6069 6284 6136 6211 3547 10027 +6283 6285 6137 6212 3547 10099 +6284 6499 6138 6213 3547 10171 +6072 6287 6139 6214 3550 10030 +6286 6288 6140 6215 3551 10102 +6287 6502 6141 6216 3552 10174 +6075 6290 6142 6217 3553 10033 +6289 6291 6143 6218 3553 10105 +6290 6505 6144 6219 3553 10177 +6078 6293 6145 6220 3556 10036 +6292 6294 6146 6221 3557 10108 +6293 6508 6147 6222 3558 10180 +6081 6296 6148 6223 3559 10039 +6295 6297 6149 6224 3559 10111 +6296 6511 6150 6225 3559 10183 +6084 6299 6151 6226 3562 10042 +6298 6300 6152 6227 3563 10114 +6299 6514 6153 6228 3564 10186 +6087 6302 6154 6229 3565 10045 +6301 6303 6155 6230 3565 10117 +6302 6517 6156 6231 3565 10189 +6090 6305 6157 6232 3568 10048 +6304 6306 6158 6233 3569 10120 +6305 6520 6159 6234 3570 10192 +6093 6308 6160 6235 3571 10051 +6307 6309 6161 6236 3571 10123 +6308 6523 6162 6237 3571 10195 +6096 6311 6163 6238 3574 10054 +6310 6312 6164 6239 3575 10126 +6311 6526 6165 6240 3576 10198 +6099 6314 6166 6241 3577 10057 +6313 6315 6167 6242 3577 10129 +6314 6529 6168 6243 3577 10201 +6102 6317 6169 6244 3580 10060 +6316 6318 6170 6245 3581 10132 +6317 6532 6171 6246 3582 10204 +6105 6320 6172 6247 3583 10063 +6319 6321 6173 6248 3583 10135 +6320 6535 6174 6249 3583 10207 +6108 6323 6175 6250 3586 10066 +6322 6324 6176 6251 3587 10138 +6323 6538 6177 6252 3588 10210 +6111 6326 6178 6253 3589 10069 +6325 6327 6179 6254 3589 10141 +6326 6541 6180 6255 3589 10213 +6114 6329 6181 6256 3592 10072 +6328 6330 6182 6257 3593 10144 +6329 6544 6183 6258 3594 10216 +6117 6332 6184 6259 3595 10075 +6331 6333 6185 6260 3595 10147 +6332 6547 6186 6261 3595 10219 +6120 6335 6187 6262 3598 10078 +6334 6336 6188 6263 3599 10150 +6335 6550 6189 6264 3600 10222 +6123 6338 6190 6265 3601 10081 +6337 6339 6191 6266 3601 10153 +6338 6553 6192 6267 3601 10225 +6126 6341 6193 6268 3604 10084 +6340 6342 6194 6269 3605 10156 +6341 6556 6195 6270 3606 10228 +6129 6344 6196 6271 3607 10087 +6343 6345 6197 6272 3607 10159 +6344 6559 6198 6273 3607 10231 +6132 6347 6199 6274 3610 10090 +6346 6348 6200 6275 3611 10162 +6347 6562 6201 6276 3612 10234 +6135 6350 6202 6277 3613 10093 +6349 6351 6203 6278 3613 10165 +6350 6565 6204 6279 3613 10237 +6138 6353 6424 6499 3618 10242 +6352 6354 6425 6500 3618 10314 +6353 6568 6426 6501 3618 10386 +6141 6356 6427 6502 3619 10245 +6355 6357 6428 6503 3620 10317 +6356 6571 6429 6504 3621 10389 +6144 6359 6430 6505 3624 10248 +6358 6360 6431 6506 3624 10320 +6359 6574 6432 6507 3624 10392 +6147 6362 6433 6508 3625 10251 +6361 6363 6434 6509 3626 10323 +6362 6577 6435 6510 3627 10395 +6150 6365 6436 6511 3630 10254 +6364 6366 6437 6512 3630 10326 +6365 6580 6438 6513 3630 10398 +6153 6368 6439 6514 3631 10257 +6367 6369 6440 6515 3632 10329 +6368 6583 6441 6516 3633 10401 +6156 6371 6442 6517 3636 10260 +6370 6372 6443 6518 3636 10332 +6371 6586 6444 6519 3636 10404 +6159 6374 6445 6520 3637 10263 +6373 6375 6446 6521 3638 10335 +6374 6589 6447 6522 3639 10407 +6162 6377 6448 6523 3642 10266 +6376 6378 6449 6524 3642 10338 +6377 6592 6450 6525 3642 10410 +6165 6380 6451 6526 3643 10269 +6379 6381 6452 6527 3644 10341 +6380 6595 6453 6528 3645 10413 +6168 6383 6454 6529 3648 10272 +6382 6384 6455 6530 3648 10344 +6383 6598 6456 6531 3648 10416 +6171 6386 6457 6532 3649 10275 +6385 6387 6458 6533 3650 10347 +6386 6601 6459 6534 3651 10419 +6174 6389 6460 6535 3654 10278 +6388 6390 6461 6536 3654 10350 +6389 6604 6462 6537 3654 10422 +6177 6392 6463 6538 3655 10281 +6391 6393 6464 6539 3656 10353 +6392 6607 6465 6540 3657 10425 +6180 6395 6466 6541 3660 10284 +6394 6396 6467 6542 3660 10356 +6395 6610 6468 6543 3660 10428 +6183 6398 6469 6544 3661 10287 +6397 6399 6470 6545 3662 10359 +6398 6613 6471 6546 3663 10431 +6186 6401 6472 6547 3666 10290 +6400 6402 6473 6548 3666 10362 +6401 6616 6474 6549 3666 10434 +6189 6404 6475 6550 3667 10293 +6403 6405 6476 6551 3668 10365 +6404 6619 6477 6552 3669 10437 +6192 6407 6478 6553 3672 10296 +6406 6408 6479 6554 3672 10368 +6407 6622 6480 6555 3672 10440 +6195 6410 6481 6556 3673 10299 +6409 6411 6482 6557 3674 10371 +6410 6625 6483 6558 3675 10443 +6198 6413 6484 6559 3678 10302 +6412 6414 6485 6560 3678 10374 +6413 6628 6486 6561 3678 10446 +6201 6416 6487 6562 3679 10305 +6415 6417 6488 6563 3680 10377 +6416 6631 6489 6564 3681 10449 +6204 6419 6490 6565 3684 10308 +6418 6420 6491 6566 3684 10380 +6419 6634 6492 6567 3684 10452 +6207 6422 6493 6421 3685 10311 +6421 6423 6494 6422 3686 10383 +6422 6637 6495 6423 3687 10455 +6210 6425 6496 6352 3617 10241 +6424 6426 6497 6353 3617 10313 +6425 6640 6498 6354 3617 10385 +6213 6428 6499 6355 3619 10244 +6427 6429 6500 6356 3620 10316 +6428 6643 6501 6357 3621 10388 +6216 6431 6502 6358 3623 10247 +6430 6432 6503 6359 3623 10319 +6431 6646 6504 6360 3623 10391 +6219 6434 6505 6361 3625 10250 +6433 6435 6506 6362 3626 10322 +6434 6649 6507 6363 3627 10394 +6222 6437 6508 6364 3629 10253 +6436 6438 6509 6365 3629 10325 +6437 6652 6510 6366 3629 10397 +6225 6440 6511 6367 3631 10256 +6439 6441 6512 6368 3632 10328 +6440 6655 6513 6369 3633 10400 +6228 6443 6514 6370 3635 10259 +6442 6444 6515 6371 3635 10331 +6443 6658 6516 6372 3635 10403 +6231 6446 6517 6373 3637 10262 +6445 6447 6518 6374 3638 10334 +6446 6661 6519 6375 3639 10406 +6234 6449 6520 6376 3641 10265 +6448 6450 6521 6377 3641 10337 +6449 6664 6522 6378 3641 10409 +6237 6452 6523 6379 3643 10268 +6451 6453 6524 6380 3644 10340 +6452 6667 6525 6381 3645 10412 +6240 6455 6526 6382 3647 10271 +6454 6456 6527 6383 3647 10343 +6455 6670 6528 6384 3647 10415 +6243 6458 6529 6385 3649 10274 +6457 6459 6530 6386 3650 10346 +6458 6673 6531 6387 3651 10418 +6246 6461 6532 6388 3653 10277 +6460 6462 6533 6389 3653 10349 +6461 6676 6534 6390 3653 10421 +6249 6464 6535 6391 3655 10280 +6463 6465 6536 6392 3656 10352 +6464 6679 6537 6393 3657 10424 +6252 6467 6538 6394 3659 10283 +6466 6468 6539 6395 3659 10355 +6467 6682 6540 6396 3659 10427 +6255 6470 6541 6397 3661 10286 +6469 6471 6542 6398 3662 10358 +6470 6685 6543 6399 3663 10430 +6258 6473 6544 6400 3665 10289 +6472 6474 6545 6401 3665 10361 +6473 6688 6546 6402 3665 10433 +6261 6476 6547 6403 3667 10292 +6475 6477 6548 6404 3668 10364 +6476 6691 6549 6405 3669 10436 +6264 6479 6550 6406 3671 10295 +6478 6480 6551 6407 3671 10367 +6479 6694 6552 6408 3671 10439 +6267 6482 6553 6409 3673 10298 +6481 6483 6554 6410 3674 10370 +6482 6697 6555 6411 3675 10442 +6270 6485 6556 6412 3677 10301 +6484 6486 6557 6413 3677 10373 +6485 6700 6558 6414 3677 10445 +6273 6488 6559 6415 3679 10304 +6487 6489 6560 6416 3680 10376 +6488 6703 6561 6417 3681 10448 +6276 6491 6562 6418 3683 10307 +6490 6492 6563 6419 3683 10379 +6491 6706 6564 6420 3683 10451 +6279 6494 6565 6421 3685 10310 +6493 6495 6566 6422 3686 10382 +6494 6709 6567 6423 3687 10454 +6282 6497 6496 6424 3616 10240 +6496 6498 6497 6425 3616 10312 +6497 6712 6498 6426 3616 10384 +6285 6500 6352 6427 3619 10243 +6499 6501 6353 6428 3620 10315 +6500 6715 6354 6429 3621 10387 +6288 6503 6355 6430 3622 10246 +6502 6504 6356 6431 3622 10318 +6503 6718 6357 6432 3622 10390 +6291 6506 6358 6433 3625 10249 +6505 6507 6359 6434 3626 10321 +6506 6721 6360 6435 3627 10393 +6294 6509 6361 6436 3628 10252 +6508 6510 6362 6437 3628 10324 +6509 6724 6363 6438 3628 10396 +6297 6512 6364 6439 3631 10255 +6511 6513 6365 6440 3632 10327 +6512 6727 6366 6441 3633 10399 +6300 6515 6367 6442 3634 10258 +6514 6516 6368 6443 3634 10330 +6515 6730 6369 6444 3634 10402 +6303 6518 6370 6445 3637 10261 +6517 6519 6371 6446 3638 10333 +6518 6733 6372 6447 3639 10405 +6306 6521 6373 6448 3640 10264 +6520 6522 6374 6449 3640 10336 +6521 6736 6375 6450 3640 10408 +6309 6524 6376 6451 3643 10267 +6523 6525 6377 6452 3644 10339 +6524 6739 6378 6453 3645 10411 +6312 6527 6379 6454 3646 10270 +6526 6528 6380 6455 3646 10342 +6527 6742 6381 6456 3646 10414 +6315 6530 6382 6457 3649 10273 +6529 6531 6383 6458 3650 10345 +6530 6745 6384 6459 3651 10417 +6318 6533 6385 6460 3652 10276 +6532 6534 6386 6461 3652 10348 +6533 6748 6387 6462 3652 10420 +6321 6536 6388 6463 3655 10279 +6535 6537 6389 6464 3656 10351 +6536 6751 6390 6465 3657 10423 +6324 6539 6391 6466 3658 10282 +6538 6540 6392 6467 3658 10354 +6539 6754 6393 6468 3658 10426 +6327 6542 6394 6469 3661 10285 +6541 6543 6395 6470 3662 10357 +6542 6757 6396 6471 3663 10429 +6330 6545 6397 6472 3664 10288 +6544 6546 6398 6473 3664 10360 +6545 6760 6399 6474 3664 10432 +6333 6548 6400 6475 3667 10291 +6547 6549 6401 6476 3668 10363 +6548 6763 6402 6477 3669 10435 +6336 6551 6403 6478 3670 10294 +6550 6552 6404 6479 3670 10366 +6551 6766 6405 6480 3670 10438 +6339 6554 6406 6481 3673 10297 +6553 6555 6407 6482 3674 10369 +6554 6769 6408 6483 3675 10441 +6342 6557 6409 6484 3676 10300 +6556 6558 6410 6485 3676 10372 +6557 6772 6411 6486 3676 10444 +6345 6560 6412 6487 3679 10303 +6559 6561 6413 6488 3680 10375 +6560 6775 6414 6489 3681 10447 +6348 6563 6415 6490 3682 10306 +6562 6564 6416 6491 3682 10378 +6563 6778 6417 6492 3682 10450 +6351 6566 6418 6493 3685 10309 +6565 6567 6419 6494 3686 10381 +6566 6781 6420 6495 3687 10453 +6354 6569 6640 6715 3688 10458 +6568 6570 6641 6716 3689 10530 +6569 6784 6642 6717 3690 10602 +6357 6572 6643 6718 3693 10461 +6571 6573 6644 6719 3693 10533 +6572 6787 6645 6720 3693 10605 +6360 6575 6646 6721 3694 10464 +6574 6576 6647 6722 3695 10536 +6575 6790 6648 6723 3696 10608 +6363 6578 6649 6724 3699 10467 +6577 6579 6650 6725 3699 10539 +6578 6793 6651 6726 3699 10611 +6366 6581 6652 6727 3700 10470 +6580 6582 6653 6728 3701 10542 +6581 6796 6654 6729 3702 10614 +6369 6584 6655 6730 3705 10473 +6583 6585 6656 6731 3705 10545 +6584 6799 6657 6732 3705 10617 +6372 6587 6658 6733 3706 10476 +6586 6588 6659 6734 3707 10548 +6587 6802 6660 6735 3708 10620 +6375 6590 6661 6736 3711 10479 +6589 6591 6662 6737 3711 10551 +6590 6805 6663 6738 3711 10623 +6378 6593 6664 6739 3712 10482 +6592 6594 6665 6740 3713 10554 +6593 6808 6666 6741 3714 10626 +6381 6596 6667 6742 3717 10485 +6595 6597 6668 6743 3717 10557 +6596 6811 6669 6744 3717 10629 +6384 6599 6670 6745 3718 10488 +6598 6600 6671 6746 3719 10560 +6599 6814 6672 6747 3720 10632 +6387 6602 6673 6748 3723 10491 +6601 6603 6674 6749 3723 10563 +6602 6817 6675 6750 3723 10635 +6390 6605 6676 6751 3724 10494 +6604 6606 6677 6752 3725 10566 +6605 6820 6678 6753 3726 10638 +6393 6608 6679 6754 3729 10497 +6607 6609 6680 6755 3729 10569 +6608 6823 6681 6756 3729 10641 +6396 6611 6682 6757 3730 10500 +6610 6612 6683 6758 3731 10572 +6611 6826 6684 6759 3732 10644 +6399 6614 6685 6760 3735 10503 +6613 6615 6686 6761 3735 10575 +6614 6829 6687 6762 3735 10647 +6402 6617 6688 6763 3736 10506 +6616 6618 6689 6764 3737 10578 +6617 6832 6690 6765 3738 10650 +6405 6620 6691 6766 3741 10509 +6619 6621 6692 6767 3741 10581 +6620 6835 6693 6768 3741 10653 +6408 6623 6694 6769 3742 10512 +6622 6624 6695 6770 3743 10584 +6623 6838 6696 6771 3744 10656 +6411 6626 6697 6772 3747 10515 +6625 6627 6698 6773 3747 10587 +6626 6841 6699 6774 3747 10659 +6414 6629 6700 6775 3748 10518 +6628 6630 6701 6776 3749 10590 +6629 6844 6702 6777 3750 10662 +6417 6632 6703 6778 3753 10521 +6631 6633 6704 6779 3753 10593 +6632 6847 6705 6780 3753 10665 +6420 6635 6706 6781 3754 10524 +6634 6636 6707 6782 3755 10596 +6635 6850 6708 6783 3756 10668 +6423 6638 6709 6637 3759 10527 +6637 6639 6710 6638 3759 10599 +6638 6853 6711 6639 3759 10671 +6426 6641 6712 6568 3688 10457 +6640 6642 6713 6569 3689 10529 +6641 6856 6714 6570 3690 10601 +6429 6644 6715 6571 3692 10460 +6643 6645 6716 6572 3692 10532 +6644 6859 6717 6573 3692 10604 +6432 6647 6718 6574 3694 10463 +6646 6648 6719 6575 3695 10535 +6647 6862 6720 6576 3696 10607 +6435 6650 6721 6577 3698 10466 +6649 6651 6722 6578 3698 10538 +6650 6865 6723 6579 3698 10610 +6438 6653 6724 6580 3700 10469 +6652 6654 6725 6581 3701 10541 +6653 6868 6726 6582 3702 10613 +6441 6656 6727 6583 3704 10472 +6655 6657 6728 6584 3704 10544 +6656 6871 6729 6585 3704 10616 +6444 6659 6730 6586 3706 10475 +6658 6660 6731 6587 3707 10547 +6659 6874 6732 6588 3708 10619 +6447 6662 6733 6589 3710 10478 +6661 6663 6734 6590 3710 10550 +6662 6877 6735 6591 3710 10622 +6450 6665 6736 6592 3712 10481 +6664 6666 6737 6593 3713 10553 +6665 6880 6738 6594 3714 10625 +6453 6668 6739 6595 3716 10484 +6667 6669 6740 6596 3716 10556 +6668 6883 6741 6597 3716 10628 +6456 6671 6742 6598 3718 10487 +6670 6672 6743 6599 3719 10559 +6671 6886 6744 6600 3720 10631 +6459 6674 6745 6601 3722 10490 +6673 6675 6746 6602 3722 10562 +6674 6889 6747 6603 3722 10634 +6462 6677 6748 6604 3724 10493 +6676 6678 6749 6605 3725 10565 +6677 6892 6750 6606 3726 10637 +6465 6680 6751 6607 3728 10496 +6679 6681 6752 6608 3728 10568 +6680 6895 6753 6609 3728 10640 +6468 6683 6754 6610 3730 10499 +6682 6684 6755 6611 3731 10571 +6683 6898 6756 6612 3732 10643 +6471 6686 6757 6613 3734 10502 +6685 6687 6758 6614 3734 10574 +6686 6901 6759 6615 3734 10646 +6474 6689 6760 6616 3736 10505 +6688 6690 6761 6617 3737 10577 +6689 6904 6762 6618 3738 10649 +6477 6692 6763 6619 3740 10508 +6691 6693 6764 6620 3740 10580 +6692 6907 6765 6621 3740 10652 +6480 6695 6766 6622 3742 10511 +6694 6696 6767 6623 3743 10583 +6695 6910 6768 6624 3744 10655 +6483 6698 6769 6625 3746 10514 +6697 6699 6770 6626 3746 10586 +6698 6913 6771 6627 3746 10658 +6486 6701 6772 6628 3748 10517 +6700 6702 6773 6629 3749 10589 +6701 6916 6774 6630 3750 10661 +6489 6704 6775 6631 3752 10520 +6703 6705 6776 6632 3752 10592 +6704 6919 6777 6633 3752 10664 +6492 6707 6778 6634 3754 10523 +6706 6708 6779 6635 3755 10595 +6707 6922 6780 6636 3756 10667 +6495 6710 6781 6637 3758 10526 +6709 6711 6782 6638 3758 10598 +6710 6925 6783 6639 3758 10670 +6498 6713 6712 6640 3688 10456 +6712 6714 6713 6641 3689 10528 +6713 6928 6714 6642 3690 10600 +6501 6716 6568 6643 3691 10459 +6715 6717 6569 6644 3691 10531 +6716 6931 6570 6645 3691 10603 +6504 6719 6571 6646 3694 10462 +6718 6720 6572 6647 3695 10534 +6719 6934 6573 6648 3696 10606 +6507 6722 6574 6649 3697 10465 +6721 6723 6575 6650 3697 10537 +6722 6937 6576 6651 3697 10609 +6510 6725 6577 6652 3700 10468 +6724 6726 6578 6653 3701 10540 +6725 6940 6579 6654 3702 10612 +6513 6728 6580 6655 3703 10471 +6727 6729 6581 6656 3703 10543 +6728 6943 6582 6657 3703 10615 +6516 6731 6583 6658 3706 10474 +6730 6732 6584 6659 3707 10546 +6731 6946 6585 6660 3708 10618 +6519 6734 6586 6661 3709 10477 +6733 6735 6587 6662 3709 10549 +6734 6949 6588 6663 3709 10621 +6522 6737 6589 6664 3712 10480 +6736 6738 6590 6665 3713 10552 +6737 6952 6591 6666 3714 10624 +6525 6740 6592 6667 3715 10483 +6739 6741 6593 6668 3715 10555 +6740 6955 6594 6669 3715 10627 +6528 6743 6595 6670 3718 10486 +6742 6744 6596 6671 3719 10558 +6743 6958 6597 6672 3720 10630 +6531 6746 6598 6673 3721 10489 +6745 6747 6599 6674 3721 10561 +6746 6961 6600 6675 3721 10633 +6534 6749 6601 6676 3724 10492 +6748 6750 6602 6677 3725 10564 +6749 6964 6603 6678 3726 10636 +6537 6752 6604 6679 3727 10495 +6751 6753 6605 6680 3727 10567 +6752 6967 6606 6681 3727 10639 +6540 6755 6607 6682 3730 10498 +6754 6756 6608 6683 3731 10570 +6755 6970 6609 6684 3732 10642 +6543 6758 6610 6685 3733 10501 +6757 6759 6611 6686 3733 10573 +6758 6973 6612 6687 3733 10645 +6546 6761 6613 6688 3736 10504 +6760 6762 6614 6689 3737 10576 +6761 6976 6615 6690 3738 10648 +6549 6764 6616 6691 3739 10507 +6763 6765 6617 6692 3739 10579 +6764 6979 6618 6693 3739 10651 +6552 6767 6619 6694 3742 10510 +6766 6768 6620 6695 3743 10582 +6767 6982 6621 6696 3744 10654 +6555 6770 6622 6697 3745 10513 +6769 6771 6623 6698 3745 10585 +6770 6985 6624 6699 3745 10657 +6558 6773 6625 6700 3748 10516 +6772 6774 6626 6701 3749 10588 +6773 6988 6627 6702 3750 10660 +6561 6776 6628 6703 3751 10519 +6775 6777 6629 6704 3751 10591 +6776 6991 6630 6705 3751 10663 +6564 6779 6631 6706 3754 10522 +6778 6780 6632 6707 3755 10594 +6779 6994 6633 6708 3756 10666 +6567 6782 6634 6709 3757 10525 +6781 6783 6635 6710 3757 10597 +6782 6997 6636 6711 3757 10669 +6570 6785 6856 6931 3762 10674 +6784 6786 6857 6932 3762 10746 +6785 7000 6858 6933 3762 10818 +6573 6788 6859 6934 3763 10677 +6787 6789 6860 6935 3764 10749 +6788 7003 6861 6936 3765 10821 +6576 6791 6862 6937 3768 10680 +6790 6792 6863 6938 3768 10752 +6791 7006 6864 6939 3768 10824 +6579 6794 6865 6940 3769 10683 +6793 6795 6866 6941 3770 10755 +6794 7009 6867 6942 3771 10827 +6582 6797 6868 6943 3774 10686 +6796 6798 6869 6944 3774 10758 +6797 7012 6870 6945 3774 10830 +6585 6800 6871 6946 3775 10689 +6799 6801 6872 6947 3776 10761 +6800 7015 6873 6948 3777 10833 +6588 6803 6874 6949 3780 10692 +6802 6804 6875 6950 3780 10764 +6803 7018 6876 6951 3780 10836 +6591 6806 6877 6952 3781 10695 +6805 6807 6878 6953 3782 10767 +6806 7021 6879 6954 3783 10839 +6594 6809 6880 6955 3786 10698 +6808 6810 6881 6956 3786 10770 +6809 7024 6882 6957 3786 10842 +6597 6812 6883 6958 3787 10701 +6811 6813 6884 6959 3788 10773 +6812 7027 6885 6960 3789 10845 +6600 6815 6886 6961 3792 10704 +6814 6816 6887 6962 3792 10776 +6815 7030 6888 6963 3792 10848 +6603 6818 6889 6964 3793 10707 +6817 6819 6890 6965 3794 10779 +6818 7033 6891 6966 3795 10851 +6606 6821 6892 6967 3798 10710 +6820 6822 6893 6968 3798 10782 +6821 7036 6894 6969 3798 10854 +6609 6824 6895 6970 3799 10713 +6823 6825 6896 6971 3800 10785 +6824 7039 6897 6972 3801 10857 +6612 6827 6898 6973 3804 10716 +6826 6828 6899 6974 3804 10788 +6827 7042 6900 6975 3804 10860 +6615 6830 6901 6976 3805 10719 +6829 6831 6902 6977 3806 10791 +6830 7045 6903 6978 3807 10863 +6618 6833 6904 6979 3810 10722 +6832 6834 6905 6980 3810 10794 +6833 7048 6906 6981 3810 10866 +6621 6836 6907 6982 3811 10725 +6835 6837 6908 6983 3812 10797 +6836 7051 6909 6984 3813 10869 +6624 6839 6910 6985 3816 10728 +6838 6840 6911 6986 3816 10800 +6839 7054 6912 6987 3816 10872 +6627 6842 6913 6988 3817 10731 +6841 6843 6914 6989 3818 10803 +6842 7057 6915 6990 3819 10875 +6630 6845 6916 6991 3822 10734 +6844 6846 6917 6992 3822 10806 +6845 7060 6918 6993 3822 10878 +6633 6848 6919 6994 3823 10737 +6847 6849 6920 6995 3824 10809 +6848 7063 6921 6996 3825 10881 +6636 6851 6922 6997 3828 10740 +6850 6852 6923 6998 3828 10812 +6851 7066 6924 6999 3828 10884 +6639 6854 6925 6853 3829 10743 +6853 6855 6926 6854 3830 10815 +6854 7069 6927 6855 3831 10887 +6642 6857 6928 6784 3761 10673 +6856 6858 6929 6785 3761 10745 +6857 7072 6930 6786 3761 10817 +6645 6860 6931 6787 3763 10676 +6859 6861 6932 6788 3764 10748 +6860 7075 6933 6789 3765 10820 +6648 6863 6934 6790 3767 10679 +6862 6864 6935 6791 3767 10751 +6863 7078 6936 6792 3767 10823 +6651 6866 6937 6793 3769 10682 +6865 6867 6938 6794 3770 10754 +6866 7081 6939 6795 3771 10826 +6654 6869 6940 6796 3773 10685 +6868 6870 6941 6797 3773 10757 +6869 7084 6942 6798 3773 10829 +6657 6872 6943 6799 3775 10688 +6871 6873 6944 6800 3776 10760 +6872 7087 6945 6801 3777 10832 +6660 6875 6946 6802 3779 10691 +6874 6876 6947 6803 3779 10763 +6875 7090 6948 6804 3779 10835 +6663 6878 6949 6805 3781 10694 +6877 6879 6950 6806 3782 10766 +6878 7093 6951 6807 3783 10838 +6666 6881 6952 6808 3785 10697 +6880 6882 6953 6809 3785 10769 +6881 7096 6954 6810 3785 10841 +6669 6884 6955 6811 3787 10700 +6883 6885 6956 6812 3788 10772 +6884 7099 6957 6813 3789 10844 +6672 6887 6958 6814 3791 10703 +6886 6888 6959 6815 3791 10775 +6887 7102 6960 6816 3791 10847 +6675 6890 6961 6817 3793 10706 +6889 6891 6962 6818 3794 10778 +6890 7105 6963 6819 3795 10850 +6678 6893 6964 6820 3797 10709 +6892 6894 6965 6821 3797 10781 +6893 7108 6966 6822 3797 10853 +6681 6896 6967 6823 3799 10712 +6895 6897 6968 6824 3800 10784 +6896 7111 6969 6825 3801 10856 +6684 6899 6970 6826 3803 10715 +6898 6900 6971 6827 3803 10787 +6899 7114 6972 6828 3803 10859 +6687 6902 6973 6829 3805 10718 +6901 6903 6974 6830 3806 10790 +6902 7117 6975 6831 3807 10862 +6690 6905 6976 6832 3809 10721 +6904 6906 6977 6833 3809 10793 +6905 7120 6978 6834 3809 10865 +6693 6908 6979 6835 3811 10724 +6907 6909 6980 6836 3812 10796 +6908 7123 6981 6837 3813 10868 +6696 6911 6982 6838 3815 10727 +6910 6912 6983 6839 3815 10799 +6911 7126 6984 6840 3815 10871 +6699 6914 6985 6841 3817 10730 +6913 6915 6986 6842 3818 10802 +6914 7129 6987 6843 3819 10874 +6702 6917 6988 6844 3821 10733 +6916 6918 6989 6845 3821 10805 +6917 7132 6990 6846 3821 10877 +6705 6920 6991 6847 3823 10736 +6919 6921 6992 6848 3824 10808 +6920 7135 6993 6849 3825 10880 +6708 6923 6994 6850 3827 10739 +6922 6924 6995 6851 3827 10811 +6923 7138 6996 6852 3827 10883 +6711 6926 6997 6853 3829 10742 +6925 6927 6998 6854 3830 10814 +6926 7141 6999 6855 3831 10886 +6714 6929 6928 6856 3760 10672 +6928 6930 6929 6857 3760 10744 +6929 7144 6930 6858 3760 10816 +6717 6932 6784 6859 3763 10675 +6931 6933 6785 6860 3764 10747 +6932 7147 6786 6861 3765 10819 +6720 6935 6787 6862 3766 10678 +6934 6936 6788 6863 3766 10750 +6935 7150 6789 6864 3766 10822 +6723 6938 6790 6865 3769 10681 +6937 6939 6791 6866 3770 10753 +6938 7153 6792 6867 3771 10825 +6726 6941 6793 6868 3772 10684 +6940 6942 6794 6869 3772 10756 +6941 7156 6795 6870 3772 10828 +6729 6944 6796 6871 3775 10687 +6943 6945 6797 6872 3776 10759 +6944 7159 6798 6873 3777 10831 +6732 6947 6799 6874 3778 10690 +6946 6948 6800 6875 3778 10762 +6947 7162 6801 6876 3778 10834 +6735 6950 6802 6877 3781 10693 +6949 6951 6803 6878 3782 10765 +6950 7165 6804 6879 3783 10837 +6738 6953 6805 6880 3784 10696 +6952 6954 6806 6881 3784 10768 +6953 7168 6807 6882 3784 10840 +6741 6956 6808 6883 3787 10699 +6955 6957 6809 6884 3788 10771 +6956 7171 6810 6885 3789 10843 +6744 6959 6811 6886 3790 10702 +6958 6960 6812 6887 3790 10774 +6959 7174 6813 6888 3790 10846 +6747 6962 6814 6889 3793 10705 +6961 6963 6815 6890 3794 10777 +6962 7177 6816 6891 3795 10849 +6750 6965 6817 6892 3796 10708 +6964 6966 6818 6893 3796 10780 +6965 7180 6819 6894 3796 10852 +6753 6968 6820 6895 3799 10711 +6967 6969 6821 6896 3800 10783 +6968 7183 6822 6897 3801 10855 +6756 6971 6823 6898 3802 10714 +6970 6972 6824 6899 3802 10786 +6971 7186 6825 6900 3802 10858 +6759 6974 6826 6901 3805 10717 +6973 6975 6827 6902 3806 10789 +6974 7189 6828 6903 3807 10861 +6762 6977 6829 6904 3808 10720 +6976 6978 6830 6905 3808 10792 +6977 7192 6831 6906 3808 10864 +6765 6980 6832 6907 3811 10723 +6979 6981 6833 6908 3812 10795 +6980 7195 6834 6909 3813 10867 +6768 6983 6835 6910 3814 10726 +6982 6984 6836 6911 3814 10798 +6983 7198 6837 6912 3814 10870 +6771 6986 6838 6913 3817 10729 +6985 6987 6839 6914 3818 10801 +6986 7201 6840 6915 3819 10873 +6774 6989 6841 6916 3820 10732 +6988 6990 6842 6917 3820 10804 +6989 7204 6843 6918 3820 10876 +6777 6992 6844 6919 3823 10735 +6991 6993 6845 6920 3824 10807 +6992 7207 6846 6921 3825 10879 +6780 6995 6847 6922 3826 10738 +6994 6996 6848 6923 3826 10810 +6995 7210 6849 6924 3826 10882 +6783 6998 6850 6925 3829 10741 +6997 6999 6851 6926 3830 10813 +6998 7213 6852 6927 3831 10885 +6786 7001 7072 7147 3832 10890 +7000 7002 7073 7148 3833 10962 +7001 7216 7074 7149 3834 11034 +6789 7004 7075 7150 3837 10893 +7003 7005 7076 7151 3837 10965 +7004 7219 7077 7152 3837 11037 +6792 7007 7078 7153 3838 10896 +7006 7008 7079 7154 3839 10968 +7007 7222 7080 7155 3840 11040 +6795 7010 7081 7156 3843 10899 +7009 7011 7082 7157 3843 10971 +7010 7225 7083 7158 3843 11043 +6798 7013 7084 7159 3844 10902 +7012 7014 7085 7160 3845 10974 +7013 7228 7086 7161 3846 11046 +6801 7016 7087 7162 3849 10905 +7015 7017 7088 7163 3849 10977 +7016 7231 7089 7164 3849 11049 +6804 7019 7090 7165 3850 10908 +7018 7020 7091 7166 3851 10980 +7019 7234 7092 7167 3852 11052 +6807 7022 7093 7168 3855 10911 +7021 7023 7094 7169 3855 10983 +7022 7237 7095 7170 3855 11055 +6810 7025 7096 7171 3856 10914 +7024 7026 7097 7172 3857 10986 +7025 7240 7098 7173 3858 11058 +6813 7028 7099 7174 3861 10917 +7027 7029 7100 7175 3861 10989 +7028 7243 7101 7176 3861 11061 +6816 7031 7102 7177 3862 10920 +7030 7032 7103 7178 3863 10992 +7031 7246 7104 7179 3864 11064 +6819 7034 7105 7180 3867 10923 +7033 7035 7106 7181 3867 10995 +7034 7249 7107 7182 3867 11067 +6822 7037 7108 7183 3868 10926 +7036 7038 7109 7184 3869 10998 +7037 7252 7110 7185 3870 11070 +6825 7040 7111 7186 3873 10929 +7039 7041 7112 7187 3873 11001 +7040 7255 7113 7188 3873 11073 +6828 7043 7114 7189 3874 10932 +7042 7044 7115 7190 3875 11004 +7043 7258 7116 7191 3876 11076 +6831 7046 7117 7192 3879 10935 +7045 7047 7118 7193 3879 11007 +7046 7261 7119 7194 3879 11079 +6834 7049 7120 7195 3880 10938 +7048 7050 7121 7196 3881 11010 +7049 7264 7122 7197 3882 11082 +6837 7052 7123 7198 3885 10941 +7051 7053 7124 7199 3885 11013 +7052 7267 7125 7200 3885 11085 +6840 7055 7126 7201 3886 10944 +7054 7056 7127 7202 3887 11016 +7055 7270 7128 7203 3888 11088 +6843 7058 7129 7204 3891 10947 +7057 7059 7130 7205 3891 11019 +7058 7273 7131 7206 3891 11091 +6846 7061 7132 7207 3892 10950 +7060 7062 7133 7208 3893 11022 +7061 7276 7134 7209 3894 11094 +6849 7064 7135 7210 3897 10953 +7063 7065 7136 7211 3897 11025 +7064 7279 7137 7212 3897 11097 +6852 7067 7138 7213 3898 10956 +7066 7068 7139 7214 3899 11028 +7067 7282 7140 7215 3900 11100 +6855 7070 7141 7069 3903 10959 +7069 7071 7142 7070 3903 11031 +7070 7285 7143 7071 3903 11103 +6858 7073 7144 7000 3832 10889 +7072 7074 7145 7001 3833 10961 +7073 7288 7146 7002 3834 11033 +6861 7076 7147 7003 3836 10892 +7075 7077 7148 7004 3836 10964 +7076 7291 7149 7005 3836 11036 +6864 7079 7150 7006 3838 10895 +7078 7080 7151 7007 3839 10967 +7079 7294 7152 7008 3840 11039 +6867 7082 7153 7009 3842 10898 +7081 7083 7154 7010 3842 10970 +7082 7297 7155 7011 3842 11042 +6870 7085 7156 7012 3844 10901 +7084 7086 7157 7013 3845 10973 +7085 7300 7158 7014 3846 11045 +6873 7088 7159 7015 3848 10904 +7087 7089 7160 7016 3848 10976 +7088 7303 7161 7017 3848 11048 +6876 7091 7162 7018 3850 10907 +7090 7092 7163 7019 3851 10979 +7091 7306 7164 7020 3852 11051 +6879 7094 7165 7021 3854 10910 +7093 7095 7166 7022 3854 10982 +7094 7309 7167 7023 3854 11054 +6882 7097 7168 7024 3856 10913 +7096 7098 7169 7025 3857 10985 +7097 7312 7170 7026 3858 11057 +6885 7100 7171 7027 3860 10916 +7099 7101 7172 7028 3860 10988 +7100 7315 7173 7029 3860 11060 +6888 7103 7174 7030 3862 10919 +7102 7104 7175 7031 3863 10991 +7103 7318 7176 7032 3864 11063 +6891 7106 7177 7033 3866 10922 +7105 7107 7178 7034 3866 10994 +7106 7321 7179 7035 3866 11066 +6894 7109 7180 7036 3868 10925 +7108 7110 7181 7037 3869 10997 +7109 7324 7182 7038 3870 11069 +6897 7112 7183 7039 3872 10928 +7111 7113 7184 7040 3872 11000 +7112 7327 7185 7041 3872 11072 +6900 7115 7186 7042 3874 10931 +7114 7116 7187 7043 3875 11003 +7115 7330 7188 7044 3876 11075 +6903 7118 7189 7045 3878 10934 +7117 7119 7190 7046 3878 11006 +7118 7333 7191 7047 3878 11078 +6906 7121 7192 7048 3880 10937 +7120 7122 7193 7049 3881 11009 +7121 7336 7194 7050 3882 11081 +6909 7124 7195 7051 3884 10940 +7123 7125 7196 7052 3884 11012 +7124 7339 7197 7053 3884 11084 +6912 7127 7198 7054 3886 10943 +7126 7128 7199 7055 3887 11015 +7127 7342 7200 7056 3888 11087 +6915 7130 7201 7057 3890 10946 +7129 7131 7202 7058 3890 11018 +7130 7345 7203 7059 3890 11090 +6918 7133 7204 7060 3892 10949 +7132 7134 7205 7061 3893 11021 +7133 7348 7206 7062 3894 11093 +6921 7136 7207 7063 3896 10952 +7135 7137 7208 7064 3896 11024 +7136 7351 7209 7065 3896 11096 +6924 7139 7210 7066 3898 10955 +7138 7140 7211 7067 3899 11027 +7139 7354 7212 7068 3900 11099 +6927 7142 7213 7069 3902 10958 +7141 7143 7214 7070 3902 11030 +7142 7357 7215 7071 3902 11102 +6930 7145 7144 7072 3832 10888 +7144 7146 7145 7073 3833 10960 +7145 7360 7146 7074 3834 11032 +6933 7148 7000 7075 3835 10891 +7147 7149 7001 7076 3835 10963 +7148 7363 7002 7077 3835 11035 +6936 7151 7003 7078 3838 10894 +7150 7152 7004 7079 3839 10966 +7151 7366 7005 7080 3840 11038 +6939 7154 7006 7081 3841 10897 +7153 7155 7007 7082 3841 10969 +7154 7369 7008 7083 3841 11041 +6942 7157 7009 7084 3844 10900 +7156 7158 7010 7085 3845 10972 +7157 7372 7011 7086 3846 11044 +6945 7160 7012 7087 3847 10903 +7159 7161 7013 7088 3847 10975 +7160 7375 7014 7089 3847 11047 +6948 7163 7015 7090 3850 10906 +7162 7164 7016 7091 3851 10978 +7163 7378 7017 7092 3852 11050 +6951 7166 7018 7093 3853 10909 +7165 7167 7019 7094 3853 10981 +7166 7381 7020 7095 3853 11053 +6954 7169 7021 7096 3856 10912 +7168 7170 7022 7097 3857 10984 +7169 7384 7023 7098 3858 11056 +6957 7172 7024 7099 3859 10915 +7171 7173 7025 7100 3859 10987 +7172 7387 7026 7101 3859 11059 +6960 7175 7027 7102 3862 10918 +7174 7176 7028 7103 3863 10990 +7175 7390 7029 7104 3864 11062 +6963 7178 7030 7105 3865 10921 +7177 7179 7031 7106 3865 10993 +7178 7393 7032 7107 3865 11065 +6966 7181 7033 7108 3868 10924 +7180 7182 7034 7109 3869 10996 +7181 7396 7035 7110 3870 11068 +6969 7184 7036 7111 3871 10927 +7183 7185 7037 7112 3871 10999 +7184 7399 7038 7113 3871 11071 +6972 7187 7039 7114 3874 10930 +7186 7188 7040 7115 3875 11002 +7187 7402 7041 7116 3876 11074 +6975 7190 7042 7117 3877 10933 +7189 7191 7043 7118 3877 11005 +7190 7405 7044 7119 3877 11077 +6978 7193 7045 7120 3880 10936 +7192 7194 7046 7121 3881 11008 +7193 7408 7047 7122 3882 11080 +6981 7196 7048 7123 3883 10939 +7195 7197 7049 7124 3883 11011 +7196 7411 7050 7125 3883 11083 +6984 7199 7051 7126 3886 10942 +7198 7200 7052 7127 3887 11014 +7199 7414 7053 7128 3888 11086 +6987 7202 7054 7129 3889 10945 +7201 7203 7055 7130 3889 11017 +7202 7417 7056 7131 3889 11089 +6990 7205 7057 7132 3892 10948 +7204 7206 7058 7133 3893 11020 +7205 7420 7059 7134 3894 11092 +6993 7208 7060 7135 3895 10951 +7207 7209 7061 7136 3895 11023 +7208 7423 7062 7137 3895 11095 +6996 7211 7063 7138 3898 10954 +7210 7212 7064 7139 3899 11026 +7211 7426 7065 7140 3900 11098 +6999 7214 7066 7141 3901 10957 +7213 7215 7067 7142 3901 11029 +7214 7429 7068 7143 3901 11101 +7002 7217 7288 7363 3906 11106 +7216 7218 7289 7364 3906 11178 +7217 7432 7290 7365 3906 11250 +7005 7220 7291 7366 3907 11109 +7219 7221 7292 7367 3908 11181 +7220 7435 7293 7368 3909 11253 +7008 7223 7294 7369 3912 11112 +7222 7224 7295 7370 3912 11184 +7223 7438 7296 7371 3912 11256 +7011 7226 7297 7372 3913 11115 +7225 7227 7298 7373 3914 11187 +7226 7441 7299 7374 3915 11259 +7014 7229 7300 7375 3918 11118 +7228 7230 7301 7376 3918 11190 +7229 7444 7302 7377 3918 11262 +7017 7232 7303 7378 3919 11121 +7231 7233 7304 7379 3920 11193 +7232 7447 7305 7380 3921 11265 +7020 7235 7306 7381 3924 11124 +7234 7236 7307 7382 3924 11196 +7235 7450 7308 7383 3924 11268 +7023 7238 7309 7384 3925 11127 +7237 7239 7310 7385 3926 11199 +7238 7453 7311 7386 3927 11271 +7026 7241 7312 7387 3930 11130 +7240 7242 7313 7388 3930 11202 +7241 7456 7314 7389 3930 11274 +7029 7244 7315 7390 3931 11133 +7243 7245 7316 7391 3932 11205 +7244 7459 7317 7392 3933 11277 +7032 7247 7318 7393 3936 11136 +7246 7248 7319 7394 3936 11208 +7247 7462 7320 7395 3936 11280 +7035 7250 7321 7396 3937 11139 +7249 7251 7322 7397 3938 11211 +7250 7465 7323 7398 3939 11283 +7038 7253 7324 7399 3942 11142 +7252 7254 7325 7400 3942 11214 +7253 7468 7326 7401 3942 11286 +7041 7256 7327 7402 3943 11145 +7255 7257 7328 7403 3944 11217 +7256 7471 7329 7404 3945 11289 +7044 7259 7330 7405 3948 11148 +7258 7260 7331 7406 3948 11220 +7259 7474 7332 7407 3948 11292 +7047 7262 7333 7408 3949 11151 +7261 7263 7334 7409 3950 11223 +7262 7477 7335 7410 3951 11295 +7050 7265 7336 7411 3954 11154 +7264 7266 7337 7412 3954 11226 +7265 7480 7338 7413 3954 11298 +7053 7268 7339 7414 3955 11157 +7267 7269 7340 7415 3956 11229 +7268 7483 7341 7416 3957 11301 +7056 7271 7342 7417 3960 11160 +7270 7272 7343 7418 3960 11232 +7271 7486 7344 7419 3960 11304 +7059 7274 7345 7420 3961 11163 +7273 7275 7346 7421 3962 11235 +7274 7489 7347 7422 3963 11307 +7062 7277 7348 7423 3966 11166 +7276 7278 7349 7424 3966 11238 +7277 7492 7350 7425 3966 11310 +7065 7280 7351 7426 3967 11169 +7279 7281 7352 7427 3968 11241 +7280 7495 7353 7428 3969 11313 +7068 7283 7354 7429 3972 11172 +7282 7284 7355 7430 3972 11244 +7283 7498 7356 7431 3972 11316 +7071 7286 7357 7285 3973 11175 +7285 7287 7358 7286 3974 11247 +7286 7501 7359 7287 3975 11319 +7074 7289 7360 7216 3905 11105 +7288 7290 7361 7217 3905 11177 +7289 7504 7362 7218 3905 11249 +7077 7292 7363 7219 3907 11108 +7291 7293 7364 7220 3908 11180 +7292 7507 7365 7221 3909 11252 +7080 7295 7366 7222 3911 11111 +7294 7296 7367 7223 3911 11183 +7295 7510 7368 7224 3911 11255 +7083 7298 7369 7225 3913 11114 +7297 7299 7370 7226 3914 11186 +7298 7513 7371 7227 3915 11258 +7086 7301 7372 7228 3917 11117 +7300 7302 7373 7229 3917 11189 +7301 7516 7374 7230 3917 11261 +7089 7304 7375 7231 3919 11120 +7303 7305 7376 7232 3920 11192 +7304 7519 7377 7233 3921 11264 +7092 7307 7378 7234 3923 11123 +7306 7308 7379 7235 3923 11195 +7307 7522 7380 7236 3923 11267 +7095 7310 7381 7237 3925 11126 +7309 7311 7382 7238 3926 11198 +7310 7525 7383 7239 3927 11270 +7098 7313 7384 7240 3929 11129 +7312 7314 7385 7241 3929 11201 +7313 7528 7386 7242 3929 11273 +7101 7316 7387 7243 3931 11132 +7315 7317 7388 7244 3932 11204 +7316 7531 7389 7245 3933 11276 +7104 7319 7390 7246 3935 11135 +7318 7320 7391 7247 3935 11207 +7319 7534 7392 7248 3935 11279 +7107 7322 7393 7249 3937 11138 +7321 7323 7394 7250 3938 11210 +7322 7537 7395 7251 3939 11282 +7110 7325 7396 7252 3941 11141 +7324 7326 7397 7253 3941 11213 +7325 7540 7398 7254 3941 11285 +7113 7328 7399 7255 3943 11144 +7327 7329 7400 7256 3944 11216 +7328 7543 7401 7257 3945 11288 +7116 7331 7402 7258 3947 11147 +7330 7332 7403 7259 3947 11219 +7331 7546 7404 7260 3947 11291 +7119 7334 7405 7261 3949 11150 +7333 7335 7406 7262 3950 11222 +7334 7549 7407 7263 3951 11294 +7122 7337 7408 7264 3953 11153 +7336 7338 7409 7265 3953 11225 +7337 7552 7410 7266 3953 11297 +7125 7340 7411 7267 3955 11156 +7339 7341 7412 7268 3956 11228 +7340 7555 7413 7269 3957 11300 +7128 7343 7414 7270 3959 11159 +7342 7344 7415 7271 3959 11231 +7343 7558 7416 7272 3959 11303 +7131 7346 7417 7273 3961 11162 +7345 7347 7418 7274 3962 11234 +7346 7561 7419 7275 3963 11306 +7134 7349 7420 7276 3965 11165 +7348 7350 7421 7277 3965 11237 +7349 7564 7422 7278 3965 11309 +7137 7352 7423 7279 3967 11168 +7351 7353 7424 7280 3968 11240 +7352 7567 7425 7281 3969 11312 +7140 7355 7426 7282 3971 11171 +7354 7356 7427 7283 3971 11243 +7355 7570 7428 7284 3971 11315 +7143 7358 7429 7285 3973 11174 +7357 7359 7430 7286 3974 11246 +7358 7573 7431 7287 3975 11318 +7146 7361 7360 7288 3904 11104 +7360 7362 7361 7289 3904 11176 +7361 7576 7362 7290 3904 11248 +7149 7364 7216 7291 3907 11107 +7363 7365 7217 7292 3908 11179 +7364 7579 7218 7293 3909 11251 +7152 7367 7219 7294 3910 11110 +7366 7368 7220 7295 3910 11182 +7367 7582 7221 7296 3910 11254 +7155 7370 7222 7297 3913 11113 +7369 7371 7223 7298 3914 11185 +7370 7585 7224 7299 3915 11257 +7158 7373 7225 7300 3916 11116 +7372 7374 7226 7301 3916 11188 +7373 7588 7227 7302 3916 11260 +7161 7376 7228 7303 3919 11119 +7375 7377 7229 7304 3920 11191 +7376 7591 7230 7305 3921 11263 +7164 7379 7231 7306 3922 11122 +7378 7380 7232 7307 3922 11194 +7379 7594 7233 7308 3922 11266 +7167 7382 7234 7309 3925 11125 +7381 7383 7235 7310 3926 11197 +7382 7597 7236 7311 3927 11269 +7170 7385 7237 7312 3928 11128 +7384 7386 7238 7313 3928 11200 +7385 7600 7239 7314 3928 11272 +7173 7388 7240 7315 3931 11131 +7387 7389 7241 7316 3932 11203 +7388 7603 7242 7317 3933 11275 +7176 7391 7243 7318 3934 11134 +7390 7392 7244 7319 3934 11206 +7391 7606 7245 7320 3934 11278 +7179 7394 7246 7321 3937 11137 +7393 7395 7247 7322 3938 11209 +7394 7609 7248 7323 3939 11281 +7182 7397 7249 7324 3940 11140 +7396 7398 7250 7325 3940 11212 +7397 7612 7251 7326 3940 11284 +7185 7400 7252 7327 3943 11143 +7399 7401 7253 7328 3944 11215 +7400 7615 7254 7329 3945 11287 +7188 7403 7255 7330 3946 11146 +7402 7404 7256 7331 3946 11218 +7403 7618 7257 7332 3946 11290 +7191 7406 7258 7333 3949 11149 +7405 7407 7259 7334 3950 11221 +7406 7621 7260 7335 3951 11293 +7194 7409 7261 7336 3952 11152 +7408 7410 7262 7337 3952 11224 +7409 7624 7263 7338 3952 11296 +7197 7412 7264 7339 3955 11155 +7411 7413 7265 7340 3956 11227 +7412 7627 7266 7341 3957 11299 +7200 7415 7267 7342 3958 11158 +7414 7416 7268 7343 3958 11230 +7415 7630 7269 7344 3958 11302 +7203 7418 7270 7345 3961 11161 +7417 7419 7271 7346 3962 11233 +7418 7633 7272 7347 3963 11305 +7206 7421 7273 7348 3964 11164 +7420 7422 7274 7349 3964 11236 +7421 7636 7275 7350 3964 11308 +7209 7424 7276 7351 3967 11167 +7423 7425 7277 7352 3968 11239 +7424 7639 7278 7353 3969 11311 +7212 7427 7279 7354 3970 11170 +7426 7428 7280 7355 3970 11242 +7427 7642 7281 7356 3970 11314 +7215 7430 7282 7357 3973 11173 +7429 7431 7283 7358 3974 11245 +7430 7645 7284 7359 3975 11317 +7218 7433 7504 7579 3976 11322 +7432 7434 7505 7580 3977 11394 +7433 7648 7506 7581 3978 11466 +7221 7436 7507 7582 3981 11325 +7435 7437 7508 7583 3981 11397 +7436 7651 7509 7584 3981 11469 +7224 7439 7510 7585 3982 11328 +7438 7440 7511 7586 3983 11400 +7439 7654 7512 7587 3984 11472 +7227 7442 7513 7588 3987 11331 +7441 7443 7514 7589 3987 11403 +7442 7657 7515 7590 3987 11475 +7230 7445 7516 7591 3988 11334 +7444 7446 7517 7592 3989 11406 +7445 7660 7518 7593 3990 11478 +7233 7448 7519 7594 3993 11337 +7447 7449 7520 7595 3993 11409 +7448 7663 7521 7596 3993 11481 +7236 7451 7522 7597 3994 11340 +7450 7452 7523 7598 3995 11412 +7451 7666 7524 7599 3996 11484 +7239 7454 7525 7600 3999 11343 +7453 7455 7526 7601 3999 11415 +7454 7669 7527 7602 3999 11487 +7242 7457 7528 7603 4000 11346 +7456 7458 7529 7604 4001 11418 +7457 7672 7530 7605 4002 11490 +7245 7460 7531 7606 4005 11349 +7459 7461 7532 7607 4005 11421 +7460 7675 7533 7608 4005 11493 +7248 7463 7534 7609 4006 11352 +7462 7464 7535 7610 4007 11424 +7463 7678 7536 7611 4008 11496 +7251 7466 7537 7612 4011 11355 +7465 7467 7538 7613 4011 11427 +7466 7681 7539 7614 4011 11499 +7254 7469 7540 7615 4012 11358 +7468 7470 7541 7616 4013 11430 +7469 7684 7542 7617 4014 11502 +7257 7472 7543 7618 4017 11361 +7471 7473 7544 7619 4017 11433 +7472 7687 7545 7620 4017 11505 +7260 7475 7546 7621 4018 11364 +7474 7476 7547 7622 4019 11436 +7475 7690 7548 7623 4020 11508 +7263 7478 7549 7624 4023 11367 +7477 7479 7550 7625 4023 11439 +7478 7693 7551 7626 4023 11511 +7266 7481 7552 7627 4024 11370 +7480 7482 7553 7628 4025 11442 +7481 7696 7554 7629 4026 11514 +7269 7484 7555 7630 4029 11373 +7483 7485 7556 7631 4029 11445 +7484 7699 7557 7632 4029 11517 +7272 7487 7558 7633 4030 11376 +7486 7488 7559 7634 4031 11448 +7487 7702 7560 7635 4032 11520 +7275 7490 7561 7636 4035 11379 +7489 7491 7562 7637 4035 11451 +7490 7705 7563 7638 4035 11523 +7278 7493 7564 7639 4036 11382 +7492 7494 7565 7640 4037 11454 +7493 7708 7566 7641 4038 11526 +7281 7496 7567 7642 4041 11385 +7495 7497 7568 7643 4041 11457 +7496 7711 7569 7644 4041 11529 +7284 7499 7570 7645 4042 11388 +7498 7500 7571 7646 4043 11460 +7499 7714 7572 7647 4044 11532 +7287 7502 7573 7501 4047 11391 +7501 7503 7574 7502 4047 11463 +7502 7717 7575 7503 4047 11535 +7290 7505 7576 7432 3976 11321 +7504 7506 7577 7433 3977 11393 +7505 7720 7578 7434 3978 11465 +7293 7508 7579 7435 3980 11324 +7507 7509 7580 7436 3980 11396 +7508 7723 7581 7437 3980 11468 +7296 7511 7582 7438 3982 11327 +7510 7512 7583 7439 3983 11399 +7511 7726 7584 7440 3984 11471 +7299 7514 7585 7441 3986 11330 +7513 7515 7586 7442 3986 11402 +7514 7729 7587 7443 3986 11474 +7302 7517 7588 7444 3988 11333 +7516 7518 7589 7445 3989 11405 +7517 7732 7590 7446 3990 11477 +7305 7520 7591 7447 3992 11336 +7519 7521 7592 7448 3992 11408 +7520 7735 7593 7449 3992 11480 +7308 7523 7594 7450 3994 11339 +7522 7524 7595 7451 3995 11411 +7523 7738 7596 7452 3996 11483 +7311 7526 7597 7453 3998 11342 +7525 7527 7598 7454 3998 11414 +7526 7741 7599 7455 3998 11486 +7314 7529 7600 7456 4000 11345 +7528 7530 7601 7457 4001 11417 +7529 7744 7602 7458 4002 11489 +7317 7532 7603 7459 4004 11348 +7531 7533 7604 7460 4004 11420 +7532 7747 7605 7461 4004 11492 +7320 7535 7606 7462 4006 11351 +7534 7536 7607 7463 4007 11423 +7535 7750 7608 7464 4008 11495 +7323 7538 7609 7465 4010 11354 +7537 7539 7610 7466 4010 11426 +7538 7753 7611 7467 4010 11498 +7326 7541 7612 7468 4012 11357 +7540 7542 7613 7469 4013 11429 +7541 7756 7614 7470 4014 11501 +7329 7544 7615 7471 4016 11360 +7543 7545 7616 7472 4016 11432 +7544 7759 7617 7473 4016 11504 +7332 7547 7618 7474 4018 11363 +7546 7548 7619 7475 4019 11435 +7547 7762 7620 7476 4020 11507 +7335 7550 7621 7477 4022 11366 +7549 7551 7622 7478 4022 11438 +7550 7765 7623 7479 4022 11510 +7338 7553 7624 7480 4024 11369 +7552 7554 7625 7481 4025 11441 +7553 7768 7626 7482 4026 11513 +7341 7556 7627 7483 4028 11372 +7555 7557 7628 7484 4028 11444 +7556 7771 7629 7485 4028 11516 +7344 7559 7630 7486 4030 11375 +7558 7560 7631 7487 4031 11447 +7559 7774 7632 7488 4032 11519 +7347 7562 7633 7489 4034 11378 +7561 7563 7634 7490 4034 11450 +7562 7777 7635 7491 4034 11522 +7350 7565 7636 7492 4036 11381 +7564 7566 7637 7493 4037 11453 +7565 7780 7638 7494 4038 11525 +7353 7568 7639 7495 4040 11384 +7567 7569 7640 7496 4040 11456 +7568 7783 7641 7497 4040 11528 +7356 7571 7642 7498 4042 11387 +7570 7572 7643 7499 4043 11459 +7571 7786 7644 7500 4044 11531 +7359 7574 7645 7501 4046 11390 +7573 7575 7646 7502 4046 11462 +7574 7789 7647 7503 4046 11534 +7362 7577 7576 7504 3976 11320 +7576 7578 7577 7505 3977 11392 +7577 7792 7578 7506 3978 11464 +7365 7580 7432 7507 3979 11323 +7579 7581 7433 7508 3979 11395 +7580 7795 7434 7509 3979 11467 +7368 7583 7435 7510 3982 11326 +7582 7584 7436 7511 3983 11398 +7583 7798 7437 7512 3984 11470 +7371 7586 7438 7513 3985 11329 +7585 7587 7439 7514 3985 11401 +7586 7801 7440 7515 3985 11473 +7374 7589 7441 7516 3988 11332 +7588 7590 7442 7517 3989 11404 +7589 7804 7443 7518 3990 11476 +7377 7592 7444 7519 3991 11335 +7591 7593 7445 7520 3991 11407 +7592 7807 7446 7521 3991 11479 +7380 7595 7447 7522 3994 11338 +7594 7596 7448 7523 3995 11410 +7595 7810 7449 7524 3996 11482 +7383 7598 7450 7525 3997 11341 +7597 7599 7451 7526 3997 11413 +7598 7813 7452 7527 3997 11485 +7386 7601 7453 7528 4000 11344 +7600 7602 7454 7529 4001 11416 +7601 7816 7455 7530 4002 11488 +7389 7604 7456 7531 4003 11347 +7603 7605 7457 7532 4003 11419 +7604 7819 7458 7533 4003 11491 +7392 7607 7459 7534 4006 11350 +7606 7608 7460 7535 4007 11422 +7607 7822 7461 7536 4008 11494 +7395 7610 7462 7537 4009 11353 +7609 7611 7463 7538 4009 11425 +7610 7825 7464 7539 4009 11497 +7398 7613 7465 7540 4012 11356 +7612 7614 7466 7541 4013 11428 +7613 7828 7467 7542 4014 11500 +7401 7616 7468 7543 4015 11359 +7615 7617 7469 7544 4015 11431 +7616 7831 7470 7545 4015 11503 +7404 7619 7471 7546 4018 11362 +7618 7620 7472 7547 4019 11434 +7619 7834 7473 7548 4020 11506 +7407 7622 7474 7549 4021 11365 +7621 7623 7475 7550 4021 11437 +7622 7837 7476 7551 4021 11509 +7410 7625 7477 7552 4024 11368 +7624 7626 7478 7553 4025 11440 +7625 7840 7479 7554 4026 11512 +7413 7628 7480 7555 4027 11371 +7627 7629 7481 7556 4027 11443 +7628 7843 7482 7557 4027 11515 +7416 7631 7483 7558 4030 11374 +7630 7632 7484 7559 4031 11446 +7631 7846 7485 7560 4032 11518 +7419 7634 7486 7561 4033 11377 +7633 7635 7487 7562 4033 11449 +7634 7849 7488 7563 4033 11521 +7422 7637 7489 7564 4036 11380 +7636 7638 7490 7565 4037 11452 +7637 7852 7491 7566 4038 11524 +7425 7640 7492 7567 4039 11383 +7639 7641 7493 7568 4039 11455 +7640 7855 7494 7569 4039 11527 +7428 7643 7495 7570 4042 11386 +7642 7644 7496 7571 4043 11458 +7643 7858 7497 7572 4044 11530 +7431 7646 7498 7573 4045 11389 +7645 7647 7499 7574 4045 11461 +7646 7861 7500 7575 4045 11533 +7434 7649 7720 7795 4050 11538 +7648 7650 7721 7796 4050 11610 +7649 7864 7722 7797 4050 11682 +7437 7652 7723 7798 4051 11541 +7651 7653 7724 7799 4052 11613 +7652 7867 7725 7800 4053 11685 +7440 7655 7726 7801 4056 11544 +7654 7656 7727 7802 4056 11616 +7655 7870 7728 7803 4056 11688 +7443 7658 7729 7804 4057 11547 +7657 7659 7730 7805 4058 11619 +7658 7873 7731 7806 4059 11691 +7446 7661 7732 7807 4062 11550 +7660 7662 7733 7808 4062 11622 +7661 7876 7734 7809 4062 11694 +7449 7664 7735 7810 4063 11553 +7663 7665 7736 7811 4064 11625 +7664 7879 7737 7812 4065 11697 +7452 7667 7738 7813 4068 11556 +7666 7668 7739 7814 4068 11628 +7667 7882 7740 7815 4068 11700 +7455 7670 7741 7816 4069 11559 +7669 7671 7742 7817 4070 11631 +7670 7885 7743 7818 4071 11703 +7458 7673 7744 7819 4074 11562 +7672 7674 7745 7820 4074 11634 +7673 7888 7746 7821 4074 11706 +7461 7676 7747 7822 4075 11565 +7675 7677 7748 7823 4076 11637 +7676 7891 7749 7824 4077 11709 +7464 7679 7750 7825 4080 11568 +7678 7680 7751 7826 4080 11640 +7679 7894 7752 7827 4080 11712 +7467 7682 7753 7828 4081 11571 +7681 7683 7754 7829 4082 11643 +7682 7897 7755 7830 4083 11715 +7470 7685 7756 7831 4086 11574 +7684 7686 7757 7832 4086 11646 +7685 7900 7758 7833 4086 11718 +7473 7688 7759 7834 4087 11577 +7687 7689 7760 7835 4088 11649 +7688 7903 7761 7836 4089 11721 +7476 7691 7762 7837 4092 11580 +7690 7692 7763 7838 4092 11652 +7691 7906 7764 7839 4092 11724 +7479 7694 7765 7840 4093 11583 +7693 7695 7766 7841 4094 11655 +7694 7909 7767 7842 4095 11727 +7482 7697 7768 7843 4098 11586 +7696 7698 7769 7844 4098 11658 +7697 7912 7770 7845 4098 11730 +7485 7700 7771 7846 4099 11589 +7699 7701 7772 7847 4100 11661 +7700 7915 7773 7848 4101 11733 +7488 7703 7774 7849 4104 11592 +7702 7704 7775 7850 4104 11664 +7703 7918 7776 7851 4104 11736 +7491 7706 7777 7852 4105 11595 +7705 7707 7778 7853 4106 11667 +7706 7921 7779 7854 4107 11739 +7494 7709 7780 7855 4110 11598 +7708 7710 7781 7856 4110 11670 +7709 7924 7782 7857 4110 11742 +7497 7712 7783 7858 4111 11601 +7711 7713 7784 7859 4112 11673 +7712 7927 7785 7860 4113 11745 +7500 7715 7786 7861 4116 11604 +7714 7716 7787 7862 4116 11676 +7715 7930 7788 7863 4116 11748 +7503 7718 7789 7717 4117 11607 +7717 7719 7790 7718 4118 11679 +7718 7933 7791 7719 4119 11751 +7506 7721 7792 7648 4049 11537 +7720 7722 7793 7649 4049 11609 +7721 7936 7794 7650 4049 11681 +7509 7724 7795 7651 4051 11540 +7723 7725 7796 7652 4052 11612 +7724 7939 7797 7653 4053 11684 +7512 7727 7798 7654 4055 11543 +7726 7728 7799 7655 4055 11615 +7727 7942 7800 7656 4055 11687 +7515 7730 7801 7657 4057 11546 +7729 7731 7802 7658 4058 11618 +7730 7945 7803 7659 4059 11690 +7518 7733 7804 7660 4061 11549 +7732 7734 7805 7661 4061 11621 +7733 7948 7806 7662 4061 11693 +7521 7736 7807 7663 4063 11552 +7735 7737 7808 7664 4064 11624 +7736 7951 7809 7665 4065 11696 +7524 7739 7810 7666 4067 11555 +7738 7740 7811 7667 4067 11627 +7739 7954 7812 7668 4067 11699 +7527 7742 7813 7669 4069 11558 +7741 7743 7814 7670 4070 11630 +7742 7957 7815 7671 4071 11702 +7530 7745 7816 7672 4073 11561 +7744 7746 7817 7673 4073 11633 +7745 7960 7818 7674 4073 11705 +7533 7748 7819 7675 4075 11564 +7747 7749 7820 7676 4076 11636 +7748 7963 7821 7677 4077 11708 +7536 7751 7822 7678 4079 11567 +7750 7752 7823 7679 4079 11639 +7751 7966 7824 7680 4079 11711 +7539 7754 7825 7681 4081 11570 +7753 7755 7826 7682 4082 11642 +7754 7969 7827 7683 4083 11714 +7542 7757 7828 7684 4085 11573 +7756 7758 7829 7685 4085 11645 +7757 7972 7830 7686 4085 11717 +7545 7760 7831 7687 4087 11576 +7759 7761 7832 7688 4088 11648 +7760 7975 7833 7689 4089 11720 +7548 7763 7834 7690 4091 11579 +7762 7764 7835 7691 4091 11651 +7763 7978 7836 7692 4091 11723 +7551 7766 7837 7693 4093 11582 +7765 7767 7838 7694 4094 11654 +7766 7981 7839 7695 4095 11726 +7554 7769 7840 7696 4097 11585 +7768 7770 7841 7697 4097 11657 +7769 7984 7842 7698 4097 11729 +7557 7772 7843 7699 4099 11588 +7771 7773 7844 7700 4100 11660 +7772 7987 7845 7701 4101 11732 +7560 7775 7846 7702 4103 11591 +7774 7776 7847 7703 4103 11663 +7775 7990 7848 7704 4103 11735 +7563 7778 7849 7705 4105 11594 +7777 7779 7850 7706 4106 11666 +7778 7993 7851 7707 4107 11738 +7566 7781 7852 7708 4109 11597 +7780 7782 7853 7709 4109 11669 +7781 7996 7854 7710 4109 11741 +7569 7784 7855 7711 4111 11600 +7783 7785 7856 7712 4112 11672 +7784 7999 7857 7713 4113 11744 +7572 7787 7858 7714 4115 11603 +7786 7788 7859 7715 4115 11675 +7787 8002 7860 7716 4115 11747 +7575 7790 7861 7717 4117 11606 +7789 7791 7862 7718 4118 11678 +7790 8005 7863 7719 4119 11750 +7578 7793 7792 7720 4048 11536 +7792 7794 7793 7721 4048 11608 +7793 8008 7794 7722 4048 11680 +7581 7796 7648 7723 4051 11539 +7795 7797 7649 7724 4052 11611 +7796 8011 7650 7725 4053 11683 +7584 7799 7651 7726 4054 11542 +7798 7800 7652 7727 4054 11614 +7799 8014 7653 7728 4054 11686 +7587 7802 7654 7729 4057 11545 +7801 7803 7655 7730 4058 11617 +7802 8017 7656 7731 4059 11689 +7590 7805 7657 7732 4060 11548 +7804 7806 7658 7733 4060 11620 +7805 8020 7659 7734 4060 11692 +7593 7808 7660 7735 4063 11551 +7807 7809 7661 7736 4064 11623 +7808 8023 7662 7737 4065 11695 +7596 7811 7663 7738 4066 11554 +7810 7812 7664 7739 4066 11626 +7811 8026 7665 7740 4066 11698 +7599 7814 7666 7741 4069 11557 +7813 7815 7667 7742 4070 11629 +7814 8029 7668 7743 4071 11701 +7602 7817 7669 7744 4072 11560 +7816 7818 7670 7745 4072 11632 +7817 8032 7671 7746 4072 11704 +7605 7820 7672 7747 4075 11563 +7819 7821 7673 7748 4076 11635 +7820 8035 7674 7749 4077 11707 +7608 7823 7675 7750 4078 11566 +7822 7824 7676 7751 4078 11638 +7823 8038 7677 7752 4078 11710 +7611 7826 7678 7753 4081 11569 +7825 7827 7679 7754 4082 11641 +7826 8041 7680 7755 4083 11713 +7614 7829 7681 7756 4084 11572 +7828 7830 7682 7757 4084 11644 +7829 8044 7683 7758 4084 11716 +7617 7832 7684 7759 4087 11575 +7831 7833 7685 7760 4088 11647 +7832 8047 7686 7761 4089 11719 +7620 7835 7687 7762 4090 11578 +7834 7836 7688 7763 4090 11650 +7835 8050 7689 7764 4090 11722 +7623 7838 7690 7765 4093 11581 +7837 7839 7691 7766 4094 11653 +7838 8053 7692 7767 4095 11725 +7626 7841 7693 7768 4096 11584 +7840 7842 7694 7769 4096 11656 +7841 8056 7695 7770 4096 11728 +7629 7844 7696 7771 4099 11587 +7843 7845 7697 7772 4100 11659 +7844 8059 7698 7773 4101 11731 +7632 7847 7699 7774 4102 11590 +7846 7848 7700 7775 4102 11662 +7847 8062 7701 7776 4102 11734 +7635 7850 7702 7777 4105 11593 +7849 7851 7703 7778 4106 11665 +7850 8065 7704 7779 4107 11737 +7638 7853 7705 7780 4108 11596 +7852 7854 7706 7781 4108 11668 +7853 8068 7707 7782 4108 11740 +7641 7856 7708 7783 4111 11599 +7855 7857 7709 7784 4112 11671 +7856 8071 7710 7785 4113 11743 +7644 7859 7711 7786 4114 11602 +7858 7860 7712 7787 4114 11674 +7859 8074 7713 7788 4114 11746 +7647 7862 7714 7789 4117 11605 +7861 7863 7715 7790 4118 11677 +7862 8077 7716 7791 4119 11749 +7650 7865 7936 8011 4120 11754 +7864 7866 7937 8012 4121 11826 +7865 7866 7938 8013 4122 11898 +7653 7868 7939 8014 4125 11757 +7867 7869 7940 8015 4125 11829 +7868 7869 7941 8016 4125 11901 +7656 7871 7942 8017 4126 11760 +7870 7872 7943 8018 4127 11832 +7871 7872 7944 8019 4128 11904 +7659 7874 7945 8020 4131 11763 +7873 7875 7946 8021 4131 11835 +7874 7875 7947 8022 4131 11907 +7662 7877 7948 8023 4132 11766 +7876 7878 7949 8024 4133 11838 +7877 7878 7950 8025 4134 11910 +7665 7880 7951 8026 4137 11769 +7879 7881 7952 8027 4137 11841 +7880 7881 7953 8028 4137 11913 +7668 7883 7954 8029 4138 11772 +7882 7884 7955 8030 4139 11844 +7883 7884 7956 8031 4140 11916 +7671 7886 7957 8032 4143 11775 +7885 7887 7958 8033 4143 11847 +7886 7887 7959 8034 4143 11919 +7674 7889 7960 8035 4144 11778 +7888 7890 7961 8036 4145 11850 +7889 7890 7962 8037 4146 11922 +7677 7892 7963 8038 4149 11781 +7891 7893 7964 8039 4149 11853 +7892 7893 7965 8040 4149 11925 +7680 7895 7966 8041 4150 11784 +7894 7896 7967 8042 4151 11856 +7895 7896 7968 8043 4152 11928 +7683 7898 7969 8044 4155 11787 +7897 7899 7970 8045 4155 11859 +7898 7899 7971 8046 4155 11931 +7686 7901 7972 8047 4156 11790 +7900 7902 7973 8048 4157 11862 +7901 7902 7974 8049 4158 11934 +7689 7904 7975 8050 4161 11793 +7903 7905 7976 8051 4161 11865 +7904 7905 7977 8052 4161 11937 +7692 7907 7978 8053 4162 11796 +7906 7908 7979 8054 4163 11868 +7907 7908 7980 8055 4164 11940 +7695 7910 7981 8056 4167 11799 +7909 7911 7982 8057 4167 11871 +7910 7911 7983 8058 4167 11943 +7698 7913 7984 8059 4168 11802 +7912 7914 7985 8060 4169 11874 +7913 7914 7986 8061 4170 11946 +7701 7916 7987 8062 4173 11805 +7915 7917 7988 8063 4173 11877 +7916 7917 7989 8064 4173 11949 +7704 7919 7990 8065 4174 11808 +7918 7920 7991 8066 4175 11880 +7919 7920 7992 8067 4176 11952 +7707 7922 7993 8068 4179 11811 +7921 7923 7994 8069 4179 11883 +7922 7923 7995 8070 4179 11955 +7710 7925 7996 8071 4180 11814 +7924 7926 7997 8072 4181 11886 +7925 7926 7998 8073 4182 11958 +7713 7928 7999 8074 4185 11817 +7927 7929 8000 8075 4185 11889 +7928 7929 8001 8076 4185 11961 +7716 7931 8002 8077 4186 11820 +7930 7932 8003 8078 4187 11892 +7931 7932 8004 8079 4188 11964 +7719 7934 8005 7933 4191 11823 +7933 7935 8006 7934 4191 11895 +7934 7935 8007 7935 4191 11967 +7722 7937 8008 7864 4120 11753 +7936 7938 8009 7865 4121 11825 +7937 7938 8010 7866 4122 11897 +7725 7940 8011 7867 4124 11756 +7939 7941 8012 7868 4124 11828 +7940 7941 8013 7869 4124 11900 +7728 7943 8014 7870 4126 11759 +7942 7944 8015 7871 4127 11831 +7943 7944 8016 7872 4128 11903 +7731 7946 8017 7873 4130 11762 +7945 7947 8018 7874 4130 11834 +7946 7947 8019 7875 4130 11906 +7734 7949 8020 7876 4132 11765 +7948 7950 8021 7877 4133 11837 +7949 7950 8022 7878 4134 11909 +7737 7952 8023 7879 4136 11768 +7951 7953 8024 7880 4136 11840 +7952 7953 8025 7881 4136 11912 +7740 7955 8026 7882 4138 11771 +7954 7956 8027 7883 4139 11843 +7955 7956 8028 7884 4140 11915 +7743 7958 8029 7885 4142 11774 +7957 7959 8030 7886 4142 11846 +7958 7959 8031 7887 4142 11918 +7746 7961 8032 7888 4144 11777 +7960 7962 8033 7889 4145 11849 +7961 7962 8034 7890 4146 11921 +7749 7964 8035 7891 4148 11780 +7963 7965 8036 7892 4148 11852 +7964 7965 8037 7893 4148 11924 +7752 7967 8038 7894 4150 11783 +7966 7968 8039 7895 4151 11855 +7967 7968 8040 7896 4152 11927 +7755 7970 8041 7897 4154 11786 +7969 7971 8042 7898 4154 11858 +7970 7971 8043 7899 4154 11930 +7758 7973 8044 7900 4156 11789 +7972 7974 8045 7901 4157 11861 +7973 7974 8046 7902 4158 11933 +7761 7976 8047 7903 4160 11792 +7975 7977 8048 7904 4160 11864 +7976 7977 8049 7905 4160 11936 +7764 7979 8050 7906 4162 11795 +7978 7980 8051 7907 4163 11867 +7979 7980 8052 7908 4164 11939 +7767 7982 8053 7909 4166 11798 +7981 7983 8054 7910 4166 11870 +7982 7983 8055 7911 4166 11942 +7770 7985 8056 7912 4168 11801 +7984 7986 8057 7913 4169 11873 +7985 7986 8058 7914 4170 11945 +7773 7988 8059 7915 4172 11804 +7987 7989 8060 7916 4172 11876 +7988 7989 8061 7917 4172 11948 +7776 7991 8062 7918 4174 11807 +7990 7992 8063 7919 4175 11879 +7991 7992 8064 7920 4176 11951 +7779 7994 8065 7921 4178 11810 +7993 7995 8066 7922 4178 11882 +7994 7995 8067 7923 4178 11954 +7782 7997 8068 7924 4180 11813 +7996 7998 8069 7925 4181 11885 +7997 7998 8070 7926 4182 11957 +7785 8000 8071 7927 4184 11816 +7999 8001 8072 7928 4184 11888 +8000 8001 8073 7929 4184 11960 +7788 8003 8074 7930 4186 11819 +8002 8004 8075 7931 4187 11891 +8003 8004 8076 7932 4188 11963 +7791 8006 8077 7933 4190 11822 +8005 8007 8078 7934 4190 11894 +8006 8007 8079 7935 4190 11966 +7794 8009 8008 7936 4120 11752 +8008 8010 8009 7937 4121 11824 +8009 8010 8010 7938 4122 11896 +7797 8012 7864 7939 4123 11755 +8011 8013 7865 7940 4123 11827 +8012 8013 7866 7941 4123 11899 +7800 8015 7867 7942 4126 11758 +8014 8016 7868 7943 4127 11830 +8015 8016 7869 7944 4128 11902 +7803 8018 7870 7945 4129 11761 +8017 8019 7871 7946 4129 11833 +8018 8019 7872 7947 4129 11905 +7806 8021 7873 7948 4132 11764 +8020 8022 7874 7949 4133 11836 +8021 8022 7875 7950 4134 11908 +7809 8024 7876 7951 4135 11767 +8023 8025 7877 7952 4135 11839 +8024 8025 7878 7953 4135 11911 +7812 8027 7879 7954 4138 11770 +8026 8028 7880 7955 4139 11842 +8027 8028 7881 7956 4140 11914 +7815 8030 7882 7957 4141 11773 +8029 8031 7883 7958 4141 11845 +8030 8031 7884 7959 4141 11917 +7818 8033 7885 7960 4144 11776 +8032 8034 7886 7961 4145 11848 +8033 8034 7887 7962 4146 11920 +7821 8036 7888 7963 4147 11779 +8035 8037 7889 7964 4147 11851 +8036 8037 7890 7965 4147 11923 +7824 8039 7891 7966 4150 11782 +8038 8040 7892 7967 4151 11854 +8039 8040 7893 7968 4152 11926 +7827 8042 7894 7969 4153 11785 +8041 8043 7895 7970 4153 11857 +8042 8043 7896 7971 4153 11929 +7830 8045 7897 7972 4156 11788 +8044 8046 7898 7973 4157 11860 +8045 8046 7899 7974 4158 11932 +7833 8048 7900 7975 4159 11791 +8047 8049 7901 7976 4159 11863 +8048 8049 7902 7977 4159 11935 +7836 8051 7903 7978 4162 11794 +8050 8052 7904 7979 4163 11866 +8051 8052 7905 7980 4164 11938 +7839 8054 7906 7981 4165 11797 +8053 8055 7907 7982 4165 11869 +8054 8055 7908 7983 4165 11941 +7842 8057 7909 7984 4168 11800 +8056 8058 7910 7985 4169 11872 +8057 8058 7911 7986 4170 11944 +7845 8060 7912 7987 4171 11803 +8059 8061 7913 7988 4171 11875 +8060 8061 7914 7989 4171 11947 +7848 8063 7915 7990 4174 11806 +8062 8064 7916 7991 4175 11878 +8063 8064 7917 7992 4176 11950 +7851 8066 7918 7993 4177 11809 +8065 8067 7919 7994 4177 11881 +8066 8067 7920 7995 4177 11953 +7854 8069 7921 7996 4180 11812 +8068 8070 7922 7997 4181 11884 +8069 8070 7923 7998 4182 11956 +7857 8072 7924 7999 4183 11815 +8071 8073 7925 8000 4183 11887 +8072 8073 7926 8001 4183 11959 +7860 8075 7927 8002 4186 11818 +8074 8076 7928 8003 4187 11890 +8075 8076 7929 8004 4188 11962 +7863 8078 7930 8005 4189 11821 +8077 8079 7931 8006 4189 11893 +8078 8079 7932 8007 4189 11965 +8080 8081 8080 8083 4196 11968 +8080 8084 8081 8082 4197 11969 +8083 8085 8081 8087 4194 11970 +8080 8088 8082 8083 4193 11971 +8081 8089 8084 8085 4198 11972 +8082 8090 8084 8086 4199 11973 +8087 8091 8085 8093 4200 11974 +8082 8094 8086 8088 4195 11975 +8083 8095 8087 8088 4192 11976 +8084 8096 8089 8090 4217 11977 +8085 8097 8089 8091 4208 11978 +8086 8098 8090 8092 4201 11979 +8093 8099 8091 8101 4220 11980 +8086 8102 8092 8094 4225 11981 +8087 8103 8093 8095 4214 11982 +8088 8104 8094 8095 4205 11983 +8089 8105 8096 8097 4218 11984 +8090 8106 8096 8098 4209 11985 +8091 8107 8097 8099 4202 11986 +8092 8108 8098 8100 4221 11987 +8101 8109 8099 8111 4212 11988 +8092 8112 8100 8102 4211 11989 +8093 8113 8101 8103 4226 11990 +8094 8114 8102 8104 4215 11991 +8095 8115 8103 8104 4206 11992 +8096 8116 8105 8106 4219 11993 +8097 8117 8105 8107 4210 11994 +8098 8118 8106 8108 4203 11995 +8099 8119 8107 8109 4222 11996 +8100 8120 8108 8110 4223 11997 +8111 8121 8109 8123 4224 11998 +8100 8124 8110 8112 4213 11999 +8101 8125 8111 8113 4204 12000 +8102 8126 8112 8114 4227 12001 +8103 8127 8113 8115 4216 12002 +8104 8128 8114 8115 4207 12003 +8105 8129 8116 8117 4256 12004 +8106 8130 8116 8118 4241 12005 +8107 8131 8117 8119 4228 12006 +8108 8132 8118 8120 4259 12007 +8109 8133 8119 8121 4244 12008 +8110 8134 8120 8122 4231 12009 +8123 8135 8121 8137 4262 12010 +8110 8138 8122 8124 4267 12011 +8111 8139 8123 8125 4250 12012 +8112 8140 8124 8126 4235 12013 +8113 8141 8125 8127 4270 12014 +8114 8142 8126 8128 4253 12015 +8115 8143 8127 8128 4238 12016 +8116 8144 8129 8130 4257 12017 +8117 8145 8129 8131 4242 12018 +8118 8146 8130 8132 4229 12019 +8119 8147 8131 8133 4260 12020 +8120 8148 8132 8134 4245 12021 +8121 8149 8133 8135 4232 12022 +8122 8150 8134 8136 4263 12023 +8137 8151 8135 8153 4248 12024 +8122 8154 8136 8138 4247 12025 +8123 8155 8137 8139 4268 12026 +8124 8156 8138 8140 4251 12027 +8125 8157 8139 8141 4236 12028 +8126 8158 8140 8142 4271 12029 +8127 8159 8141 8143 4254 12030 +8128 8160 8142 8143 4239 12031 +8129 8161 8144 8145 4258 12032 +8130 8162 8144 8146 4243 12033 +8131 8163 8145 8147 4230 12034 +8132 8164 8146 8148 4261 12035 +8133 8165 8147 8149 4246 12036 +8134 8166 8148 8150 4233 12037 +8135 8167 8149 8151 4264 12038 +8136 8168 8150 8152 4265 12039 +8153 8169 8151 8171 4266 12040 +8136 8172 8152 8154 4249 12041 +8137 8173 8153 8155 4234 12042 +8138 8174 8154 8156 4269 12043 +8139 8175 8155 8157 4252 12044 +8140 8176 8156 8158 4237 12045 +8141 8177 8157 8159 4272 12046 +8142 8178 8158 8160 4255 12047 +8143 8179 8159 8160 4240 12048 +8144 8180 8161 8162 4313 12049 +8145 8181 8161 8163 4292 12050 +8146 8182 8162 8164 4273 12051 +8147 8183 8163 8165 4316 12052 +8148 8184 8164 8166 4295 12053 +8149 8185 8165 8167 4276 12054 +8150 8186 8166 8168 4319 12055 +8151 8187 8167 8169 4298 12056 +8152 8188 8168 8170 4279 12057 +8171 8189 8169 8191 4322 12058 +8152 8192 8170 8172 4327 12059 +8153 8193 8171 8173 4304 12060 +8154 8194 8172 8174 4283 12061 +8155 8195 8173 8175 4330 12062 +8156 8196 8174 8176 4307 12063 +8157 8197 8175 8177 4286 12064 +8158 8198 8176 8178 4333 12065 +8159 8199 8177 8179 4310 12066 +8160 8200 8178 8179 4289 12067 +8161 8201 8180 8181 4314 12068 +8162 8202 8180 8182 4293 12069 +8163 8203 8181 8183 4274 12070 +8164 8204 8182 8184 4317 12071 +8165 8205 8183 8185 4296 12072 +8166 8206 8184 8186 4277 12073 +8167 8207 8185 8187 4320 12074 +8168 8208 8186 8188 4299 12075 +8169 8209 8187 8189 4280 12076 +8170 8210 8188 8190 4323 12077 +8191 8211 8189 8213 4302 12078 +8170 8214 8190 8192 4301 12079 +8171 8215 8191 8193 4328 12080 +8172 8216 8192 8194 4305 12081 +8173 8217 8193 8195 4284 12082 +8174 8218 8194 8196 4331 12083 +8175 8219 8195 8197 4308 12084 +8176 8220 8196 8198 4287 12085 +8177 8221 8197 8199 4334 12086 +8178 8222 8198 8200 4311 12087 +8179 8223 8199 8200 4290 12088 +8180 8224 8201 8202 4315 12089 +8181 8225 8201 8203 4294 12090 +8182 8226 8202 8204 4275 12091 +8183 8227 8203 8205 4318 12092 +8184 8228 8204 8206 4297 12093 +8185 8229 8205 8207 4278 12094 +8186 8230 8206 8208 4321 12095 +8187 8231 8207 8209 4300 12096 +8188 8232 8208 8210 4281 12097 +8189 8233 8209 8211 4324 12098 +8190 8234 8210 8212 4325 12099 +8213 8235 8211 8237 4326 12100 +8190 8238 8212 8214 4303 12101 +8191 8239 8213 8215 4282 12102 +8192 8240 8214 8216 4329 12103 +8193 8241 8215 8217 4306 12104 +8194 8242 8216 8218 4285 12105 +8195 8243 8217 8219 4332 12106 +8196 8244 8218 8220 4309 12107 +8197 8245 8219 8221 4288 12108 +8198 8246 8220 8222 4335 12109 +8199 8247 8221 8223 4312 12110 +8200 8248 8222 8223 4291 12111 +8201 8249 8224 8225 4388 12112 +8202 8250 8224 8226 4361 12113 +8203 8251 8225 8227 4336 12114 +8204 8252 8226 8228 4391 12115 +8205 8253 8227 8229 4364 12116 +8206 8254 8228 8230 4339 12117 +8207 8255 8229 8231 4394 12118 +8208 8256 8230 8232 4367 12119 +8209 8257 8231 8233 4342 12120 +8210 8258 8232 8234 4397 12121 +8211 8259 8233 8235 4370 12122 +8212 8260 8234 8236 4345 12123 +8237 8261 8235 8263 4400 12124 +8212 8264 8236 8238 4405 12125 +8213 8265 8237 8239 4376 12126 +8214 8266 8238 8240 4349 12127 +8215 8267 8239 8241 4408 12128 +8216 8268 8240 8242 4379 12129 +8217 8269 8241 8243 4352 12130 +8218 8270 8242 8244 4411 12131 +8219 8271 8243 8245 4382 12132 +8220 8272 8244 8246 4355 12133 +8221 8273 8245 8247 4414 12134 +8222 8274 8246 8248 4385 12135 +8223 8275 8247 8248 4358 12136 +8224 8276 8249 8250 4389 12137 +8225 8277 8249 8251 4362 12138 +8226 8278 8250 8252 4337 12139 +8227 8279 8251 8253 4392 12140 +8228 8280 8252 8254 4365 12141 +8229 8281 8253 8255 4340 12142 +8230 8282 8254 8256 4395 12143 +8231 8283 8255 8257 4368 12144 +8232 8284 8256 8258 4343 12145 +8233 8285 8257 8259 4398 12146 +8234 8286 8258 8260 4371 12147 +8235 8287 8259 8261 4346 12148 +8236 8288 8260 8262 4401 12149 +8263 8289 8261 8291 4374 12150 +8236 8292 8262 8264 4373 12151 +8237 8293 8263 8265 4406 12152 +8238 8294 8264 8266 4377 12153 +8239 8295 8265 8267 4350 12154 +8240 8296 8266 8268 4409 12155 +8241 8297 8267 8269 4380 12156 +8242 8298 8268 8270 4353 12157 +8243 8299 8269 8271 4412 12158 +8244 8300 8270 8272 4383 12159 +8245 8301 8271 8273 4356 12160 +8246 8302 8272 8274 4415 12161 +8247 8303 8273 8275 4386 12162 +8248 8304 8274 8275 4359 12163 +8249 8305 8276 8277 4390 12164 +8250 8306 8276 8278 4363 12165 +8251 8307 8277 8279 4338 12166 +8252 8308 8278 8280 4393 12167 +8253 8309 8279 8281 4366 12168 +8254 8310 8280 8282 4341 12169 +8255 8311 8281 8283 4396 12170 +8256 8312 8282 8284 4369 12171 +8257 8313 8283 8285 4344 12172 +8258 8314 8284 8286 4399 12173 +8259 8315 8285 8287 4372 12174 +8260 8316 8286 8288 4347 12175 +8261 8317 8287 8289 4402 12176 +8262 8318 8288 8290 4403 12177 +8291 8319 8289 8321 4404 12178 +8262 8322 8290 8292 4375 12179 +8263 8323 8291 8293 4348 12180 +8264 8324 8292 8294 4407 12181 +8265 8325 8293 8295 4378 12182 +8266 8326 8294 8296 4351 12183 +8267 8327 8295 8297 4410 12184 +8268 8328 8296 8298 4381 12185 +8269 8329 8297 8299 4354 12186 +8270 8330 8298 8300 4413 12187 +8271 8331 8299 8301 4384 12188 +8272 8332 8300 8302 4357 12189 +8273 8333 8301 8303 4416 12190 +8274 8334 8302 8304 4387 12191 +8275 8335 8303 8304 4360 12192 +8276 8336 8305 8306 4481 12193 +8277 8337 8305 8307 4448 12194 +8278 8338 8306 8308 4417 12195 +8279 8339 8307 8309 4484 12196 +8280 8340 8308 8310 4451 12197 +8281 8341 8309 8311 4420 12198 +8282 8342 8310 8312 4487 12199 +8283 8343 8311 8313 4454 12200 +8284 8344 8312 8314 4423 12201 +8285 8345 8313 8315 4490 12202 +8286 8346 8314 8316 4457 12203 +8287 8347 8315 8317 4426 12204 +8288 8348 8316 8318 4493 12205 +8289 8349 8317 8319 4460 12206 +8290 8350 8318 8320 4429 12207 +8321 8351 8319 8353 4496 12208 +8290 8354 8320 8322 4501 12209 +8291 8355 8321 8323 4466 12210 +8292 8356 8322 8324 4433 12211 +8293 8357 8323 8325 4504 12212 +8294 8358 8324 8326 4469 12213 +8295 8359 8325 8327 4436 12214 +8296 8360 8326 8328 4507 12215 +8297 8361 8327 8329 4472 12216 +8298 8362 8328 8330 4439 12217 +8299 8363 8329 8331 4510 12218 +8300 8364 8330 8332 4475 12219 +8301 8365 8331 8333 4442 12220 +8302 8366 8332 8334 4513 12221 +8303 8367 8333 8335 4478 12222 +8304 8368 8334 8335 4445 12223 +8305 8369 8336 8337 4482 12224 +8306 8370 8336 8338 4449 12225 +8307 8371 8337 8339 4418 12226 +8308 8372 8338 8340 4485 12227 +8309 8373 8339 8341 4452 12228 +8310 8374 8340 8342 4421 12229 +8311 8375 8341 8343 4488 12230 +8312 8376 8342 8344 4455 12231 +8313 8377 8343 8345 4424 12232 +8314 8378 8344 8346 4491 12233 +8315 8379 8345 8347 4458 12234 +8316 8380 8346 8348 4427 12235 +8317 8381 8347 8349 4494 12236 +8318 8382 8348 8350 4461 12237 +8319 8383 8349 8351 4430 12238 +8320 8384 8350 8352 4497 12239 +8353 8385 8351 8387 4464 12240 +8320 8388 8352 8354 4463 12241 +8321 8389 8353 8355 4502 12242 +8322 8390 8354 8356 4467 12243 +8323 8391 8355 8357 4434 12244 +8324 8392 8356 8358 4505 12245 +8325 8393 8357 8359 4470 12246 +8326 8394 8358 8360 4437 12247 +8327 8395 8359 8361 4508 12248 +8328 8396 8360 8362 4473 12249 +8329 8397 8361 8363 4440 12250 +8330 8398 8362 8364 4511 12251 +8331 8399 8363 8365 4476 12252 +8332 8400 8364 8366 4443 12253 +8333 8401 8365 8367 4514 12254 +8334 8402 8366 8368 4479 12255 +8335 8403 8367 8368 4446 12256 +8336 8404 8369 8370 4483 12257 +8337 8405 8369 8371 4450 12258 +8338 8406 8370 8372 4419 12259 +8339 8407 8371 8373 4486 12260 +8340 8408 8372 8374 4453 12261 +8341 8409 8373 8375 4422 12262 +8342 8410 8374 8376 4489 12263 +8343 8411 8375 8377 4456 12264 +8344 8412 8376 8378 4425 12265 +8345 8413 8377 8379 4492 12266 +8346 8414 8378 8380 4459 12267 +8347 8415 8379 8381 4428 12268 +8348 8416 8380 8382 4495 12269 +8349 8417 8381 8383 4462 12270 +8350 8418 8382 8384 4431 12271 +8351 8419 8383 8385 4498 12272 +8352 8420 8384 8386 4499 12273 +8387 8421 8385 8423 4500 12274 +8352 8424 8386 8388 4465 12275 +8353 8425 8387 8389 4432 12276 +8354 8426 8388 8390 4503 12277 +8355 8427 8389 8391 4468 12278 +8356 8428 8390 8392 4435 12279 +8357 8429 8391 8393 4506 12280 +8358 8430 8392 8394 4471 12281 +8359 8431 8393 8395 4438 12282 +8360 8432 8394 8396 4509 12283 +8361 8433 8395 8397 4474 12284 +8362 8434 8396 8398 4441 12285 +8363 8435 8397 8399 4512 12286 +8364 8436 8398 8400 4477 12287 +8365 8437 8399 8401 4444 12288 +8366 8438 8400 8402 4515 12289 +8367 8439 8401 8403 4480 12290 +8368 8440 8402 8403 4447 12291 +8369 8441 8404 8405 4592 12292 +8370 8442 8404 8406 4553 12293 +8371 8443 8405 8407 4516 12294 +8372 8444 8406 8408 4595 12295 +8373 8445 8407 8409 4556 12296 +8374 8446 8408 8410 4519 12297 +8375 8447 8409 8411 4598 12298 +8376 8448 8410 8412 4559 12299 +8377 8449 8411 8413 4522 12300 +8378 8450 8412 8414 4601 12301 +8379 8451 8413 8415 4562 12302 +8380 8452 8414 8416 4525 12303 +8381 8453 8415 8417 4604 12304 +8382 8454 8416 8418 4565 12305 +8383 8455 8417 8419 4528 12306 +8384 8456 8418 8420 4607 12307 +8385 8457 8419 8421 4568 12308 +8386 8458 8420 8422 4531 12309 +8423 8459 8421 8461 4610 12310 +8386 8462 8422 8424 4615 12311 +8387 8463 8423 8425 4574 12312 +8388 8464 8424 8426 4535 12313 +8389 8465 8425 8427 4618 12314 +8390 8466 8426 8428 4577 12315 +8391 8467 8427 8429 4538 12316 +8392 8468 8428 8430 4621 12317 +8393 8469 8429 8431 4580 12318 +8394 8470 8430 8432 4541 12319 +8395 8471 8431 8433 4624 12320 +8396 8472 8432 8434 4583 12321 +8397 8473 8433 8435 4544 12322 +8398 8474 8434 8436 4627 12323 +8399 8475 8435 8437 4586 12324 +8400 8476 8436 8438 4547 12325 +8401 8477 8437 8439 4630 12326 +8402 8478 8438 8440 4589 12327 +8403 8479 8439 8440 4550 12328 +8404 8480 8441 8442 4593 12329 +8405 8481 8441 8443 4554 12330 +8406 8482 8442 8444 4517 12331 +8407 8483 8443 8445 4596 12332 +8408 8484 8444 8446 4557 12333 +8409 8485 8445 8447 4520 12334 +8410 8486 8446 8448 4599 12335 +8411 8487 8447 8449 4560 12336 +8412 8488 8448 8450 4523 12337 +8413 8489 8449 8451 4602 12338 +8414 8490 8450 8452 4563 12339 +8415 8491 8451 8453 4526 12340 +8416 8492 8452 8454 4605 12341 +8417 8493 8453 8455 4566 12342 +8418 8494 8454 8456 4529 12343 +8419 8495 8455 8457 4608 12344 +8420 8496 8456 8458 4569 12345 +8421 8497 8457 8459 4532 12346 +8422 8498 8458 8460 4611 12347 +8461 8499 8459 8501 4572 12348 +8422 8502 8460 8462 4571 12349 +8423 8503 8461 8463 4616 12350 +8424 8504 8462 8464 4575 12351 +8425 8505 8463 8465 4536 12352 +8426 8506 8464 8466 4619 12353 +8427 8507 8465 8467 4578 12354 +8428 8508 8466 8468 4539 12355 +8429 8509 8467 8469 4622 12356 +8430 8510 8468 8470 4581 12357 +8431 8511 8469 8471 4542 12358 +8432 8512 8470 8472 4625 12359 +8433 8513 8471 8473 4584 12360 +8434 8514 8472 8474 4545 12361 +8435 8515 8473 8475 4628 12362 +8436 8516 8474 8476 4587 12363 +8437 8517 8475 8477 4548 12364 +8438 8518 8476 8478 4631 12365 +8439 8519 8477 8479 4590 12366 +8440 8520 8478 8479 4551 12367 +8441 8521 8480 8481 4594 12368 +8442 8522 8480 8482 4555 12369 +8443 8523 8481 8483 4518 12370 +8444 8524 8482 8484 4597 12371 +8445 8525 8483 8485 4558 12372 +8446 8526 8484 8486 4521 12373 +8447 8527 8485 8487 4600 12374 +8448 8528 8486 8488 4561 12375 +8449 8529 8487 8489 4524 12376 +8450 8530 8488 8490 4603 12377 +8451 8531 8489 8491 4564 12378 +8452 8532 8490 8492 4527 12379 +8453 8533 8491 8493 4606 12380 +8454 8534 8492 8494 4567 12381 +8455 8535 8493 8495 4530 12382 +8456 8536 8494 8496 4609 12383 +8457 8537 8495 8497 4570 12384 +8458 8538 8496 8498 4533 12385 +8459 8539 8497 8499 4612 12386 +8460 8540 8498 8500 4613 12387 +8501 8541 8499 8543 4614 12388 +8460 8544 8500 8502 4573 12389 +8461 8545 8501 8503 4534 12390 +8462 8546 8502 8504 4617 12391 +8463 8547 8503 8505 4576 12392 +8464 8548 8504 8506 4537 12393 +8465 8549 8505 8507 4620 12394 +8466 8550 8506 8508 4579 12395 +8467 8551 8507 8509 4540 12396 +8468 8552 8508 8510 4623 12397 +8469 8553 8509 8511 4582 12398 +8470 8554 8510 8512 4543 12399 +8471 8555 8511 8513 4626 12400 +8472 8556 8512 8514 4585 12401 +8473 8557 8513 8515 4546 12402 +8474 8558 8514 8516 4629 12403 +8475 8559 8515 8517 4588 12404 +8476 8560 8516 8518 4549 12405 +8477 8561 8517 8519 4632 12406 +8478 8562 8518 8520 4591 12407 +8479 8563 8519 8520 4552 12408 +8480 8564 8521 8522 4721 12409 +8481 8565 8521 8523 4676 12410 +8482 8566 8522 8524 4633 12411 +8483 8567 8523 8525 4724 12412 +8484 8568 8524 8526 4679 12413 +8485 8569 8525 8527 4636 12414 +8486 8570 8526 8528 4727 12415 +8487 8571 8527 8529 4682 12416 +8488 8572 8528 8530 4639 12417 +8489 8573 8529 8531 4730 12418 +8490 8574 8530 8532 4685 12419 +8491 8575 8531 8533 4642 12420 +8492 8576 8532 8534 4733 12421 +8493 8577 8533 8535 4688 12422 +8494 8578 8534 8536 4645 12423 +8495 8579 8535 8537 4736 12424 +8496 8580 8536 8538 4691 12425 +8497 8581 8537 8539 4648 12426 +8498 8582 8538 8540 4739 12427 +8499 8583 8539 8541 4694 12428 +8500 8584 8540 8542 4651 12429 +8543 8585 8541 8587 4742 12430 +8500 8588 8542 8544 4747 12431 +8501 8589 8543 8545 4700 12432 +8502 8590 8544 8546 4655 12433 +8503 8591 8545 8547 4750 12434 +8504 8592 8546 8548 4703 12435 +8505 8593 8547 8549 4658 12436 +8506 8594 8548 8550 4753 12437 +8507 8595 8549 8551 4706 12438 +8508 8596 8550 8552 4661 12439 +8509 8597 8551 8553 4756 12440 +8510 8598 8552 8554 4709 12441 +8511 8599 8553 8555 4664 12442 +8512 8600 8554 8556 4759 12443 +8513 8601 8555 8557 4712 12444 +8514 8602 8556 8558 4667 12445 +8515 8603 8557 8559 4762 12446 +8516 8604 8558 8560 4715 12447 +8517 8605 8559 8561 4670 12448 +8518 8606 8560 8562 4765 12449 +8519 8607 8561 8563 4718 12450 +8520 8608 8562 8563 4673 12451 +8521 8609 8564 8565 4722 12452 +8522 8610 8564 8566 4677 12453 +8523 8611 8565 8567 4634 12454 +8524 8612 8566 8568 4725 12455 +8525 8613 8567 8569 4680 12456 +8526 8614 8568 8570 4637 12457 +8527 8615 8569 8571 4728 12458 +8528 8616 8570 8572 4683 12459 +8529 8617 8571 8573 4640 12460 +8530 8618 8572 8574 4731 12461 +8531 8619 8573 8575 4686 12462 +8532 8620 8574 8576 4643 12463 +8533 8621 8575 8577 4734 12464 +8534 8622 8576 8578 4689 12465 +8535 8623 8577 8579 4646 12466 +8536 8624 8578 8580 4737 12467 +8537 8625 8579 8581 4692 12468 +8538 8626 8580 8582 4649 12469 +8539 8627 8581 8583 4740 12470 +8540 8628 8582 8584 4695 12471 +8541 8629 8583 8585 4652 12472 +8542 8630 8584 8586 4743 12473 +8587 8631 8585 8633 4698 12474 +8542 8634 8586 8588 4697 12475 +8543 8635 8587 8589 4748 12476 +8544 8636 8588 8590 4701 12477 +8545 8637 8589 8591 4656 12478 +8546 8638 8590 8592 4751 12479 +8547 8639 8591 8593 4704 12480 +8548 8640 8592 8594 4659 12481 +8549 8641 8593 8595 4754 12482 +8550 8642 8594 8596 4707 12483 +8551 8643 8595 8597 4662 12484 +8552 8644 8596 8598 4757 12485 +8553 8645 8597 8599 4710 12486 +8554 8646 8598 8600 4665 12487 +8555 8647 8599 8601 4760 12488 +8556 8648 8600 8602 4713 12489 +8557 8649 8601 8603 4668 12490 +8558 8650 8602 8604 4763 12491 +8559 8651 8603 8605 4716 12492 +8560 8652 8604 8606 4671 12493 +8561 8653 8605 8607 4766 12494 +8562 8654 8606 8608 4719 12495 +8563 8655 8607 8608 4674 12496 +8564 8656 8609 8610 4723 12497 +8565 8657 8609 8611 4678 12498 +8566 8658 8610 8612 4635 12499 +8567 8659 8611 8613 4726 12500 +8568 8660 8612 8614 4681 12501 +8569 8661 8613 8615 4638 12502 +8570 8662 8614 8616 4729 12503 +8571 8663 8615 8617 4684 12504 +8572 8664 8616 8618 4641 12505 +8573 8665 8617 8619 4732 12506 +8574 8666 8618 8620 4687 12507 +8575 8667 8619 8621 4644 12508 +8576 8668 8620 8622 4735 12509 +8577 8669 8621 8623 4690 12510 +8578 8670 8622 8624 4647 12511 +8579 8671 8623 8625 4738 12512 +8580 8672 8624 8626 4693 12513 +8581 8673 8625 8627 4650 12514 +8582 8674 8626 8628 4741 12515 +8583 8675 8627 8629 4696 12516 +8584 8676 8628 8630 4653 12517 +8585 8677 8629 8631 4744 12518 +8586 8678 8630 8632 4745 12519 +8633 8679 8631 8681 4746 12520 +8586 8682 8632 8634 4699 12521 +8587 8683 8633 8635 4654 12522 +8588 8684 8634 8636 4749 12523 +8589 8685 8635 8637 4702 12524 +8590 8686 8636 8638 4657 12525 +8591 8687 8637 8639 4752 12526 +8592 8688 8638 8640 4705 12527 +8593 8689 8639 8641 4660 12528 +8594 8690 8640 8642 4755 12529 +8595 8691 8641 8643 4708 12530 +8596 8692 8642 8644 4663 12531 +8597 8693 8643 8645 4758 12532 +8598 8694 8644 8646 4711 12533 +8599 8695 8645 8647 4666 12534 +8600 8696 8646 8648 4761 12535 +8601 8697 8647 8649 4714 12536 +8602 8698 8648 8650 4669 12537 +8603 8699 8649 8651 4764 12538 +8604 8700 8650 8652 4717 12539 +8605 8701 8651 8653 4672 12540 +8606 8702 8652 8654 4767 12541 +8607 8703 8653 8655 4720 12542 +8608 8704 8654 8655 4675 12543 +8609 8705 8656 8657 4868 12544 +8610 8706 8656 8658 4817 12545 +8611 8707 8657 8659 4768 12546 +8612 8708 8658 8660 4871 12547 +8613 8709 8659 8661 4820 12548 +8614 8710 8660 8662 4771 12549 +8615 8711 8661 8663 4874 12550 +8616 8712 8662 8664 4823 12551 +8617 8713 8663 8665 4774 12552 +8618 8714 8664 8666 4877 12553 +8619 8715 8665 8667 4826 12554 +8620 8716 8666 8668 4777 12555 +8621 8717 8667 8669 4880 12556 +8622 8718 8668 8670 4829 12557 +8623 8719 8669 8671 4780 12558 +8624 8720 8670 8672 4883 12559 +8625 8721 8671 8673 4832 12560 +8626 8722 8672 8674 4783 12561 +8627 8723 8673 8675 4886 12562 +8628 8724 8674 8676 4835 12563 +8629 8725 8675 8677 4786 12564 +8630 8726 8676 8678 4889 12565 +8631 8727 8677 8679 4838 12566 +8632 8728 8678 8680 4789 12567 +8681 8729 8679 8731 4892 12568 +8632 8732 8680 8682 4897 12569 +8633 8733 8681 8683 4844 12570 +8634 8734 8682 8684 4793 12571 +8635 8735 8683 8685 4900 12572 +8636 8736 8684 8686 4847 12573 +8637 8737 8685 8687 4796 12574 +8638 8738 8686 8688 4903 12575 +8639 8739 8687 8689 4850 12576 +8640 8740 8688 8690 4799 12577 +8641 8741 8689 8691 4906 12578 +8642 8742 8690 8692 4853 12579 +8643 8743 8691 8693 4802 12580 +8644 8744 8692 8694 4909 12581 +8645 8745 8693 8695 4856 12582 +8646 8746 8694 8696 4805 12583 +8647 8747 8695 8697 4912 12584 +8648 8748 8696 8698 4859 12585 +8649 8749 8697 8699 4808 12586 +8650 8750 8698 8700 4915 12587 +8651 8751 8699 8701 4862 12588 +8652 8752 8700 8702 4811 12589 +8653 8753 8701 8703 4918 12590 +8654 8754 8702 8704 4865 12591 +8655 8755 8703 8704 4814 12592 +8656 8756 8705 8706 4869 12593 +8657 8757 8705 8707 4818 12594 +8658 8758 8706 8708 4769 12595 +8659 8759 8707 8709 4872 12596 +8660 8760 8708 8710 4821 12597 +8661 8761 8709 8711 4772 12598 +8662 8762 8710 8712 4875 12599 +8663 8763 8711 8713 4824 12600 +8664 8764 8712 8714 4775 12601 +8665 8765 8713 8715 4878 12602 +8666 8766 8714 8716 4827 12603 +8667 8767 8715 8717 4778 12604 +8668 8768 8716 8718 4881 12605 +8669 8769 8717 8719 4830 12606 +8670 8770 8718 8720 4781 12607 +8671 8771 8719 8721 4884 12608 +8672 8772 8720 8722 4833 12609 +8673 8773 8721 8723 4784 12610 +8674 8774 8722 8724 4887 12611 +8675 8775 8723 8725 4836 12612 +8676 8776 8724 8726 4787 12613 +8677 8777 8725 8727 4890 12614 +8678 8778 8726 8728 4839 12615 +8679 8779 8727 8729 4790 12616 +8680 8780 8728 8730 4893 12617 +8731 8781 8729 8783 4842 12618 +8680 8784 8730 8732 4841 12619 +8681 8785 8731 8733 4898 12620 +8682 8786 8732 8734 4845 12621 +8683 8787 8733 8735 4794 12622 +8684 8788 8734 8736 4901 12623 +8685 8789 8735 8737 4848 12624 +8686 8790 8736 8738 4797 12625 +8687 8791 8737 8739 4904 12626 +8688 8792 8738 8740 4851 12627 +8689 8793 8739 8741 4800 12628 +8690 8794 8740 8742 4907 12629 +8691 8795 8741 8743 4854 12630 +8692 8796 8742 8744 4803 12631 +8693 8797 8743 8745 4910 12632 +8694 8798 8744 8746 4857 12633 +8695 8799 8745 8747 4806 12634 +8696 8800 8746 8748 4913 12635 +8697 8801 8747 8749 4860 12636 +8698 8802 8748 8750 4809 12637 +8699 8803 8749 8751 4916 12638 +8700 8804 8750 8752 4863 12639 +8701 8805 8751 8753 4812 12640 +8702 8806 8752 8754 4919 12641 +8703 8807 8753 8755 4866 12642 +8704 8808 8754 8755 4815 12643 +8705 8809 8756 8757 4870 12644 +8706 8810 8756 8758 4819 12645 +8707 8811 8757 8759 4770 12646 +8708 8812 8758 8760 4873 12647 +8709 8813 8759 8761 4822 12648 +8710 8814 8760 8762 4773 12649 +8711 8815 8761 8763 4876 12650 +8712 8816 8762 8764 4825 12651 +8713 8817 8763 8765 4776 12652 +8714 8818 8764 8766 4879 12653 +8715 8819 8765 8767 4828 12654 +8716 8820 8766 8768 4779 12655 +8717 8821 8767 8769 4882 12656 +8718 8822 8768 8770 4831 12657 +8719 8823 8769 8771 4782 12658 +8720 8824 8770 8772 4885 12659 +8721 8825 8771 8773 4834 12660 +8722 8826 8772 8774 4785 12661 +8723 8827 8773 8775 4888 12662 +8724 8828 8774 8776 4837 12663 +8725 8829 8775 8777 4788 12664 +8726 8830 8776 8778 4891 12665 +8727 8831 8777 8779 4840 12666 +8728 8832 8778 8780 4791 12667 +8729 8833 8779 8781 4894 12668 +8730 8834 8780 8782 4895 12669 +8783 8835 8781 8837 4896 12670 +8730 8838 8782 8784 4843 12671 +8731 8839 8783 8785 4792 12672 +8732 8840 8784 8786 4899 12673 +8733 8841 8785 8787 4846 12674 +8734 8842 8786 8788 4795 12675 +8735 8843 8787 8789 4902 12676 +8736 8844 8788 8790 4849 12677 +8737 8845 8789 8791 4798 12678 +8738 8846 8790 8792 4905 12679 +8739 8847 8791 8793 4852 12680 +8740 8848 8792 8794 4801 12681 +8741 8849 8793 8795 4908 12682 +8742 8850 8794 8796 4855 12683 +8743 8851 8795 8797 4804 12684 +8744 8852 8796 8798 4911 12685 +8745 8853 8797 8799 4858 12686 +8746 8854 8798 8800 4807 12687 +8747 8855 8799 8801 4914 12688 +8748 8856 8800 8802 4861 12689 +8749 8857 8801 8803 4810 12690 +8750 8858 8802 8804 4917 12691 +8751 8859 8803 8805 4864 12692 +8752 8860 8804 8806 4813 12693 +8753 8861 8805 8807 4920 12694 +8754 8862 8806 8808 4867 12695 +8755 8863 8807 8808 4816 12696 +8756 8864 8809 8810 5033 12697 +8757 8865 8809 8811 4976 12698 +8758 8866 8810 8812 4921 12699 +8759 8867 8811 8813 5036 12700 +8760 8868 8812 8814 4979 12701 +8761 8869 8813 8815 4924 12702 +8762 8870 8814 8816 5039 12703 +8763 8871 8815 8817 4982 12704 +8764 8872 8816 8818 4927 12705 +8765 8873 8817 8819 5042 12706 +8766 8874 8818 8820 4985 12707 +8767 8875 8819 8821 4930 12708 +8768 8876 8820 8822 5045 12709 +8769 8877 8821 8823 4988 12710 +8770 8878 8822 8824 4933 12711 +8771 8879 8823 8825 5048 12712 +8772 8880 8824 8826 4991 12713 +8773 8881 8825 8827 4936 12714 +8774 8882 8826 8828 5051 12715 +8775 8883 8827 8829 4994 12716 +8776 8884 8828 8830 4939 12717 +8777 8885 8829 8831 5054 12718 +8778 8886 8830 8832 4997 12719 +8779 8887 8831 8833 4942 12720 +8780 8888 8832 8834 5057 12721 +8781 8889 8833 8835 5000 12722 +8782 8890 8834 8836 4945 12723 +8837 8891 8835 8893 5060 12724 +8782 8894 8836 8838 5065 12725 +8783 8895 8837 8839 5006 12726 +8784 8896 8838 8840 4949 12727 +8785 8897 8839 8841 5068 12728 +8786 8898 8840 8842 5009 12729 +8787 8899 8841 8843 4952 12730 +8788 8900 8842 8844 5071 12731 +8789 8901 8843 8845 5012 12732 +8790 8902 8844 8846 4955 12733 +8791 8903 8845 8847 5074 12734 +8792 8904 8846 8848 5015 12735 +8793 8905 8847 8849 4958 12736 +8794 8906 8848 8850 5077 12737 +8795 8907 8849 8851 5018 12738 +8796 8908 8850 8852 4961 12739 +8797 8909 8851 8853 5080 12740 +8798 8910 8852 8854 5021 12741 +8799 8911 8853 8855 4964 12742 +8800 8912 8854 8856 5083 12743 +8801 8913 8855 8857 5024 12744 +8802 8914 8856 8858 4967 12745 +8803 8915 8857 8859 5086 12746 +8804 8916 8858 8860 5027 12747 +8805 8917 8859 8861 4970 12748 +8806 8918 8860 8862 5089 12749 +8807 8919 8861 8863 5030 12750 +8808 8920 8862 8863 4973 12751 +8809 8921 8864 8865 5034 12752 +8810 8922 8864 8866 4977 12753 +8811 8923 8865 8867 4922 12754 +8812 8924 8866 8868 5037 12755 +8813 8925 8867 8869 4980 12756 +8814 8926 8868 8870 4925 12757 +8815 8927 8869 8871 5040 12758 +8816 8928 8870 8872 4983 12759 +8817 8929 8871 8873 4928 12760 +8818 8930 8872 8874 5043 12761 +8819 8931 8873 8875 4986 12762 +8820 8932 8874 8876 4931 12763 +8821 8933 8875 8877 5046 12764 +8822 8934 8876 8878 4989 12765 +8823 8935 8877 8879 4934 12766 +8824 8936 8878 8880 5049 12767 +8825 8937 8879 8881 4992 12768 +8826 8938 8880 8882 4937 12769 +8827 8939 8881 8883 5052 12770 +8828 8940 8882 8884 4995 12771 +8829 8941 8883 8885 4940 12772 +8830 8942 8884 8886 5055 12773 +8831 8943 8885 8887 4998 12774 +8832 8944 8886 8888 4943 12775 +8833 8945 8887 8889 5058 12776 +8834 8946 8888 8890 5001 12777 +8835 8947 8889 8891 4946 12778 +8836 8948 8890 8892 5061 12779 +8893 8949 8891 8951 5004 12780 +8836 8952 8892 8894 5003 12781 +8837 8953 8893 8895 5066 12782 +8838 8954 8894 8896 5007 12783 +8839 8955 8895 8897 4950 12784 +8840 8956 8896 8898 5069 12785 +8841 8957 8897 8899 5010 12786 +8842 8958 8898 8900 4953 12787 +8843 8959 8899 8901 5072 12788 +8844 8960 8900 8902 5013 12789 +8845 8961 8901 8903 4956 12790 +8846 8962 8902 8904 5075 12791 +8847 8963 8903 8905 5016 12792 +8848 8964 8904 8906 4959 12793 +8849 8965 8905 8907 5078 12794 +8850 8966 8906 8908 5019 12795 +8851 8967 8907 8909 4962 12796 +8852 8968 8908 8910 5081 12797 +8853 8969 8909 8911 5022 12798 +8854 8970 8910 8912 4965 12799 +8855 8971 8911 8913 5084 12800 +8856 8972 8912 8914 5025 12801 +8857 8973 8913 8915 4968 12802 +8858 8974 8914 8916 5087 12803 +8859 8975 8915 8917 5028 12804 +8860 8976 8916 8918 4971 12805 +8861 8977 8917 8919 5090 12806 +8862 8978 8918 8920 5031 12807 +8863 8979 8919 8920 4974 12808 +8864 8980 8921 8922 5035 12809 +8865 8981 8921 8923 4978 12810 +8866 8982 8922 8924 4923 12811 +8867 8983 8923 8925 5038 12812 +8868 8984 8924 8926 4981 12813 +8869 8985 8925 8927 4926 12814 +8870 8986 8926 8928 5041 12815 +8871 8987 8927 8929 4984 12816 +8872 8988 8928 8930 4929 12817 +8873 8989 8929 8931 5044 12818 +8874 8990 8930 8932 4987 12819 +8875 8991 8931 8933 4932 12820 +8876 8992 8932 8934 5047 12821 +8877 8993 8933 8935 4990 12822 +8878 8994 8934 8936 4935 12823 +8879 8995 8935 8937 5050 12824 +8880 8996 8936 8938 4993 12825 +8881 8997 8937 8939 4938 12826 +8882 8998 8938 8940 5053 12827 +8883 8999 8939 8941 4996 12828 +8884 9000 8940 8942 4941 12829 +8885 9001 8941 8943 5056 12830 +8886 9002 8942 8944 4999 12831 +8887 9003 8943 8945 4944 12832 +8888 9004 8944 8946 5059 12833 +8889 9005 8945 8947 5002 12834 +8890 9006 8946 8948 4947 12835 +8891 9007 8947 8949 5062 12836 +8892 9008 8948 8950 5063 12837 +8951 9009 8949 9011 5064 12838 +8892 9012 8950 8952 5005 12839 +8893 9013 8951 8953 4948 12840 +8894 9014 8952 8954 5067 12841 +8895 9015 8953 8955 5008 12842 +8896 9016 8954 8956 4951 12843 +8897 9017 8955 8957 5070 12844 +8898 9018 8956 8958 5011 12845 +8899 9019 8957 8959 4954 12846 +8900 9020 8958 8960 5073 12847 +8901 9021 8959 8961 5014 12848 +8902 9022 8960 8962 4957 12849 +8903 9023 8961 8963 5076 12850 +8904 9024 8962 8964 5017 12851 +8905 9025 8963 8965 4960 12852 +8906 9026 8964 8966 5079 12853 +8907 9027 8965 8967 5020 12854 +8908 9028 8966 8968 4963 12855 +8909 9029 8967 8969 5082 12856 +8910 9030 8968 8970 5023 12857 +8911 9031 8969 8971 4966 12858 +8912 9032 8970 8972 5085 12859 +8913 9033 8971 8973 5026 12860 +8914 9034 8972 8974 4969 12861 +8915 9035 8973 8975 5088 12862 +8916 9036 8974 8976 5029 12863 +8917 9037 8975 8977 4972 12864 +8918 9038 8976 8978 5091 12865 +8919 9039 8977 8979 5032 12866 +8920 9040 8978 8979 4975 12867 +8921 9041 8980 8981 5216 12868 +8922 9042 8980 8982 5153 12869 +8923 9043 8981 8983 5092 12870 +8924 9044 8982 8984 5219 12871 +8925 9045 8983 8985 5156 12872 +8926 9046 8984 8986 5095 12873 +8927 9047 8985 8987 5222 12874 +8928 9048 8986 8988 5159 12875 +8929 9049 8987 8989 5098 12876 +8930 9050 8988 8990 5225 12877 +8931 9051 8989 8991 5162 12878 +8932 9052 8990 8992 5101 12879 +8933 9053 8991 8993 5228 12880 +8934 9054 8992 8994 5165 12881 +8935 9055 8993 8995 5104 12882 +8936 9056 8994 8996 5231 12883 +8937 9057 8995 8997 5168 12884 +8938 9058 8996 8998 5107 12885 +8939 9059 8997 8999 5234 12886 +8940 9060 8998 9000 5171 12887 +8941 9061 8999 9001 5110 12888 +8942 9062 9000 9002 5237 12889 +8943 9063 9001 9003 5174 12890 +8944 9064 9002 9004 5113 12891 +8945 9065 9003 9005 5240 12892 +8946 9066 9004 9006 5177 12893 +8947 9067 9005 9007 5116 12894 +8948 9068 9006 9008 5243 12895 +8949 9069 9007 9009 5180 12896 +8950 9070 9008 9010 5119 12897 +9011 9071 9009 9073 5246 12898 +8950 9074 9010 9012 5251 12899 +8951 9075 9011 9013 5186 12900 +8952 9076 9012 9014 5123 12901 +8953 9077 9013 9015 5254 12902 +8954 9078 9014 9016 5189 12903 +8955 9079 9015 9017 5126 12904 +8956 9080 9016 9018 5257 12905 +8957 9081 9017 9019 5192 12906 +8958 9082 9018 9020 5129 12907 +8959 9083 9019 9021 5260 12908 +8960 9084 9020 9022 5195 12909 +8961 9085 9021 9023 5132 12910 +8962 9086 9022 9024 5263 12911 +8963 9087 9023 9025 5198 12912 +8964 9088 9024 9026 5135 12913 +8965 9089 9025 9027 5266 12914 +8966 9090 9026 9028 5201 12915 +8967 9091 9027 9029 5138 12916 +8968 9092 9028 9030 5269 12917 +8969 9093 9029 9031 5204 12918 +8970 9094 9030 9032 5141 12919 +8971 9095 9031 9033 5272 12920 +8972 9096 9032 9034 5207 12921 +8973 9097 9033 9035 5144 12922 +8974 9098 9034 9036 5275 12923 +8975 9099 9035 9037 5210 12924 +8976 9100 9036 9038 5147 12925 +8977 9101 9037 9039 5278 12926 +8978 9102 9038 9040 5213 12927 +8979 9103 9039 9040 5150 12928 +8980 9104 9041 9042 5217 12929 +8981 9105 9041 9043 5154 12930 +8982 9106 9042 9044 5093 12931 +8983 9107 9043 9045 5220 12932 +8984 9108 9044 9046 5157 12933 +8985 9109 9045 9047 5096 12934 +8986 9110 9046 9048 5223 12935 +8987 9111 9047 9049 5160 12936 +8988 9112 9048 9050 5099 12937 +8989 9113 9049 9051 5226 12938 +8990 9114 9050 9052 5163 12939 +8991 9115 9051 9053 5102 12940 +8992 9116 9052 9054 5229 12941 +8993 9117 9053 9055 5166 12942 +8994 9118 9054 9056 5105 12943 +8995 9119 9055 9057 5232 12944 +8996 9120 9056 9058 5169 12945 +8997 9121 9057 9059 5108 12946 +8998 9122 9058 9060 5235 12947 +8999 9123 9059 9061 5172 12948 +9000 9124 9060 9062 5111 12949 +9001 9125 9061 9063 5238 12950 +9002 9126 9062 9064 5175 12951 +9003 9127 9063 9065 5114 12952 +9004 9128 9064 9066 5241 12953 +9005 9129 9065 9067 5178 12954 +9006 9130 9066 9068 5117 12955 +9007 9131 9067 9069 5244 12956 +9008 9132 9068 9070 5181 12957 +9009 9133 9069 9071 5120 12958 +9010 9134 9070 9072 5247 12959 +9073 9135 9071 9137 5184 12960 +9010 9138 9072 9074 5183 12961 +9011 9139 9073 9075 5252 12962 +9012 9140 9074 9076 5187 12963 +9013 9141 9075 9077 5124 12964 +9014 9142 9076 9078 5255 12965 +9015 9143 9077 9079 5190 12966 +9016 9144 9078 9080 5127 12967 +9017 9145 9079 9081 5258 12968 +9018 9146 9080 9082 5193 12969 +9019 9147 9081 9083 5130 12970 +9020 9148 9082 9084 5261 12971 +9021 9149 9083 9085 5196 12972 +9022 9150 9084 9086 5133 12973 +9023 9151 9085 9087 5264 12974 +9024 9152 9086 9088 5199 12975 +9025 9153 9087 9089 5136 12976 +9026 9154 9088 9090 5267 12977 +9027 9155 9089 9091 5202 12978 +9028 9156 9090 9092 5139 12979 +9029 9157 9091 9093 5270 12980 +9030 9158 9092 9094 5205 12981 +9031 9159 9093 9095 5142 12982 +9032 9160 9094 9096 5273 12983 +9033 9161 9095 9097 5208 12984 +9034 9162 9096 9098 5145 12985 +9035 9163 9097 9099 5276 12986 +9036 9164 9098 9100 5211 12987 +9037 9165 9099 9101 5148 12988 +9038 9166 9100 9102 5279 12989 +9039 9167 9101 9103 5214 12990 +9040 9168 9102 9103 5151 12991 +9041 9169 9104 9105 5218 12992 +9042 9170 9104 9106 5155 12993 +9043 9171 9105 9107 5094 12994 +9044 9172 9106 9108 5221 12995 +9045 9173 9107 9109 5158 12996 +9046 9174 9108 9110 5097 12997 +9047 9175 9109 9111 5224 12998 +9048 9176 9110 9112 5161 12999 +9049 9177 9111 9113 5100 13000 +9050 9178 9112 9114 5227 13001 +9051 9179 9113 9115 5164 13002 +9052 9180 9114 9116 5103 13003 +9053 9181 9115 9117 5230 13004 +9054 9182 9116 9118 5167 13005 +9055 9183 9117 9119 5106 13006 +9056 9184 9118 9120 5233 13007 +9057 9185 9119 9121 5170 13008 +9058 9186 9120 9122 5109 13009 +9059 9187 9121 9123 5236 13010 +9060 9188 9122 9124 5173 13011 +9061 9189 9123 9125 5112 13012 +9062 9190 9124 9126 5239 13013 +9063 9191 9125 9127 5176 13014 +9064 9192 9126 9128 5115 13015 +9065 9193 9127 9129 5242 13016 +9066 9194 9128 9130 5179 13017 +9067 9195 9129 9131 5118 13018 +9068 9196 9130 9132 5245 13019 +9069 9197 9131 9133 5182 13020 +9070 9198 9132 9134 5121 13021 +9071 9199 9133 9135 5248 13022 +9072 9200 9134 9136 5249 13023 +9137 9201 9135 9203 5250 13024 +9072 9204 9136 9138 5185 13025 +9073 9205 9137 9139 5122 13026 +9074 9206 9138 9140 5253 13027 +9075 9207 9139 9141 5188 13028 +9076 9208 9140 9142 5125 13029 +9077 9209 9141 9143 5256 13030 +9078 9210 9142 9144 5191 13031 +9079 9211 9143 9145 5128 13032 +9080 9212 9144 9146 5259 13033 +9081 9213 9145 9147 5194 13034 +9082 9214 9146 9148 5131 13035 +9083 9215 9147 9149 5262 13036 +9084 9216 9148 9150 5197 13037 +9085 9217 9149 9151 5134 13038 +9086 9218 9150 9152 5265 13039 +9087 9219 9151 9153 5200 13040 +9088 9220 9152 9154 5137 13041 +9089 9221 9153 9155 5268 13042 +9090 9222 9154 9156 5203 13043 +9091 9223 9155 9157 5140 13044 +9092 9224 9156 9158 5271 13045 +9093 9225 9157 9159 5206 13046 +9094 9226 9158 9160 5143 13047 +9095 9227 9159 9161 5274 13048 +9096 9228 9160 9162 5209 13049 +9097 9229 9161 9163 5146 13050 +9098 9230 9162 9164 5277 13051 +9099 9231 9163 9165 5212 13052 +9100 9232 9164 9166 5149 13053 +9101 9233 9165 9167 5280 13054 +9102 9234 9166 9168 5215 13055 +9103 9235 9167 9168 5152 13056 +9104 9236 9169 9170 5417 13057 +9105 9237 9169 9171 5348 13058 +9106 9238 9170 9172 5281 13059 +9107 9239 9171 9173 5420 13060 +9108 9240 9172 9174 5351 13061 +9109 9241 9173 9175 5284 13062 +9110 9242 9174 9176 5423 13063 +9111 9243 9175 9177 5354 13064 +9112 9244 9176 9178 5287 13065 +9113 9245 9177 9179 5426 13066 +9114 9246 9178 9180 5357 13067 +9115 9247 9179 9181 5290 13068 +9116 9248 9180 9182 5429 13069 +9117 9249 9181 9183 5360 13070 +9118 9250 9182 9184 5293 13071 +9119 9251 9183 9185 5432 13072 +9120 9252 9184 9186 5363 13073 +9121 9253 9185 9187 5296 13074 +9122 9254 9186 9188 5435 13075 +9123 9255 9187 9189 5366 13076 +9124 9256 9188 9190 5299 13077 +9125 9257 9189 9191 5438 13078 +9126 9258 9190 9192 5369 13079 +9127 9259 9191 9193 5302 13080 +9128 9260 9192 9194 5441 13081 +9129 9261 9193 9195 5372 13082 +9130 9262 9194 9196 5305 13083 +9131 9263 9195 9197 5444 13084 +9132 9264 9196 9198 5375 13085 +9133 9265 9197 9199 5308 13086 +9134 9266 9198 9200 5447 13087 +9135 9267 9199 9201 5378 13088 +9136 9268 9200 9202 5311 13089 +9203 9269 9201 9271 5450 13090 +9136 9272 9202 9204 5455 13091 +9137 9273 9203 9205 5384 13092 +9138 9274 9204 9206 5315 13093 +9139 9275 9205 9207 5458 13094 +9140 9276 9206 9208 5387 13095 +9141 9277 9207 9209 5318 13096 +9142 9278 9208 9210 5461 13097 +9143 9279 9209 9211 5390 13098 +9144 9280 9210 9212 5321 13099 +9145 9281 9211 9213 5464 13100 +9146 9282 9212 9214 5393 13101 +9147 9283 9213 9215 5324 13102 +9148 9284 9214 9216 5467 13103 +9149 9285 9215 9217 5396 13104 +9150 9286 9216 9218 5327 13105 +9151 9287 9217 9219 5470 13106 +9152 9288 9218 9220 5399 13107 +9153 9289 9219 9221 5330 13108 +9154 9290 9220 9222 5473 13109 +9155 9291 9221 9223 5402 13110 +9156 9292 9222 9224 5333 13111 +9157 9293 9223 9225 5476 13112 +9158 9294 9224 9226 5405 13113 +9159 9295 9225 9227 5336 13114 +9160 9296 9226 9228 5479 13115 +9161 9297 9227 9229 5408 13116 +9162 9298 9228 9230 5339 13117 +9163 9299 9229 9231 5482 13118 +9164 9300 9230 9232 5411 13119 +9165 9301 9231 9233 5342 13120 +9166 9302 9232 9234 5485 13121 +9167 9303 9233 9235 5414 13122 +9168 9304 9234 9235 5345 13123 +9169 9305 9236 9237 5418 13124 +9170 9306 9236 9238 5349 13125 +9171 9307 9237 9239 5282 13126 +9172 9308 9238 9240 5421 13127 +9173 9309 9239 9241 5352 13128 +9174 9310 9240 9242 5285 13129 +9175 9311 9241 9243 5424 13130 +9176 9312 9242 9244 5355 13131 +9177 9313 9243 9245 5288 13132 +9178 9314 9244 9246 5427 13133 +9179 9315 9245 9247 5358 13134 +9180 9316 9246 9248 5291 13135 +9181 9317 9247 9249 5430 13136 +9182 9318 9248 9250 5361 13137 +9183 9319 9249 9251 5294 13138 +9184 9320 9250 9252 5433 13139 +9185 9321 9251 9253 5364 13140 +9186 9322 9252 9254 5297 13141 +9187 9323 9253 9255 5436 13142 +9188 9324 9254 9256 5367 13143 +9189 9325 9255 9257 5300 13144 +9190 9326 9256 9258 5439 13145 +9191 9327 9257 9259 5370 13146 +9192 9328 9258 9260 5303 13147 +9193 9329 9259 9261 5442 13148 +9194 9330 9260 9262 5373 13149 +9195 9331 9261 9263 5306 13150 +9196 9332 9262 9264 5445 13151 +9197 9333 9263 9265 5376 13152 +9198 9334 9264 9266 5309 13153 +9199 9335 9265 9267 5448 13154 +9200 9336 9266 9268 5379 13155 +9201 9337 9267 9269 5312 13156 +9202 9338 9268 9270 5451 13157 +9271 9339 9269 9341 5382 13158 +9202 9342 9270 9272 5381 13159 +9203 9343 9271 9273 5456 13160 +9204 9344 9272 9274 5385 13161 +9205 9345 9273 9275 5316 13162 +9206 9346 9274 9276 5459 13163 +9207 9347 9275 9277 5388 13164 +9208 9348 9276 9278 5319 13165 +9209 9349 9277 9279 5462 13166 +9210 9350 9278 9280 5391 13167 +9211 9351 9279 9281 5322 13168 +9212 9352 9280 9282 5465 13169 +9213 9353 9281 9283 5394 13170 +9214 9354 9282 9284 5325 13171 +9215 9355 9283 9285 5468 13172 +9216 9356 9284 9286 5397 13173 +9217 9357 9285 9287 5328 13174 +9218 9358 9286 9288 5471 13175 +9219 9359 9287 9289 5400 13176 +9220 9360 9288 9290 5331 13177 +9221 9361 9289 9291 5474 13178 +9222 9362 9290 9292 5403 13179 +9223 9363 9291 9293 5334 13180 +9224 9364 9292 9294 5477 13181 +9225 9365 9293 9295 5406 13182 +9226 9366 9294 9296 5337 13183 +9227 9367 9295 9297 5480 13184 +9228 9368 9296 9298 5409 13185 +9229 9369 9297 9299 5340 13186 +9230 9370 9298 9300 5483 13187 +9231 9371 9299 9301 5412 13188 +9232 9372 9300 9302 5343 13189 +9233 9373 9301 9303 5486 13190 +9234 9374 9302 9304 5415 13191 +9235 9375 9303 9304 5346 13192 +9236 9376 9305 9306 5419 13193 +9237 9377 9305 9307 5350 13194 +9238 9378 9306 9308 5283 13195 +9239 9379 9307 9309 5422 13196 +9240 9380 9308 9310 5353 13197 +9241 9381 9309 9311 5286 13198 +9242 9382 9310 9312 5425 13199 +9243 9383 9311 9313 5356 13200 +9244 9384 9312 9314 5289 13201 +9245 9385 9313 9315 5428 13202 +9246 9386 9314 9316 5359 13203 +9247 9387 9315 9317 5292 13204 +9248 9388 9316 9318 5431 13205 +9249 9389 9317 9319 5362 13206 +9250 9390 9318 9320 5295 13207 +9251 9391 9319 9321 5434 13208 +9252 9392 9320 9322 5365 13209 +9253 9393 9321 9323 5298 13210 +9254 9394 9322 9324 5437 13211 +9255 9395 9323 9325 5368 13212 +9256 9396 9324 9326 5301 13213 +9257 9397 9325 9327 5440 13214 +9258 9398 9326 9328 5371 13215 +9259 9399 9327 9329 5304 13216 +9260 9400 9328 9330 5443 13217 +9261 9401 9329 9331 5374 13218 +9262 9402 9330 9332 5307 13219 +9263 9403 9331 9333 5446 13220 +9264 9404 9332 9334 5377 13221 +9265 9405 9333 9335 5310 13222 +9266 9406 9334 9336 5449 13223 +9267 9407 9335 9337 5380 13224 +9268 9408 9336 9338 5313 13225 +9269 9409 9337 9339 5452 13226 +9270 9410 9338 9340 5453 13227 +9341 9411 9339 9412 5454 13228 +9270 9413 9340 9342 5383 13229 +9271 9414 9341 9343 5314 13230 +9272 9415 9342 9344 5457 13231 +9273 9416 9343 9345 5386 13232 +9274 9417 9344 9346 5317 13233 +9275 9418 9345 9347 5460 13234 +9276 9419 9346 9348 5389 13235 +9277 9420 9347 9349 5320 13236 +9278 9421 9348 9350 5463 13237 +9279 9422 9349 9351 5392 13238 +9280 9423 9350 9352 5323 13239 +9281 9424 9351 9353 5466 13240 +9282 9425 9352 9354 5395 13241 +9283 9426 9353 9355 5326 13242 +9284 9427 9354 9356 5469 13243 +9285 9428 9355 9357 5398 13244 +9286 9429 9356 9358 5329 13245 +9287 9430 9357 9359 5472 13246 +9288 9431 9358 9360 5401 13247 +9289 9432 9359 9361 5332 13248 +9290 9433 9360 9362 5475 13249 +9291 9434 9361 9363 5404 13250 +9292 9435 9362 9364 5335 13251 +9293 9436 9363 9365 5478 13252 +9294 9437 9364 9366 5407 13253 +9295 9438 9365 9367 5338 13254 +9296 9439 9366 9368 5481 13255 +9297 9440 9367 9369 5410 13256 +9298 9441 9368 9370 5341 13257 +9299 9442 9369 9371 5484 13258 +9300 9443 9370 9372 5413 13259 +9301 9444 9371 9373 5344 13260 +9302 9445 9372 9374 5487 13261 +9303 9446 9373 9375 5416 13262 +9304 9447 9374 9375 5347 13263 +9305 9448 9376 9377 5632 13264 +9306 9449 9376 9378 5560 13265 +9307 9450 9377 9379 5488 13266 +9308 9451 9378 9380 5635 13267 +9309 9452 9379 9381 5563 13268 +9310 9453 9380 9382 5491 13269 +9311 9454 9381 9383 5638 13270 +9312 9455 9382 9384 5566 13271 +9313 9456 9383 9385 5494 13272 +9314 9457 9384 9386 5641 13273 +9315 9458 9385 9387 5569 13274 +9316 9459 9386 9388 5497 13275 +9317 9460 9387 9389 5644 13276 +9318 9461 9388 9390 5572 13277 +9319 9462 9389 9391 5500 13278 +9320 9463 9390 9392 5647 13279 +9321 9464 9391 9393 5575 13280 +9322 9465 9392 9394 5503 13281 +9323 9466 9393 9395 5650 13282 +9324 9467 9394 9396 5578 13283 +9325 9468 9395 9397 5506 13284 +9326 9469 9396 9398 5653 13285 +9327 9470 9397 9399 5581 13286 +9328 9471 9398 9400 5509 13287 +9329 9472 9399 9401 5656 13288 +9330 9473 9400 9402 5584 13289 +9331 9474 9401 9403 5512 13290 +9332 9475 9402 9404 5659 13291 +9333 9476 9403 9405 5587 13292 +9334 9477 9404 9406 5515 13293 +9335 9478 9405 9407 5662 13294 +9336 9479 9406 9408 5590 13295 +9337 9480 9407 9409 5518 13296 +9338 9481 9408 9410 5665 13297 +9339 9482 9409 9411 5593 13298 +9340 9483 9410 9412 5521 13299 +9340 9484 9411 9413 5668 13300 +9341 9485 9412 9414 5596 13301 +9342 9486 9413 9415 5524 13302 +9343 9487 9414 9416 5671 13303 +9344 9488 9415 9417 5599 13304 +9345 9489 9416 9418 5527 13305 +9346 9490 9417 9419 5674 13306 +9347 9491 9418 9420 5602 13307 +9348 9492 9419 9421 5530 13308 +9349 9493 9420 9422 5677 13309 +9350 9494 9421 9423 5605 13310 +9351 9495 9422 9424 5533 13311 +9352 9496 9423 9425 5680 13312 +9353 9497 9424 9426 5608 13313 +9354 9498 9425 9427 5536 13314 +9355 9499 9426 9428 5683 13315 +9356 9500 9427 9429 5611 13316 +9357 9501 9428 9430 5539 13317 +9358 9502 9429 9431 5686 13318 +9359 9503 9430 9432 5614 13319 +9360 9504 9431 9433 5542 13320 +9361 9505 9432 9434 5689 13321 +9362 9506 9433 9435 5617 13322 +9363 9507 9434 9436 5545 13323 +9364 9508 9435 9437 5692 13324 +9365 9509 9436 9438 5620 13325 +9366 9510 9437 9439 5548 13326 +9367 9511 9438 9440 5695 13327 +9368 9512 9439 9441 5623 13328 +9369 9513 9440 9442 5551 13329 +9370 9514 9441 9443 5698 13330 +9371 9515 9442 9444 5626 13331 +9372 9516 9443 9445 5554 13332 +9373 9517 9444 9446 5701 13333 +9374 9518 9445 9447 5629 13334 +9375 9519 9446 9447 5557 13335 +9376 9520 9448 9449 5633 13336 +9377 9521 9448 9450 5561 13337 +9378 9522 9449 9451 5489 13338 +9379 9523 9450 9452 5636 13339 +9380 9524 9451 9453 5564 13340 +9381 9525 9452 9454 5492 13341 +9382 9526 9453 9455 5639 13342 +9383 9527 9454 9456 5567 13343 +9384 9528 9455 9457 5495 13344 +9385 9529 9456 9458 5642 13345 +9386 9530 9457 9459 5570 13346 +9387 9531 9458 9460 5498 13347 +9388 9532 9459 9461 5645 13348 +9389 9533 9460 9462 5573 13349 +9390 9534 9461 9463 5501 13350 +9391 9535 9462 9464 5648 13351 +9392 9536 9463 9465 5576 13352 +9393 9537 9464 9466 5504 13353 +9394 9538 9465 9467 5651 13354 +9395 9539 9466 9468 5579 13355 +9396 9540 9467 9469 5507 13356 +9397 9541 9468 9470 5654 13357 +9398 9542 9469 9471 5582 13358 +9399 9543 9470 9472 5510 13359 +9400 9544 9471 9473 5657 13360 +9401 9545 9472 9474 5585 13361 +9402 9546 9473 9475 5513 13362 +9403 9547 9474 9476 5660 13363 +9404 9548 9475 9477 5588 13364 +9405 9549 9476 9478 5516 13365 +9406 9550 9477 9479 5663 13366 +9407 9551 9478 9480 5591 13367 +9408 9552 9479 9481 5519 13368 +9409 9553 9480 9482 5666 13369 +9410 9554 9481 9483 5594 13370 +9411 9555 9482 9484 5522 13371 +9412 9556 9483 9485 5669 13372 +9413 9557 9484 9486 5597 13373 +9414 9558 9485 9487 5525 13374 +9415 9559 9486 9488 5672 13375 +9416 9560 9487 9489 5600 13376 +9417 9561 9488 9490 5528 13377 +9418 9562 9489 9491 5675 13378 +9419 9563 9490 9492 5603 13379 +9420 9564 9491 9493 5531 13380 +9421 9565 9492 9494 5678 13381 +9422 9566 9493 9495 5606 13382 +9423 9567 9494 9496 5534 13383 +9424 9568 9495 9497 5681 13384 +9425 9569 9496 9498 5609 13385 +9426 9570 9497 9499 5537 13386 +9427 9571 9498 9500 5684 13387 +9428 9572 9499 9501 5612 13388 +9429 9573 9500 9502 5540 13389 +9430 9574 9501 9503 5687 13390 +9431 9575 9502 9504 5615 13391 +9432 9576 9503 9505 5543 13392 +9433 9577 9504 9506 5690 13393 +9434 9578 9505 9507 5618 13394 +9435 9579 9506 9508 5546 13395 +9436 9580 9507 9509 5693 13396 +9437 9581 9508 9510 5621 13397 +9438 9582 9509 9511 5549 13398 +9439 9583 9510 9512 5696 13399 +9440 9584 9511 9513 5624 13400 +9441 9585 9512 9514 5552 13401 +9442 9586 9513 9515 5699 13402 +9443 9587 9514 9516 5627 13403 +9444 9588 9515 9517 5555 13404 +9445 9589 9516 9518 5702 13405 +9446 9590 9517 9519 5630 13406 +9447 9591 9518 9519 5558 13407 +9448 9592 9520 9521 5634 13408 +9449 9593 9520 9522 5562 13409 +9450 9594 9521 9523 5490 13410 +9451 9595 9522 9524 5637 13411 +9452 9596 9523 9525 5565 13412 +9453 9597 9524 9526 5493 13413 +9454 9598 9525 9527 5640 13414 +9455 9599 9526 9528 5568 13415 +9456 9600 9527 9529 5496 13416 +9457 9601 9528 9530 5643 13417 +9458 9602 9529 9531 5571 13418 +9459 9603 9530 9532 5499 13419 +9460 9604 9531 9533 5646 13420 +9461 9605 9532 9534 5574 13421 +9462 9606 9533 9535 5502 13422 +9463 9607 9534 9536 5649 13423 +9464 9608 9535 9537 5577 13424 +9465 9609 9536 9538 5505 13425 +9466 9610 9537 9539 5652 13426 +9467 9611 9538 9540 5580 13427 +9468 9612 9539 9541 5508 13428 +9469 9613 9540 9542 5655 13429 +9470 9614 9541 9543 5583 13430 +9471 9615 9542 9544 5511 13431 +9472 9616 9543 9545 5658 13432 +9473 9617 9544 9546 5586 13433 +9474 9618 9545 9547 5514 13434 +9475 9619 9546 9548 5661 13435 +9476 9620 9547 9549 5589 13436 +9477 9621 9548 9550 5517 13437 +9478 9622 9549 9551 5664 13438 +9479 9623 9550 9552 5592 13439 +9480 9624 9551 9553 5520 13440 +9481 9625 9552 9554 5667 13441 +9482 9626 9553 9555 5595 13442 +9483 9627 9554 9556 5523 13443 +9484 9628 9555 9557 5670 13444 +9485 9629 9556 9558 5598 13445 +9486 9630 9557 9559 5526 13446 +9487 9631 9558 9560 5673 13447 +9488 9632 9559 9561 5601 13448 +9489 9633 9560 9562 5529 13449 +9490 9634 9561 9563 5676 13450 +9491 9635 9562 9564 5604 13451 +9492 9636 9563 9565 5532 13452 +9493 9637 9564 9566 5679 13453 +9494 9638 9565 9567 5607 13454 +9495 9639 9566 9568 5535 13455 +9496 9640 9567 9569 5682 13456 +9497 9641 9568 9570 5610 13457 +9498 9642 9569 9571 5538 13458 +9499 9643 9570 9572 5685 13459 +9500 9644 9571 9573 5613 13460 +9501 9645 9572 9574 5541 13461 +9502 9646 9573 9575 5688 13462 +9503 9647 9574 9576 5616 13463 +9504 9648 9575 9577 5544 13464 +9505 9649 9576 9578 5691 13465 +9506 9650 9577 9579 5619 13466 +9507 9651 9578 9580 5547 13467 +9508 9652 9579 9581 5694 13468 +9509 9653 9580 9582 5622 13469 +9510 9654 9581 9583 5550 13470 +9511 9655 9582 9584 5697 13471 +9512 9656 9583 9585 5625 13472 +9513 9657 9584 9586 5553 13473 +9514 9658 9585 9587 5700 13474 +9515 9659 9586 9588 5628 13475 +9516 9660 9587 9589 5556 13476 +9517 9661 9588 9590 5703 13477 +9518 9662 9589 9591 5631 13478 +9519 9663 9590 9591 5559 13479 +9520 9664 9592 9593 5848 13480 +9521 9665 9592 9594 5776 13481 +9522 9666 9593 9595 5704 13482 +9523 9667 9594 9596 5851 13483 +9524 9668 9595 9597 5779 13484 +9525 9669 9596 9598 5707 13485 +9526 9670 9597 9599 5854 13486 +9527 9671 9598 9600 5782 13487 +9528 9672 9599 9601 5710 13488 +9529 9673 9600 9602 5857 13489 +9530 9674 9601 9603 5785 13490 +9531 9675 9602 9604 5713 13491 +9532 9676 9603 9605 5860 13492 +9533 9677 9604 9606 5788 13493 +9534 9678 9605 9607 5716 13494 +9535 9679 9606 9608 5863 13495 +9536 9680 9607 9609 5791 13496 +9537 9681 9608 9610 5719 13497 +9538 9682 9609 9611 5866 13498 +9539 9683 9610 9612 5794 13499 +9540 9684 9611 9613 5722 13500 +9541 9685 9612 9614 5869 13501 +9542 9686 9613 9615 5797 13502 +9543 9687 9614 9616 5725 13503 +9544 9688 9615 9617 5872 13504 +9545 9689 9616 9618 5800 13505 +9546 9690 9617 9619 5728 13506 +9547 9691 9618 9620 5875 13507 +9548 9692 9619 9621 5803 13508 +9549 9693 9620 9622 5731 13509 +9550 9694 9621 9623 5878 13510 +9551 9695 9622 9624 5806 13511 +9552 9696 9623 9625 5734 13512 +9553 9697 9624 9626 5881 13513 +9554 9698 9625 9627 5809 13514 +9555 9699 9626 9628 5737 13515 +9556 9700 9627 9629 5884 13516 +9557 9701 9628 9630 5812 13517 +9558 9702 9629 9631 5740 13518 +9559 9703 9630 9632 5887 13519 +9560 9704 9631 9633 5815 13520 +9561 9705 9632 9634 5743 13521 +9562 9706 9633 9635 5890 13522 +9563 9707 9634 9636 5818 13523 +9564 9708 9635 9637 5746 13524 +9565 9709 9636 9638 5893 13525 +9566 9710 9637 9639 5821 13526 +9567 9711 9638 9640 5749 13527 +9568 9712 9639 9641 5896 13528 +9569 9713 9640 9642 5824 13529 +9570 9714 9641 9643 5752 13530 +9571 9715 9642 9644 5899 13531 +9572 9716 9643 9645 5827 13532 +9573 9717 9644 9646 5755 13533 +9574 9718 9645 9647 5902 13534 +9575 9719 9646 9648 5830 13535 +9576 9720 9647 9649 5758 13536 +9577 9721 9648 9650 5905 13537 +9578 9722 9649 9651 5833 13538 +9579 9723 9650 9652 5761 13539 +9580 9724 9651 9653 5908 13540 +9581 9725 9652 9654 5836 13541 +9582 9726 9653 9655 5764 13542 +9583 9727 9654 9656 5911 13543 +9584 9728 9655 9657 5839 13544 +9585 9729 9656 9658 5767 13545 +9586 9730 9657 9659 5914 13546 +9587 9731 9658 9660 5842 13547 +9588 9732 9659 9661 5770 13548 +9589 9733 9660 9662 5917 13549 +9590 9734 9661 9663 5845 13550 +9591 9735 9662 9663 5773 13551 +9592 9736 9664 9665 5849 13552 +9593 9737 9664 9666 5777 13553 +9594 9738 9665 9667 5705 13554 +9595 9739 9666 9668 5852 13555 +9596 9740 9667 9669 5780 13556 +9597 9741 9668 9670 5708 13557 +9598 9742 9669 9671 5855 13558 +9599 9743 9670 9672 5783 13559 +9600 9744 9671 9673 5711 13560 +9601 9745 9672 9674 5858 13561 +9602 9746 9673 9675 5786 13562 +9603 9747 9674 9676 5714 13563 +9604 9748 9675 9677 5861 13564 +9605 9749 9676 9678 5789 13565 +9606 9750 9677 9679 5717 13566 +9607 9751 9678 9680 5864 13567 +9608 9752 9679 9681 5792 13568 +9609 9753 9680 9682 5720 13569 +9610 9754 9681 9683 5867 13570 +9611 9755 9682 9684 5795 13571 +9612 9756 9683 9685 5723 13572 +9613 9757 9684 9686 5870 13573 +9614 9758 9685 9687 5798 13574 +9615 9759 9686 9688 5726 13575 +9616 9760 9687 9689 5873 13576 +9617 9761 9688 9690 5801 13577 +9618 9762 9689 9691 5729 13578 +9619 9763 9690 9692 5876 13579 +9620 9764 9691 9693 5804 13580 +9621 9765 9692 9694 5732 13581 +9622 9766 9693 9695 5879 13582 +9623 9767 9694 9696 5807 13583 +9624 9768 9695 9697 5735 13584 +9625 9769 9696 9698 5882 13585 +9626 9770 9697 9699 5810 13586 +9627 9771 9698 9700 5738 13587 +9628 9772 9699 9701 5885 13588 +9629 9773 9700 9702 5813 13589 +9630 9774 9701 9703 5741 13590 +9631 9775 9702 9704 5888 13591 +9632 9776 9703 9705 5816 13592 +9633 9777 9704 9706 5744 13593 +9634 9778 9705 9707 5891 13594 +9635 9779 9706 9708 5819 13595 +9636 9780 9707 9709 5747 13596 +9637 9781 9708 9710 5894 13597 +9638 9782 9709 9711 5822 13598 +9639 9783 9710 9712 5750 13599 +9640 9784 9711 9713 5897 13600 +9641 9785 9712 9714 5825 13601 +9642 9786 9713 9715 5753 13602 +9643 9787 9714 9716 5900 13603 +9644 9788 9715 9717 5828 13604 +9645 9789 9716 9718 5756 13605 +9646 9790 9717 9719 5903 13606 +9647 9791 9718 9720 5831 13607 +9648 9792 9719 9721 5759 13608 +9649 9793 9720 9722 5906 13609 +9650 9794 9721 9723 5834 13610 +9651 9795 9722 9724 5762 13611 +9652 9796 9723 9725 5909 13612 +9653 9797 9724 9726 5837 13613 +9654 9798 9725 9727 5765 13614 +9655 9799 9726 9728 5912 13615 +9656 9800 9727 9729 5840 13616 +9657 9801 9728 9730 5768 13617 +9658 9802 9729 9731 5915 13618 +9659 9803 9730 9732 5843 13619 +9660 9804 9731 9733 5771 13620 +9661 9805 9732 9734 5918 13621 +9662 9806 9733 9735 5846 13622 +9663 9807 9734 9735 5774 13623 +9664 9808 9736 9737 5850 13624 +9665 9809 9736 9738 5778 13625 +9666 9810 9737 9739 5706 13626 +9667 9811 9738 9740 5853 13627 +9668 9812 9739 9741 5781 13628 +9669 9813 9740 9742 5709 13629 +9670 9814 9741 9743 5856 13630 +9671 9815 9742 9744 5784 13631 +9672 9816 9743 9745 5712 13632 +9673 9817 9744 9746 5859 13633 +9674 9818 9745 9747 5787 13634 +9675 9819 9746 9748 5715 13635 +9676 9820 9747 9749 5862 13636 +9677 9821 9748 9750 5790 13637 +9678 9822 9749 9751 5718 13638 +9679 9823 9750 9752 5865 13639 +9680 9824 9751 9753 5793 13640 +9681 9825 9752 9754 5721 13641 +9682 9826 9753 9755 5868 13642 +9683 9827 9754 9756 5796 13643 +9684 9828 9755 9757 5724 13644 +9685 9829 9756 9758 5871 13645 +9686 9830 9757 9759 5799 13646 +9687 9831 9758 9760 5727 13647 +9688 9832 9759 9761 5874 13648 +9689 9833 9760 9762 5802 13649 +9690 9834 9761 9763 5730 13650 +9691 9835 9762 9764 5877 13651 +9692 9836 9763 9765 5805 13652 +9693 9837 9764 9766 5733 13653 +9694 9838 9765 9767 5880 13654 +9695 9839 9766 9768 5808 13655 +9696 9840 9767 9769 5736 13656 +9697 9841 9768 9770 5883 13657 +9698 9842 9769 9771 5811 13658 +9699 9843 9770 9772 5739 13659 +9700 9844 9771 9773 5886 13660 +9701 9845 9772 9774 5814 13661 +9702 9846 9773 9775 5742 13662 +9703 9847 9774 9776 5889 13663 +9704 9848 9775 9777 5817 13664 +9705 9849 9776 9778 5745 13665 +9706 9850 9777 9779 5892 13666 +9707 9851 9778 9780 5820 13667 +9708 9852 9779 9781 5748 13668 +9709 9853 9780 9782 5895 13669 +9710 9854 9781 9783 5823 13670 +9711 9855 9782 9784 5751 13671 +9712 9856 9783 9785 5898 13672 +9713 9857 9784 9786 5826 13673 +9714 9858 9785 9787 5754 13674 +9715 9859 9786 9788 5901 13675 +9716 9860 9787 9789 5829 13676 +9717 9861 9788 9790 5757 13677 +9718 9862 9789 9791 5904 13678 +9719 9863 9790 9792 5832 13679 +9720 9864 9791 9793 5760 13680 +9721 9865 9792 9794 5907 13681 +9722 9866 9793 9795 5835 13682 +9723 9867 9794 9796 5763 13683 +9724 9868 9795 9797 5910 13684 +9725 9869 9796 9798 5838 13685 +9726 9870 9797 9799 5766 13686 +9727 9871 9798 9800 5913 13687 +9728 9872 9799 9801 5841 13688 +9729 9873 9800 9802 5769 13689 +9730 9874 9801 9803 5916 13690 +9731 9875 9802 9804 5844 13691 +9732 9876 9803 9805 5772 13692 +9733 9877 9804 9806 5919 13693 +9734 9878 9805 9807 5847 13694 +9735 9879 9806 9807 5775 13695 +9736 9880 9808 9809 6064 13696 +9737 9881 9808 9810 5992 13697 +9738 9882 9809 9811 5920 13698 +9739 9883 9810 9812 6067 13699 +9740 9884 9811 9813 5995 13700 +9741 9885 9812 9814 5923 13701 +9742 9886 9813 9815 6070 13702 +9743 9887 9814 9816 5998 13703 +9744 9888 9815 9817 5926 13704 +9745 9889 9816 9818 6073 13705 +9746 9890 9817 9819 6001 13706 +9747 9891 9818 9820 5929 13707 +9748 9892 9819 9821 6076 13708 +9749 9893 9820 9822 6004 13709 +9750 9894 9821 9823 5932 13710 +9751 9895 9822 9824 6079 13711 +9752 9896 9823 9825 6007 13712 +9753 9897 9824 9826 5935 13713 +9754 9898 9825 9827 6082 13714 +9755 9899 9826 9828 6010 13715 +9756 9900 9827 9829 5938 13716 +9757 9901 9828 9830 6085 13717 +9758 9902 9829 9831 6013 13718 +9759 9903 9830 9832 5941 13719 +9760 9904 9831 9833 6088 13720 +9761 9905 9832 9834 6016 13721 +9762 9906 9833 9835 5944 13722 +9763 9907 9834 9836 6091 13723 +9764 9908 9835 9837 6019 13724 +9765 9909 9836 9838 5947 13725 +9766 9910 9837 9839 6094 13726 +9767 9911 9838 9840 6022 13727 +9768 9912 9839 9841 5950 13728 +9769 9913 9840 9842 6097 13729 +9770 9914 9841 9843 6025 13730 +9771 9915 9842 9844 5953 13731 +9772 9916 9843 9845 6100 13732 +9773 9917 9844 9846 6028 13733 +9774 9918 9845 9847 5956 13734 +9775 9919 9846 9848 6103 13735 +9776 9920 9847 9849 6031 13736 +9777 9921 9848 9850 5959 13737 +9778 9922 9849 9851 6106 13738 +9779 9923 9850 9852 6034 13739 +9780 9924 9851 9853 5962 13740 +9781 9925 9852 9854 6109 13741 +9782 9926 9853 9855 6037 13742 +9783 9927 9854 9856 5965 13743 +9784 9928 9855 9857 6112 13744 +9785 9929 9856 9858 6040 13745 +9786 9930 9857 9859 5968 13746 +9787 9931 9858 9860 6115 13747 +9788 9932 9859 9861 6043 13748 +9789 9933 9860 9862 5971 13749 +9790 9934 9861 9863 6118 13750 +9791 9935 9862 9864 6046 13751 +9792 9936 9863 9865 5974 13752 +9793 9937 9864 9866 6121 13753 +9794 9938 9865 9867 6049 13754 +9795 9939 9866 9868 5977 13755 +9796 9940 9867 9869 6124 13756 +9797 9941 9868 9870 6052 13757 +9798 9942 9869 9871 5980 13758 +9799 9943 9870 9872 6127 13759 +9800 9944 9871 9873 6055 13760 +9801 9945 9872 9874 5983 13761 +9802 9946 9873 9875 6130 13762 +9803 9947 9874 9876 6058 13763 +9804 9948 9875 9877 5986 13764 +9805 9949 9876 9878 6133 13765 +9806 9950 9877 9879 6061 13766 +9807 9951 9878 9879 5989 13767 +9808 9952 9880 9881 6065 13768 +9809 9953 9880 9882 5993 13769 +9810 9954 9881 9883 5921 13770 +9811 9955 9882 9884 6068 13771 +9812 9956 9883 9885 5996 13772 +9813 9957 9884 9886 5924 13773 +9814 9958 9885 9887 6071 13774 +9815 9959 9886 9888 5999 13775 +9816 9960 9887 9889 5927 13776 +9817 9961 9888 9890 6074 13777 +9818 9962 9889 9891 6002 13778 +9819 9963 9890 9892 5930 13779 +9820 9964 9891 9893 6077 13780 +9821 9965 9892 9894 6005 13781 +9822 9966 9893 9895 5933 13782 +9823 9967 9894 9896 6080 13783 +9824 9968 9895 9897 6008 13784 +9825 9969 9896 9898 5936 13785 +9826 9970 9897 9899 6083 13786 +9827 9971 9898 9900 6011 13787 +9828 9972 9899 9901 5939 13788 +9829 9973 9900 9902 6086 13789 +9830 9974 9901 9903 6014 13790 +9831 9975 9902 9904 5942 13791 +9832 9976 9903 9905 6089 13792 +9833 9977 9904 9906 6017 13793 +9834 9978 9905 9907 5945 13794 +9835 9979 9906 9908 6092 13795 +9836 9980 9907 9909 6020 13796 +9837 9981 9908 9910 5948 13797 +9838 9982 9909 9911 6095 13798 +9839 9983 9910 9912 6023 13799 +9840 9984 9911 9913 5951 13800 +9841 9985 9912 9914 6098 13801 +9842 9986 9913 9915 6026 13802 +9843 9987 9914 9916 5954 13803 +9844 9988 9915 9917 6101 13804 +9845 9989 9916 9918 6029 13805 +9846 9990 9917 9919 5957 13806 +9847 9991 9918 9920 6104 13807 +9848 9992 9919 9921 6032 13808 +9849 9993 9920 9922 5960 13809 +9850 9994 9921 9923 6107 13810 +9851 9995 9922 9924 6035 13811 +9852 9996 9923 9925 5963 13812 +9853 9997 9924 9926 6110 13813 +9854 9998 9925 9927 6038 13814 +9855 9999 9926 9928 5966 13815 +9856 10000 9927 9929 6113 13816 +9857 10001 9928 9930 6041 13817 +9858 10002 9929 9931 5969 13818 +9859 10003 9930 9932 6116 13819 +9860 10004 9931 9933 6044 13820 +9861 10005 9932 9934 5972 13821 +9862 10006 9933 9935 6119 13822 +9863 10007 9934 9936 6047 13823 +9864 10008 9935 9937 5975 13824 +9865 10009 9936 9938 6122 13825 +9866 10010 9937 9939 6050 13826 +9867 10011 9938 9940 5978 13827 +9868 10012 9939 9941 6125 13828 +9869 10013 9940 9942 6053 13829 +9870 10014 9941 9943 5981 13830 +9871 10015 9942 9944 6128 13831 +9872 10016 9943 9945 6056 13832 +9873 10017 9944 9946 5984 13833 +9874 10018 9945 9947 6131 13834 +9875 10019 9946 9948 6059 13835 +9876 10020 9947 9949 5987 13836 +9877 10021 9948 9950 6134 13837 +9878 10022 9949 9951 6062 13838 +9879 10023 9950 9951 5990 13839 +9880 10024 9952 9953 6066 13840 +9881 10025 9952 9954 5994 13841 +9882 10026 9953 9955 5922 13842 +9883 10027 9954 9956 6069 13843 +9884 10028 9955 9957 5997 13844 +9885 10029 9956 9958 5925 13845 +9886 10030 9957 9959 6072 13846 +9887 10031 9958 9960 6000 13847 +9888 10032 9959 9961 5928 13848 +9889 10033 9960 9962 6075 13849 +9890 10034 9961 9963 6003 13850 +9891 10035 9962 9964 5931 13851 +9892 10036 9963 9965 6078 13852 +9893 10037 9964 9966 6006 13853 +9894 10038 9965 9967 5934 13854 +9895 10039 9966 9968 6081 13855 +9896 10040 9967 9969 6009 13856 +9897 10041 9968 9970 5937 13857 +9898 10042 9969 9971 6084 13858 +9899 10043 9970 9972 6012 13859 +9900 10044 9971 9973 5940 13860 +9901 10045 9972 9974 6087 13861 +9902 10046 9973 9975 6015 13862 +9903 10047 9974 9976 5943 13863 +9904 10048 9975 9977 6090 13864 +9905 10049 9976 9978 6018 13865 +9906 10050 9977 9979 5946 13866 +9907 10051 9978 9980 6093 13867 +9908 10052 9979 9981 6021 13868 +9909 10053 9980 9982 5949 13869 +9910 10054 9981 9983 6096 13870 +9911 10055 9982 9984 6024 13871 +9912 10056 9983 9985 5952 13872 +9913 10057 9984 9986 6099 13873 +9914 10058 9985 9987 6027 13874 +9915 10059 9986 9988 5955 13875 +9916 10060 9987 9989 6102 13876 +9917 10061 9988 9990 6030 13877 +9918 10062 9989 9991 5958 13878 +9919 10063 9990 9992 6105 13879 +9920 10064 9991 9993 6033 13880 +9921 10065 9992 9994 5961 13881 +9922 10066 9993 9995 6108 13882 +9923 10067 9994 9996 6036 13883 +9924 10068 9995 9997 5964 13884 +9925 10069 9996 9998 6111 13885 +9926 10070 9997 9999 6039 13886 +9927 10071 9998 10000 5967 13887 +9928 10072 9999 10001 6114 13888 +9929 10073 10000 10002 6042 13889 +9930 10074 10001 10003 5970 13890 +9931 10075 10002 10004 6117 13891 +9932 10076 10003 10005 6045 13892 +9933 10077 10004 10006 5973 13893 +9934 10078 10005 10007 6120 13894 +9935 10079 10006 10008 6048 13895 +9936 10080 10007 10009 5976 13896 +9937 10081 10008 10010 6123 13897 +9938 10082 10009 10011 6051 13898 +9939 10083 10010 10012 5979 13899 +9940 10084 10011 10013 6126 13900 +9941 10085 10012 10014 6054 13901 +9942 10086 10013 10015 5982 13902 +9943 10087 10014 10016 6129 13903 +9944 10088 10015 10017 6057 13904 +9945 10089 10016 10018 5985 13905 +9946 10090 10017 10019 6132 13906 +9947 10091 10018 10020 6060 13907 +9948 10092 10019 10021 5988 13908 +9949 10093 10020 10022 6135 13909 +9950 10094 10021 10023 6063 13910 +9951 10095 10022 10023 5991 13911 +9952 10096 10024 10025 6280 13912 +9953 10097 10024 10026 6208 13913 +9954 10098 10025 10027 6136 13914 +9955 10099 10026 10028 6283 13915 +9956 10100 10027 10029 6211 13916 +9957 10101 10028 10030 6139 13917 +9958 10102 10029 10031 6286 13918 +9959 10103 10030 10032 6214 13919 +9960 10104 10031 10033 6142 13920 +9961 10105 10032 10034 6289 13921 +9962 10106 10033 10035 6217 13922 +9963 10107 10034 10036 6145 13923 +9964 10108 10035 10037 6292 13924 +9965 10109 10036 10038 6220 13925 +9966 10110 10037 10039 6148 13926 +9967 10111 10038 10040 6295 13927 +9968 10112 10039 10041 6223 13928 +9969 10113 10040 10042 6151 13929 +9970 10114 10041 10043 6298 13930 +9971 10115 10042 10044 6226 13931 +9972 10116 10043 10045 6154 13932 +9973 10117 10044 10046 6301 13933 +9974 10118 10045 10047 6229 13934 +9975 10119 10046 10048 6157 13935 +9976 10120 10047 10049 6304 13936 +9977 10121 10048 10050 6232 13937 +9978 10122 10049 10051 6160 13938 +9979 10123 10050 10052 6307 13939 +9980 10124 10051 10053 6235 13940 +9981 10125 10052 10054 6163 13941 +9982 10126 10053 10055 6310 13942 +9983 10127 10054 10056 6238 13943 +9984 10128 10055 10057 6166 13944 +9985 10129 10056 10058 6313 13945 +9986 10130 10057 10059 6241 13946 +9987 10131 10058 10060 6169 13947 +9988 10132 10059 10061 6316 13948 +9989 10133 10060 10062 6244 13949 +9990 10134 10061 10063 6172 13950 +9991 10135 10062 10064 6319 13951 +9992 10136 10063 10065 6247 13952 +9993 10137 10064 10066 6175 13953 +9994 10138 10065 10067 6322 13954 +9995 10139 10066 10068 6250 13955 +9996 10140 10067 10069 6178 13956 +9997 10141 10068 10070 6325 13957 +9998 10142 10069 10071 6253 13958 +9999 10143 10070 10072 6181 13959 +10000 10144 10071 10073 6328 13960 +10001 10145 10072 10074 6256 13961 +10002 10146 10073 10075 6184 13962 +10003 10147 10074 10076 6331 13963 +10004 10148 10075 10077 6259 13964 +10005 10149 10076 10078 6187 13965 +10006 10150 10077 10079 6334 13966 +10007 10151 10078 10080 6262 13967 +10008 10152 10079 10081 6190 13968 +10009 10153 10080 10082 6337 13969 +10010 10154 10081 10083 6265 13970 +10011 10155 10082 10084 6193 13971 +10012 10156 10083 10085 6340 13972 +10013 10157 10084 10086 6268 13973 +10014 10158 10085 10087 6196 13974 +10015 10159 10086 10088 6343 13975 +10016 10160 10087 10089 6271 13976 +10017 10161 10088 10090 6199 13977 +10018 10162 10089 10091 6346 13978 +10019 10163 10090 10092 6274 13979 +10020 10164 10091 10093 6202 13980 +10021 10165 10092 10094 6349 13981 +10022 10166 10093 10095 6277 13982 +10023 10167 10094 10095 6205 13983 +10024 10168 10096 10097 6281 13984 +10025 10169 10096 10098 6209 13985 +10026 10170 10097 10099 6137 13986 +10027 10171 10098 10100 6284 13987 +10028 10172 10099 10101 6212 13988 +10029 10173 10100 10102 6140 13989 +10030 10174 10101 10103 6287 13990 +10031 10175 10102 10104 6215 13991 +10032 10176 10103 10105 6143 13992 +10033 10177 10104 10106 6290 13993 +10034 10178 10105 10107 6218 13994 +10035 10179 10106 10108 6146 13995 +10036 10180 10107 10109 6293 13996 +10037 10181 10108 10110 6221 13997 +10038 10182 10109 10111 6149 13998 +10039 10183 10110 10112 6296 13999 +10040 10184 10111 10113 6224 14000 +10041 10185 10112 10114 6152 14001 +10042 10186 10113 10115 6299 14002 +10043 10187 10114 10116 6227 14003 +10044 10188 10115 10117 6155 14004 +10045 10189 10116 10118 6302 14005 +10046 10190 10117 10119 6230 14006 +10047 10191 10118 10120 6158 14007 +10048 10192 10119 10121 6305 14008 +10049 10193 10120 10122 6233 14009 +10050 10194 10121 10123 6161 14010 +10051 10195 10122 10124 6308 14011 +10052 10196 10123 10125 6236 14012 +10053 10197 10124 10126 6164 14013 +10054 10198 10125 10127 6311 14014 +10055 10199 10126 10128 6239 14015 +10056 10200 10127 10129 6167 14016 +10057 10201 10128 10130 6314 14017 +10058 10202 10129 10131 6242 14018 +10059 10203 10130 10132 6170 14019 +10060 10204 10131 10133 6317 14020 +10061 10205 10132 10134 6245 14021 +10062 10206 10133 10135 6173 14022 +10063 10207 10134 10136 6320 14023 +10064 10208 10135 10137 6248 14024 +10065 10209 10136 10138 6176 14025 +10066 10210 10137 10139 6323 14026 +10067 10211 10138 10140 6251 14027 +10068 10212 10139 10141 6179 14028 +10069 10213 10140 10142 6326 14029 +10070 10214 10141 10143 6254 14030 +10071 10215 10142 10144 6182 14031 +10072 10216 10143 10145 6329 14032 +10073 10217 10144 10146 6257 14033 +10074 10218 10145 10147 6185 14034 +10075 10219 10146 10148 6332 14035 +10076 10220 10147 10149 6260 14036 +10077 10221 10148 10150 6188 14037 +10078 10222 10149 10151 6335 14038 +10079 10223 10150 10152 6263 14039 +10080 10224 10151 10153 6191 14040 +10081 10225 10152 10154 6338 14041 +10082 10226 10153 10155 6266 14042 +10083 10227 10154 10156 6194 14043 +10084 10228 10155 10157 6341 14044 +10085 10229 10156 10158 6269 14045 +10086 10230 10157 10159 6197 14046 +10087 10231 10158 10160 6344 14047 +10088 10232 10159 10161 6272 14048 +10089 10233 10160 10162 6200 14049 +10090 10234 10161 10163 6347 14050 +10091 10235 10162 10164 6275 14051 +10092 10236 10163 10165 6203 14052 +10093 10237 10164 10166 6350 14053 +10094 10238 10165 10167 6278 14054 +10095 10239 10166 10167 6206 14055 +10096 10240 10168 10169 6282 14056 +10097 10241 10168 10170 6210 14057 +10098 10242 10169 10171 6138 14058 +10099 10243 10170 10172 6285 14059 +10100 10244 10171 10173 6213 14060 +10101 10245 10172 10174 6141 14061 +10102 10246 10173 10175 6288 14062 +10103 10247 10174 10176 6216 14063 +10104 10248 10175 10177 6144 14064 +10105 10249 10176 10178 6291 14065 +10106 10250 10177 10179 6219 14066 +10107 10251 10178 10180 6147 14067 +10108 10252 10179 10181 6294 14068 +10109 10253 10180 10182 6222 14069 +10110 10254 10181 10183 6150 14070 +10111 10255 10182 10184 6297 14071 +10112 10256 10183 10185 6225 14072 +10113 10257 10184 10186 6153 14073 +10114 10258 10185 10187 6300 14074 +10115 10259 10186 10188 6228 14075 +10116 10260 10187 10189 6156 14076 +10117 10261 10188 10190 6303 14077 +10118 10262 10189 10191 6231 14078 +10119 10263 10190 10192 6159 14079 +10120 10264 10191 10193 6306 14080 +10121 10265 10192 10194 6234 14081 +10122 10266 10193 10195 6162 14082 +10123 10267 10194 10196 6309 14083 +10124 10268 10195 10197 6237 14084 +10125 10269 10196 10198 6165 14085 +10126 10270 10197 10199 6312 14086 +10127 10271 10198 10200 6240 14087 +10128 10272 10199 10201 6168 14088 +10129 10273 10200 10202 6315 14089 +10130 10274 10201 10203 6243 14090 +10131 10275 10202 10204 6171 14091 +10132 10276 10203 10205 6318 14092 +10133 10277 10204 10206 6246 14093 +10134 10278 10205 10207 6174 14094 +10135 10279 10206 10208 6321 14095 +10136 10280 10207 10209 6249 14096 +10137 10281 10208 10210 6177 14097 +10138 10282 10209 10211 6324 14098 +10139 10283 10210 10212 6252 14099 +10140 10284 10211 10213 6180 14100 +10141 10285 10212 10214 6327 14101 +10142 10286 10213 10215 6255 14102 +10143 10287 10214 10216 6183 14103 +10144 10288 10215 10217 6330 14104 +10145 10289 10216 10218 6258 14105 +10146 10290 10217 10219 6186 14106 +10147 10291 10218 10220 6333 14107 +10148 10292 10219 10221 6261 14108 +10149 10293 10220 10222 6189 14109 +10150 10294 10221 10223 6336 14110 +10151 10295 10222 10224 6264 14111 +10152 10296 10223 10225 6192 14112 +10153 10297 10224 10226 6339 14113 +10154 10298 10225 10227 6267 14114 +10155 10299 10226 10228 6195 14115 +10156 10300 10227 10229 6342 14116 +10157 10301 10228 10230 6270 14117 +10158 10302 10229 10231 6198 14118 +10159 10303 10230 10232 6345 14119 +10160 10304 10231 10233 6273 14120 +10161 10305 10232 10234 6201 14121 +10162 10306 10233 10235 6348 14122 +10163 10307 10234 10236 6276 14123 +10164 10308 10235 10237 6204 14124 +10165 10309 10236 10238 6351 14125 +10166 10310 10237 10239 6279 14126 +10167 10311 10238 10239 6207 14127 +10168 10312 10240 10241 6496 14128 +10169 10313 10240 10242 6424 14129 +10170 10314 10241 10243 6352 14130 +10171 10315 10242 10244 6499 14131 +10172 10316 10243 10245 6427 14132 +10173 10317 10244 10246 6355 14133 +10174 10318 10245 10247 6502 14134 +10175 10319 10246 10248 6430 14135 +10176 10320 10247 10249 6358 14136 +10177 10321 10248 10250 6505 14137 +10178 10322 10249 10251 6433 14138 +10179 10323 10250 10252 6361 14139 +10180 10324 10251 10253 6508 14140 +10181 10325 10252 10254 6436 14141 +10182 10326 10253 10255 6364 14142 +10183 10327 10254 10256 6511 14143 +10184 10328 10255 10257 6439 14144 +10185 10329 10256 10258 6367 14145 +10186 10330 10257 10259 6514 14146 +10187 10331 10258 10260 6442 14147 +10188 10332 10259 10261 6370 14148 +10189 10333 10260 10262 6517 14149 +10190 10334 10261 10263 6445 14150 +10191 10335 10262 10264 6373 14151 +10192 10336 10263 10265 6520 14152 +10193 10337 10264 10266 6448 14153 +10194 10338 10265 10267 6376 14154 +10195 10339 10266 10268 6523 14155 +10196 10340 10267 10269 6451 14156 +10197 10341 10268 10270 6379 14157 +10198 10342 10269 10271 6526 14158 +10199 10343 10270 10272 6454 14159 +10200 10344 10271 10273 6382 14160 +10201 10345 10272 10274 6529 14161 +10202 10346 10273 10275 6457 14162 +10203 10347 10274 10276 6385 14163 +10204 10348 10275 10277 6532 14164 +10205 10349 10276 10278 6460 14165 +10206 10350 10277 10279 6388 14166 +10207 10351 10278 10280 6535 14167 +10208 10352 10279 10281 6463 14168 +10209 10353 10280 10282 6391 14169 +10210 10354 10281 10283 6538 14170 +10211 10355 10282 10284 6466 14171 +10212 10356 10283 10285 6394 14172 +10213 10357 10284 10286 6541 14173 +10214 10358 10285 10287 6469 14174 +10215 10359 10286 10288 6397 14175 +10216 10360 10287 10289 6544 14176 +10217 10361 10288 10290 6472 14177 +10218 10362 10289 10291 6400 14178 +10219 10363 10290 10292 6547 14179 +10220 10364 10291 10293 6475 14180 +10221 10365 10292 10294 6403 14181 +10222 10366 10293 10295 6550 14182 +10223 10367 10294 10296 6478 14183 +10224 10368 10295 10297 6406 14184 +10225 10369 10296 10298 6553 14185 +10226 10370 10297 10299 6481 14186 +10227 10371 10298 10300 6409 14187 +10228 10372 10299 10301 6556 14188 +10229 10373 10300 10302 6484 14189 +10230 10374 10301 10303 6412 14190 +10231 10375 10302 10304 6559 14191 +10232 10376 10303 10305 6487 14192 +10233 10377 10304 10306 6415 14193 +10234 10378 10305 10307 6562 14194 +10235 10379 10306 10308 6490 14195 +10236 10380 10307 10309 6418 14196 +10237 10381 10308 10310 6565 14197 +10238 10382 10309 10311 6493 14198 +10239 10383 10310 10311 6421 14199 +10240 10384 10312 10313 6497 14200 +10241 10385 10312 10314 6425 14201 +10242 10386 10313 10315 6353 14202 +10243 10387 10314 10316 6500 14203 +10244 10388 10315 10317 6428 14204 +10245 10389 10316 10318 6356 14205 +10246 10390 10317 10319 6503 14206 +10247 10391 10318 10320 6431 14207 +10248 10392 10319 10321 6359 14208 +10249 10393 10320 10322 6506 14209 +10250 10394 10321 10323 6434 14210 +10251 10395 10322 10324 6362 14211 +10252 10396 10323 10325 6509 14212 +10253 10397 10324 10326 6437 14213 +10254 10398 10325 10327 6365 14214 +10255 10399 10326 10328 6512 14215 +10256 10400 10327 10329 6440 14216 +10257 10401 10328 10330 6368 14217 +10258 10402 10329 10331 6515 14218 +10259 10403 10330 10332 6443 14219 +10260 10404 10331 10333 6371 14220 +10261 10405 10332 10334 6518 14221 +10262 10406 10333 10335 6446 14222 +10263 10407 10334 10336 6374 14223 +10264 10408 10335 10337 6521 14224 +10265 10409 10336 10338 6449 14225 +10266 10410 10337 10339 6377 14226 +10267 10411 10338 10340 6524 14227 +10268 10412 10339 10341 6452 14228 +10269 10413 10340 10342 6380 14229 +10270 10414 10341 10343 6527 14230 +10271 10415 10342 10344 6455 14231 +10272 10416 10343 10345 6383 14232 +10273 10417 10344 10346 6530 14233 +10274 10418 10345 10347 6458 14234 +10275 10419 10346 10348 6386 14235 +10276 10420 10347 10349 6533 14236 +10277 10421 10348 10350 6461 14237 +10278 10422 10349 10351 6389 14238 +10279 10423 10350 10352 6536 14239 +10280 10424 10351 10353 6464 14240 +10281 10425 10352 10354 6392 14241 +10282 10426 10353 10355 6539 14242 +10283 10427 10354 10356 6467 14243 +10284 10428 10355 10357 6395 14244 +10285 10429 10356 10358 6542 14245 +10286 10430 10357 10359 6470 14246 +10287 10431 10358 10360 6398 14247 +10288 10432 10359 10361 6545 14248 +10289 10433 10360 10362 6473 14249 +10290 10434 10361 10363 6401 14250 +10291 10435 10362 10364 6548 14251 +10292 10436 10363 10365 6476 14252 +10293 10437 10364 10366 6404 14253 +10294 10438 10365 10367 6551 14254 +10295 10439 10366 10368 6479 14255 +10296 10440 10367 10369 6407 14256 +10297 10441 10368 10370 6554 14257 +10298 10442 10369 10371 6482 14258 +10299 10443 10370 10372 6410 14259 +10300 10444 10371 10373 6557 14260 +10301 10445 10372 10374 6485 14261 +10302 10446 10373 10375 6413 14262 +10303 10447 10374 10376 6560 14263 +10304 10448 10375 10377 6488 14264 +10305 10449 10376 10378 6416 14265 +10306 10450 10377 10379 6563 14266 +10307 10451 10378 10380 6491 14267 +10308 10452 10379 10381 6419 14268 +10309 10453 10380 10382 6566 14269 +10310 10454 10381 10383 6494 14270 +10311 10455 10382 10383 6422 14271 +10312 10456 10384 10385 6498 14272 +10313 10457 10384 10386 6426 14273 +10314 10458 10385 10387 6354 14274 +10315 10459 10386 10388 6501 14275 +10316 10460 10387 10389 6429 14276 +10317 10461 10388 10390 6357 14277 +10318 10462 10389 10391 6504 14278 +10319 10463 10390 10392 6432 14279 +10320 10464 10391 10393 6360 14280 +10321 10465 10392 10394 6507 14281 +10322 10466 10393 10395 6435 14282 +10323 10467 10394 10396 6363 14283 +10324 10468 10395 10397 6510 14284 +10325 10469 10396 10398 6438 14285 +10326 10470 10397 10399 6366 14286 +10327 10471 10398 10400 6513 14287 +10328 10472 10399 10401 6441 14288 +10329 10473 10400 10402 6369 14289 +10330 10474 10401 10403 6516 14290 +10331 10475 10402 10404 6444 14291 +10332 10476 10403 10405 6372 14292 +10333 10477 10404 10406 6519 14293 +10334 10478 10405 10407 6447 14294 +10335 10479 10406 10408 6375 14295 +10336 10480 10407 10409 6522 14296 +10337 10481 10408 10410 6450 14297 +10338 10482 10409 10411 6378 14298 +10339 10483 10410 10412 6525 14299 +10340 10484 10411 10413 6453 14300 +10341 10485 10412 10414 6381 14301 +10342 10486 10413 10415 6528 14302 +10343 10487 10414 10416 6456 14303 +10344 10488 10415 10417 6384 14304 +10345 10489 10416 10418 6531 14305 +10346 10490 10417 10419 6459 14306 +10347 10491 10418 10420 6387 14307 +10348 10492 10419 10421 6534 14308 +10349 10493 10420 10422 6462 14309 +10350 10494 10421 10423 6390 14310 +10351 10495 10422 10424 6537 14311 +10352 10496 10423 10425 6465 14312 +10353 10497 10424 10426 6393 14313 +10354 10498 10425 10427 6540 14314 +10355 10499 10426 10428 6468 14315 +10356 10500 10427 10429 6396 14316 +10357 10501 10428 10430 6543 14317 +10358 10502 10429 10431 6471 14318 +10359 10503 10430 10432 6399 14319 +10360 10504 10431 10433 6546 14320 +10361 10505 10432 10434 6474 14321 +10362 10506 10433 10435 6402 14322 +10363 10507 10434 10436 6549 14323 +10364 10508 10435 10437 6477 14324 +10365 10509 10436 10438 6405 14325 +10366 10510 10437 10439 6552 14326 +10367 10511 10438 10440 6480 14327 +10368 10512 10439 10441 6408 14328 +10369 10513 10440 10442 6555 14329 +10370 10514 10441 10443 6483 14330 +10371 10515 10442 10444 6411 14331 +10372 10516 10443 10445 6558 14332 +10373 10517 10444 10446 6486 14333 +10374 10518 10445 10447 6414 14334 +10375 10519 10446 10448 6561 14335 +10376 10520 10447 10449 6489 14336 +10377 10521 10448 10450 6417 14337 +10378 10522 10449 10451 6564 14338 +10379 10523 10450 10452 6492 14339 +10380 10524 10451 10453 6420 14340 +10381 10525 10452 10454 6567 14341 +10382 10526 10453 10455 6495 14342 +10383 10527 10454 10455 6423 14343 +10384 10528 10456 10457 6712 14344 +10385 10529 10456 10458 6640 14345 +10386 10530 10457 10459 6568 14346 +10387 10531 10458 10460 6715 14347 +10388 10532 10459 10461 6643 14348 +10389 10533 10460 10462 6571 14349 +10390 10534 10461 10463 6718 14350 +10391 10535 10462 10464 6646 14351 +10392 10536 10463 10465 6574 14352 +10393 10537 10464 10466 6721 14353 +10394 10538 10465 10467 6649 14354 +10395 10539 10466 10468 6577 14355 +10396 10540 10467 10469 6724 14356 +10397 10541 10468 10470 6652 14357 +10398 10542 10469 10471 6580 14358 +10399 10543 10470 10472 6727 14359 +10400 10544 10471 10473 6655 14360 +10401 10545 10472 10474 6583 14361 +10402 10546 10473 10475 6730 14362 +10403 10547 10474 10476 6658 14363 +10404 10548 10475 10477 6586 14364 +10405 10549 10476 10478 6733 14365 +10406 10550 10477 10479 6661 14366 +10407 10551 10478 10480 6589 14367 +10408 10552 10479 10481 6736 14368 +10409 10553 10480 10482 6664 14369 +10410 10554 10481 10483 6592 14370 +10411 10555 10482 10484 6739 14371 +10412 10556 10483 10485 6667 14372 +10413 10557 10484 10486 6595 14373 +10414 10558 10485 10487 6742 14374 +10415 10559 10486 10488 6670 14375 +10416 10560 10487 10489 6598 14376 +10417 10561 10488 10490 6745 14377 +10418 10562 10489 10491 6673 14378 +10419 10563 10490 10492 6601 14379 +10420 10564 10491 10493 6748 14380 +10421 10565 10492 10494 6676 14381 +10422 10566 10493 10495 6604 14382 +10423 10567 10494 10496 6751 14383 +10424 10568 10495 10497 6679 14384 +10425 10569 10496 10498 6607 14385 +10426 10570 10497 10499 6754 14386 +10427 10571 10498 10500 6682 14387 +10428 10572 10499 10501 6610 14388 +10429 10573 10500 10502 6757 14389 +10430 10574 10501 10503 6685 14390 +10431 10575 10502 10504 6613 14391 +10432 10576 10503 10505 6760 14392 +10433 10577 10504 10506 6688 14393 +10434 10578 10505 10507 6616 14394 +10435 10579 10506 10508 6763 14395 +10436 10580 10507 10509 6691 14396 +10437 10581 10508 10510 6619 14397 +10438 10582 10509 10511 6766 14398 +10439 10583 10510 10512 6694 14399 +10440 10584 10511 10513 6622 14400 +10441 10585 10512 10514 6769 14401 +10442 10586 10513 10515 6697 14402 +10443 10587 10514 10516 6625 14403 +10444 10588 10515 10517 6772 14404 +10445 10589 10516 10518 6700 14405 +10446 10590 10517 10519 6628 14406 +10447 10591 10518 10520 6775 14407 +10448 10592 10519 10521 6703 14408 +10449 10593 10520 10522 6631 14409 +10450 10594 10521 10523 6778 14410 +10451 10595 10522 10524 6706 14411 +10452 10596 10523 10525 6634 14412 +10453 10597 10524 10526 6781 14413 +10454 10598 10525 10527 6709 14414 +10455 10599 10526 10527 6637 14415 +10456 10600 10528 10529 6713 14416 +10457 10601 10528 10530 6641 14417 +10458 10602 10529 10531 6569 14418 +10459 10603 10530 10532 6716 14419 +10460 10604 10531 10533 6644 14420 +10461 10605 10532 10534 6572 14421 +10462 10606 10533 10535 6719 14422 +10463 10607 10534 10536 6647 14423 +10464 10608 10535 10537 6575 14424 +10465 10609 10536 10538 6722 14425 +10466 10610 10537 10539 6650 14426 +10467 10611 10538 10540 6578 14427 +10468 10612 10539 10541 6725 14428 +10469 10613 10540 10542 6653 14429 +10470 10614 10541 10543 6581 14430 +10471 10615 10542 10544 6728 14431 +10472 10616 10543 10545 6656 14432 +10473 10617 10544 10546 6584 14433 +10474 10618 10545 10547 6731 14434 +10475 10619 10546 10548 6659 14435 +10476 10620 10547 10549 6587 14436 +10477 10621 10548 10550 6734 14437 +10478 10622 10549 10551 6662 14438 +10479 10623 10550 10552 6590 14439 +10480 10624 10551 10553 6737 14440 +10481 10625 10552 10554 6665 14441 +10482 10626 10553 10555 6593 14442 +10483 10627 10554 10556 6740 14443 +10484 10628 10555 10557 6668 14444 +10485 10629 10556 10558 6596 14445 +10486 10630 10557 10559 6743 14446 +10487 10631 10558 10560 6671 14447 +10488 10632 10559 10561 6599 14448 +10489 10633 10560 10562 6746 14449 +10490 10634 10561 10563 6674 14450 +10491 10635 10562 10564 6602 14451 +10492 10636 10563 10565 6749 14452 +10493 10637 10564 10566 6677 14453 +10494 10638 10565 10567 6605 14454 +10495 10639 10566 10568 6752 14455 +10496 10640 10567 10569 6680 14456 +10497 10641 10568 10570 6608 14457 +10498 10642 10569 10571 6755 14458 +10499 10643 10570 10572 6683 14459 +10500 10644 10571 10573 6611 14460 +10501 10645 10572 10574 6758 14461 +10502 10646 10573 10575 6686 14462 +10503 10647 10574 10576 6614 14463 +10504 10648 10575 10577 6761 14464 +10505 10649 10576 10578 6689 14465 +10506 10650 10577 10579 6617 14466 +10507 10651 10578 10580 6764 14467 +10508 10652 10579 10581 6692 14468 +10509 10653 10580 10582 6620 14469 +10510 10654 10581 10583 6767 14470 +10511 10655 10582 10584 6695 14471 +10512 10656 10583 10585 6623 14472 +10513 10657 10584 10586 6770 14473 +10514 10658 10585 10587 6698 14474 +10515 10659 10586 10588 6626 14475 +10516 10660 10587 10589 6773 14476 +10517 10661 10588 10590 6701 14477 +10518 10662 10589 10591 6629 14478 +10519 10663 10590 10592 6776 14479 +10520 10664 10591 10593 6704 14480 +10521 10665 10592 10594 6632 14481 +10522 10666 10593 10595 6779 14482 +10523 10667 10594 10596 6707 14483 +10524 10668 10595 10597 6635 14484 +10525 10669 10596 10598 6782 14485 +10526 10670 10597 10599 6710 14486 +10527 10671 10598 10599 6638 14487 +10528 10672 10600 10601 6714 14488 +10529 10673 10600 10602 6642 14489 +10530 10674 10601 10603 6570 14490 +10531 10675 10602 10604 6717 14491 +10532 10676 10603 10605 6645 14492 +10533 10677 10604 10606 6573 14493 +10534 10678 10605 10607 6720 14494 +10535 10679 10606 10608 6648 14495 +10536 10680 10607 10609 6576 14496 +10537 10681 10608 10610 6723 14497 +10538 10682 10609 10611 6651 14498 +10539 10683 10610 10612 6579 14499 +10540 10684 10611 10613 6726 14500 +10541 10685 10612 10614 6654 14501 +10542 10686 10613 10615 6582 14502 +10543 10687 10614 10616 6729 14503 +10544 10688 10615 10617 6657 14504 +10545 10689 10616 10618 6585 14505 +10546 10690 10617 10619 6732 14506 +10547 10691 10618 10620 6660 14507 +10548 10692 10619 10621 6588 14508 +10549 10693 10620 10622 6735 14509 +10550 10694 10621 10623 6663 14510 +10551 10695 10622 10624 6591 14511 +10552 10696 10623 10625 6738 14512 +10553 10697 10624 10626 6666 14513 +10554 10698 10625 10627 6594 14514 +10555 10699 10626 10628 6741 14515 +10556 10700 10627 10629 6669 14516 +10557 10701 10628 10630 6597 14517 +10558 10702 10629 10631 6744 14518 +10559 10703 10630 10632 6672 14519 +10560 10704 10631 10633 6600 14520 +10561 10705 10632 10634 6747 14521 +10562 10706 10633 10635 6675 14522 +10563 10707 10634 10636 6603 14523 +10564 10708 10635 10637 6750 14524 +10565 10709 10636 10638 6678 14525 +10566 10710 10637 10639 6606 14526 +10567 10711 10638 10640 6753 14527 +10568 10712 10639 10641 6681 14528 +10569 10713 10640 10642 6609 14529 +10570 10714 10641 10643 6756 14530 +10571 10715 10642 10644 6684 14531 +10572 10716 10643 10645 6612 14532 +10573 10717 10644 10646 6759 14533 +10574 10718 10645 10647 6687 14534 +10575 10719 10646 10648 6615 14535 +10576 10720 10647 10649 6762 14536 +10577 10721 10648 10650 6690 14537 +10578 10722 10649 10651 6618 14538 +10579 10723 10650 10652 6765 14539 +10580 10724 10651 10653 6693 14540 +10581 10725 10652 10654 6621 14541 +10582 10726 10653 10655 6768 14542 +10583 10727 10654 10656 6696 14543 +10584 10728 10655 10657 6624 14544 +10585 10729 10656 10658 6771 14545 +10586 10730 10657 10659 6699 14546 +10587 10731 10658 10660 6627 14547 +10588 10732 10659 10661 6774 14548 +10589 10733 10660 10662 6702 14549 +10590 10734 10661 10663 6630 14550 +10591 10735 10662 10664 6777 14551 +10592 10736 10663 10665 6705 14552 +10593 10737 10664 10666 6633 14553 +10594 10738 10665 10667 6780 14554 +10595 10739 10666 10668 6708 14555 +10596 10740 10667 10669 6636 14556 +10597 10741 10668 10670 6783 14557 +10598 10742 10669 10671 6711 14558 +10599 10743 10670 10671 6639 14559 +10600 10744 10672 10673 6928 14560 +10601 10745 10672 10674 6856 14561 +10602 10746 10673 10675 6784 14562 +10603 10747 10674 10676 6931 14563 +10604 10748 10675 10677 6859 14564 +10605 10749 10676 10678 6787 14565 +10606 10750 10677 10679 6934 14566 +10607 10751 10678 10680 6862 14567 +10608 10752 10679 10681 6790 14568 +10609 10753 10680 10682 6937 14569 +10610 10754 10681 10683 6865 14570 +10611 10755 10682 10684 6793 14571 +10612 10756 10683 10685 6940 14572 +10613 10757 10684 10686 6868 14573 +10614 10758 10685 10687 6796 14574 +10615 10759 10686 10688 6943 14575 +10616 10760 10687 10689 6871 14576 +10617 10761 10688 10690 6799 14577 +10618 10762 10689 10691 6946 14578 +10619 10763 10690 10692 6874 14579 +10620 10764 10691 10693 6802 14580 +10621 10765 10692 10694 6949 14581 +10622 10766 10693 10695 6877 14582 +10623 10767 10694 10696 6805 14583 +10624 10768 10695 10697 6952 14584 +10625 10769 10696 10698 6880 14585 +10626 10770 10697 10699 6808 14586 +10627 10771 10698 10700 6955 14587 +10628 10772 10699 10701 6883 14588 +10629 10773 10700 10702 6811 14589 +10630 10774 10701 10703 6958 14590 +10631 10775 10702 10704 6886 14591 +10632 10776 10703 10705 6814 14592 +10633 10777 10704 10706 6961 14593 +10634 10778 10705 10707 6889 14594 +10635 10779 10706 10708 6817 14595 +10636 10780 10707 10709 6964 14596 +10637 10781 10708 10710 6892 14597 +10638 10782 10709 10711 6820 14598 +10639 10783 10710 10712 6967 14599 +10640 10784 10711 10713 6895 14600 +10641 10785 10712 10714 6823 14601 +10642 10786 10713 10715 6970 14602 +10643 10787 10714 10716 6898 14603 +10644 10788 10715 10717 6826 14604 +10645 10789 10716 10718 6973 14605 +10646 10790 10717 10719 6901 14606 +10647 10791 10718 10720 6829 14607 +10648 10792 10719 10721 6976 14608 +10649 10793 10720 10722 6904 14609 +10650 10794 10721 10723 6832 14610 +10651 10795 10722 10724 6979 14611 +10652 10796 10723 10725 6907 14612 +10653 10797 10724 10726 6835 14613 +10654 10798 10725 10727 6982 14614 +10655 10799 10726 10728 6910 14615 +10656 10800 10727 10729 6838 14616 +10657 10801 10728 10730 6985 14617 +10658 10802 10729 10731 6913 14618 +10659 10803 10730 10732 6841 14619 +10660 10804 10731 10733 6988 14620 +10661 10805 10732 10734 6916 14621 +10662 10806 10733 10735 6844 14622 +10663 10807 10734 10736 6991 14623 +10664 10808 10735 10737 6919 14624 +10665 10809 10736 10738 6847 14625 +10666 10810 10737 10739 6994 14626 +10667 10811 10738 10740 6922 14627 +10668 10812 10739 10741 6850 14628 +10669 10813 10740 10742 6997 14629 +10670 10814 10741 10743 6925 14630 +10671 10815 10742 10743 6853 14631 +10672 10816 10744 10745 6929 14632 +10673 10817 10744 10746 6857 14633 +10674 10818 10745 10747 6785 14634 +10675 10819 10746 10748 6932 14635 +10676 10820 10747 10749 6860 14636 +10677 10821 10748 10750 6788 14637 +10678 10822 10749 10751 6935 14638 +10679 10823 10750 10752 6863 14639 +10680 10824 10751 10753 6791 14640 +10681 10825 10752 10754 6938 14641 +10682 10826 10753 10755 6866 14642 +10683 10827 10754 10756 6794 14643 +10684 10828 10755 10757 6941 14644 +10685 10829 10756 10758 6869 14645 +10686 10830 10757 10759 6797 14646 +10687 10831 10758 10760 6944 14647 +10688 10832 10759 10761 6872 14648 +10689 10833 10760 10762 6800 14649 +10690 10834 10761 10763 6947 14650 +10691 10835 10762 10764 6875 14651 +10692 10836 10763 10765 6803 14652 +10693 10837 10764 10766 6950 14653 +10694 10838 10765 10767 6878 14654 +10695 10839 10766 10768 6806 14655 +10696 10840 10767 10769 6953 14656 +10697 10841 10768 10770 6881 14657 +10698 10842 10769 10771 6809 14658 +10699 10843 10770 10772 6956 14659 +10700 10844 10771 10773 6884 14660 +10701 10845 10772 10774 6812 14661 +10702 10846 10773 10775 6959 14662 +10703 10847 10774 10776 6887 14663 +10704 10848 10775 10777 6815 14664 +10705 10849 10776 10778 6962 14665 +10706 10850 10777 10779 6890 14666 +10707 10851 10778 10780 6818 14667 +10708 10852 10779 10781 6965 14668 +10709 10853 10780 10782 6893 14669 +10710 10854 10781 10783 6821 14670 +10711 10855 10782 10784 6968 14671 +10712 10856 10783 10785 6896 14672 +10713 10857 10784 10786 6824 14673 +10714 10858 10785 10787 6971 14674 +10715 10859 10786 10788 6899 14675 +10716 10860 10787 10789 6827 14676 +10717 10861 10788 10790 6974 14677 +10718 10862 10789 10791 6902 14678 +10719 10863 10790 10792 6830 14679 +10720 10864 10791 10793 6977 14680 +10721 10865 10792 10794 6905 14681 +10722 10866 10793 10795 6833 14682 +10723 10867 10794 10796 6980 14683 +10724 10868 10795 10797 6908 14684 +10725 10869 10796 10798 6836 14685 +10726 10870 10797 10799 6983 14686 +10727 10871 10798 10800 6911 14687 +10728 10872 10799 10801 6839 14688 +10729 10873 10800 10802 6986 14689 +10730 10874 10801 10803 6914 14690 +10731 10875 10802 10804 6842 14691 +10732 10876 10803 10805 6989 14692 +10733 10877 10804 10806 6917 14693 +10734 10878 10805 10807 6845 14694 +10735 10879 10806 10808 6992 14695 +10736 10880 10807 10809 6920 14696 +10737 10881 10808 10810 6848 14697 +10738 10882 10809 10811 6995 14698 +10739 10883 10810 10812 6923 14699 +10740 10884 10811 10813 6851 14700 +10741 10885 10812 10814 6998 14701 +10742 10886 10813 10815 6926 14702 +10743 10887 10814 10815 6854 14703 +10744 10888 10816 10817 6930 14704 +10745 10889 10816 10818 6858 14705 +10746 10890 10817 10819 6786 14706 +10747 10891 10818 10820 6933 14707 +10748 10892 10819 10821 6861 14708 +10749 10893 10820 10822 6789 14709 +10750 10894 10821 10823 6936 14710 +10751 10895 10822 10824 6864 14711 +10752 10896 10823 10825 6792 14712 +10753 10897 10824 10826 6939 14713 +10754 10898 10825 10827 6867 14714 +10755 10899 10826 10828 6795 14715 +10756 10900 10827 10829 6942 14716 +10757 10901 10828 10830 6870 14717 +10758 10902 10829 10831 6798 14718 +10759 10903 10830 10832 6945 14719 +10760 10904 10831 10833 6873 14720 +10761 10905 10832 10834 6801 14721 +10762 10906 10833 10835 6948 14722 +10763 10907 10834 10836 6876 14723 +10764 10908 10835 10837 6804 14724 +10765 10909 10836 10838 6951 14725 +10766 10910 10837 10839 6879 14726 +10767 10911 10838 10840 6807 14727 +10768 10912 10839 10841 6954 14728 +10769 10913 10840 10842 6882 14729 +10770 10914 10841 10843 6810 14730 +10771 10915 10842 10844 6957 14731 +10772 10916 10843 10845 6885 14732 +10773 10917 10844 10846 6813 14733 +10774 10918 10845 10847 6960 14734 +10775 10919 10846 10848 6888 14735 +10776 10920 10847 10849 6816 14736 +10777 10921 10848 10850 6963 14737 +10778 10922 10849 10851 6891 14738 +10779 10923 10850 10852 6819 14739 +10780 10924 10851 10853 6966 14740 +10781 10925 10852 10854 6894 14741 +10782 10926 10853 10855 6822 14742 +10783 10927 10854 10856 6969 14743 +10784 10928 10855 10857 6897 14744 +10785 10929 10856 10858 6825 14745 +10786 10930 10857 10859 6972 14746 +10787 10931 10858 10860 6900 14747 +10788 10932 10859 10861 6828 14748 +10789 10933 10860 10862 6975 14749 +10790 10934 10861 10863 6903 14750 +10791 10935 10862 10864 6831 14751 +10792 10936 10863 10865 6978 14752 +10793 10937 10864 10866 6906 14753 +10794 10938 10865 10867 6834 14754 +10795 10939 10866 10868 6981 14755 +10796 10940 10867 10869 6909 14756 +10797 10941 10868 10870 6837 14757 +10798 10942 10869 10871 6984 14758 +10799 10943 10870 10872 6912 14759 +10800 10944 10871 10873 6840 14760 +10801 10945 10872 10874 6987 14761 +10802 10946 10873 10875 6915 14762 +10803 10947 10874 10876 6843 14763 +10804 10948 10875 10877 6990 14764 +10805 10949 10876 10878 6918 14765 +10806 10950 10877 10879 6846 14766 +10807 10951 10878 10880 6993 14767 +10808 10952 10879 10881 6921 14768 +10809 10953 10880 10882 6849 14769 +10810 10954 10881 10883 6996 14770 +10811 10955 10882 10884 6924 14771 +10812 10956 10883 10885 6852 14772 +10813 10957 10884 10886 6999 14773 +10814 10958 10885 10887 6927 14774 +10815 10959 10886 10887 6855 14775 +10816 10960 10888 10889 7144 14776 +10817 10961 10888 10890 7072 14777 +10818 10962 10889 10891 7000 14778 +10819 10963 10890 10892 7147 14779 +10820 10964 10891 10893 7075 14780 +10821 10965 10892 10894 7003 14781 +10822 10966 10893 10895 7150 14782 +10823 10967 10894 10896 7078 14783 +10824 10968 10895 10897 7006 14784 +10825 10969 10896 10898 7153 14785 +10826 10970 10897 10899 7081 14786 +10827 10971 10898 10900 7009 14787 +10828 10972 10899 10901 7156 14788 +10829 10973 10900 10902 7084 14789 +10830 10974 10901 10903 7012 14790 +10831 10975 10902 10904 7159 14791 +10832 10976 10903 10905 7087 14792 +10833 10977 10904 10906 7015 14793 +10834 10978 10905 10907 7162 14794 +10835 10979 10906 10908 7090 14795 +10836 10980 10907 10909 7018 14796 +10837 10981 10908 10910 7165 14797 +10838 10982 10909 10911 7093 14798 +10839 10983 10910 10912 7021 14799 +10840 10984 10911 10913 7168 14800 +10841 10985 10912 10914 7096 14801 +10842 10986 10913 10915 7024 14802 +10843 10987 10914 10916 7171 14803 +10844 10988 10915 10917 7099 14804 +10845 10989 10916 10918 7027 14805 +10846 10990 10917 10919 7174 14806 +10847 10991 10918 10920 7102 14807 +10848 10992 10919 10921 7030 14808 +10849 10993 10920 10922 7177 14809 +10850 10994 10921 10923 7105 14810 +10851 10995 10922 10924 7033 14811 +10852 10996 10923 10925 7180 14812 +10853 10997 10924 10926 7108 14813 +10854 10998 10925 10927 7036 14814 +10855 10999 10926 10928 7183 14815 +10856 11000 10927 10929 7111 14816 +10857 11001 10928 10930 7039 14817 +10858 11002 10929 10931 7186 14818 +10859 11003 10930 10932 7114 14819 +10860 11004 10931 10933 7042 14820 +10861 11005 10932 10934 7189 14821 +10862 11006 10933 10935 7117 14822 +10863 11007 10934 10936 7045 14823 +10864 11008 10935 10937 7192 14824 +10865 11009 10936 10938 7120 14825 +10866 11010 10937 10939 7048 14826 +10867 11011 10938 10940 7195 14827 +10868 11012 10939 10941 7123 14828 +10869 11013 10940 10942 7051 14829 +10870 11014 10941 10943 7198 14830 +10871 11015 10942 10944 7126 14831 +10872 11016 10943 10945 7054 14832 +10873 11017 10944 10946 7201 14833 +10874 11018 10945 10947 7129 14834 +10875 11019 10946 10948 7057 14835 +10876 11020 10947 10949 7204 14836 +10877 11021 10948 10950 7132 14837 +10878 11022 10949 10951 7060 14838 +10879 11023 10950 10952 7207 14839 +10880 11024 10951 10953 7135 14840 +10881 11025 10952 10954 7063 14841 +10882 11026 10953 10955 7210 14842 +10883 11027 10954 10956 7138 14843 +10884 11028 10955 10957 7066 14844 +10885 11029 10956 10958 7213 14845 +10886 11030 10957 10959 7141 14846 +10887 11031 10958 10959 7069 14847 +10888 11032 10960 10961 7145 14848 +10889 11033 10960 10962 7073 14849 +10890 11034 10961 10963 7001 14850 +10891 11035 10962 10964 7148 14851 +10892 11036 10963 10965 7076 14852 +10893 11037 10964 10966 7004 14853 +10894 11038 10965 10967 7151 14854 +10895 11039 10966 10968 7079 14855 +10896 11040 10967 10969 7007 14856 +10897 11041 10968 10970 7154 14857 +10898 11042 10969 10971 7082 14858 +10899 11043 10970 10972 7010 14859 +10900 11044 10971 10973 7157 14860 +10901 11045 10972 10974 7085 14861 +10902 11046 10973 10975 7013 14862 +10903 11047 10974 10976 7160 14863 +10904 11048 10975 10977 7088 14864 +10905 11049 10976 10978 7016 14865 +10906 11050 10977 10979 7163 14866 +10907 11051 10978 10980 7091 14867 +10908 11052 10979 10981 7019 14868 +10909 11053 10980 10982 7166 14869 +10910 11054 10981 10983 7094 14870 +10911 11055 10982 10984 7022 14871 +10912 11056 10983 10985 7169 14872 +10913 11057 10984 10986 7097 14873 +10914 11058 10985 10987 7025 14874 +10915 11059 10986 10988 7172 14875 +10916 11060 10987 10989 7100 14876 +10917 11061 10988 10990 7028 14877 +10918 11062 10989 10991 7175 14878 +10919 11063 10990 10992 7103 14879 +10920 11064 10991 10993 7031 14880 +10921 11065 10992 10994 7178 14881 +10922 11066 10993 10995 7106 14882 +10923 11067 10994 10996 7034 14883 +10924 11068 10995 10997 7181 14884 +10925 11069 10996 10998 7109 14885 +10926 11070 10997 10999 7037 14886 +10927 11071 10998 11000 7184 14887 +10928 11072 10999 11001 7112 14888 +10929 11073 11000 11002 7040 14889 +10930 11074 11001 11003 7187 14890 +10931 11075 11002 11004 7115 14891 +10932 11076 11003 11005 7043 14892 +10933 11077 11004 11006 7190 14893 +10934 11078 11005 11007 7118 14894 +10935 11079 11006 11008 7046 14895 +10936 11080 11007 11009 7193 14896 +10937 11081 11008 11010 7121 14897 +10938 11082 11009 11011 7049 14898 +10939 11083 11010 11012 7196 14899 +10940 11084 11011 11013 7124 14900 +10941 11085 11012 11014 7052 14901 +10942 11086 11013 11015 7199 14902 +10943 11087 11014 11016 7127 14903 +10944 11088 11015 11017 7055 14904 +10945 11089 11016 11018 7202 14905 +10946 11090 11017 11019 7130 14906 +10947 11091 11018 11020 7058 14907 +10948 11092 11019 11021 7205 14908 +10949 11093 11020 11022 7133 14909 +10950 11094 11021 11023 7061 14910 +10951 11095 11022 11024 7208 14911 +10952 11096 11023 11025 7136 14912 +10953 11097 11024 11026 7064 14913 +10954 11098 11025 11027 7211 14914 +10955 11099 11026 11028 7139 14915 +10956 11100 11027 11029 7067 14916 +10957 11101 11028 11030 7214 14917 +10958 11102 11029 11031 7142 14918 +10959 11103 11030 11031 7070 14919 +10960 11104 11032 11033 7146 14920 +10961 11105 11032 11034 7074 14921 +10962 11106 11033 11035 7002 14922 +10963 11107 11034 11036 7149 14923 +10964 11108 11035 11037 7077 14924 +10965 11109 11036 11038 7005 14925 +10966 11110 11037 11039 7152 14926 +10967 11111 11038 11040 7080 14927 +10968 11112 11039 11041 7008 14928 +10969 11113 11040 11042 7155 14929 +10970 11114 11041 11043 7083 14930 +10971 11115 11042 11044 7011 14931 +10972 11116 11043 11045 7158 14932 +10973 11117 11044 11046 7086 14933 +10974 11118 11045 11047 7014 14934 +10975 11119 11046 11048 7161 14935 +10976 11120 11047 11049 7089 14936 +10977 11121 11048 11050 7017 14937 +10978 11122 11049 11051 7164 14938 +10979 11123 11050 11052 7092 14939 +10980 11124 11051 11053 7020 14940 +10981 11125 11052 11054 7167 14941 +10982 11126 11053 11055 7095 14942 +10983 11127 11054 11056 7023 14943 +10984 11128 11055 11057 7170 14944 +10985 11129 11056 11058 7098 14945 +10986 11130 11057 11059 7026 14946 +10987 11131 11058 11060 7173 14947 +10988 11132 11059 11061 7101 14948 +10989 11133 11060 11062 7029 14949 +10990 11134 11061 11063 7176 14950 +10991 11135 11062 11064 7104 14951 +10992 11136 11063 11065 7032 14952 +10993 11137 11064 11066 7179 14953 +10994 11138 11065 11067 7107 14954 +10995 11139 11066 11068 7035 14955 +10996 11140 11067 11069 7182 14956 +10997 11141 11068 11070 7110 14957 +10998 11142 11069 11071 7038 14958 +10999 11143 11070 11072 7185 14959 +11000 11144 11071 11073 7113 14960 +11001 11145 11072 11074 7041 14961 +11002 11146 11073 11075 7188 14962 +11003 11147 11074 11076 7116 14963 +11004 11148 11075 11077 7044 14964 +11005 11149 11076 11078 7191 14965 +11006 11150 11077 11079 7119 14966 +11007 11151 11078 11080 7047 14967 +11008 11152 11079 11081 7194 14968 +11009 11153 11080 11082 7122 14969 +11010 11154 11081 11083 7050 14970 +11011 11155 11082 11084 7197 14971 +11012 11156 11083 11085 7125 14972 +11013 11157 11084 11086 7053 14973 +11014 11158 11085 11087 7200 14974 +11015 11159 11086 11088 7128 14975 +11016 11160 11087 11089 7056 14976 +11017 11161 11088 11090 7203 14977 +11018 11162 11089 11091 7131 14978 +11019 11163 11090 11092 7059 14979 +11020 11164 11091 11093 7206 14980 +11021 11165 11092 11094 7134 14981 +11022 11166 11093 11095 7062 14982 +11023 11167 11094 11096 7209 14983 +11024 11168 11095 11097 7137 14984 +11025 11169 11096 11098 7065 14985 +11026 11170 11097 11099 7212 14986 +11027 11171 11098 11100 7140 14987 +11028 11172 11099 11101 7068 14988 +11029 11173 11100 11102 7215 14989 +11030 11174 11101 11103 7143 14990 +11031 11175 11102 11103 7071 14991 +11032 11176 11104 11105 7360 14992 +11033 11177 11104 11106 7288 14993 +11034 11178 11105 11107 7216 14994 +11035 11179 11106 11108 7363 14995 +11036 11180 11107 11109 7291 14996 +11037 11181 11108 11110 7219 14997 +11038 11182 11109 11111 7366 14998 +11039 11183 11110 11112 7294 14999 +11040 11184 11111 11113 7222 15000 +11041 11185 11112 11114 7369 15001 +11042 11186 11113 11115 7297 15002 +11043 11187 11114 11116 7225 15003 +11044 11188 11115 11117 7372 15004 +11045 11189 11116 11118 7300 15005 +11046 11190 11117 11119 7228 15006 +11047 11191 11118 11120 7375 15007 +11048 11192 11119 11121 7303 15008 +11049 11193 11120 11122 7231 15009 +11050 11194 11121 11123 7378 15010 +11051 11195 11122 11124 7306 15011 +11052 11196 11123 11125 7234 15012 +11053 11197 11124 11126 7381 15013 +11054 11198 11125 11127 7309 15014 +11055 11199 11126 11128 7237 15015 +11056 11200 11127 11129 7384 15016 +11057 11201 11128 11130 7312 15017 +11058 11202 11129 11131 7240 15018 +11059 11203 11130 11132 7387 15019 +11060 11204 11131 11133 7315 15020 +11061 11205 11132 11134 7243 15021 +11062 11206 11133 11135 7390 15022 +11063 11207 11134 11136 7318 15023 +11064 11208 11135 11137 7246 15024 +11065 11209 11136 11138 7393 15025 +11066 11210 11137 11139 7321 15026 +11067 11211 11138 11140 7249 15027 +11068 11212 11139 11141 7396 15028 +11069 11213 11140 11142 7324 15029 +11070 11214 11141 11143 7252 15030 +11071 11215 11142 11144 7399 15031 +11072 11216 11143 11145 7327 15032 +11073 11217 11144 11146 7255 15033 +11074 11218 11145 11147 7402 15034 +11075 11219 11146 11148 7330 15035 +11076 11220 11147 11149 7258 15036 +11077 11221 11148 11150 7405 15037 +11078 11222 11149 11151 7333 15038 +11079 11223 11150 11152 7261 15039 +11080 11224 11151 11153 7408 15040 +11081 11225 11152 11154 7336 15041 +11082 11226 11153 11155 7264 15042 +11083 11227 11154 11156 7411 15043 +11084 11228 11155 11157 7339 15044 +11085 11229 11156 11158 7267 15045 +11086 11230 11157 11159 7414 15046 +11087 11231 11158 11160 7342 15047 +11088 11232 11159 11161 7270 15048 +11089 11233 11160 11162 7417 15049 +11090 11234 11161 11163 7345 15050 +11091 11235 11162 11164 7273 15051 +11092 11236 11163 11165 7420 15052 +11093 11237 11164 11166 7348 15053 +11094 11238 11165 11167 7276 15054 +11095 11239 11166 11168 7423 15055 +11096 11240 11167 11169 7351 15056 +11097 11241 11168 11170 7279 15057 +11098 11242 11169 11171 7426 15058 +11099 11243 11170 11172 7354 15059 +11100 11244 11171 11173 7282 15060 +11101 11245 11172 11174 7429 15061 +11102 11246 11173 11175 7357 15062 +11103 11247 11174 11175 7285 15063 +11104 11248 11176 11177 7361 15064 +11105 11249 11176 11178 7289 15065 +11106 11250 11177 11179 7217 15066 +11107 11251 11178 11180 7364 15067 +11108 11252 11179 11181 7292 15068 +11109 11253 11180 11182 7220 15069 +11110 11254 11181 11183 7367 15070 +11111 11255 11182 11184 7295 15071 +11112 11256 11183 11185 7223 15072 +11113 11257 11184 11186 7370 15073 +11114 11258 11185 11187 7298 15074 +11115 11259 11186 11188 7226 15075 +11116 11260 11187 11189 7373 15076 +11117 11261 11188 11190 7301 15077 +11118 11262 11189 11191 7229 15078 +11119 11263 11190 11192 7376 15079 +11120 11264 11191 11193 7304 15080 +11121 11265 11192 11194 7232 15081 +11122 11266 11193 11195 7379 15082 +11123 11267 11194 11196 7307 15083 +11124 11268 11195 11197 7235 15084 +11125 11269 11196 11198 7382 15085 +11126 11270 11197 11199 7310 15086 +11127 11271 11198 11200 7238 15087 +11128 11272 11199 11201 7385 15088 +11129 11273 11200 11202 7313 15089 +11130 11274 11201 11203 7241 15090 +11131 11275 11202 11204 7388 15091 +11132 11276 11203 11205 7316 15092 +11133 11277 11204 11206 7244 15093 +11134 11278 11205 11207 7391 15094 +11135 11279 11206 11208 7319 15095 +11136 11280 11207 11209 7247 15096 +11137 11281 11208 11210 7394 15097 +11138 11282 11209 11211 7322 15098 +11139 11283 11210 11212 7250 15099 +11140 11284 11211 11213 7397 15100 +11141 11285 11212 11214 7325 15101 +11142 11286 11213 11215 7253 15102 +11143 11287 11214 11216 7400 15103 +11144 11288 11215 11217 7328 15104 +11145 11289 11216 11218 7256 15105 +11146 11290 11217 11219 7403 15106 +11147 11291 11218 11220 7331 15107 +11148 11292 11219 11221 7259 15108 +11149 11293 11220 11222 7406 15109 +11150 11294 11221 11223 7334 15110 +11151 11295 11222 11224 7262 15111 +11152 11296 11223 11225 7409 15112 +11153 11297 11224 11226 7337 15113 +11154 11298 11225 11227 7265 15114 +11155 11299 11226 11228 7412 15115 +11156 11300 11227 11229 7340 15116 +11157 11301 11228 11230 7268 15117 +11158 11302 11229 11231 7415 15118 +11159 11303 11230 11232 7343 15119 +11160 11304 11231 11233 7271 15120 +11161 11305 11232 11234 7418 15121 +11162 11306 11233 11235 7346 15122 +11163 11307 11234 11236 7274 15123 +11164 11308 11235 11237 7421 15124 +11165 11309 11236 11238 7349 15125 +11166 11310 11237 11239 7277 15126 +11167 11311 11238 11240 7424 15127 +11168 11312 11239 11241 7352 15128 +11169 11313 11240 11242 7280 15129 +11170 11314 11241 11243 7427 15130 +11171 11315 11242 11244 7355 15131 +11172 11316 11243 11245 7283 15132 +11173 11317 11244 11246 7430 15133 +11174 11318 11245 11247 7358 15134 +11175 11319 11246 11247 7286 15135 +11176 11320 11248 11249 7362 15136 +11177 11321 11248 11250 7290 15137 +11178 11322 11249 11251 7218 15138 +11179 11323 11250 11252 7365 15139 +11180 11324 11251 11253 7293 15140 +11181 11325 11252 11254 7221 15141 +11182 11326 11253 11255 7368 15142 +11183 11327 11254 11256 7296 15143 +11184 11328 11255 11257 7224 15144 +11185 11329 11256 11258 7371 15145 +11186 11330 11257 11259 7299 15146 +11187 11331 11258 11260 7227 15147 +11188 11332 11259 11261 7374 15148 +11189 11333 11260 11262 7302 15149 +11190 11334 11261 11263 7230 15150 +11191 11335 11262 11264 7377 15151 +11192 11336 11263 11265 7305 15152 +11193 11337 11264 11266 7233 15153 +11194 11338 11265 11267 7380 15154 +11195 11339 11266 11268 7308 15155 +11196 11340 11267 11269 7236 15156 +11197 11341 11268 11270 7383 15157 +11198 11342 11269 11271 7311 15158 +11199 11343 11270 11272 7239 15159 +11200 11344 11271 11273 7386 15160 +11201 11345 11272 11274 7314 15161 +11202 11346 11273 11275 7242 15162 +11203 11347 11274 11276 7389 15163 +11204 11348 11275 11277 7317 15164 +11205 11349 11276 11278 7245 15165 +11206 11350 11277 11279 7392 15166 +11207 11351 11278 11280 7320 15167 +11208 11352 11279 11281 7248 15168 +11209 11353 11280 11282 7395 15169 +11210 11354 11281 11283 7323 15170 +11211 11355 11282 11284 7251 15171 +11212 11356 11283 11285 7398 15172 +11213 11357 11284 11286 7326 15173 +11214 11358 11285 11287 7254 15174 +11215 11359 11286 11288 7401 15175 +11216 11360 11287 11289 7329 15176 +11217 11361 11288 11290 7257 15177 +11218 11362 11289 11291 7404 15178 +11219 11363 11290 11292 7332 15179 +11220 11364 11291 11293 7260 15180 +11221 11365 11292 11294 7407 15181 +11222 11366 11293 11295 7335 15182 +11223 11367 11294 11296 7263 15183 +11224 11368 11295 11297 7410 15184 +11225 11369 11296 11298 7338 15185 +11226 11370 11297 11299 7266 15186 +11227 11371 11298 11300 7413 15187 +11228 11372 11299 11301 7341 15188 +11229 11373 11300 11302 7269 15189 +11230 11374 11301 11303 7416 15190 +11231 11375 11302 11304 7344 15191 +11232 11376 11303 11305 7272 15192 +11233 11377 11304 11306 7419 15193 +11234 11378 11305 11307 7347 15194 +11235 11379 11306 11308 7275 15195 +11236 11380 11307 11309 7422 15196 +11237 11381 11308 11310 7350 15197 +11238 11382 11309 11311 7278 15198 +11239 11383 11310 11312 7425 15199 +11240 11384 11311 11313 7353 15200 +11241 11385 11312 11314 7281 15201 +11242 11386 11313 11315 7428 15202 +11243 11387 11314 11316 7356 15203 +11244 11388 11315 11317 7284 15204 +11245 11389 11316 11318 7431 15205 +11246 11390 11317 11319 7359 15206 +11247 11391 11318 11319 7287 15207 +11248 11392 11320 11321 7576 15208 +11249 11393 11320 11322 7504 15209 +11250 11394 11321 11323 7432 15210 +11251 11395 11322 11324 7579 15211 +11252 11396 11323 11325 7507 15212 +11253 11397 11324 11326 7435 15213 +11254 11398 11325 11327 7582 15214 +11255 11399 11326 11328 7510 15215 +11256 11400 11327 11329 7438 15216 +11257 11401 11328 11330 7585 15217 +11258 11402 11329 11331 7513 15218 +11259 11403 11330 11332 7441 15219 +11260 11404 11331 11333 7588 15220 +11261 11405 11332 11334 7516 15221 +11262 11406 11333 11335 7444 15222 +11263 11407 11334 11336 7591 15223 +11264 11408 11335 11337 7519 15224 +11265 11409 11336 11338 7447 15225 +11266 11410 11337 11339 7594 15226 +11267 11411 11338 11340 7522 15227 +11268 11412 11339 11341 7450 15228 +11269 11413 11340 11342 7597 15229 +11270 11414 11341 11343 7525 15230 +11271 11415 11342 11344 7453 15231 +11272 11416 11343 11345 7600 15232 +11273 11417 11344 11346 7528 15233 +11274 11418 11345 11347 7456 15234 +11275 11419 11346 11348 7603 15235 +11276 11420 11347 11349 7531 15236 +11277 11421 11348 11350 7459 15237 +11278 11422 11349 11351 7606 15238 +11279 11423 11350 11352 7534 15239 +11280 11424 11351 11353 7462 15240 +11281 11425 11352 11354 7609 15241 +11282 11426 11353 11355 7537 15242 +11283 11427 11354 11356 7465 15243 +11284 11428 11355 11357 7612 15244 +11285 11429 11356 11358 7540 15245 +11286 11430 11357 11359 7468 15246 +11287 11431 11358 11360 7615 15247 +11288 11432 11359 11361 7543 15248 +11289 11433 11360 11362 7471 15249 +11290 11434 11361 11363 7618 15250 +11291 11435 11362 11364 7546 15251 +11292 11436 11363 11365 7474 15252 +11293 11437 11364 11366 7621 15253 +11294 11438 11365 11367 7549 15254 +11295 11439 11366 11368 7477 15255 +11296 11440 11367 11369 7624 15256 +11297 11441 11368 11370 7552 15257 +11298 11442 11369 11371 7480 15258 +11299 11443 11370 11372 7627 15259 +11300 11444 11371 11373 7555 15260 +11301 11445 11372 11374 7483 15261 +11302 11446 11373 11375 7630 15262 +11303 11447 11374 11376 7558 15263 +11304 11448 11375 11377 7486 15264 +11305 11449 11376 11378 7633 15265 +11306 11450 11377 11379 7561 15266 +11307 11451 11378 11380 7489 15267 +11308 11452 11379 11381 7636 15268 +11309 11453 11380 11382 7564 15269 +11310 11454 11381 11383 7492 15270 +11311 11455 11382 11384 7639 15271 +11312 11456 11383 11385 7567 15272 +11313 11457 11384 11386 7495 15273 +11314 11458 11385 11387 7642 15274 +11315 11459 11386 11388 7570 15275 +11316 11460 11387 11389 7498 15276 +11317 11461 11388 11390 7645 15277 +11318 11462 11389 11391 7573 15278 +11319 11463 11390 11391 7501 15279 +11320 11464 11392 11393 7577 15280 +11321 11465 11392 11394 7505 15281 +11322 11466 11393 11395 7433 15282 +11323 11467 11394 11396 7580 15283 +11324 11468 11395 11397 7508 15284 +11325 11469 11396 11398 7436 15285 +11326 11470 11397 11399 7583 15286 +11327 11471 11398 11400 7511 15287 +11328 11472 11399 11401 7439 15288 +11329 11473 11400 11402 7586 15289 +11330 11474 11401 11403 7514 15290 +11331 11475 11402 11404 7442 15291 +11332 11476 11403 11405 7589 15292 +11333 11477 11404 11406 7517 15293 +11334 11478 11405 11407 7445 15294 +11335 11479 11406 11408 7592 15295 +11336 11480 11407 11409 7520 15296 +11337 11481 11408 11410 7448 15297 +11338 11482 11409 11411 7595 15298 +11339 11483 11410 11412 7523 15299 +11340 11484 11411 11413 7451 15300 +11341 11485 11412 11414 7598 15301 +11342 11486 11413 11415 7526 15302 +11343 11487 11414 11416 7454 15303 +11344 11488 11415 11417 7601 15304 +11345 11489 11416 11418 7529 15305 +11346 11490 11417 11419 7457 15306 +11347 11491 11418 11420 7604 15307 +11348 11492 11419 11421 7532 15308 +11349 11493 11420 11422 7460 15309 +11350 11494 11421 11423 7607 15310 +11351 11495 11422 11424 7535 15311 +11352 11496 11423 11425 7463 15312 +11353 11497 11424 11426 7610 15313 +11354 11498 11425 11427 7538 15314 +11355 11499 11426 11428 7466 15315 +11356 11500 11427 11429 7613 15316 +11357 11501 11428 11430 7541 15317 +11358 11502 11429 11431 7469 15318 +11359 11503 11430 11432 7616 15319 +11360 11504 11431 11433 7544 15320 +11361 11505 11432 11434 7472 15321 +11362 11506 11433 11435 7619 15322 +11363 11507 11434 11436 7547 15323 +11364 11508 11435 11437 7475 15324 +11365 11509 11436 11438 7622 15325 +11366 11510 11437 11439 7550 15326 +11367 11511 11438 11440 7478 15327 +11368 11512 11439 11441 7625 15328 +11369 11513 11440 11442 7553 15329 +11370 11514 11441 11443 7481 15330 +11371 11515 11442 11444 7628 15331 +11372 11516 11443 11445 7556 15332 +11373 11517 11444 11446 7484 15333 +11374 11518 11445 11447 7631 15334 +11375 11519 11446 11448 7559 15335 +11376 11520 11447 11449 7487 15336 +11377 11521 11448 11450 7634 15337 +11378 11522 11449 11451 7562 15338 +11379 11523 11450 11452 7490 15339 +11380 11524 11451 11453 7637 15340 +11381 11525 11452 11454 7565 15341 +11382 11526 11453 11455 7493 15342 +11383 11527 11454 11456 7640 15343 +11384 11528 11455 11457 7568 15344 +11385 11529 11456 11458 7496 15345 +11386 11530 11457 11459 7643 15346 +11387 11531 11458 11460 7571 15347 +11388 11532 11459 11461 7499 15348 +11389 11533 11460 11462 7646 15349 +11390 11534 11461 11463 7574 15350 +11391 11535 11462 11463 7502 15351 +11392 11536 11464 11465 7578 15352 +11393 11537 11464 11466 7506 15353 +11394 11538 11465 11467 7434 15354 +11395 11539 11466 11468 7581 15355 +11396 11540 11467 11469 7509 15356 +11397 11541 11468 11470 7437 15357 +11398 11542 11469 11471 7584 15358 +11399 11543 11470 11472 7512 15359 +11400 11544 11471 11473 7440 15360 +11401 11545 11472 11474 7587 15361 +11402 11546 11473 11475 7515 15362 +11403 11547 11474 11476 7443 15363 +11404 11548 11475 11477 7590 15364 +11405 11549 11476 11478 7518 15365 +11406 11550 11477 11479 7446 15366 +11407 11551 11478 11480 7593 15367 +11408 11552 11479 11481 7521 15368 +11409 11553 11480 11482 7449 15369 +11410 11554 11481 11483 7596 15370 +11411 11555 11482 11484 7524 15371 +11412 11556 11483 11485 7452 15372 +11413 11557 11484 11486 7599 15373 +11414 11558 11485 11487 7527 15374 +11415 11559 11486 11488 7455 15375 +11416 11560 11487 11489 7602 15376 +11417 11561 11488 11490 7530 15377 +11418 11562 11489 11491 7458 15378 +11419 11563 11490 11492 7605 15379 +11420 11564 11491 11493 7533 15380 +11421 11565 11492 11494 7461 15381 +11422 11566 11493 11495 7608 15382 +11423 11567 11494 11496 7536 15383 +11424 11568 11495 11497 7464 15384 +11425 11569 11496 11498 7611 15385 +11426 11570 11497 11499 7539 15386 +11427 11571 11498 11500 7467 15387 +11428 11572 11499 11501 7614 15388 +11429 11573 11500 11502 7542 15389 +11430 11574 11501 11503 7470 15390 +11431 11575 11502 11504 7617 15391 +11432 11576 11503 11505 7545 15392 +11433 11577 11504 11506 7473 15393 +11434 11578 11505 11507 7620 15394 +11435 11579 11506 11508 7548 15395 +11436 11580 11507 11509 7476 15396 +11437 11581 11508 11510 7623 15397 +11438 11582 11509 11511 7551 15398 +11439 11583 11510 11512 7479 15399 +11440 11584 11511 11513 7626 15400 +11441 11585 11512 11514 7554 15401 +11442 11586 11513 11515 7482 15402 +11443 11587 11514 11516 7629 15403 +11444 11588 11515 11517 7557 15404 +11445 11589 11516 11518 7485 15405 +11446 11590 11517 11519 7632 15406 +11447 11591 11518 11520 7560 15407 +11448 11592 11519 11521 7488 15408 +11449 11593 11520 11522 7635 15409 +11450 11594 11521 11523 7563 15410 +11451 11595 11522 11524 7491 15411 +11452 11596 11523 11525 7638 15412 +11453 11597 11524 11526 7566 15413 +11454 11598 11525 11527 7494 15414 +11455 11599 11526 11528 7641 15415 +11456 11600 11527 11529 7569 15416 +11457 11601 11528 11530 7497 15417 +11458 11602 11529 11531 7644 15418 +11459 11603 11530 11532 7572 15419 +11460 11604 11531 11533 7500 15420 +11461 11605 11532 11534 7647 15421 +11462 11606 11533 11535 7575 15422 +11463 11607 11534 11535 7503 15423 +11464 11608 11536 11537 7792 15424 +11465 11609 11536 11538 7720 15425 +11466 11610 11537 11539 7648 15426 +11467 11611 11538 11540 7795 15427 +11468 11612 11539 11541 7723 15428 +11469 11613 11540 11542 7651 15429 +11470 11614 11541 11543 7798 15430 +11471 11615 11542 11544 7726 15431 +11472 11616 11543 11545 7654 15432 +11473 11617 11544 11546 7801 15433 +11474 11618 11545 11547 7729 15434 +11475 11619 11546 11548 7657 15435 +11476 11620 11547 11549 7804 15436 +11477 11621 11548 11550 7732 15437 +11478 11622 11549 11551 7660 15438 +11479 11623 11550 11552 7807 15439 +11480 11624 11551 11553 7735 15440 +11481 11625 11552 11554 7663 15441 +11482 11626 11553 11555 7810 15442 +11483 11627 11554 11556 7738 15443 +11484 11628 11555 11557 7666 15444 +11485 11629 11556 11558 7813 15445 +11486 11630 11557 11559 7741 15446 +11487 11631 11558 11560 7669 15447 +11488 11632 11559 11561 7816 15448 +11489 11633 11560 11562 7744 15449 +11490 11634 11561 11563 7672 15450 +11491 11635 11562 11564 7819 15451 +11492 11636 11563 11565 7747 15452 +11493 11637 11564 11566 7675 15453 +11494 11638 11565 11567 7822 15454 +11495 11639 11566 11568 7750 15455 +11496 11640 11567 11569 7678 15456 +11497 11641 11568 11570 7825 15457 +11498 11642 11569 11571 7753 15458 +11499 11643 11570 11572 7681 15459 +11500 11644 11571 11573 7828 15460 +11501 11645 11572 11574 7756 15461 +11502 11646 11573 11575 7684 15462 +11503 11647 11574 11576 7831 15463 +11504 11648 11575 11577 7759 15464 +11505 11649 11576 11578 7687 15465 +11506 11650 11577 11579 7834 15466 +11507 11651 11578 11580 7762 15467 +11508 11652 11579 11581 7690 15468 +11509 11653 11580 11582 7837 15469 +11510 11654 11581 11583 7765 15470 +11511 11655 11582 11584 7693 15471 +11512 11656 11583 11585 7840 15472 +11513 11657 11584 11586 7768 15473 +11514 11658 11585 11587 7696 15474 +11515 11659 11586 11588 7843 15475 +11516 11660 11587 11589 7771 15476 +11517 11661 11588 11590 7699 15477 +11518 11662 11589 11591 7846 15478 +11519 11663 11590 11592 7774 15479 +11520 11664 11591 11593 7702 15480 +11521 11665 11592 11594 7849 15481 +11522 11666 11593 11595 7777 15482 +11523 11667 11594 11596 7705 15483 +11524 11668 11595 11597 7852 15484 +11525 11669 11596 11598 7780 15485 +11526 11670 11597 11599 7708 15486 +11527 11671 11598 11600 7855 15487 +11528 11672 11599 11601 7783 15488 +11529 11673 11600 11602 7711 15489 +11530 11674 11601 11603 7858 15490 +11531 11675 11602 11604 7786 15491 +11532 11676 11603 11605 7714 15492 +11533 11677 11604 11606 7861 15493 +11534 11678 11605 11607 7789 15494 +11535 11679 11606 11607 7717 15495 +11536 11680 11608 11609 7793 15496 +11537 11681 11608 11610 7721 15497 +11538 11682 11609 11611 7649 15498 +11539 11683 11610 11612 7796 15499 +11540 11684 11611 11613 7724 15500 +11541 11685 11612 11614 7652 15501 +11542 11686 11613 11615 7799 15502 +11543 11687 11614 11616 7727 15503 +11544 11688 11615 11617 7655 15504 +11545 11689 11616 11618 7802 15505 +11546 11690 11617 11619 7730 15506 +11547 11691 11618 11620 7658 15507 +11548 11692 11619 11621 7805 15508 +11549 11693 11620 11622 7733 15509 +11550 11694 11621 11623 7661 15510 +11551 11695 11622 11624 7808 15511 +11552 11696 11623 11625 7736 15512 +11553 11697 11624 11626 7664 15513 +11554 11698 11625 11627 7811 15514 +11555 11699 11626 11628 7739 15515 +11556 11700 11627 11629 7667 15516 +11557 11701 11628 11630 7814 15517 +11558 11702 11629 11631 7742 15518 +11559 11703 11630 11632 7670 15519 +11560 11704 11631 11633 7817 15520 +11561 11705 11632 11634 7745 15521 +11562 11706 11633 11635 7673 15522 +11563 11707 11634 11636 7820 15523 +11564 11708 11635 11637 7748 15524 +11565 11709 11636 11638 7676 15525 +11566 11710 11637 11639 7823 15526 +11567 11711 11638 11640 7751 15527 +11568 11712 11639 11641 7679 15528 +11569 11713 11640 11642 7826 15529 +11570 11714 11641 11643 7754 15530 +11571 11715 11642 11644 7682 15531 +11572 11716 11643 11645 7829 15532 +11573 11717 11644 11646 7757 15533 +11574 11718 11645 11647 7685 15534 +11575 11719 11646 11648 7832 15535 +11576 11720 11647 11649 7760 15536 +11577 11721 11648 11650 7688 15537 +11578 11722 11649 11651 7835 15538 +11579 11723 11650 11652 7763 15539 +11580 11724 11651 11653 7691 15540 +11581 11725 11652 11654 7838 15541 +11582 11726 11653 11655 7766 15542 +11583 11727 11654 11656 7694 15543 +11584 11728 11655 11657 7841 15544 +11585 11729 11656 11658 7769 15545 +11586 11730 11657 11659 7697 15546 +11587 11731 11658 11660 7844 15547 +11588 11732 11659 11661 7772 15548 +11589 11733 11660 11662 7700 15549 +11590 11734 11661 11663 7847 15550 +11591 11735 11662 11664 7775 15551 +11592 11736 11663 11665 7703 15552 +11593 11737 11664 11666 7850 15553 +11594 11738 11665 11667 7778 15554 +11595 11739 11666 11668 7706 15555 +11596 11740 11667 11669 7853 15556 +11597 11741 11668 11670 7781 15557 +11598 11742 11669 11671 7709 15558 +11599 11743 11670 11672 7856 15559 +11600 11744 11671 11673 7784 15560 +11601 11745 11672 11674 7712 15561 +11602 11746 11673 11675 7859 15562 +11603 11747 11674 11676 7787 15563 +11604 11748 11675 11677 7715 15564 +11605 11749 11676 11678 7862 15565 +11606 11750 11677 11679 7790 15566 +11607 11751 11678 11679 7718 15567 +11608 11752 11680 11681 7794 15568 +11609 11753 11680 11682 7722 15569 +11610 11754 11681 11683 7650 15570 +11611 11755 11682 11684 7797 15571 +11612 11756 11683 11685 7725 15572 +11613 11757 11684 11686 7653 15573 +11614 11758 11685 11687 7800 15574 +11615 11759 11686 11688 7728 15575 +11616 11760 11687 11689 7656 15576 +11617 11761 11688 11690 7803 15577 +11618 11762 11689 11691 7731 15578 +11619 11763 11690 11692 7659 15579 +11620 11764 11691 11693 7806 15580 +11621 11765 11692 11694 7734 15581 +11622 11766 11693 11695 7662 15582 +11623 11767 11694 11696 7809 15583 +11624 11768 11695 11697 7737 15584 +11625 11769 11696 11698 7665 15585 +11626 11770 11697 11699 7812 15586 +11627 11771 11698 11700 7740 15587 +11628 11772 11699 11701 7668 15588 +11629 11773 11700 11702 7815 15589 +11630 11774 11701 11703 7743 15590 +11631 11775 11702 11704 7671 15591 +11632 11776 11703 11705 7818 15592 +11633 11777 11704 11706 7746 15593 +11634 11778 11705 11707 7674 15594 +11635 11779 11706 11708 7821 15595 +11636 11780 11707 11709 7749 15596 +11637 11781 11708 11710 7677 15597 +11638 11782 11709 11711 7824 15598 +11639 11783 11710 11712 7752 15599 +11640 11784 11711 11713 7680 15600 +11641 11785 11712 11714 7827 15601 +11642 11786 11713 11715 7755 15602 +11643 11787 11714 11716 7683 15603 +11644 11788 11715 11717 7830 15604 +11645 11789 11716 11718 7758 15605 +11646 11790 11717 11719 7686 15606 +11647 11791 11718 11720 7833 15607 +11648 11792 11719 11721 7761 15608 +11649 11793 11720 11722 7689 15609 +11650 11794 11721 11723 7836 15610 +11651 11795 11722 11724 7764 15611 +11652 11796 11723 11725 7692 15612 +11653 11797 11724 11726 7839 15613 +11654 11798 11725 11727 7767 15614 +11655 11799 11726 11728 7695 15615 +11656 11800 11727 11729 7842 15616 +11657 11801 11728 11730 7770 15617 +11658 11802 11729 11731 7698 15618 +11659 11803 11730 11732 7845 15619 +11660 11804 11731 11733 7773 15620 +11661 11805 11732 11734 7701 15621 +11662 11806 11733 11735 7848 15622 +11663 11807 11734 11736 7776 15623 +11664 11808 11735 11737 7704 15624 +11665 11809 11736 11738 7851 15625 +11666 11810 11737 11739 7779 15626 +11667 11811 11738 11740 7707 15627 +11668 11812 11739 11741 7854 15628 +11669 11813 11740 11742 7782 15629 +11670 11814 11741 11743 7710 15630 +11671 11815 11742 11744 7857 15631 +11672 11816 11743 11745 7785 15632 +11673 11817 11744 11746 7713 15633 +11674 11818 11745 11747 7860 15634 +11675 11819 11746 11748 7788 15635 +11676 11820 11747 11749 7716 15636 +11677 11821 11748 11750 7863 15637 +11678 11822 11749 11751 7791 15638 +11679 11823 11750 11751 7719 15639 +11680 11824 11752 11753 8008 15640 +11681 11825 11752 11754 7936 15641 +11682 11826 11753 11755 7864 15642 +11683 11827 11754 11756 8011 15643 +11684 11828 11755 11757 7939 15644 +11685 11829 11756 11758 7867 15645 +11686 11830 11757 11759 8014 15646 +11687 11831 11758 11760 7942 15647 +11688 11832 11759 11761 7870 15648 +11689 11833 11760 11762 8017 15649 +11690 11834 11761 11763 7945 15650 +11691 11835 11762 11764 7873 15651 +11692 11836 11763 11765 8020 15652 +11693 11837 11764 11766 7948 15653 +11694 11838 11765 11767 7876 15654 +11695 11839 11766 11768 8023 15655 +11696 11840 11767 11769 7951 15656 +11697 11841 11768 11770 7879 15657 +11698 11842 11769 11771 8026 15658 +11699 11843 11770 11772 7954 15659 +11700 11844 11771 11773 7882 15660 +11701 11845 11772 11774 8029 15661 +11702 11846 11773 11775 7957 15662 +11703 11847 11774 11776 7885 15663 +11704 11848 11775 11777 8032 15664 +11705 11849 11776 11778 7960 15665 +11706 11850 11777 11779 7888 15666 +11707 11851 11778 11780 8035 15667 +11708 11852 11779 11781 7963 15668 +11709 11853 11780 11782 7891 15669 +11710 11854 11781 11783 8038 15670 +11711 11855 11782 11784 7966 15671 +11712 11856 11783 11785 7894 15672 +11713 11857 11784 11786 8041 15673 +11714 11858 11785 11787 7969 15674 +11715 11859 11786 11788 7897 15675 +11716 11860 11787 11789 8044 15676 +11717 11861 11788 11790 7972 15677 +11718 11862 11789 11791 7900 15678 +11719 11863 11790 11792 8047 15679 +11720 11864 11791 11793 7975 15680 +11721 11865 11792 11794 7903 15681 +11722 11866 11793 11795 8050 15682 +11723 11867 11794 11796 7978 15683 +11724 11868 11795 11797 7906 15684 +11725 11869 11796 11798 8053 15685 +11726 11870 11797 11799 7981 15686 +11727 11871 11798 11800 7909 15687 +11728 11872 11799 11801 8056 15688 +11729 11873 11800 11802 7984 15689 +11730 11874 11801 11803 7912 15690 +11731 11875 11802 11804 8059 15691 +11732 11876 11803 11805 7987 15692 +11733 11877 11804 11806 7915 15693 +11734 11878 11805 11807 8062 15694 +11735 11879 11806 11808 7990 15695 +11736 11880 11807 11809 7918 15696 +11737 11881 11808 11810 8065 15697 +11738 11882 11809 11811 7993 15698 +11739 11883 11810 11812 7921 15699 +11740 11884 11811 11813 8068 15700 +11741 11885 11812 11814 7996 15701 +11742 11886 11813 11815 7924 15702 +11743 11887 11814 11816 8071 15703 +11744 11888 11815 11817 7999 15704 +11745 11889 11816 11818 7927 15705 +11746 11890 11817 11819 8074 15706 +11747 11891 11818 11820 8002 15707 +11748 11892 11819 11821 7930 15708 +11749 11893 11820 11822 8077 15709 +11750 11894 11821 11823 8005 15710 +11751 11895 11822 11823 7933 15711 +11752 11896 11824 11825 8009 15712 +11753 11897 11824 11826 7937 15713 +11754 11898 11825 11827 7865 15714 +11755 11899 11826 11828 8012 15715 +11756 11900 11827 11829 7940 15716 +11757 11901 11828 11830 7868 15717 +11758 11902 11829 11831 8015 15718 +11759 11903 11830 11832 7943 15719 +11760 11904 11831 11833 7871 15720 +11761 11905 11832 11834 8018 15721 +11762 11906 11833 11835 7946 15722 +11763 11907 11834 11836 7874 15723 +11764 11908 11835 11837 8021 15724 +11765 11909 11836 11838 7949 15725 +11766 11910 11837 11839 7877 15726 +11767 11911 11838 11840 8024 15727 +11768 11912 11839 11841 7952 15728 +11769 11913 11840 11842 7880 15729 +11770 11914 11841 11843 8027 15730 +11771 11915 11842 11844 7955 15731 +11772 11916 11843 11845 7883 15732 +11773 11917 11844 11846 8030 15733 +11774 11918 11845 11847 7958 15734 +11775 11919 11846 11848 7886 15735 +11776 11920 11847 11849 8033 15736 +11777 11921 11848 11850 7961 15737 +11778 11922 11849 11851 7889 15738 +11779 11923 11850 11852 8036 15739 +11780 11924 11851 11853 7964 15740 +11781 11925 11852 11854 7892 15741 +11782 11926 11853 11855 8039 15742 +11783 11927 11854 11856 7967 15743 +11784 11928 11855 11857 7895 15744 +11785 11929 11856 11858 8042 15745 +11786 11930 11857 11859 7970 15746 +11787 11931 11858 11860 7898 15747 +11788 11932 11859 11861 8045 15748 +11789 11933 11860 11862 7973 15749 +11790 11934 11861 11863 7901 15750 +11791 11935 11862 11864 8048 15751 +11792 11936 11863 11865 7976 15752 +11793 11937 11864 11866 7904 15753 +11794 11938 11865 11867 8051 15754 +11795 11939 11866 11868 7979 15755 +11796 11940 11867 11869 7907 15756 +11797 11941 11868 11870 8054 15757 +11798 11942 11869 11871 7982 15758 +11799 11943 11870 11872 7910 15759 +11800 11944 11871 11873 8057 15760 +11801 11945 11872 11874 7985 15761 +11802 11946 11873 11875 7913 15762 +11803 11947 11874 11876 8060 15763 +11804 11948 11875 11877 7988 15764 +11805 11949 11876 11878 7916 15765 +11806 11950 11877 11879 8063 15766 +11807 11951 11878 11880 7991 15767 +11808 11952 11879 11881 7919 15768 +11809 11953 11880 11882 8066 15769 +11810 11954 11881 11883 7994 15770 +11811 11955 11882 11884 7922 15771 +11812 11956 11883 11885 8069 15772 +11813 11957 11884 11886 7997 15773 +11814 11958 11885 11887 7925 15774 +11815 11959 11886 11888 8072 15775 +11816 11960 11887 11889 8000 15776 +11817 11961 11888 11890 7928 15777 +11818 11962 11889 11891 8075 15778 +11819 11963 11890 11892 8003 15779 +11820 11964 11891 11893 7931 15780 +11821 11965 11892 11894 8078 15781 +11822 11966 11893 11895 8006 15782 +11823 11967 11894 11895 7934 15783 +11824 11896 11896 11897 8010 15784 +11825 11897 11896 11898 7938 15785 +11826 11898 11897 11899 7866 15786 +11827 11899 11898 11900 8013 15787 +11828 11900 11899 11901 7941 15788 +11829 11901 11900 11902 7869 15789 +11830 11902 11901 11903 8016 15790 +11831 11903 11902 11904 7944 15791 +11832 11904 11903 11905 7872 15792 +11833 11905 11904 11906 8019 15793 +11834 11906 11905 11907 7947 15794 +11835 11907 11906 11908 7875 15795 +11836 11908 11907 11909 8022 15796 +11837 11909 11908 11910 7950 15797 +11838 11910 11909 11911 7878 15798 +11839 11911 11910 11912 8025 15799 +11840 11912 11911 11913 7953 15800 +11841 11913 11912 11914 7881 15801 +11842 11914 11913 11915 8028 15802 +11843 11915 11914 11916 7956 15803 +11844 11916 11915 11917 7884 15804 +11845 11917 11916 11918 8031 15805 +11846 11918 11917 11919 7959 15806 +11847 11919 11918 11920 7887 15807 +11848 11920 11919 11921 8034 15808 +11849 11921 11920 11922 7962 15809 +11850 11922 11921 11923 7890 15810 +11851 11923 11922 11924 8037 15811 +11852 11924 11923 11925 7965 15812 +11853 11925 11924 11926 7893 15813 +11854 11926 11925 11927 8040 15814 +11855 11927 11926 11928 7968 15815 +11856 11928 11927 11929 7896 15816 +11857 11929 11928 11930 8043 15817 +11858 11930 11929 11931 7971 15818 +11859 11931 11930 11932 7899 15819 +11860 11932 11931 11933 8046 15820 +11861 11933 11932 11934 7974 15821 +11862 11934 11933 11935 7902 15822 +11863 11935 11934 11936 8049 15823 +11864 11936 11935 11937 7977 15824 +11865 11937 11936 11938 7905 15825 +11866 11938 11937 11939 8052 15826 +11867 11939 11938 11940 7980 15827 +11868 11940 11939 11941 7908 15828 +11869 11941 11940 11942 8055 15829 +11870 11942 11941 11943 7983 15830 +11871 11943 11942 11944 7911 15831 +11872 11944 11943 11945 8058 15832 +11873 11945 11944 11946 7986 15833 +11874 11946 11945 11947 7914 15834 +11875 11947 11946 11948 8061 15835 +11876 11948 11947 11949 7989 15836 +11877 11949 11948 11950 7917 15837 +11878 11950 11949 11951 8064 15838 +11879 11951 11950 11952 7992 15839 +11880 11952 11951 11953 7920 15840 +11881 11953 11952 11954 8067 15841 +11882 11954 11953 11955 7995 15842 +11883 11955 11954 11956 7923 15843 +11884 11956 11955 11957 8070 15844 +11885 11957 11956 11958 7998 15845 +11886 11958 11957 11959 7926 15846 +11887 11959 11958 11960 8073 15847 +11888 11960 11959 11961 8001 15848 +11889 11961 11960 11962 7929 15849 +11890 11962 11961 11963 8076 15850 +11891 11963 11962 11964 8004 15851 +11892 11964 11963 11965 7932 15852 +11893 11965 11964 11966 8079 15853 +11894 11966 11965 11967 8007 15854 +11895 11967 11966 11967 7935 15855 +11968 11969 11968 11971 8080 15856 +11968 11972 11969 11970 8081 15857 +11971 11973 11969 11975 8082 15858 +11968 11976 11970 11971 8083 15859 +11969 11977 11972 11973 8084 15860 +11970 11978 11972 11974 8085 15861 +11975 11979 11973 11981 8086 15862 +11970 11982 11974 11976 8087 15863 +11971 11983 11975 11976 8088 15864 +11972 11984 11977 11978 8089 15865 +11973 11985 11977 11979 8090 15866 +11974 11986 11978 11980 8091 15867 +11981 11987 11979 11989 8092 15868 +11974 11990 11980 11982 8093 15869 +11975 11991 11981 11983 8094 15870 +11976 11992 11982 11983 8095 15871 +11977 11993 11984 11985 8096 15872 +11978 11994 11984 11986 8097 15873 +11979 11995 11985 11987 8098 15874 +11980 11996 11986 11988 8099 15875 +11989 11997 11987 11999 8100 15876 +11980 12000 11988 11990 8101 15877 +11981 12001 11989 11991 8102 15878 +11982 12002 11990 11992 8103 15879 +11983 12003 11991 11992 8104 15880 +11984 12004 11993 11994 8105 15881 +11985 12005 11993 11995 8106 15882 +11986 12006 11994 11996 8107 15883 +11987 12007 11995 11997 8108 15884 +11988 12008 11996 11998 8109 15885 +11999 12009 11997 12011 8110 15886 +11988 12012 11998 12000 8111 15887 +11989 12013 11999 12001 8112 15888 +11990 12014 12000 12002 8113 15889 +11991 12015 12001 12003 8114 15890 +11992 12016 12002 12003 8115 15891 +11993 12017 12004 12005 8116 15892 +11994 12018 12004 12006 8117 15893 +11995 12019 12005 12007 8118 15894 +11996 12020 12006 12008 8119 15895 +11997 12021 12007 12009 8120 15896 +11998 12022 12008 12010 8121 15897 +12011 12023 12009 12025 8122 15898 +11998 12026 12010 12012 8123 15899 +11999 12027 12011 12013 8124 15900 +12000 12028 12012 12014 8125 15901 +12001 12029 12013 12015 8126 15902 +12002 12030 12014 12016 8127 15903 +12003 12031 12015 12016 8128 15904 +12004 12032 12017 12018 8129 15905 +12005 12033 12017 12019 8130 15906 +12006 12034 12018 12020 8131 15907 +12007 12035 12019 12021 8132 15908 +12008 12036 12020 12022 8133 15909 +12009 12037 12021 12023 8134 15910 +12010 12038 12022 12024 8135 15911 +12025 12039 12023 12041 8136 15912 +12010 12042 12024 12026 8137 15913 +12011 12043 12025 12027 8138 15914 +12012 12044 12026 12028 8139 15915 +12013 12045 12027 12029 8140 15916 +12014 12046 12028 12030 8141 15917 +12015 12047 12029 12031 8142 15918 +12016 12048 12030 12031 8143 15919 +12017 12049 12032 12033 8144 15920 +12018 12050 12032 12034 8145 15921 +12019 12051 12033 12035 8146 15922 +12020 12052 12034 12036 8147 15923 +12021 12053 12035 12037 8148 15924 +12022 12054 12036 12038 8149 15925 +12023 12055 12037 12039 8150 15926 +12024 12056 12038 12040 8151 15927 +12041 12057 12039 12059 8152 15928 +12024 12060 12040 12042 8153 15929 +12025 12061 12041 12043 8154 15930 +12026 12062 12042 12044 8155 15931 +12027 12063 12043 12045 8156 15932 +12028 12064 12044 12046 8157 15933 +12029 12065 12045 12047 8158 15934 +12030 12066 12046 12048 8159 15935 +12031 12067 12047 12048 8160 15936 +12032 12068 12049 12050 8161 15937 +12033 12069 12049 12051 8162 15938 +12034 12070 12050 12052 8163 15939 +12035 12071 12051 12053 8164 15940 +12036 12072 12052 12054 8165 15941 +12037 12073 12053 12055 8166 15942 +12038 12074 12054 12056 8167 15943 +12039 12075 12055 12057 8168 15944 +12040 12076 12056 12058 8169 15945 +12059 12077 12057 12079 8170 15946 +12040 12080 12058 12060 8171 15947 +12041 12081 12059 12061 8172 15948 +12042 12082 12060 12062 8173 15949 +12043 12083 12061 12063 8174 15950 +12044 12084 12062 12064 8175 15951 +12045 12085 12063 12065 8176 15952 +12046 12086 12064 12066 8177 15953 +12047 12087 12065 12067 8178 15954 +12048 12088 12066 12067 8179 15955 +12049 12089 12068 12069 8180 15956 +12050 12090 12068 12070 8181 15957 +12051 12091 12069 12071 8182 15958 +12052 12092 12070 12072 8183 15959 +12053 12093 12071 12073 8184 15960 +12054 12094 12072 12074 8185 15961 +12055 12095 12073 12075 8186 15962 +12056 12096 12074 12076 8187 15963 +12057 12097 12075 12077 8188 15964 +12058 12098 12076 12078 8189 15965 +12079 12099 12077 12101 8190 15966 +12058 12102 12078 12080 8191 15967 +12059 12103 12079 12081 8192 15968 +12060 12104 12080 12082 8193 15969 +12061 12105 12081 12083 8194 15970 +12062 12106 12082 12084 8195 15971 +12063 12107 12083 12085 8196 15972 +12064 12108 12084 12086 8197 15973 +12065 12109 12085 12087 8198 15974 +12066 12110 12086 12088 8199 15975 +12067 12111 12087 12088 8200 15976 +12068 12112 12089 12090 8201 15977 +12069 12113 12089 12091 8202 15978 +12070 12114 12090 12092 8203 15979 +12071 12115 12091 12093 8204 15980 +12072 12116 12092 12094 8205 15981 +12073 12117 12093 12095 8206 15982 +12074 12118 12094 12096 8207 15983 +12075 12119 12095 12097 8208 15984 +12076 12120 12096 12098 8209 15985 +12077 12121 12097 12099 8210 15986 +12078 12122 12098 12100 8211 15987 +12101 12123 12099 12125 8212 15988 +12078 12126 12100 12102 8213 15989 +12079 12127 12101 12103 8214 15990 +12080 12128 12102 12104 8215 15991 +12081 12129 12103 12105 8216 15992 +12082 12130 12104 12106 8217 15993 +12083 12131 12105 12107 8218 15994 +12084 12132 12106 12108 8219 15995 +12085 12133 12107 12109 8220 15996 +12086 12134 12108 12110 8221 15997 +12087 12135 12109 12111 8222 15998 +12088 12136 12110 12111 8223 15999 +12089 12137 12112 12113 8224 16000 +12090 12138 12112 12114 8225 16001 +12091 12139 12113 12115 8226 16002 +12092 12140 12114 12116 8227 16003 +12093 12141 12115 12117 8228 16004 +12094 12142 12116 12118 8229 16005 +12095 12143 12117 12119 8230 16006 +12096 12144 12118 12120 8231 16007 +12097 12145 12119 12121 8232 16008 +12098 12146 12120 12122 8233 16009 +12099 12147 12121 12123 8234 16010 +12100 12148 12122 12124 8235 16011 +12125 12149 12123 12151 8236 16012 +12100 12152 12124 12126 8237 16013 +12101 12153 12125 12127 8238 16014 +12102 12154 12126 12128 8239 16015 +12103 12155 12127 12129 8240 16016 +12104 12156 12128 12130 8241 16017 +12105 12157 12129 12131 8242 16018 +12106 12158 12130 12132 8243 16019 +12107 12159 12131 12133 8244 16020 +12108 12160 12132 12134 8245 16021 +12109 12161 12133 12135 8246 16022 +12110 12162 12134 12136 8247 16023 +12111 12163 12135 12136 8248 16024 +12112 12164 12137 12138 8249 16025 +12113 12165 12137 12139 8250 16026 +12114 12166 12138 12140 8251 16027 +12115 12167 12139 12141 8252 16028 +12116 12168 12140 12142 8253 16029 +12117 12169 12141 12143 8254 16030 +12118 12170 12142 12144 8255 16031 +12119 12171 12143 12145 8256 16032 +12120 12172 12144 12146 8257 16033 +12121 12173 12145 12147 8258 16034 +12122 12174 12146 12148 8259 16035 +12123 12175 12147 12149 8260 16036 +12124 12176 12148 12150 8261 16037 +12151 12177 12149 12179 8262 16038 +12124 12180 12150 12152 8263 16039 +12125 12181 12151 12153 8264 16040 +12126 12182 12152 12154 8265 16041 +12127 12183 12153 12155 8266 16042 +12128 12184 12154 12156 8267 16043 +12129 12185 12155 12157 8268 16044 +12130 12186 12156 12158 8269 16045 +12131 12187 12157 12159 8270 16046 +12132 12188 12158 12160 8271 16047 +12133 12189 12159 12161 8272 16048 +12134 12190 12160 12162 8273 16049 +12135 12191 12161 12163 8274 16050 +12136 12192 12162 12163 8275 16051 +12137 12193 12164 12165 8276 16052 +12138 12194 12164 12166 8277 16053 +12139 12195 12165 12167 8278 16054 +12140 12196 12166 12168 8279 16055 +12141 12197 12167 12169 8280 16056 +12142 12198 12168 12170 8281 16057 +12143 12199 12169 12171 8282 16058 +12144 12200 12170 12172 8283 16059 +12145 12201 12171 12173 8284 16060 +12146 12202 12172 12174 8285 16061 +12147 12203 12173 12175 8286 16062 +12148 12204 12174 12176 8287 16063 +12149 12205 12175 12177 8288 16064 +12150 12206 12176 12178 8289 16065 +12179 12207 12177 12209 8290 16066 +12150 12210 12178 12180 8291 16067 +12151 12211 12179 12181 8292 16068 +12152 12212 12180 12182 8293 16069 +12153 12213 12181 12183 8294 16070 +12154 12214 12182 12184 8295 16071 +12155 12215 12183 12185 8296 16072 +12156 12216 12184 12186 8297 16073 +12157 12217 12185 12187 8298 16074 +12158 12218 12186 12188 8299 16075 +12159 12219 12187 12189 8300 16076 +12160 12220 12188 12190 8301 16077 +12161 12221 12189 12191 8302 16078 +12162 12222 12190 12192 8303 16079 +12163 12223 12191 12192 8304 16080 +12164 12224 12193 12194 8305 16081 +12165 12225 12193 12195 8306 16082 +12166 12226 12194 12196 8307 16083 +12167 12227 12195 12197 8308 16084 +12168 12228 12196 12198 8309 16085 +12169 12229 12197 12199 8310 16086 +12170 12230 12198 12200 8311 16087 +12171 12231 12199 12201 8312 16088 +12172 12232 12200 12202 8313 16089 +12173 12233 12201 12203 8314 16090 +12174 12234 12202 12204 8315 16091 +12175 12235 12203 12205 8316 16092 +12176 12236 12204 12206 8317 16093 +12177 12237 12205 12207 8318 16094 +12178 12238 12206 12208 8319 16095 +12209 12239 12207 12241 8320 16096 +12178 12242 12208 12210 8321 16097 +12179 12243 12209 12211 8322 16098 +12180 12244 12210 12212 8323 16099 +12181 12245 12211 12213 8324 16100 +12182 12246 12212 12214 8325 16101 +12183 12247 12213 12215 8326 16102 +12184 12248 12214 12216 8327 16103 +12185 12249 12215 12217 8328 16104 +12186 12250 12216 12218 8329 16105 +12187 12251 12217 12219 8330 16106 +12188 12252 12218 12220 8331 16107 +12189 12253 12219 12221 8332 16108 +12190 12254 12220 12222 8333 16109 +12191 12255 12221 12223 8334 16110 +12192 12256 12222 12223 8335 16111 +12193 12257 12224 12225 8336 16112 +12194 12258 12224 12226 8337 16113 +12195 12259 12225 12227 8338 16114 +12196 12260 12226 12228 8339 16115 +12197 12261 12227 12229 8340 16116 +12198 12262 12228 12230 8341 16117 +12199 12263 12229 12231 8342 16118 +12200 12264 12230 12232 8343 16119 +12201 12265 12231 12233 8344 16120 +12202 12266 12232 12234 8345 16121 +12203 12267 12233 12235 8346 16122 +12204 12268 12234 12236 8347 16123 +12205 12269 12235 12237 8348 16124 +12206 12270 12236 12238 8349 16125 +12207 12271 12237 12239 8350 16126 +12208 12272 12238 12240 8351 16127 +12241 12273 12239 12275 8352 16128 +12208 12276 12240 12242 8353 16129 +12209 12277 12241 12243 8354 16130 +12210 12278 12242 12244 8355 16131 +12211 12279 12243 12245 8356 16132 +12212 12280 12244 12246 8357 16133 +12213 12281 12245 12247 8358 16134 +12214 12282 12246 12248 8359 16135 +12215 12283 12247 12249 8360 16136 +12216 12284 12248 12250 8361 16137 +12217 12285 12249 12251 8362 16138 +12218 12286 12250 12252 8363 16139 +12219 12287 12251 12253 8364 16140 +12220 12288 12252 12254 8365 16141 +12221 12289 12253 12255 8366 16142 +12222 12290 12254 12256 8367 16143 +12223 12291 12255 12256 8368 16144 +12224 12292 12257 12258 8369 16145 +12225 12293 12257 12259 8370 16146 +12226 12294 12258 12260 8371 16147 +12227 12295 12259 12261 8372 16148 +12228 12296 12260 12262 8373 16149 +12229 12297 12261 12263 8374 16150 +12230 12298 12262 12264 8375 16151 +12231 12299 12263 12265 8376 16152 +12232 12300 12264 12266 8377 16153 +12233 12301 12265 12267 8378 16154 +12234 12302 12266 12268 8379 16155 +12235 12303 12267 12269 8380 16156 +12236 12304 12268 12270 8381 16157 +12237 12305 12269 12271 8382 16158 +12238 12306 12270 12272 8383 16159 +12239 12307 12271 12273 8384 16160 +12240 12308 12272 12274 8385 16161 +12275 12309 12273 12311 8386 16162 +12240 12312 12274 12276 8387 16163 +12241 12313 12275 12277 8388 16164 +12242 12314 12276 12278 8389 16165 +12243 12315 12277 12279 8390 16166 +12244 12316 12278 12280 8391 16167 +12245 12317 12279 12281 8392 16168 +12246 12318 12280 12282 8393 16169 +12247 12319 12281 12283 8394 16170 +12248 12320 12282 12284 8395 16171 +12249 12321 12283 12285 8396 16172 +12250 12322 12284 12286 8397 16173 +12251 12323 12285 12287 8398 16174 +12252 12324 12286 12288 8399 16175 +12253 12325 12287 12289 8400 16176 +12254 12326 12288 12290 8401 16177 +12255 12327 12289 12291 8402 16178 +12256 12328 12290 12291 8403 16179 +12257 12329 12292 12293 8404 16180 +12258 12330 12292 12294 8405 16181 +12259 12331 12293 12295 8406 16182 +12260 12332 12294 12296 8407 16183 +12261 12333 12295 12297 8408 16184 +12262 12334 12296 12298 8409 16185 +12263 12335 12297 12299 8410 16186 +12264 12336 12298 12300 8411 16187 +12265 12337 12299 12301 8412 16188 +12266 12338 12300 12302 8413 16189 +12267 12339 12301 12303 8414 16190 +12268 12340 12302 12304 8415 16191 +12269 12341 12303 12305 8416 16192 +12270 12342 12304 12306 8417 16193 +12271 12343 12305 12307 8418 16194 +12272 12344 12306 12308 8419 16195 +12273 12345 12307 12309 8420 16196 +12274 12346 12308 12310 8421 16197 +12311 12347 12309 12349 8422 16198 +12274 12350 12310 12312 8423 16199 +12275 12351 12311 12313 8424 16200 +12276 12352 12312 12314 8425 16201 +12277 12353 12313 12315 8426 16202 +12278 12354 12314 12316 8427 16203 +12279 12355 12315 12317 8428 16204 +12280 12356 12316 12318 8429 16205 +12281 12357 12317 12319 8430 16206 +12282 12358 12318 12320 8431 16207 +12283 12359 12319 12321 8432 16208 +12284 12360 12320 12322 8433 16209 +12285 12361 12321 12323 8434 16210 +12286 12362 12322 12324 8435 16211 +12287 12363 12323 12325 8436 16212 +12288 12364 12324 12326 8437 16213 +12289 12365 12325 12327 8438 16214 +12290 12366 12326 12328 8439 16215 +12291 12367 12327 12328 8440 16216 +12292 12368 12329 12330 8441 16217 +12293 12369 12329 12331 8442 16218 +12294 12370 12330 12332 8443 16219 +12295 12371 12331 12333 8444 16220 +12296 12372 12332 12334 8445 16221 +12297 12373 12333 12335 8446 16222 +12298 12374 12334 12336 8447 16223 +12299 12375 12335 12337 8448 16224 +12300 12376 12336 12338 8449 16225 +12301 12377 12337 12339 8450 16226 +12302 12378 12338 12340 8451 16227 +12303 12379 12339 12341 8452 16228 +12304 12380 12340 12342 8453 16229 +12305 12381 12341 12343 8454 16230 +12306 12382 12342 12344 8455 16231 +12307 12383 12343 12345 8456 16232 +12308 12384 12344 12346 8457 16233 +12309 12385 12345 12347 8458 16234 +12310 12386 12346 12348 8459 16235 +12349 12387 12347 12389 8460 16236 +12310 12390 12348 12350 8461 16237 +12311 12391 12349 12351 8462 16238 +12312 12392 12350 12352 8463 16239 +12313 12393 12351 12353 8464 16240 +12314 12394 12352 12354 8465 16241 +12315 12395 12353 12355 8466 16242 +12316 12396 12354 12356 8467 16243 +12317 12397 12355 12357 8468 16244 +12318 12398 12356 12358 8469 16245 +12319 12399 12357 12359 8470 16246 +12320 12400 12358 12360 8471 16247 +12321 12401 12359 12361 8472 16248 +12322 12402 12360 12362 8473 16249 +12323 12403 12361 12363 8474 16250 +12324 12404 12362 12364 8475 16251 +12325 12405 12363 12365 8476 16252 +12326 12406 12364 12366 8477 16253 +12327 12407 12365 12367 8478 16254 +12328 12408 12366 12367 8479 16255 +12329 12409 12368 12369 8480 16256 +12330 12410 12368 12370 8481 16257 +12331 12411 12369 12371 8482 16258 +12332 12412 12370 12372 8483 16259 +12333 12413 12371 12373 8484 16260 +12334 12414 12372 12374 8485 16261 +12335 12415 12373 12375 8486 16262 +12336 12416 12374 12376 8487 16263 +12337 12417 12375 12377 8488 16264 +12338 12418 12376 12378 8489 16265 +12339 12419 12377 12379 8490 16266 +12340 12420 12378 12380 8491 16267 +12341 12421 12379 12381 8492 16268 +12342 12422 12380 12382 8493 16269 +12343 12423 12381 12383 8494 16270 +12344 12424 12382 12384 8495 16271 +12345 12425 12383 12385 8496 16272 +12346 12426 12384 12386 8497 16273 +12347 12427 12385 12387 8498 16274 +12348 12428 12386 12388 8499 16275 +12389 12429 12387 12431 8500 16276 +12348 12432 12388 12390 8501 16277 +12349 12433 12389 12391 8502 16278 +12350 12434 12390 12392 8503 16279 +12351 12435 12391 12393 8504 16280 +12352 12436 12392 12394 8505 16281 +12353 12437 12393 12395 8506 16282 +12354 12438 12394 12396 8507 16283 +12355 12439 12395 12397 8508 16284 +12356 12440 12396 12398 8509 16285 +12357 12441 12397 12399 8510 16286 +12358 12442 12398 12400 8511 16287 +12359 12443 12399 12401 8512 16288 +12360 12444 12400 12402 8513 16289 +12361 12445 12401 12403 8514 16290 +12362 12446 12402 12404 8515 16291 +12363 12447 12403 12405 8516 16292 +12364 12448 12404 12406 8517 16293 +12365 12449 12405 12407 8518 16294 +12366 12450 12406 12408 8519 16295 +12367 12451 12407 12408 8520 16296 +12368 12452 12409 12410 8521 16297 +12369 12453 12409 12411 8522 16298 +12370 12454 12410 12412 8523 16299 +12371 12455 12411 12413 8524 16300 +12372 12456 12412 12414 8525 16301 +12373 12457 12413 12415 8526 16302 +12374 12458 12414 12416 8527 16303 +12375 12459 12415 12417 8528 16304 +12376 12460 12416 12418 8529 16305 +12377 12461 12417 12419 8530 16306 +12378 12462 12418 12420 8531 16307 +12379 12463 12419 12421 8532 16308 +12380 12464 12420 12422 8533 16309 +12381 12465 12421 12423 8534 16310 +12382 12466 12422 12424 8535 16311 +12383 12467 12423 12425 8536 16312 +12384 12468 12424 12426 8537 16313 +12385 12469 12425 12427 8538 16314 +12386 12470 12426 12428 8539 16315 +12387 12471 12427 12429 8540 16316 +12388 12472 12428 12430 8541 16317 +12431 12473 12429 12475 8542 16318 +12388 12476 12430 12432 8543 16319 +12389 12477 12431 12433 8544 16320 +12390 12478 12432 12434 8545 16321 +12391 12479 12433 12435 8546 16322 +12392 12480 12434 12436 8547 16323 +12393 12481 12435 12437 8548 16324 +12394 12482 12436 12438 8549 16325 +12395 12483 12437 12439 8550 16326 +12396 12484 12438 12440 8551 16327 +12397 12485 12439 12441 8552 16328 +12398 12486 12440 12442 8553 16329 +12399 12487 12441 12443 8554 16330 +12400 12488 12442 12444 8555 16331 +12401 12489 12443 12445 8556 16332 +12402 12490 12444 12446 8557 16333 +12403 12491 12445 12447 8558 16334 +12404 12492 12446 12448 8559 16335 +12405 12493 12447 12449 8560 16336 +12406 12494 12448 12450 8561 16337 +12407 12495 12449 12451 8562 16338 +12408 12496 12450 12451 8563 16339 +12409 12497 12452 12453 8564 16340 +12410 12498 12452 12454 8565 16341 +12411 12499 12453 12455 8566 16342 +12412 12500 12454 12456 8567 16343 +12413 12501 12455 12457 8568 16344 +12414 12502 12456 12458 8569 16345 +12415 12503 12457 12459 8570 16346 +12416 12504 12458 12460 8571 16347 +12417 12505 12459 12461 8572 16348 +12418 12506 12460 12462 8573 16349 +12419 12507 12461 12463 8574 16350 +12420 12508 12462 12464 8575 16351 +12421 12509 12463 12465 8576 16352 +12422 12510 12464 12466 8577 16353 +12423 12511 12465 12467 8578 16354 +12424 12512 12466 12468 8579 16355 +12425 12513 12467 12469 8580 16356 +12426 12514 12468 12470 8581 16357 +12427 12515 12469 12471 8582 16358 +12428 12516 12470 12472 8583 16359 +12429 12517 12471 12473 8584 16360 +12430 12518 12472 12474 8585 16361 +12475 12519 12473 12521 8586 16362 +12430 12522 12474 12476 8587 16363 +12431 12523 12475 12477 8588 16364 +12432 12524 12476 12478 8589 16365 +12433 12525 12477 12479 8590 16366 +12434 12526 12478 12480 8591 16367 +12435 12527 12479 12481 8592 16368 +12436 12528 12480 12482 8593 16369 +12437 12529 12481 12483 8594 16370 +12438 12530 12482 12484 8595 16371 +12439 12531 12483 12485 8596 16372 +12440 12532 12484 12486 8597 16373 +12441 12533 12485 12487 8598 16374 +12442 12534 12486 12488 8599 16375 +12443 12535 12487 12489 8600 16376 +12444 12536 12488 12490 8601 16377 +12445 12537 12489 12491 8602 16378 +12446 12538 12490 12492 8603 16379 +12447 12539 12491 12493 8604 16380 +12448 12540 12492 12494 8605 16381 +12449 12541 12493 12495 8606 16382 +12450 12542 12494 12496 8607 16383 +12451 12543 12495 12496 8608 16384 +12452 12544 12497 12498 8609 16385 +12453 12545 12497 12499 8610 16386 +12454 12546 12498 12500 8611 16387 +12455 12547 12499 12501 8612 16388 +12456 12548 12500 12502 8613 16389 +12457 12549 12501 12503 8614 16390 +12458 12550 12502 12504 8615 16391 +12459 12551 12503 12505 8616 16392 +12460 12552 12504 12506 8617 16393 +12461 12553 12505 12507 8618 16394 +12462 12554 12506 12508 8619 16395 +12463 12555 12507 12509 8620 16396 +12464 12556 12508 12510 8621 16397 +12465 12557 12509 12511 8622 16398 +12466 12558 12510 12512 8623 16399 +12467 12559 12511 12513 8624 16400 +12468 12560 12512 12514 8625 16401 +12469 12561 12513 12515 8626 16402 +12470 12562 12514 12516 8627 16403 +12471 12563 12515 12517 8628 16404 +12472 12564 12516 12518 8629 16405 +12473 12565 12517 12519 8630 16406 +12474 12566 12518 12520 8631 16407 +12521 12567 12519 12569 8632 16408 +12474 12570 12520 12522 8633 16409 +12475 12571 12521 12523 8634 16410 +12476 12572 12522 12524 8635 16411 +12477 12573 12523 12525 8636 16412 +12478 12574 12524 12526 8637 16413 +12479 12575 12525 12527 8638 16414 +12480 12576 12526 12528 8639 16415 +12481 12577 12527 12529 8640 16416 +12482 12578 12528 12530 8641 16417 +12483 12579 12529 12531 8642 16418 +12484 12580 12530 12532 8643 16419 +12485 12581 12531 12533 8644 16420 +12486 12582 12532 12534 8645 16421 +12487 12583 12533 12535 8646 16422 +12488 12584 12534 12536 8647 16423 +12489 12585 12535 12537 8648 16424 +12490 12586 12536 12538 8649 16425 +12491 12587 12537 12539 8650 16426 +12492 12588 12538 12540 8651 16427 +12493 12589 12539 12541 8652 16428 +12494 12590 12540 12542 8653 16429 +12495 12591 12541 12543 8654 16430 +12496 12592 12542 12543 8655 16431 +12497 12593 12544 12545 8656 16432 +12498 12594 12544 12546 8657 16433 +12499 12595 12545 12547 8658 16434 +12500 12596 12546 12548 8659 16435 +12501 12597 12547 12549 8660 16436 +12502 12598 12548 12550 8661 16437 +12503 12599 12549 12551 8662 16438 +12504 12600 12550 12552 8663 16439 +12505 12601 12551 12553 8664 16440 +12506 12602 12552 12554 8665 16441 +12507 12603 12553 12555 8666 16442 +12508 12604 12554 12556 8667 16443 +12509 12605 12555 12557 8668 16444 +12510 12606 12556 12558 8669 16445 +12511 12607 12557 12559 8670 16446 +12512 12608 12558 12560 8671 16447 +12513 12609 12559 12561 8672 16448 +12514 12610 12560 12562 8673 16449 +12515 12611 12561 12563 8674 16450 +12516 12612 12562 12564 8675 16451 +12517 12613 12563 12565 8676 16452 +12518 12614 12564 12566 8677 16453 +12519 12615 12565 12567 8678 16454 +12520 12616 12566 12568 8679 16455 +12569 12617 12567 12619 8680 16456 +12520 12620 12568 12570 8681 16457 +12521 12621 12569 12571 8682 16458 +12522 12622 12570 12572 8683 16459 +12523 12623 12571 12573 8684 16460 +12524 12624 12572 12574 8685 16461 +12525 12625 12573 12575 8686 16462 +12526 12626 12574 12576 8687 16463 +12527 12627 12575 12577 8688 16464 +12528 12628 12576 12578 8689 16465 +12529 12629 12577 12579 8690 16466 +12530 12630 12578 12580 8691 16467 +12531 12631 12579 12581 8692 16468 +12532 12632 12580 12582 8693 16469 +12533 12633 12581 12583 8694 16470 +12534 12634 12582 12584 8695 16471 +12535 12635 12583 12585 8696 16472 +12536 12636 12584 12586 8697 16473 +12537 12637 12585 12587 8698 16474 +12538 12638 12586 12588 8699 16475 +12539 12639 12587 12589 8700 16476 +12540 12640 12588 12590 8701 16477 +12541 12641 12589 12591 8702 16478 +12542 12642 12590 12592 8703 16479 +12543 12643 12591 12592 8704 16480 +12544 12644 12593 12594 8705 16481 +12545 12645 12593 12595 8706 16482 +12546 12646 12594 12596 8707 16483 +12547 12647 12595 12597 8708 16484 +12548 12648 12596 12598 8709 16485 +12549 12649 12597 12599 8710 16486 +12550 12650 12598 12600 8711 16487 +12551 12651 12599 12601 8712 16488 +12552 12652 12600 12602 8713 16489 +12553 12653 12601 12603 8714 16490 +12554 12654 12602 12604 8715 16491 +12555 12655 12603 12605 8716 16492 +12556 12656 12604 12606 8717 16493 +12557 12657 12605 12607 8718 16494 +12558 12658 12606 12608 8719 16495 +12559 12659 12607 12609 8720 16496 +12560 12660 12608 12610 8721 16497 +12561 12661 12609 12611 8722 16498 +12562 12662 12610 12612 8723 16499 +12563 12663 12611 12613 8724 16500 +12564 12664 12612 12614 8725 16501 +12565 12665 12613 12615 8726 16502 +12566 12666 12614 12616 8727 16503 +12567 12667 12615 12617 8728 16504 +12568 12668 12616 12618 8729 16505 +12619 12669 12617 12671 8730 16506 +12568 12672 12618 12620 8731 16507 +12569 12673 12619 12621 8732 16508 +12570 12674 12620 12622 8733 16509 +12571 12675 12621 12623 8734 16510 +12572 12676 12622 12624 8735 16511 +12573 12677 12623 12625 8736 16512 +12574 12678 12624 12626 8737 16513 +12575 12679 12625 12627 8738 16514 +12576 12680 12626 12628 8739 16515 +12577 12681 12627 12629 8740 16516 +12578 12682 12628 12630 8741 16517 +12579 12683 12629 12631 8742 16518 +12580 12684 12630 12632 8743 16519 +12581 12685 12631 12633 8744 16520 +12582 12686 12632 12634 8745 16521 +12583 12687 12633 12635 8746 16522 +12584 12688 12634 12636 8747 16523 +12585 12689 12635 12637 8748 16524 +12586 12690 12636 12638 8749 16525 +12587 12691 12637 12639 8750 16526 +12588 12692 12638 12640 8751 16527 +12589 12693 12639 12641 8752 16528 +12590 12694 12640 12642 8753 16529 +12591 12695 12641 12643 8754 16530 +12592 12696 12642 12643 8755 16531 +12593 12697 12644 12645 8756 16532 +12594 12698 12644 12646 8757 16533 +12595 12699 12645 12647 8758 16534 +12596 12700 12646 12648 8759 16535 +12597 12701 12647 12649 8760 16536 +12598 12702 12648 12650 8761 16537 +12599 12703 12649 12651 8762 16538 +12600 12704 12650 12652 8763 16539 +12601 12705 12651 12653 8764 16540 +12602 12706 12652 12654 8765 16541 +12603 12707 12653 12655 8766 16542 +12604 12708 12654 12656 8767 16543 +12605 12709 12655 12657 8768 16544 +12606 12710 12656 12658 8769 16545 +12607 12711 12657 12659 8770 16546 +12608 12712 12658 12660 8771 16547 +12609 12713 12659 12661 8772 16548 +12610 12714 12660 12662 8773 16549 +12611 12715 12661 12663 8774 16550 +12612 12716 12662 12664 8775 16551 +12613 12717 12663 12665 8776 16552 +12614 12718 12664 12666 8777 16553 +12615 12719 12665 12667 8778 16554 +12616 12720 12666 12668 8779 16555 +12617 12721 12667 12669 8780 16556 +12618 12722 12668 12670 8781 16557 +12671 12723 12669 12725 8782 16558 +12618 12726 12670 12672 8783 16559 +12619 12727 12671 12673 8784 16560 +12620 12728 12672 12674 8785 16561 +12621 12729 12673 12675 8786 16562 +12622 12730 12674 12676 8787 16563 +12623 12731 12675 12677 8788 16564 +12624 12732 12676 12678 8789 16565 +12625 12733 12677 12679 8790 16566 +12626 12734 12678 12680 8791 16567 +12627 12735 12679 12681 8792 16568 +12628 12736 12680 12682 8793 16569 +12629 12737 12681 12683 8794 16570 +12630 12738 12682 12684 8795 16571 +12631 12739 12683 12685 8796 16572 +12632 12740 12684 12686 8797 16573 +12633 12741 12685 12687 8798 16574 +12634 12742 12686 12688 8799 16575 +12635 12743 12687 12689 8800 16576 +12636 12744 12688 12690 8801 16577 +12637 12745 12689 12691 8802 16578 +12638 12746 12690 12692 8803 16579 +12639 12747 12691 12693 8804 16580 +12640 12748 12692 12694 8805 16581 +12641 12749 12693 12695 8806 16582 +12642 12750 12694 12696 8807 16583 +12643 12751 12695 12696 8808 16584 +12644 12752 12697 12698 8809 16585 +12645 12753 12697 12699 8810 16586 +12646 12754 12698 12700 8811 16587 +12647 12755 12699 12701 8812 16588 +12648 12756 12700 12702 8813 16589 +12649 12757 12701 12703 8814 16590 +12650 12758 12702 12704 8815 16591 +12651 12759 12703 12705 8816 16592 +12652 12760 12704 12706 8817 16593 +12653 12761 12705 12707 8818 16594 +12654 12762 12706 12708 8819 16595 +12655 12763 12707 12709 8820 16596 +12656 12764 12708 12710 8821 16597 +12657 12765 12709 12711 8822 16598 +12658 12766 12710 12712 8823 16599 +12659 12767 12711 12713 8824 16600 +12660 12768 12712 12714 8825 16601 +12661 12769 12713 12715 8826 16602 +12662 12770 12714 12716 8827 16603 +12663 12771 12715 12717 8828 16604 +12664 12772 12716 12718 8829 16605 +12665 12773 12717 12719 8830 16606 +12666 12774 12718 12720 8831 16607 +12667 12775 12719 12721 8832 16608 +12668 12776 12720 12722 8833 16609 +12669 12777 12721 12723 8834 16610 +12670 12778 12722 12724 8835 16611 +12725 12779 12723 12781 8836 16612 +12670 12782 12724 12726 8837 16613 +12671 12783 12725 12727 8838 16614 +12672 12784 12726 12728 8839 16615 +12673 12785 12727 12729 8840 16616 +12674 12786 12728 12730 8841 16617 +12675 12787 12729 12731 8842 16618 +12676 12788 12730 12732 8843 16619 +12677 12789 12731 12733 8844 16620 +12678 12790 12732 12734 8845 16621 +12679 12791 12733 12735 8846 16622 +12680 12792 12734 12736 8847 16623 +12681 12793 12735 12737 8848 16624 +12682 12794 12736 12738 8849 16625 +12683 12795 12737 12739 8850 16626 +12684 12796 12738 12740 8851 16627 +12685 12797 12739 12741 8852 16628 +12686 12798 12740 12742 8853 16629 +12687 12799 12741 12743 8854 16630 +12688 12800 12742 12744 8855 16631 +12689 12801 12743 12745 8856 16632 +12690 12802 12744 12746 8857 16633 +12691 12803 12745 12747 8858 16634 +12692 12804 12746 12748 8859 16635 +12693 12805 12747 12749 8860 16636 +12694 12806 12748 12750 8861 16637 +12695 12807 12749 12751 8862 16638 +12696 12808 12750 12751 8863 16639 +12697 12809 12752 12753 8864 16640 +12698 12810 12752 12754 8865 16641 +12699 12811 12753 12755 8866 16642 +12700 12812 12754 12756 8867 16643 +12701 12813 12755 12757 8868 16644 +12702 12814 12756 12758 8869 16645 +12703 12815 12757 12759 8870 16646 +12704 12816 12758 12760 8871 16647 +12705 12817 12759 12761 8872 16648 +12706 12818 12760 12762 8873 16649 +12707 12819 12761 12763 8874 16650 +12708 12820 12762 12764 8875 16651 +12709 12821 12763 12765 8876 16652 +12710 12822 12764 12766 8877 16653 +12711 12823 12765 12767 8878 16654 +12712 12824 12766 12768 8879 16655 +12713 12825 12767 12769 8880 16656 +12714 12826 12768 12770 8881 16657 +12715 12827 12769 12771 8882 16658 +12716 12828 12770 12772 8883 16659 +12717 12829 12771 12773 8884 16660 +12718 12830 12772 12774 8885 16661 +12719 12831 12773 12775 8886 16662 +12720 12832 12774 12776 8887 16663 +12721 12833 12775 12777 8888 16664 +12722 12834 12776 12778 8889 16665 +12723 12835 12777 12779 8890 16666 +12724 12836 12778 12780 8891 16667 +12781 12837 12779 12839 8892 16668 +12724 12840 12780 12782 8893 16669 +12725 12841 12781 12783 8894 16670 +12726 12842 12782 12784 8895 16671 +12727 12843 12783 12785 8896 16672 +12728 12844 12784 12786 8897 16673 +12729 12845 12785 12787 8898 16674 +12730 12846 12786 12788 8899 16675 +12731 12847 12787 12789 8900 16676 +12732 12848 12788 12790 8901 16677 +12733 12849 12789 12791 8902 16678 +12734 12850 12790 12792 8903 16679 +12735 12851 12791 12793 8904 16680 +12736 12852 12792 12794 8905 16681 +12737 12853 12793 12795 8906 16682 +12738 12854 12794 12796 8907 16683 +12739 12855 12795 12797 8908 16684 +12740 12856 12796 12798 8909 16685 +12741 12857 12797 12799 8910 16686 +12742 12858 12798 12800 8911 16687 +12743 12859 12799 12801 8912 16688 +12744 12860 12800 12802 8913 16689 +12745 12861 12801 12803 8914 16690 +12746 12862 12802 12804 8915 16691 +12747 12863 12803 12805 8916 16692 +12748 12864 12804 12806 8917 16693 +12749 12865 12805 12807 8918 16694 +12750 12866 12806 12808 8919 16695 +12751 12867 12807 12808 8920 16696 +12752 12868 12809 12810 8921 16697 +12753 12869 12809 12811 8922 16698 +12754 12870 12810 12812 8923 16699 +12755 12871 12811 12813 8924 16700 +12756 12872 12812 12814 8925 16701 +12757 12873 12813 12815 8926 16702 +12758 12874 12814 12816 8927 16703 +12759 12875 12815 12817 8928 16704 +12760 12876 12816 12818 8929 16705 +12761 12877 12817 12819 8930 16706 +12762 12878 12818 12820 8931 16707 +12763 12879 12819 12821 8932 16708 +12764 12880 12820 12822 8933 16709 +12765 12881 12821 12823 8934 16710 +12766 12882 12822 12824 8935 16711 +12767 12883 12823 12825 8936 16712 +12768 12884 12824 12826 8937 16713 +12769 12885 12825 12827 8938 16714 +12770 12886 12826 12828 8939 16715 +12771 12887 12827 12829 8940 16716 +12772 12888 12828 12830 8941 16717 +12773 12889 12829 12831 8942 16718 +12774 12890 12830 12832 8943 16719 +12775 12891 12831 12833 8944 16720 +12776 12892 12832 12834 8945 16721 +12777 12893 12833 12835 8946 16722 +12778 12894 12834 12836 8947 16723 +12779 12895 12835 12837 8948 16724 +12780 12896 12836 12838 8949 16725 +12839 12897 12837 12899 8950 16726 +12780 12900 12838 12840 8951 16727 +12781 12901 12839 12841 8952 16728 +12782 12902 12840 12842 8953 16729 +12783 12903 12841 12843 8954 16730 +12784 12904 12842 12844 8955 16731 +12785 12905 12843 12845 8956 16732 +12786 12906 12844 12846 8957 16733 +12787 12907 12845 12847 8958 16734 +12788 12908 12846 12848 8959 16735 +12789 12909 12847 12849 8960 16736 +12790 12910 12848 12850 8961 16737 +12791 12911 12849 12851 8962 16738 +12792 12912 12850 12852 8963 16739 +12793 12913 12851 12853 8964 16740 +12794 12914 12852 12854 8965 16741 +12795 12915 12853 12855 8966 16742 +12796 12916 12854 12856 8967 16743 +12797 12917 12855 12857 8968 16744 +12798 12918 12856 12858 8969 16745 +12799 12919 12857 12859 8970 16746 +12800 12920 12858 12860 8971 16747 +12801 12921 12859 12861 8972 16748 +12802 12922 12860 12862 8973 16749 +12803 12923 12861 12863 8974 16750 +12804 12924 12862 12864 8975 16751 +12805 12925 12863 12865 8976 16752 +12806 12926 12864 12866 8977 16753 +12807 12927 12865 12867 8978 16754 +12808 12928 12866 12867 8979 16755 +12809 12929 12868 12869 8980 16756 +12810 12930 12868 12870 8981 16757 +12811 12931 12869 12871 8982 16758 +12812 12932 12870 12872 8983 16759 +12813 12933 12871 12873 8984 16760 +12814 12934 12872 12874 8985 16761 +12815 12935 12873 12875 8986 16762 +12816 12936 12874 12876 8987 16763 +12817 12937 12875 12877 8988 16764 +12818 12938 12876 12878 8989 16765 +12819 12939 12877 12879 8990 16766 +12820 12940 12878 12880 8991 16767 +12821 12941 12879 12881 8992 16768 +12822 12942 12880 12882 8993 16769 +12823 12943 12881 12883 8994 16770 +12824 12944 12882 12884 8995 16771 +12825 12945 12883 12885 8996 16772 +12826 12946 12884 12886 8997 16773 +12827 12947 12885 12887 8998 16774 +12828 12948 12886 12888 8999 16775 +12829 12949 12887 12889 9000 16776 +12830 12950 12888 12890 9001 16777 +12831 12951 12889 12891 9002 16778 +12832 12952 12890 12892 9003 16779 +12833 12953 12891 12893 9004 16780 +12834 12954 12892 12894 9005 16781 +12835 12955 12893 12895 9006 16782 +12836 12956 12894 12896 9007 16783 +12837 12957 12895 12897 9008 16784 +12838 12958 12896 12898 9009 16785 +12899 12959 12897 12961 9010 16786 +12838 12962 12898 12900 9011 16787 +12839 12963 12899 12901 9012 16788 +12840 12964 12900 12902 9013 16789 +12841 12965 12901 12903 9014 16790 +12842 12966 12902 12904 9015 16791 +12843 12967 12903 12905 9016 16792 +12844 12968 12904 12906 9017 16793 +12845 12969 12905 12907 9018 16794 +12846 12970 12906 12908 9019 16795 +12847 12971 12907 12909 9020 16796 +12848 12972 12908 12910 9021 16797 +12849 12973 12909 12911 9022 16798 +12850 12974 12910 12912 9023 16799 +12851 12975 12911 12913 9024 16800 +12852 12976 12912 12914 9025 16801 +12853 12977 12913 12915 9026 16802 +12854 12978 12914 12916 9027 16803 +12855 12979 12915 12917 9028 16804 +12856 12980 12916 12918 9029 16805 +12857 12981 12917 12919 9030 16806 +12858 12982 12918 12920 9031 16807 +12859 12983 12919 12921 9032 16808 +12860 12984 12920 12922 9033 16809 +12861 12985 12921 12923 9034 16810 +12862 12986 12922 12924 9035 16811 +12863 12987 12923 12925 9036 16812 +12864 12988 12924 12926 9037 16813 +12865 12989 12925 12927 9038 16814 +12866 12990 12926 12928 9039 16815 +12867 12991 12927 12928 9040 16816 +12868 12992 12929 12930 9041 16817 +12869 12993 12929 12931 9042 16818 +12870 12994 12930 12932 9043 16819 +12871 12995 12931 12933 9044 16820 +12872 12996 12932 12934 9045 16821 +12873 12997 12933 12935 9046 16822 +12874 12998 12934 12936 9047 16823 +12875 12999 12935 12937 9048 16824 +12876 13000 12936 12938 9049 16825 +12877 13001 12937 12939 9050 16826 +12878 13002 12938 12940 9051 16827 +12879 13003 12939 12941 9052 16828 +12880 13004 12940 12942 9053 16829 +12881 13005 12941 12943 9054 16830 +12882 13006 12942 12944 9055 16831 +12883 13007 12943 12945 9056 16832 +12884 13008 12944 12946 9057 16833 +12885 13009 12945 12947 9058 16834 +12886 13010 12946 12948 9059 16835 +12887 13011 12947 12949 9060 16836 +12888 13012 12948 12950 9061 16837 +12889 13013 12949 12951 9062 16838 +12890 13014 12950 12952 9063 16839 +12891 13015 12951 12953 9064 16840 +12892 13016 12952 12954 9065 16841 +12893 13017 12953 12955 9066 16842 +12894 13018 12954 12956 9067 16843 +12895 13019 12955 12957 9068 16844 +12896 13020 12956 12958 9069 16845 +12897 13021 12957 12959 9070 16846 +12898 13022 12958 12960 9071 16847 +12961 13023 12959 13025 9072 16848 +12898 13026 12960 12962 9073 16849 +12899 13027 12961 12963 9074 16850 +12900 13028 12962 12964 9075 16851 +12901 13029 12963 12965 9076 16852 +12902 13030 12964 12966 9077 16853 +12903 13031 12965 12967 9078 16854 +12904 13032 12966 12968 9079 16855 +12905 13033 12967 12969 9080 16856 +12906 13034 12968 12970 9081 16857 +12907 13035 12969 12971 9082 16858 +12908 13036 12970 12972 9083 16859 +12909 13037 12971 12973 9084 16860 +12910 13038 12972 12974 9085 16861 +12911 13039 12973 12975 9086 16862 +12912 13040 12974 12976 9087 16863 +12913 13041 12975 12977 9088 16864 +12914 13042 12976 12978 9089 16865 +12915 13043 12977 12979 9090 16866 +12916 13044 12978 12980 9091 16867 +12917 13045 12979 12981 9092 16868 +12918 13046 12980 12982 9093 16869 +12919 13047 12981 12983 9094 16870 +12920 13048 12982 12984 9095 16871 +12921 13049 12983 12985 9096 16872 +12922 13050 12984 12986 9097 16873 +12923 13051 12985 12987 9098 16874 +12924 13052 12986 12988 9099 16875 +12925 13053 12987 12989 9100 16876 +12926 13054 12988 12990 9101 16877 +12927 13055 12989 12991 9102 16878 +12928 13056 12990 12991 9103 16879 +12929 13057 12992 12993 9104 16880 +12930 13058 12992 12994 9105 16881 +12931 13059 12993 12995 9106 16882 +12932 13060 12994 12996 9107 16883 +12933 13061 12995 12997 9108 16884 +12934 13062 12996 12998 9109 16885 +12935 13063 12997 12999 9110 16886 +12936 13064 12998 13000 9111 16887 +12937 13065 12999 13001 9112 16888 +12938 13066 13000 13002 9113 16889 +12939 13067 13001 13003 9114 16890 +12940 13068 13002 13004 9115 16891 +12941 13069 13003 13005 9116 16892 +12942 13070 13004 13006 9117 16893 +12943 13071 13005 13007 9118 16894 +12944 13072 13006 13008 9119 16895 +12945 13073 13007 13009 9120 16896 +12946 13074 13008 13010 9121 16897 +12947 13075 13009 13011 9122 16898 +12948 13076 13010 13012 9123 16899 +12949 13077 13011 13013 9124 16900 +12950 13078 13012 13014 9125 16901 +12951 13079 13013 13015 9126 16902 +12952 13080 13014 13016 9127 16903 +12953 13081 13015 13017 9128 16904 +12954 13082 13016 13018 9129 16905 +12955 13083 13017 13019 9130 16906 +12956 13084 13018 13020 9131 16907 +12957 13085 13019 13021 9132 16908 +12958 13086 13020 13022 9133 16909 +12959 13087 13021 13023 9134 16910 +12960 13088 13022 13024 9135 16911 +13025 13089 13023 13091 9136 16912 +12960 13092 13024 13026 9137 16913 +12961 13093 13025 13027 9138 16914 +12962 13094 13026 13028 9139 16915 +12963 13095 13027 13029 9140 16916 +12964 13096 13028 13030 9141 16917 +12965 13097 13029 13031 9142 16918 +12966 13098 13030 13032 9143 16919 +12967 13099 13031 13033 9144 16920 +12968 13100 13032 13034 9145 16921 +12969 13101 13033 13035 9146 16922 +12970 13102 13034 13036 9147 16923 +12971 13103 13035 13037 9148 16924 +12972 13104 13036 13038 9149 16925 +12973 13105 13037 13039 9150 16926 +12974 13106 13038 13040 9151 16927 +12975 13107 13039 13041 9152 16928 +12976 13108 13040 13042 9153 16929 +12977 13109 13041 13043 9154 16930 +12978 13110 13042 13044 9155 16931 +12979 13111 13043 13045 9156 16932 +12980 13112 13044 13046 9157 16933 +12981 13113 13045 13047 9158 16934 +12982 13114 13046 13048 9159 16935 +12983 13115 13047 13049 9160 16936 +12984 13116 13048 13050 9161 16937 +12985 13117 13049 13051 9162 16938 +12986 13118 13050 13052 9163 16939 +12987 13119 13051 13053 9164 16940 +12988 13120 13052 13054 9165 16941 +12989 13121 13053 13055 9166 16942 +12990 13122 13054 13056 9167 16943 +12991 13123 13055 13056 9168 16944 +12992 13124 13057 13058 9169 16945 +12993 13125 13057 13059 9170 16946 +12994 13126 13058 13060 9171 16947 +12995 13127 13059 13061 9172 16948 +12996 13128 13060 13062 9173 16949 +12997 13129 13061 13063 9174 16950 +12998 13130 13062 13064 9175 16951 +12999 13131 13063 13065 9176 16952 +13000 13132 13064 13066 9177 16953 +13001 13133 13065 13067 9178 16954 +13002 13134 13066 13068 9179 16955 +13003 13135 13067 13069 9180 16956 +13004 13136 13068 13070 9181 16957 +13005 13137 13069 13071 9182 16958 +13006 13138 13070 13072 9183 16959 +13007 13139 13071 13073 9184 16960 +13008 13140 13072 13074 9185 16961 +13009 13141 13073 13075 9186 16962 +13010 13142 13074 13076 9187 16963 +13011 13143 13075 13077 9188 16964 +13012 13144 13076 13078 9189 16965 +13013 13145 13077 13079 9190 16966 +13014 13146 13078 13080 9191 16967 +13015 13147 13079 13081 9192 16968 +13016 13148 13080 13082 9193 16969 +13017 13149 13081 13083 9194 16970 +13018 13150 13082 13084 9195 16971 +13019 13151 13083 13085 9196 16972 +13020 13152 13084 13086 9197 16973 +13021 13153 13085 13087 9198 16974 +13022 13154 13086 13088 9199 16975 +13023 13155 13087 13089 9200 16976 +13024 13156 13088 13090 9201 16977 +13091 13157 13089 13159 9202 16978 +13024 13160 13090 13092 9203 16979 +13025 13161 13091 13093 9204 16980 +13026 13162 13092 13094 9205 16981 +13027 13163 13093 13095 9206 16982 +13028 13164 13094 13096 9207 16983 +13029 13165 13095 13097 9208 16984 +13030 13166 13096 13098 9209 16985 +13031 13167 13097 13099 9210 16986 +13032 13168 13098 13100 9211 16987 +13033 13169 13099 13101 9212 16988 +13034 13170 13100 13102 9213 16989 +13035 13171 13101 13103 9214 16990 +13036 13172 13102 13104 9215 16991 +13037 13173 13103 13105 9216 16992 +13038 13174 13104 13106 9217 16993 +13039 13175 13105 13107 9218 16994 +13040 13176 13106 13108 9219 16995 +13041 13177 13107 13109 9220 16996 +13042 13178 13108 13110 9221 16997 +13043 13179 13109 13111 9222 16998 +13044 13180 13110 13112 9223 16999 +13045 13181 13111 13113 9224 17000 +13046 13182 13112 13114 9225 17001 +13047 13183 13113 13115 9226 17002 +13048 13184 13114 13116 9227 17003 +13049 13185 13115 13117 9228 17004 +13050 13186 13116 13118 9229 17005 +13051 13187 13117 13119 9230 17006 +13052 13188 13118 13120 9231 17007 +13053 13189 13119 13121 9232 17008 +13054 13190 13120 13122 9233 17009 +13055 13191 13121 13123 9234 17010 +13056 13192 13122 13123 9235 17011 +13057 13193 13124 13125 9236 17012 +13058 13194 13124 13126 9237 17013 +13059 13195 13125 13127 9238 17014 +13060 13196 13126 13128 9239 17015 +13061 13197 13127 13129 9240 17016 +13062 13198 13128 13130 9241 17017 +13063 13199 13129 13131 9242 17018 +13064 13200 13130 13132 9243 17019 +13065 13201 13131 13133 9244 17020 +13066 13202 13132 13134 9245 17021 +13067 13203 13133 13135 9246 17022 +13068 13204 13134 13136 9247 17023 +13069 13205 13135 13137 9248 17024 +13070 13206 13136 13138 9249 17025 +13071 13207 13137 13139 9250 17026 +13072 13208 13138 13140 9251 17027 +13073 13209 13139 13141 9252 17028 +13074 13210 13140 13142 9253 17029 +13075 13211 13141 13143 9254 17030 +13076 13212 13142 13144 9255 17031 +13077 13213 13143 13145 9256 17032 +13078 13214 13144 13146 9257 17033 +13079 13215 13145 13147 9258 17034 +13080 13216 13146 13148 9259 17035 +13081 13217 13147 13149 9260 17036 +13082 13218 13148 13150 9261 17037 +13083 13219 13149 13151 9262 17038 +13084 13220 13150 13152 9263 17039 +13085 13221 13151 13153 9264 17040 +13086 13222 13152 13154 9265 17041 +13087 13223 13153 13155 9266 17042 +13088 13224 13154 13156 9267 17043 +13089 13225 13155 13157 9268 17044 +13090 13226 13156 13158 9269 17045 +13159 13227 13157 13229 9270 17046 +13090 13230 13158 13160 9271 17047 +13091 13231 13159 13161 9272 17048 +13092 13232 13160 13162 9273 17049 +13093 13233 13161 13163 9274 17050 +13094 13234 13162 13164 9275 17051 +13095 13235 13163 13165 9276 17052 +13096 13236 13164 13166 9277 17053 +13097 13237 13165 13167 9278 17054 +13098 13238 13166 13168 9279 17055 +13099 13239 13167 13169 9280 17056 +13100 13240 13168 13170 9281 17057 +13101 13241 13169 13171 9282 17058 +13102 13242 13170 13172 9283 17059 +13103 13243 13171 13173 9284 17060 +13104 13244 13172 13174 9285 17061 +13105 13245 13173 13175 9286 17062 +13106 13246 13174 13176 9287 17063 +13107 13247 13175 13177 9288 17064 +13108 13248 13176 13178 9289 17065 +13109 13249 13177 13179 9290 17066 +13110 13250 13178 13180 9291 17067 +13111 13251 13179 13181 9292 17068 +13112 13252 13180 13182 9293 17069 +13113 13253 13181 13183 9294 17070 +13114 13254 13182 13184 9295 17071 +13115 13255 13183 13185 9296 17072 +13116 13256 13184 13186 9297 17073 +13117 13257 13185 13187 9298 17074 +13118 13258 13186 13188 9299 17075 +13119 13259 13187 13189 9300 17076 +13120 13260 13188 13190 9301 17077 +13121 13261 13189 13191 9302 17078 +13122 13262 13190 13192 9303 17079 +13123 13263 13191 13192 9304 17080 +13124 13264 13193 13194 9305 17081 +13125 13265 13193 13195 9306 17082 +13126 13266 13194 13196 9307 17083 +13127 13267 13195 13197 9308 17084 +13128 13268 13196 13198 9309 17085 +13129 13269 13197 13199 9310 17086 +13130 13270 13198 13200 9311 17087 +13131 13271 13199 13201 9312 17088 +13132 13272 13200 13202 9313 17089 +13133 13273 13201 13203 9314 17090 +13134 13274 13202 13204 9315 17091 +13135 13275 13203 13205 9316 17092 +13136 13276 13204 13206 9317 17093 +13137 13277 13205 13207 9318 17094 +13138 13278 13206 13208 9319 17095 +13139 13279 13207 13209 9320 17096 +13140 13280 13208 13210 9321 17097 +13141 13281 13209 13211 9322 17098 +13142 13282 13210 13212 9323 17099 +13143 13283 13211 13213 9324 17100 +13144 13284 13212 13214 9325 17101 +13145 13285 13213 13215 9326 17102 +13146 13286 13214 13216 9327 17103 +13147 13287 13215 13217 9328 17104 +13148 13288 13216 13218 9329 17105 +13149 13289 13217 13219 9330 17106 +13150 13290 13218 13220 9331 17107 +13151 13291 13219 13221 9332 17108 +13152 13292 13220 13222 9333 17109 +13153 13293 13221 13223 9334 17110 +13154 13294 13222 13224 9335 17111 +13155 13295 13223 13225 9336 17112 +13156 13296 13224 13226 9337 17113 +13157 13297 13225 13227 9338 17114 +13158 13298 13226 13228 9339 17115 +13229 13299 13227 13300 9340 17116 +13158 13301 13228 13230 9341 17117 +13159 13302 13229 13231 9342 17118 +13160 13303 13230 13232 9343 17119 +13161 13304 13231 13233 9344 17120 +13162 13305 13232 13234 9345 17121 +13163 13306 13233 13235 9346 17122 +13164 13307 13234 13236 9347 17123 +13165 13308 13235 13237 9348 17124 +13166 13309 13236 13238 9349 17125 +13167 13310 13237 13239 9350 17126 +13168 13311 13238 13240 9351 17127 +13169 13312 13239 13241 9352 17128 +13170 13313 13240 13242 9353 17129 +13171 13314 13241 13243 9354 17130 +13172 13315 13242 13244 9355 17131 +13173 13316 13243 13245 9356 17132 +13174 13317 13244 13246 9357 17133 +13175 13318 13245 13247 9358 17134 +13176 13319 13246 13248 9359 17135 +13177 13320 13247 13249 9360 17136 +13178 13321 13248 13250 9361 17137 +13179 13322 13249 13251 9362 17138 +13180 13323 13250 13252 9363 17139 +13181 13324 13251 13253 9364 17140 +13182 13325 13252 13254 9365 17141 +13183 13326 13253 13255 9366 17142 +13184 13327 13254 13256 9367 17143 +13185 13328 13255 13257 9368 17144 +13186 13329 13256 13258 9369 17145 +13187 13330 13257 13259 9370 17146 +13188 13331 13258 13260 9371 17147 +13189 13332 13259 13261 9372 17148 +13190 13333 13260 13262 9373 17149 +13191 13334 13261 13263 9374 17150 +13192 13335 13262 13263 9375 17151 +13193 13336 13264 13265 9376 17152 +13194 13337 13264 13266 9377 17153 +13195 13338 13265 13267 9378 17154 +13196 13339 13266 13268 9379 17155 +13197 13340 13267 13269 9380 17156 +13198 13341 13268 13270 9381 17157 +13199 13342 13269 13271 9382 17158 +13200 13343 13270 13272 9383 17159 +13201 13344 13271 13273 9384 17160 +13202 13345 13272 13274 9385 17161 +13203 13346 13273 13275 9386 17162 +13204 13347 13274 13276 9387 17163 +13205 13348 13275 13277 9388 17164 +13206 13349 13276 13278 9389 17165 +13207 13350 13277 13279 9390 17166 +13208 13351 13278 13280 9391 17167 +13209 13352 13279 13281 9392 17168 +13210 13353 13280 13282 9393 17169 +13211 13354 13281 13283 9394 17170 +13212 13355 13282 13284 9395 17171 +13213 13356 13283 13285 9396 17172 +13214 13357 13284 13286 9397 17173 +13215 13358 13285 13287 9398 17174 +13216 13359 13286 13288 9399 17175 +13217 13360 13287 13289 9400 17176 +13218 13361 13288 13290 9401 17177 +13219 13362 13289 13291 9402 17178 +13220 13363 13290 13292 9403 17179 +13221 13364 13291 13293 9404 17180 +13222 13365 13292 13294 9405 17181 +13223 13366 13293 13295 9406 17182 +13224 13367 13294 13296 9407 17183 +13225 13368 13295 13297 9408 17184 +13226 13369 13296 13298 9409 17185 +13227 13370 13297 13299 9410 17186 +13228 13371 13298 13300 9411 17187 +13228 13372 13299 13301 9412 17188 +13229 13373 13300 13302 9413 17189 +13230 13374 13301 13303 9414 17190 +13231 13375 13302 13304 9415 17191 +13232 13376 13303 13305 9416 17192 +13233 13377 13304 13306 9417 17193 +13234 13378 13305 13307 9418 17194 +13235 13379 13306 13308 9419 17195 +13236 13380 13307 13309 9420 17196 +13237 13381 13308 13310 9421 17197 +13238 13382 13309 13311 9422 17198 +13239 13383 13310 13312 9423 17199 +13240 13384 13311 13313 9424 17200 +13241 13385 13312 13314 9425 17201 +13242 13386 13313 13315 9426 17202 +13243 13387 13314 13316 9427 17203 +13244 13388 13315 13317 9428 17204 +13245 13389 13316 13318 9429 17205 +13246 13390 13317 13319 9430 17206 +13247 13391 13318 13320 9431 17207 +13248 13392 13319 13321 9432 17208 +13249 13393 13320 13322 9433 17209 +13250 13394 13321 13323 9434 17210 +13251 13395 13322 13324 9435 17211 +13252 13396 13323 13325 9436 17212 +13253 13397 13324 13326 9437 17213 +13254 13398 13325 13327 9438 17214 +13255 13399 13326 13328 9439 17215 +13256 13400 13327 13329 9440 17216 +13257 13401 13328 13330 9441 17217 +13258 13402 13329 13331 9442 17218 +13259 13403 13330 13332 9443 17219 +13260 13404 13331 13333 9444 17220 +13261 13405 13332 13334 9445 17221 +13262 13406 13333 13335 9446 17222 +13263 13407 13334 13335 9447 17223 +13264 13408 13336 13337 9448 17224 +13265 13409 13336 13338 9449 17225 +13266 13410 13337 13339 9450 17226 +13267 13411 13338 13340 9451 17227 +13268 13412 13339 13341 9452 17228 +13269 13413 13340 13342 9453 17229 +13270 13414 13341 13343 9454 17230 +13271 13415 13342 13344 9455 17231 +13272 13416 13343 13345 9456 17232 +13273 13417 13344 13346 9457 17233 +13274 13418 13345 13347 9458 17234 +13275 13419 13346 13348 9459 17235 +13276 13420 13347 13349 9460 17236 +13277 13421 13348 13350 9461 17237 +13278 13422 13349 13351 9462 17238 +13279 13423 13350 13352 9463 17239 +13280 13424 13351 13353 9464 17240 +13281 13425 13352 13354 9465 17241 +13282 13426 13353 13355 9466 17242 +13283 13427 13354 13356 9467 17243 +13284 13428 13355 13357 9468 17244 +13285 13429 13356 13358 9469 17245 +13286 13430 13357 13359 9470 17246 +13287 13431 13358 13360 9471 17247 +13288 13432 13359 13361 9472 17248 +13289 13433 13360 13362 9473 17249 +13290 13434 13361 13363 9474 17250 +13291 13435 13362 13364 9475 17251 +13292 13436 13363 13365 9476 17252 +13293 13437 13364 13366 9477 17253 +13294 13438 13365 13367 9478 17254 +13295 13439 13366 13368 9479 17255 +13296 13440 13367 13369 9480 17256 +13297 13441 13368 13370 9481 17257 +13298 13442 13369 13371 9482 17258 +13299 13443 13370 13372 9483 17259 +13300 13444 13371 13373 9484 17260 +13301 13445 13372 13374 9485 17261 +13302 13446 13373 13375 9486 17262 +13303 13447 13374 13376 9487 17263 +13304 13448 13375 13377 9488 17264 +13305 13449 13376 13378 9489 17265 +13306 13450 13377 13379 9490 17266 +13307 13451 13378 13380 9491 17267 +13308 13452 13379 13381 9492 17268 +13309 13453 13380 13382 9493 17269 +13310 13454 13381 13383 9494 17270 +13311 13455 13382 13384 9495 17271 +13312 13456 13383 13385 9496 17272 +13313 13457 13384 13386 9497 17273 +13314 13458 13385 13387 9498 17274 +13315 13459 13386 13388 9499 17275 +13316 13460 13387 13389 9500 17276 +13317 13461 13388 13390 9501 17277 +13318 13462 13389 13391 9502 17278 +13319 13463 13390 13392 9503 17279 +13320 13464 13391 13393 9504 17280 +13321 13465 13392 13394 9505 17281 +13322 13466 13393 13395 9506 17282 +13323 13467 13394 13396 9507 17283 +13324 13468 13395 13397 9508 17284 +13325 13469 13396 13398 9509 17285 +13326 13470 13397 13399 9510 17286 +13327 13471 13398 13400 9511 17287 +13328 13472 13399 13401 9512 17288 +13329 13473 13400 13402 9513 17289 +13330 13474 13401 13403 9514 17290 +13331 13475 13402 13404 9515 17291 +13332 13476 13403 13405 9516 17292 +13333 13477 13404 13406 9517 17293 +13334 13478 13405 13407 9518 17294 +13335 13479 13406 13407 9519 17295 +13336 13480 13408 13409 9520 17296 +13337 13481 13408 13410 9521 17297 +13338 13482 13409 13411 9522 17298 +13339 13483 13410 13412 9523 17299 +13340 13484 13411 13413 9524 17300 +13341 13485 13412 13414 9525 17301 +13342 13486 13413 13415 9526 17302 +13343 13487 13414 13416 9527 17303 +13344 13488 13415 13417 9528 17304 +13345 13489 13416 13418 9529 17305 +13346 13490 13417 13419 9530 17306 +13347 13491 13418 13420 9531 17307 +13348 13492 13419 13421 9532 17308 +13349 13493 13420 13422 9533 17309 +13350 13494 13421 13423 9534 17310 +13351 13495 13422 13424 9535 17311 +13352 13496 13423 13425 9536 17312 +13353 13497 13424 13426 9537 17313 +13354 13498 13425 13427 9538 17314 +13355 13499 13426 13428 9539 17315 +13356 13500 13427 13429 9540 17316 +13357 13501 13428 13430 9541 17317 +13358 13502 13429 13431 9542 17318 +13359 13503 13430 13432 9543 17319 +13360 13504 13431 13433 9544 17320 +13361 13505 13432 13434 9545 17321 +13362 13506 13433 13435 9546 17322 +13363 13507 13434 13436 9547 17323 +13364 13508 13435 13437 9548 17324 +13365 13509 13436 13438 9549 17325 +13366 13510 13437 13439 9550 17326 +13367 13511 13438 13440 9551 17327 +13368 13512 13439 13441 9552 17328 +13369 13513 13440 13442 9553 17329 +13370 13514 13441 13443 9554 17330 +13371 13515 13442 13444 9555 17331 +13372 13516 13443 13445 9556 17332 +13373 13517 13444 13446 9557 17333 +13374 13518 13445 13447 9558 17334 +13375 13519 13446 13448 9559 17335 +13376 13520 13447 13449 9560 17336 +13377 13521 13448 13450 9561 17337 +13378 13522 13449 13451 9562 17338 +13379 13523 13450 13452 9563 17339 +13380 13524 13451 13453 9564 17340 +13381 13525 13452 13454 9565 17341 +13382 13526 13453 13455 9566 17342 +13383 13527 13454 13456 9567 17343 +13384 13528 13455 13457 9568 17344 +13385 13529 13456 13458 9569 17345 +13386 13530 13457 13459 9570 17346 +13387 13531 13458 13460 9571 17347 +13388 13532 13459 13461 9572 17348 +13389 13533 13460 13462 9573 17349 +13390 13534 13461 13463 9574 17350 +13391 13535 13462 13464 9575 17351 +13392 13536 13463 13465 9576 17352 +13393 13537 13464 13466 9577 17353 +13394 13538 13465 13467 9578 17354 +13395 13539 13466 13468 9579 17355 +13396 13540 13467 13469 9580 17356 +13397 13541 13468 13470 9581 17357 +13398 13542 13469 13471 9582 17358 +13399 13543 13470 13472 9583 17359 +13400 13544 13471 13473 9584 17360 +13401 13545 13472 13474 9585 17361 +13402 13546 13473 13475 9586 17362 +13403 13547 13474 13476 9587 17363 +13404 13548 13475 13477 9588 17364 +13405 13549 13476 13478 9589 17365 +13406 13550 13477 13479 9590 17366 +13407 13551 13478 13479 9591 17367 +13408 13552 13480 13481 9592 17368 +13409 13553 13480 13482 9593 17369 +13410 13554 13481 13483 9594 17370 +13411 13555 13482 13484 9595 17371 +13412 13556 13483 13485 9596 17372 +13413 13557 13484 13486 9597 17373 +13414 13558 13485 13487 9598 17374 +13415 13559 13486 13488 9599 17375 +13416 13560 13487 13489 9600 17376 +13417 13561 13488 13490 9601 17377 +13418 13562 13489 13491 9602 17378 +13419 13563 13490 13492 9603 17379 +13420 13564 13491 13493 9604 17380 +13421 13565 13492 13494 9605 17381 +13422 13566 13493 13495 9606 17382 +13423 13567 13494 13496 9607 17383 +13424 13568 13495 13497 9608 17384 +13425 13569 13496 13498 9609 17385 +13426 13570 13497 13499 9610 17386 +13427 13571 13498 13500 9611 17387 +13428 13572 13499 13501 9612 17388 +13429 13573 13500 13502 9613 17389 +13430 13574 13501 13503 9614 17390 +13431 13575 13502 13504 9615 17391 +13432 13576 13503 13505 9616 17392 +13433 13577 13504 13506 9617 17393 +13434 13578 13505 13507 9618 17394 +13435 13579 13506 13508 9619 17395 +13436 13580 13507 13509 9620 17396 +13437 13581 13508 13510 9621 17397 +13438 13582 13509 13511 9622 17398 +13439 13583 13510 13512 9623 17399 +13440 13584 13511 13513 9624 17400 +13441 13585 13512 13514 9625 17401 +13442 13586 13513 13515 9626 17402 +13443 13587 13514 13516 9627 17403 +13444 13588 13515 13517 9628 17404 +13445 13589 13516 13518 9629 17405 +13446 13590 13517 13519 9630 17406 +13447 13591 13518 13520 9631 17407 +13448 13592 13519 13521 9632 17408 +13449 13593 13520 13522 9633 17409 +13450 13594 13521 13523 9634 17410 +13451 13595 13522 13524 9635 17411 +13452 13596 13523 13525 9636 17412 +13453 13597 13524 13526 9637 17413 +13454 13598 13525 13527 9638 17414 +13455 13599 13526 13528 9639 17415 +13456 13600 13527 13529 9640 17416 +13457 13601 13528 13530 9641 17417 +13458 13602 13529 13531 9642 17418 +13459 13603 13530 13532 9643 17419 +13460 13604 13531 13533 9644 17420 +13461 13605 13532 13534 9645 17421 +13462 13606 13533 13535 9646 17422 +13463 13607 13534 13536 9647 17423 +13464 13608 13535 13537 9648 17424 +13465 13609 13536 13538 9649 17425 +13466 13610 13537 13539 9650 17426 +13467 13611 13538 13540 9651 17427 +13468 13612 13539 13541 9652 17428 +13469 13613 13540 13542 9653 17429 +13470 13614 13541 13543 9654 17430 +13471 13615 13542 13544 9655 17431 +13472 13616 13543 13545 9656 17432 +13473 13617 13544 13546 9657 17433 +13474 13618 13545 13547 9658 17434 +13475 13619 13546 13548 9659 17435 +13476 13620 13547 13549 9660 17436 +13477 13621 13548 13550 9661 17437 +13478 13622 13549 13551 9662 17438 +13479 13623 13550 13551 9663 17439 +13480 13624 13552 13553 9664 17440 +13481 13625 13552 13554 9665 17441 +13482 13626 13553 13555 9666 17442 +13483 13627 13554 13556 9667 17443 +13484 13628 13555 13557 9668 17444 +13485 13629 13556 13558 9669 17445 +13486 13630 13557 13559 9670 17446 +13487 13631 13558 13560 9671 17447 +13488 13632 13559 13561 9672 17448 +13489 13633 13560 13562 9673 17449 +13490 13634 13561 13563 9674 17450 +13491 13635 13562 13564 9675 17451 +13492 13636 13563 13565 9676 17452 +13493 13637 13564 13566 9677 17453 +13494 13638 13565 13567 9678 17454 +13495 13639 13566 13568 9679 17455 +13496 13640 13567 13569 9680 17456 +13497 13641 13568 13570 9681 17457 +13498 13642 13569 13571 9682 17458 +13499 13643 13570 13572 9683 17459 +13500 13644 13571 13573 9684 17460 +13501 13645 13572 13574 9685 17461 +13502 13646 13573 13575 9686 17462 +13503 13647 13574 13576 9687 17463 +13504 13648 13575 13577 9688 17464 +13505 13649 13576 13578 9689 17465 +13506 13650 13577 13579 9690 17466 +13507 13651 13578 13580 9691 17467 +13508 13652 13579 13581 9692 17468 +13509 13653 13580 13582 9693 17469 +13510 13654 13581 13583 9694 17470 +13511 13655 13582 13584 9695 17471 +13512 13656 13583 13585 9696 17472 +13513 13657 13584 13586 9697 17473 +13514 13658 13585 13587 9698 17474 +13515 13659 13586 13588 9699 17475 +13516 13660 13587 13589 9700 17476 +13517 13661 13588 13590 9701 17477 +13518 13662 13589 13591 9702 17478 +13519 13663 13590 13592 9703 17479 +13520 13664 13591 13593 9704 17480 +13521 13665 13592 13594 9705 17481 +13522 13666 13593 13595 9706 17482 +13523 13667 13594 13596 9707 17483 +13524 13668 13595 13597 9708 17484 +13525 13669 13596 13598 9709 17485 +13526 13670 13597 13599 9710 17486 +13527 13671 13598 13600 9711 17487 +13528 13672 13599 13601 9712 17488 +13529 13673 13600 13602 9713 17489 +13530 13674 13601 13603 9714 17490 +13531 13675 13602 13604 9715 17491 +13532 13676 13603 13605 9716 17492 +13533 13677 13604 13606 9717 17493 +13534 13678 13605 13607 9718 17494 +13535 13679 13606 13608 9719 17495 +13536 13680 13607 13609 9720 17496 +13537 13681 13608 13610 9721 17497 +13538 13682 13609 13611 9722 17498 +13539 13683 13610 13612 9723 17499 +13540 13684 13611 13613 9724 17500 +13541 13685 13612 13614 9725 17501 +13542 13686 13613 13615 9726 17502 +13543 13687 13614 13616 9727 17503 +13544 13688 13615 13617 9728 17504 +13545 13689 13616 13618 9729 17505 +13546 13690 13617 13619 9730 17506 +13547 13691 13618 13620 9731 17507 +13548 13692 13619 13621 9732 17508 +13549 13693 13620 13622 9733 17509 +13550 13694 13621 13623 9734 17510 +13551 13695 13622 13623 9735 17511 +13552 13696 13624 13625 9736 17512 +13553 13697 13624 13626 9737 17513 +13554 13698 13625 13627 9738 17514 +13555 13699 13626 13628 9739 17515 +13556 13700 13627 13629 9740 17516 +13557 13701 13628 13630 9741 17517 +13558 13702 13629 13631 9742 17518 +13559 13703 13630 13632 9743 17519 +13560 13704 13631 13633 9744 17520 +13561 13705 13632 13634 9745 17521 +13562 13706 13633 13635 9746 17522 +13563 13707 13634 13636 9747 17523 +13564 13708 13635 13637 9748 17524 +13565 13709 13636 13638 9749 17525 +13566 13710 13637 13639 9750 17526 +13567 13711 13638 13640 9751 17527 +13568 13712 13639 13641 9752 17528 +13569 13713 13640 13642 9753 17529 +13570 13714 13641 13643 9754 17530 +13571 13715 13642 13644 9755 17531 +13572 13716 13643 13645 9756 17532 +13573 13717 13644 13646 9757 17533 +13574 13718 13645 13647 9758 17534 +13575 13719 13646 13648 9759 17535 +13576 13720 13647 13649 9760 17536 +13577 13721 13648 13650 9761 17537 +13578 13722 13649 13651 9762 17538 +13579 13723 13650 13652 9763 17539 +13580 13724 13651 13653 9764 17540 +13581 13725 13652 13654 9765 17541 +13582 13726 13653 13655 9766 17542 +13583 13727 13654 13656 9767 17543 +13584 13728 13655 13657 9768 17544 +13585 13729 13656 13658 9769 17545 +13586 13730 13657 13659 9770 17546 +13587 13731 13658 13660 9771 17547 +13588 13732 13659 13661 9772 17548 +13589 13733 13660 13662 9773 17549 +13590 13734 13661 13663 9774 17550 +13591 13735 13662 13664 9775 17551 +13592 13736 13663 13665 9776 17552 +13593 13737 13664 13666 9777 17553 +13594 13738 13665 13667 9778 17554 +13595 13739 13666 13668 9779 17555 +13596 13740 13667 13669 9780 17556 +13597 13741 13668 13670 9781 17557 +13598 13742 13669 13671 9782 17558 +13599 13743 13670 13672 9783 17559 +13600 13744 13671 13673 9784 17560 +13601 13745 13672 13674 9785 17561 +13602 13746 13673 13675 9786 17562 +13603 13747 13674 13676 9787 17563 +13604 13748 13675 13677 9788 17564 +13605 13749 13676 13678 9789 17565 +13606 13750 13677 13679 9790 17566 +13607 13751 13678 13680 9791 17567 +13608 13752 13679 13681 9792 17568 +13609 13753 13680 13682 9793 17569 +13610 13754 13681 13683 9794 17570 +13611 13755 13682 13684 9795 17571 +13612 13756 13683 13685 9796 17572 +13613 13757 13684 13686 9797 17573 +13614 13758 13685 13687 9798 17574 +13615 13759 13686 13688 9799 17575 +13616 13760 13687 13689 9800 17576 +13617 13761 13688 13690 9801 17577 +13618 13762 13689 13691 9802 17578 +13619 13763 13690 13692 9803 17579 +13620 13764 13691 13693 9804 17580 +13621 13765 13692 13694 9805 17581 +13622 13766 13693 13695 9806 17582 +13623 13767 13694 13695 9807 17583 +13624 13768 13696 13697 9808 17584 +13625 13769 13696 13698 9809 17585 +13626 13770 13697 13699 9810 17586 +13627 13771 13698 13700 9811 17587 +13628 13772 13699 13701 9812 17588 +13629 13773 13700 13702 9813 17589 +13630 13774 13701 13703 9814 17590 +13631 13775 13702 13704 9815 17591 +13632 13776 13703 13705 9816 17592 +13633 13777 13704 13706 9817 17593 +13634 13778 13705 13707 9818 17594 +13635 13779 13706 13708 9819 17595 +13636 13780 13707 13709 9820 17596 +13637 13781 13708 13710 9821 17597 +13638 13782 13709 13711 9822 17598 +13639 13783 13710 13712 9823 17599 +13640 13784 13711 13713 9824 17600 +13641 13785 13712 13714 9825 17601 +13642 13786 13713 13715 9826 17602 +13643 13787 13714 13716 9827 17603 +13644 13788 13715 13717 9828 17604 +13645 13789 13716 13718 9829 17605 +13646 13790 13717 13719 9830 17606 +13647 13791 13718 13720 9831 17607 +13648 13792 13719 13721 9832 17608 +13649 13793 13720 13722 9833 17609 +13650 13794 13721 13723 9834 17610 +13651 13795 13722 13724 9835 17611 +13652 13796 13723 13725 9836 17612 +13653 13797 13724 13726 9837 17613 +13654 13798 13725 13727 9838 17614 +13655 13799 13726 13728 9839 17615 +13656 13800 13727 13729 9840 17616 +13657 13801 13728 13730 9841 17617 +13658 13802 13729 13731 9842 17618 +13659 13803 13730 13732 9843 17619 +13660 13804 13731 13733 9844 17620 +13661 13805 13732 13734 9845 17621 +13662 13806 13733 13735 9846 17622 +13663 13807 13734 13736 9847 17623 +13664 13808 13735 13737 9848 17624 +13665 13809 13736 13738 9849 17625 +13666 13810 13737 13739 9850 17626 +13667 13811 13738 13740 9851 17627 +13668 13812 13739 13741 9852 17628 +13669 13813 13740 13742 9853 17629 +13670 13814 13741 13743 9854 17630 +13671 13815 13742 13744 9855 17631 +13672 13816 13743 13745 9856 17632 +13673 13817 13744 13746 9857 17633 +13674 13818 13745 13747 9858 17634 +13675 13819 13746 13748 9859 17635 +13676 13820 13747 13749 9860 17636 +13677 13821 13748 13750 9861 17637 +13678 13822 13749 13751 9862 17638 +13679 13823 13750 13752 9863 17639 +13680 13824 13751 13753 9864 17640 +13681 13825 13752 13754 9865 17641 +13682 13826 13753 13755 9866 17642 +13683 13827 13754 13756 9867 17643 +13684 13828 13755 13757 9868 17644 +13685 13829 13756 13758 9869 17645 +13686 13830 13757 13759 9870 17646 +13687 13831 13758 13760 9871 17647 +13688 13832 13759 13761 9872 17648 +13689 13833 13760 13762 9873 17649 +13690 13834 13761 13763 9874 17650 +13691 13835 13762 13764 9875 17651 +13692 13836 13763 13765 9876 17652 +13693 13837 13764 13766 9877 17653 +13694 13838 13765 13767 9878 17654 +13695 13839 13766 13767 9879 17655 +13696 13840 13768 13769 9880 17656 +13697 13841 13768 13770 9881 17657 +13698 13842 13769 13771 9882 17658 +13699 13843 13770 13772 9883 17659 +13700 13844 13771 13773 9884 17660 +13701 13845 13772 13774 9885 17661 +13702 13846 13773 13775 9886 17662 +13703 13847 13774 13776 9887 17663 +13704 13848 13775 13777 9888 17664 +13705 13849 13776 13778 9889 17665 +13706 13850 13777 13779 9890 17666 +13707 13851 13778 13780 9891 17667 +13708 13852 13779 13781 9892 17668 +13709 13853 13780 13782 9893 17669 +13710 13854 13781 13783 9894 17670 +13711 13855 13782 13784 9895 17671 +13712 13856 13783 13785 9896 17672 +13713 13857 13784 13786 9897 17673 +13714 13858 13785 13787 9898 17674 +13715 13859 13786 13788 9899 17675 +13716 13860 13787 13789 9900 17676 +13717 13861 13788 13790 9901 17677 +13718 13862 13789 13791 9902 17678 +13719 13863 13790 13792 9903 17679 +13720 13864 13791 13793 9904 17680 +13721 13865 13792 13794 9905 17681 +13722 13866 13793 13795 9906 17682 +13723 13867 13794 13796 9907 17683 +13724 13868 13795 13797 9908 17684 +13725 13869 13796 13798 9909 17685 +13726 13870 13797 13799 9910 17686 +13727 13871 13798 13800 9911 17687 +13728 13872 13799 13801 9912 17688 +13729 13873 13800 13802 9913 17689 +13730 13874 13801 13803 9914 17690 +13731 13875 13802 13804 9915 17691 +13732 13876 13803 13805 9916 17692 +13733 13877 13804 13806 9917 17693 +13734 13878 13805 13807 9918 17694 +13735 13879 13806 13808 9919 17695 +13736 13880 13807 13809 9920 17696 +13737 13881 13808 13810 9921 17697 +13738 13882 13809 13811 9922 17698 +13739 13883 13810 13812 9923 17699 +13740 13884 13811 13813 9924 17700 +13741 13885 13812 13814 9925 17701 +13742 13886 13813 13815 9926 17702 +13743 13887 13814 13816 9927 17703 +13744 13888 13815 13817 9928 17704 +13745 13889 13816 13818 9929 17705 +13746 13890 13817 13819 9930 17706 +13747 13891 13818 13820 9931 17707 +13748 13892 13819 13821 9932 17708 +13749 13893 13820 13822 9933 17709 +13750 13894 13821 13823 9934 17710 +13751 13895 13822 13824 9935 17711 +13752 13896 13823 13825 9936 17712 +13753 13897 13824 13826 9937 17713 +13754 13898 13825 13827 9938 17714 +13755 13899 13826 13828 9939 17715 +13756 13900 13827 13829 9940 17716 +13757 13901 13828 13830 9941 17717 +13758 13902 13829 13831 9942 17718 +13759 13903 13830 13832 9943 17719 +13760 13904 13831 13833 9944 17720 +13761 13905 13832 13834 9945 17721 +13762 13906 13833 13835 9946 17722 +13763 13907 13834 13836 9947 17723 +13764 13908 13835 13837 9948 17724 +13765 13909 13836 13838 9949 17725 +13766 13910 13837 13839 9950 17726 +13767 13911 13838 13839 9951 17727 +13768 13912 13840 13841 9952 17728 +13769 13913 13840 13842 9953 17729 +13770 13914 13841 13843 9954 17730 +13771 13915 13842 13844 9955 17731 +13772 13916 13843 13845 9956 17732 +13773 13917 13844 13846 9957 17733 +13774 13918 13845 13847 9958 17734 +13775 13919 13846 13848 9959 17735 +13776 13920 13847 13849 9960 17736 +13777 13921 13848 13850 9961 17737 +13778 13922 13849 13851 9962 17738 +13779 13923 13850 13852 9963 17739 +13780 13924 13851 13853 9964 17740 +13781 13925 13852 13854 9965 17741 +13782 13926 13853 13855 9966 17742 +13783 13927 13854 13856 9967 17743 +13784 13928 13855 13857 9968 17744 +13785 13929 13856 13858 9969 17745 +13786 13930 13857 13859 9970 17746 +13787 13931 13858 13860 9971 17747 +13788 13932 13859 13861 9972 17748 +13789 13933 13860 13862 9973 17749 +13790 13934 13861 13863 9974 17750 +13791 13935 13862 13864 9975 17751 +13792 13936 13863 13865 9976 17752 +13793 13937 13864 13866 9977 17753 +13794 13938 13865 13867 9978 17754 +13795 13939 13866 13868 9979 17755 +13796 13940 13867 13869 9980 17756 +13797 13941 13868 13870 9981 17757 +13798 13942 13869 13871 9982 17758 +13799 13943 13870 13872 9983 17759 +13800 13944 13871 13873 9984 17760 +13801 13945 13872 13874 9985 17761 +13802 13946 13873 13875 9986 17762 +13803 13947 13874 13876 9987 17763 +13804 13948 13875 13877 9988 17764 +13805 13949 13876 13878 9989 17765 +13806 13950 13877 13879 9990 17766 +13807 13951 13878 13880 9991 17767 +13808 13952 13879 13881 9992 17768 +13809 13953 13880 13882 9993 17769 +13810 13954 13881 13883 9994 17770 +13811 13955 13882 13884 9995 17771 +13812 13956 13883 13885 9996 17772 +13813 13957 13884 13886 9997 17773 +13814 13958 13885 13887 9998 17774 +13815 13959 13886 13888 9999 17775 +13816 13960 13887 13889 10000 17776 +13817 13961 13888 13890 10001 17777 +13818 13962 13889 13891 10002 17778 +13819 13963 13890 13892 10003 17779 +13820 13964 13891 13893 10004 17780 +13821 13965 13892 13894 10005 17781 +13822 13966 13893 13895 10006 17782 +13823 13967 13894 13896 10007 17783 +13824 13968 13895 13897 10008 17784 +13825 13969 13896 13898 10009 17785 +13826 13970 13897 13899 10010 17786 +13827 13971 13898 13900 10011 17787 +13828 13972 13899 13901 10012 17788 +13829 13973 13900 13902 10013 17789 +13830 13974 13901 13903 10014 17790 +13831 13975 13902 13904 10015 17791 +13832 13976 13903 13905 10016 17792 +13833 13977 13904 13906 10017 17793 +13834 13978 13905 13907 10018 17794 +13835 13979 13906 13908 10019 17795 +13836 13980 13907 13909 10020 17796 +13837 13981 13908 13910 10021 17797 +13838 13982 13909 13911 10022 17798 +13839 13983 13910 13911 10023 17799 +13840 13984 13912 13913 10024 17800 +13841 13985 13912 13914 10025 17801 +13842 13986 13913 13915 10026 17802 +13843 13987 13914 13916 10027 17803 +13844 13988 13915 13917 10028 17804 +13845 13989 13916 13918 10029 17805 +13846 13990 13917 13919 10030 17806 +13847 13991 13918 13920 10031 17807 +13848 13992 13919 13921 10032 17808 +13849 13993 13920 13922 10033 17809 +13850 13994 13921 13923 10034 17810 +13851 13995 13922 13924 10035 17811 +13852 13996 13923 13925 10036 17812 +13853 13997 13924 13926 10037 17813 +13854 13998 13925 13927 10038 17814 +13855 13999 13926 13928 10039 17815 +13856 14000 13927 13929 10040 17816 +13857 14001 13928 13930 10041 17817 +13858 14002 13929 13931 10042 17818 +13859 14003 13930 13932 10043 17819 +13860 14004 13931 13933 10044 17820 +13861 14005 13932 13934 10045 17821 +13862 14006 13933 13935 10046 17822 +13863 14007 13934 13936 10047 17823 +13864 14008 13935 13937 10048 17824 +13865 14009 13936 13938 10049 17825 +13866 14010 13937 13939 10050 17826 +13867 14011 13938 13940 10051 17827 +13868 14012 13939 13941 10052 17828 +13869 14013 13940 13942 10053 17829 +13870 14014 13941 13943 10054 17830 +13871 14015 13942 13944 10055 17831 +13872 14016 13943 13945 10056 17832 +13873 14017 13944 13946 10057 17833 +13874 14018 13945 13947 10058 17834 +13875 14019 13946 13948 10059 17835 +13876 14020 13947 13949 10060 17836 +13877 14021 13948 13950 10061 17837 +13878 14022 13949 13951 10062 17838 +13879 14023 13950 13952 10063 17839 +13880 14024 13951 13953 10064 17840 +13881 14025 13952 13954 10065 17841 +13882 14026 13953 13955 10066 17842 +13883 14027 13954 13956 10067 17843 +13884 14028 13955 13957 10068 17844 +13885 14029 13956 13958 10069 17845 +13886 14030 13957 13959 10070 17846 +13887 14031 13958 13960 10071 17847 +13888 14032 13959 13961 10072 17848 +13889 14033 13960 13962 10073 17849 +13890 14034 13961 13963 10074 17850 +13891 14035 13962 13964 10075 17851 +13892 14036 13963 13965 10076 17852 +13893 14037 13964 13966 10077 17853 +13894 14038 13965 13967 10078 17854 +13895 14039 13966 13968 10079 17855 +13896 14040 13967 13969 10080 17856 +13897 14041 13968 13970 10081 17857 +13898 14042 13969 13971 10082 17858 +13899 14043 13970 13972 10083 17859 +13900 14044 13971 13973 10084 17860 +13901 14045 13972 13974 10085 17861 +13902 14046 13973 13975 10086 17862 +13903 14047 13974 13976 10087 17863 +13904 14048 13975 13977 10088 17864 +13905 14049 13976 13978 10089 17865 +13906 14050 13977 13979 10090 17866 +13907 14051 13978 13980 10091 17867 +13908 14052 13979 13981 10092 17868 +13909 14053 13980 13982 10093 17869 +13910 14054 13981 13983 10094 17870 +13911 14055 13982 13983 10095 17871 +13912 14056 13984 13985 10096 17872 +13913 14057 13984 13986 10097 17873 +13914 14058 13985 13987 10098 17874 +13915 14059 13986 13988 10099 17875 +13916 14060 13987 13989 10100 17876 +13917 14061 13988 13990 10101 17877 +13918 14062 13989 13991 10102 17878 +13919 14063 13990 13992 10103 17879 +13920 14064 13991 13993 10104 17880 +13921 14065 13992 13994 10105 17881 +13922 14066 13993 13995 10106 17882 +13923 14067 13994 13996 10107 17883 +13924 14068 13995 13997 10108 17884 +13925 14069 13996 13998 10109 17885 +13926 14070 13997 13999 10110 17886 +13927 14071 13998 14000 10111 17887 +13928 14072 13999 14001 10112 17888 +13929 14073 14000 14002 10113 17889 +13930 14074 14001 14003 10114 17890 +13931 14075 14002 14004 10115 17891 +13932 14076 14003 14005 10116 17892 +13933 14077 14004 14006 10117 17893 +13934 14078 14005 14007 10118 17894 +13935 14079 14006 14008 10119 17895 +13936 14080 14007 14009 10120 17896 +13937 14081 14008 14010 10121 17897 +13938 14082 14009 14011 10122 17898 +13939 14083 14010 14012 10123 17899 +13940 14084 14011 14013 10124 17900 +13941 14085 14012 14014 10125 17901 +13942 14086 14013 14015 10126 17902 +13943 14087 14014 14016 10127 17903 +13944 14088 14015 14017 10128 17904 +13945 14089 14016 14018 10129 17905 +13946 14090 14017 14019 10130 17906 +13947 14091 14018 14020 10131 17907 +13948 14092 14019 14021 10132 17908 +13949 14093 14020 14022 10133 17909 +13950 14094 14021 14023 10134 17910 +13951 14095 14022 14024 10135 17911 +13952 14096 14023 14025 10136 17912 +13953 14097 14024 14026 10137 17913 +13954 14098 14025 14027 10138 17914 +13955 14099 14026 14028 10139 17915 +13956 14100 14027 14029 10140 17916 +13957 14101 14028 14030 10141 17917 +13958 14102 14029 14031 10142 17918 +13959 14103 14030 14032 10143 17919 +13960 14104 14031 14033 10144 17920 +13961 14105 14032 14034 10145 17921 +13962 14106 14033 14035 10146 17922 +13963 14107 14034 14036 10147 17923 +13964 14108 14035 14037 10148 17924 +13965 14109 14036 14038 10149 17925 +13966 14110 14037 14039 10150 17926 +13967 14111 14038 14040 10151 17927 +13968 14112 14039 14041 10152 17928 +13969 14113 14040 14042 10153 17929 +13970 14114 14041 14043 10154 17930 +13971 14115 14042 14044 10155 17931 +13972 14116 14043 14045 10156 17932 +13973 14117 14044 14046 10157 17933 +13974 14118 14045 14047 10158 17934 +13975 14119 14046 14048 10159 17935 +13976 14120 14047 14049 10160 17936 +13977 14121 14048 14050 10161 17937 +13978 14122 14049 14051 10162 17938 +13979 14123 14050 14052 10163 17939 +13980 14124 14051 14053 10164 17940 +13981 14125 14052 14054 10165 17941 +13982 14126 14053 14055 10166 17942 +13983 14127 14054 14055 10167 17943 +13984 14128 14056 14057 10168 17944 +13985 14129 14056 14058 10169 17945 +13986 14130 14057 14059 10170 17946 +13987 14131 14058 14060 10171 17947 +13988 14132 14059 14061 10172 17948 +13989 14133 14060 14062 10173 17949 +13990 14134 14061 14063 10174 17950 +13991 14135 14062 14064 10175 17951 +13992 14136 14063 14065 10176 17952 +13993 14137 14064 14066 10177 17953 +13994 14138 14065 14067 10178 17954 +13995 14139 14066 14068 10179 17955 +13996 14140 14067 14069 10180 17956 +13997 14141 14068 14070 10181 17957 +13998 14142 14069 14071 10182 17958 +13999 14143 14070 14072 10183 17959 +14000 14144 14071 14073 10184 17960 +14001 14145 14072 14074 10185 17961 +14002 14146 14073 14075 10186 17962 +14003 14147 14074 14076 10187 17963 +14004 14148 14075 14077 10188 17964 +14005 14149 14076 14078 10189 17965 +14006 14150 14077 14079 10190 17966 +14007 14151 14078 14080 10191 17967 +14008 14152 14079 14081 10192 17968 +14009 14153 14080 14082 10193 17969 +14010 14154 14081 14083 10194 17970 +14011 14155 14082 14084 10195 17971 +14012 14156 14083 14085 10196 17972 +14013 14157 14084 14086 10197 17973 +14014 14158 14085 14087 10198 17974 +14015 14159 14086 14088 10199 17975 +14016 14160 14087 14089 10200 17976 +14017 14161 14088 14090 10201 17977 +14018 14162 14089 14091 10202 17978 +14019 14163 14090 14092 10203 17979 +14020 14164 14091 14093 10204 17980 +14021 14165 14092 14094 10205 17981 +14022 14166 14093 14095 10206 17982 +14023 14167 14094 14096 10207 17983 +14024 14168 14095 14097 10208 17984 +14025 14169 14096 14098 10209 17985 +14026 14170 14097 14099 10210 17986 +14027 14171 14098 14100 10211 17987 +14028 14172 14099 14101 10212 17988 +14029 14173 14100 14102 10213 17989 +14030 14174 14101 14103 10214 17990 +14031 14175 14102 14104 10215 17991 +14032 14176 14103 14105 10216 17992 +14033 14177 14104 14106 10217 17993 +14034 14178 14105 14107 10218 17994 +14035 14179 14106 14108 10219 17995 +14036 14180 14107 14109 10220 17996 +14037 14181 14108 14110 10221 17997 +14038 14182 14109 14111 10222 17998 +14039 14183 14110 14112 10223 17999 +14040 14184 14111 14113 10224 18000 +14041 14185 14112 14114 10225 18001 +14042 14186 14113 14115 10226 18002 +14043 14187 14114 14116 10227 18003 +14044 14188 14115 14117 10228 18004 +14045 14189 14116 14118 10229 18005 +14046 14190 14117 14119 10230 18006 +14047 14191 14118 14120 10231 18007 +14048 14192 14119 14121 10232 18008 +14049 14193 14120 14122 10233 18009 +14050 14194 14121 14123 10234 18010 +14051 14195 14122 14124 10235 18011 +14052 14196 14123 14125 10236 18012 +14053 14197 14124 14126 10237 18013 +14054 14198 14125 14127 10238 18014 +14055 14199 14126 14127 10239 18015 +14056 14200 14128 14129 10240 18016 +14057 14201 14128 14130 10241 18017 +14058 14202 14129 14131 10242 18018 +14059 14203 14130 14132 10243 18019 +14060 14204 14131 14133 10244 18020 +14061 14205 14132 14134 10245 18021 +14062 14206 14133 14135 10246 18022 +14063 14207 14134 14136 10247 18023 +14064 14208 14135 14137 10248 18024 +14065 14209 14136 14138 10249 18025 +14066 14210 14137 14139 10250 18026 +14067 14211 14138 14140 10251 18027 +14068 14212 14139 14141 10252 18028 +14069 14213 14140 14142 10253 18029 +14070 14214 14141 14143 10254 18030 +14071 14215 14142 14144 10255 18031 +14072 14216 14143 14145 10256 18032 +14073 14217 14144 14146 10257 18033 +14074 14218 14145 14147 10258 18034 +14075 14219 14146 14148 10259 18035 +14076 14220 14147 14149 10260 18036 +14077 14221 14148 14150 10261 18037 +14078 14222 14149 14151 10262 18038 +14079 14223 14150 14152 10263 18039 +14080 14224 14151 14153 10264 18040 +14081 14225 14152 14154 10265 18041 +14082 14226 14153 14155 10266 18042 +14083 14227 14154 14156 10267 18043 +14084 14228 14155 14157 10268 18044 +14085 14229 14156 14158 10269 18045 +14086 14230 14157 14159 10270 18046 +14087 14231 14158 14160 10271 18047 +14088 14232 14159 14161 10272 18048 +14089 14233 14160 14162 10273 18049 +14090 14234 14161 14163 10274 18050 +14091 14235 14162 14164 10275 18051 +14092 14236 14163 14165 10276 18052 +14093 14237 14164 14166 10277 18053 +14094 14238 14165 14167 10278 18054 +14095 14239 14166 14168 10279 18055 +14096 14240 14167 14169 10280 18056 +14097 14241 14168 14170 10281 18057 +14098 14242 14169 14171 10282 18058 +14099 14243 14170 14172 10283 18059 +14100 14244 14171 14173 10284 18060 +14101 14245 14172 14174 10285 18061 +14102 14246 14173 14175 10286 18062 +14103 14247 14174 14176 10287 18063 +14104 14248 14175 14177 10288 18064 +14105 14249 14176 14178 10289 18065 +14106 14250 14177 14179 10290 18066 +14107 14251 14178 14180 10291 18067 +14108 14252 14179 14181 10292 18068 +14109 14253 14180 14182 10293 18069 +14110 14254 14181 14183 10294 18070 +14111 14255 14182 14184 10295 18071 +14112 14256 14183 14185 10296 18072 +14113 14257 14184 14186 10297 18073 +14114 14258 14185 14187 10298 18074 +14115 14259 14186 14188 10299 18075 +14116 14260 14187 14189 10300 18076 +14117 14261 14188 14190 10301 18077 +14118 14262 14189 14191 10302 18078 +14119 14263 14190 14192 10303 18079 +14120 14264 14191 14193 10304 18080 +14121 14265 14192 14194 10305 18081 +14122 14266 14193 14195 10306 18082 +14123 14267 14194 14196 10307 18083 +14124 14268 14195 14197 10308 18084 +14125 14269 14196 14198 10309 18085 +14126 14270 14197 14199 10310 18086 +14127 14271 14198 14199 10311 18087 +14128 14272 14200 14201 10312 18088 +14129 14273 14200 14202 10313 18089 +14130 14274 14201 14203 10314 18090 +14131 14275 14202 14204 10315 18091 +14132 14276 14203 14205 10316 18092 +14133 14277 14204 14206 10317 18093 +14134 14278 14205 14207 10318 18094 +14135 14279 14206 14208 10319 18095 +14136 14280 14207 14209 10320 18096 +14137 14281 14208 14210 10321 18097 +14138 14282 14209 14211 10322 18098 +14139 14283 14210 14212 10323 18099 +14140 14284 14211 14213 10324 18100 +14141 14285 14212 14214 10325 18101 +14142 14286 14213 14215 10326 18102 +14143 14287 14214 14216 10327 18103 +14144 14288 14215 14217 10328 18104 +14145 14289 14216 14218 10329 18105 +14146 14290 14217 14219 10330 18106 +14147 14291 14218 14220 10331 18107 +14148 14292 14219 14221 10332 18108 +14149 14293 14220 14222 10333 18109 +14150 14294 14221 14223 10334 18110 +14151 14295 14222 14224 10335 18111 +14152 14296 14223 14225 10336 18112 +14153 14297 14224 14226 10337 18113 +14154 14298 14225 14227 10338 18114 +14155 14299 14226 14228 10339 18115 +14156 14300 14227 14229 10340 18116 +14157 14301 14228 14230 10341 18117 +14158 14302 14229 14231 10342 18118 +14159 14303 14230 14232 10343 18119 +14160 14304 14231 14233 10344 18120 +14161 14305 14232 14234 10345 18121 +14162 14306 14233 14235 10346 18122 +14163 14307 14234 14236 10347 18123 +14164 14308 14235 14237 10348 18124 +14165 14309 14236 14238 10349 18125 +14166 14310 14237 14239 10350 18126 +14167 14311 14238 14240 10351 18127 +14168 14312 14239 14241 10352 18128 +14169 14313 14240 14242 10353 18129 +14170 14314 14241 14243 10354 18130 +14171 14315 14242 14244 10355 18131 +14172 14316 14243 14245 10356 18132 +14173 14317 14244 14246 10357 18133 +14174 14318 14245 14247 10358 18134 +14175 14319 14246 14248 10359 18135 +14176 14320 14247 14249 10360 18136 +14177 14321 14248 14250 10361 18137 +14178 14322 14249 14251 10362 18138 +14179 14323 14250 14252 10363 18139 +14180 14324 14251 14253 10364 18140 +14181 14325 14252 14254 10365 18141 +14182 14326 14253 14255 10366 18142 +14183 14327 14254 14256 10367 18143 +14184 14328 14255 14257 10368 18144 +14185 14329 14256 14258 10369 18145 +14186 14330 14257 14259 10370 18146 +14187 14331 14258 14260 10371 18147 +14188 14332 14259 14261 10372 18148 +14189 14333 14260 14262 10373 18149 +14190 14334 14261 14263 10374 18150 +14191 14335 14262 14264 10375 18151 +14192 14336 14263 14265 10376 18152 +14193 14337 14264 14266 10377 18153 +14194 14338 14265 14267 10378 18154 +14195 14339 14266 14268 10379 18155 +14196 14340 14267 14269 10380 18156 +14197 14341 14268 14270 10381 18157 +14198 14342 14269 14271 10382 18158 +14199 14343 14270 14271 10383 18159 +14200 14344 14272 14273 10384 18160 +14201 14345 14272 14274 10385 18161 +14202 14346 14273 14275 10386 18162 +14203 14347 14274 14276 10387 18163 +14204 14348 14275 14277 10388 18164 +14205 14349 14276 14278 10389 18165 +14206 14350 14277 14279 10390 18166 +14207 14351 14278 14280 10391 18167 +14208 14352 14279 14281 10392 18168 +14209 14353 14280 14282 10393 18169 +14210 14354 14281 14283 10394 18170 +14211 14355 14282 14284 10395 18171 +14212 14356 14283 14285 10396 18172 +14213 14357 14284 14286 10397 18173 +14214 14358 14285 14287 10398 18174 +14215 14359 14286 14288 10399 18175 +14216 14360 14287 14289 10400 18176 +14217 14361 14288 14290 10401 18177 +14218 14362 14289 14291 10402 18178 +14219 14363 14290 14292 10403 18179 +14220 14364 14291 14293 10404 18180 +14221 14365 14292 14294 10405 18181 +14222 14366 14293 14295 10406 18182 +14223 14367 14294 14296 10407 18183 +14224 14368 14295 14297 10408 18184 +14225 14369 14296 14298 10409 18185 +14226 14370 14297 14299 10410 18186 +14227 14371 14298 14300 10411 18187 +14228 14372 14299 14301 10412 18188 +14229 14373 14300 14302 10413 18189 +14230 14374 14301 14303 10414 18190 +14231 14375 14302 14304 10415 18191 +14232 14376 14303 14305 10416 18192 +14233 14377 14304 14306 10417 18193 +14234 14378 14305 14307 10418 18194 +14235 14379 14306 14308 10419 18195 +14236 14380 14307 14309 10420 18196 +14237 14381 14308 14310 10421 18197 +14238 14382 14309 14311 10422 18198 +14239 14383 14310 14312 10423 18199 +14240 14384 14311 14313 10424 18200 +14241 14385 14312 14314 10425 18201 +14242 14386 14313 14315 10426 18202 +14243 14387 14314 14316 10427 18203 +14244 14388 14315 14317 10428 18204 +14245 14389 14316 14318 10429 18205 +14246 14390 14317 14319 10430 18206 +14247 14391 14318 14320 10431 18207 +14248 14392 14319 14321 10432 18208 +14249 14393 14320 14322 10433 18209 +14250 14394 14321 14323 10434 18210 +14251 14395 14322 14324 10435 18211 +14252 14396 14323 14325 10436 18212 +14253 14397 14324 14326 10437 18213 +14254 14398 14325 14327 10438 18214 +14255 14399 14326 14328 10439 18215 +14256 14400 14327 14329 10440 18216 +14257 14401 14328 14330 10441 18217 +14258 14402 14329 14331 10442 18218 +14259 14403 14330 14332 10443 18219 +14260 14404 14331 14333 10444 18220 +14261 14405 14332 14334 10445 18221 +14262 14406 14333 14335 10446 18222 +14263 14407 14334 14336 10447 18223 +14264 14408 14335 14337 10448 18224 +14265 14409 14336 14338 10449 18225 +14266 14410 14337 14339 10450 18226 +14267 14411 14338 14340 10451 18227 +14268 14412 14339 14341 10452 18228 +14269 14413 14340 14342 10453 18229 +14270 14414 14341 14343 10454 18230 +14271 14415 14342 14343 10455 18231 +14272 14416 14344 14345 10456 18232 +14273 14417 14344 14346 10457 18233 +14274 14418 14345 14347 10458 18234 +14275 14419 14346 14348 10459 18235 +14276 14420 14347 14349 10460 18236 +14277 14421 14348 14350 10461 18237 +14278 14422 14349 14351 10462 18238 +14279 14423 14350 14352 10463 18239 +14280 14424 14351 14353 10464 18240 +14281 14425 14352 14354 10465 18241 +14282 14426 14353 14355 10466 18242 +14283 14427 14354 14356 10467 18243 +14284 14428 14355 14357 10468 18244 +14285 14429 14356 14358 10469 18245 +14286 14430 14357 14359 10470 18246 +14287 14431 14358 14360 10471 18247 +14288 14432 14359 14361 10472 18248 +14289 14433 14360 14362 10473 18249 +14290 14434 14361 14363 10474 18250 +14291 14435 14362 14364 10475 18251 +14292 14436 14363 14365 10476 18252 +14293 14437 14364 14366 10477 18253 +14294 14438 14365 14367 10478 18254 +14295 14439 14366 14368 10479 18255 +14296 14440 14367 14369 10480 18256 +14297 14441 14368 14370 10481 18257 +14298 14442 14369 14371 10482 18258 +14299 14443 14370 14372 10483 18259 +14300 14444 14371 14373 10484 18260 +14301 14445 14372 14374 10485 18261 +14302 14446 14373 14375 10486 18262 +14303 14447 14374 14376 10487 18263 +14304 14448 14375 14377 10488 18264 +14305 14449 14376 14378 10489 18265 +14306 14450 14377 14379 10490 18266 +14307 14451 14378 14380 10491 18267 +14308 14452 14379 14381 10492 18268 +14309 14453 14380 14382 10493 18269 +14310 14454 14381 14383 10494 18270 +14311 14455 14382 14384 10495 18271 +14312 14456 14383 14385 10496 18272 +14313 14457 14384 14386 10497 18273 +14314 14458 14385 14387 10498 18274 +14315 14459 14386 14388 10499 18275 +14316 14460 14387 14389 10500 18276 +14317 14461 14388 14390 10501 18277 +14318 14462 14389 14391 10502 18278 +14319 14463 14390 14392 10503 18279 +14320 14464 14391 14393 10504 18280 +14321 14465 14392 14394 10505 18281 +14322 14466 14393 14395 10506 18282 +14323 14467 14394 14396 10507 18283 +14324 14468 14395 14397 10508 18284 +14325 14469 14396 14398 10509 18285 +14326 14470 14397 14399 10510 18286 +14327 14471 14398 14400 10511 18287 +14328 14472 14399 14401 10512 18288 +14329 14473 14400 14402 10513 18289 +14330 14474 14401 14403 10514 18290 +14331 14475 14402 14404 10515 18291 +14332 14476 14403 14405 10516 18292 +14333 14477 14404 14406 10517 18293 +14334 14478 14405 14407 10518 18294 +14335 14479 14406 14408 10519 18295 +14336 14480 14407 14409 10520 18296 +14337 14481 14408 14410 10521 18297 +14338 14482 14409 14411 10522 18298 +14339 14483 14410 14412 10523 18299 +14340 14484 14411 14413 10524 18300 +14341 14485 14412 14414 10525 18301 +14342 14486 14413 14415 10526 18302 +14343 14487 14414 14415 10527 18303 +14344 14488 14416 14417 10528 18304 +14345 14489 14416 14418 10529 18305 +14346 14490 14417 14419 10530 18306 +14347 14491 14418 14420 10531 18307 +14348 14492 14419 14421 10532 18308 +14349 14493 14420 14422 10533 18309 +14350 14494 14421 14423 10534 18310 +14351 14495 14422 14424 10535 18311 +14352 14496 14423 14425 10536 18312 +14353 14497 14424 14426 10537 18313 +14354 14498 14425 14427 10538 18314 +14355 14499 14426 14428 10539 18315 +14356 14500 14427 14429 10540 18316 +14357 14501 14428 14430 10541 18317 +14358 14502 14429 14431 10542 18318 +14359 14503 14430 14432 10543 18319 +14360 14504 14431 14433 10544 18320 +14361 14505 14432 14434 10545 18321 +14362 14506 14433 14435 10546 18322 +14363 14507 14434 14436 10547 18323 +14364 14508 14435 14437 10548 18324 +14365 14509 14436 14438 10549 18325 +14366 14510 14437 14439 10550 18326 +14367 14511 14438 14440 10551 18327 +14368 14512 14439 14441 10552 18328 +14369 14513 14440 14442 10553 18329 +14370 14514 14441 14443 10554 18330 +14371 14515 14442 14444 10555 18331 +14372 14516 14443 14445 10556 18332 +14373 14517 14444 14446 10557 18333 +14374 14518 14445 14447 10558 18334 +14375 14519 14446 14448 10559 18335 +14376 14520 14447 14449 10560 18336 +14377 14521 14448 14450 10561 18337 +14378 14522 14449 14451 10562 18338 +14379 14523 14450 14452 10563 18339 +14380 14524 14451 14453 10564 18340 +14381 14525 14452 14454 10565 18341 +14382 14526 14453 14455 10566 18342 +14383 14527 14454 14456 10567 18343 +14384 14528 14455 14457 10568 18344 +14385 14529 14456 14458 10569 18345 +14386 14530 14457 14459 10570 18346 +14387 14531 14458 14460 10571 18347 +14388 14532 14459 14461 10572 18348 +14389 14533 14460 14462 10573 18349 +14390 14534 14461 14463 10574 18350 +14391 14535 14462 14464 10575 18351 +14392 14536 14463 14465 10576 18352 +14393 14537 14464 14466 10577 18353 +14394 14538 14465 14467 10578 18354 +14395 14539 14466 14468 10579 18355 +14396 14540 14467 14469 10580 18356 +14397 14541 14468 14470 10581 18357 +14398 14542 14469 14471 10582 18358 +14399 14543 14470 14472 10583 18359 +14400 14544 14471 14473 10584 18360 +14401 14545 14472 14474 10585 18361 +14402 14546 14473 14475 10586 18362 +14403 14547 14474 14476 10587 18363 +14404 14548 14475 14477 10588 18364 +14405 14549 14476 14478 10589 18365 +14406 14550 14477 14479 10590 18366 +14407 14551 14478 14480 10591 18367 +14408 14552 14479 14481 10592 18368 +14409 14553 14480 14482 10593 18369 +14410 14554 14481 14483 10594 18370 +14411 14555 14482 14484 10595 18371 +14412 14556 14483 14485 10596 18372 +14413 14557 14484 14486 10597 18373 +14414 14558 14485 14487 10598 18374 +14415 14559 14486 14487 10599 18375 +14416 14560 14488 14489 10600 18376 +14417 14561 14488 14490 10601 18377 +14418 14562 14489 14491 10602 18378 +14419 14563 14490 14492 10603 18379 +14420 14564 14491 14493 10604 18380 +14421 14565 14492 14494 10605 18381 +14422 14566 14493 14495 10606 18382 +14423 14567 14494 14496 10607 18383 +14424 14568 14495 14497 10608 18384 +14425 14569 14496 14498 10609 18385 +14426 14570 14497 14499 10610 18386 +14427 14571 14498 14500 10611 18387 +14428 14572 14499 14501 10612 18388 +14429 14573 14500 14502 10613 18389 +14430 14574 14501 14503 10614 18390 +14431 14575 14502 14504 10615 18391 +14432 14576 14503 14505 10616 18392 +14433 14577 14504 14506 10617 18393 +14434 14578 14505 14507 10618 18394 +14435 14579 14506 14508 10619 18395 +14436 14580 14507 14509 10620 18396 +14437 14581 14508 14510 10621 18397 +14438 14582 14509 14511 10622 18398 +14439 14583 14510 14512 10623 18399 +14440 14584 14511 14513 10624 18400 +14441 14585 14512 14514 10625 18401 +14442 14586 14513 14515 10626 18402 +14443 14587 14514 14516 10627 18403 +14444 14588 14515 14517 10628 18404 +14445 14589 14516 14518 10629 18405 +14446 14590 14517 14519 10630 18406 +14447 14591 14518 14520 10631 18407 +14448 14592 14519 14521 10632 18408 +14449 14593 14520 14522 10633 18409 +14450 14594 14521 14523 10634 18410 +14451 14595 14522 14524 10635 18411 +14452 14596 14523 14525 10636 18412 +14453 14597 14524 14526 10637 18413 +14454 14598 14525 14527 10638 18414 +14455 14599 14526 14528 10639 18415 +14456 14600 14527 14529 10640 18416 +14457 14601 14528 14530 10641 18417 +14458 14602 14529 14531 10642 18418 +14459 14603 14530 14532 10643 18419 +14460 14604 14531 14533 10644 18420 +14461 14605 14532 14534 10645 18421 +14462 14606 14533 14535 10646 18422 +14463 14607 14534 14536 10647 18423 +14464 14608 14535 14537 10648 18424 +14465 14609 14536 14538 10649 18425 +14466 14610 14537 14539 10650 18426 +14467 14611 14538 14540 10651 18427 +14468 14612 14539 14541 10652 18428 +14469 14613 14540 14542 10653 18429 +14470 14614 14541 14543 10654 18430 +14471 14615 14542 14544 10655 18431 +14472 14616 14543 14545 10656 18432 +14473 14617 14544 14546 10657 18433 +14474 14618 14545 14547 10658 18434 +14475 14619 14546 14548 10659 18435 +14476 14620 14547 14549 10660 18436 +14477 14621 14548 14550 10661 18437 +14478 14622 14549 14551 10662 18438 +14479 14623 14550 14552 10663 18439 +14480 14624 14551 14553 10664 18440 +14481 14625 14552 14554 10665 18441 +14482 14626 14553 14555 10666 18442 +14483 14627 14554 14556 10667 18443 +14484 14628 14555 14557 10668 18444 +14485 14629 14556 14558 10669 18445 +14486 14630 14557 14559 10670 18446 +14487 14631 14558 14559 10671 18447 +14488 14632 14560 14561 10672 18448 +14489 14633 14560 14562 10673 18449 +14490 14634 14561 14563 10674 18450 +14491 14635 14562 14564 10675 18451 +14492 14636 14563 14565 10676 18452 +14493 14637 14564 14566 10677 18453 +14494 14638 14565 14567 10678 18454 +14495 14639 14566 14568 10679 18455 +14496 14640 14567 14569 10680 18456 +14497 14641 14568 14570 10681 18457 +14498 14642 14569 14571 10682 18458 +14499 14643 14570 14572 10683 18459 +14500 14644 14571 14573 10684 18460 +14501 14645 14572 14574 10685 18461 +14502 14646 14573 14575 10686 18462 +14503 14647 14574 14576 10687 18463 +14504 14648 14575 14577 10688 18464 +14505 14649 14576 14578 10689 18465 +14506 14650 14577 14579 10690 18466 +14507 14651 14578 14580 10691 18467 +14508 14652 14579 14581 10692 18468 +14509 14653 14580 14582 10693 18469 +14510 14654 14581 14583 10694 18470 +14511 14655 14582 14584 10695 18471 +14512 14656 14583 14585 10696 18472 +14513 14657 14584 14586 10697 18473 +14514 14658 14585 14587 10698 18474 +14515 14659 14586 14588 10699 18475 +14516 14660 14587 14589 10700 18476 +14517 14661 14588 14590 10701 18477 +14518 14662 14589 14591 10702 18478 +14519 14663 14590 14592 10703 18479 +14520 14664 14591 14593 10704 18480 +14521 14665 14592 14594 10705 18481 +14522 14666 14593 14595 10706 18482 +14523 14667 14594 14596 10707 18483 +14524 14668 14595 14597 10708 18484 +14525 14669 14596 14598 10709 18485 +14526 14670 14597 14599 10710 18486 +14527 14671 14598 14600 10711 18487 +14528 14672 14599 14601 10712 18488 +14529 14673 14600 14602 10713 18489 +14530 14674 14601 14603 10714 18490 +14531 14675 14602 14604 10715 18491 +14532 14676 14603 14605 10716 18492 +14533 14677 14604 14606 10717 18493 +14534 14678 14605 14607 10718 18494 +14535 14679 14606 14608 10719 18495 +14536 14680 14607 14609 10720 18496 +14537 14681 14608 14610 10721 18497 +14538 14682 14609 14611 10722 18498 +14539 14683 14610 14612 10723 18499 +14540 14684 14611 14613 10724 18500 +14541 14685 14612 14614 10725 18501 +14542 14686 14613 14615 10726 18502 +14543 14687 14614 14616 10727 18503 +14544 14688 14615 14617 10728 18504 +14545 14689 14616 14618 10729 18505 +14546 14690 14617 14619 10730 18506 +14547 14691 14618 14620 10731 18507 +14548 14692 14619 14621 10732 18508 +14549 14693 14620 14622 10733 18509 +14550 14694 14621 14623 10734 18510 +14551 14695 14622 14624 10735 18511 +14552 14696 14623 14625 10736 18512 +14553 14697 14624 14626 10737 18513 +14554 14698 14625 14627 10738 18514 +14555 14699 14626 14628 10739 18515 +14556 14700 14627 14629 10740 18516 +14557 14701 14628 14630 10741 18517 +14558 14702 14629 14631 10742 18518 +14559 14703 14630 14631 10743 18519 +14560 14704 14632 14633 10744 18520 +14561 14705 14632 14634 10745 18521 +14562 14706 14633 14635 10746 18522 +14563 14707 14634 14636 10747 18523 +14564 14708 14635 14637 10748 18524 +14565 14709 14636 14638 10749 18525 +14566 14710 14637 14639 10750 18526 +14567 14711 14638 14640 10751 18527 +14568 14712 14639 14641 10752 18528 +14569 14713 14640 14642 10753 18529 +14570 14714 14641 14643 10754 18530 +14571 14715 14642 14644 10755 18531 +14572 14716 14643 14645 10756 18532 +14573 14717 14644 14646 10757 18533 +14574 14718 14645 14647 10758 18534 +14575 14719 14646 14648 10759 18535 +14576 14720 14647 14649 10760 18536 +14577 14721 14648 14650 10761 18537 +14578 14722 14649 14651 10762 18538 +14579 14723 14650 14652 10763 18539 +14580 14724 14651 14653 10764 18540 +14581 14725 14652 14654 10765 18541 +14582 14726 14653 14655 10766 18542 +14583 14727 14654 14656 10767 18543 +14584 14728 14655 14657 10768 18544 +14585 14729 14656 14658 10769 18545 +14586 14730 14657 14659 10770 18546 +14587 14731 14658 14660 10771 18547 +14588 14732 14659 14661 10772 18548 +14589 14733 14660 14662 10773 18549 +14590 14734 14661 14663 10774 18550 +14591 14735 14662 14664 10775 18551 +14592 14736 14663 14665 10776 18552 +14593 14737 14664 14666 10777 18553 +14594 14738 14665 14667 10778 18554 +14595 14739 14666 14668 10779 18555 +14596 14740 14667 14669 10780 18556 +14597 14741 14668 14670 10781 18557 +14598 14742 14669 14671 10782 18558 +14599 14743 14670 14672 10783 18559 +14600 14744 14671 14673 10784 18560 +14601 14745 14672 14674 10785 18561 +14602 14746 14673 14675 10786 18562 +14603 14747 14674 14676 10787 18563 +14604 14748 14675 14677 10788 18564 +14605 14749 14676 14678 10789 18565 +14606 14750 14677 14679 10790 18566 +14607 14751 14678 14680 10791 18567 +14608 14752 14679 14681 10792 18568 +14609 14753 14680 14682 10793 18569 +14610 14754 14681 14683 10794 18570 +14611 14755 14682 14684 10795 18571 +14612 14756 14683 14685 10796 18572 +14613 14757 14684 14686 10797 18573 +14614 14758 14685 14687 10798 18574 +14615 14759 14686 14688 10799 18575 +14616 14760 14687 14689 10800 18576 +14617 14761 14688 14690 10801 18577 +14618 14762 14689 14691 10802 18578 +14619 14763 14690 14692 10803 18579 +14620 14764 14691 14693 10804 18580 +14621 14765 14692 14694 10805 18581 +14622 14766 14693 14695 10806 18582 +14623 14767 14694 14696 10807 18583 +14624 14768 14695 14697 10808 18584 +14625 14769 14696 14698 10809 18585 +14626 14770 14697 14699 10810 18586 +14627 14771 14698 14700 10811 18587 +14628 14772 14699 14701 10812 18588 +14629 14773 14700 14702 10813 18589 +14630 14774 14701 14703 10814 18590 +14631 14775 14702 14703 10815 18591 +14632 14776 14704 14705 10816 18592 +14633 14777 14704 14706 10817 18593 +14634 14778 14705 14707 10818 18594 +14635 14779 14706 14708 10819 18595 +14636 14780 14707 14709 10820 18596 +14637 14781 14708 14710 10821 18597 +14638 14782 14709 14711 10822 18598 +14639 14783 14710 14712 10823 18599 +14640 14784 14711 14713 10824 18600 +14641 14785 14712 14714 10825 18601 +14642 14786 14713 14715 10826 18602 +14643 14787 14714 14716 10827 18603 +14644 14788 14715 14717 10828 18604 +14645 14789 14716 14718 10829 18605 +14646 14790 14717 14719 10830 18606 +14647 14791 14718 14720 10831 18607 +14648 14792 14719 14721 10832 18608 +14649 14793 14720 14722 10833 18609 +14650 14794 14721 14723 10834 18610 +14651 14795 14722 14724 10835 18611 +14652 14796 14723 14725 10836 18612 +14653 14797 14724 14726 10837 18613 +14654 14798 14725 14727 10838 18614 +14655 14799 14726 14728 10839 18615 +14656 14800 14727 14729 10840 18616 +14657 14801 14728 14730 10841 18617 +14658 14802 14729 14731 10842 18618 +14659 14803 14730 14732 10843 18619 +14660 14804 14731 14733 10844 18620 +14661 14805 14732 14734 10845 18621 +14662 14806 14733 14735 10846 18622 +14663 14807 14734 14736 10847 18623 +14664 14808 14735 14737 10848 18624 +14665 14809 14736 14738 10849 18625 +14666 14810 14737 14739 10850 18626 +14667 14811 14738 14740 10851 18627 +14668 14812 14739 14741 10852 18628 +14669 14813 14740 14742 10853 18629 +14670 14814 14741 14743 10854 18630 +14671 14815 14742 14744 10855 18631 +14672 14816 14743 14745 10856 18632 +14673 14817 14744 14746 10857 18633 +14674 14818 14745 14747 10858 18634 +14675 14819 14746 14748 10859 18635 +14676 14820 14747 14749 10860 18636 +14677 14821 14748 14750 10861 18637 +14678 14822 14749 14751 10862 18638 +14679 14823 14750 14752 10863 18639 +14680 14824 14751 14753 10864 18640 +14681 14825 14752 14754 10865 18641 +14682 14826 14753 14755 10866 18642 +14683 14827 14754 14756 10867 18643 +14684 14828 14755 14757 10868 18644 +14685 14829 14756 14758 10869 18645 +14686 14830 14757 14759 10870 18646 +14687 14831 14758 14760 10871 18647 +14688 14832 14759 14761 10872 18648 +14689 14833 14760 14762 10873 18649 +14690 14834 14761 14763 10874 18650 +14691 14835 14762 14764 10875 18651 +14692 14836 14763 14765 10876 18652 +14693 14837 14764 14766 10877 18653 +14694 14838 14765 14767 10878 18654 +14695 14839 14766 14768 10879 18655 +14696 14840 14767 14769 10880 18656 +14697 14841 14768 14770 10881 18657 +14698 14842 14769 14771 10882 18658 +14699 14843 14770 14772 10883 18659 +14700 14844 14771 14773 10884 18660 +14701 14845 14772 14774 10885 18661 +14702 14846 14773 14775 10886 18662 +14703 14847 14774 14775 10887 18663 +14704 14848 14776 14777 10888 18664 +14705 14849 14776 14778 10889 18665 +14706 14850 14777 14779 10890 18666 +14707 14851 14778 14780 10891 18667 +14708 14852 14779 14781 10892 18668 +14709 14853 14780 14782 10893 18669 +14710 14854 14781 14783 10894 18670 +14711 14855 14782 14784 10895 18671 +14712 14856 14783 14785 10896 18672 +14713 14857 14784 14786 10897 18673 +14714 14858 14785 14787 10898 18674 +14715 14859 14786 14788 10899 18675 +14716 14860 14787 14789 10900 18676 +14717 14861 14788 14790 10901 18677 +14718 14862 14789 14791 10902 18678 +14719 14863 14790 14792 10903 18679 +14720 14864 14791 14793 10904 18680 +14721 14865 14792 14794 10905 18681 +14722 14866 14793 14795 10906 18682 +14723 14867 14794 14796 10907 18683 +14724 14868 14795 14797 10908 18684 +14725 14869 14796 14798 10909 18685 +14726 14870 14797 14799 10910 18686 +14727 14871 14798 14800 10911 18687 +14728 14872 14799 14801 10912 18688 +14729 14873 14800 14802 10913 18689 +14730 14874 14801 14803 10914 18690 +14731 14875 14802 14804 10915 18691 +14732 14876 14803 14805 10916 18692 +14733 14877 14804 14806 10917 18693 +14734 14878 14805 14807 10918 18694 +14735 14879 14806 14808 10919 18695 +14736 14880 14807 14809 10920 18696 +14737 14881 14808 14810 10921 18697 +14738 14882 14809 14811 10922 18698 +14739 14883 14810 14812 10923 18699 +14740 14884 14811 14813 10924 18700 +14741 14885 14812 14814 10925 18701 +14742 14886 14813 14815 10926 18702 +14743 14887 14814 14816 10927 18703 +14744 14888 14815 14817 10928 18704 +14745 14889 14816 14818 10929 18705 +14746 14890 14817 14819 10930 18706 +14747 14891 14818 14820 10931 18707 +14748 14892 14819 14821 10932 18708 +14749 14893 14820 14822 10933 18709 +14750 14894 14821 14823 10934 18710 +14751 14895 14822 14824 10935 18711 +14752 14896 14823 14825 10936 18712 +14753 14897 14824 14826 10937 18713 +14754 14898 14825 14827 10938 18714 +14755 14899 14826 14828 10939 18715 +14756 14900 14827 14829 10940 18716 +14757 14901 14828 14830 10941 18717 +14758 14902 14829 14831 10942 18718 +14759 14903 14830 14832 10943 18719 +14760 14904 14831 14833 10944 18720 +14761 14905 14832 14834 10945 18721 +14762 14906 14833 14835 10946 18722 +14763 14907 14834 14836 10947 18723 +14764 14908 14835 14837 10948 18724 +14765 14909 14836 14838 10949 18725 +14766 14910 14837 14839 10950 18726 +14767 14911 14838 14840 10951 18727 +14768 14912 14839 14841 10952 18728 +14769 14913 14840 14842 10953 18729 +14770 14914 14841 14843 10954 18730 +14771 14915 14842 14844 10955 18731 +14772 14916 14843 14845 10956 18732 +14773 14917 14844 14846 10957 18733 +14774 14918 14845 14847 10958 18734 +14775 14919 14846 14847 10959 18735 +14776 14920 14848 14849 10960 18736 +14777 14921 14848 14850 10961 18737 +14778 14922 14849 14851 10962 18738 +14779 14923 14850 14852 10963 18739 +14780 14924 14851 14853 10964 18740 +14781 14925 14852 14854 10965 18741 +14782 14926 14853 14855 10966 18742 +14783 14927 14854 14856 10967 18743 +14784 14928 14855 14857 10968 18744 +14785 14929 14856 14858 10969 18745 +14786 14930 14857 14859 10970 18746 +14787 14931 14858 14860 10971 18747 +14788 14932 14859 14861 10972 18748 +14789 14933 14860 14862 10973 18749 +14790 14934 14861 14863 10974 18750 +14791 14935 14862 14864 10975 18751 +14792 14936 14863 14865 10976 18752 +14793 14937 14864 14866 10977 18753 +14794 14938 14865 14867 10978 18754 +14795 14939 14866 14868 10979 18755 +14796 14940 14867 14869 10980 18756 +14797 14941 14868 14870 10981 18757 +14798 14942 14869 14871 10982 18758 +14799 14943 14870 14872 10983 18759 +14800 14944 14871 14873 10984 18760 +14801 14945 14872 14874 10985 18761 +14802 14946 14873 14875 10986 18762 +14803 14947 14874 14876 10987 18763 +14804 14948 14875 14877 10988 18764 +14805 14949 14876 14878 10989 18765 +14806 14950 14877 14879 10990 18766 +14807 14951 14878 14880 10991 18767 +14808 14952 14879 14881 10992 18768 +14809 14953 14880 14882 10993 18769 +14810 14954 14881 14883 10994 18770 +14811 14955 14882 14884 10995 18771 +14812 14956 14883 14885 10996 18772 +14813 14957 14884 14886 10997 18773 +14814 14958 14885 14887 10998 18774 +14815 14959 14886 14888 10999 18775 +14816 14960 14887 14889 11000 18776 +14817 14961 14888 14890 11001 18777 +14818 14962 14889 14891 11002 18778 +14819 14963 14890 14892 11003 18779 +14820 14964 14891 14893 11004 18780 +14821 14965 14892 14894 11005 18781 +14822 14966 14893 14895 11006 18782 +14823 14967 14894 14896 11007 18783 +14824 14968 14895 14897 11008 18784 +14825 14969 14896 14898 11009 18785 +14826 14970 14897 14899 11010 18786 +14827 14971 14898 14900 11011 18787 +14828 14972 14899 14901 11012 18788 +14829 14973 14900 14902 11013 18789 +14830 14974 14901 14903 11014 18790 +14831 14975 14902 14904 11015 18791 +14832 14976 14903 14905 11016 18792 +14833 14977 14904 14906 11017 18793 +14834 14978 14905 14907 11018 18794 +14835 14979 14906 14908 11019 18795 +14836 14980 14907 14909 11020 18796 +14837 14981 14908 14910 11021 18797 +14838 14982 14909 14911 11022 18798 +14839 14983 14910 14912 11023 18799 +14840 14984 14911 14913 11024 18800 +14841 14985 14912 14914 11025 18801 +14842 14986 14913 14915 11026 18802 +14843 14987 14914 14916 11027 18803 +14844 14988 14915 14917 11028 18804 +14845 14989 14916 14918 11029 18805 +14846 14990 14917 14919 11030 18806 +14847 14991 14918 14919 11031 18807 +14848 14992 14920 14921 11032 18808 +14849 14993 14920 14922 11033 18809 +14850 14994 14921 14923 11034 18810 +14851 14995 14922 14924 11035 18811 +14852 14996 14923 14925 11036 18812 +14853 14997 14924 14926 11037 18813 +14854 14998 14925 14927 11038 18814 +14855 14999 14926 14928 11039 18815 +14856 15000 14927 14929 11040 18816 +14857 15001 14928 14930 11041 18817 +14858 15002 14929 14931 11042 18818 +14859 15003 14930 14932 11043 18819 +14860 15004 14931 14933 11044 18820 +14861 15005 14932 14934 11045 18821 +14862 15006 14933 14935 11046 18822 +14863 15007 14934 14936 11047 18823 +14864 15008 14935 14937 11048 18824 +14865 15009 14936 14938 11049 18825 +14866 15010 14937 14939 11050 18826 +14867 15011 14938 14940 11051 18827 +14868 15012 14939 14941 11052 18828 +14869 15013 14940 14942 11053 18829 +14870 15014 14941 14943 11054 18830 +14871 15015 14942 14944 11055 18831 +14872 15016 14943 14945 11056 18832 +14873 15017 14944 14946 11057 18833 +14874 15018 14945 14947 11058 18834 +14875 15019 14946 14948 11059 18835 +14876 15020 14947 14949 11060 18836 +14877 15021 14948 14950 11061 18837 +14878 15022 14949 14951 11062 18838 +14879 15023 14950 14952 11063 18839 +14880 15024 14951 14953 11064 18840 +14881 15025 14952 14954 11065 18841 +14882 15026 14953 14955 11066 18842 +14883 15027 14954 14956 11067 18843 +14884 15028 14955 14957 11068 18844 +14885 15029 14956 14958 11069 18845 +14886 15030 14957 14959 11070 18846 +14887 15031 14958 14960 11071 18847 +14888 15032 14959 14961 11072 18848 +14889 15033 14960 14962 11073 18849 +14890 15034 14961 14963 11074 18850 +14891 15035 14962 14964 11075 18851 +14892 15036 14963 14965 11076 18852 +14893 15037 14964 14966 11077 18853 +14894 15038 14965 14967 11078 18854 +14895 15039 14966 14968 11079 18855 +14896 15040 14967 14969 11080 18856 +14897 15041 14968 14970 11081 18857 +14898 15042 14969 14971 11082 18858 +14899 15043 14970 14972 11083 18859 +14900 15044 14971 14973 11084 18860 +14901 15045 14972 14974 11085 18861 +14902 15046 14973 14975 11086 18862 +14903 15047 14974 14976 11087 18863 +14904 15048 14975 14977 11088 18864 +14905 15049 14976 14978 11089 18865 +14906 15050 14977 14979 11090 18866 +14907 15051 14978 14980 11091 18867 +14908 15052 14979 14981 11092 18868 +14909 15053 14980 14982 11093 18869 +14910 15054 14981 14983 11094 18870 +14911 15055 14982 14984 11095 18871 +14912 15056 14983 14985 11096 18872 +14913 15057 14984 14986 11097 18873 +14914 15058 14985 14987 11098 18874 +14915 15059 14986 14988 11099 18875 +14916 15060 14987 14989 11100 18876 +14917 15061 14988 14990 11101 18877 +14918 15062 14989 14991 11102 18878 +14919 15063 14990 14991 11103 18879 +14920 15064 14992 14993 11104 18880 +14921 15065 14992 14994 11105 18881 +14922 15066 14993 14995 11106 18882 +14923 15067 14994 14996 11107 18883 +14924 15068 14995 14997 11108 18884 +14925 15069 14996 14998 11109 18885 +14926 15070 14997 14999 11110 18886 +14927 15071 14998 15000 11111 18887 +14928 15072 14999 15001 11112 18888 +14929 15073 15000 15002 11113 18889 +14930 15074 15001 15003 11114 18890 +14931 15075 15002 15004 11115 18891 +14932 15076 15003 15005 11116 18892 +14933 15077 15004 15006 11117 18893 +14934 15078 15005 15007 11118 18894 +14935 15079 15006 15008 11119 18895 +14936 15080 15007 15009 11120 18896 +14937 15081 15008 15010 11121 18897 +14938 15082 15009 15011 11122 18898 +14939 15083 15010 15012 11123 18899 +14940 15084 15011 15013 11124 18900 +14941 15085 15012 15014 11125 18901 +14942 15086 15013 15015 11126 18902 +14943 15087 15014 15016 11127 18903 +14944 15088 15015 15017 11128 18904 +14945 15089 15016 15018 11129 18905 +14946 15090 15017 15019 11130 18906 +14947 15091 15018 15020 11131 18907 +14948 15092 15019 15021 11132 18908 +14949 15093 15020 15022 11133 18909 +14950 15094 15021 15023 11134 18910 +14951 15095 15022 15024 11135 18911 +14952 15096 15023 15025 11136 18912 +14953 15097 15024 15026 11137 18913 +14954 15098 15025 15027 11138 18914 +14955 15099 15026 15028 11139 18915 +14956 15100 15027 15029 11140 18916 +14957 15101 15028 15030 11141 18917 +14958 15102 15029 15031 11142 18918 +14959 15103 15030 15032 11143 18919 +14960 15104 15031 15033 11144 18920 +14961 15105 15032 15034 11145 18921 +14962 15106 15033 15035 11146 18922 +14963 15107 15034 15036 11147 18923 +14964 15108 15035 15037 11148 18924 +14965 15109 15036 15038 11149 18925 +14966 15110 15037 15039 11150 18926 +14967 15111 15038 15040 11151 18927 +14968 15112 15039 15041 11152 18928 +14969 15113 15040 15042 11153 18929 +14970 15114 15041 15043 11154 18930 +14971 15115 15042 15044 11155 18931 +14972 15116 15043 15045 11156 18932 +14973 15117 15044 15046 11157 18933 +14974 15118 15045 15047 11158 18934 +14975 15119 15046 15048 11159 18935 +14976 15120 15047 15049 11160 18936 +14977 15121 15048 15050 11161 18937 +14978 15122 15049 15051 11162 18938 +14979 15123 15050 15052 11163 18939 +14980 15124 15051 15053 11164 18940 +14981 15125 15052 15054 11165 18941 +14982 15126 15053 15055 11166 18942 +14983 15127 15054 15056 11167 18943 +14984 15128 15055 15057 11168 18944 +14985 15129 15056 15058 11169 18945 +14986 15130 15057 15059 11170 18946 +14987 15131 15058 15060 11171 18947 +14988 15132 15059 15061 11172 18948 +14989 15133 15060 15062 11173 18949 +14990 15134 15061 15063 11174 18950 +14991 15135 15062 15063 11175 18951 +14992 15136 15064 15065 11176 18952 +14993 15137 15064 15066 11177 18953 +14994 15138 15065 15067 11178 18954 +14995 15139 15066 15068 11179 18955 +14996 15140 15067 15069 11180 18956 +14997 15141 15068 15070 11181 18957 +14998 15142 15069 15071 11182 18958 +14999 15143 15070 15072 11183 18959 +15000 15144 15071 15073 11184 18960 +15001 15145 15072 15074 11185 18961 +15002 15146 15073 15075 11186 18962 +15003 15147 15074 15076 11187 18963 +15004 15148 15075 15077 11188 18964 +15005 15149 15076 15078 11189 18965 +15006 15150 15077 15079 11190 18966 +15007 15151 15078 15080 11191 18967 +15008 15152 15079 15081 11192 18968 +15009 15153 15080 15082 11193 18969 +15010 15154 15081 15083 11194 18970 +15011 15155 15082 15084 11195 18971 +15012 15156 15083 15085 11196 18972 +15013 15157 15084 15086 11197 18973 +15014 15158 15085 15087 11198 18974 +15015 15159 15086 15088 11199 18975 +15016 15160 15087 15089 11200 18976 +15017 15161 15088 15090 11201 18977 +15018 15162 15089 15091 11202 18978 +15019 15163 15090 15092 11203 18979 +15020 15164 15091 15093 11204 18980 +15021 15165 15092 15094 11205 18981 +15022 15166 15093 15095 11206 18982 +15023 15167 15094 15096 11207 18983 +15024 15168 15095 15097 11208 18984 +15025 15169 15096 15098 11209 18985 +15026 15170 15097 15099 11210 18986 +15027 15171 15098 15100 11211 18987 +15028 15172 15099 15101 11212 18988 +15029 15173 15100 15102 11213 18989 +15030 15174 15101 15103 11214 18990 +15031 15175 15102 15104 11215 18991 +15032 15176 15103 15105 11216 18992 +15033 15177 15104 15106 11217 18993 +15034 15178 15105 15107 11218 18994 +15035 15179 15106 15108 11219 18995 +15036 15180 15107 15109 11220 18996 +15037 15181 15108 15110 11221 18997 +15038 15182 15109 15111 11222 18998 +15039 15183 15110 15112 11223 18999 +15040 15184 15111 15113 11224 19000 +15041 15185 15112 15114 11225 19001 +15042 15186 15113 15115 11226 19002 +15043 15187 15114 15116 11227 19003 +15044 15188 15115 15117 11228 19004 +15045 15189 15116 15118 11229 19005 +15046 15190 15117 15119 11230 19006 +15047 15191 15118 15120 11231 19007 +15048 15192 15119 15121 11232 19008 +15049 15193 15120 15122 11233 19009 +15050 15194 15121 15123 11234 19010 +15051 15195 15122 15124 11235 19011 +15052 15196 15123 15125 11236 19012 +15053 15197 15124 15126 11237 19013 +15054 15198 15125 15127 11238 19014 +15055 15199 15126 15128 11239 19015 +15056 15200 15127 15129 11240 19016 +15057 15201 15128 15130 11241 19017 +15058 15202 15129 15131 11242 19018 +15059 15203 15130 15132 11243 19019 +15060 15204 15131 15133 11244 19020 +15061 15205 15132 15134 11245 19021 +15062 15206 15133 15135 11246 19022 +15063 15207 15134 15135 11247 19023 +15064 15208 15136 15137 11248 19024 +15065 15209 15136 15138 11249 19025 +15066 15210 15137 15139 11250 19026 +15067 15211 15138 15140 11251 19027 +15068 15212 15139 15141 11252 19028 +15069 15213 15140 15142 11253 19029 +15070 15214 15141 15143 11254 19030 +15071 15215 15142 15144 11255 19031 +15072 15216 15143 15145 11256 19032 +15073 15217 15144 15146 11257 19033 +15074 15218 15145 15147 11258 19034 +15075 15219 15146 15148 11259 19035 +15076 15220 15147 15149 11260 19036 +15077 15221 15148 15150 11261 19037 +15078 15222 15149 15151 11262 19038 +15079 15223 15150 15152 11263 19039 +15080 15224 15151 15153 11264 19040 +15081 15225 15152 15154 11265 19041 +15082 15226 15153 15155 11266 19042 +15083 15227 15154 15156 11267 19043 +15084 15228 15155 15157 11268 19044 +15085 15229 15156 15158 11269 19045 +15086 15230 15157 15159 11270 19046 +15087 15231 15158 15160 11271 19047 +15088 15232 15159 15161 11272 19048 +15089 15233 15160 15162 11273 19049 +15090 15234 15161 15163 11274 19050 +15091 15235 15162 15164 11275 19051 +15092 15236 15163 15165 11276 19052 +15093 15237 15164 15166 11277 19053 +15094 15238 15165 15167 11278 19054 +15095 15239 15166 15168 11279 19055 +15096 15240 15167 15169 11280 19056 +15097 15241 15168 15170 11281 19057 +15098 15242 15169 15171 11282 19058 +15099 15243 15170 15172 11283 19059 +15100 15244 15171 15173 11284 19060 +15101 15245 15172 15174 11285 19061 +15102 15246 15173 15175 11286 19062 +15103 15247 15174 15176 11287 19063 +15104 15248 15175 15177 11288 19064 +15105 15249 15176 15178 11289 19065 +15106 15250 15177 15179 11290 19066 +15107 15251 15178 15180 11291 19067 +15108 15252 15179 15181 11292 19068 +15109 15253 15180 15182 11293 19069 +15110 15254 15181 15183 11294 19070 +15111 15255 15182 15184 11295 19071 +15112 15256 15183 15185 11296 19072 +15113 15257 15184 15186 11297 19073 +15114 15258 15185 15187 11298 19074 +15115 15259 15186 15188 11299 19075 +15116 15260 15187 15189 11300 19076 +15117 15261 15188 15190 11301 19077 +15118 15262 15189 15191 11302 19078 +15119 15263 15190 15192 11303 19079 +15120 15264 15191 15193 11304 19080 +15121 15265 15192 15194 11305 19081 +15122 15266 15193 15195 11306 19082 +15123 15267 15194 15196 11307 19083 +15124 15268 15195 15197 11308 19084 +15125 15269 15196 15198 11309 19085 +15126 15270 15197 15199 11310 19086 +15127 15271 15198 15200 11311 19087 +15128 15272 15199 15201 11312 19088 +15129 15273 15200 15202 11313 19089 +15130 15274 15201 15203 11314 19090 +15131 15275 15202 15204 11315 19091 +15132 15276 15203 15205 11316 19092 +15133 15277 15204 15206 11317 19093 +15134 15278 15205 15207 11318 19094 +15135 15279 15206 15207 11319 19095 +15136 15280 15208 15209 11320 19096 +15137 15281 15208 15210 11321 19097 +15138 15282 15209 15211 11322 19098 +15139 15283 15210 15212 11323 19099 +15140 15284 15211 15213 11324 19100 +15141 15285 15212 15214 11325 19101 +15142 15286 15213 15215 11326 19102 +15143 15287 15214 15216 11327 19103 +15144 15288 15215 15217 11328 19104 +15145 15289 15216 15218 11329 19105 +15146 15290 15217 15219 11330 19106 +15147 15291 15218 15220 11331 19107 +15148 15292 15219 15221 11332 19108 +15149 15293 15220 15222 11333 19109 +15150 15294 15221 15223 11334 19110 +15151 15295 15222 15224 11335 19111 +15152 15296 15223 15225 11336 19112 +15153 15297 15224 15226 11337 19113 +15154 15298 15225 15227 11338 19114 +15155 15299 15226 15228 11339 19115 +15156 15300 15227 15229 11340 19116 +15157 15301 15228 15230 11341 19117 +15158 15302 15229 15231 11342 19118 +15159 15303 15230 15232 11343 19119 +15160 15304 15231 15233 11344 19120 +15161 15305 15232 15234 11345 19121 +15162 15306 15233 15235 11346 19122 +15163 15307 15234 15236 11347 19123 +15164 15308 15235 15237 11348 19124 +15165 15309 15236 15238 11349 19125 +15166 15310 15237 15239 11350 19126 +15167 15311 15238 15240 11351 19127 +15168 15312 15239 15241 11352 19128 +15169 15313 15240 15242 11353 19129 +15170 15314 15241 15243 11354 19130 +15171 15315 15242 15244 11355 19131 +15172 15316 15243 15245 11356 19132 +15173 15317 15244 15246 11357 19133 +15174 15318 15245 15247 11358 19134 +15175 15319 15246 15248 11359 19135 +15176 15320 15247 15249 11360 19136 +15177 15321 15248 15250 11361 19137 +15178 15322 15249 15251 11362 19138 +15179 15323 15250 15252 11363 19139 +15180 15324 15251 15253 11364 19140 +15181 15325 15252 15254 11365 19141 +15182 15326 15253 15255 11366 19142 +15183 15327 15254 15256 11367 19143 +15184 15328 15255 15257 11368 19144 +15185 15329 15256 15258 11369 19145 +15186 15330 15257 15259 11370 19146 +15187 15331 15258 15260 11371 19147 +15188 15332 15259 15261 11372 19148 +15189 15333 15260 15262 11373 19149 +15190 15334 15261 15263 11374 19150 +15191 15335 15262 15264 11375 19151 +15192 15336 15263 15265 11376 19152 +15193 15337 15264 15266 11377 19153 +15194 15338 15265 15267 11378 19154 +15195 15339 15266 15268 11379 19155 +15196 15340 15267 15269 11380 19156 +15197 15341 15268 15270 11381 19157 +15198 15342 15269 15271 11382 19158 +15199 15343 15270 15272 11383 19159 +15200 15344 15271 15273 11384 19160 +15201 15345 15272 15274 11385 19161 +15202 15346 15273 15275 11386 19162 +15203 15347 15274 15276 11387 19163 +15204 15348 15275 15277 11388 19164 +15205 15349 15276 15278 11389 19165 +15206 15350 15277 15279 11390 19166 +15207 15351 15278 15279 11391 19167 +15208 15352 15280 15281 11392 19168 +15209 15353 15280 15282 11393 19169 +15210 15354 15281 15283 11394 19170 +15211 15355 15282 15284 11395 19171 +15212 15356 15283 15285 11396 19172 +15213 15357 15284 15286 11397 19173 +15214 15358 15285 15287 11398 19174 +15215 15359 15286 15288 11399 19175 +15216 15360 15287 15289 11400 19176 +15217 15361 15288 15290 11401 19177 +15218 15362 15289 15291 11402 19178 +15219 15363 15290 15292 11403 19179 +15220 15364 15291 15293 11404 19180 +15221 15365 15292 15294 11405 19181 +15222 15366 15293 15295 11406 19182 +15223 15367 15294 15296 11407 19183 +15224 15368 15295 15297 11408 19184 +15225 15369 15296 15298 11409 19185 +15226 15370 15297 15299 11410 19186 +15227 15371 15298 15300 11411 19187 +15228 15372 15299 15301 11412 19188 +15229 15373 15300 15302 11413 19189 +15230 15374 15301 15303 11414 19190 +15231 15375 15302 15304 11415 19191 +15232 15376 15303 15305 11416 19192 +15233 15377 15304 15306 11417 19193 +15234 15378 15305 15307 11418 19194 +15235 15379 15306 15308 11419 19195 +15236 15380 15307 15309 11420 19196 +15237 15381 15308 15310 11421 19197 +15238 15382 15309 15311 11422 19198 +15239 15383 15310 15312 11423 19199 +15240 15384 15311 15313 11424 19200 +15241 15385 15312 15314 11425 19201 +15242 15386 15313 15315 11426 19202 +15243 15387 15314 15316 11427 19203 +15244 15388 15315 15317 11428 19204 +15245 15389 15316 15318 11429 19205 +15246 15390 15317 15319 11430 19206 +15247 15391 15318 15320 11431 19207 +15248 15392 15319 15321 11432 19208 +15249 15393 15320 15322 11433 19209 +15250 15394 15321 15323 11434 19210 +15251 15395 15322 15324 11435 19211 +15252 15396 15323 15325 11436 19212 +15253 15397 15324 15326 11437 19213 +15254 15398 15325 15327 11438 19214 +15255 15399 15326 15328 11439 19215 +15256 15400 15327 15329 11440 19216 +15257 15401 15328 15330 11441 19217 +15258 15402 15329 15331 11442 19218 +15259 15403 15330 15332 11443 19219 +15260 15404 15331 15333 11444 19220 +15261 15405 15332 15334 11445 19221 +15262 15406 15333 15335 11446 19222 +15263 15407 15334 15336 11447 19223 +15264 15408 15335 15337 11448 19224 +15265 15409 15336 15338 11449 19225 +15266 15410 15337 15339 11450 19226 +15267 15411 15338 15340 11451 19227 +15268 15412 15339 15341 11452 19228 +15269 15413 15340 15342 11453 19229 +15270 15414 15341 15343 11454 19230 +15271 15415 15342 15344 11455 19231 +15272 15416 15343 15345 11456 19232 +15273 15417 15344 15346 11457 19233 +15274 15418 15345 15347 11458 19234 +15275 15419 15346 15348 11459 19235 +15276 15420 15347 15349 11460 19236 +15277 15421 15348 15350 11461 19237 +15278 15422 15349 15351 11462 19238 +15279 15423 15350 15351 11463 19239 +15280 15424 15352 15353 11464 19240 +15281 15425 15352 15354 11465 19241 +15282 15426 15353 15355 11466 19242 +15283 15427 15354 15356 11467 19243 +15284 15428 15355 15357 11468 19244 +15285 15429 15356 15358 11469 19245 +15286 15430 15357 15359 11470 19246 +15287 15431 15358 15360 11471 19247 +15288 15432 15359 15361 11472 19248 +15289 15433 15360 15362 11473 19249 +15290 15434 15361 15363 11474 19250 +15291 15435 15362 15364 11475 19251 +15292 15436 15363 15365 11476 19252 +15293 15437 15364 15366 11477 19253 +15294 15438 15365 15367 11478 19254 +15295 15439 15366 15368 11479 19255 +15296 15440 15367 15369 11480 19256 +15297 15441 15368 15370 11481 19257 +15298 15442 15369 15371 11482 19258 +15299 15443 15370 15372 11483 19259 +15300 15444 15371 15373 11484 19260 +15301 15445 15372 15374 11485 19261 +15302 15446 15373 15375 11486 19262 +15303 15447 15374 15376 11487 19263 +15304 15448 15375 15377 11488 19264 +15305 15449 15376 15378 11489 19265 +15306 15450 15377 15379 11490 19266 +15307 15451 15378 15380 11491 19267 +15308 15452 15379 15381 11492 19268 +15309 15453 15380 15382 11493 19269 +15310 15454 15381 15383 11494 19270 +15311 15455 15382 15384 11495 19271 +15312 15456 15383 15385 11496 19272 +15313 15457 15384 15386 11497 19273 +15314 15458 15385 15387 11498 19274 +15315 15459 15386 15388 11499 19275 +15316 15460 15387 15389 11500 19276 +15317 15461 15388 15390 11501 19277 +15318 15462 15389 15391 11502 19278 +15319 15463 15390 15392 11503 19279 +15320 15464 15391 15393 11504 19280 +15321 15465 15392 15394 11505 19281 +15322 15466 15393 15395 11506 19282 +15323 15467 15394 15396 11507 19283 +15324 15468 15395 15397 11508 19284 +15325 15469 15396 15398 11509 19285 +15326 15470 15397 15399 11510 19286 +15327 15471 15398 15400 11511 19287 +15328 15472 15399 15401 11512 19288 +15329 15473 15400 15402 11513 19289 +15330 15474 15401 15403 11514 19290 +15331 15475 15402 15404 11515 19291 +15332 15476 15403 15405 11516 19292 +15333 15477 15404 15406 11517 19293 +15334 15478 15405 15407 11518 19294 +15335 15479 15406 15408 11519 19295 +15336 15480 15407 15409 11520 19296 +15337 15481 15408 15410 11521 19297 +15338 15482 15409 15411 11522 19298 +15339 15483 15410 15412 11523 19299 +15340 15484 15411 15413 11524 19300 +15341 15485 15412 15414 11525 19301 +15342 15486 15413 15415 11526 19302 +15343 15487 15414 15416 11527 19303 +15344 15488 15415 15417 11528 19304 +15345 15489 15416 15418 11529 19305 +15346 15490 15417 15419 11530 19306 +15347 15491 15418 15420 11531 19307 +15348 15492 15419 15421 11532 19308 +15349 15493 15420 15422 11533 19309 +15350 15494 15421 15423 11534 19310 +15351 15495 15422 15423 11535 19311 +15352 15496 15424 15425 11536 19312 +15353 15497 15424 15426 11537 19313 +15354 15498 15425 15427 11538 19314 +15355 15499 15426 15428 11539 19315 +15356 15500 15427 15429 11540 19316 +15357 15501 15428 15430 11541 19317 +15358 15502 15429 15431 11542 19318 +15359 15503 15430 15432 11543 19319 +15360 15504 15431 15433 11544 19320 +15361 15505 15432 15434 11545 19321 +15362 15506 15433 15435 11546 19322 +15363 15507 15434 15436 11547 19323 +15364 15508 15435 15437 11548 19324 +15365 15509 15436 15438 11549 19325 +15366 15510 15437 15439 11550 19326 +15367 15511 15438 15440 11551 19327 +15368 15512 15439 15441 11552 19328 +15369 15513 15440 15442 11553 19329 +15370 15514 15441 15443 11554 19330 +15371 15515 15442 15444 11555 19331 +15372 15516 15443 15445 11556 19332 +15373 15517 15444 15446 11557 19333 +15374 15518 15445 15447 11558 19334 +15375 15519 15446 15448 11559 19335 +15376 15520 15447 15449 11560 19336 +15377 15521 15448 15450 11561 19337 +15378 15522 15449 15451 11562 19338 +15379 15523 15450 15452 11563 19339 +15380 15524 15451 15453 11564 19340 +15381 15525 15452 15454 11565 19341 +15382 15526 15453 15455 11566 19342 +15383 15527 15454 15456 11567 19343 +15384 15528 15455 15457 11568 19344 +15385 15529 15456 15458 11569 19345 +15386 15530 15457 15459 11570 19346 +15387 15531 15458 15460 11571 19347 +15388 15532 15459 15461 11572 19348 +15389 15533 15460 15462 11573 19349 +15390 15534 15461 15463 11574 19350 +15391 15535 15462 15464 11575 19351 +15392 15536 15463 15465 11576 19352 +15393 15537 15464 15466 11577 19353 +15394 15538 15465 15467 11578 19354 +15395 15539 15466 15468 11579 19355 +15396 15540 15467 15469 11580 19356 +15397 15541 15468 15470 11581 19357 +15398 15542 15469 15471 11582 19358 +15399 15543 15470 15472 11583 19359 +15400 15544 15471 15473 11584 19360 +15401 15545 15472 15474 11585 19361 +15402 15546 15473 15475 11586 19362 +15403 15547 15474 15476 11587 19363 +15404 15548 15475 15477 11588 19364 +15405 15549 15476 15478 11589 19365 +15406 15550 15477 15479 11590 19366 +15407 15551 15478 15480 11591 19367 +15408 15552 15479 15481 11592 19368 +15409 15553 15480 15482 11593 19369 +15410 15554 15481 15483 11594 19370 +15411 15555 15482 15484 11595 19371 +15412 15556 15483 15485 11596 19372 +15413 15557 15484 15486 11597 19373 +15414 15558 15485 15487 11598 19374 +15415 15559 15486 15488 11599 19375 +15416 15560 15487 15489 11600 19376 +15417 15561 15488 15490 11601 19377 +15418 15562 15489 15491 11602 19378 +15419 15563 15490 15492 11603 19379 +15420 15564 15491 15493 11604 19380 +15421 15565 15492 15494 11605 19381 +15422 15566 15493 15495 11606 19382 +15423 15567 15494 15495 11607 19383 +15424 15568 15496 15497 11608 19384 +15425 15569 15496 15498 11609 19385 +15426 15570 15497 15499 11610 19386 +15427 15571 15498 15500 11611 19387 +15428 15572 15499 15501 11612 19388 +15429 15573 15500 15502 11613 19389 +15430 15574 15501 15503 11614 19390 +15431 15575 15502 15504 11615 19391 +15432 15576 15503 15505 11616 19392 +15433 15577 15504 15506 11617 19393 +15434 15578 15505 15507 11618 19394 +15435 15579 15506 15508 11619 19395 +15436 15580 15507 15509 11620 19396 +15437 15581 15508 15510 11621 19397 +15438 15582 15509 15511 11622 19398 +15439 15583 15510 15512 11623 19399 +15440 15584 15511 15513 11624 19400 +15441 15585 15512 15514 11625 19401 +15442 15586 15513 15515 11626 19402 +15443 15587 15514 15516 11627 19403 +15444 15588 15515 15517 11628 19404 +15445 15589 15516 15518 11629 19405 +15446 15590 15517 15519 11630 19406 +15447 15591 15518 15520 11631 19407 +15448 15592 15519 15521 11632 19408 +15449 15593 15520 15522 11633 19409 +15450 15594 15521 15523 11634 19410 +15451 15595 15522 15524 11635 19411 +15452 15596 15523 15525 11636 19412 +15453 15597 15524 15526 11637 19413 +15454 15598 15525 15527 11638 19414 +15455 15599 15526 15528 11639 19415 +15456 15600 15527 15529 11640 19416 +15457 15601 15528 15530 11641 19417 +15458 15602 15529 15531 11642 19418 +15459 15603 15530 15532 11643 19419 +15460 15604 15531 15533 11644 19420 +15461 15605 15532 15534 11645 19421 +15462 15606 15533 15535 11646 19422 +15463 15607 15534 15536 11647 19423 +15464 15608 15535 15537 11648 19424 +15465 15609 15536 15538 11649 19425 +15466 15610 15537 15539 11650 19426 +15467 15611 15538 15540 11651 19427 +15468 15612 15539 15541 11652 19428 +15469 15613 15540 15542 11653 19429 +15470 15614 15541 15543 11654 19430 +15471 15615 15542 15544 11655 19431 +15472 15616 15543 15545 11656 19432 +15473 15617 15544 15546 11657 19433 +15474 15618 15545 15547 11658 19434 +15475 15619 15546 15548 11659 19435 +15476 15620 15547 15549 11660 19436 +15477 15621 15548 15550 11661 19437 +15478 15622 15549 15551 11662 19438 +15479 15623 15550 15552 11663 19439 +15480 15624 15551 15553 11664 19440 +15481 15625 15552 15554 11665 19441 +15482 15626 15553 15555 11666 19442 +15483 15627 15554 15556 11667 19443 +15484 15628 15555 15557 11668 19444 +15485 15629 15556 15558 11669 19445 +15486 15630 15557 15559 11670 19446 +15487 15631 15558 15560 11671 19447 +15488 15632 15559 15561 11672 19448 +15489 15633 15560 15562 11673 19449 +15490 15634 15561 15563 11674 19450 +15491 15635 15562 15564 11675 19451 +15492 15636 15563 15565 11676 19452 +15493 15637 15564 15566 11677 19453 +15494 15638 15565 15567 11678 19454 +15495 15639 15566 15567 11679 19455 +15496 15640 15568 15569 11680 19456 +15497 15641 15568 15570 11681 19457 +15498 15642 15569 15571 11682 19458 +15499 15643 15570 15572 11683 19459 +15500 15644 15571 15573 11684 19460 +15501 15645 15572 15574 11685 19461 +15502 15646 15573 15575 11686 19462 +15503 15647 15574 15576 11687 19463 +15504 15648 15575 15577 11688 19464 +15505 15649 15576 15578 11689 19465 +15506 15650 15577 15579 11690 19466 +15507 15651 15578 15580 11691 19467 +15508 15652 15579 15581 11692 19468 +15509 15653 15580 15582 11693 19469 +15510 15654 15581 15583 11694 19470 +15511 15655 15582 15584 11695 19471 +15512 15656 15583 15585 11696 19472 +15513 15657 15584 15586 11697 19473 +15514 15658 15585 15587 11698 19474 +15515 15659 15586 15588 11699 19475 +15516 15660 15587 15589 11700 19476 +15517 15661 15588 15590 11701 19477 +15518 15662 15589 15591 11702 19478 +15519 15663 15590 15592 11703 19479 +15520 15664 15591 15593 11704 19480 +15521 15665 15592 15594 11705 19481 +15522 15666 15593 15595 11706 19482 +15523 15667 15594 15596 11707 19483 +15524 15668 15595 15597 11708 19484 +15525 15669 15596 15598 11709 19485 +15526 15670 15597 15599 11710 19486 +15527 15671 15598 15600 11711 19487 +15528 15672 15599 15601 11712 19488 +15529 15673 15600 15602 11713 19489 +15530 15674 15601 15603 11714 19490 +15531 15675 15602 15604 11715 19491 +15532 15676 15603 15605 11716 19492 +15533 15677 15604 15606 11717 19493 +15534 15678 15605 15607 11718 19494 +15535 15679 15606 15608 11719 19495 +15536 15680 15607 15609 11720 19496 +15537 15681 15608 15610 11721 19497 +15538 15682 15609 15611 11722 19498 +15539 15683 15610 15612 11723 19499 +15540 15684 15611 15613 11724 19500 +15541 15685 15612 15614 11725 19501 +15542 15686 15613 15615 11726 19502 +15543 15687 15614 15616 11727 19503 +15544 15688 15615 15617 11728 19504 +15545 15689 15616 15618 11729 19505 +15546 15690 15617 15619 11730 19506 +15547 15691 15618 15620 11731 19507 +15548 15692 15619 15621 11732 19508 +15549 15693 15620 15622 11733 19509 +15550 15694 15621 15623 11734 19510 +15551 15695 15622 15624 11735 19511 +15552 15696 15623 15625 11736 19512 +15553 15697 15624 15626 11737 19513 +15554 15698 15625 15627 11738 19514 +15555 15699 15626 15628 11739 19515 +15556 15700 15627 15629 11740 19516 +15557 15701 15628 15630 11741 19517 +15558 15702 15629 15631 11742 19518 +15559 15703 15630 15632 11743 19519 +15560 15704 15631 15633 11744 19520 +15561 15705 15632 15634 11745 19521 +15562 15706 15633 15635 11746 19522 +15563 15707 15634 15636 11747 19523 +15564 15708 15635 15637 11748 19524 +15565 15709 15636 15638 11749 19525 +15566 15710 15637 15639 11750 19526 +15567 15711 15638 15639 11751 19527 +15568 15712 15640 15641 11752 19528 +15569 15713 15640 15642 11753 19529 +15570 15714 15641 15643 11754 19530 +15571 15715 15642 15644 11755 19531 +15572 15716 15643 15645 11756 19532 +15573 15717 15644 15646 11757 19533 +15574 15718 15645 15647 11758 19534 +15575 15719 15646 15648 11759 19535 +15576 15720 15647 15649 11760 19536 +15577 15721 15648 15650 11761 19537 +15578 15722 15649 15651 11762 19538 +15579 15723 15650 15652 11763 19539 +15580 15724 15651 15653 11764 19540 +15581 15725 15652 15654 11765 19541 +15582 15726 15653 15655 11766 19542 +15583 15727 15654 15656 11767 19543 +15584 15728 15655 15657 11768 19544 +15585 15729 15656 15658 11769 19545 +15586 15730 15657 15659 11770 19546 +15587 15731 15658 15660 11771 19547 +15588 15732 15659 15661 11772 19548 +15589 15733 15660 15662 11773 19549 +15590 15734 15661 15663 11774 19550 +15591 15735 15662 15664 11775 19551 +15592 15736 15663 15665 11776 19552 +15593 15737 15664 15666 11777 19553 +15594 15738 15665 15667 11778 19554 +15595 15739 15666 15668 11779 19555 +15596 15740 15667 15669 11780 19556 +15597 15741 15668 15670 11781 19557 +15598 15742 15669 15671 11782 19558 +15599 15743 15670 15672 11783 19559 +15600 15744 15671 15673 11784 19560 +15601 15745 15672 15674 11785 19561 +15602 15746 15673 15675 11786 19562 +15603 15747 15674 15676 11787 19563 +15604 15748 15675 15677 11788 19564 +15605 15749 15676 15678 11789 19565 +15606 15750 15677 15679 11790 19566 +15607 15751 15678 15680 11791 19567 +15608 15752 15679 15681 11792 19568 +15609 15753 15680 15682 11793 19569 +15610 15754 15681 15683 11794 19570 +15611 15755 15682 15684 11795 19571 +15612 15756 15683 15685 11796 19572 +15613 15757 15684 15686 11797 19573 +15614 15758 15685 15687 11798 19574 +15615 15759 15686 15688 11799 19575 +15616 15760 15687 15689 11800 19576 +15617 15761 15688 15690 11801 19577 +15618 15762 15689 15691 11802 19578 +15619 15763 15690 15692 11803 19579 +15620 15764 15691 15693 11804 19580 +15621 15765 15692 15694 11805 19581 +15622 15766 15693 15695 11806 19582 +15623 15767 15694 15696 11807 19583 +15624 15768 15695 15697 11808 19584 +15625 15769 15696 15698 11809 19585 +15626 15770 15697 15699 11810 19586 +15627 15771 15698 15700 11811 19587 +15628 15772 15699 15701 11812 19588 +15629 15773 15700 15702 11813 19589 +15630 15774 15701 15703 11814 19590 +15631 15775 15702 15704 11815 19591 +15632 15776 15703 15705 11816 19592 +15633 15777 15704 15706 11817 19593 +15634 15778 15705 15707 11818 19594 +15635 15779 15706 15708 11819 19595 +15636 15780 15707 15709 11820 19596 +15637 15781 15708 15710 11821 19597 +15638 15782 15709 15711 11822 19598 +15639 15783 15710 15711 11823 19599 +15640 15784 15712 15713 11824 19600 +15641 15785 15712 15714 11825 19601 +15642 15786 15713 15715 11826 19602 +15643 15787 15714 15716 11827 19603 +15644 15788 15715 15717 11828 19604 +15645 15789 15716 15718 11829 19605 +15646 15790 15717 15719 11830 19606 +15647 15791 15718 15720 11831 19607 +15648 15792 15719 15721 11832 19608 +15649 15793 15720 15722 11833 19609 +15650 15794 15721 15723 11834 19610 +15651 15795 15722 15724 11835 19611 +15652 15796 15723 15725 11836 19612 +15653 15797 15724 15726 11837 19613 +15654 15798 15725 15727 11838 19614 +15655 15799 15726 15728 11839 19615 +15656 15800 15727 15729 11840 19616 +15657 15801 15728 15730 11841 19617 +15658 15802 15729 15731 11842 19618 +15659 15803 15730 15732 11843 19619 +15660 15804 15731 15733 11844 19620 +15661 15805 15732 15734 11845 19621 +15662 15806 15733 15735 11846 19622 +15663 15807 15734 15736 11847 19623 +15664 15808 15735 15737 11848 19624 +15665 15809 15736 15738 11849 19625 +15666 15810 15737 15739 11850 19626 +15667 15811 15738 15740 11851 19627 +15668 15812 15739 15741 11852 19628 +15669 15813 15740 15742 11853 19629 +15670 15814 15741 15743 11854 19630 +15671 15815 15742 15744 11855 19631 +15672 15816 15743 15745 11856 19632 +15673 15817 15744 15746 11857 19633 +15674 15818 15745 15747 11858 19634 +15675 15819 15746 15748 11859 19635 +15676 15820 15747 15749 11860 19636 +15677 15821 15748 15750 11861 19637 +15678 15822 15749 15751 11862 19638 +15679 15823 15750 15752 11863 19639 +15680 15824 15751 15753 11864 19640 +15681 15825 15752 15754 11865 19641 +15682 15826 15753 15755 11866 19642 +15683 15827 15754 15756 11867 19643 +15684 15828 15755 15757 11868 19644 +15685 15829 15756 15758 11869 19645 +15686 15830 15757 15759 11870 19646 +15687 15831 15758 15760 11871 19647 +15688 15832 15759 15761 11872 19648 +15689 15833 15760 15762 11873 19649 +15690 15834 15761 15763 11874 19650 +15691 15835 15762 15764 11875 19651 +15692 15836 15763 15765 11876 19652 +15693 15837 15764 15766 11877 19653 +15694 15838 15765 15767 11878 19654 +15695 15839 15766 15768 11879 19655 +15696 15840 15767 15769 11880 19656 +15697 15841 15768 15770 11881 19657 +15698 15842 15769 15771 11882 19658 +15699 15843 15770 15772 11883 19659 +15700 15844 15771 15773 11884 19660 +15701 15845 15772 15774 11885 19661 +15702 15846 15773 15775 11886 19662 +15703 15847 15774 15776 11887 19663 +15704 15848 15775 15777 11888 19664 +15705 15849 15776 15778 11889 19665 +15706 15850 15777 15779 11890 19666 +15707 15851 15778 15780 11891 19667 +15708 15852 15779 15781 11892 19668 +15709 15853 15780 15782 11893 19669 +15710 15854 15781 15783 11894 19670 +15711 15855 15782 15783 11895 19671 +15712 15784 15784 15785 11896 19672 +15713 15785 15784 15786 11897 19673 +15714 15786 15785 15787 11898 19674 +15715 15787 15786 15788 11899 19675 +15716 15788 15787 15789 11900 19676 +15717 15789 15788 15790 11901 19677 +15718 15790 15789 15791 11902 19678 +15719 15791 15790 15792 11903 19679 +15720 15792 15791 15793 11904 19680 +15721 15793 15792 15794 11905 19681 +15722 15794 15793 15795 11906 19682 +15723 15795 15794 15796 11907 19683 +15724 15796 15795 15797 11908 19684 +15725 15797 15796 15798 11909 19685 +15726 15798 15797 15799 11910 19686 +15727 15799 15798 15800 11911 19687 +15728 15800 15799 15801 11912 19688 +15729 15801 15800 15802 11913 19689 +15730 15802 15801 15803 11914 19690 +15731 15803 15802 15804 11915 19691 +15732 15804 15803 15805 11916 19692 +15733 15805 15804 15806 11917 19693 +15734 15806 15805 15807 11918 19694 +15735 15807 15806 15808 11919 19695 +15736 15808 15807 15809 11920 19696 +15737 15809 15808 15810 11921 19697 +15738 15810 15809 15811 11922 19698 +15739 15811 15810 15812 11923 19699 +15740 15812 15811 15813 11924 19700 +15741 15813 15812 15814 11925 19701 +15742 15814 15813 15815 11926 19702 +15743 15815 15814 15816 11927 19703 +15744 15816 15815 15817 11928 19704 +15745 15817 15816 15818 11929 19705 +15746 15818 15817 15819 11930 19706 +15747 15819 15818 15820 11931 19707 +15748 15820 15819 15821 11932 19708 +15749 15821 15820 15822 11933 19709 +15750 15822 15821 15823 11934 19710 +15751 15823 15822 15824 11935 19711 +15752 15824 15823 15825 11936 19712 +15753 15825 15824 15826 11937 19713 +15754 15826 15825 15827 11938 19714 +15755 15827 15826 15828 11939 19715 +15756 15828 15827 15829 11940 19716 +15757 15829 15828 15830 11941 19717 +15758 15830 15829 15831 11942 19718 +15759 15831 15830 15832 11943 19719 +15760 15832 15831 15833 11944 19720 +15761 15833 15832 15834 11945 19721 +15762 15834 15833 15835 11946 19722 +15763 15835 15834 15836 11947 19723 +15764 15836 15835 15837 11948 19724 +15765 15837 15836 15838 11949 19725 +15766 15838 15837 15839 11950 19726 +15767 15839 15838 15840 11951 19727 +15768 15840 15839 15841 11952 19728 +15769 15841 15840 15842 11953 19729 +15770 15842 15841 15843 11954 19730 +15771 15843 15842 15844 11955 19731 +15772 15844 15843 15845 11956 19732 +15773 15845 15844 15846 11957 19733 +15774 15846 15845 15847 11958 19734 +15775 15847 15846 15848 11959 19735 +15776 15848 15847 15849 11960 19736 +15777 15849 15848 15850 11961 19737 +15778 15850 15849 15851 11962 19738 +15779 15851 15850 15852 11963 19739 +15780 15852 15851 15853 11964 19740 +15781 15853 15852 15854 11965 19741 +15782 15854 15853 15855 11966 19742 +15783 15855 15854 15855 11967 19743 +15856 15857 15856 15859 11968 19744 +15856 15860 15857 15858 11969 19745 +15859 15861 15857 15863 11970 19746 +15856 15864 15858 15859 11971 19747 +15857 15865 15860 15861 11972 19748 +15858 15866 15860 15862 11973 19749 +15863 15867 15861 15869 11974 19750 +15858 15870 15862 15864 11975 19751 +15859 15871 15863 15864 11976 19752 +15860 15872 15865 15866 11977 19753 +15861 15873 15865 15867 11978 19754 +15862 15874 15866 15868 11979 19755 +15869 15875 15867 15877 11980 19756 +15862 15878 15868 15870 11981 19757 +15863 15879 15869 15871 11982 19758 +15864 15880 15870 15871 11983 19759 +15865 15881 15872 15873 11984 19760 +15866 15882 15872 15874 11985 19761 +15867 15883 15873 15875 11986 19762 +15868 15884 15874 15876 11987 19763 +15877 15885 15875 15887 11988 19764 +15868 15888 15876 15878 11989 19765 +15869 15889 15877 15879 11990 19766 +15870 15890 15878 15880 11991 19767 +15871 15891 15879 15880 11992 19768 +15872 15892 15881 15882 11993 19769 +15873 15893 15881 15883 11994 19770 +15874 15894 15882 15884 11995 19771 +15875 15895 15883 15885 11996 19772 +15876 15896 15884 15886 11997 19773 +15887 15897 15885 15899 11998 19774 +15876 15900 15886 15888 11999 19775 +15877 15901 15887 15889 12000 19776 +15878 15902 15888 15890 12001 19777 +15879 15903 15889 15891 12002 19778 +15880 15904 15890 15891 12003 19779 +15881 15905 15892 15893 12004 19780 +15882 15906 15892 15894 12005 19781 +15883 15907 15893 15895 12006 19782 +15884 15908 15894 15896 12007 19783 +15885 15909 15895 15897 12008 19784 +15886 15910 15896 15898 12009 19785 +15899 15911 15897 15913 12010 19786 +15886 15914 15898 15900 12011 19787 +15887 15915 15899 15901 12012 19788 +15888 15916 15900 15902 12013 19789 +15889 15917 15901 15903 12014 19790 +15890 15918 15902 15904 12015 19791 +15891 15919 15903 15904 12016 19792 +15892 15920 15905 15906 12017 19793 +15893 15921 15905 15907 12018 19794 +15894 15922 15906 15908 12019 19795 +15895 15923 15907 15909 12020 19796 +15896 15924 15908 15910 12021 19797 +15897 15925 15909 15911 12022 19798 +15898 15926 15910 15912 12023 19799 +15913 15927 15911 15929 12024 19800 +15898 15930 15912 15914 12025 19801 +15899 15931 15913 15915 12026 19802 +15900 15932 15914 15916 12027 19803 +15901 15933 15915 15917 12028 19804 +15902 15934 15916 15918 12029 19805 +15903 15935 15917 15919 12030 19806 +15904 15936 15918 15919 12031 19807 +15905 15937 15920 15921 12032 19808 +15906 15938 15920 15922 12033 19809 +15907 15939 15921 15923 12034 19810 +15908 15940 15922 15924 12035 19811 +15909 15941 15923 15925 12036 19812 +15910 15942 15924 15926 12037 19813 +15911 15943 15925 15927 12038 19814 +15912 15944 15926 15928 12039 19815 +15929 15945 15927 15947 12040 19816 +15912 15948 15928 15930 12041 19817 +15913 15949 15929 15931 12042 19818 +15914 15950 15930 15932 12043 19819 +15915 15951 15931 15933 12044 19820 +15916 15952 15932 15934 12045 19821 +15917 15953 15933 15935 12046 19822 +15918 15954 15934 15936 12047 19823 +15919 15955 15935 15936 12048 19824 +15920 15956 15937 15938 12049 19825 +15921 15957 15937 15939 12050 19826 +15922 15958 15938 15940 12051 19827 +15923 15959 15939 15941 12052 19828 +15924 15960 15940 15942 12053 19829 +15925 15961 15941 15943 12054 19830 +15926 15962 15942 15944 12055 19831 +15927 15963 15943 15945 12056 19832 +15928 15964 15944 15946 12057 19833 +15947 15965 15945 15967 12058 19834 +15928 15968 15946 15948 12059 19835 +15929 15969 15947 15949 12060 19836 +15930 15970 15948 15950 12061 19837 +15931 15971 15949 15951 12062 19838 +15932 15972 15950 15952 12063 19839 +15933 15973 15951 15953 12064 19840 +15934 15974 15952 15954 12065 19841 +15935 15975 15953 15955 12066 19842 +15936 15976 15954 15955 12067 19843 +15937 15977 15956 15957 12068 19844 +15938 15978 15956 15958 12069 19845 +15939 15979 15957 15959 12070 19846 +15940 15980 15958 15960 12071 19847 +15941 15981 15959 15961 12072 19848 +15942 15982 15960 15962 12073 19849 +15943 15983 15961 15963 12074 19850 +15944 15984 15962 15964 12075 19851 +15945 15985 15963 15965 12076 19852 +15946 15986 15964 15966 12077 19853 +15967 15987 15965 15989 12078 19854 +15946 15990 15966 15968 12079 19855 +15947 15991 15967 15969 12080 19856 +15948 15992 15968 15970 12081 19857 +15949 15993 15969 15971 12082 19858 +15950 15994 15970 15972 12083 19859 +15951 15995 15971 15973 12084 19860 +15952 15996 15972 15974 12085 19861 +15953 15997 15973 15975 12086 19862 +15954 15998 15974 15976 12087 19863 +15955 15999 15975 15976 12088 19864 +15956 16000 15977 15978 12089 19865 +15957 16001 15977 15979 12090 19866 +15958 16002 15978 15980 12091 19867 +15959 16003 15979 15981 12092 19868 +15960 16004 15980 15982 12093 19869 +15961 16005 15981 15983 12094 19870 +15962 16006 15982 15984 12095 19871 +15963 16007 15983 15985 12096 19872 +15964 16008 15984 15986 12097 19873 +15965 16009 15985 15987 12098 19874 +15966 16010 15986 15988 12099 19875 +15989 16011 15987 16013 12100 19876 +15966 16014 15988 15990 12101 19877 +15967 16015 15989 15991 12102 19878 +15968 16016 15990 15992 12103 19879 +15969 16017 15991 15993 12104 19880 +15970 16018 15992 15994 12105 19881 +15971 16019 15993 15995 12106 19882 +15972 16020 15994 15996 12107 19883 +15973 16021 15995 15997 12108 19884 +15974 16022 15996 15998 12109 19885 +15975 16023 15997 15999 12110 19886 +15976 16024 15998 15999 12111 19887 +15977 16025 16000 16001 12112 19888 +15978 16026 16000 16002 12113 19889 +15979 16027 16001 16003 12114 19890 +15980 16028 16002 16004 12115 19891 +15981 16029 16003 16005 12116 19892 +15982 16030 16004 16006 12117 19893 +15983 16031 16005 16007 12118 19894 +15984 16032 16006 16008 12119 19895 +15985 16033 16007 16009 12120 19896 +15986 16034 16008 16010 12121 19897 +15987 16035 16009 16011 12122 19898 +15988 16036 16010 16012 12123 19899 +16013 16037 16011 16039 12124 19900 +15988 16040 16012 16014 12125 19901 +15989 16041 16013 16015 12126 19902 +15990 16042 16014 16016 12127 19903 +15991 16043 16015 16017 12128 19904 +15992 16044 16016 16018 12129 19905 +15993 16045 16017 16019 12130 19906 +15994 16046 16018 16020 12131 19907 +15995 16047 16019 16021 12132 19908 +15996 16048 16020 16022 12133 19909 +15997 16049 16021 16023 12134 19910 +15998 16050 16022 16024 12135 19911 +15999 16051 16023 16024 12136 19912 +16000 16052 16025 16026 12137 19913 +16001 16053 16025 16027 12138 19914 +16002 16054 16026 16028 12139 19915 +16003 16055 16027 16029 12140 19916 +16004 16056 16028 16030 12141 19917 +16005 16057 16029 16031 12142 19918 +16006 16058 16030 16032 12143 19919 +16007 16059 16031 16033 12144 19920 +16008 16060 16032 16034 12145 19921 +16009 16061 16033 16035 12146 19922 +16010 16062 16034 16036 12147 19923 +16011 16063 16035 16037 12148 19924 +16012 16064 16036 16038 12149 19925 +16039 16065 16037 16067 12150 19926 +16012 16068 16038 16040 12151 19927 +16013 16069 16039 16041 12152 19928 +16014 16070 16040 16042 12153 19929 +16015 16071 16041 16043 12154 19930 +16016 16072 16042 16044 12155 19931 +16017 16073 16043 16045 12156 19932 +16018 16074 16044 16046 12157 19933 +16019 16075 16045 16047 12158 19934 +16020 16076 16046 16048 12159 19935 +16021 16077 16047 16049 12160 19936 +16022 16078 16048 16050 12161 19937 +16023 16079 16049 16051 12162 19938 +16024 16080 16050 16051 12163 19939 +16025 16081 16052 16053 12164 19940 +16026 16082 16052 16054 12165 19941 +16027 16083 16053 16055 12166 19942 +16028 16084 16054 16056 12167 19943 +16029 16085 16055 16057 12168 19944 +16030 16086 16056 16058 12169 19945 +16031 16087 16057 16059 12170 19946 +16032 16088 16058 16060 12171 19947 +16033 16089 16059 16061 12172 19948 +16034 16090 16060 16062 12173 19949 +16035 16091 16061 16063 12174 19950 +16036 16092 16062 16064 12175 19951 +16037 16093 16063 16065 12176 19952 +16038 16094 16064 16066 12177 19953 +16067 16095 16065 16097 12178 19954 +16038 16098 16066 16068 12179 19955 +16039 16099 16067 16069 12180 19956 +16040 16100 16068 16070 12181 19957 +16041 16101 16069 16071 12182 19958 +16042 16102 16070 16072 12183 19959 +16043 16103 16071 16073 12184 19960 +16044 16104 16072 16074 12185 19961 +16045 16105 16073 16075 12186 19962 +16046 16106 16074 16076 12187 19963 +16047 16107 16075 16077 12188 19964 +16048 16108 16076 16078 12189 19965 +16049 16109 16077 16079 12190 19966 +16050 16110 16078 16080 12191 19967 +16051 16111 16079 16080 12192 19968 +16052 16112 16081 16082 12193 19969 +16053 16113 16081 16083 12194 19970 +16054 16114 16082 16084 12195 19971 +16055 16115 16083 16085 12196 19972 +16056 16116 16084 16086 12197 19973 +16057 16117 16085 16087 12198 19974 +16058 16118 16086 16088 12199 19975 +16059 16119 16087 16089 12200 19976 +16060 16120 16088 16090 12201 19977 +16061 16121 16089 16091 12202 19978 +16062 16122 16090 16092 12203 19979 +16063 16123 16091 16093 12204 19980 +16064 16124 16092 16094 12205 19981 +16065 16125 16093 16095 12206 19982 +16066 16126 16094 16096 12207 19983 +16097 16127 16095 16129 12208 19984 +16066 16130 16096 16098 12209 19985 +16067 16131 16097 16099 12210 19986 +16068 16132 16098 16100 12211 19987 +16069 16133 16099 16101 12212 19988 +16070 16134 16100 16102 12213 19989 +16071 16135 16101 16103 12214 19990 +16072 16136 16102 16104 12215 19991 +16073 16137 16103 16105 12216 19992 +16074 16138 16104 16106 12217 19993 +16075 16139 16105 16107 12218 19994 +16076 16140 16106 16108 12219 19995 +16077 16141 16107 16109 12220 19996 +16078 16142 16108 16110 12221 19997 +16079 16143 16109 16111 12222 19998 +16080 16144 16110 16111 12223 19999 +16081 16145 16112 16113 12224 20000 +16082 16146 16112 16114 12225 20001 +16083 16147 16113 16115 12226 20002 +16084 16148 16114 16116 12227 20003 +16085 16149 16115 16117 12228 20004 +16086 16150 16116 16118 12229 20005 +16087 16151 16117 16119 12230 20006 +16088 16152 16118 16120 12231 20007 +16089 16153 16119 16121 12232 20008 +16090 16154 16120 16122 12233 20009 +16091 16155 16121 16123 12234 20010 +16092 16156 16122 16124 12235 20011 +16093 16157 16123 16125 12236 20012 +16094 16158 16124 16126 12237 20013 +16095 16159 16125 16127 12238 20014 +16096 16160 16126 16128 12239 20015 +16129 16161 16127 16163 12240 20016 +16096 16164 16128 16130 12241 20017 +16097 16165 16129 16131 12242 20018 +16098 16166 16130 16132 12243 20019 +16099 16167 16131 16133 12244 20020 +16100 16168 16132 16134 12245 20021 +16101 16169 16133 16135 12246 20022 +16102 16170 16134 16136 12247 20023 +16103 16171 16135 16137 12248 20024 +16104 16172 16136 16138 12249 20025 +16105 16173 16137 16139 12250 20026 +16106 16174 16138 16140 12251 20027 +16107 16175 16139 16141 12252 20028 +16108 16176 16140 16142 12253 20029 +16109 16177 16141 16143 12254 20030 +16110 16178 16142 16144 12255 20031 +16111 16179 16143 16144 12256 20032 +16112 16180 16145 16146 12257 20033 +16113 16181 16145 16147 12258 20034 +16114 16182 16146 16148 12259 20035 +16115 16183 16147 16149 12260 20036 +16116 16184 16148 16150 12261 20037 +16117 16185 16149 16151 12262 20038 +16118 16186 16150 16152 12263 20039 +16119 16187 16151 16153 12264 20040 +16120 16188 16152 16154 12265 20041 +16121 16189 16153 16155 12266 20042 +16122 16190 16154 16156 12267 20043 +16123 16191 16155 16157 12268 20044 +16124 16192 16156 16158 12269 20045 +16125 16193 16157 16159 12270 20046 +16126 16194 16158 16160 12271 20047 +16127 16195 16159 16161 12272 20048 +16128 16196 16160 16162 12273 20049 +16163 16197 16161 16199 12274 20050 +16128 16200 16162 16164 12275 20051 +16129 16201 16163 16165 12276 20052 +16130 16202 16164 16166 12277 20053 +16131 16203 16165 16167 12278 20054 +16132 16204 16166 16168 12279 20055 +16133 16205 16167 16169 12280 20056 +16134 16206 16168 16170 12281 20057 +16135 16207 16169 16171 12282 20058 +16136 16208 16170 16172 12283 20059 +16137 16209 16171 16173 12284 20060 +16138 16210 16172 16174 12285 20061 +16139 16211 16173 16175 12286 20062 +16140 16212 16174 16176 12287 20063 +16141 16213 16175 16177 12288 20064 +16142 16214 16176 16178 12289 20065 +16143 16215 16177 16179 12290 20066 +16144 16216 16178 16179 12291 20067 +16145 16217 16180 16181 12292 20068 +16146 16218 16180 16182 12293 20069 +16147 16219 16181 16183 12294 20070 +16148 16220 16182 16184 12295 20071 +16149 16221 16183 16185 12296 20072 +16150 16222 16184 16186 12297 20073 +16151 16223 16185 16187 12298 20074 +16152 16224 16186 16188 12299 20075 +16153 16225 16187 16189 12300 20076 +16154 16226 16188 16190 12301 20077 +16155 16227 16189 16191 12302 20078 +16156 16228 16190 16192 12303 20079 +16157 16229 16191 16193 12304 20080 +16158 16230 16192 16194 12305 20081 +16159 16231 16193 16195 12306 20082 +16160 16232 16194 16196 12307 20083 +16161 16233 16195 16197 12308 20084 +16162 16234 16196 16198 12309 20085 +16199 16235 16197 16237 12310 20086 +16162 16238 16198 16200 12311 20087 +16163 16239 16199 16201 12312 20088 +16164 16240 16200 16202 12313 20089 +16165 16241 16201 16203 12314 20090 +16166 16242 16202 16204 12315 20091 +16167 16243 16203 16205 12316 20092 +16168 16244 16204 16206 12317 20093 +16169 16245 16205 16207 12318 20094 +16170 16246 16206 16208 12319 20095 +16171 16247 16207 16209 12320 20096 +16172 16248 16208 16210 12321 20097 +16173 16249 16209 16211 12322 20098 +16174 16250 16210 16212 12323 20099 +16175 16251 16211 16213 12324 20100 +16176 16252 16212 16214 12325 20101 +16177 16253 16213 16215 12326 20102 +16178 16254 16214 16216 12327 20103 +16179 16255 16215 16216 12328 20104 +16180 16256 16217 16218 12329 20105 +16181 16257 16217 16219 12330 20106 +16182 16258 16218 16220 12331 20107 +16183 16259 16219 16221 12332 20108 +16184 16260 16220 16222 12333 20109 +16185 16261 16221 16223 12334 20110 +16186 16262 16222 16224 12335 20111 +16187 16263 16223 16225 12336 20112 +16188 16264 16224 16226 12337 20113 +16189 16265 16225 16227 12338 20114 +16190 16266 16226 16228 12339 20115 +16191 16267 16227 16229 12340 20116 +16192 16268 16228 16230 12341 20117 +16193 16269 16229 16231 12342 20118 +16194 16270 16230 16232 12343 20119 +16195 16271 16231 16233 12344 20120 +16196 16272 16232 16234 12345 20121 +16197 16273 16233 16235 12346 20122 +16198 16274 16234 16236 12347 20123 +16237 16275 16235 16277 12348 20124 +16198 16278 16236 16238 12349 20125 +16199 16279 16237 16239 12350 20126 +16200 16280 16238 16240 12351 20127 +16201 16281 16239 16241 12352 20128 +16202 16282 16240 16242 12353 20129 +16203 16283 16241 16243 12354 20130 +16204 16284 16242 16244 12355 20131 +16205 16285 16243 16245 12356 20132 +16206 16286 16244 16246 12357 20133 +16207 16287 16245 16247 12358 20134 +16208 16288 16246 16248 12359 20135 +16209 16289 16247 16249 12360 20136 +16210 16290 16248 16250 12361 20137 +16211 16291 16249 16251 12362 20138 +16212 16292 16250 16252 12363 20139 +16213 16293 16251 16253 12364 20140 +16214 16294 16252 16254 12365 20141 +16215 16295 16253 16255 12366 20142 +16216 16296 16254 16255 12367 20143 +16217 16297 16256 16257 12368 20144 +16218 16298 16256 16258 12369 20145 +16219 16299 16257 16259 12370 20146 +16220 16300 16258 16260 12371 20147 +16221 16301 16259 16261 12372 20148 +16222 16302 16260 16262 12373 20149 +16223 16303 16261 16263 12374 20150 +16224 16304 16262 16264 12375 20151 +16225 16305 16263 16265 12376 20152 +16226 16306 16264 16266 12377 20153 +16227 16307 16265 16267 12378 20154 +16228 16308 16266 16268 12379 20155 +16229 16309 16267 16269 12380 20156 +16230 16310 16268 16270 12381 20157 +16231 16311 16269 16271 12382 20158 +16232 16312 16270 16272 12383 20159 +16233 16313 16271 16273 12384 20160 +16234 16314 16272 16274 12385 20161 +16235 16315 16273 16275 12386 20162 +16236 16316 16274 16276 12387 20163 +16277 16317 16275 16319 12388 20164 +16236 16320 16276 16278 12389 20165 +16237 16321 16277 16279 12390 20166 +16238 16322 16278 16280 12391 20167 +16239 16323 16279 16281 12392 20168 +16240 16324 16280 16282 12393 20169 +16241 16325 16281 16283 12394 20170 +16242 16326 16282 16284 12395 20171 +16243 16327 16283 16285 12396 20172 +16244 16328 16284 16286 12397 20173 +16245 16329 16285 16287 12398 20174 +16246 16330 16286 16288 12399 20175 +16247 16331 16287 16289 12400 20176 +16248 16332 16288 16290 12401 20177 +16249 16333 16289 16291 12402 20178 +16250 16334 16290 16292 12403 20179 +16251 16335 16291 16293 12404 20180 +16252 16336 16292 16294 12405 20181 +16253 16337 16293 16295 12406 20182 +16254 16338 16294 16296 12407 20183 +16255 16339 16295 16296 12408 20184 +16256 16340 16297 16298 12409 20185 +16257 16341 16297 16299 12410 20186 +16258 16342 16298 16300 12411 20187 +16259 16343 16299 16301 12412 20188 +16260 16344 16300 16302 12413 20189 +16261 16345 16301 16303 12414 20190 +16262 16346 16302 16304 12415 20191 +16263 16347 16303 16305 12416 20192 +16264 16348 16304 16306 12417 20193 +16265 16349 16305 16307 12418 20194 +16266 16350 16306 16308 12419 20195 +16267 16351 16307 16309 12420 20196 +16268 16352 16308 16310 12421 20197 +16269 16353 16309 16311 12422 20198 +16270 16354 16310 16312 12423 20199 +16271 16355 16311 16313 12424 20200 +16272 16356 16312 16314 12425 20201 +16273 16357 16313 16315 12426 20202 +16274 16358 16314 16316 12427 20203 +16275 16359 16315 16317 12428 20204 +16276 16360 16316 16318 12429 20205 +16319 16361 16317 16363 12430 20206 +16276 16364 16318 16320 12431 20207 +16277 16365 16319 16321 12432 20208 +16278 16366 16320 16322 12433 20209 +16279 16367 16321 16323 12434 20210 +16280 16368 16322 16324 12435 20211 +16281 16369 16323 16325 12436 20212 +16282 16370 16324 16326 12437 20213 +16283 16371 16325 16327 12438 20214 +16284 16372 16326 16328 12439 20215 +16285 16373 16327 16329 12440 20216 +16286 16374 16328 16330 12441 20217 +16287 16375 16329 16331 12442 20218 +16288 16376 16330 16332 12443 20219 +16289 16377 16331 16333 12444 20220 +16290 16378 16332 16334 12445 20221 +16291 16379 16333 16335 12446 20222 +16292 16380 16334 16336 12447 20223 +16293 16381 16335 16337 12448 20224 +16294 16382 16336 16338 12449 20225 +16295 16383 16337 16339 12450 20226 +16296 16384 16338 16339 12451 20227 +16297 16385 16340 16341 12452 20228 +16298 16386 16340 16342 12453 20229 +16299 16387 16341 16343 12454 20230 +16300 16388 16342 16344 12455 20231 +16301 16389 16343 16345 12456 20232 +16302 16390 16344 16346 12457 20233 +16303 16391 16345 16347 12458 20234 +16304 16392 16346 16348 12459 20235 +16305 16393 16347 16349 12460 20236 +16306 16394 16348 16350 12461 20237 +16307 16395 16349 16351 12462 20238 +16308 16396 16350 16352 12463 20239 +16309 16397 16351 16353 12464 20240 +16310 16398 16352 16354 12465 20241 +16311 16399 16353 16355 12466 20242 +16312 16400 16354 16356 12467 20243 +16313 16401 16355 16357 12468 20244 +16314 16402 16356 16358 12469 20245 +16315 16403 16357 16359 12470 20246 +16316 16404 16358 16360 12471 20247 +16317 16405 16359 16361 12472 20248 +16318 16406 16360 16362 12473 20249 +16363 16407 16361 16409 12474 20250 +16318 16410 16362 16364 12475 20251 +16319 16411 16363 16365 12476 20252 +16320 16412 16364 16366 12477 20253 +16321 16413 16365 16367 12478 20254 +16322 16414 16366 16368 12479 20255 +16323 16415 16367 16369 12480 20256 +16324 16416 16368 16370 12481 20257 +16325 16417 16369 16371 12482 20258 +16326 16418 16370 16372 12483 20259 +16327 16419 16371 16373 12484 20260 +16328 16420 16372 16374 12485 20261 +16329 16421 16373 16375 12486 20262 +16330 16422 16374 16376 12487 20263 +16331 16423 16375 16377 12488 20264 +16332 16424 16376 16378 12489 20265 +16333 16425 16377 16379 12490 20266 +16334 16426 16378 16380 12491 20267 +16335 16427 16379 16381 12492 20268 +16336 16428 16380 16382 12493 20269 +16337 16429 16381 16383 12494 20270 +16338 16430 16382 16384 12495 20271 +16339 16431 16383 16384 12496 20272 +16340 16432 16385 16386 12497 20273 +16341 16433 16385 16387 12498 20274 +16342 16434 16386 16388 12499 20275 +16343 16435 16387 16389 12500 20276 +16344 16436 16388 16390 12501 20277 +16345 16437 16389 16391 12502 20278 +16346 16438 16390 16392 12503 20279 +16347 16439 16391 16393 12504 20280 +16348 16440 16392 16394 12505 20281 +16349 16441 16393 16395 12506 20282 +16350 16442 16394 16396 12507 20283 +16351 16443 16395 16397 12508 20284 +16352 16444 16396 16398 12509 20285 +16353 16445 16397 16399 12510 20286 +16354 16446 16398 16400 12511 20287 +16355 16447 16399 16401 12512 20288 +16356 16448 16400 16402 12513 20289 +16357 16449 16401 16403 12514 20290 +16358 16450 16402 16404 12515 20291 +16359 16451 16403 16405 12516 20292 +16360 16452 16404 16406 12517 20293 +16361 16453 16405 16407 12518 20294 +16362 16454 16406 16408 12519 20295 +16409 16455 16407 16457 12520 20296 +16362 16458 16408 16410 12521 20297 +16363 16459 16409 16411 12522 20298 +16364 16460 16410 16412 12523 20299 +16365 16461 16411 16413 12524 20300 +16366 16462 16412 16414 12525 20301 +16367 16463 16413 16415 12526 20302 +16368 16464 16414 16416 12527 20303 +16369 16465 16415 16417 12528 20304 +16370 16466 16416 16418 12529 20305 +16371 16467 16417 16419 12530 20306 +16372 16468 16418 16420 12531 20307 +16373 16469 16419 16421 12532 20308 +16374 16470 16420 16422 12533 20309 +16375 16471 16421 16423 12534 20310 +16376 16472 16422 16424 12535 20311 +16377 16473 16423 16425 12536 20312 +16378 16474 16424 16426 12537 20313 +16379 16475 16425 16427 12538 20314 +16380 16476 16426 16428 12539 20315 +16381 16477 16427 16429 12540 20316 +16382 16478 16428 16430 12541 20317 +16383 16479 16429 16431 12542 20318 +16384 16480 16430 16431 12543 20319 +16385 16481 16432 16433 12544 20320 +16386 16482 16432 16434 12545 20321 +16387 16483 16433 16435 12546 20322 +16388 16484 16434 16436 12547 20323 +16389 16485 16435 16437 12548 20324 +16390 16486 16436 16438 12549 20325 +16391 16487 16437 16439 12550 20326 +16392 16488 16438 16440 12551 20327 +16393 16489 16439 16441 12552 20328 +16394 16490 16440 16442 12553 20329 +16395 16491 16441 16443 12554 20330 +16396 16492 16442 16444 12555 20331 +16397 16493 16443 16445 12556 20332 +16398 16494 16444 16446 12557 20333 +16399 16495 16445 16447 12558 20334 +16400 16496 16446 16448 12559 20335 +16401 16497 16447 16449 12560 20336 +16402 16498 16448 16450 12561 20337 +16403 16499 16449 16451 12562 20338 +16404 16500 16450 16452 12563 20339 +16405 16501 16451 16453 12564 20340 +16406 16502 16452 16454 12565 20341 +16407 16503 16453 16455 12566 20342 +16408 16504 16454 16456 12567 20343 +16457 16505 16455 16507 12568 20344 +16408 16508 16456 16458 12569 20345 +16409 16509 16457 16459 12570 20346 +16410 16510 16458 16460 12571 20347 +16411 16511 16459 16461 12572 20348 +16412 16512 16460 16462 12573 20349 +16413 16513 16461 16463 12574 20350 +16414 16514 16462 16464 12575 20351 +16415 16515 16463 16465 12576 20352 +16416 16516 16464 16466 12577 20353 +16417 16517 16465 16467 12578 20354 +16418 16518 16466 16468 12579 20355 +16419 16519 16467 16469 12580 20356 +16420 16520 16468 16470 12581 20357 +16421 16521 16469 16471 12582 20358 +16422 16522 16470 16472 12583 20359 +16423 16523 16471 16473 12584 20360 +16424 16524 16472 16474 12585 20361 +16425 16525 16473 16475 12586 20362 +16426 16526 16474 16476 12587 20363 +16427 16527 16475 16477 12588 20364 +16428 16528 16476 16478 12589 20365 +16429 16529 16477 16479 12590 20366 +16430 16530 16478 16480 12591 20367 +16431 16531 16479 16480 12592 20368 +16432 16532 16481 16482 12593 20369 +16433 16533 16481 16483 12594 20370 +16434 16534 16482 16484 12595 20371 +16435 16535 16483 16485 12596 20372 +16436 16536 16484 16486 12597 20373 +16437 16537 16485 16487 12598 20374 +16438 16538 16486 16488 12599 20375 +16439 16539 16487 16489 12600 20376 +16440 16540 16488 16490 12601 20377 +16441 16541 16489 16491 12602 20378 +16442 16542 16490 16492 12603 20379 +16443 16543 16491 16493 12604 20380 +16444 16544 16492 16494 12605 20381 +16445 16545 16493 16495 12606 20382 +16446 16546 16494 16496 12607 20383 +16447 16547 16495 16497 12608 20384 +16448 16548 16496 16498 12609 20385 +16449 16549 16497 16499 12610 20386 +16450 16550 16498 16500 12611 20387 +16451 16551 16499 16501 12612 20388 +16452 16552 16500 16502 12613 20389 +16453 16553 16501 16503 12614 20390 +16454 16554 16502 16504 12615 20391 +16455 16555 16503 16505 12616 20392 +16456 16556 16504 16506 12617 20393 +16507 16557 16505 16559 12618 20394 +16456 16560 16506 16508 12619 20395 +16457 16561 16507 16509 12620 20396 +16458 16562 16508 16510 12621 20397 +16459 16563 16509 16511 12622 20398 +16460 16564 16510 16512 12623 20399 +16461 16565 16511 16513 12624 20400 +16462 16566 16512 16514 12625 20401 +16463 16567 16513 16515 12626 20402 +16464 16568 16514 16516 12627 20403 +16465 16569 16515 16517 12628 20404 +16466 16570 16516 16518 12629 20405 +16467 16571 16517 16519 12630 20406 +16468 16572 16518 16520 12631 20407 +16469 16573 16519 16521 12632 20408 +16470 16574 16520 16522 12633 20409 +16471 16575 16521 16523 12634 20410 +16472 16576 16522 16524 12635 20411 +16473 16577 16523 16525 12636 20412 +16474 16578 16524 16526 12637 20413 +16475 16579 16525 16527 12638 20414 +16476 16580 16526 16528 12639 20415 +16477 16581 16527 16529 12640 20416 +16478 16582 16528 16530 12641 20417 +16479 16583 16529 16531 12642 20418 +16480 16584 16530 16531 12643 20419 +16481 16585 16532 16533 12644 20420 +16482 16586 16532 16534 12645 20421 +16483 16587 16533 16535 12646 20422 +16484 16588 16534 16536 12647 20423 +16485 16589 16535 16537 12648 20424 +16486 16590 16536 16538 12649 20425 +16487 16591 16537 16539 12650 20426 +16488 16592 16538 16540 12651 20427 +16489 16593 16539 16541 12652 20428 +16490 16594 16540 16542 12653 20429 +16491 16595 16541 16543 12654 20430 +16492 16596 16542 16544 12655 20431 +16493 16597 16543 16545 12656 20432 +16494 16598 16544 16546 12657 20433 +16495 16599 16545 16547 12658 20434 +16496 16600 16546 16548 12659 20435 +16497 16601 16547 16549 12660 20436 +16498 16602 16548 16550 12661 20437 +16499 16603 16549 16551 12662 20438 +16500 16604 16550 16552 12663 20439 +16501 16605 16551 16553 12664 20440 +16502 16606 16552 16554 12665 20441 +16503 16607 16553 16555 12666 20442 +16504 16608 16554 16556 12667 20443 +16505 16609 16555 16557 12668 20444 +16506 16610 16556 16558 12669 20445 +16559 16611 16557 16613 12670 20446 +16506 16614 16558 16560 12671 20447 +16507 16615 16559 16561 12672 20448 +16508 16616 16560 16562 12673 20449 +16509 16617 16561 16563 12674 20450 +16510 16618 16562 16564 12675 20451 +16511 16619 16563 16565 12676 20452 +16512 16620 16564 16566 12677 20453 +16513 16621 16565 16567 12678 20454 +16514 16622 16566 16568 12679 20455 +16515 16623 16567 16569 12680 20456 +16516 16624 16568 16570 12681 20457 +16517 16625 16569 16571 12682 20458 +16518 16626 16570 16572 12683 20459 +16519 16627 16571 16573 12684 20460 +16520 16628 16572 16574 12685 20461 +16521 16629 16573 16575 12686 20462 +16522 16630 16574 16576 12687 20463 +16523 16631 16575 16577 12688 20464 +16524 16632 16576 16578 12689 20465 +16525 16633 16577 16579 12690 20466 +16526 16634 16578 16580 12691 20467 +16527 16635 16579 16581 12692 20468 +16528 16636 16580 16582 12693 20469 +16529 16637 16581 16583 12694 20470 +16530 16638 16582 16584 12695 20471 +16531 16639 16583 16584 12696 20472 +16532 16640 16585 16586 12697 20473 +16533 16641 16585 16587 12698 20474 +16534 16642 16586 16588 12699 20475 +16535 16643 16587 16589 12700 20476 +16536 16644 16588 16590 12701 20477 +16537 16645 16589 16591 12702 20478 +16538 16646 16590 16592 12703 20479 +16539 16647 16591 16593 12704 20480 +16540 16648 16592 16594 12705 20481 +16541 16649 16593 16595 12706 20482 +16542 16650 16594 16596 12707 20483 +16543 16651 16595 16597 12708 20484 +16544 16652 16596 16598 12709 20485 +16545 16653 16597 16599 12710 20486 +16546 16654 16598 16600 12711 20487 +16547 16655 16599 16601 12712 20488 +16548 16656 16600 16602 12713 20489 +16549 16657 16601 16603 12714 20490 +16550 16658 16602 16604 12715 20491 +16551 16659 16603 16605 12716 20492 +16552 16660 16604 16606 12717 20493 +16553 16661 16605 16607 12718 20494 +16554 16662 16606 16608 12719 20495 +16555 16663 16607 16609 12720 20496 +16556 16664 16608 16610 12721 20497 +16557 16665 16609 16611 12722 20498 +16558 16666 16610 16612 12723 20499 +16613 16667 16611 16669 12724 20500 +16558 16670 16612 16614 12725 20501 +16559 16671 16613 16615 12726 20502 +16560 16672 16614 16616 12727 20503 +16561 16673 16615 16617 12728 20504 +16562 16674 16616 16618 12729 20505 +16563 16675 16617 16619 12730 20506 +16564 16676 16618 16620 12731 20507 +16565 16677 16619 16621 12732 20508 +16566 16678 16620 16622 12733 20509 +16567 16679 16621 16623 12734 20510 +16568 16680 16622 16624 12735 20511 +16569 16681 16623 16625 12736 20512 +16570 16682 16624 16626 12737 20513 +16571 16683 16625 16627 12738 20514 +16572 16684 16626 16628 12739 20515 +16573 16685 16627 16629 12740 20516 +16574 16686 16628 16630 12741 20517 +16575 16687 16629 16631 12742 20518 +16576 16688 16630 16632 12743 20519 +16577 16689 16631 16633 12744 20520 +16578 16690 16632 16634 12745 20521 +16579 16691 16633 16635 12746 20522 +16580 16692 16634 16636 12747 20523 +16581 16693 16635 16637 12748 20524 +16582 16694 16636 16638 12749 20525 +16583 16695 16637 16639 12750 20526 +16584 16696 16638 16639 12751 20527 +16585 16697 16640 16641 12752 20528 +16586 16698 16640 16642 12753 20529 +16587 16699 16641 16643 12754 20530 +16588 16700 16642 16644 12755 20531 +16589 16701 16643 16645 12756 20532 +16590 16702 16644 16646 12757 20533 +16591 16703 16645 16647 12758 20534 +16592 16704 16646 16648 12759 20535 +16593 16705 16647 16649 12760 20536 +16594 16706 16648 16650 12761 20537 +16595 16707 16649 16651 12762 20538 +16596 16708 16650 16652 12763 20539 +16597 16709 16651 16653 12764 20540 +16598 16710 16652 16654 12765 20541 +16599 16711 16653 16655 12766 20542 +16600 16712 16654 16656 12767 20543 +16601 16713 16655 16657 12768 20544 +16602 16714 16656 16658 12769 20545 +16603 16715 16657 16659 12770 20546 +16604 16716 16658 16660 12771 20547 +16605 16717 16659 16661 12772 20548 +16606 16718 16660 16662 12773 20549 +16607 16719 16661 16663 12774 20550 +16608 16720 16662 16664 12775 20551 +16609 16721 16663 16665 12776 20552 +16610 16722 16664 16666 12777 20553 +16611 16723 16665 16667 12778 20554 +16612 16724 16666 16668 12779 20555 +16669 16725 16667 16727 12780 20556 +16612 16728 16668 16670 12781 20557 +16613 16729 16669 16671 12782 20558 +16614 16730 16670 16672 12783 20559 +16615 16731 16671 16673 12784 20560 +16616 16732 16672 16674 12785 20561 +16617 16733 16673 16675 12786 20562 +16618 16734 16674 16676 12787 20563 +16619 16735 16675 16677 12788 20564 +16620 16736 16676 16678 12789 20565 +16621 16737 16677 16679 12790 20566 +16622 16738 16678 16680 12791 20567 +16623 16739 16679 16681 12792 20568 +16624 16740 16680 16682 12793 20569 +16625 16741 16681 16683 12794 20570 +16626 16742 16682 16684 12795 20571 +16627 16743 16683 16685 12796 20572 +16628 16744 16684 16686 12797 20573 +16629 16745 16685 16687 12798 20574 +16630 16746 16686 16688 12799 20575 +16631 16747 16687 16689 12800 20576 +16632 16748 16688 16690 12801 20577 +16633 16749 16689 16691 12802 20578 +16634 16750 16690 16692 12803 20579 +16635 16751 16691 16693 12804 20580 +16636 16752 16692 16694 12805 20581 +16637 16753 16693 16695 12806 20582 +16638 16754 16694 16696 12807 20583 +16639 16755 16695 16696 12808 20584 +16640 16756 16697 16698 12809 20585 +16641 16757 16697 16699 12810 20586 +16642 16758 16698 16700 12811 20587 +16643 16759 16699 16701 12812 20588 +16644 16760 16700 16702 12813 20589 +16645 16761 16701 16703 12814 20590 +16646 16762 16702 16704 12815 20591 +16647 16763 16703 16705 12816 20592 +16648 16764 16704 16706 12817 20593 +16649 16765 16705 16707 12818 20594 +16650 16766 16706 16708 12819 20595 +16651 16767 16707 16709 12820 20596 +16652 16768 16708 16710 12821 20597 +16653 16769 16709 16711 12822 20598 +16654 16770 16710 16712 12823 20599 +16655 16771 16711 16713 12824 20600 +16656 16772 16712 16714 12825 20601 +16657 16773 16713 16715 12826 20602 +16658 16774 16714 16716 12827 20603 +16659 16775 16715 16717 12828 20604 +16660 16776 16716 16718 12829 20605 +16661 16777 16717 16719 12830 20606 +16662 16778 16718 16720 12831 20607 +16663 16779 16719 16721 12832 20608 +16664 16780 16720 16722 12833 20609 +16665 16781 16721 16723 12834 20610 +16666 16782 16722 16724 12835 20611 +16667 16783 16723 16725 12836 20612 +16668 16784 16724 16726 12837 20613 +16727 16785 16725 16787 12838 20614 +16668 16788 16726 16728 12839 20615 +16669 16789 16727 16729 12840 20616 +16670 16790 16728 16730 12841 20617 +16671 16791 16729 16731 12842 20618 +16672 16792 16730 16732 12843 20619 +16673 16793 16731 16733 12844 20620 +16674 16794 16732 16734 12845 20621 +16675 16795 16733 16735 12846 20622 +16676 16796 16734 16736 12847 20623 +16677 16797 16735 16737 12848 20624 +16678 16798 16736 16738 12849 20625 +16679 16799 16737 16739 12850 20626 +16680 16800 16738 16740 12851 20627 +16681 16801 16739 16741 12852 20628 +16682 16802 16740 16742 12853 20629 +16683 16803 16741 16743 12854 20630 +16684 16804 16742 16744 12855 20631 +16685 16805 16743 16745 12856 20632 +16686 16806 16744 16746 12857 20633 +16687 16807 16745 16747 12858 20634 +16688 16808 16746 16748 12859 20635 +16689 16809 16747 16749 12860 20636 +16690 16810 16748 16750 12861 20637 +16691 16811 16749 16751 12862 20638 +16692 16812 16750 16752 12863 20639 +16693 16813 16751 16753 12864 20640 +16694 16814 16752 16754 12865 20641 +16695 16815 16753 16755 12866 20642 +16696 16816 16754 16755 12867 20643 +16697 16817 16756 16757 12868 20644 +16698 16818 16756 16758 12869 20645 +16699 16819 16757 16759 12870 20646 +16700 16820 16758 16760 12871 20647 +16701 16821 16759 16761 12872 20648 +16702 16822 16760 16762 12873 20649 +16703 16823 16761 16763 12874 20650 +16704 16824 16762 16764 12875 20651 +16705 16825 16763 16765 12876 20652 +16706 16826 16764 16766 12877 20653 +16707 16827 16765 16767 12878 20654 +16708 16828 16766 16768 12879 20655 +16709 16829 16767 16769 12880 20656 +16710 16830 16768 16770 12881 20657 +16711 16831 16769 16771 12882 20658 +16712 16832 16770 16772 12883 20659 +16713 16833 16771 16773 12884 20660 +16714 16834 16772 16774 12885 20661 +16715 16835 16773 16775 12886 20662 +16716 16836 16774 16776 12887 20663 +16717 16837 16775 16777 12888 20664 +16718 16838 16776 16778 12889 20665 +16719 16839 16777 16779 12890 20666 +16720 16840 16778 16780 12891 20667 +16721 16841 16779 16781 12892 20668 +16722 16842 16780 16782 12893 20669 +16723 16843 16781 16783 12894 20670 +16724 16844 16782 16784 12895 20671 +16725 16845 16783 16785 12896 20672 +16726 16846 16784 16786 12897 20673 +16787 16847 16785 16849 12898 20674 +16726 16850 16786 16788 12899 20675 +16727 16851 16787 16789 12900 20676 +16728 16852 16788 16790 12901 20677 +16729 16853 16789 16791 12902 20678 +16730 16854 16790 16792 12903 20679 +16731 16855 16791 16793 12904 20680 +16732 16856 16792 16794 12905 20681 +16733 16857 16793 16795 12906 20682 +16734 16858 16794 16796 12907 20683 +16735 16859 16795 16797 12908 20684 +16736 16860 16796 16798 12909 20685 +16737 16861 16797 16799 12910 20686 +16738 16862 16798 16800 12911 20687 +16739 16863 16799 16801 12912 20688 +16740 16864 16800 16802 12913 20689 +16741 16865 16801 16803 12914 20690 +16742 16866 16802 16804 12915 20691 +16743 16867 16803 16805 12916 20692 +16744 16868 16804 16806 12917 20693 +16745 16869 16805 16807 12918 20694 +16746 16870 16806 16808 12919 20695 +16747 16871 16807 16809 12920 20696 +16748 16872 16808 16810 12921 20697 +16749 16873 16809 16811 12922 20698 +16750 16874 16810 16812 12923 20699 +16751 16875 16811 16813 12924 20700 +16752 16876 16812 16814 12925 20701 +16753 16877 16813 16815 12926 20702 +16754 16878 16814 16816 12927 20703 +16755 16879 16815 16816 12928 20704 +16756 16880 16817 16818 12929 20705 +16757 16881 16817 16819 12930 20706 +16758 16882 16818 16820 12931 20707 +16759 16883 16819 16821 12932 20708 +16760 16884 16820 16822 12933 20709 +16761 16885 16821 16823 12934 20710 +16762 16886 16822 16824 12935 20711 +16763 16887 16823 16825 12936 20712 +16764 16888 16824 16826 12937 20713 +16765 16889 16825 16827 12938 20714 +16766 16890 16826 16828 12939 20715 +16767 16891 16827 16829 12940 20716 +16768 16892 16828 16830 12941 20717 +16769 16893 16829 16831 12942 20718 +16770 16894 16830 16832 12943 20719 +16771 16895 16831 16833 12944 20720 +16772 16896 16832 16834 12945 20721 +16773 16897 16833 16835 12946 20722 +16774 16898 16834 16836 12947 20723 +16775 16899 16835 16837 12948 20724 +16776 16900 16836 16838 12949 20725 +16777 16901 16837 16839 12950 20726 +16778 16902 16838 16840 12951 20727 +16779 16903 16839 16841 12952 20728 +16780 16904 16840 16842 12953 20729 +16781 16905 16841 16843 12954 20730 +16782 16906 16842 16844 12955 20731 +16783 16907 16843 16845 12956 20732 +16784 16908 16844 16846 12957 20733 +16785 16909 16845 16847 12958 20734 +16786 16910 16846 16848 12959 20735 +16849 16911 16847 16913 12960 20736 +16786 16914 16848 16850 12961 20737 +16787 16915 16849 16851 12962 20738 +16788 16916 16850 16852 12963 20739 +16789 16917 16851 16853 12964 20740 +16790 16918 16852 16854 12965 20741 +16791 16919 16853 16855 12966 20742 +16792 16920 16854 16856 12967 20743 +16793 16921 16855 16857 12968 20744 +16794 16922 16856 16858 12969 20745 +16795 16923 16857 16859 12970 20746 +16796 16924 16858 16860 12971 20747 +16797 16925 16859 16861 12972 20748 +16798 16926 16860 16862 12973 20749 +16799 16927 16861 16863 12974 20750 +16800 16928 16862 16864 12975 20751 +16801 16929 16863 16865 12976 20752 +16802 16930 16864 16866 12977 20753 +16803 16931 16865 16867 12978 20754 +16804 16932 16866 16868 12979 20755 +16805 16933 16867 16869 12980 20756 +16806 16934 16868 16870 12981 20757 +16807 16935 16869 16871 12982 20758 +16808 16936 16870 16872 12983 20759 +16809 16937 16871 16873 12984 20760 +16810 16938 16872 16874 12985 20761 +16811 16939 16873 16875 12986 20762 +16812 16940 16874 16876 12987 20763 +16813 16941 16875 16877 12988 20764 +16814 16942 16876 16878 12989 20765 +16815 16943 16877 16879 12990 20766 +16816 16944 16878 16879 12991 20767 +16817 16945 16880 16881 12992 20768 +16818 16946 16880 16882 12993 20769 +16819 16947 16881 16883 12994 20770 +16820 16948 16882 16884 12995 20771 +16821 16949 16883 16885 12996 20772 +16822 16950 16884 16886 12997 20773 +16823 16951 16885 16887 12998 20774 +16824 16952 16886 16888 12999 20775 +16825 16953 16887 16889 13000 20776 +16826 16954 16888 16890 13001 20777 +16827 16955 16889 16891 13002 20778 +16828 16956 16890 16892 13003 20779 +16829 16957 16891 16893 13004 20780 +16830 16958 16892 16894 13005 20781 +16831 16959 16893 16895 13006 20782 +16832 16960 16894 16896 13007 20783 +16833 16961 16895 16897 13008 20784 +16834 16962 16896 16898 13009 20785 +16835 16963 16897 16899 13010 20786 +16836 16964 16898 16900 13011 20787 +16837 16965 16899 16901 13012 20788 +16838 16966 16900 16902 13013 20789 +16839 16967 16901 16903 13014 20790 +16840 16968 16902 16904 13015 20791 +16841 16969 16903 16905 13016 20792 +16842 16970 16904 16906 13017 20793 +16843 16971 16905 16907 13018 20794 +16844 16972 16906 16908 13019 20795 +16845 16973 16907 16909 13020 20796 +16846 16974 16908 16910 13021 20797 +16847 16975 16909 16911 13022 20798 +16848 16976 16910 16912 13023 20799 +16913 16977 16911 16979 13024 20800 +16848 16980 16912 16914 13025 20801 +16849 16981 16913 16915 13026 20802 +16850 16982 16914 16916 13027 20803 +16851 16983 16915 16917 13028 20804 +16852 16984 16916 16918 13029 20805 +16853 16985 16917 16919 13030 20806 +16854 16986 16918 16920 13031 20807 +16855 16987 16919 16921 13032 20808 +16856 16988 16920 16922 13033 20809 +16857 16989 16921 16923 13034 20810 +16858 16990 16922 16924 13035 20811 +16859 16991 16923 16925 13036 20812 +16860 16992 16924 16926 13037 20813 +16861 16993 16925 16927 13038 20814 +16862 16994 16926 16928 13039 20815 +16863 16995 16927 16929 13040 20816 +16864 16996 16928 16930 13041 20817 +16865 16997 16929 16931 13042 20818 +16866 16998 16930 16932 13043 20819 +16867 16999 16931 16933 13044 20820 +16868 17000 16932 16934 13045 20821 +16869 17001 16933 16935 13046 20822 +16870 17002 16934 16936 13047 20823 +16871 17003 16935 16937 13048 20824 +16872 17004 16936 16938 13049 20825 +16873 17005 16937 16939 13050 20826 +16874 17006 16938 16940 13051 20827 +16875 17007 16939 16941 13052 20828 +16876 17008 16940 16942 13053 20829 +16877 17009 16941 16943 13054 20830 +16878 17010 16942 16944 13055 20831 +16879 17011 16943 16944 13056 20832 +16880 17012 16945 16946 13057 20833 +16881 17013 16945 16947 13058 20834 +16882 17014 16946 16948 13059 20835 +16883 17015 16947 16949 13060 20836 +16884 17016 16948 16950 13061 20837 +16885 17017 16949 16951 13062 20838 +16886 17018 16950 16952 13063 20839 +16887 17019 16951 16953 13064 20840 +16888 17020 16952 16954 13065 20841 +16889 17021 16953 16955 13066 20842 +16890 17022 16954 16956 13067 20843 +16891 17023 16955 16957 13068 20844 +16892 17024 16956 16958 13069 20845 +16893 17025 16957 16959 13070 20846 +16894 17026 16958 16960 13071 20847 +16895 17027 16959 16961 13072 20848 +16896 17028 16960 16962 13073 20849 +16897 17029 16961 16963 13074 20850 +16898 17030 16962 16964 13075 20851 +16899 17031 16963 16965 13076 20852 +16900 17032 16964 16966 13077 20853 +16901 17033 16965 16967 13078 20854 +16902 17034 16966 16968 13079 20855 +16903 17035 16967 16969 13080 20856 +16904 17036 16968 16970 13081 20857 +16905 17037 16969 16971 13082 20858 +16906 17038 16970 16972 13083 20859 +16907 17039 16971 16973 13084 20860 +16908 17040 16972 16974 13085 20861 +16909 17041 16973 16975 13086 20862 +16910 17042 16974 16976 13087 20863 +16911 17043 16975 16977 13088 20864 +16912 17044 16976 16978 13089 20865 +16979 17045 16977 17047 13090 20866 +16912 17048 16978 16980 13091 20867 +16913 17049 16979 16981 13092 20868 +16914 17050 16980 16982 13093 20869 +16915 17051 16981 16983 13094 20870 +16916 17052 16982 16984 13095 20871 +16917 17053 16983 16985 13096 20872 +16918 17054 16984 16986 13097 20873 +16919 17055 16985 16987 13098 20874 +16920 17056 16986 16988 13099 20875 +16921 17057 16987 16989 13100 20876 +16922 17058 16988 16990 13101 20877 +16923 17059 16989 16991 13102 20878 +16924 17060 16990 16992 13103 20879 +16925 17061 16991 16993 13104 20880 +16926 17062 16992 16994 13105 20881 +16927 17063 16993 16995 13106 20882 +16928 17064 16994 16996 13107 20883 +16929 17065 16995 16997 13108 20884 +16930 17066 16996 16998 13109 20885 +16931 17067 16997 16999 13110 20886 +16932 17068 16998 17000 13111 20887 +16933 17069 16999 17001 13112 20888 +16934 17070 17000 17002 13113 20889 +16935 17071 17001 17003 13114 20890 +16936 17072 17002 17004 13115 20891 +16937 17073 17003 17005 13116 20892 +16938 17074 17004 17006 13117 20893 +16939 17075 17005 17007 13118 20894 +16940 17076 17006 17008 13119 20895 +16941 17077 17007 17009 13120 20896 +16942 17078 17008 17010 13121 20897 +16943 17079 17009 17011 13122 20898 +16944 17080 17010 17011 13123 20899 +16945 17081 17012 17013 13124 20900 +16946 17082 17012 17014 13125 20901 +16947 17083 17013 17015 13126 20902 +16948 17084 17014 17016 13127 20903 +16949 17085 17015 17017 13128 20904 +16950 17086 17016 17018 13129 20905 +16951 17087 17017 17019 13130 20906 +16952 17088 17018 17020 13131 20907 +16953 17089 17019 17021 13132 20908 +16954 17090 17020 17022 13133 20909 +16955 17091 17021 17023 13134 20910 +16956 17092 17022 17024 13135 20911 +16957 17093 17023 17025 13136 20912 +16958 17094 17024 17026 13137 20913 +16959 17095 17025 17027 13138 20914 +16960 17096 17026 17028 13139 20915 +16961 17097 17027 17029 13140 20916 +16962 17098 17028 17030 13141 20917 +16963 17099 17029 17031 13142 20918 +16964 17100 17030 17032 13143 20919 +16965 17101 17031 17033 13144 20920 +16966 17102 17032 17034 13145 20921 +16967 17103 17033 17035 13146 20922 +16968 17104 17034 17036 13147 20923 +16969 17105 17035 17037 13148 20924 +16970 17106 17036 17038 13149 20925 +16971 17107 17037 17039 13150 20926 +16972 17108 17038 17040 13151 20927 +16973 17109 17039 17041 13152 20928 +16974 17110 17040 17042 13153 20929 +16975 17111 17041 17043 13154 20930 +16976 17112 17042 17044 13155 20931 +16977 17113 17043 17045 13156 20932 +16978 17114 17044 17046 13157 20933 +17047 17115 17045 17117 13158 20934 +16978 17118 17046 17048 13159 20935 +16979 17119 17047 17049 13160 20936 +16980 17120 17048 17050 13161 20937 +16981 17121 17049 17051 13162 20938 +16982 17122 17050 17052 13163 20939 +16983 17123 17051 17053 13164 20940 +16984 17124 17052 17054 13165 20941 +16985 17125 17053 17055 13166 20942 +16986 17126 17054 17056 13167 20943 +16987 17127 17055 17057 13168 20944 +16988 17128 17056 17058 13169 20945 +16989 17129 17057 17059 13170 20946 +16990 17130 17058 17060 13171 20947 +16991 17131 17059 17061 13172 20948 +16992 17132 17060 17062 13173 20949 +16993 17133 17061 17063 13174 20950 +16994 17134 17062 17064 13175 20951 +16995 17135 17063 17065 13176 20952 +16996 17136 17064 17066 13177 20953 +16997 17137 17065 17067 13178 20954 +16998 17138 17066 17068 13179 20955 +16999 17139 17067 17069 13180 20956 +17000 17140 17068 17070 13181 20957 +17001 17141 17069 17071 13182 20958 +17002 17142 17070 17072 13183 20959 +17003 17143 17071 17073 13184 20960 +17004 17144 17072 17074 13185 20961 +17005 17145 17073 17075 13186 20962 +17006 17146 17074 17076 13187 20963 +17007 17147 17075 17077 13188 20964 +17008 17148 17076 17078 13189 20965 +17009 17149 17077 17079 13190 20966 +17010 17150 17078 17080 13191 20967 +17011 17151 17079 17080 13192 20968 +17012 17152 17081 17082 13193 20969 +17013 17153 17081 17083 13194 20970 +17014 17154 17082 17084 13195 20971 +17015 17155 17083 17085 13196 20972 +17016 17156 17084 17086 13197 20973 +17017 17157 17085 17087 13198 20974 +17018 17158 17086 17088 13199 20975 +17019 17159 17087 17089 13200 20976 +17020 17160 17088 17090 13201 20977 +17021 17161 17089 17091 13202 20978 +17022 17162 17090 17092 13203 20979 +17023 17163 17091 17093 13204 20980 +17024 17164 17092 17094 13205 20981 +17025 17165 17093 17095 13206 20982 +17026 17166 17094 17096 13207 20983 +17027 17167 17095 17097 13208 20984 +17028 17168 17096 17098 13209 20985 +17029 17169 17097 17099 13210 20986 +17030 17170 17098 17100 13211 20987 +17031 17171 17099 17101 13212 20988 +17032 17172 17100 17102 13213 20989 +17033 17173 17101 17103 13214 20990 +17034 17174 17102 17104 13215 20991 +17035 17175 17103 17105 13216 20992 +17036 17176 17104 17106 13217 20993 +17037 17177 17105 17107 13218 20994 +17038 17178 17106 17108 13219 20995 +17039 17179 17107 17109 13220 20996 +17040 17180 17108 17110 13221 20997 +17041 17181 17109 17111 13222 20998 +17042 17182 17110 17112 13223 20999 +17043 17183 17111 17113 13224 21000 +17044 17184 17112 17114 13225 21001 +17045 17185 17113 17115 13226 21002 +17046 17186 17114 17116 13227 21003 +17117 17187 17115 17188 13228 21004 +17046 17189 17116 17118 13229 21005 +17047 17190 17117 17119 13230 21006 +17048 17191 17118 17120 13231 21007 +17049 17192 17119 17121 13232 21008 +17050 17193 17120 17122 13233 21009 +17051 17194 17121 17123 13234 21010 +17052 17195 17122 17124 13235 21011 +17053 17196 17123 17125 13236 21012 +17054 17197 17124 17126 13237 21013 +17055 17198 17125 17127 13238 21014 +17056 17199 17126 17128 13239 21015 +17057 17200 17127 17129 13240 21016 +17058 17201 17128 17130 13241 21017 +17059 17202 17129 17131 13242 21018 +17060 17203 17130 17132 13243 21019 +17061 17204 17131 17133 13244 21020 +17062 17205 17132 17134 13245 21021 +17063 17206 17133 17135 13246 21022 +17064 17207 17134 17136 13247 21023 +17065 17208 17135 17137 13248 21024 +17066 17209 17136 17138 13249 21025 +17067 17210 17137 17139 13250 21026 +17068 17211 17138 17140 13251 21027 +17069 17212 17139 17141 13252 21028 +17070 17213 17140 17142 13253 21029 +17071 17214 17141 17143 13254 21030 +17072 17215 17142 17144 13255 21031 +17073 17216 17143 17145 13256 21032 +17074 17217 17144 17146 13257 21033 +17075 17218 17145 17147 13258 21034 +17076 17219 17146 17148 13259 21035 +17077 17220 17147 17149 13260 21036 +17078 17221 17148 17150 13261 21037 +17079 17222 17149 17151 13262 21038 +17080 17223 17150 17151 13263 21039 +17081 17224 17152 17153 13264 21040 +17082 17225 17152 17154 13265 21041 +17083 17226 17153 17155 13266 21042 +17084 17227 17154 17156 13267 21043 +17085 17228 17155 17157 13268 21044 +17086 17229 17156 17158 13269 21045 +17087 17230 17157 17159 13270 21046 +17088 17231 17158 17160 13271 21047 +17089 17232 17159 17161 13272 21048 +17090 17233 17160 17162 13273 21049 +17091 17234 17161 17163 13274 21050 +17092 17235 17162 17164 13275 21051 +17093 17236 17163 17165 13276 21052 +17094 17237 17164 17166 13277 21053 +17095 17238 17165 17167 13278 21054 +17096 17239 17166 17168 13279 21055 +17097 17240 17167 17169 13280 21056 +17098 17241 17168 17170 13281 21057 +17099 17242 17169 17171 13282 21058 +17100 17243 17170 17172 13283 21059 +17101 17244 17171 17173 13284 21060 +17102 17245 17172 17174 13285 21061 +17103 17246 17173 17175 13286 21062 +17104 17247 17174 17176 13287 21063 +17105 17248 17175 17177 13288 21064 +17106 17249 17176 17178 13289 21065 +17107 17250 17177 17179 13290 21066 +17108 17251 17178 17180 13291 21067 +17109 17252 17179 17181 13292 21068 +17110 17253 17180 17182 13293 21069 +17111 17254 17181 17183 13294 21070 +17112 17255 17182 17184 13295 21071 +17113 17256 17183 17185 13296 21072 +17114 17257 17184 17186 13297 21073 +17115 17258 17185 17187 13298 21074 +17116 17259 17186 17188 13299 21075 +17116 17260 17187 17189 13300 21076 +17117 17261 17188 17190 13301 21077 +17118 17262 17189 17191 13302 21078 +17119 17263 17190 17192 13303 21079 +17120 17264 17191 17193 13304 21080 +17121 17265 17192 17194 13305 21081 +17122 17266 17193 17195 13306 21082 +17123 17267 17194 17196 13307 21083 +17124 17268 17195 17197 13308 21084 +17125 17269 17196 17198 13309 21085 +17126 17270 17197 17199 13310 21086 +17127 17271 17198 17200 13311 21087 +17128 17272 17199 17201 13312 21088 +17129 17273 17200 17202 13313 21089 +17130 17274 17201 17203 13314 21090 +17131 17275 17202 17204 13315 21091 +17132 17276 17203 17205 13316 21092 +17133 17277 17204 17206 13317 21093 +17134 17278 17205 17207 13318 21094 +17135 17279 17206 17208 13319 21095 +17136 17280 17207 17209 13320 21096 +17137 17281 17208 17210 13321 21097 +17138 17282 17209 17211 13322 21098 +17139 17283 17210 17212 13323 21099 +17140 17284 17211 17213 13324 21100 +17141 17285 17212 17214 13325 21101 +17142 17286 17213 17215 13326 21102 +17143 17287 17214 17216 13327 21103 +17144 17288 17215 17217 13328 21104 +17145 17289 17216 17218 13329 21105 +17146 17290 17217 17219 13330 21106 +17147 17291 17218 17220 13331 21107 +17148 17292 17219 17221 13332 21108 +17149 17293 17220 17222 13333 21109 +17150 17294 17221 17223 13334 21110 +17151 17295 17222 17223 13335 21111 +17152 17296 17224 17225 13336 21112 +17153 17297 17224 17226 13337 21113 +17154 17298 17225 17227 13338 21114 +17155 17299 17226 17228 13339 21115 +17156 17300 17227 17229 13340 21116 +17157 17301 17228 17230 13341 21117 +17158 17302 17229 17231 13342 21118 +17159 17303 17230 17232 13343 21119 +17160 17304 17231 17233 13344 21120 +17161 17305 17232 17234 13345 21121 +17162 17306 17233 17235 13346 21122 +17163 17307 17234 17236 13347 21123 +17164 17308 17235 17237 13348 21124 +17165 17309 17236 17238 13349 21125 +17166 17310 17237 17239 13350 21126 +17167 17311 17238 17240 13351 21127 +17168 17312 17239 17241 13352 21128 +17169 17313 17240 17242 13353 21129 +17170 17314 17241 17243 13354 21130 +17171 17315 17242 17244 13355 21131 +17172 17316 17243 17245 13356 21132 +17173 17317 17244 17246 13357 21133 +17174 17318 17245 17247 13358 21134 +17175 17319 17246 17248 13359 21135 +17176 17320 17247 17249 13360 21136 +17177 17321 17248 17250 13361 21137 +17178 17322 17249 17251 13362 21138 +17179 17323 17250 17252 13363 21139 +17180 17324 17251 17253 13364 21140 +17181 17325 17252 17254 13365 21141 +17182 17326 17253 17255 13366 21142 +17183 17327 17254 17256 13367 21143 +17184 17328 17255 17257 13368 21144 +17185 17329 17256 17258 13369 21145 +17186 17330 17257 17259 13370 21146 +17187 17331 17258 17260 13371 21147 +17188 17332 17259 17261 13372 21148 +17189 17333 17260 17262 13373 21149 +17190 17334 17261 17263 13374 21150 +17191 17335 17262 17264 13375 21151 +17192 17336 17263 17265 13376 21152 +17193 17337 17264 17266 13377 21153 +17194 17338 17265 17267 13378 21154 +17195 17339 17266 17268 13379 21155 +17196 17340 17267 17269 13380 21156 +17197 17341 17268 17270 13381 21157 +17198 17342 17269 17271 13382 21158 +17199 17343 17270 17272 13383 21159 +17200 17344 17271 17273 13384 21160 +17201 17345 17272 17274 13385 21161 +17202 17346 17273 17275 13386 21162 +17203 17347 17274 17276 13387 21163 +17204 17348 17275 17277 13388 21164 +17205 17349 17276 17278 13389 21165 +17206 17350 17277 17279 13390 21166 +17207 17351 17278 17280 13391 21167 +17208 17352 17279 17281 13392 21168 +17209 17353 17280 17282 13393 21169 +17210 17354 17281 17283 13394 21170 +17211 17355 17282 17284 13395 21171 +17212 17356 17283 17285 13396 21172 +17213 17357 17284 17286 13397 21173 +17214 17358 17285 17287 13398 21174 +17215 17359 17286 17288 13399 21175 +17216 17360 17287 17289 13400 21176 +17217 17361 17288 17290 13401 21177 +17218 17362 17289 17291 13402 21178 +17219 17363 17290 17292 13403 21179 +17220 17364 17291 17293 13404 21180 +17221 17365 17292 17294 13405 21181 +17222 17366 17293 17295 13406 21182 +17223 17367 17294 17295 13407 21183 +17224 17368 17296 17297 13408 21184 +17225 17369 17296 17298 13409 21185 +17226 17370 17297 17299 13410 21186 +17227 17371 17298 17300 13411 21187 +17228 17372 17299 17301 13412 21188 +17229 17373 17300 17302 13413 21189 +17230 17374 17301 17303 13414 21190 +17231 17375 17302 17304 13415 21191 +17232 17376 17303 17305 13416 21192 +17233 17377 17304 17306 13417 21193 +17234 17378 17305 17307 13418 21194 +17235 17379 17306 17308 13419 21195 +17236 17380 17307 17309 13420 21196 +17237 17381 17308 17310 13421 21197 +17238 17382 17309 17311 13422 21198 +17239 17383 17310 17312 13423 21199 +17240 17384 17311 17313 13424 21200 +17241 17385 17312 17314 13425 21201 +17242 17386 17313 17315 13426 21202 +17243 17387 17314 17316 13427 21203 +17244 17388 17315 17317 13428 21204 +17245 17389 17316 17318 13429 21205 +17246 17390 17317 17319 13430 21206 +17247 17391 17318 17320 13431 21207 +17248 17392 17319 17321 13432 21208 +17249 17393 17320 17322 13433 21209 +17250 17394 17321 17323 13434 21210 +17251 17395 17322 17324 13435 21211 +17252 17396 17323 17325 13436 21212 +17253 17397 17324 17326 13437 21213 +17254 17398 17325 17327 13438 21214 +17255 17399 17326 17328 13439 21215 +17256 17400 17327 17329 13440 21216 +17257 17401 17328 17330 13441 21217 +17258 17402 17329 17331 13442 21218 +17259 17403 17330 17332 13443 21219 +17260 17404 17331 17333 13444 21220 +17261 17405 17332 17334 13445 21221 +17262 17406 17333 17335 13446 21222 +17263 17407 17334 17336 13447 21223 +17264 17408 17335 17337 13448 21224 +17265 17409 17336 17338 13449 21225 +17266 17410 17337 17339 13450 21226 +17267 17411 17338 17340 13451 21227 +17268 17412 17339 17341 13452 21228 +17269 17413 17340 17342 13453 21229 +17270 17414 17341 17343 13454 21230 +17271 17415 17342 17344 13455 21231 +17272 17416 17343 17345 13456 21232 +17273 17417 17344 17346 13457 21233 +17274 17418 17345 17347 13458 21234 +17275 17419 17346 17348 13459 21235 +17276 17420 17347 17349 13460 21236 +17277 17421 17348 17350 13461 21237 +17278 17422 17349 17351 13462 21238 +17279 17423 17350 17352 13463 21239 +17280 17424 17351 17353 13464 21240 +17281 17425 17352 17354 13465 21241 +17282 17426 17353 17355 13466 21242 +17283 17427 17354 17356 13467 21243 +17284 17428 17355 17357 13468 21244 +17285 17429 17356 17358 13469 21245 +17286 17430 17357 17359 13470 21246 +17287 17431 17358 17360 13471 21247 +17288 17432 17359 17361 13472 21248 +17289 17433 17360 17362 13473 21249 +17290 17434 17361 17363 13474 21250 +17291 17435 17362 17364 13475 21251 +17292 17436 17363 17365 13476 21252 +17293 17437 17364 17366 13477 21253 +17294 17438 17365 17367 13478 21254 +17295 17439 17366 17367 13479 21255 +17296 17440 17368 17369 13480 21256 +17297 17441 17368 17370 13481 21257 +17298 17442 17369 17371 13482 21258 +17299 17443 17370 17372 13483 21259 +17300 17444 17371 17373 13484 21260 +17301 17445 17372 17374 13485 21261 +17302 17446 17373 17375 13486 21262 +17303 17447 17374 17376 13487 21263 +17304 17448 17375 17377 13488 21264 +17305 17449 17376 17378 13489 21265 +17306 17450 17377 17379 13490 21266 +17307 17451 17378 17380 13491 21267 +17308 17452 17379 17381 13492 21268 +17309 17453 17380 17382 13493 21269 +17310 17454 17381 17383 13494 21270 +17311 17455 17382 17384 13495 21271 +17312 17456 17383 17385 13496 21272 +17313 17457 17384 17386 13497 21273 +17314 17458 17385 17387 13498 21274 +17315 17459 17386 17388 13499 21275 +17316 17460 17387 17389 13500 21276 +17317 17461 17388 17390 13501 21277 +17318 17462 17389 17391 13502 21278 +17319 17463 17390 17392 13503 21279 +17320 17464 17391 17393 13504 21280 +17321 17465 17392 17394 13505 21281 +17322 17466 17393 17395 13506 21282 +17323 17467 17394 17396 13507 21283 +17324 17468 17395 17397 13508 21284 +17325 17469 17396 17398 13509 21285 +17326 17470 17397 17399 13510 21286 +17327 17471 17398 17400 13511 21287 +17328 17472 17399 17401 13512 21288 +17329 17473 17400 17402 13513 21289 +17330 17474 17401 17403 13514 21290 +17331 17475 17402 17404 13515 21291 +17332 17476 17403 17405 13516 21292 +17333 17477 17404 17406 13517 21293 +17334 17478 17405 17407 13518 21294 +17335 17479 17406 17408 13519 21295 +17336 17480 17407 17409 13520 21296 +17337 17481 17408 17410 13521 21297 +17338 17482 17409 17411 13522 21298 +17339 17483 17410 17412 13523 21299 +17340 17484 17411 17413 13524 21300 +17341 17485 17412 17414 13525 21301 +17342 17486 17413 17415 13526 21302 +17343 17487 17414 17416 13527 21303 +17344 17488 17415 17417 13528 21304 +17345 17489 17416 17418 13529 21305 +17346 17490 17417 17419 13530 21306 +17347 17491 17418 17420 13531 21307 +17348 17492 17419 17421 13532 21308 +17349 17493 17420 17422 13533 21309 +17350 17494 17421 17423 13534 21310 +17351 17495 17422 17424 13535 21311 +17352 17496 17423 17425 13536 21312 +17353 17497 17424 17426 13537 21313 +17354 17498 17425 17427 13538 21314 +17355 17499 17426 17428 13539 21315 +17356 17500 17427 17429 13540 21316 +17357 17501 17428 17430 13541 21317 +17358 17502 17429 17431 13542 21318 +17359 17503 17430 17432 13543 21319 +17360 17504 17431 17433 13544 21320 +17361 17505 17432 17434 13545 21321 +17362 17506 17433 17435 13546 21322 +17363 17507 17434 17436 13547 21323 +17364 17508 17435 17437 13548 21324 +17365 17509 17436 17438 13549 21325 +17366 17510 17437 17439 13550 21326 +17367 17511 17438 17439 13551 21327 +17368 17512 17440 17441 13552 21328 +17369 17513 17440 17442 13553 21329 +17370 17514 17441 17443 13554 21330 +17371 17515 17442 17444 13555 21331 +17372 17516 17443 17445 13556 21332 +17373 17517 17444 17446 13557 21333 +17374 17518 17445 17447 13558 21334 +17375 17519 17446 17448 13559 21335 +17376 17520 17447 17449 13560 21336 +17377 17521 17448 17450 13561 21337 +17378 17522 17449 17451 13562 21338 +17379 17523 17450 17452 13563 21339 +17380 17524 17451 17453 13564 21340 +17381 17525 17452 17454 13565 21341 +17382 17526 17453 17455 13566 21342 +17383 17527 17454 17456 13567 21343 +17384 17528 17455 17457 13568 21344 +17385 17529 17456 17458 13569 21345 +17386 17530 17457 17459 13570 21346 +17387 17531 17458 17460 13571 21347 +17388 17532 17459 17461 13572 21348 +17389 17533 17460 17462 13573 21349 +17390 17534 17461 17463 13574 21350 +17391 17535 17462 17464 13575 21351 +17392 17536 17463 17465 13576 21352 +17393 17537 17464 17466 13577 21353 +17394 17538 17465 17467 13578 21354 +17395 17539 17466 17468 13579 21355 +17396 17540 17467 17469 13580 21356 +17397 17541 17468 17470 13581 21357 +17398 17542 17469 17471 13582 21358 +17399 17543 17470 17472 13583 21359 +17400 17544 17471 17473 13584 21360 +17401 17545 17472 17474 13585 21361 +17402 17546 17473 17475 13586 21362 +17403 17547 17474 17476 13587 21363 +17404 17548 17475 17477 13588 21364 +17405 17549 17476 17478 13589 21365 +17406 17550 17477 17479 13590 21366 +17407 17551 17478 17480 13591 21367 +17408 17552 17479 17481 13592 21368 +17409 17553 17480 17482 13593 21369 +17410 17554 17481 17483 13594 21370 +17411 17555 17482 17484 13595 21371 +17412 17556 17483 17485 13596 21372 +17413 17557 17484 17486 13597 21373 +17414 17558 17485 17487 13598 21374 +17415 17559 17486 17488 13599 21375 +17416 17560 17487 17489 13600 21376 +17417 17561 17488 17490 13601 21377 +17418 17562 17489 17491 13602 21378 +17419 17563 17490 17492 13603 21379 +17420 17564 17491 17493 13604 21380 +17421 17565 17492 17494 13605 21381 +17422 17566 17493 17495 13606 21382 +17423 17567 17494 17496 13607 21383 +17424 17568 17495 17497 13608 21384 +17425 17569 17496 17498 13609 21385 +17426 17570 17497 17499 13610 21386 +17427 17571 17498 17500 13611 21387 +17428 17572 17499 17501 13612 21388 +17429 17573 17500 17502 13613 21389 +17430 17574 17501 17503 13614 21390 +17431 17575 17502 17504 13615 21391 +17432 17576 17503 17505 13616 21392 +17433 17577 17504 17506 13617 21393 +17434 17578 17505 17507 13618 21394 +17435 17579 17506 17508 13619 21395 +17436 17580 17507 17509 13620 21396 +17437 17581 17508 17510 13621 21397 +17438 17582 17509 17511 13622 21398 +17439 17583 17510 17511 13623 21399 +17440 17584 17512 17513 13624 21400 +17441 17585 17512 17514 13625 21401 +17442 17586 17513 17515 13626 21402 +17443 17587 17514 17516 13627 21403 +17444 17588 17515 17517 13628 21404 +17445 17589 17516 17518 13629 21405 +17446 17590 17517 17519 13630 21406 +17447 17591 17518 17520 13631 21407 +17448 17592 17519 17521 13632 21408 +17449 17593 17520 17522 13633 21409 +17450 17594 17521 17523 13634 21410 +17451 17595 17522 17524 13635 21411 +17452 17596 17523 17525 13636 21412 +17453 17597 17524 17526 13637 21413 +17454 17598 17525 17527 13638 21414 +17455 17599 17526 17528 13639 21415 +17456 17600 17527 17529 13640 21416 +17457 17601 17528 17530 13641 21417 +17458 17602 17529 17531 13642 21418 +17459 17603 17530 17532 13643 21419 +17460 17604 17531 17533 13644 21420 +17461 17605 17532 17534 13645 21421 +17462 17606 17533 17535 13646 21422 +17463 17607 17534 17536 13647 21423 +17464 17608 17535 17537 13648 21424 +17465 17609 17536 17538 13649 21425 +17466 17610 17537 17539 13650 21426 +17467 17611 17538 17540 13651 21427 +17468 17612 17539 17541 13652 21428 +17469 17613 17540 17542 13653 21429 +17470 17614 17541 17543 13654 21430 +17471 17615 17542 17544 13655 21431 +17472 17616 17543 17545 13656 21432 +17473 17617 17544 17546 13657 21433 +17474 17618 17545 17547 13658 21434 +17475 17619 17546 17548 13659 21435 +17476 17620 17547 17549 13660 21436 +17477 17621 17548 17550 13661 21437 +17478 17622 17549 17551 13662 21438 +17479 17623 17550 17552 13663 21439 +17480 17624 17551 17553 13664 21440 +17481 17625 17552 17554 13665 21441 +17482 17626 17553 17555 13666 21442 +17483 17627 17554 17556 13667 21443 +17484 17628 17555 17557 13668 21444 +17485 17629 17556 17558 13669 21445 +17486 17630 17557 17559 13670 21446 +17487 17631 17558 17560 13671 21447 +17488 17632 17559 17561 13672 21448 +17489 17633 17560 17562 13673 21449 +17490 17634 17561 17563 13674 21450 +17491 17635 17562 17564 13675 21451 +17492 17636 17563 17565 13676 21452 +17493 17637 17564 17566 13677 21453 +17494 17638 17565 17567 13678 21454 +17495 17639 17566 17568 13679 21455 +17496 17640 17567 17569 13680 21456 +17497 17641 17568 17570 13681 21457 +17498 17642 17569 17571 13682 21458 +17499 17643 17570 17572 13683 21459 +17500 17644 17571 17573 13684 21460 +17501 17645 17572 17574 13685 21461 +17502 17646 17573 17575 13686 21462 +17503 17647 17574 17576 13687 21463 +17504 17648 17575 17577 13688 21464 +17505 17649 17576 17578 13689 21465 +17506 17650 17577 17579 13690 21466 +17507 17651 17578 17580 13691 21467 +17508 17652 17579 17581 13692 21468 +17509 17653 17580 17582 13693 21469 +17510 17654 17581 17583 13694 21470 +17511 17655 17582 17583 13695 21471 +17512 17656 17584 17585 13696 21472 +17513 17657 17584 17586 13697 21473 +17514 17658 17585 17587 13698 21474 +17515 17659 17586 17588 13699 21475 +17516 17660 17587 17589 13700 21476 +17517 17661 17588 17590 13701 21477 +17518 17662 17589 17591 13702 21478 +17519 17663 17590 17592 13703 21479 +17520 17664 17591 17593 13704 21480 +17521 17665 17592 17594 13705 21481 +17522 17666 17593 17595 13706 21482 +17523 17667 17594 17596 13707 21483 +17524 17668 17595 17597 13708 21484 +17525 17669 17596 17598 13709 21485 +17526 17670 17597 17599 13710 21486 +17527 17671 17598 17600 13711 21487 +17528 17672 17599 17601 13712 21488 +17529 17673 17600 17602 13713 21489 +17530 17674 17601 17603 13714 21490 +17531 17675 17602 17604 13715 21491 +17532 17676 17603 17605 13716 21492 +17533 17677 17604 17606 13717 21493 +17534 17678 17605 17607 13718 21494 +17535 17679 17606 17608 13719 21495 +17536 17680 17607 17609 13720 21496 +17537 17681 17608 17610 13721 21497 +17538 17682 17609 17611 13722 21498 +17539 17683 17610 17612 13723 21499 +17540 17684 17611 17613 13724 21500 +17541 17685 17612 17614 13725 21501 +17542 17686 17613 17615 13726 21502 +17543 17687 17614 17616 13727 21503 +17544 17688 17615 17617 13728 21504 +17545 17689 17616 17618 13729 21505 +17546 17690 17617 17619 13730 21506 +17547 17691 17618 17620 13731 21507 +17548 17692 17619 17621 13732 21508 +17549 17693 17620 17622 13733 21509 +17550 17694 17621 17623 13734 21510 +17551 17695 17622 17624 13735 21511 +17552 17696 17623 17625 13736 21512 +17553 17697 17624 17626 13737 21513 +17554 17698 17625 17627 13738 21514 +17555 17699 17626 17628 13739 21515 +17556 17700 17627 17629 13740 21516 +17557 17701 17628 17630 13741 21517 +17558 17702 17629 17631 13742 21518 +17559 17703 17630 17632 13743 21519 +17560 17704 17631 17633 13744 21520 +17561 17705 17632 17634 13745 21521 +17562 17706 17633 17635 13746 21522 +17563 17707 17634 17636 13747 21523 +17564 17708 17635 17637 13748 21524 +17565 17709 17636 17638 13749 21525 +17566 17710 17637 17639 13750 21526 +17567 17711 17638 17640 13751 21527 +17568 17712 17639 17641 13752 21528 +17569 17713 17640 17642 13753 21529 +17570 17714 17641 17643 13754 21530 +17571 17715 17642 17644 13755 21531 +17572 17716 17643 17645 13756 21532 +17573 17717 17644 17646 13757 21533 +17574 17718 17645 17647 13758 21534 +17575 17719 17646 17648 13759 21535 +17576 17720 17647 17649 13760 21536 +17577 17721 17648 17650 13761 21537 +17578 17722 17649 17651 13762 21538 +17579 17723 17650 17652 13763 21539 +17580 17724 17651 17653 13764 21540 +17581 17725 17652 17654 13765 21541 +17582 17726 17653 17655 13766 21542 +17583 17727 17654 17655 13767 21543 +17584 17728 17656 17657 13768 21544 +17585 17729 17656 17658 13769 21545 +17586 17730 17657 17659 13770 21546 +17587 17731 17658 17660 13771 21547 +17588 17732 17659 17661 13772 21548 +17589 17733 17660 17662 13773 21549 +17590 17734 17661 17663 13774 21550 +17591 17735 17662 17664 13775 21551 +17592 17736 17663 17665 13776 21552 +17593 17737 17664 17666 13777 21553 +17594 17738 17665 17667 13778 21554 +17595 17739 17666 17668 13779 21555 +17596 17740 17667 17669 13780 21556 +17597 17741 17668 17670 13781 21557 +17598 17742 17669 17671 13782 21558 +17599 17743 17670 17672 13783 21559 +17600 17744 17671 17673 13784 21560 +17601 17745 17672 17674 13785 21561 +17602 17746 17673 17675 13786 21562 +17603 17747 17674 17676 13787 21563 +17604 17748 17675 17677 13788 21564 +17605 17749 17676 17678 13789 21565 +17606 17750 17677 17679 13790 21566 +17607 17751 17678 17680 13791 21567 +17608 17752 17679 17681 13792 21568 +17609 17753 17680 17682 13793 21569 +17610 17754 17681 17683 13794 21570 +17611 17755 17682 17684 13795 21571 +17612 17756 17683 17685 13796 21572 +17613 17757 17684 17686 13797 21573 +17614 17758 17685 17687 13798 21574 +17615 17759 17686 17688 13799 21575 +17616 17760 17687 17689 13800 21576 +17617 17761 17688 17690 13801 21577 +17618 17762 17689 17691 13802 21578 +17619 17763 17690 17692 13803 21579 +17620 17764 17691 17693 13804 21580 +17621 17765 17692 17694 13805 21581 +17622 17766 17693 17695 13806 21582 +17623 17767 17694 17696 13807 21583 +17624 17768 17695 17697 13808 21584 +17625 17769 17696 17698 13809 21585 +17626 17770 17697 17699 13810 21586 +17627 17771 17698 17700 13811 21587 +17628 17772 17699 17701 13812 21588 +17629 17773 17700 17702 13813 21589 +17630 17774 17701 17703 13814 21590 +17631 17775 17702 17704 13815 21591 +17632 17776 17703 17705 13816 21592 +17633 17777 17704 17706 13817 21593 +17634 17778 17705 17707 13818 21594 +17635 17779 17706 17708 13819 21595 +17636 17780 17707 17709 13820 21596 +17637 17781 17708 17710 13821 21597 +17638 17782 17709 17711 13822 21598 +17639 17783 17710 17712 13823 21599 +17640 17784 17711 17713 13824 21600 +17641 17785 17712 17714 13825 21601 +17642 17786 17713 17715 13826 21602 +17643 17787 17714 17716 13827 21603 +17644 17788 17715 17717 13828 21604 +17645 17789 17716 17718 13829 21605 +17646 17790 17717 17719 13830 21606 +17647 17791 17718 17720 13831 21607 +17648 17792 17719 17721 13832 21608 +17649 17793 17720 17722 13833 21609 +17650 17794 17721 17723 13834 21610 +17651 17795 17722 17724 13835 21611 +17652 17796 17723 17725 13836 21612 +17653 17797 17724 17726 13837 21613 +17654 17798 17725 17727 13838 21614 +17655 17799 17726 17727 13839 21615 +17656 17800 17728 17729 13840 21616 +17657 17801 17728 17730 13841 21617 +17658 17802 17729 17731 13842 21618 +17659 17803 17730 17732 13843 21619 +17660 17804 17731 17733 13844 21620 +17661 17805 17732 17734 13845 21621 +17662 17806 17733 17735 13846 21622 +17663 17807 17734 17736 13847 21623 +17664 17808 17735 17737 13848 21624 +17665 17809 17736 17738 13849 21625 +17666 17810 17737 17739 13850 21626 +17667 17811 17738 17740 13851 21627 +17668 17812 17739 17741 13852 21628 +17669 17813 17740 17742 13853 21629 +17670 17814 17741 17743 13854 21630 +17671 17815 17742 17744 13855 21631 +17672 17816 17743 17745 13856 21632 +17673 17817 17744 17746 13857 21633 +17674 17818 17745 17747 13858 21634 +17675 17819 17746 17748 13859 21635 +17676 17820 17747 17749 13860 21636 +17677 17821 17748 17750 13861 21637 +17678 17822 17749 17751 13862 21638 +17679 17823 17750 17752 13863 21639 +17680 17824 17751 17753 13864 21640 +17681 17825 17752 17754 13865 21641 +17682 17826 17753 17755 13866 21642 +17683 17827 17754 17756 13867 21643 +17684 17828 17755 17757 13868 21644 +17685 17829 17756 17758 13869 21645 +17686 17830 17757 17759 13870 21646 +17687 17831 17758 17760 13871 21647 +17688 17832 17759 17761 13872 21648 +17689 17833 17760 17762 13873 21649 +17690 17834 17761 17763 13874 21650 +17691 17835 17762 17764 13875 21651 +17692 17836 17763 17765 13876 21652 +17693 17837 17764 17766 13877 21653 +17694 17838 17765 17767 13878 21654 +17695 17839 17766 17768 13879 21655 +17696 17840 17767 17769 13880 21656 +17697 17841 17768 17770 13881 21657 +17698 17842 17769 17771 13882 21658 +17699 17843 17770 17772 13883 21659 +17700 17844 17771 17773 13884 21660 +17701 17845 17772 17774 13885 21661 +17702 17846 17773 17775 13886 21662 +17703 17847 17774 17776 13887 21663 +17704 17848 17775 17777 13888 21664 +17705 17849 17776 17778 13889 21665 +17706 17850 17777 17779 13890 21666 +17707 17851 17778 17780 13891 21667 +17708 17852 17779 17781 13892 21668 +17709 17853 17780 17782 13893 21669 +17710 17854 17781 17783 13894 21670 +17711 17855 17782 17784 13895 21671 +17712 17856 17783 17785 13896 21672 +17713 17857 17784 17786 13897 21673 +17714 17858 17785 17787 13898 21674 +17715 17859 17786 17788 13899 21675 +17716 17860 17787 17789 13900 21676 +17717 17861 17788 17790 13901 21677 +17718 17862 17789 17791 13902 21678 +17719 17863 17790 17792 13903 21679 +17720 17864 17791 17793 13904 21680 +17721 17865 17792 17794 13905 21681 +17722 17866 17793 17795 13906 21682 +17723 17867 17794 17796 13907 21683 +17724 17868 17795 17797 13908 21684 +17725 17869 17796 17798 13909 21685 +17726 17870 17797 17799 13910 21686 +17727 17871 17798 17799 13911 21687 +17728 17872 17800 17801 13912 21688 +17729 17873 17800 17802 13913 21689 +17730 17874 17801 17803 13914 21690 +17731 17875 17802 17804 13915 21691 +17732 17876 17803 17805 13916 21692 +17733 17877 17804 17806 13917 21693 +17734 17878 17805 17807 13918 21694 +17735 17879 17806 17808 13919 21695 +17736 17880 17807 17809 13920 21696 +17737 17881 17808 17810 13921 21697 +17738 17882 17809 17811 13922 21698 +17739 17883 17810 17812 13923 21699 +17740 17884 17811 17813 13924 21700 +17741 17885 17812 17814 13925 21701 +17742 17886 17813 17815 13926 21702 +17743 17887 17814 17816 13927 21703 +17744 17888 17815 17817 13928 21704 +17745 17889 17816 17818 13929 21705 +17746 17890 17817 17819 13930 21706 +17747 17891 17818 17820 13931 21707 +17748 17892 17819 17821 13932 21708 +17749 17893 17820 17822 13933 21709 +17750 17894 17821 17823 13934 21710 +17751 17895 17822 17824 13935 21711 +17752 17896 17823 17825 13936 21712 +17753 17897 17824 17826 13937 21713 +17754 17898 17825 17827 13938 21714 +17755 17899 17826 17828 13939 21715 +17756 17900 17827 17829 13940 21716 +17757 17901 17828 17830 13941 21717 +17758 17902 17829 17831 13942 21718 +17759 17903 17830 17832 13943 21719 +17760 17904 17831 17833 13944 21720 +17761 17905 17832 17834 13945 21721 +17762 17906 17833 17835 13946 21722 +17763 17907 17834 17836 13947 21723 +17764 17908 17835 17837 13948 21724 +17765 17909 17836 17838 13949 21725 +17766 17910 17837 17839 13950 21726 +17767 17911 17838 17840 13951 21727 +17768 17912 17839 17841 13952 21728 +17769 17913 17840 17842 13953 21729 +17770 17914 17841 17843 13954 21730 +17771 17915 17842 17844 13955 21731 +17772 17916 17843 17845 13956 21732 +17773 17917 17844 17846 13957 21733 +17774 17918 17845 17847 13958 21734 +17775 17919 17846 17848 13959 21735 +17776 17920 17847 17849 13960 21736 +17777 17921 17848 17850 13961 21737 +17778 17922 17849 17851 13962 21738 +17779 17923 17850 17852 13963 21739 +17780 17924 17851 17853 13964 21740 +17781 17925 17852 17854 13965 21741 +17782 17926 17853 17855 13966 21742 +17783 17927 17854 17856 13967 21743 +17784 17928 17855 17857 13968 21744 +17785 17929 17856 17858 13969 21745 +17786 17930 17857 17859 13970 21746 +17787 17931 17858 17860 13971 21747 +17788 17932 17859 17861 13972 21748 +17789 17933 17860 17862 13973 21749 +17790 17934 17861 17863 13974 21750 +17791 17935 17862 17864 13975 21751 +17792 17936 17863 17865 13976 21752 +17793 17937 17864 17866 13977 21753 +17794 17938 17865 17867 13978 21754 +17795 17939 17866 17868 13979 21755 +17796 17940 17867 17869 13980 21756 +17797 17941 17868 17870 13981 21757 +17798 17942 17869 17871 13982 21758 +17799 17943 17870 17871 13983 21759 +17800 17944 17872 17873 13984 21760 +17801 17945 17872 17874 13985 21761 +17802 17946 17873 17875 13986 21762 +17803 17947 17874 17876 13987 21763 +17804 17948 17875 17877 13988 21764 +17805 17949 17876 17878 13989 21765 +17806 17950 17877 17879 13990 21766 +17807 17951 17878 17880 13991 21767 +17808 17952 17879 17881 13992 21768 +17809 17953 17880 17882 13993 21769 +17810 17954 17881 17883 13994 21770 +17811 17955 17882 17884 13995 21771 +17812 17956 17883 17885 13996 21772 +17813 17957 17884 17886 13997 21773 +17814 17958 17885 17887 13998 21774 +17815 17959 17886 17888 13999 21775 +17816 17960 17887 17889 14000 21776 +17817 17961 17888 17890 14001 21777 +17818 17962 17889 17891 14002 21778 +17819 17963 17890 17892 14003 21779 +17820 17964 17891 17893 14004 21780 +17821 17965 17892 17894 14005 21781 +17822 17966 17893 17895 14006 21782 +17823 17967 17894 17896 14007 21783 +17824 17968 17895 17897 14008 21784 +17825 17969 17896 17898 14009 21785 +17826 17970 17897 17899 14010 21786 +17827 17971 17898 17900 14011 21787 +17828 17972 17899 17901 14012 21788 +17829 17973 17900 17902 14013 21789 +17830 17974 17901 17903 14014 21790 +17831 17975 17902 17904 14015 21791 +17832 17976 17903 17905 14016 21792 +17833 17977 17904 17906 14017 21793 +17834 17978 17905 17907 14018 21794 +17835 17979 17906 17908 14019 21795 +17836 17980 17907 17909 14020 21796 +17837 17981 17908 17910 14021 21797 +17838 17982 17909 17911 14022 21798 +17839 17983 17910 17912 14023 21799 +17840 17984 17911 17913 14024 21800 +17841 17985 17912 17914 14025 21801 +17842 17986 17913 17915 14026 21802 +17843 17987 17914 17916 14027 21803 +17844 17988 17915 17917 14028 21804 +17845 17989 17916 17918 14029 21805 +17846 17990 17917 17919 14030 21806 +17847 17991 17918 17920 14031 21807 +17848 17992 17919 17921 14032 21808 +17849 17993 17920 17922 14033 21809 +17850 17994 17921 17923 14034 21810 +17851 17995 17922 17924 14035 21811 +17852 17996 17923 17925 14036 21812 +17853 17997 17924 17926 14037 21813 +17854 17998 17925 17927 14038 21814 +17855 17999 17926 17928 14039 21815 +17856 18000 17927 17929 14040 21816 +17857 18001 17928 17930 14041 21817 +17858 18002 17929 17931 14042 21818 +17859 18003 17930 17932 14043 21819 +17860 18004 17931 17933 14044 21820 +17861 18005 17932 17934 14045 21821 +17862 18006 17933 17935 14046 21822 +17863 18007 17934 17936 14047 21823 +17864 18008 17935 17937 14048 21824 +17865 18009 17936 17938 14049 21825 +17866 18010 17937 17939 14050 21826 +17867 18011 17938 17940 14051 21827 +17868 18012 17939 17941 14052 21828 +17869 18013 17940 17942 14053 21829 +17870 18014 17941 17943 14054 21830 +17871 18015 17942 17943 14055 21831 +17872 18016 17944 17945 14056 21832 +17873 18017 17944 17946 14057 21833 +17874 18018 17945 17947 14058 21834 +17875 18019 17946 17948 14059 21835 +17876 18020 17947 17949 14060 21836 +17877 18021 17948 17950 14061 21837 +17878 18022 17949 17951 14062 21838 +17879 18023 17950 17952 14063 21839 +17880 18024 17951 17953 14064 21840 +17881 18025 17952 17954 14065 21841 +17882 18026 17953 17955 14066 21842 +17883 18027 17954 17956 14067 21843 +17884 18028 17955 17957 14068 21844 +17885 18029 17956 17958 14069 21845 +17886 18030 17957 17959 14070 21846 +17887 18031 17958 17960 14071 21847 +17888 18032 17959 17961 14072 21848 +17889 18033 17960 17962 14073 21849 +17890 18034 17961 17963 14074 21850 +17891 18035 17962 17964 14075 21851 +17892 18036 17963 17965 14076 21852 +17893 18037 17964 17966 14077 21853 +17894 18038 17965 17967 14078 21854 +17895 18039 17966 17968 14079 21855 +17896 18040 17967 17969 14080 21856 +17897 18041 17968 17970 14081 21857 +17898 18042 17969 17971 14082 21858 +17899 18043 17970 17972 14083 21859 +17900 18044 17971 17973 14084 21860 +17901 18045 17972 17974 14085 21861 +17902 18046 17973 17975 14086 21862 +17903 18047 17974 17976 14087 21863 +17904 18048 17975 17977 14088 21864 +17905 18049 17976 17978 14089 21865 +17906 18050 17977 17979 14090 21866 +17907 18051 17978 17980 14091 21867 +17908 18052 17979 17981 14092 21868 +17909 18053 17980 17982 14093 21869 +17910 18054 17981 17983 14094 21870 +17911 18055 17982 17984 14095 21871 +17912 18056 17983 17985 14096 21872 +17913 18057 17984 17986 14097 21873 +17914 18058 17985 17987 14098 21874 +17915 18059 17986 17988 14099 21875 +17916 18060 17987 17989 14100 21876 +17917 18061 17988 17990 14101 21877 +17918 18062 17989 17991 14102 21878 +17919 18063 17990 17992 14103 21879 +17920 18064 17991 17993 14104 21880 +17921 18065 17992 17994 14105 21881 +17922 18066 17993 17995 14106 21882 +17923 18067 17994 17996 14107 21883 +17924 18068 17995 17997 14108 21884 +17925 18069 17996 17998 14109 21885 +17926 18070 17997 17999 14110 21886 +17927 18071 17998 18000 14111 21887 +17928 18072 17999 18001 14112 21888 +17929 18073 18000 18002 14113 21889 +17930 18074 18001 18003 14114 21890 +17931 18075 18002 18004 14115 21891 +17932 18076 18003 18005 14116 21892 +17933 18077 18004 18006 14117 21893 +17934 18078 18005 18007 14118 21894 +17935 18079 18006 18008 14119 21895 +17936 18080 18007 18009 14120 21896 +17937 18081 18008 18010 14121 21897 +17938 18082 18009 18011 14122 21898 +17939 18083 18010 18012 14123 21899 +17940 18084 18011 18013 14124 21900 +17941 18085 18012 18014 14125 21901 +17942 18086 18013 18015 14126 21902 +17943 18087 18014 18015 14127 21903 +17944 18088 18016 18017 14128 21904 +17945 18089 18016 18018 14129 21905 +17946 18090 18017 18019 14130 21906 +17947 18091 18018 18020 14131 21907 +17948 18092 18019 18021 14132 21908 +17949 18093 18020 18022 14133 21909 +17950 18094 18021 18023 14134 21910 +17951 18095 18022 18024 14135 21911 +17952 18096 18023 18025 14136 21912 +17953 18097 18024 18026 14137 21913 +17954 18098 18025 18027 14138 21914 +17955 18099 18026 18028 14139 21915 +17956 18100 18027 18029 14140 21916 +17957 18101 18028 18030 14141 21917 +17958 18102 18029 18031 14142 21918 +17959 18103 18030 18032 14143 21919 +17960 18104 18031 18033 14144 21920 +17961 18105 18032 18034 14145 21921 +17962 18106 18033 18035 14146 21922 +17963 18107 18034 18036 14147 21923 +17964 18108 18035 18037 14148 21924 +17965 18109 18036 18038 14149 21925 +17966 18110 18037 18039 14150 21926 +17967 18111 18038 18040 14151 21927 +17968 18112 18039 18041 14152 21928 +17969 18113 18040 18042 14153 21929 +17970 18114 18041 18043 14154 21930 +17971 18115 18042 18044 14155 21931 +17972 18116 18043 18045 14156 21932 +17973 18117 18044 18046 14157 21933 +17974 18118 18045 18047 14158 21934 +17975 18119 18046 18048 14159 21935 +17976 18120 18047 18049 14160 21936 +17977 18121 18048 18050 14161 21937 +17978 18122 18049 18051 14162 21938 +17979 18123 18050 18052 14163 21939 +17980 18124 18051 18053 14164 21940 +17981 18125 18052 18054 14165 21941 +17982 18126 18053 18055 14166 21942 +17983 18127 18054 18056 14167 21943 +17984 18128 18055 18057 14168 21944 +17985 18129 18056 18058 14169 21945 +17986 18130 18057 18059 14170 21946 +17987 18131 18058 18060 14171 21947 +17988 18132 18059 18061 14172 21948 +17989 18133 18060 18062 14173 21949 +17990 18134 18061 18063 14174 21950 +17991 18135 18062 18064 14175 21951 +17992 18136 18063 18065 14176 21952 +17993 18137 18064 18066 14177 21953 +17994 18138 18065 18067 14178 21954 +17995 18139 18066 18068 14179 21955 +17996 18140 18067 18069 14180 21956 +17997 18141 18068 18070 14181 21957 +17998 18142 18069 18071 14182 21958 +17999 18143 18070 18072 14183 21959 +18000 18144 18071 18073 14184 21960 +18001 18145 18072 18074 14185 21961 +18002 18146 18073 18075 14186 21962 +18003 18147 18074 18076 14187 21963 +18004 18148 18075 18077 14188 21964 +18005 18149 18076 18078 14189 21965 +18006 18150 18077 18079 14190 21966 +18007 18151 18078 18080 14191 21967 +18008 18152 18079 18081 14192 21968 +18009 18153 18080 18082 14193 21969 +18010 18154 18081 18083 14194 21970 +18011 18155 18082 18084 14195 21971 +18012 18156 18083 18085 14196 21972 +18013 18157 18084 18086 14197 21973 +18014 18158 18085 18087 14198 21974 +18015 18159 18086 18087 14199 21975 +18016 18160 18088 18089 14200 21976 +18017 18161 18088 18090 14201 21977 +18018 18162 18089 18091 14202 21978 +18019 18163 18090 18092 14203 21979 +18020 18164 18091 18093 14204 21980 +18021 18165 18092 18094 14205 21981 +18022 18166 18093 18095 14206 21982 +18023 18167 18094 18096 14207 21983 +18024 18168 18095 18097 14208 21984 +18025 18169 18096 18098 14209 21985 +18026 18170 18097 18099 14210 21986 +18027 18171 18098 18100 14211 21987 +18028 18172 18099 18101 14212 21988 +18029 18173 18100 18102 14213 21989 +18030 18174 18101 18103 14214 21990 +18031 18175 18102 18104 14215 21991 +18032 18176 18103 18105 14216 21992 +18033 18177 18104 18106 14217 21993 +18034 18178 18105 18107 14218 21994 +18035 18179 18106 18108 14219 21995 +18036 18180 18107 18109 14220 21996 +18037 18181 18108 18110 14221 21997 +18038 18182 18109 18111 14222 21998 +18039 18183 18110 18112 14223 21999 +18040 18184 18111 18113 14224 22000 +18041 18185 18112 18114 14225 22001 +18042 18186 18113 18115 14226 22002 +18043 18187 18114 18116 14227 22003 +18044 18188 18115 18117 14228 22004 +18045 18189 18116 18118 14229 22005 +18046 18190 18117 18119 14230 22006 +18047 18191 18118 18120 14231 22007 +18048 18192 18119 18121 14232 22008 +18049 18193 18120 18122 14233 22009 +18050 18194 18121 18123 14234 22010 +18051 18195 18122 18124 14235 22011 +18052 18196 18123 18125 14236 22012 +18053 18197 18124 18126 14237 22013 +18054 18198 18125 18127 14238 22014 +18055 18199 18126 18128 14239 22015 +18056 18200 18127 18129 14240 22016 +18057 18201 18128 18130 14241 22017 +18058 18202 18129 18131 14242 22018 +18059 18203 18130 18132 14243 22019 +18060 18204 18131 18133 14244 22020 +18061 18205 18132 18134 14245 22021 +18062 18206 18133 18135 14246 22022 +18063 18207 18134 18136 14247 22023 +18064 18208 18135 18137 14248 22024 +18065 18209 18136 18138 14249 22025 +18066 18210 18137 18139 14250 22026 +18067 18211 18138 18140 14251 22027 +18068 18212 18139 18141 14252 22028 +18069 18213 18140 18142 14253 22029 +18070 18214 18141 18143 14254 22030 +18071 18215 18142 18144 14255 22031 +18072 18216 18143 18145 14256 22032 +18073 18217 18144 18146 14257 22033 +18074 18218 18145 18147 14258 22034 +18075 18219 18146 18148 14259 22035 +18076 18220 18147 18149 14260 22036 +18077 18221 18148 18150 14261 22037 +18078 18222 18149 18151 14262 22038 +18079 18223 18150 18152 14263 22039 +18080 18224 18151 18153 14264 22040 +18081 18225 18152 18154 14265 22041 +18082 18226 18153 18155 14266 22042 +18083 18227 18154 18156 14267 22043 +18084 18228 18155 18157 14268 22044 +18085 18229 18156 18158 14269 22045 +18086 18230 18157 18159 14270 22046 +18087 18231 18158 18159 14271 22047 +18088 18232 18160 18161 14272 22048 +18089 18233 18160 18162 14273 22049 +18090 18234 18161 18163 14274 22050 +18091 18235 18162 18164 14275 22051 +18092 18236 18163 18165 14276 22052 +18093 18237 18164 18166 14277 22053 +18094 18238 18165 18167 14278 22054 +18095 18239 18166 18168 14279 22055 +18096 18240 18167 18169 14280 22056 +18097 18241 18168 18170 14281 22057 +18098 18242 18169 18171 14282 22058 +18099 18243 18170 18172 14283 22059 +18100 18244 18171 18173 14284 22060 +18101 18245 18172 18174 14285 22061 +18102 18246 18173 18175 14286 22062 +18103 18247 18174 18176 14287 22063 +18104 18248 18175 18177 14288 22064 +18105 18249 18176 18178 14289 22065 +18106 18250 18177 18179 14290 22066 +18107 18251 18178 18180 14291 22067 +18108 18252 18179 18181 14292 22068 +18109 18253 18180 18182 14293 22069 +18110 18254 18181 18183 14294 22070 +18111 18255 18182 18184 14295 22071 +18112 18256 18183 18185 14296 22072 +18113 18257 18184 18186 14297 22073 +18114 18258 18185 18187 14298 22074 +18115 18259 18186 18188 14299 22075 +18116 18260 18187 18189 14300 22076 +18117 18261 18188 18190 14301 22077 +18118 18262 18189 18191 14302 22078 +18119 18263 18190 18192 14303 22079 +18120 18264 18191 18193 14304 22080 +18121 18265 18192 18194 14305 22081 +18122 18266 18193 18195 14306 22082 +18123 18267 18194 18196 14307 22083 +18124 18268 18195 18197 14308 22084 +18125 18269 18196 18198 14309 22085 +18126 18270 18197 18199 14310 22086 +18127 18271 18198 18200 14311 22087 +18128 18272 18199 18201 14312 22088 +18129 18273 18200 18202 14313 22089 +18130 18274 18201 18203 14314 22090 +18131 18275 18202 18204 14315 22091 +18132 18276 18203 18205 14316 22092 +18133 18277 18204 18206 14317 22093 +18134 18278 18205 18207 14318 22094 +18135 18279 18206 18208 14319 22095 +18136 18280 18207 18209 14320 22096 +18137 18281 18208 18210 14321 22097 +18138 18282 18209 18211 14322 22098 +18139 18283 18210 18212 14323 22099 +18140 18284 18211 18213 14324 22100 +18141 18285 18212 18214 14325 22101 +18142 18286 18213 18215 14326 22102 +18143 18287 18214 18216 14327 22103 +18144 18288 18215 18217 14328 22104 +18145 18289 18216 18218 14329 22105 +18146 18290 18217 18219 14330 22106 +18147 18291 18218 18220 14331 22107 +18148 18292 18219 18221 14332 22108 +18149 18293 18220 18222 14333 22109 +18150 18294 18221 18223 14334 22110 +18151 18295 18222 18224 14335 22111 +18152 18296 18223 18225 14336 22112 +18153 18297 18224 18226 14337 22113 +18154 18298 18225 18227 14338 22114 +18155 18299 18226 18228 14339 22115 +18156 18300 18227 18229 14340 22116 +18157 18301 18228 18230 14341 22117 +18158 18302 18229 18231 14342 22118 +18159 18303 18230 18231 14343 22119 +18160 18304 18232 18233 14344 22120 +18161 18305 18232 18234 14345 22121 +18162 18306 18233 18235 14346 22122 +18163 18307 18234 18236 14347 22123 +18164 18308 18235 18237 14348 22124 +18165 18309 18236 18238 14349 22125 +18166 18310 18237 18239 14350 22126 +18167 18311 18238 18240 14351 22127 +18168 18312 18239 18241 14352 22128 +18169 18313 18240 18242 14353 22129 +18170 18314 18241 18243 14354 22130 +18171 18315 18242 18244 14355 22131 +18172 18316 18243 18245 14356 22132 +18173 18317 18244 18246 14357 22133 +18174 18318 18245 18247 14358 22134 +18175 18319 18246 18248 14359 22135 +18176 18320 18247 18249 14360 22136 +18177 18321 18248 18250 14361 22137 +18178 18322 18249 18251 14362 22138 +18179 18323 18250 18252 14363 22139 +18180 18324 18251 18253 14364 22140 +18181 18325 18252 18254 14365 22141 +18182 18326 18253 18255 14366 22142 +18183 18327 18254 18256 14367 22143 +18184 18328 18255 18257 14368 22144 +18185 18329 18256 18258 14369 22145 +18186 18330 18257 18259 14370 22146 +18187 18331 18258 18260 14371 22147 +18188 18332 18259 18261 14372 22148 +18189 18333 18260 18262 14373 22149 +18190 18334 18261 18263 14374 22150 +18191 18335 18262 18264 14375 22151 +18192 18336 18263 18265 14376 22152 +18193 18337 18264 18266 14377 22153 +18194 18338 18265 18267 14378 22154 +18195 18339 18266 18268 14379 22155 +18196 18340 18267 18269 14380 22156 +18197 18341 18268 18270 14381 22157 +18198 18342 18269 18271 14382 22158 +18199 18343 18270 18272 14383 22159 +18200 18344 18271 18273 14384 22160 +18201 18345 18272 18274 14385 22161 +18202 18346 18273 18275 14386 22162 +18203 18347 18274 18276 14387 22163 +18204 18348 18275 18277 14388 22164 +18205 18349 18276 18278 14389 22165 +18206 18350 18277 18279 14390 22166 +18207 18351 18278 18280 14391 22167 +18208 18352 18279 18281 14392 22168 +18209 18353 18280 18282 14393 22169 +18210 18354 18281 18283 14394 22170 +18211 18355 18282 18284 14395 22171 +18212 18356 18283 18285 14396 22172 +18213 18357 18284 18286 14397 22173 +18214 18358 18285 18287 14398 22174 +18215 18359 18286 18288 14399 22175 +18216 18360 18287 18289 14400 22176 +18217 18361 18288 18290 14401 22177 +18218 18362 18289 18291 14402 22178 +18219 18363 18290 18292 14403 22179 +18220 18364 18291 18293 14404 22180 +18221 18365 18292 18294 14405 22181 +18222 18366 18293 18295 14406 22182 +18223 18367 18294 18296 14407 22183 +18224 18368 18295 18297 14408 22184 +18225 18369 18296 18298 14409 22185 +18226 18370 18297 18299 14410 22186 +18227 18371 18298 18300 14411 22187 +18228 18372 18299 18301 14412 22188 +18229 18373 18300 18302 14413 22189 +18230 18374 18301 18303 14414 22190 +18231 18375 18302 18303 14415 22191 +18232 18376 18304 18305 14416 22192 +18233 18377 18304 18306 14417 22193 +18234 18378 18305 18307 14418 22194 +18235 18379 18306 18308 14419 22195 +18236 18380 18307 18309 14420 22196 +18237 18381 18308 18310 14421 22197 +18238 18382 18309 18311 14422 22198 +18239 18383 18310 18312 14423 22199 +18240 18384 18311 18313 14424 22200 +18241 18385 18312 18314 14425 22201 +18242 18386 18313 18315 14426 22202 +18243 18387 18314 18316 14427 22203 +18244 18388 18315 18317 14428 22204 +18245 18389 18316 18318 14429 22205 +18246 18390 18317 18319 14430 22206 +18247 18391 18318 18320 14431 22207 +18248 18392 18319 18321 14432 22208 +18249 18393 18320 18322 14433 22209 +18250 18394 18321 18323 14434 22210 +18251 18395 18322 18324 14435 22211 +18252 18396 18323 18325 14436 22212 +18253 18397 18324 18326 14437 22213 +18254 18398 18325 18327 14438 22214 +18255 18399 18326 18328 14439 22215 +18256 18400 18327 18329 14440 22216 +18257 18401 18328 18330 14441 22217 +18258 18402 18329 18331 14442 22218 +18259 18403 18330 18332 14443 22219 +18260 18404 18331 18333 14444 22220 +18261 18405 18332 18334 14445 22221 +18262 18406 18333 18335 14446 22222 +18263 18407 18334 18336 14447 22223 +18264 18408 18335 18337 14448 22224 +18265 18409 18336 18338 14449 22225 +18266 18410 18337 18339 14450 22226 +18267 18411 18338 18340 14451 22227 +18268 18412 18339 18341 14452 22228 +18269 18413 18340 18342 14453 22229 +18270 18414 18341 18343 14454 22230 +18271 18415 18342 18344 14455 22231 +18272 18416 18343 18345 14456 22232 +18273 18417 18344 18346 14457 22233 +18274 18418 18345 18347 14458 22234 +18275 18419 18346 18348 14459 22235 +18276 18420 18347 18349 14460 22236 +18277 18421 18348 18350 14461 22237 +18278 18422 18349 18351 14462 22238 +18279 18423 18350 18352 14463 22239 +18280 18424 18351 18353 14464 22240 +18281 18425 18352 18354 14465 22241 +18282 18426 18353 18355 14466 22242 +18283 18427 18354 18356 14467 22243 +18284 18428 18355 18357 14468 22244 +18285 18429 18356 18358 14469 22245 +18286 18430 18357 18359 14470 22246 +18287 18431 18358 18360 14471 22247 +18288 18432 18359 18361 14472 22248 +18289 18433 18360 18362 14473 22249 +18290 18434 18361 18363 14474 22250 +18291 18435 18362 18364 14475 22251 +18292 18436 18363 18365 14476 22252 +18293 18437 18364 18366 14477 22253 +18294 18438 18365 18367 14478 22254 +18295 18439 18366 18368 14479 22255 +18296 18440 18367 18369 14480 22256 +18297 18441 18368 18370 14481 22257 +18298 18442 18369 18371 14482 22258 +18299 18443 18370 18372 14483 22259 +18300 18444 18371 18373 14484 22260 +18301 18445 18372 18374 14485 22261 +18302 18446 18373 18375 14486 22262 +18303 18447 18374 18375 14487 22263 +18304 18448 18376 18377 14488 22264 +18305 18449 18376 18378 14489 22265 +18306 18450 18377 18379 14490 22266 +18307 18451 18378 18380 14491 22267 +18308 18452 18379 18381 14492 22268 +18309 18453 18380 18382 14493 22269 +18310 18454 18381 18383 14494 22270 +18311 18455 18382 18384 14495 22271 +18312 18456 18383 18385 14496 22272 +18313 18457 18384 18386 14497 22273 +18314 18458 18385 18387 14498 22274 +18315 18459 18386 18388 14499 22275 +18316 18460 18387 18389 14500 22276 +18317 18461 18388 18390 14501 22277 +18318 18462 18389 18391 14502 22278 +18319 18463 18390 18392 14503 22279 +18320 18464 18391 18393 14504 22280 +18321 18465 18392 18394 14505 22281 +18322 18466 18393 18395 14506 22282 +18323 18467 18394 18396 14507 22283 +18324 18468 18395 18397 14508 22284 +18325 18469 18396 18398 14509 22285 +18326 18470 18397 18399 14510 22286 +18327 18471 18398 18400 14511 22287 +18328 18472 18399 18401 14512 22288 +18329 18473 18400 18402 14513 22289 +18330 18474 18401 18403 14514 22290 +18331 18475 18402 18404 14515 22291 +18332 18476 18403 18405 14516 22292 +18333 18477 18404 18406 14517 22293 +18334 18478 18405 18407 14518 22294 +18335 18479 18406 18408 14519 22295 +18336 18480 18407 18409 14520 22296 +18337 18481 18408 18410 14521 22297 +18338 18482 18409 18411 14522 22298 +18339 18483 18410 18412 14523 22299 +18340 18484 18411 18413 14524 22300 +18341 18485 18412 18414 14525 22301 +18342 18486 18413 18415 14526 22302 +18343 18487 18414 18416 14527 22303 +18344 18488 18415 18417 14528 22304 +18345 18489 18416 18418 14529 22305 +18346 18490 18417 18419 14530 22306 +18347 18491 18418 18420 14531 22307 +18348 18492 18419 18421 14532 22308 +18349 18493 18420 18422 14533 22309 +18350 18494 18421 18423 14534 22310 +18351 18495 18422 18424 14535 22311 +18352 18496 18423 18425 14536 22312 +18353 18497 18424 18426 14537 22313 +18354 18498 18425 18427 14538 22314 +18355 18499 18426 18428 14539 22315 +18356 18500 18427 18429 14540 22316 +18357 18501 18428 18430 14541 22317 +18358 18502 18429 18431 14542 22318 +18359 18503 18430 18432 14543 22319 +18360 18504 18431 18433 14544 22320 +18361 18505 18432 18434 14545 22321 +18362 18506 18433 18435 14546 22322 +18363 18507 18434 18436 14547 22323 +18364 18508 18435 18437 14548 22324 +18365 18509 18436 18438 14549 22325 +18366 18510 18437 18439 14550 22326 +18367 18511 18438 18440 14551 22327 +18368 18512 18439 18441 14552 22328 +18369 18513 18440 18442 14553 22329 +18370 18514 18441 18443 14554 22330 +18371 18515 18442 18444 14555 22331 +18372 18516 18443 18445 14556 22332 +18373 18517 18444 18446 14557 22333 +18374 18518 18445 18447 14558 22334 +18375 18519 18446 18447 14559 22335 +18376 18520 18448 18449 14560 22336 +18377 18521 18448 18450 14561 22337 +18378 18522 18449 18451 14562 22338 +18379 18523 18450 18452 14563 22339 +18380 18524 18451 18453 14564 22340 +18381 18525 18452 18454 14565 22341 +18382 18526 18453 18455 14566 22342 +18383 18527 18454 18456 14567 22343 +18384 18528 18455 18457 14568 22344 +18385 18529 18456 18458 14569 22345 +18386 18530 18457 18459 14570 22346 +18387 18531 18458 18460 14571 22347 +18388 18532 18459 18461 14572 22348 +18389 18533 18460 18462 14573 22349 +18390 18534 18461 18463 14574 22350 +18391 18535 18462 18464 14575 22351 +18392 18536 18463 18465 14576 22352 +18393 18537 18464 18466 14577 22353 +18394 18538 18465 18467 14578 22354 +18395 18539 18466 18468 14579 22355 +18396 18540 18467 18469 14580 22356 +18397 18541 18468 18470 14581 22357 +18398 18542 18469 18471 14582 22358 +18399 18543 18470 18472 14583 22359 +18400 18544 18471 18473 14584 22360 +18401 18545 18472 18474 14585 22361 +18402 18546 18473 18475 14586 22362 +18403 18547 18474 18476 14587 22363 +18404 18548 18475 18477 14588 22364 +18405 18549 18476 18478 14589 22365 +18406 18550 18477 18479 14590 22366 +18407 18551 18478 18480 14591 22367 +18408 18552 18479 18481 14592 22368 +18409 18553 18480 18482 14593 22369 +18410 18554 18481 18483 14594 22370 +18411 18555 18482 18484 14595 22371 +18412 18556 18483 18485 14596 22372 +18413 18557 18484 18486 14597 22373 +18414 18558 18485 18487 14598 22374 +18415 18559 18486 18488 14599 22375 +18416 18560 18487 18489 14600 22376 +18417 18561 18488 18490 14601 22377 +18418 18562 18489 18491 14602 22378 +18419 18563 18490 18492 14603 22379 +18420 18564 18491 18493 14604 22380 +18421 18565 18492 18494 14605 22381 +18422 18566 18493 18495 14606 22382 +18423 18567 18494 18496 14607 22383 +18424 18568 18495 18497 14608 22384 +18425 18569 18496 18498 14609 22385 +18426 18570 18497 18499 14610 22386 +18427 18571 18498 18500 14611 22387 +18428 18572 18499 18501 14612 22388 +18429 18573 18500 18502 14613 22389 +18430 18574 18501 18503 14614 22390 +18431 18575 18502 18504 14615 22391 +18432 18576 18503 18505 14616 22392 +18433 18577 18504 18506 14617 22393 +18434 18578 18505 18507 14618 22394 +18435 18579 18506 18508 14619 22395 +18436 18580 18507 18509 14620 22396 +18437 18581 18508 18510 14621 22397 +18438 18582 18509 18511 14622 22398 +18439 18583 18510 18512 14623 22399 +18440 18584 18511 18513 14624 22400 +18441 18585 18512 18514 14625 22401 +18442 18586 18513 18515 14626 22402 +18443 18587 18514 18516 14627 22403 +18444 18588 18515 18517 14628 22404 +18445 18589 18516 18518 14629 22405 +18446 18590 18517 18519 14630 22406 +18447 18591 18518 18519 14631 22407 +18448 18592 18520 18521 14632 22408 +18449 18593 18520 18522 14633 22409 +18450 18594 18521 18523 14634 22410 +18451 18595 18522 18524 14635 22411 +18452 18596 18523 18525 14636 22412 +18453 18597 18524 18526 14637 22413 +18454 18598 18525 18527 14638 22414 +18455 18599 18526 18528 14639 22415 +18456 18600 18527 18529 14640 22416 +18457 18601 18528 18530 14641 22417 +18458 18602 18529 18531 14642 22418 +18459 18603 18530 18532 14643 22419 +18460 18604 18531 18533 14644 22420 +18461 18605 18532 18534 14645 22421 +18462 18606 18533 18535 14646 22422 +18463 18607 18534 18536 14647 22423 +18464 18608 18535 18537 14648 22424 +18465 18609 18536 18538 14649 22425 +18466 18610 18537 18539 14650 22426 +18467 18611 18538 18540 14651 22427 +18468 18612 18539 18541 14652 22428 +18469 18613 18540 18542 14653 22429 +18470 18614 18541 18543 14654 22430 +18471 18615 18542 18544 14655 22431 +18472 18616 18543 18545 14656 22432 +18473 18617 18544 18546 14657 22433 +18474 18618 18545 18547 14658 22434 +18475 18619 18546 18548 14659 22435 +18476 18620 18547 18549 14660 22436 +18477 18621 18548 18550 14661 22437 +18478 18622 18549 18551 14662 22438 +18479 18623 18550 18552 14663 22439 +18480 18624 18551 18553 14664 22440 +18481 18625 18552 18554 14665 22441 +18482 18626 18553 18555 14666 22442 +18483 18627 18554 18556 14667 22443 +18484 18628 18555 18557 14668 22444 +18485 18629 18556 18558 14669 22445 +18486 18630 18557 18559 14670 22446 +18487 18631 18558 18560 14671 22447 +18488 18632 18559 18561 14672 22448 +18489 18633 18560 18562 14673 22449 +18490 18634 18561 18563 14674 22450 +18491 18635 18562 18564 14675 22451 +18492 18636 18563 18565 14676 22452 +18493 18637 18564 18566 14677 22453 +18494 18638 18565 18567 14678 22454 +18495 18639 18566 18568 14679 22455 +18496 18640 18567 18569 14680 22456 +18497 18641 18568 18570 14681 22457 +18498 18642 18569 18571 14682 22458 +18499 18643 18570 18572 14683 22459 +18500 18644 18571 18573 14684 22460 +18501 18645 18572 18574 14685 22461 +18502 18646 18573 18575 14686 22462 +18503 18647 18574 18576 14687 22463 +18504 18648 18575 18577 14688 22464 +18505 18649 18576 18578 14689 22465 +18506 18650 18577 18579 14690 22466 +18507 18651 18578 18580 14691 22467 +18508 18652 18579 18581 14692 22468 +18509 18653 18580 18582 14693 22469 +18510 18654 18581 18583 14694 22470 +18511 18655 18582 18584 14695 22471 +18512 18656 18583 18585 14696 22472 +18513 18657 18584 18586 14697 22473 +18514 18658 18585 18587 14698 22474 +18515 18659 18586 18588 14699 22475 +18516 18660 18587 18589 14700 22476 +18517 18661 18588 18590 14701 22477 +18518 18662 18589 18591 14702 22478 +18519 18663 18590 18591 14703 22479 +18520 18664 18592 18593 14704 22480 +18521 18665 18592 18594 14705 22481 +18522 18666 18593 18595 14706 22482 +18523 18667 18594 18596 14707 22483 +18524 18668 18595 18597 14708 22484 +18525 18669 18596 18598 14709 22485 +18526 18670 18597 18599 14710 22486 +18527 18671 18598 18600 14711 22487 +18528 18672 18599 18601 14712 22488 +18529 18673 18600 18602 14713 22489 +18530 18674 18601 18603 14714 22490 +18531 18675 18602 18604 14715 22491 +18532 18676 18603 18605 14716 22492 +18533 18677 18604 18606 14717 22493 +18534 18678 18605 18607 14718 22494 +18535 18679 18606 18608 14719 22495 +18536 18680 18607 18609 14720 22496 +18537 18681 18608 18610 14721 22497 +18538 18682 18609 18611 14722 22498 +18539 18683 18610 18612 14723 22499 +18540 18684 18611 18613 14724 22500 +18541 18685 18612 18614 14725 22501 +18542 18686 18613 18615 14726 22502 +18543 18687 18614 18616 14727 22503 +18544 18688 18615 18617 14728 22504 +18545 18689 18616 18618 14729 22505 +18546 18690 18617 18619 14730 22506 +18547 18691 18618 18620 14731 22507 +18548 18692 18619 18621 14732 22508 +18549 18693 18620 18622 14733 22509 +18550 18694 18621 18623 14734 22510 +18551 18695 18622 18624 14735 22511 +18552 18696 18623 18625 14736 22512 +18553 18697 18624 18626 14737 22513 +18554 18698 18625 18627 14738 22514 +18555 18699 18626 18628 14739 22515 +18556 18700 18627 18629 14740 22516 +18557 18701 18628 18630 14741 22517 +18558 18702 18629 18631 14742 22518 +18559 18703 18630 18632 14743 22519 +18560 18704 18631 18633 14744 22520 +18561 18705 18632 18634 14745 22521 +18562 18706 18633 18635 14746 22522 +18563 18707 18634 18636 14747 22523 +18564 18708 18635 18637 14748 22524 +18565 18709 18636 18638 14749 22525 +18566 18710 18637 18639 14750 22526 +18567 18711 18638 18640 14751 22527 +18568 18712 18639 18641 14752 22528 +18569 18713 18640 18642 14753 22529 +18570 18714 18641 18643 14754 22530 +18571 18715 18642 18644 14755 22531 +18572 18716 18643 18645 14756 22532 +18573 18717 18644 18646 14757 22533 +18574 18718 18645 18647 14758 22534 +18575 18719 18646 18648 14759 22535 +18576 18720 18647 18649 14760 22536 +18577 18721 18648 18650 14761 22537 +18578 18722 18649 18651 14762 22538 +18579 18723 18650 18652 14763 22539 +18580 18724 18651 18653 14764 22540 +18581 18725 18652 18654 14765 22541 +18582 18726 18653 18655 14766 22542 +18583 18727 18654 18656 14767 22543 +18584 18728 18655 18657 14768 22544 +18585 18729 18656 18658 14769 22545 +18586 18730 18657 18659 14770 22546 +18587 18731 18658 18660 14771 22547 +18588 18732 18659 18661 14772 22548 +18589 18733 18660 18662 14773 22549 +18590 18734 18661 18663 14774 22550 +18591 18735 18662 18663 14775 22551 +18592 18736 18664 18665 14776 22552 +18593 18737 18664 18666 14777 22553 +18594 18738 18665 18667 14778 22554 +18595 18739 18666 18668 14779 22555 +18596 18740 18667 18669 14780 22556 +18597 18741 18668 18670 14781 22557 +18598 18742 18669 18671 14782 22558 +18599 18743 18670 18672 14783 22559 +18600 18744 18671 18673 14784 22560 +18601 18745 18672 18674 14785 22561 +18602 18746 18673 18675 14786 22562 +18603 18747 18674 18676 14787 22563 +18604 18748 18675 18677 14788 22564 +18605 18749 18676 18678 14789 22565 +18606 18750 18677 18679 14790 22566 +18607 18751 18678 18680 14791 22567 +18608 18752 18679 18681 14792 22568 +18609 18753 18680 18682 14793 22569 +18610 18754 18681 18683 14794 22570 +18611 18755 18682 18684 14795 22571 +18612 18756 18683 18685 14796 22572 +18613 18757 18684 18686 14797 22573 +18614 18758 18685 18687 14798 22574 +18615 18759 18686 18688 14799 22575 +18616 18760 18687 18689 14800 22576 +18617 18761 18688 18690 14801 22577 +18618 18762 18689 18691 14802 22578 +18619 18763 18690 18692 14803 22579 +18620 18764 18691 18693 14804 22580 +18621 18765 18692 18694 14805 22581 +18622 18766 18693 18695 14806 22582 +18623 18767 18694 18696 14807 22583 +18624 18768 18695 18697 14808 22584 +18625 18769 18696 18698 14809 22585 +18626 18770 18697 18699 14810 22586 +18627 18771 18698 18700 14811 22587 +18628 18772 18699 18701 14812 22588 +18629 18773 18700 18702 14813 22589 +18630 18774 18701 18703 14814 22590 +18631 18775 18702 18704 14815 22591 +18632 18776 18703 18705 14816 22592 +18633 18777 18704 18706 14817 22593 +18634 18778 18705 18707 14818 22594 +18635 18779 18706 18708 14819 22595 +18636 18780 18707 18709 14820 22596 +18637 18781 18708 18710 14821 22597 +18638 18782 18709 18711 14822 22598 +18639 18783 18710 18712 14823 22599 +18640 18784 18711 18713 14824 22600 +18641 18785 18712 18714 14825 22601 +18642 18786 18713 18715 14826 22602 +18643 18787 18714 18716 14827 22603 +18644 18788 18715 18717 14828 22604 +18645 18789 18716 18718 14829 22605 +18646 18790 18717 18719 14830 22606 +18647 18791 18718 18720 14831 22607 +18648 18792 18719 18721 14832 22608 +18649 18793 18720 18722 14833 22609 +18650 18794 18721 18723 14834 22610 +18651 18795 18722 18724 14835 22611 +18652 18796 18723 18725 14836 22612 +18653 18797 18724 18726 14837 22613 +18654 18798 18725 18727 14838 22614 +18655 18799 18726 18728 14839 22615 +18656 18800 18727 18729 14840 22616 +18657 18801 18728 18730 14841 22617 +18658 18802 18729 18731 14842 22618 +18659 18803 18730 18732 14843 22619 +18660 18804 18731 18733 14844 22620 +18661 18805 18732 18734 14845 22621 +18662 18806 18733 18735 14846 22622 +18663 18807 18734 18735 14847 22623 +18664 18808 18736 18737 14848 22624 +18665 18809 18736 18738 14849 22625 +18666 18810 18737 18739 14850 22626 +18667 18811 18738 18740 14851 22627 +18668 18812 18739 18741 14852 22628 +18669 18813 18740 18742 14853 22629 +18670 18814 18741 18743 14854 22630 +18671 18815 18742 18744 14855 22631 +18672 18816 18743 18745 14856 22632 +18673 18817 18744 18746 14857 22633 +18674 18818 18745 18747 14858 22634 +18675 18819 18746 18748 14859 22635 +18676 18820 18747 18749 14860 22636 +18677 18821 18748 18750 14861 22637 +18678 18822 18749 18751 14862 22638 +18679 18823 18750 18752 14863 22639 +18680 18824 18751 18753 14864 22640 +18681 18825 18752 18754 14865 22641 +18682 18826 18753 18755 14866 22642 +18683 18827 18754 18756 14867 22643 +18684 18828 18755 18757 14868 22644 +18685 18829 18756 18758 14869 22645 +18686 18830 18757 18759 14870 22646 +18687 18831 18758 18760 14871 22647 +18688 18832 18759 18761 14872 22648 +18689 18833 18760 18762 14873 22649 +18690 18834 18761 18763 14874 22650 +18691 18835 18762 18764 14875 22651 +18692 18836 18763 18765 14876 22652 +18693 18837 18764 18766 14877 22653 +18694 18838 18765 18767 14878 22654 +18695 18839 18766 18768 14879 22655 +18696 18840 18767 18769 14880 22656 +18697 18841 18768 18770 14881 22657 +18698 18842 18769 18771 14882 22658 +18699 18843 18770 18772 14883 22659 +18700 18844 18771 18773 14884 22660 +18701 18845 18772 18774 14885 22661 +18702 18846 18773 18775 14886 22662 +18703 18847 18774 18776 14887 22663 +18704 18848 18775 18777 14888 22664 +18705 18849 18776 18778 14889 22665 +18706 18850 18777 18779 14890 22666 +18707 18851 18778 18780 14891 22667 +18708 18852 18779 18781 14892 22668 +18709 18853 18780 18782 14893 22669 +18710 18854 18781 18783 14894 22670 +18711 18855 18782 18784 14895 22671 +18712 18856 18783 18785 14896 22672 +18713 18857 18784 18786 14897 22673 +18714 18858 18785 18787 14898 22674 +18715 18859 18786 18788 14899 22675 +18716 18860 18787 18789 14900 22676 +18717 18861 18788 18790 14901 22677 +18718 18862 18789 18791 14902 22678 +18719 18863 18790 18792 14903 22679 +18720 18864 18791 18793 14904 22680 +18721 18865 18792 18794 14905 22681 +18722 18866 18793 18795 14906 22682 +18723 18867 18794 18796 14907 22683 +18724 18868 18795 18797 14908 22684 +18725 18869 18796 18798 14909 22685 +18726 18870 18797 18799 14910 22686 +18727 18871 18798 18800 14911 22687 +18728 18872 18799 18801 14912 22688 +18729 18873 18800 18802 14913 22689 +18730 18874 18801 18803 14914 22690 +18731 18875 18802 18804 14915 22691 +18732 18876 18803 18805 14916 22692 +18733 18877 18804 18806 14917 22693 +18734 18878 18805 18807 14918 22694 +18735 18879 18806 18807 14919 22695 +18736 18880 18808 18809 14920 22696 +18737 18881 18808 18810 14921 22697 +18738 18882 18809 18811 14922 22698 +18739 18883 18810 18812 14923 22699 +18740 18884 18811 18813 14924 22700 +18741 18885 18812 18814 14925 22701 +18742 18886 18813 18815 14926 22702 +18743 18887 18814 18816 14927 22703 +18744 18888 18815 18817 14928 22704 +18745 18889 18816 18818 14929 22705 +18746 18890 18817 18819 14930 22706 +18747 18891 18818 18820 14931 22707 +18748 18892 18819 18821 14932 22708 +18749 18893 18820 18822 14933 22709 +18750 18894 18821 18823 14934 22710 +18751 18895 18822 18824 14935 22711 +18752 18896 18823 18825 14936 22712 +18753 18897 18824 18826 14937 22713 +18754 18898 18825 18827 14938 22714 +18755 18899 18826 18828 14939 22715 +18756 18900 18827 18829 14940 22716 +18757 18901 18828 18830 14941 22717 +18758 18902 18829 18831 14942 22718 +18759 18903 18830 18832 14943 22719 +18760 18904 18831 18833 14944 22720 +18761 18905 18832 18834 14945 22721 +18762 18906 18833 18835 14946 22722 +18763 18907 18834 18836 14947 22723 +18764 18908 18835 18837 14948 22724 +18765 18909 18836 18838 14949 22725 +18766 18910 18837 18839 14950 22726 +18767 18911 18838 18840 14951 22727 +18768 18912 18839 18841 14952 22728 +18769 18913 18840 18842 14953 22729 +18770 18914 18841 18843 14954 22730 +18771 18915 18842 18844 14955 22731 +18772 18916 18843 18845 14956 22732 +18773 18917 18844 18846 14957 22733 +18774 18918 18845 18847 14958 22734 +18775 18919 18846 18848 14959 22735 +18776 18920 18847 18849 14960 22736 +18777 18921 18848 18850 14961 22737 +18778 18922 18849 18851 14962 22738 +18779 18923 18850 18852 14963 22739 +18780 18924 18851 18853 14964 22740 +18781 18925 18852 18854 14965 22741 +18782 18926 18853 18855 14966 22742 +18783 18927 18854 18856 14967 22743 +18784 18928 18855 18857 14968 22744 +18785 18929 18856 18858 14969 22745 +18786 18930 18857 18859 14970 22746 +18787 18931 18858 18860 14971 22747 +18788 18932 18859 18861 14972 22748 +18789 18933 18860 18862 14973 22749 +18790 18934 18861 18863 14974 22750 +18791 18935 18862 18864 14975 22751 +18792 18936 18863 18865 14976 22752 +18793 18937 18864 18866 14977 22753 +18794 18938 18865 18867 14978 22754 +18795 18939 18866 18868 14979 22755 +18796 18940 18867 18869 14980 22756 +18797 18941 18868 18870 14981 22757 +18798 18942 18869 18871 14982 22758 +18799 18943 18870 18872 14983 22759 +18800 18944 18871 18873 14984 22760 +18801 18945 18872 18874 14985 22761 +18802 18946 18873 18875 14986 22762 +18803 18947 18874 18876 14987 22763 +18804 18948 18875 18877 14988 22764 +18805 18949 18876 18878 14989 22765 +18806 18950 18877 18879 14990 22766 +18807 18951 18878 18879 14991 22767 +18808 18952 18880 18881 14992 22768 +18809 18953 18880 18882 14993 22769 +18810 18954 18881 18883 14994 22770 +18811 18955 18882 18884 14995 22771 +18812 18956 18883 18885 14996 22772 +18813 18957 18884 18886 14997 22773 +18814 18958 18885 18887 14998 22774 +18815 18959 18886 18888 14999 22775 +18816 18960 18887 18889 15000 22776 +18817 18961 18888 18890 15001 22777 +18818 18962 18889 18891 15002 22778 +18819 18963 18890 18892 15003 22779 +18820 18964 18891 18893 15004 22780 +18821 18965 18892 18894 15005 22781 +18822 18966 18893 18895 15006 22782 +18823 18967 18894 18896 15007 22783 +18824 18968 18895 18897 15008 22784 +18825 18969 18896 18898 15009 22785 +18826 18970 18897 18899 15010 22786 +18827 18971 18898 18900 15011 22787 +18828 18972 18899 18901 15012 22788 +18829 18973 18900 18902 15013 22789 +18830 18974 18901 18903 15014 22790 +18831 18975 18902 18904 15015 22791 +18832 18976 18903 18905 15016 22792 +18833 18977 18904 18906 15017 22793 +18834 18978 18905 18907 15018 22794 +18835 18979 18906 18908 15019 22795 +18836 18980 18907 18909 15020 22796 +18837 18981 18908 18910 15021 22797 +18838 18982 18909 18911 15022 22798 +18839 18983 18910 18912 15023 22799 +18840 18984 18911 18913 15024 22800 +18841 18985 18912 18914 15025 22801 +18842 18986 18913 18915 15026 22802 +18843 18987 18914 18916 15027 22803 +18844 18988 18915 18917 15028 22804 +18845 18989 18916 18918 15029 22805 +18846 18990 18917 18919 15030 22806 +18847 18991 18918 18920 15031 22807 +18848 18992 18919 18921 15032 22808 +18849 18993 18920 18922 15033 22809 +18850 18994 18921 18923 15034 22810 +18851 18995 18922 18924 15035 22811 +18852 18996 18923 18925 15036 22812 +18853 18997 18924 18926 15037 22813 +18854 18998 18925 18927 15038 22814 +18855 18999 18926 18928 15039 22815 +18856 19000 18927 18929 15040 22816 +18857 19001 18928 18930 15041 22817 +18858 19002 18929 18931 15042 22818 +18859 19003 18930 18932 15043 22819 +18860 19004 18931 18933 15044 22820 +18861 19005 18932 18934 15045 22821 +18862 19006 18933 18935 15046 22822 +18863 19007 18934 18936 15047 22823 +18864 19008 18935 18937 15048 22824 +18865 19009 18936 18938 15049 22825 +18866 19010 18937 18939 15050 22826 +18867 19011 18938 18940 15051 22827 +18868 19012 18939 18941 15052 22828 +18869 19013 18940 18942 15053 22829 +18870 19014 18941 18943 15054 22830 +18871 19015 18942 18944 15055 22831 +18872 19016 18943 18945 15056 22832 +18873 19017 18944 18946 15057 22833 +18874 19018 18945 18947 15058 22834 +18875 19019 18946 18948 15059 22835 +18876 19020 18947 18949 15060 22836 +18877 19021 18948 18950 15061 22837 +18878 19022 18949 18951 15062 22838 +18879 19023 18950 18951 15063 22839 +18880 19024 18952 18953 15064 22840 +18881 19025 18952 18954 15065 22841 +18882 19026 18953 18955 15066 22842 +18883 19027 18954 18956 15067 22843 +18884 19028 18955 18957 15068 22844 +18885 19029 18956 18958 15069 22845 +18886 19030 18957 18959 15070 22846 +18887 19031 18958 18960 15071 22847 +18888 19032 18959 18961 15072 22848 +18889 19033 18960 18962 15073 22849 +18890 19034 18961 18963 15074 22850 +18891 19035 18962 18964 15075 22851 +18892 19036 18963 18965 15076 22852 +18893 19037 18964 18966 15077 22853 +18894 19038 18965 18967 15078 22854 +18895 19039 18966 18968 15079 22855 +18896 19040 18967 18969 15080 22856 +18897 19041 18968 18970 15081 22857 +18898 19042 18969 18971 15082 22858 +18899 19043 18970 18972 15083 22859 +18900 19044 18971 18973 15084 22860 +18901 19045 18972 18974 15085 22861 +18902 19046 18973 18975 15086 22862 +18903 19047 18974 18976 15087 22863 +18904 19048 18975 18977 15088 22864 +18905 19049 18976 18978 15089 22865 +18906 19050 18977 18979 15090 22866 +18907 19051 18978 18980 15091 22867 +18908 19052 18979 18981 15092 22868 +18909 19053 18980 18982 15093 22869 +18910 19054 18981 18983 15094 22870 +18911 19055 18982 18984 15095 22871 +18912 19056 18983 18985 15096 22872 +18913 19057 18984 18986 15097 22873 +18914 19058 18985 18987 15098 22874 +18915 19059 18986 18988 15099 22875 +18916 19060 18987 18989 15100 22876 +18917 19061 18988 18990 15101 22877 +18918 19062 18989 18991 15102 22878 +18919 19063 18990 18992 15103 22879 +18920 19064 18991 18993 15104 22880 +18921 19065 18992 18994 15105 22881 +18922 19066 18993 18995 15106 22882 +18923 19067 18994 18996 15107 22883 +18924 19068 18995 18997 15108 22884 +18925 19069 18996 18998 15109 22885 +18926 19070 18997 18999 15110 22886 +18927 19071 18998 19000 15111 22887 +18928 19072 18999 19001 15112 22888 +18929 19073 19000 19002 15113 22889 +18930 19074 19001 19003 15114 22890 +18931 19075 19002 19004 15115 22891 +18932 19076 19003 19005 15116 22892 +18933 19077 19004 19006 15117 22893 +18934 19078 19005 19007 15118 22894 +18935 19079 19006 19008 15119 22895 +18936 19080 19007 19009 15120 22896 +18937 19081 19008 19010 15121 22897 +18938 19082 19009 19011 15122 22898 +18939 19083 19010 19012 15123 22899 +18940 19084 19011 19013 15124 22900 +18941 19085 19012 19014 15125 22901 +18942 19086 19013 19015 15126 22902 +18943 19087 19014 19016 15127 22903 +18944 19088 19015 19017 15128 22904 +18945 19089 19016 19018 15129 22905 +18946 19090 19017 19019 15130 22906 +18947 19091 19018 19020 15131 22907 +18948 19092 19019 19021 15132 22908 +18949 19093 19020 19022 15133 22909 +18950 19094 19021 19023 15134 22910 +18951 19095 19022 19023 15135 22911 +18952 19096 19024 19025 15136 22912 +18953 19097 19024 19026 15137 22913 +18954 19098 19025 19027 15138 22914 +18955 19099 19026 19028 15139 22915 +18956 19100 19027 19029 15140 22916 +18957 19101 19028 19030 15141 22917 +18958 19102 19029 19031 15142 22918 +18959 19103 19030 19032 15143 22919 +18960 19104 19031 19033 15144 22920 +18961 19105 19032 19034 15145 22921 +18962 19106 19033 19035 15146 22922 +18963 19107 19034 19036 15147 22923 +18964 19108 19035 19037 15148 22924 +18965 19109 19036 19038 15149 22925 +18966 19110 19037 19039 15150 22926 +18967 19111 19038 19040 15151 22927 +18968 19112 19039 19041 15152 22928 +18969 19113 19040 19042 15153 22929 +18970 19114 19041 19043 15154 22930 +18971 19115 19042 19044 15155 22931 +18972 19116 19043 19045 15156 22932 +18973 19117 19044 19046 15157 22933 +18974 19118 19045 19047 15158 22934 +18975 19119 19046 19048 15159 22935 +18976 19120 19047 19049 15160 22936 +18977 19121 19048 19050 15161 22937 +18978 19122 19049 19051 15162 22938 +18979 19123 19050 19052 15163 22939 +18980 19124 19051 19053 15164 22940 +18981 19125 19052 19054 15165 22941 +18982 19126 19053 19055 15166 22942 +18983 19127 19054 19056 15167 22943 +18984 19128 19055 19057 15168 22944 +18985 19129 19056 19058 15169 22945 +18986 19130 19057 19059 15170 22946 +18987 19131 19058 19060 15171 22947 +18988 19132 19059 19061 15172 22948 +18989 19133 19060 19062 15173 22949 +18990 19134 19061 19063 15174 22950 +18991 19135 19062 19064 15175 22951 +18992 19136 19063 19065 15176 22952 +18993 19137 19064 19066 15177 22953 +18994 19138 19065 19067 15178 22954 +18995 19139 19066 19068 15179 22955 +18996 19140 19067 19069 15180 22956 +18997 19141 19068 19070 15181 22957 +18998 19142 19069 19071 15182 22958 +18999 19143 19070 19072 15183 22959 +19000 19144 19071 19073 15184 22960 +19001 19145 19072 19074 15185 22961 +19002 19146 19073 19075 15186 22962 +19003 19147 19074 19076 15187 22963 +19004 19148 19075 19077 15188 22964 +19005 19149 19076 19078 15189 22965 +19006 19150 19077 19079 15190 22966 +19007 19151 19078 19080 15191 22967 +19008 19152 19079 19081 15192 22968 +19009 19153 19080 19082 15193 22969 +19010 19154 19081 19083 15194 22970 +19011 19155 19082 19084 15195 22971 +19012 19156 19083 19085 15196 22972 +19013 19157 19084 19086 15197 22973 +19014 19158 19085 19087 15198 22974 +19015 19159 19086 19088 15199 22975 +19016 19160 19087 19089 15200 22976 +19017 19161 19088 19090 15201 22977 +19018 19162 19089 19091 15202 22978 +19019 19163 19090 19092 15203 22979 +19020 19164 19091 19093 15204 22980 +19021 19165 19092 19094 15205 22981 +19022 19166 19093 19095 15206 22982 +19023 19167 19094 19095 15207 22983 +19024 19168 19096 19097 15208 22984 +19025 19169 19096 19098 15209 22985 +19026 19170 19097 19099 15210 22986 +19027 19171 19098 19100 15211 22987 +19028 19172 19099 19101 15212 22988 +19029 19173 19100 19102 15213 22989 +19030 19174 19101 19103 15214 22990 +19031 19175 19102 19104 15215 22991 +19032 19176 19103 19105 15216 22992 +19033 19177 19104 19106 15217 22993 +19034 19178 19105 19107 15218 22994 +19035 19179 19106 19108 15219 22995 +19036 19180 19107 19109 15220 22996 +19037 19181 19108 19110 15221 22997 +19038 19182 19109 19111 15222 22998 +19039 19183 19110 19112 15223 22999 +19040 19184 19111 19113 15224 23000 +19041 19185 19112 19114 15225 23001 +19042 19186 19113 19115 15226 23002 +19043 19187 19114 19116 15227 23003 +19044 19188 19115 19117 15228 23004 +19045 19189 19116 19118 15229 23005 +19046 19190 19117 19119 15230 23006 +19047 19191 19118 19120 15231 23007 +19048 19192 19119 19121 15232 23008 +19049 19193 19120 19122 15233 23009 +19050 19194 19121 19123 15234 23010 +19051 19195 19122 19124 15235 23011 +19052 19196 19123 19125 15236 23012 +19053 19197 19124 19126 15237 23013 +19054 19198 19125 19127 15238 23014 +19055 19199 19126 19128 15239 23015 +19056 19200 19127 19129 15240 23016 +19057 19201 19128 19130 15241 23017 +19058 19202 19129 19131 15242 23018 +19059 19203 19130 19132 15243 23019 +19060 19204 19131 19133 15244 23020 +19061 19205 19132 19134 15245 23021 +19062 19206 19133 19135 15246 23022 +19063 19207 19134 19136 15247 23023 +19064 19208 19135 19137 15248 23024 +19065 19209 19136 19138 15249 23025 +19066 19210 19137 19139 15250 23026 +19067 19211 19138 19140 15251 23027 +19068 19212 19139 19141 15252 23028 +19069 19213 19140 19142 15253 23029 +19070 19214 19141 19143 15254 23030 +19071 19215 19142 19144 15255 23031 +19072 19216 19143 19145 15256 23032 +19073 19217 19144 19146 15257 23033 +19074 19218 19145 19147 15258 23034 +19075 19219 19146 19148 15259 23035 +19076 19220 19147 19149 15260 23036 +19077 19221 19148 19150 15261 23037 +19078 19222 19149 19151 15262 23038 +19079 19223 19150 19152 15263 23039 +19080 19224 19151 19153 15264 23040 +19081 19225 19152 19154 15265 23041 +19082 19226 19153 19155 15266 23042 +19083 19227 19154 19156 15267 23043 +19084 19228 19155 19157 15268 23044 +19085 19229 19156 19158 15269 23045 +19086 19230 19157 19159 15270 23046 +19087 19231 19158 19160 15271 23047 +19088 19232 19159 19161 15272 23048 +19089 19233 19160 19162 15273 23049 +19090 19234 19161 19163 15274 23050 +19091 19235 19162 19164 15275 23051 +19092 19236 19163 19165 15276 23052 +19093 19237 19164 19166 15277 23053 +19094 19238 19165 19167 15278 23054 +19095 19239 19166 19167 15279 23055 +19096 19240 19168 19169 15280 23056 +19097 19241 19168 19170 15281 23057 +19098 19242 19169 19171 15282 23058 +19099 19243 19170 19172 15283 23059 +19100 19244 19171 19173 15284 23060 +19101 19245 19172 19174 15285 23061 +19102 19246 19173 19175 15286 23062 +19103 19247 19174 19176 15287 23063 +19104 19248 19175 19177 15288 23064 +19105 19249 19176 19178 15289 23065 +19106 19250 19177 19179 15290 23066 +19107 19251 19178 19180 15291 23067 +19108 19252 19179 19181 15292 23068 +19109 19253 19180 19182 15293 23069 +19110 19254 19181 19183 15294 23070 +19111 19255 19182 19184 15295 23071 +19112 19256 19183 19185 15296 23072 +19113 19257 19184 19186 15297 23073 +19114 19258 19185 19187 15298 23074 +19115 19259 19186 19188 15299 23075 +19116 19260 19187 19189 15300 23076 +19117 19261 19188 19190 15301 23077 +19118 19262 19189 19191 15302 23078 +19119 19263 19190 19192 15303 23079 +19120 19264 19191 19193 15304 23080 +19121 19265 19192 19194 15305 23081 +19122 19266 19193 19195 15306 23082 +19123 19267 19194 19196 15307 23083 +19124 19268 19195 19197 15308 23084 +19125 19269 19196 19198 15309 23085 +19126 19270 19197 19199 15310 23086 +19127 19271 19198 19200 15311 23087 +19128 19272 19199 19201 15312 23088 +19129 19273 19200 19202 15313 23089 +19130 19274 19201 19203 15314 23090 +19131 19275 19202 19204 15315 23091 +19132 19276 19203 19205 15316 23092 +19133 19277 19204 19206 15317 23093 +19134 19278 19205 19207 15318 23094 +19135 19279 19206 19208 15319 23095 +19136 19280 19207 19209 15320 23096 +19137 19281 19208 19210 15321 23097 +19138 19282 19209 19211 15322 23098 +19139 19283 19210 19212 15323 23099 +19140 19284 19211 19213 15324 23100 +19141 19285 19212 19214 15325 23101 +19142 19286 19213 19215 15326 23102 +19143 19287 19214 19216 15327 23103 +19144 19288 19215 19217 15328 23104 +19145 19289 19216 19218 15329 23105 +19146 19290 19217 19219 15330 23106 +19147 19291 19218 19220 15331 23107 +19148 19292 19219 19221 15332 23108 +19149 19293 19220 19222 15333 23109 +19150 19294 19221 19223 15334 23110 +19151 19295 19222 19224 15335 23111 +19152 19296 19223 19225 15336 23112 +19153 19297 19224 19226 15337 23113 +19154 19298 19225 19227 15338 23114 +19155 19299 19226 19228 15339 23115 +19156 19300 19227 19229 15340 23116 +19157 19301 19228 19230 15341 23117 +19158 19302 19229 19231 15342 23118 +19159 19303 19230 19232 15343 23119 +19160 19304 19231 19233 15344 23120 +19161 19305 19232 19234 15345 23121 +19162 19306 19233 19235 15346 23122 +19163 19307 19234 19236 15347 23123 +19164 19308 19235 19237 15348 23124 +19165 19309 19236 19238 15349 23125 +19166 19310 19237 19239 15350 23126 +19167 19311 19238 19239 15351 23127 +19168 19312 19240 19241 15352 23128 +19169 19313 19240 19242 15353 23129 +19170 19314 19241 19243 15354 23130 +19171 19315 19242 19244 15355 23131 +19172 19316 19243 19245 15356 23132 +19173 19317 19244 19246 15357 23133 +19174 19318 19245 19247 15358 23134 +19175 19319 19246 19248 15359 23135 +19176 19320 19247 19249 15360 23136 +19177 19321 19248 19250 15361 23137 +19178 19322 19249 19251 15362 23138 +19179 19323 19250 19252 15363 23139 +19180 19324 19251 19253 15364 23140 +19181 19325 19252 19254 15365 23141 +19182 19326 19253 19255 15366 23142 +19183 19327 19254 19256 15367 23143 +19184 19328 19255 19257 15368 23144 +19185 19329 19256 19258 15369 23145 +19186 19330 19257 19259 15370 23146 +19187 19331 19258 19260 15371 23147 +19188 19332 19259 19261 15372 23148 +19189 19333 19260 19262 15373 23149 +19190 19334 19261 19263 15374 23150 +19191 19335 19262 19264 15375 23151 +19192 19336 19263 19265 15376 23152 +19193 19337 19264 19266 15377 23153 +19194 19338 19265 19267 15378 23154 +19195 19339 19266 19268 15379 23155 +19196 19340 19267 19269 15380 23156 +19197 19341 19268 19270 15381 23157 +19198 19342 19269 19271 15382 23158 +19199 19343 19270 19272 15383 23159 +19200 19344 19271 19273 15384 23160 +19201 19345 19272 19274 15385 23161 +19202 19346 19273 19275 15386 23162 +19203 19347 19274 19276 15387 23163 +19204 19348 19275 19277 15388 23164 +19205 19349 19276 19278 15389 23165 +19206 19350 19277 19279 15390 23166 +19207 19351 19278 19280 15391 23167 +19208 19352 19279 19281 15392 23168 +19209 19353 19280 19282 15393 23169 +19210 19354 19281 19283 15394 23170 +19211 19355 19282 19284 15395 23171 +19212 19356 19283 19285 15396 23172 +19213 19357 19284 19286 15397 23173 +19214 19358 19285 19287 15398 23174 +19215 19359 19286 19288 15399 23175 +19216 19360 19287 19289 15400 23176 +19217 19361 19288 19290 15401 23177 +19218 19362 19289 19291 15402 23178 +19219 19363 19290 19292 15403 23179 +19220 19364 19291 19293 15404 23180 +19221 19365 19292 19294 15405 23181 +19222 19366 19293 19295 15406 23182 +19223 19367 19294 19296 15407 23183 +19224 19368 19295 19297 15408 23184 +19225 19369 19296 19298 15409 23185 +19226 19370 19297 19299 15410 23186 +19227 19371 19298 19300 15411 23187 +19228 19372 19299 19301 15412 23188 +19229 19373 19300 19302 15413 23189 +19230 19374 19301 19303 15414 23190 +19231 19375 19302 19304 15415 23191 +19232 19376 19303 19305 15416 23192 +19233 19377 19304 19306 15417 23193 +19234 19378 19305 19307 15418 23194 +19235 19379 19306 19308 15419 23195 +19236 19380 19307 19309 15420 23196 +19237 19381 19308 19310 15421 23197 +19238 19382 19309 19311 15422 23198 +19239 19383 19310 19311 15423 23199 +19240 19384 19312 19313 15424 23200 +19241 19385 19312 19314 15425 23201 +19242 19386 19313 19315 15426 23202 +19243 19387 19314 19316 15427 23203 +19244 19388 19315 19317 15428 23204 +19245 19389 19316 19318 15429 23205 +19246 19390 19317 19319 15430 23206 +19247 19391 19318 19320 15431 23207 +19248 19392 19319 19321 15432 23208 +19249 19393 19320 19322 15433 23209 +19250 19394 19321 19323 15434 23210 +19251 19395 19322 19324 15435 23211 +19252 19396 19323 19325 15436 23212 +19253 19397 19324 19326 15437 23213 +19254 19398 19325 19327 15438 23214 +19255 19399 19326 19328 15439 23215 +19256 19400 19327 19329 15440 23216 +19257 19401 19328 19330 15441 23217 +19258 19402 19329 19331 15442 23218 +19259 19403 19330 19332 15443 23219 +19260 19404 19331 19333 15444 23220 +19261 19405 19332 19334 15445 23221 +19262 19406 19333 19335 15446 23222 +19263 19407 19334 19336 15447 23223 +19264 19408 19335 19337 15448 23224 +19265 19409 19336 19338 15449 23225 +19266 19410 19337 19339 15450 23226 +19267 19411 19338 19340 15451 23227 +19268 19412 19339 19341 15452 23228 +19269 19413 19340 19342 15453 23229 +19270 19414 19341 19343 15454 23230 +19271 19415 19342 19344 15455 23231 +19272 19416 19343 19345 15456 23232 +19273 19417 19344 19346 15457 23233 +19274 19418 19345 19347 15458 23234 +19275 19419 19346 19348 15459 23235 +19276 19420 19347 19349 15460 23236 +19277 19421 19348 19350 15461 23237 +19278 19422 19349 19351 15462 23238 +19279 19423 19350 19352 15463 23239 +19280 19424 19351 19353 15464 23240 +19281 19425 19352 19354 15465 23241 +19282 19426 19353 19355 15466 23242 +19283 19427 19354 19356 15467 23243 +19284 19428 19355 19357 15468 23244 +19285 19429 19356 19358 15469 23245 +19286 19430 19357 19359 15470 23246 +19287 19431 19358 19360 15471 23247 +19288 19432 19359 19361 15472 23248 +19289 19433 19360 19362 15473 23249 +19290 19434 19361 19363 15474 23250 +19291 19435 19362 19364 15475 23251 +19292 19436 19363 19365 15476 23252 +19293 19437 19364 19366 15477 23253 +19294 19438 19365 19367 15478 23254 +19295 19439 19366 19368 15479 23255 +19296 19440 19367 19369 15480 23256 +19297 19441 19368 19370 15481 23257 +19298 19442 19369 19371 15482 23258 +19299 19443 19370 19372 15483 23259 +19300 19444 19371 19373 15484 23260 +19301 19445 19372 19374 15485 23261 +19302 19446 19373 19375 15486 23262 +19303 19447 19374 19376 15487 23263 +19304 19448 19375 19377 15488 23264 +19305 19449 19376 19378 15489 23265 +19306 19450 19377 19379 15490 23266 +19307 19451 19378 19380 15491 23267 +19308 19452 19379 19381 15492 23268 +19309 19453 19380 19382 15493 23269 +19310 19454 19381 19383 15494 23270 +19311 19455 19382 19383 15495 23271 +19312 19456 19384 19385 15496 23272 +19313 19457 19384 19386 15497 23273 +19314 19458 19385 19387 15498 23274 +19315 19459 19386 19388 15499 23275 +19316 19460 19387 19389 15500 23276 +19317 19461 19388 19390 15501 23277 +19318 19462 19389 19391 15502 23278 +19319 19463 19390 19392 15503 23279 +19320 19464 19391 19393 15504 23280 +19321 19465 19392 19394 15505 23281 +19322 19466 19393 19395 15506 23282 +19323 19467 19394 19396 15507 23283 +19324 19468 19395 19397 15508 23284 +19325 19469 19396 19398 15509 23285 +19326 19470 19397 19399 15510 23286 +19327 19471 19398 19400 15511 23287 +19328 19472 19399 19401 15512 23288 +19329 19473 19400 19402 15513 23289 +19330 19474 19401 19403 15514 23290 +19331 19475 19402 19404 15515 23291 +19332 19476 19403 19405 15516 23292 +19333 19477 19404 19406 15517 23293 +19334 19478 19405 19407 15518 23294 +19335 19479 19406 19408 15519 23295 +19336 19480 19407 19409 15520 23296 +19337 19481 19408 19410 15521 23297 +19338 19482 19409 19411 15522 23298 +19339 19483 19410 19412 15523 23299 +19340 19484 19411 19413 15524 23300 +19341 19485 19412 19414 15525 23301 +19342 19486 19413 19415 15526 23302 +19343 19487 19414 19416 15527 23303 +19344 19488 19415 19417 15528 23304 +19345 19489 19416 19418 15529 23305 +19346 19490 19417 19419 15530 23306 +19347 19491 19418 19420 15531 23307 +19348 19492 19419 19421 15532 23308 +19349 19493 19420 19422 15533 23309 +19350 19494 19421 19423 15534 23310 +19351 19495 19422 19424 15535 23311 +19352 19496 19423 19425 15536 23312 +19353 19497 19424 19426 15537 23313 +19354 19498 19425 19427 15538 23314 +19355 19499 19426 19428 15539 23315 +19356 19500 19427 19429 15540 23316 +19357 19501 19428 19430 15541 23317 +19358 19502 19429 19431 15542 23318 +19359 19503 19430 19432 15543 23319 +19360 19504 19431 19433 15544 23320 +19361 19505 19432 19434 15545 23321 +19362 19506 19433 19435 15546 23322 +19363 19507 19434 19436 15547 23323 +19364 19508 19435 19437 15548 23324 +19365 19509 19436 19438 15549 23325 +19366 19510 19437 19439 15550 23326 +19367 19511 19438 19440 15551 23327 +19368 19512 19439 19441 15552 23328 +19369 19513 19440 19442 15553 23329 +19370 19514 19441 19443 15554 23330 +19371 19515 19442 19444 15555 23331 +19372 19516 19443 19445 15556 23332 +19373 19517 19444 19446 15557 23333 +19374 19518 19445 19447 15558 23334 +19375 19519 19446 19448 15559 23335 +19376 19520 19447 19449 15560 23336 +19377 19521 19448 19450 15561 23337 +19378 19522 19449 19451 15562 23338 +19379 19523 19450 19452 15563 23339 +19380 19524 19451 19453 15564 23340 +19381 19525 19452 19454 15565 23341 +19382 19526 19453 19455 15566 23342 +19383 19527 19454 19455 15567 23343 +19384 19528 19456 19457 15568 23344 +19385 19529 19456 19458 15569 23345 +19386 19530 19457 19459 15570 23346 +19387 19531 19458 19460 15571 23347 +19388 19532 19459 19461 15572 23348 +19389 19533 19460 19462 15573 23349 +19390 19534 19461 19463 15574 23350 +19391 19535 19462 19464 15575 23351 +19392 19536 19463 19465 15576 23352 +19393 19537 19464 19466 15577 23353 +19394 19538 19465 19467 15578 23354 +19395 19539 19466 19468 15579 23355 +19396 19540 19467 19469 15580 23356 +19397 19541 19468 19470 15581 23357 +19398 19542 19469 19471 15582 23358 +19399 19543 19470 19472 15583 23359 +19400 19544 19471 19473 15584 23360 +19401 19545 19472 19474 15585 23361 +19402 19546 19473 19475 15586 23362 +19403 19547 19474 19476 15587 23363 +19404 19548 19475 19477 15588 23364 +19405 19549 19476 19478 15589 23365 +19406 19550 19477 19479 15590 23366 +19407 19551 19478 19480 15591 23367 +19408 19552 19479 19481 15592 23368 +19409 19553 19480 19482 15593 23369 +19410 19554 19481 19483 15594 23370 +19411 19555 19482 19484 15595 23371 +19412 19556 19483 19485 15596 23372 +19413 19557 19484 19486 15597 23373 +19414 19558 19485 19487 15598 23374 +19415 19559 19486 19488 15599 23375 +19416 19560 19487 19489 15600 23376 +19417 19561 19488 19490 15601 23377 +19418 19562 19489 19491 15602 23378 +19419 19563 19490 19492 15603 23379 +19420 19564 19491 19493 15604 23380 +19421 19565 19492 19494 15605 23381 +19422 19566 19493 19495 15606 23382 +19423 19567 19494 19496 15607 23383 +19424 19568 19495 19497 15608 23384 +19425 19569 19496 19498 15609 23385 +19426 19570 19497 19499 15610 23386 +19427 19571 19498 19500 15611 23387 +19428 19572 19499 19501 15612 23388 +19429 19573 19500 19502 15613 23389 +19430 19574 19501 19503 15614 23390 +19431 19575 19502 19504 15615 23391 +19432 19576 19503 19505 15616 23392 +19433 19577 19504 19506 15617 23393 +19434 19578 19505 19507 15618 23394 +19435 19579 19506 19508 15619 23395 +19436 19580 19507 19509 15620 23396 +19437 19581 19508 19510 15621 23397 +19438 19582 19509 19511 15622 23398 +19439 19583 19510 19512 15623 23399 +19440 19584 19511 19513 15624 23400 +19441 19585 19512 19514 15625 23401 +19442 19586 19513 19515 15626 23402 +19443 19587 19514 19516 15627 23403 +19444 19588 19515 19517 15628 23404 +19445 19589 19516 19518 15629 23405 +19446 19590 19517 19519 15630 23406 +19447 19591 19518 19520 15631 23407 +19448 19592 19519 19521 15632 23408 +19449 19593 19520 19522 15633 23409 +19450 19594 19521 19523 15634 23410 +19451 19595 19522 19524 15635 23411 +19452 19596 19523 19525 15636 23412 +19453 19597 19524 19526 15637 23413 +19454 19598 19525 19527 15638 23414 +19455 19599 19526 19527 15639 23415 +19456 19600 19528 19529 15640 23416 +19457 19601 19528 19530 15641 23417 +19458 19602 19529 19531 15642 23418 +19459 19603 19530 19532 15643 23419 +19460 19604 19531 19533 15644 23420 +19461 19605 19532 19534 15645 23421 +19462 19606 19533 19535 15646 23422 +19463 19607 19534 19536 15647 23423 +19464 19608 19535 19537 15648 23424 +19465 19609 19536 19538 15649 23425 +19466 19610 19537 19539 15650 23426 +19467 19611 19538 19540 15651 23427 +19468 19612 19539 19541 15652 23428 +19469 19613 19540 19542 15653 23429 +19470 19614 19541 19543 15654 23430 +19471 19615 19542 19544 15655 23431 +19472 19616 19543 19545 15656 23432 +19473 19617 19544 19546 15657 23433 +19474 19618 19545 19547 15658 23434 +19475 19619 19546 19548 15659 23435 +19476 19620 19547 19549 15660 23436 +19477 19621 19548 19550 15661 23437 +19478 19622 19549 19551 15662 23438 +19479 19623 19550 19552 15663 23439 +19480 19624 19551 19553 15664 23440 +19481 19625 19552 19554 15665 23441 +19482 19626 19553 19555 15666 23442 +19483 19627 19554 19556 15667 23443 +19484 19628 19555 19557 15668 23444 +19485 19629 19556 19558 15669 23445 +19486 19630 19557 19559 15670 23446 +19487 19631 19558 19560 15671 23447 +19488 19632 19559 19561 15672 23448 +19489 19633 19560 19562 15673 23449 +19490 19634 19561 19563 15674 23450 +19491 19635 19562 19564 15675 23451 +19492 19636 19563 19565 15676 23452 +19493 19637 19564 19566 15677 23453 +19494 19638 19565 19567 15678 23454 +19495 19639 19566 19568 15679 23455 +19496 19640 19567 19569 15680 23456 +19497 19641 19568 19570 15681 23457 +19498 19642 19569 19571 15682 23458 +19499 19643 19570 19572 15683 23459 +19500 19644 19571 19573 15684 23460 +19501 19645 19572 19574 15685 23461 +19502 19646 19573 19575 15686 23462 +19503 19647 19574 19576 15687 23463 +19504 19648 19575 19577 15688 23464 +19505 19649 19576 19578 15689 23465 +19506 19650 19577 19579 15690 23466 +19507 19651 19578 19580 15691 23467 +19508 19652 19579 19581 15692 23468 +19509 19653 19580 19582 15693 23469 +19510 19654 19581 19583 15694 23470 +19511 19655 19582 19584 15695 23471 +19512 19656 19583 19585 15696 23472 +19513 19657 19584 19586 15697 23473 +19514 19658 19585 19587 15698 23474 +19515 19659 19586 19588 15699 23475 +19516 19660 19587 19589 15700 23476 +19517 19661 19588 19590 15701 23477 +19518 19662 19589 19591 15702 23478 +19519 19663 19590 19592 15703 23479 +19520 19664 19591 19593 15704 23480 +19521 19665 19592 19594 15705 23481 +19522 19666 19593 19595 15706 23482 +19523 19667 19594 19596 15707 23483 +19524 19668 19595 19597 15708 23484 +19525 19669 19596 19598 15709 23485 +19526 19670 19597 19599 15710 23486 +19527 19671 19598 19599 15711 23487 +19528 19672 19600 19601 15712 23488 +19529 19673 19600 19602 15713 23489 +19530 19674 19601 19603 15714 23490 +19531 19675 19602 19604 15715 23491 +19532 19676 19603 19605 15716 23492 +19533 19677 19604 19606 15717 23493 +19534 19678 19605 19607 15718 23494 +19535 19679 19606 19608 15719 23495 +19536 19680 19607 19609 15720 23496 +19537 19681 19608 19610 15721 23497 +19538 19682 19609 19611 15722 23498 +19539 19683 19610 19612 15723 23499 +19540 19684 19611 19613 15724 23500 +19541 19685 19612 19614 15725 23501 +19542 19686 19613 19615 15726 23502 +19543 19687 19614 19616 15727 23503 +19544 19688 19615 19617 15728 23504 +19545 19689 19616 19618 15729 23505 +19546 19690 19617 19619 15730 23506 +19547 19691 19618 19620 15731 23507 +19548 19692 19619 19621 15732 23508 +19549 19693 19620 19622 15733 23509 +19550 19694 19621 19623 15734 23510 +19551 19695 19622 19624 15735 23511 +19552 19696 19623 19625 15736 23512 +19553 19697 19624 19626 15737 23513 +19554 19698 19625 19627 15738 23514 +19555 19699 19626 19628 15739 23515 +19556 19700 19627 19629 15740 23516 +19557 19701 19628 19630 15741 23517 +19558 19702 19629 19631 15742 23518 +19559 19703 19630 19632 15743 23519 +19560 19704 19631 19633 15744 23520 +19561 19705 19632 19634 15745 23521 +19562 19706 19633 19635 15746 23522 +19563 19707 19634 19636 15747 23523 +19564 19708 19635 19637 15748 23524 +19565 19709 19636 19638 15749 23525 +19566 19710 19637 19639 15750 23526 +19567 19711 19638 19640 15751 23527 +19568 19712 19639 19641 15752 23528 +19569 19713 19640 19642 15753 23529 +19570 19714 19641 19643 15754 23530 +19571 19715 19642 19644 15755 23531 +19572 19716 19643 19645 15756 23532 +19573 19717 19644 19646 15757 23533 +19574 19718 19645 19647 15758 23534 +19575 19719 19646 19648 15759 23535 +19576 19720 19647 19649 15760 23536 +19577 19721 19648 19650 15761 23537 +19578 19722 19649 19651 15762 23538 +19579 19723 19650 19652 15763 23539 +19580 19724 19651 19653 15764 23540 +19581 19725 19652 19654 15765 23541 +19582 19726 19653 19655 15766 23542 +19583 19727 19654 19656 15767 23543 +19584 19728 19655 19657 15768 23544 +19585 19729 19656 19658 15769 23545 +19586 19730 19657 19659 15770 23546 +19587 19731 19658 19660 15771 23547 +19588 19732 19659 19661 15772 23548 +19589 19733 19660 19662 15773 23549 +19590 19734 19661 19663 15774 23550 +19591 19735 19662 19664 15775 23551 +19592 19736 19663 19665 15776 23552 +19593 19737 19664 19666 15777 23553 +19594 19738 19665 19667 15778 23554 +19595 19739 19666 19668 15779 23555 +19596 19740 19667 19669 15780 23556 +19597 19741 19668 19670 15781 23557 +19598 19742 19669 19671 15782 23558 +19599 19743 19670 19671 15783 23559 +19600 19672 19672 19673 15784 23560 +19601 19673 19672 19674 15785 23561 +19602 19674 19673 19675 15786 23562 +19603 19675 19674 19676 15787 23563 +19604 19676 19675 19677 15788 23564 +19605 19677 19676 19678 15789 23565 +19606 19678 19677 19679 15790 23566 +19607 19679 19678 19680 15791 23567 +19608 19680 19679 19681 15792 23568 +19609 19681 19680 19682 15793 23569 +19610 19682 19681 19683 15794 23570 +19611 19683 19682 19684 15795 23571 +19612 19684 19683 19685 15796 23572 +19613 19685 19684 19686 15797 23573 +19614 19686 19685 19687 15798 23574 +19615 19687 19686 19688 15799 23575 +19616 19688 19687 19689 15800 23576 +19617 19689 19688 19690 15801 23577 +19618 19690 19689 19691 15802 23578 +19619 19691 19690 19692 15803 23579 +19620 19692 19691 19693 15804 23580 +19621 19693 19692 19694 15805 23581 +19622 19694 19693 19695 15806 23582 +19623 19695 19694 19696 15807 23583 +19624 19696 19695 19697 15808 23584 +19625 19697 19696 19698 15809 23585 +19626 19698 19697 19699 15810 23586 +19627 19699 19698 19700 15811 23587 +19628 19700 19699 19701 15812 23588 +19629 19701 19700 19702 15813 23589 +19630 19702 19701 19703 15814 23590 +19631 19703 19702 19704 15815 23591 +19632 19704 19703 19705 15816 23592 +19633 19705 19704 19706 15817 23593 +19634 19706 19705 19707 15818 23594 +19635 19707 19706 19708 15819 23595 +19636 19708 19707 19709 15820 23596 +19637 19709 19708 19710 15821 23597 +19638 19710 19709 19711 15822 23598 +19639 19711 19710 19712 15823 23599 +19640 19712 19711 19713 15824 23600 +19641 19713 19712 19714 15825 23601 +19642 19714 19713 19715 15826 23602 +19643 19715 19714 19716 15827 23603 +19644 19716 19715 19717 15828 23604 +19645 19717 19716 19718 15829 23605 +19646 19718 19717 19719 15830 23606 +19647 19719 19718 19720 15831 23607 +19648 19720 19719 19721 15832 23608 +19649 19721 19720 19722 15833 23609 +19650 19722 19721 19723 15834 23610 +19651 19723 19722 19724 15835 23611 +19652 19724 19723 19725 15836 23612 +19653 19725 19724 19726 15837 23613 +19654 19726 19725 19727 15838 23614 +19655 19727 19726 19728 15839 23615 +19656 19728 19727 19729 15840 23616 +19657 19729 19728 19730 15841 23617 +19658 19730 19729 19731 15842 23618 +19659 19731 19730 19732 15843 23619 +19660 19732 19731 19733 15844 23620 +19661 19733 19732 19734 15845 23621 +19662 19734 19733 19735 15846 23622 +19663 19735 19734 19736 15847 23623 +19664 19736 19735 19737 15848 23624 +19665 19737 19736 19738 15849 23625 +19666 19738 19737 19739 15850 23626 +19667 19739 19738 19740 15851 23627 +19668 19740 19739 19741 15852 23628 +19669 19741 19740 19742 15853 23629 +19670 19742 19741 19743 15854 23630 +19671 19743 19742 19743 15855 23631 +19744 19745 19744 19747 15856 23632 +19744 19748 19745 19746 15857 23633 +19747 19749 19745 19751 15858 23634 +19744 19752 19746 19747 15859 23635 +19745 19753 19748 19749 15860 23636 +19746 19754 19748 19750 15861 23637 +19751 19755 19749 19757 15862 23638 +19746 19758 19750 19752 15863 23639 +19747 19759 19751 19752 15864 23640 +19748 19760 19753 19754 15865 23641 +19749 19761 19753 19755 15866 23642 +19750 19762 19754 19756 15867 23643 +19757 19763 19755 19765 15868 23644 +19750 19766 19756 19758 15869 23645 +19751 19767 19757 19759 15870 23646 +19752 19768 19758 19759 15871 23647 +19753 19769 19760 19761 15872 23648 +19754 19770 19760 19762 15873 23649 +19755 19771 19761 19763 15874 23650 +19756 19772 19762 19764 15875 23651 +19765 19773 19763 19775 15876 23652 +19756 19776 19764 19766 15877 23653 +19757 19777 19765 19767 15878 23654 +19758 19778 19766 19768 15879 23655 +19759 19779 19767 19768 15880 23656 +19760 19780 19769 19770 15881 23657 +19761 19781 19769 19771 15882 23658 +19762 19782 19770 19772 15883 23659 +19763 19783 19771 19773 15884 23660 +19764 19784 19772 19774 15885 23661 +19775 19785 19773 19787 15886 23662 +19764 19788 19774 19776 15887 23663 +19765 19789 19775 19777 15888 23664 +19766 19790 19776 19778 15889 23665 +19767 19791 19777 19779 15890 23666 +19768 19792 19778 19779 15891 23667 +19769 19793 19780 19781 15892 23668 +19770 19794 19780 19782 15893 23669 +19771 19795 19781 19783 15894 23670 +19772 19796 19782 19784 15895 23671 +19773 19797 19783 19785 15896 23672 +19774 19798 19784 19786 15897 23673 +19787 19799 19785 19801 15898 23674 +19774 19802 19786 19788 15899 23675 +19775 19803 19787 19789 15900 23676 +19776 19804 19788 19790 15901 23677 +19777 19805 19789 19791 15902 23678 +19778 19806 19790 19792 15903 23679 +19779 19807 19791 19792 15904 23680 +19780 19808 19793 19794 15905 23681 +19781 19809 19793 19795 15906 23682 +19782 19810 19794 19796 15907 23683 +19783 19811 19795 19797 15908 23684 +19784 19812 19796 19798 15909 23685 +19785 19813 19797 19799 15910 23686 +19786 19814 19798 19800 15911 23687 +19801 19815 19799 19817 15912 23688 +19786 19818 19800 19802 15913 23689 +19787 19819 19801 19803 15914 23690 +19788 19820 19802 19804 15915 23691 +19789 19821 19803 19805 15916 23692 +19790 19822 19804 19806 15917 23693 +19791 19823 19805 19807 15918 23694 +19792 19824 19806 19807 15919 23695 +19793 19825 19808 19809 15920 23696 +19794 19826 19808 19810 15921 23697 +19795 19827 19809 19811 15922 23698 +19796 19828 19810 19812 15923 23699 +19797 19829 19811 19813 15924 23700 +19798 19830 19812 19814 15925 23701 +19799 19831 19813 19815 15926 23702 +19800 19832 19814 19816 15927 23703 +19817 19833 19815 19835 15928 23704 +19800 19836 19816 19818 15929 23705 +19801 19837 19817 19819 15930 23706 +19802 19838 19818 19820 15931 23707 +19803 19839 19819 19821 15932 23708 +19804 19840 19820 19822 15933 23709 +19805 19841 19821 19823 15934 23710 +19806 19842 19822 19824 15935 23711 +19807 19843 19823 19824 15936 23712 +19808 19844 19825 19826 15937 23713 +19809 19845 19825 19827 15938 23714 +19810 19846 19826 19828 15939 23715 +19811 19847 19827 19829 15940 23716 +19812 19848 19828 19830 15941 23717 +19813 19849 19829 19831 15942 23718 +19814 19850 19830 19832 15943 23719 +19815 19851 19831 19833 15944 23720 +19816 19852 19832 19834 15945 23721 +19835 19853 19833 19855 15946 23722 +19816 19856 19834 19836 15947 23723 +19817 19857 19835 19837 15948 23724 +19818 19858 19836 19838 15949 23725 +19819 19859 19837 19839 15950 23726 +19820 19860 19838 19840 15951 23727 +19821 19861 19839 19841 15952 23728 +19822 19862 19840 19842 15953 23729 +19823 19863 19841 19843 15954 23730 +19824 19864 19842 19843 15955 23731 +19825 19865 19844 19845 15956 23732 +19826 19866 19844 19846 15957 23733 +19827 19867 19845 19847 15958 23734 +19828 19868 19846 19848 15959 23735 +19829 19869 19847 19849 15960 23736 +19830 19870 19848 19850 15961 23737 +19831 19871 19849 19851 15962 23738 +19832 19872 19850 19852 15963 23739 +19833 19873 19851 19853 15964 23740 +19834 19874 19852 19854 15965 23741 +19855 19875 19853 19877 15966 23742 +19834 19878 19854 19856 15967 23743 +19835 19879 19855 19857 15968 23744 +19836 19880 19856 19858 15969 23745 +19837 19881 19857 19859 15970 23746 +19838 19882 19858 19860 15971 23747 +19839 19883 19859 19861 15972 23748 +19840 19884 19860 19862 15973 23749 +19841 19885 19861 19863 15974 23750 +19842 19886 19862 19864 15975 23751 +19843 19887 19863 19864 15976 23752 +19844 19888 19865 19866 15977 23753 +19845 19889 19865 19867 15978 23754 +19846 19890 19866 19868 15979 23755 +19847 19891 19867 19869 15980 23756 +19848 19892 19868 19870 15981 23757 +19849 19893 19869 19871 15982 23758 +19850 19894 19870 19872 15983 23759 +19851 19895 19871 19873 15984 23760 +19852 19896 19872 19874 15985 23761 +19853 19897 19873 19875 15986 23762 +19854 19898 19874 19876 15987 23763 +19877 19899 19875 19901 15988 23764 +19854 19902 19876 19878 15989 23765 +19855 19903 19877 19879 15990 23766 +19856 19904 19878 19880 15991 23767 +19857 19905 19879 19881 15992 23768 +19858 19906 19880 19882 15993 23769 +19859 19907 19881 19883 15994 23770 +19860 19908 19882 19884 15995 23771 +19861 19909 19883 19885 15996 23772 +19862 19910 19884 19886 15997 23773 +19863 19911 19885 19887 15998 23774 +19864 19912 19886 19887 15999 23775 +19865 19913 19888 19889 16000 23776 +19866 19914 19888 19890 16001 23777 +19867 19915 19889 19891 16002 23778 +19868 19916 19890 19892 16003 23779 +19869 19917 19891 19893 16004 23780 +19870 19918 19892 19894 16005 23781 +19871 19919 19893 19895 16006 23782 +19872 19920 19894 19896 16007 23783 +19873 19921 19895 19897 16008 23784 +19874 19922 19896 19898 16009 23785 +19875 19923 19897 19899 16010 23786 +19876 19924 19898 19900 16011 23787 +19901 19925 19899 19927 16012 23788 +19876 19928 19900 19902 16013 23789 +19877 19929 19901 19903 16014 23790 +19878 19930 19902 19904 16015 23791 +19879 19931 19903 19905 16016 23792 +19880 19932 19904 19906 16017 23793 +19881 19933 19905 19907 16018 23794 +19882 19934 19906 19908 16019 23795 +19883 19935 19907 19909 16020 23796 +19884 19936 19908 19910 16021 23797 +19885 19937 19909 19911 16022 23798 +19886 19938 19910 19912 16023 23799 +19887 19939 19911 19912 16024 23800 +19888 19940 19913 19914 16025 23801 +19889 19941 19913 19915 16026 23802 +19890 19942 19914 19916 16027 23803 +19891 19943 19915 19917 16028 23804 +19892 19944 19916 19918 16029 23805 +19893 19945 19917 19919 16030 23806 +19894 19946 19918 19920 16031 23807 +19895 19947 19919 19921 16032 23808 +19896 19948 19920 19922 16033 23809 +19897 19949 19921 19923 16034 23810 +19898 19950 19922 19924 16035 23811 +19899 19951 19923 19925 16036 23812 +19900 19952 19924 19926 16037 23813 +19927 19953 19925 19955 16038 23814 +19900 19956 19926 19928 16039 23815 +19901 19957 19927 19929 16040 23816 +19902 19958 19928 19930 16041 23817 +19903 19959 19929 19931 16042 23818 +19904 19960 19930 19932 16043 23819 +19905 19961 19931 19933 16044 23820 +19906 19962 19932 19934 16045 23821 +19907 19963 19933 19935 16046 23822 +19908 19964 19934 19936 16047 23823 +19909 19965 19935 19937 16048 23824 +19910 19966 19936 19938 16049 23825 +19911 19967 19937 19939 16050 23826 +19912 19968 19938 19939 16051 23827 +19913 19969 19940 19941 16052 23828 +19914 19970 19940 19942 16053 23829 +19915 19971 19941 19943 16054 23830 +19916 19972 19942 19944 16055 23831 +19917 19973 19943 19945 16056 23832 +19918 19974 19944 19946 16057 23833 +19919 19975 19945 19947 16058 23834 +19920 19976 19946 19948 16059 23835 +19921 19977 19947 19949 16060 23836 +19922 19978 19948 19950 16061 23837 +19923 19979 19949 19951 16062 23838 +19924 19980 19950 19952 16063 23839 +19925 19981 19951 19953 16064 23840 +19926 19982 19952 19954 16065 23841 +19955 19983 19953 19985 16066 23842 +19926 19986 19954 19956 16067 23843 +19927 19987 19955 19957 16068 23844 +19928 19988 19956 19958 16069 23845 +19929 19989 19957 19959 16070 23846 +19930 19990 19958 19960 16071 23847 +19931 19991 19959 19961 16072 23848 +19932 19992 19960 19962 16073 23849 +19933 19993 19961 19963 16074 23850 +19934 19994 19962 19964 16075 23851 +19935 19995 19963 19965 16076 23852 +19936 19996 19964 19966 16077 23853 +19937 19997 19965 19967 16078 23854 +19938 19998 19966 19968 16079 23855 +19939 19999 19967 19968 16080 23856 +19940 20000 19969 19970 16081 23857 +19941 20001 19969 19971 16082 23858 +19942 20002 19970 19972 16083 23859 +19943 20003 19971 19973 16084 23860 +19944 20004 19972 19974 16085 23861 +19945 20005 19973 19975 16086 23862 +19946 20006 19974 19976 16087 23863 +19947 20007 19975 19977 16088 23864 +19948 20008 19976 19978 16089 23865 +19949 20009 19977 19979 16090 23866 +19950 20010 19978 19980 16091 23867 +19951 20011 19979 19981 16092 23868 +19952 20012 19980 19982 16093 23869 +19953 20013 19981 19983 16094 23870 +19954 20014 19982 19984 16095 23871 +19985 20015 19983 20017 16096 23872 +19954 20018 19984 19986 16097 23873 +19955 20019 19985 19987 16098 23874 +19956 20020 19986 19988 16099 23875 +19957 20021 19987 19989 16100 23876 +19958 20022 19988 19990 16101 23877 +19959 20023 19989 19991 16102 23878 +19960 20024 19990 19992 16103 23879 +19961 20025 19991 19993 16104 23880 +19962 20026 19992 19994 16105 23881 +19963 20027 19993 19995 16106 23882 +19964 20028 19994 19996 16107 23883 +19965 20029 19995 19997 16108 23884 +19966 20030 19996 19998 16109 23885 +19967 20031 19997 19999 16110 23886 +19968 20032 19998 19999 16111 23887 +19969 20033 20000 20001 16112 23888 +19970 20034 20000 20002 16113 23889 +19971 20035 20001 20003 16114 23890 +19972 20036 20002 20004 16115 23891 +19973 20037 20003 20005 16116 23892 +19974 20038 20004 20006 16117 23893 +19975 20039 20005 20007 16118 23894 +19976 20040 20006 20008 16119 23895 +19977 20041 20007 20009 16120 23896 +19978 20042 20008 20010 16121 23897 +19979 20043 20009 20011 16122 23898 +19980 20044 20010 20012 16123 23899 +19981 20045 20011 20013 16124 23900 +19982 20046 20012 20014 16125 23901 +19983 20047 20013 20015 16126 23902 +19984 20048 20014 20016 16127 23903 +20017 20049 20015 20051 16128 23904 +19984 20052 20016 20018 16129 23905 +19985 20053 20017 20019 16130 23906 +19986 20054 20018 20020 16131 23907 +19987 20055 20019 20021 16132 23908 +19988 20056 20020 20022 16133 23909 +19989 20057 20021 20023 16134 23910 +19990 20058 20022 20024 16135 23911 +19991 20059 20023 20025 16136 23912 +19992 20060 20024 20026 16137 23913 +19993 20061 20025 20027 16138 23914 +19994 20062 20026 20028 16139 23915 +19995 20063 20027 20029 16140 23916 +19996 20064 20028 20030 16141 23917 +19997 20065 20029 20031 16142 23918 +19998 20066 20030 20032 16143 23919 +19999 20067 20031 20032 16144 23920 +20000 20068 20033 20034 16145 23921 +20001 20069 20033 20035 16146 23922 +20002 20070 20034 20036 16147 23923 +20003 20071 20035 20037 16148 23924 +20004 20072 20036 20038 16149 23925 +20005 20073 20037 20039 16150 23926 +20006 20074 20038 20040 16151 23927 +20007 20075 20039 20041 16152 23928 +20008 20076 20040 20042 16153 23929 +20009 20077 20041 20043 16154 23930 +20010 20078 20042 20044 16155 23931 +20011 20079 20043 20045 16156 23932 +20012 20080 20044 20046 16157 23933 +20013 20081 20045 20047 16158 23934 +20014 20082 20046 20048 16159 23935 +20015 20083 20047 20049 16160 23936 +20016 20084 20048 20050 16161 23937 +20051 20085 20049 20087 16162 23938 +20016 20088 20050 20052 16163 23939 +20017 20089 20051 20053 16164 23940 +20018 20090 20052 20054 16165 23941 +20019 20091 20053 20055 16166 23942 +20020 20092 20054 20056 16167 23943 +20021 20093 20055 20057 16168 23944 +20022 20094 20056 20058 16169 23945 +20023 20095 20057 20059 16170 23946 +20024 20096 20058 20060 16171 23947 +20025 20097 20059 20061 16172 23948 +20026 20098 20060 20062 16173 23949 +20027 20099 20061 20063 16174 23950 +20028 20100 20062 20064 16175 23951 +20029 20101 20063 20065 16176 23952 +20030 20102 20064 20066 16177 23953 +20031 20103 20065 20067 16178 23954 +20032 20104 20066 20067 16179 23955 +20033 20105 20068 20069 16180 23956 +20034 20106 20068 20070 16181 23957 +20035 20107 20069 20071 16182 23958 +20036 20108 20070 20072 16183 23959 +20037 20109 20071 20073 16184 23960 +20038 20110 20072 20074 16185 23961 +20039 20111 20073 20075 16186 23962 +20040 20112 20074 20076 16187 23963 +20041 20113 20075 20077 16188 23964 +20042 20114 20076 20078 16189 23965 +20043 20115 20077 20079 16190 23966 +20044 20116 20078 20080 16191 23967 +20045 20117 20079 20081 16192 23968 +20046 20118 20080 20082 16193 23969 +20047 20119 20081 20083 16194 23970 +20048 20120 20082 20084 16195 23971 +20049 20121 20083 20085 16196 23972 +20050 20122 20084 20086 16197 23973 +20087 20123 20085 20125 16198 23974 +20050 20126 20086 20088 16199 23975 +20051 20127 20087 20089 16200 23976 +20052 20128 20088 20090 16201 23977 +20053 20129 20089 20091 16202 23978 +20054 20130 20090 20092 16203 23979 +20055 20131 20091 20093 16204 23980 +20056 20132 20092 20094 16205 23981 +20057 20133 20093 20095 16206 23982 +20058 20134 20094 20096 16207 23983 +20059 20135 20095 20097 16208 23984 +20060 20136 20096 20098 16209 23985 +20061 20137 20097 20099 16210 23986 +20062 20138 20098 20100 16211 23987 +20063 20139 20099 20101 16212 23988 +20064 20140 20100 20102 16213 23989 +20065 20141 20101 20103 16214 23990 +20066 20142 20102 20104 16215 23991 +20067 20143 20103 20104 16216 23992 +20068 20144 20105 20106 16217 23993 +20069 20145 20105 20107 16218 23994 +20070 20146 20106 20108 16219 23995 +20071 20147 20107 20109 16220 23996 +20072 20148 20108 20110 16221 23997 +20073 20149 20109 20111 16222 23998 +20074 20150 20110 20112 16223 23999 +20075 20151 20111 20113 16224 24000 +20076 20152 20112 20114 16225 24001 +20077 20153 20113 20115 16226 24002 +20078 20154 20114 20116 16227 24003 +20079 20155 20115 20117 16228 24004 +20080 20156 20116 20118 16229 24005 +20081 20157 20117 20119 16230 24006 +20082 20158 20118 20120 16231 24007 +20083 20159 20119 20121 16232 24008 +20084 20160 20120 20122 16233 24009 +20085 20161 20121 20123 16234 24010 +20086 20162 20122 20124 16235 24011 +20125 20163 20123 20165 16236 24012 +20086 20166 20124 20126 16237 24013 +20087 20167 20125 20127 16238 24014 +20088 20168 20126 20128 16239 24015 +20089 20169 20127 20129 16240 24016 +20090 20170 20128 20130 16241 24017 +20091 20171 20129 20131 16242 24018 +20092 20172 20130 20132 16243 24019 +20093 20173 20131 20133 16244 24020 +20094 20174 20132 20134 16245 24021 +20095 20175 20133 20135 16246 24022 +20096 20176 20134 20136 16247 24023 +20097 20177 20135 20137 16248 24024 +20098 20178 20136 20138 16249 24025 +20099 20179 20137 20139 16250 24026 +20100 20180 20138 20140 16251 24027 +20101 20181 20139 20141 16252 24028 +20102 20182 20140 20142 16253 24029 +20103 20183 20141 20143 16254 24030 +20104 20184 20142 20143 16255 24031 +20105 20185 20144 20145 16256 24032 +20106 20186 20144 20146 16257 24033 +20107 20187 20145 20147 16258 24034 +20108 20188 20146 20148 16259 24035 +20109 20189 20147 20149 16260 24036 +20110 20190 20148 20150 16261 24037 +20111 20191 20149 20151 16262 24038 +20112 20192 20150 20152 16263 24039 +20113 20193 20151 20153 16264 24040 +20114 20194 20152 20154 16265 24041 +20115 20195 20153 20155 16266 24042 +20116 20196 20154 20156 16267 24043 +20117 20197 20155 20157 16268 24044 +20118 20198 20156 20158 16269 24045 +20119 20199 20157 20159 16270 24046 +20120 20200 20158 20160 16271 24047 +20121 20201 20159 20161 16272 24048 +20122 20202 20160 20162 16273 24049 +20123 20203 20161 20163 16274 24050 +20124 20204 20162 20164 16275 24051 +20165 20205 20163 20207 16276 24052 +20124 20208 20164 20166 16277 24053 +20125 20209 20165 20167 16278 24054 +20126 20210 20166 20168 16279 24055 +20127 20211 20167 20169 16280 24056 +20128 20212 20168 20170 16281 24057 +20129 20213 20169 20171 16282 24058 +20130 20214 20170 20172 16283 24059 +20131 20215 20171 20173 16284 24060 +20132 20216 20172 20174 16285 24061 +20133 20217 20173 20175 16286 24062 +20134 20218 20174 20176 16287 24063 +20135 20219 20175 20177 16288 24064 +20136 20220 20176 20178 16289 24065 +20137 20221 20177 20179 16290 24066 +20138 20222 20178 20180 16291 24067 +20139 20223 20179 20181 16292 24068 +20140 20224 20180 20182 16293 24069 +20141 20225 20181 20183 16294 24070 +20142 20226 20182 20184 16295 24071 +20143 20227 20183 20184 16296 24072 +20144 20228 20185 20186 16297 24073 +20145 20229 20185 20187 16298 24074 +20146 20230 20186 20188 16299 24075 +20147 20231 20187 20189 16300 24076 +20148 20232 20188 20190 16301 24077 +20149 20233 20189 20191 16302 24078 +20150 20234 20190 20192 16303 24079 +20151 20235 20191 20193 16304 24080 +20152 20236 20192 20194 16305 24081 +20153 20237 20193 20195 16306 24082 +20154 20238 20194 20196 16307 24083 +20155 20239 20195 20197 16308 24084 +20156 20240 20196 20198 16309 24085 +20157 20241 20197 20199 16310 24086 +20158 20242 20198 20200 16311 24087 +20159 20243 20199 20201 16312 24088 +20160 20244 20200 20202 16313 24089 +20161 20245 20201 20203 16314 24090 +20162 20246 20202 20204 16315 24091 +20163 20247 20203 20205 16316 24092 +20164 20248 20204 20206 16317 24093 +20207 20249 20205 20251 16318 24094 +20164 20252 20206 20208 16319 24095 +20165 20253 20207 20209 16320 24096 +20166 20254 20208 20210 16321 24097 +20167 20255 20209 20211 16322 24098 +20168 20256 20210 20212 16323 24099 +20169 20257 20211 20213 16324 24100 +20170 20258 20212 20214 16325 24101 +20171 20259 20213 20215 16326 24102 +20172 20260 20214 20216 16327 24103 +20173 20261 20215 20217 16328 24104 +20174 20262 20216 20218 16329 24105 +20175 20263 20217 20219 16330 24106 +20176 20264 20218 20220 16331 24107 +20177 20265 20219 20221 16332 24108 +20178 20266 20220 20222 16333 24109 +20179 20267 20221 20223 16334 24110 +20180 20268 20222 20224 16335 24111 +20181 20269 20223 20225 16336 24112 +20182 20270 20224 20226 16337 24113 +20183 20271 20225 20227 16338 24114 +20184 20272 20226 20227 16339 24115 +20185 20273 20228 20229 16340 24116 +20186 20274 20228 20230 16341 24117 +20187 20275 20229 20231 16342 24118 +20188 20276 20230 20232 16343 24119 +20189 20277 20231 20233 16344 24120 +20190 20278 20232 20234 16345 24121 +20191 20279 20233 20235 16346 24122 +20192 20280 20234 20236 16347 24123 +20193 20281 20235 20237 16348 24124 +20194 20282 20236 20238 16349 24125 +20195 20283 20237 20239 16350 24126 +20196 20284 20238 20240 16351 24127 +20197 20285 20239 20241 16352 24128 +20198 20286 20240 20242 16353 24129 +20199 20287 20241 20243 16354 24130 +20200 20288 20242 20244 16355 24131 +20201 20289 20243 20245 16356 24132 +20202 20290 20244 20246 16357 24133 +20203 20291 20245 20247 16358 24134 +20204 20292 20246 20248 16359 24135 +20205 20293 20247 20249 16360 24136 +20206 20294 20248 20250 16361 24137 +20251 20295 20249 20297 16362 24138 +20206 20298 20250 20252 16363 24139 +20207 20299 20251 20253 16364 24140 +20208 20300 20252 20254 16365 24141 +20209 20301 20253 20255 16366 24142 +20210 20302 20254 20256 16367 24143 +20211 20303 20255 20257 16368 24144 +20212 20304 20256 20258 16369 24145 +20213 20305 20257 20259 16370 24146 +20214 20306 20258 20260 16371 24147 +20215 20307 20259 20261 16372 24148 +20216 20308 20260 20262 16373 24149 +20217 20309 20261 20263 16374 24150 +20218 20310 20262 20264 16375 24151 +20219 20311 20263 20265 16376 24152 +20220 20312 20264 20266 16377 24153 +20221 20313 20265 20267 16378 24154 +20222 20314 20266 20268 16379 24155 +20223 20315 20267 20269 16380 24156 +20224 20316 20268 20270 16381 24157 +20225 20317 20269 20271 16382 24158 +20226 20318 20270 20272 16383 24159 +20227 20319 20271 20272 16384 24160 +20228 20320 20273 20274 16385 24161 +20229 20321 20273 20275 16386 24162 +20230 20322 20274 20276 16387 24163 +20231 20323 20275 20277 16388 24164 +20232 20324 20276 20278 16389 24165 +20233 20325 20277 20279 16390 24166 +20234 20326 20278 20280 16391 24167 +20235 20327 20279 20281 16392 24168 +20236 20328 20280 20282 16393 24169 +20237 20329 20281 20283 16394 24170 +20238 20330 20282 20284 16395 24171 +20239 20331 20283 20285 16396 24172 +20240 20332 20284 20286 16397 24173 +20241 20333 20285 20287 16398 24174 +20242 20334 20286 20288 16399 24175 +20243 20335 20287 20289 16400 24176 +20244 20336 20288 20290 16401 24177 +20245 20337 20289 20291 16402 24178 +20246 20338 20290 20292 16403 24179 +20247 20339 20291 20293 16404 24180 +20248 20340 20292 20294 16405 24181 +20249 20341 20293 20295 16406 24182 +20250 20342 20294 20296 16407 24183 +20297 20343 20295 20345 16408 24184 +20250 20346 20296 20298 16409 24185 +20251 20347 20297 20299 16410 24186 +20252 20348 20298 20300 16411 24187 +20253 20349 20299 20301 16412 24188 +20254 20350 20300 20302 16413 24189 +20255 20351 20301 20303 16414 24190 +20256 20352 20302 20304 16415 24191 +20257 20353 20303 20305 16416 24192 +20258 20354 20304 20306 16417 24193 +20259 20355 20305 20307 16418 24194 +20260 20356 20306 20308 16419 24195 +20261 20357 20307 20309 16420 24196 +20262 20358 20308 20310 16421 24197 +20263 20359 20309 20311 16422 24198 +20264 20360 20310 20312 16423 24199 +20265 20361 20311 20313 16424 24200 +20266 20362 20312 20314 16425 24201 +20267 20363 20313 20315 16426 24202 +20268 20364 20314 20316 16427 24203 +20269 20365 20315 20317 16428 24204 +20270 20366 20316 20318 16429 24205 +20271 20367 20317 20319 16430 24206 +20272 20368 20318 20319 16431 24207 +20273 20369 20320 20321 16432 24208 +20274 20370 20320 20322 16433 24209 +20275 20371 20321 20323 16434 24210 +20276 20372 20322 20324 16435 24211 +20277 20373 20323 20325 16436 24212 +20278 20374 20324 20326 16437 24213 +20279 20375 20325 20327 16438 24214 +20280 20376 20326 20328 16439 24215 +20281 20377 20327 20329 16440 24216 +20282 20378 20328 20330 16441 24217 +20283 20379 20329 20331 16442 24218 +20284 20380 20330 20332 16443 24219 +20285 20381 20331 20333 16444 24220 +20286 20382 20332 20334 16445 24221 +20287 20383 20333 20335 16446 24222 +20288 20384 20334 20336 16447 24223 +20289 20385 20335 20337 16448 24224 +20290 20386 20336 20338 16449 24225 +20291 20387 20337 20339 16450 24226 +20292 20388 20338 20340 16451 24227 +20293 20389 20339 20341 16452 24228 +20294 20390 20340 20342 16453 24229 +20295 20391 20341 20343 16454 24230 +20296 20392 20342 20344 16455 24231 +20345 20393 20343 20395 16456 24232 +20296 20396 20344 20346 16457 24233 +20297 20397 20345 20347 16458 24234 +20298 20398 20346 20348 16459 24235 +20299 20399 20347 20349 16460 24236 +20300 20400 20348 20350 16461 24237 +20301 20401 20349 20351 16462 24238 +20302 20402 20350 20352 16463 24239 +20303 20403 20351 20353 16464 24240 +20304 20404 20352 20354 16465 24241 +20305 20405 20353 20355 16466 24242 +20306 20406 20354 20356 16467 24243 +20307 20407 20355 20357 16468 24244 +20308 20408 20356 20358 16469 24245 +20309 20409 20357 20359 16470 24246 +20310 20410 20358 20360 16471 24247 +20311 20411 20359 20361 16472 24248 +20312 20412 20360 20362 16473 24249 +20313 20413 20361 20363 16474 24250 +20314 20414 20362 20364 16475 24251 +20315 20415 20363 20365 16476 24252 +20316 20416 20364 20366 16477 24253 +20317 20417 20365 20367 16478 24254 +20318 20418 20366 20368 16479 24255 +20319 20419 20367 20368 16480 24256 +20320 20420 20369 20370 16481 24257 +20321 20421 20369 20371 16482 24258 +20322 20422 20370 20372 16483 24259 +20323 20423 20371 20373 16484 24260 +20324 20424 20372 20374 16485 24261 +20325 20425 20373 20375 16486 24262 +20326 20426 20374 20376 16487 24263 +20327 20427 20375 20377 16488 24264 +20328 20428 20376 20378 16489 24265 +20329 20429 20377 20379 16490 24266 +20330 20430 20378 20380 16491 24267 +20331 20431 20379 20381 16492 24268 +20332 20432 20380 20382 16493 24269 +20333 20433 20381 20383 16494 24270 +20334 20434 20382 20384 16495 24271 +20335 20435 20383 20385 16496 24272 +20336 20436 20384 20386 16497 24273 +20337 20437 20385 20387 16498 24274 +20338 20438 20386 20388 16499 24275 +20339 20439 20387 20389 16500 24276 +20340 20440 20388 20390 16501 24277 +20341 20441 20389 20391 16502 24278 +20342 20442 20390 20392 16503 24279 +20343 20443 20391 20393 16504 24280 +20344 20444 20392 20394 16505 24281 +20395 20445 20393 20447 16506 24282 +20344 20448 20394 20396 16507 24283 +20345 20449 20395 20397 16508 24284 +20346 20450 20396 20398 16509 24285 +20347 20451 20397 20399 16510 24286 +20348 20452 20398 20400 16511 24287 +20349 20453 20399 20401 16512 24288 +20350 20454 20400 20402 16513 24289 +20351 20455 20401 20403 16514 24290 +20352 20456 20402 20404 16515 24291 +20353 20457 20403 20405 16516 24292 +20354 20458 20404 20406 16517 24293 +20355 20459 20405 20407 16518 24294 +20356 20460 20406 20408 16519 24295 +20357 20461 20407 20409 16520 24296 +20358 20462 20408 20410 16521 24297 +20359 20463 20409 20411 16522 24298 +20360 20464 20410 20412 16523 24299 +20361 20465 20411 20413 16524 24300 +20362 20466 20412 20414 16525 24301 +20363 20467 20413 20415 16526 24302 +20364 20468 20414 20416 16527 24303 +20365 20469 20415 20417 16528 24304 +20366 20470 20416 20418 16529 24305 +20367 20471 20417 20419 16530 24306 +20368 20472 20418 20419 16531 24307 +20369 20473 20420 20421 16532 24308 +20370 20474 20420 20422 16533 24309 +20371 20475 20421 20423 16534 24310 +20372 20476 20422 20424 16535 24311 +20373 20477 20423 20425 16536 24312 +20374 20478 20424 20426 16537 24313 +20375 20479 20425 20427 16538 24314 +20376 20480 20426 20428 16539 24315 +20377 20481 20427 20429 16540 24316 +20378 20482 20428 20430 16541 24317 +20379 20483 20429 20431 16542 24318 +20380 20484 20430 20432 16543 24319 +20381 20485 20431 20433 16544 24320 +20382 20486 20432 20434 16545 24321 +20383 20487 20433 20435 16546 24322 +20384 20488 20434 20436 16547 24323 +20385 20489 20435 20437 16548 24324 +20386 20490 20436 20438 16549 24325 +20387 20491 20437 20439 16550 24326 +20388 20492 20438 20440 16551 24327 +20389 20493 20439 20441 16552 24328 +20390 20494 20440 20442 16553 24329 +20391 20495 20441 20443 16554 24330 +20392 20496 20442 20444 16555 24331 +20393 20497 20443 20445 16556 24332 +20394 20498 20444 20446 16557 24333 +20447 20499 20445 20501 16558 24334 +20394 20502 20446 20448 16559 24335 +20395 20503 20447 20449 16560 24336 +20396 20504 20448 20450 16561 24337 +20397 20505 20449 20451 16562 24338 +20398 20506 20450 20452 16563 24339 +20399 20507 20451 20453 16564 24340 +20400 20508 20452 20454 16565 24341 +20401 20509 20453 20455 16566 24342 +20402 20510 20454 20456 16567 24343 +20403 20511 20455 20457 16568 24344 +20404 20512 20456 20458 16569 24345 +20405 20513 20457 20459 16570 24346 +20406 20514 20458 20460 16571 24347 +20407 20515 20459 20461 16572 24348 +20408 20516 20460 20462 16573 24349 +20409 20517 20461 20463 16574 24350 +20410 20518 20462 20464 16575 24351 +20411 20519 20463 20465 16576 24352 +20412 20520 20464 20466 16577 24353 +20413 20521 20465 20467 16578 24354 +20414 20522 20466 20468 16579 24355 +20415 20523 20467 20469 16580 24356 +20416 20524 20468 20470 16581 24357 +20417 20525 20469 20471 16582 24358 +20418 20526 20470 20472 16583 24359 +20419 20527 20471 20472 16584 24360 +20420 20528 20473 20474 16585 24361 +20421 20529 20473 20475 16586 24362 +20422 20530 20474 20476 16587 24363 +20423 20531 20475 20477 16588 24364 +20424 20532 20476 20478 16589 24365 +20425 20533 20477 20479 16590 24366 +20426 20534 20478 20480 16591 24367 +20427 20535 20479 20481 16592 24368 +20428 20536 20480 20482 16593 24369 +20429 20537 20481 20483 16594 24370 +20430 20538 20482 20484 16595 24371 +20431 20539 20483 20485 16596 24372 +20432 20540 20484 20486 16597 24373 +20433 20541 20485 20487 16598 24374 +20434 20542 20486 20488 16599 24375 +20435 20543 20487 20489 16600 24376 +20436 20544 20488 20490 16601 24377 +20437 20545 20489 20491 16602 24378 +20438 20546 20490 20492 16603 24379 +20439 20547 20491 20493 16604 24380 +20440 20548 20492 20494 16605 24381 +20441 20549 20493 20495 16606 24382 +20442 20550 20494 20496 16607 24383 +20443 20551 20495 20497 16608 24384 +20444 20552 20496 20498 16609 24385 +20445 20553 20497 20499 16610 24386 +20446 20554 20498 20500 16611 24387 +20501 20555 20499 20557 16612 24388 +20446 20558 20500 20502 16613 24389 +20447 20559 20501 20503 16614 24390 +20448 20560 20502 20504 16615 24391 +20449 20561 20503 20505 16616 24392 +20450 20562 20504 20506 16617 24393 +20451 20563 20505 20507 16618 24394 +20452 20564 20506 20508 16619 24395 +20453 20565 20507 20509 16620 24396 +20454 20566 20508 20510 16621 24397 +20455 20567 20509 20511 16622 24398 +20456 20568 20510 20512 16623 24399 +20457 20569 20511 20513 16624 24400 +20458 20570 20512 20514 16625 24401 +20459 20571 20513 20515 16626 24402 +20460 20572 20514 20516 16627 24403 +20461 20573 20515 20517 16628 24404 +20462 20574 20516 20518 16629 24405 +20463 20575 20517 20519 16630 24406 +20464 20576 20518 20520 16631 24407 +20465 20577 20519 20521 16632 24408 +20466 20578 20520 20522 16633 24409 +20467 20579 20521 20523 16634 24410 +20468 20580 20522 20524 16635 24411 +20469 20581 20523 20525 16636 24412 +20470 20582 20524 20526 16637 24413 +20471 20583 20525 20527 16638 24414 +20472 20584 20526 20527 16639 24415 +20473 20585 20528 20529 16640 24416 +20474 20586 20528 20530 16641 24417 +20475 20587 20529 20531 16642 24418 +20476 20588 20530 20532 16643 24419 +20477 20589 20531 20533 16644 24420 +20478 20590 20532 20534 16645 24421 +20479 20591 20533 20535 16646 24422 +20480 20592 20534 20536 16647 24423 +20481 20593 20535 20537 16648 24424 +20482 20594 20536 20538 16649 24425 +20483 20595 20537 20539 16650 24426 +20484 20596 20538 20540 16651 24427 +20485 20597 20539 20541 16652 24428 +20486 20598 20540 20542 16653 24429 +20487 20599 20541 20543 16654 24430 +20488 20600 20542 20544 16655 24431 +20489 20601 20543 20545 16656 24432 +20490 20602 20544 20546 16657 24433 +20491 20603 20545 20547 16658 24434 +20492 20604 20546 20548 16659 24435 +20493 20605 20547 20549 16660 24436 +20494 20606 20548 20550 16661 24437 +20495 20607 20549 20551 16662 24438 +20496 20608 20550 20552 16663 24439 +20497 20609 20551 20553 16664 24440 +20498 20610 20552 20554 16665 24441 +20499 20611 20553 20555 16666 24442 +20500 20612 20554 20556 16667 24443 +20557 20613 20555 20615 16668 24444 +20500 20616 20556 20558 16669 24445 +20501 20617 20557 20559 16670 24446 +20502 20618 20558 20560 16671 24447 +20503 20619 20559 20561 16672 24448 +20504 20620 20560 20562 16673 24449 +20505 20621 20561 20563 16674 24450 +20506 20622 20562 20564 16675 24451 +20507 20623 20563 20565 16676 24452 +20508 20624 20564 20566 16677 24453 +20509 20625 20565 20567 16678 24454 +20510 20626 20566 20568 16679 24455 +20511 20627 20567 20569 16680 24456 +20512 20628 20568 20570 16681 24457 +20513 20629 20569 20571 16682 24458 +20514 20630 20570 20572 16683 24459 +20515 20631 20571 20573 16684 24460 +20516 20632 20572 20574 16685 24461 +20517 20633 20573 20575 16686 24462 +20518 20634 20574 20576 16687 24463 +20519 20635 20575 20577 16688 24464 +20520 20636 20576 20578 16689 24465 +20521 20637 20577 20579 16690 24466 +20522 20638 20578 20580 16691 24467 +20523 20639 20579 20581 16692 24468 +20524 20640 20580 20582 16693 24469 +20525 20641 20581 20583 16694 24470 +20526 20642 20582 20584 16695 24471 +20527 20643 20583 20584 16696 24472 +20528 20644 20585 20586 16697 24473 +20529 20645 20585 20587 16698 24474 +20530 20646 20586 20588 16699 24475 +20531 20647 20587 20589 16700 24476 +20532 20648 20588 20590 16701 24477 +20533 20649 20589 20591 16702 24478 +20534 20650 20590 20592 16703 24479 +20535 20651 20591 20593 16704 24480 +20536 20652 20592 20594 16705 24481 +20537 20653 20593 20595 16706 24482 +20538 20654 20594 20596 16707 24483 +20539 20655 20595 20597 16708 24484 +20540 20656 20596 20598 16709 24485 +20541 20657 20597 20599 16710 24486 +20542 20658 20598 20600 16711 24487 +20543 20659 20599 20601 16712 24488 +20544 20660 20600 20602 16713 24489 +20545 20661 20601 20603 16714 24490 +20546 20662 20602 20604 16715 24491 +20547 20663 20603 20605 16716 24492 +20548 20664 20604 20606 16717 24493 +20549 20665 20605 20607 16718 24494 +20550 20666 20606 20608 16719 24495 +20551 20667 20607 20609 16720 24496 +20552 20668 20608 20610 16721 24497 +20553 20669 20609 20611 16722 24498 +20554 20670 20610 20612 16723 24499 +20555 20671 20611 20613 16724 24500 +20556 20672 20612 20614 16725 24501 +20615 20673 20613 20675 16726 24502 +20556 20676 20614 20616 16727 24503 +20557 20677 20615 20617 16728 24504 +20558 20678 20616 20618 16729 24505 +20559 20679 20617 20619 16730 24506 +20560 20680 20618 20620 16731 24507 +20561 20681 20619 20621 16732 24508 +20562 20682 20620 20622 16733 24509 +20563 20683 20621 20623 16734 24510 +20564 20684 20622 20624 16735 24511 +20565 20685 20623 20625 16736 24512 +20566 20686 20624 20626 16737 24513 +20567 20687 20625 20627 16738 24514 +20568 20688 20626 20628 16739 24515 +20569 20689 20627 20629 16740 24516 +20570 20690 20628 20630 16741 24517 +20571 20691 20629 20631 16742 24518 +20572 20692 20630 20632 16743 24519 +20573 20693 20631 20633 16744 24520 +20574 20694 20632 20634 16745 24521 +20575 20695 20633 20635 16746 24522 +20576 20696 20634 20636 16747 24523 +20577 20697 20635 20637 16748 24524 +20578 20698 20636 20638 16749 24525 +20579 20699 20637 20639 16750 24526 +20580 20700 20638 20640 16751 24527 +20581 20701 20639 20641 16752 24528 +20582 20702 20640 20642 16753 24529 +20583 20703 20641 20643 16754 24530 +20584 20704 20642 20643 16755 24531 +20585 20705 20644 20645 16756 24532 +20586 20706 20644 20646 16757 24533 +20587 20707 20645 20647 16758 24534 +20588 20708 20646 20648 16759 24535 +20589 20709 20647 20649 16760 24536 +20590 20710 20648 20650 16761 24537 +20591 20711 20649 20651 16762 24538 +20592 20712 20650 20652 16763 24539 +20593 20713 20651 20653 16764 24540 +20594 20714 20652 20654 16765 24541 +20595 20715 20653 20655 16766 24542 +20596 20716 20654 20656 16767 24543 +20597 20717 20655 20657 16768 24544 +20598 20718 20656 20658 16769 24545 +20599 20719 20657 20659 16770 24546 +20600 20720 20658 20660 16771 24547 +20601 20721 20659 20661 16772 24548 +20602 20722 20660 20662 16773 24549 +20603 20723 20661 20663 16774 24550 +20604 20724 20662 20664 16775 24551 +20605 20725 20663 20665 16776 24552 +20606 20726 20664 20666 16777 24553 +20607 20727 20665 20667 16778 24554 +20608 20728 20666 20668 16779 24555 +20609 20729 20667 20669 16780 24556 +20610 20730 20668 20670 16781 24557 +20611 20731 20669 20671 16782 24558 +20612 20732 20670 20672 16783 24559 +20613 20733 20671 20673 16784 24560 +20614 20734 20672 20674 16785 24561 +20675 20735 20673 20737 16786 24562 +20614 20738 20674 20676 16787 24563 +20615 20739 20675 20677 16788 24564 +20616 20740 20676 20678 16789 24565 +20617 20741 20677 20679 16790 24566 +20618 20742 20678 20680 16791 24567 +20619 20743 20679 20681 16792 24568 +20620 20744 20680 20682 16793 24569 +20621 20745 20681 20683 16794 24570 +20622 20746 20682 20684 16795 24571 +20623 20747 20683 20685 16796 24572 +20624 20748 20684 20686 16797 24573 +20625 20749 20685 20687 16798 24574 +20626 20750 20686 20688 16799 24575 +20627 20751 20687 20689 16800 24576 +20628 20752 20688 20690 16801 24577 +20629 20753 20689 20691 16802 24578 +20630 20754 20690 20692 16803 24579 +20631 20755 20691 20693 16804 24580 +20632 20756 20692 20694 16805 24581 +20633 20757 20693 20695 16806 24582 +20634 20758 20694 20696 16807 24583 +20635 20759 20695 20697 16808 24584 +20636 20760 20696 20698 16809 24585 +20637 20761 20697 20699 16810 24586 +20638 20762 20698 20700 16811 24587 +20639 20763 20699 20701 16812 24588 +20640 20764 20700 20702 16813 24589 +20641 20765 20701 20703 16814 24590 +20642 20766 20702 20704 16815 24591 +20643 20767 20703 20704 16816 24592 +20644 20768 20705 20706 16817 24593 +20645 20769 20705 20707 16818 24594 +20646 20770 20706 20708 16819 24595 +20647 20771 20707 20709 16820 24596 +20648 20772 20708 20710 16821 24597 +20649 20773 20709 20711 16822 24598 +20650 20774 20710 20712 16823 24599 +20651 20775 20711 20713 16824 24600 +20652 20776 20712 20714 16825 24601 +20653 20777 20713 20715 16826 24602 +20654 20778 20714 20716 16827 24603 +20655 20779 20715 20717 16828 24604 +20656 20780 20716 20718 16829 24605 +20657 20781 20717 20719 16830 24606 +20658 20782 20718 20720 16831 24607 +20659 20783 20719 20721 16832 24608 +20660 20784 20720 20722 16833 24609 +20661 20785 20721 20723 16834 24610 +20662 20786 20722 20724 16835 24611 +20663 20787 20723 20725 16836 24612 +20664 20788 20724 20726 16837 24613 +20665 20789 20725 20727 16838 24614 +20666 20790 20726 20728 16839 24615 +20667 20791 20727 20729 16840 24616 +20668 20792 20728 20730 16841 24617 +20669 20793 20729 20731 16842 24618 +20670 20794 20730 20732 16843 24619 +20671 20795 20731 20733 16844 24620 +20672 20796 20732 20734 16845 24621 +20673 20797 20733 20735 16846 24622 +20674 20798 20734 20736 16847 24623 +20737 20799 20735 20801 16848 24624 +20674 20802 20736 20738 16849 24625 +20675 20803 20737 20739 16850 24626 +20676 20804 20738 20740 16851 24627 +20677 20805 20739 20741 16852 24628 +20678 20806 20740 20742 16853 24629 +20679 20807 20741 20743 16854 24630 +20680 20808 20742 20744 16855 24631 +20681 20809 20743 20745 16856 24632 +20682 20810 20744 20746 16857 24633 +20683 20811 20745 20747 16858 24634 +20684 20812 20746 20748 16859 24635 +20685 20813 20747 20749 16860 24636 +20686 20814 20748 20750 16861 24637 +20687 20815 20749 20751 16862 24638 +20688 20816 20750 20752 16863 24639 +20689 20817 20751 20753 16864 24640 +20690 20818 20752 20754 16865 24641 +20691 20819 20753 20755 16866 24642 +20692 20820 20754 20756 16867 24643 +20693 20821 20755 20757 16868 24644 +20694 20822 20756 20758 16869 24645 +20695 20823 20757 20759 16870 24646 +20696 20824 20758 20760 16871 24647 +20697 20825 20759 20761 16872 24648 +20698 20826 20760 20762 16873 24649 +20699 20827 20761 20763 16874 24650 +20700 20828 20762 20764 16875 24651 +20701 20829 20763 20765 16876 24652 +20702 20830 20764 20766 16877 24653 +20703 20831 20765 20767 16878 24654 +20704 20832 20766 20767 16879 24655 +20705 20833 20768 20769 16880 24656 +20706 20834 20768 20770 16881 24657 +20707 20835 20769 20771 16882 24658 +20708 20836 20770 20772 16883 24659 +20709 20837 20771 20773 16884 24660 +20710 20838 20772 20774 16885 24661 +20711 20839 20773 20775 16886 24662 +20712 20840 20774 20776 16887 24663 +20713 20841 20775 20777 16888 24664 +20714 20842 20776 20778 16889 24665 +20715 20843 20777 20779 16890 24666 +20716 20844 20778 20780 16891 24667 +20717 20845 20779 20781 16892 24668 +20718 20846 20780 20782 16893 24669 +20719 20847 20781 20783 16894 24670 +20720 20848 20782 20784 16895 24671 +20721 20849 20783 20785 16896 24672 +20722 20850 20784 20786 16897 24673 +20723 20851 20785 20787 16898 24674 +20724 20852 20786 20788 16899 24675 +20725 20853 20787 20789 16900 24676 +20726 20854 20788 20790 16901 24677 +20727 20855 20789 20791 16902 24678 +20728 20856 20790 20792 16903 24679 +20729 20857 20791 20793 16904 24680 +20730 20858 20792 20794 16905 24681 +20731 20859 20793 20795 16906 24682 +20732 20860 20794 20796 16907 24683 +20733 20861 20795 20797 16908 24684 +20734 20862 20796 20798 16909 24685 +20735 20863 20797 20799 16910 24686 +20736 20864 20798 20800 16911 24687 +20801 20865 20799 20867 16912 24688 +20736 20868 20800 20802 16913 24689 +20737 20869 20801 20803 16914 24690 +20738 20870 20802 20804 16915 24691 +20739 20871 20803 20805 16916 24692 +20740 20872 20804 20806 16917 24693 +20741 20873 20805 20807 16918 24694 +20742 20874 20806 20808 16919 24695 +20743 20875 20807 20809 16920 24696 +20744 20876 20808 20810 16921 24697 +20745 20877 20809 20811 16922 24698 +20746 20878 20810 20812 16923 24699 +20747 20879 20811 20813 16924 24700 +20748 20880 20812 20814 16925 24701 +20749 20881 20813 20815 16926 24702 +20750 20882 20814 20816 16927 24703 +20751 20883 20815 20817 16928 24704 +20752 20884 20816 20818 16929 24705 +20753 20885 20817 20819 16930 24706 +20754 20886 20818 20820 16931 24707 +20755 20887 20819 20821 16932 24708 +20756 20888 20820 20822 16933 24709 +20757 20889 20821 20823 16934 24710 +20758 20890 20822 20824 16935 24711 +20759 20891 20823 20825 16936 24712 +20760 20892 20824 20826 16937 24713 +20761 20893 20825 20827 16938 24714 +20762 20894 20826 20828 16939 24715 +20763 20895 20827 20829 16940 24716 +20764 20896 20828 20830 16941 24717 +20765 20897 20829 20831 16942 24718 +20766 20898 20830 20832 16943 24719 +20767 20899 20831 20832 16944 24720 +20768 20900 20833 20834 16945 24721 +20769 20901 20833 20835 16946 24722 +20770 20902 20834 20836 16947 24723 +20771 20903 20835 20837 16948 24724 +20772 20904 20836 20838 16949 24725 +20773 20905 20837 20839 16950 24726 +20774 20906 20838 20840 16951 24727 +20775 20907 20839 20841 16952 24728 +20776 20908 20840 20842 16953 24729 +20777 20909 20841 20843 16954 24730 +20778 20910 20842 20844 16955 24731 +20779 20911 20843 20845 16956 24732 +20780 20912 20844 20846 16957 24733 +20781 20913 20845 20847 16958 24734 +20782 20914 20846 20848 16959 24735 +20783 20915 20847 20849 16960 24736 +20784 20916 20848 20850 16961 24737 +20785 20917 20849 20851 16962 24738 +20786 20918 20850 20852 16963 24739 +20787 20919 20851 20853 16964 24740 +20788 20920 20852 20854 16965 24741 +20789 20921 20853 20855 16966 24742 +20790 20922 20854 20856 16967 24743 +20791 20923 20855 20857 16968 24744 +20792 20924 20856 20858 16969 24745 +20793 20925 20857 20859 16970 24746 +20794 20926 20858 20860 16971 24747 +20795 20927 20859 20861 16972 24748 +20796 20928 20860 20862 16973 24749 +20797 20929 20861 20863 16974 24750 +20798 20930 20862 20864 16975 24751 +20799 20931 20863 20865 16976 24752 +20800 20932 20864 20866 16977 24753 +20867 20933 20865 20935 16978 24754 +20800 20936 20866 20868 16979 24755 +20801 20937 20867 20869 16980 24756 +20802 20938 20868 20870 16981 24757 +20803 20939 20869 20871 16982 24758 +20804 20940 20870 20872 16983 24759 +20805 20941 20871 20873 16984 24760 +20806 20942 20872 20874 16985 24761 +20807 20943 20873 20875 16986 24762 +20808 20944 20874 20876 16987 24763 +20809 20945 20875 20877 16988 24764 +20810 20946 20876 20878 16989 24765 +20811 20947 20877 20879 16990 24766 +20812 20948 20878 20880 16991 24767 +20813 20949 20879 20881 16992 24768 +20814 20950 20880 20882 16993 24769 +20815 20951 20881 20883 16994 24770 +20816 20952 20882 20884 16995 24771 +20817 20953 20883 20885 16996 24772 +20818 20954 20884 20886 16997 24773 +20819 20955 20885 20887 16998 24774 +20820 20956 20886 20888 16999 24775 +20821 20957 20887 20889 17000 24776 +20822 20958 20888 20890 17001 24777 +20823 20959 20889 20891 17002 24778 +20824 20960 20890 20892 17003 24779 +20825 20961 20891 20893 17004 24780 +20826 20962 20892 20894 17005 24781 +20827 20963 20893 20895 17006 24782 +20828 20964 20894 20896 17007 24783 +20829 20965 20895 20897 17008 24784 +20830 20966 20896 20898 17009 24785 +20831 20967 20897 20899 17010 24786 +20832 20968 20898 20899 17011 24787 +20833 20969 20900 20901 17012 24788 +20834 20970 20900 20902 17013 24789 +20835 20971 20901 20903 17014 24790 +20836 20972 20902 20904 17015 24791 +20837 20973 20903 20905 17016 24792 +20838 20974 20904 20906 17017 24793 +20839 20975 20905 20907 17018 24794 +20840 20976 20906 20908 17019 24795 +20841 20977 20907 20909 17020 24796 +20842 20978 20908 20910 17021 24797 +20843 20979 20909 20911 17022 24798 +20844 20980 20910 20912 17023 24799 +20845 20981 20911 20913 17024 24800 +20846 20982 20912 20914 17025 24801 +20847 20983 20913 20915 17026 24802 +20848 20984 20914 20916 17027 24803 +20849 20985 20915 20917 17028 24804 +20850 20986 20916 20918 17029 24805 +20851 20987 20917 20919 17030 24806 +20852 20988 20918 20920 17031 24807 +20853 20989 20919 20921 17032 24808 +20854 20990 20920 20922 17033 24809 +20855 20991 20921 20923 17034 24810 +20856 20992 20922 20924 17035 24811 +20857 20993 20923 20925 17036 24812 +20858 20994 20924 20926 17037 24813 +20859 20995 20925 20927 17038 24814 +20860 20996 20926 20928 17039 24815 +20861 20997 20927 20929 17040 24816 +20862 20998 20928 20930 17041 24817 +20863 20999 20929 20931 17042 24818 +20864 21000 20930 20932 17043 24819 +20865 21001 20931 20933 17044 24820 +20866 21002 20932 20934 17045 24821 +20935 21003 20933 21005 17046 24822 +20866 21006 20934 20936 17047 24823 +20867 21007 20935 20937 17048 24824 +20868 21008 20936 20938 17049 24825 +20869 21009 20937 20939 17050 24826 +20870 21010 20938 20940 17051 24827 +20871 21011 20939 20941 17052 24828 +20872 21012 20940 20942 17053 24829 +20873 21013 20941 20943 17054 24830 +20874 21014 20942 20944 17055 24831 +20875 21015 20943 20945 17056 24832 +20876 21016 20944 20946 17057 24833 +20877 21017 20945 20947 17058 24834 +20878 21018 20946 20948 17059 24835 +20879 21019 20947 20949 17060 24836 +20880 21020 20948 20950 17061 24837 +20881 21021 20949 20951 17062 24838 +20882 21022 20950 20952 17063 24839 +20883 21023 20951 20953 17064 24840 +20884 21024 20952 20954 17065 24841 +20885 21025 20953 20955 17066 24842 +20886 21026 20954 20956 17067 24843 +20887 21027 20955 20957 17068 24844 +20888 21028 20956 20958 17069 24845 +20889 21029 20957 20959 17070 24846 +20890 21030 20958 20960 17071 24847 +20891 21031 20959 20961 17072 24848 +20892 21032 20960 20962 17073 24849 +20893 21033 20961 20963 17074 24850 +20894 21034 20962 20964 17075 24851 +20895 21035 20963 20965 17076 24852 +20896 21036 20964 20966 17077 24853 +20897 21037 20965 20967 17078 24854 +20898 21038 20966 20968 17079 24855 +20899 21039 20967 20968 17080 24856 +20900 21040 20969 20970 17081 24857 +20901 21041 20969 20971 17082 24858 +20902 21042 20970 20972 17083 24859 +20903 21043 20971 20973 17084 24860 +20904 21044 20972 20974 17085 24861 +20905 21045 20973 20975 17086 24862 +20906 21046 20974 20976 17087 24863 +20907 21047 20975 20977 17088 24864 +20908 21048 20976 20978 17089 24865 +20909 21049 20977 20979 17090 24866 +20910 21050 20978 20980 17091 24867 +20911 21051 20979 20981 17092 24868 +20912 21052 20980 20982 17093 24869 +20913 21053 20981 20983 17094 24870 +20914 21054 20982 20984 17095 24871 +20915 21055 20983 20985 17096 24872 +20916 21056 20984 20986 17097 24873 +20917 21057 20985 20987 17098 24874 +20918 21058 20986 20988 17099 24875 +20919 21059 20987 20989 17100 24876 +20920 21060 20988 20990 17101 24877 +20921 21061 20989 20991 17102 24878 +20922 21062 20990 20992 17103 24879 +20923 21063 20991 20993 17104 24880 +20924 21064 20992 20994 17105 24881 +20925 21065 20993 20995 17106 24882 +20926 21066 20994 20996 17107 24883 +20927 21067 20995 20997 17108 24884 +20928 21068 20996 20998 17109 24885 +20929 21069 20997 20999 17110 24886 +20930 21070 20998 21000 17111 24887 +20931 21071 20999 21001 17112 24888 +20932 21072 21000 21002 17113 24889 +20933 21073 21001 21003 17114 24890 +20934 21074 21002 21004 17115 24891 +21005 21075 21003 21076 17116 24892 +20934 21077 21004 21006 17117 24893 +20935 21078 21005 21007 17118 24894 +20936 21079 21006 21008 17119 24895 +20937 21080 21007 21009 17120 24896 +20938 21081 21008 21010 17121 24897 +20939 21082 21009 21011 17122 24898 +20940 21083 21010 21012 17123 24899 +20941 21084 21011 21013 17124 24900 +20942 21085 21012 21014 17125 24901 +20943 21086 21013 21015 17126 24902 +20944 21087 21014 21016 17127 24903 +20945 21088 21015 21017 17128 24904 +20946 21089 21016 21018 17129 24905 +20947 21090 21017 21019 17130 24906 +20948 21091 21018 21020 17131 24907 +20949 21092 21019 21021 17132 24908 +20950 21093 21020 21022 17133 24909 +20951 21094 21021 21023 17134 24910 +20952 21095 21022 21024 17135 24911 +20953 21096 21023 21025 17136 24912 +20954 21097 21024 21026 17137 24913 +20955 21098 21025 21027 17138 24914 +20956 21099 21026 21028 17139 24915 +20957 21100 21027 21029 17140 24916 +20958 21101 21028 21030 17141 24917 +20959 21102 21029 21031 17142 24918 +20960 21103 21030 21032 17143 24919 +20961 21104 21031 21033 17144 24920 +20962 21105 21032 21034 17145 24921 +20963 21106 21033 21035 17146 24922 +20964 21107 21034 21036 17147 24923 +20965 21108 21035 21037 17148 24924 +20966 21109 21036 21038 17149 24925 +20967 21110 21037 21039 17150 24926 +20968 21111 21038 21039 17151 24927 +20969 21112 21040 21041 17152 24928 +20970 21113 21040 21042 17153 24929 +20971 21114 21041 21043 17154 24930 +20972 21115 21042 21044 17155 24931 +20973 21116 21043 21045 17156 24932 +20974 21117 21044 21046 17157 24933 +20975 21118 21045 21047 17158 24934 +20976 21119 21046 21048 17159 24935 +20977 21120 21047 21049 17160 24936 +20978 21121 21048 21050 17161 24937 +20979 21122 21049 21051 17162 24938 +20980 21123 21050 21052 17163 24939 +20981 21124 21051 21053 17164 24940 +20982 21125 21052 21054 17165 24941 +20983 21126 21053 21055 17166 24942 +20984 21127 21054 21056 17167 24943 +20985 21128 21055 21057 17168 24944 +20986 21129 21056 21058 17169 24945 +20987 21130 21057 21059 17170 24946 +20988 21131 21058 21060 17171 24947 +20989 21132 21059 21061 17172 24948 +20990 21133 21060 21062 17173 24949 +20991 21134 21061 21063 17174 24950 +20992 21135 21062 21064 17175 24951 +20993 21136 21063 21065 17176 24952 +20994 21137 21064 21066 17177 24953 +20995 21138 21065 21067 17178 24954 +20996 21139 21066 21068 17179 24955 +20997 21140 21067 21069 17180 24956 +20998 21141 21068 21070 17181 24957 +20999 21142 21069 21071 17182 24958 +21000 21143 21070 21072 17183 24959 +21001 21144 21071 21073 17184 24960 +21002 21145 21072 21074 17185 24961 +21003 21146 21073 21075 17186 24962 +21004 21147 21074 21076 17187 24963 +21004 21148 21075 21077 17188 24964 +21005 21149 21076 21078 17189 24965 +21006 21150 21077 21079 17190 24966 +21007 21151 21078 21080 17191 24967 +21008 21152 21079 21081 17192 24968 +21009 21153 21080 21082 17193 24969 +21010 21154 21081 21083 17194 24970 +21011 21155 21082 21084 17195 24971 +21012 21156 21083 21085 17196 24972 +21013 21157 21084 21086 17197 24973 +21014 21158 21085 21087 17198 24974 +21015 21159 21086 21088 17199 24975 +21016 21160 21087 21089 17200 24976 +21017 21161 21088 21090 17201 24977 +21018 21162 21089 21091 17202 24978 +21019 21163 21090 21092 17203 24979 +21020 21164 21091 21093 17204 24980 +21021 21165 21092 21094 17205 24981 +21022 21166 21093 21095 17206 24982 +21023 21167 21094 21096 17207 24983 +21024 21168 21095 21097 17208 24984 +21025 21169 21096 21098 17209 24985 +21026 21170 21097 21099 17210 24986 +21027 21171 21098 21100 17211 24987 +21028 21172 21099 21101 17212 24988 +21029 21173 21100 21102 17213 24989 +21030 21174 21101 21103 17214 24990 +21031 21175 21102 21104 17215 24991 +21032 21176 21103 21105 17216 24992 +21033 21177 21104 21106 17217 24993 +21034 21178 21105 21107 17218 24994 +21035 21179 21106 21108 17219 24995 +21036 21180 21107 21109 17220 24996 +21037 21181 21108 21110 17221 24997 +21038 21182 21109 21111 17222 24998 +21039 21183 21110 21111 17223 24999 +21040 21184 21112 21113 17224 25000 +21041 21185 21112 21114 17225 25001 +21042 21186 21113 21115 17226 25002 +21043 21187 21114 21116 17227 25003 +21044 21188 21115 21117 17228 25004 +21045 21189 21116 21118 17229 25005 +21046 21190 21117 21119 17230 25006 +21047 21191 21118 21120 17231 25007 +21048 21192 21119 21121 17232 25008 +21049 21193 21120 21122 17233 25009 +21050 21194 21121 21123 17234 25010 +21051 21195 21122 21124 17235 25011 +21052 21196 21123 21125 17236 25012 +21053 21197 21124 21126 17237 25013 +21054 21198 21125 21127 17238 25014 +21055 21199 21126 21128 17239 25015 +21056 21200 21127 21129 17240 25016 +21057 21201 21128 21130 17241 25017 +21058 21202 21129 21131 17242 25018 +21059 21203 21130 21132 17243 25019 +21060 21204 21131 21133 17244 25020 +21061 21205 21132 21134 17245 25021 +21062 21206 21133 21135 17246 25022 +21063 21207 21134 21136 17247 25023 +21064 21208 21135 21137 17248 25024 +21065 21209 21136 21138 17249 25025 +21066 21210 21137 21139 17250 25026 +21067 21211 21138 21140 17251 25027 +21068 21212 21139 21141 17252 25028 +21069 21213 21140 21142 17253 25029 +21070 21214 21141 21143 17254 25030 +21071 21215 21142 21144 17255 25031 +21072 21216 21143 21145 17256 25032 +21073 21217 21144 21146 17257 25033 +21074 21218 21145 21147 17258 25034 +21075 21219 21146 21148 17259 25035 +21076 21220 21147 21149 17260 25036 +21077 21221 21148 21150 17261 25037 +21078 21222 21149 21151 17262 25038 +21079 21223 21150 21152 17263 25039 +21080 21224 21151 21153 17264 25040 +21081 21225 21152 21154 17265 25041 +21082 21226 21153 21155 17266 25042 +21083 21227 21154 21156 17267 25043 +21084 21228 21155 21157 17268 25044 +21085 21229 21156 21158 17269 25045 +21086 21230 21157 21159 17270 25046 +21087 21231 21158 21160 17271 25047 +21088 21232 21159 21161 17272 25048 +21089 21233 21160 21162 17273 25049 +21090 21234 21161 21163 17274 25050 +21091 21235 21162 21164 17275 25051 +21092 21236 21163 21165 17276 25052 +21093 21237 21164 21166 17277 25053 +21094 21238 21165 21167 17278 25054 +21095 21239 21166 21168 17279 25055 +21096 21240 21167 21169 17280 25056 +21097 21241 21168 21170 17281 25057 +21098 21242 21169 21171 17282 25058 +21099 21243 21170 21172 17283 25059 +21100 21244 21171 21173 17284 25060 +21101 21245 21172 21174 17285 25061 +21102 21246 21173 21175 17286 25062 +21103 21247 21174 21176 17287 25063 +21104 21248 21175 21177 17288 25064 +21105 21249 21176 21178 17289 25065 +21106 21250 21177 21179 17290 25066 +21107 21251 21178 21180 17291 25067 +21108 21252 21179 21181 17292 25068 +21109 21253 21180 21182 17293 25069 +21110 21254 21181 21183 17294 25070 +21111 21255 21182 21183 17295 25071 +21112 21256 21184 21185 17296 25072 +21113 21257 21184 21186 17297 25073 +21114 21258 21185 21187 17298 25074 +21115 21259 21186 21188 17299 25075 +21116 21260 21187 21189 17300 25076 +21117 21261 21188 21190 17301 25077 +21118 21262 21189 21191 17302 25078 +21119 21263 21190 21192 17303 25079 +21120 21264 21191 21193 17304 25080 +21121 21265 21192 21194 17305 25081 +21122 21266 21193 21195 17306 25082 +21123 21267 21194 21196 17307 25083 +21124 21268 21195 21197 17308 25084 +21125 21269 21196 21198 17309 25085 +21126 21270 21197 21199 17310 25086 +21127 21271 21198 21200 17311 25087 +21128 21272 21199 21201 17312 25088 +21129 21273 21200 21202 17313 25089 +21130 21274 21201 21203 17314 25090 +21131 21275 21202 21204 17315 25091 +21132 21276 21203 21205 17316 25092 +21133 21277 21204 21206 17317 25093 +21134 21278 21205 21207 17318 25094 +21135 21279 21206 21208 17319 25095 +21136 21280 21207 21209 17320 25096 +21137 21281 21208 21210 17321 25097 +21138 21282 21209 21211 17322 25098 +21139 21283 21210 21212 17323 25099 +21140 21284 21211 21213 17324 25100 +21141 21285 21212 21214 17325 25101 +21142 21286 21213 21215 17326 25102 +21143 21287 21214 21216 17327 25103 +21144 21288 21215 21217 17328 25104 +21145 21289 21216 21218 17329 25105 +21146 21290 21217 21219 17330 25106 +21147 21291 21218 21220 17331 25107 +21148 21292 21219 21221 17332 25108 +21149 21293 21220 21222 17333 25109 +21150 21294 21221 21223 17334 25110 +21151 21295 21222 21224 17335 25111 +21152 21296 21223 21225 17336 25112 +21153 21297 21224 21226 17337 25113 +21154 21298 21225 21227 17338 25114 +21155 21299 21226 21228 17339 25115 +21156 21300 21227 21229 17340 25116 +21157 21301 21228 21230 17341 25117 +21158 21302 21229 21231 17342 25118 +21159 21303 21230 21232 17343 25119 +21160 21304 21231 21233 17344 25120 +21161 21305 21232 21234 17345 25121 +21162 21306 21233 21235 17346 25122 +21163 21307 21234 21236 17347 25123 +21164 21308 21235 21237 17348 25124 +21165 21309 21236 21238 17349 25125 +21166 21310 21237 21239 17350 25126 +21167 21311 21238 21240 17351 25127 +21168 21312 21239 21241 17352 25128 +21169 21313 21240 21242 17353 25129 +21170 21314 21241 21243 17354 25130 +21171 21315 21242 21244 17355 25131 +21172 21316 21243 21245 17356 25132 +21173 21317 21244 21246 17357 25133 +21174 21318 21245 21247 17358 25134 +21175 21319 21246 21248 17359 25135 +21176 21320 21247 21249 17360 25136 +21177 21321 21248 21250 17361 25137 +21178 21322 21249 21251 17362 25138 +21179 21323 21250 21252 17363 25139 +21180 21324 21251 21253 17364 25140 +21181 21325 21252 21254 17365 25141 +21182 21326 21253 21255 17366 25142 +21183 21327 21254 21255 17367 25143 +21184 21328 21256 21257 17368 25144 +21185 21329 21256 21258 17369 25145 +21186 21330 21257 21259 17370 25146 +21187 21331 21258 21260 17371 25147 +21188 21332 21259 21261 17372 25148 +21189 21333 21260 21262 17373 25149 +21190 21334 21261 21263 17374 25150 +21191 21335 21262 21264 17375 25151 +21192 21336 21263 21265 17376 25152 +21193 21337 21264 21266 17377 25153 +21194 21338 21265 21267 17378 25154 +21195 21339 21266 21268 17379 25155 +21196 21340 21267 21269 17380 25156 +21197 21341 21268 21270 17381 25157 +21198 21342 21269 21271 17382 25158 +21199 21343 21270 21272 17383 25159 +21200 21344 21271 21273 17384 25160 +21201 21345 21272 21274 17385 25161 +21202 21346 21273 21275 17386 25162 +21203 21347 21274 21276 17387 25163 +21204 21348 21275 21277 17388 25164 +21205 21349 21276 21278 17389 25165 +21206 21350 21277 21279 17390 25166 +21207 21351 21278 21280 17391 25167 +21208 21352 21279 21281 17392 25168 +21209 21353 21280 21282 17393 25169 +21210 21354 21281 21283 17394 25170 +21211 21355 21282 21284 17395 25171 +21212 21356 21283 21285 17396 25172 +21213 21357 21284 21286 17397 25173 +21214 21358 21285 21287 17398 25174 +21215 21359 21286 21288 17399 25175 +21216 21360 21287 21289 17400 25176 +21217 21361 21288 21290 17401 25177 +21218 21362 21289 21291 17402 25178 +21219 21363 21290 21292 17403 25179 +21220 21364 21291 21293 17404 25180 +21221 21365 21292 21294 17405 25181 +21222 21366 21293 21295 17406 25182 +21223 21367 21294 21296 17407 25183 +21224 21368 21295 21297 17408 25184 +21225 21369 21296 21298 17409 25185 +21226 21370 21297 21299 17410 25186 +21227 21371 21298 21300 17411 25187 +21228 21372 21299 21301 17412 25188 +21229 21373 21300 21302 17413 25189 +21230 21374 21301 21303 17414 25190 +21231 21375 21302 21304 17415 25191 +21232 21376 21303 21305 17416 25192 +21233 21377 21304 21306 17417 25193 +21234 21378 21305 21307 17418 25194 +21235 21379 21306 21308 17419 25195 +21236 21380 21307 21309 17420 25196 +21237 21381 21308 21310 17421 25197 +21238 21382 21309 21311 17422 25198 +21239 21383 21310 21312 17423 25199 +21240 21384 21311 21313 17424 25200 +21241 21385 21312 21314 17425 25201 +21242 21386 21313 21315 17426 25202 +21243 21387 21314 21316 17427 25203 +21244 21388 21315 21317 17428 25204 +21245 21389 21316 21318 17429 25205 +21246 21390 21317 21319 17430 25206 +21247 21391 21318 21320 17431 25207 +21248 21392 21319 21321 17432 25208 +21249 21393 21320 21322 17433 25209 +21250 21394 21321 21323 17434 25210 +21251 21395 21322 21324 17435 25211 +21252 21396 21323 21325 17436 25212 +21253 21397 21324 21326 17437 25213 +21254 21398 21325 21327 17438 25214 +21255 21399 21326 21327 17439 25215 +21256 21400 21328 21329 17440 25216 +21257 21401 21328 21330 17441 25217 +21258 21402 21329 21331 17442 25218 +21259 21403 21330 21332 17443 25219 +21260 21404 21331 21333 17444 25220 +21261 21405 21332 21334 17445 25221 +21262 21406 21333 21335 17446 25222 +21263 21407 21334 21336 17447 25223 +21264 21408 21335 21337 17448 25224 +21265 21409 21336 21338 17449 25225 +21266 21410 21337 21339 17450 25226 +21267 21411 21338 21340 17451 25227 +21268 21412 21339 21341 17452 25228 +21269 21413 21340 21342 17453 25229 +21270 21414 21341 21343 17454 25230 +21271 21415 21342 21344 17455 25231 +21272 21416 21343 21345 17456 25232 +21273 21417 21344 21346 17457 25233 +21274 21418 21345 21347 17458 25234 +21275 21419 21346 21348 17459 25235 +21276 21420 21347 21349 17460 25236 +21277 21421 21348 21350 17461 25237 +21278 21422 21349 21351 17462 25238 +21279 21423 21350 21352 17463 25239 +21280 21424 21351 21353 17464 25240 +21281 21425 21352 21354 17465 25241 +21282 21426 21353 21355 17466 25242 +21283 21427 21354 21356 17467 25243 +21284 21428 21355 21357 17468 25244 +21285 21429 21356 21358 17469 25245 +21286 21430 21357 21359 17470 25246 +21287 21431 21358 21360 17471 25247 +21288 21432 21359 21361 17472 25248 +21289 21433 21360 21362 17473 25249 +21290 21434 21361 21363 17474 25250 +21291 21435 21362 21364 17475 25251 +21292 21436 21363 21365 17476 25252 +21293 21437 21364 21366 17477 25253 +21294 21438 21365 21367 17478 25254 +21295 21439 21366 21368 17479 25255 +21296 21440 21367 21369 17480 25256 +21297 21441 21368 21370 17481 25257 +21298 21442 21369 21371 17482 25258 +21299 21443 21370 21372 17483 25259 +21300 21444 21371 21373 17484 25260 +21301 21445 21372 21374 17485 25261 +21302 21446 21373 21375 17486 25262 +21303 21447 21374 21376 17487 25263 +21304 21448 21375 21377 17488 25264 +21305 21449 21376 21378 17489 25265 +21306 21450 21377 21379 17490 25266 +21307 21451 21378 21380 17491 25267 +21308 21452 21379 21381 17492 25268 +21309 21453 21380 21382 17493 25269 +21310 21454 21381 21383 17494 25270 +21311 21455 21382 21384 17495 25271 +21312 21456 21383 21385 17496 25272 +21313 21457 21384 21386 17497 25273 +21314 21458 21385 21387 17498 25274 +21315 21459 21386 21388 17499 25275 +21316 21460 21387 21389 17500 25276 +21317 21461 21388 21390 17501 25277 +21318 21462 21389 21391 17502 25278 +21319 21463 21390 21392 17503 25279 +21320 21464 21391 21393 17504 25280 +21321 21465 21392 21394 17505 25281 +21322 21466 21393 21395 17506 25282 +21323 21467 21394 21396 17507 25283 +21324 21468 21395 21397 17508 25284 +21325 21469 21396 21398 17509 25285 +21326 21470 21397 21399 17510 25286 +21327 21471 21398 21399 17511 25287 +21328 21472 21400 21401 17512 25288 +21329 21473 21400 21402 17513 25289 +21330 21474 21401 21403 17514 25290 +21331 21475 21402 21404 17515 25291 +21332 21476 21403 21405 17516 25292 +21333 21477 21404 21406 17517 25293 +21334 21478 21405 21407 17518 25294 +21335 21479 21406 21408 17519 25295 +21336 21480 21407 21409 17520 25296 +21337 21481 21408 21410 17521 25297 +21338 21482 21409 21411 17522 25298 +21339 21483 21410 21412 17523 25299 +21340 21484 21411 21413 17524 25300 +21341 21485 21412 21414 17525 25301 +21342 21486 21413 21415 17526 25302 +21343 21487 21414 21416 17527 25303 +21344 21488 21415 21417 17528 25304 +21345 21489 21416 21418 17529 25305 +21346 21490 21417 21419 17530 25306 +21347 21491 21418 21420 17531 25307 +21348 21492 21419 21421 17532 25308 +21349 21493 21420 21422 17533 25309 +21350 21494 21421 21423 17534 25310 +21351 21495 21422 21424 17535 25311 +21352 21496 21423 21425 17536 25312 +21353 21497 21424 21426 17537 25313 +21354 21498 21425 21427 17538 25314 +21355 21499 21426 21428 17539 25315 +21356 21500 21427 21429 17540 25316 +21357 21501 21428 21430 17541 25317 +21358 21502 21429 21431 17542 25318 +21359 21503 21430 21432 17543 25319 +21360 21504 21431 21433 17544 25320 +21361 21505 21432 21434 17545 25321 +21362 21506 21433 21435 17546 25322 +21363 21507 21434 21436 17547 25323 +21364 21508 21435 21437 17548 25324 +21365 21509 21436 21438 17549 25325 +21366 21510 21437 21439 17550 25326 +21367 21511 21438 21440 17551 25327 +21368 21512 21439 21441 17552 25328 +21369 21513 21440 21442 17553 25329 +21370 21514 21441 21443 17554 25330 +21371 21515 21442 21444 17555 25331 +21372 21516 21443 21445 17556 25332 +21373 21517 21444 21446 17557 25333 +21374 21518 21445 21447 17558 25334 +21375 21519 21446 21448 17559 25335 +21376 21520 21447 21449 17560 25336 +21377 21521 21448 21450 17561 25337 +21378 21522 21449 21451 17562 25338 +21379 21523 21450 21452 17563 25339 +21380 21524 21451 21453 17564 25340 +21381 21525 21452 21454 17565 25341 +21382 21526 21453 21455 17566 25342 +21383 21527 21454 21456 17567 25343 +21384 21528 21455 21457 17568 25344 +21385 21529 21456 21458 17569 25345 +21386 21530 21457 21459 17570 25346 +21387 21531 21458 21460 17571 25347 +21388 21532 21459 21461 17572 25348 +21389 21533 21460 21462 17573 25349 +21390 21534 21461 21463 17574 25350 +21391 21535 21462 21464 17575 25351 +21392 21536 21463 21465 17576 25352 +21393 21537 21464 21466 17577 25353 +21394 21538 21465 21467 17578 25354 +21395 21539 21466 21468 17579 25355 +21396 21540 21467 21469 17580 25356 +21397 21541 21468 21470 17581 25357 +21398 21542 21469 21471 17582 25358 +21399 21543 21470 21471 17583 25359 +21400 21544 21472 21473 17584 25360 +21401 21545 21472 21474 17585 25361 +21402 21546 21473 21475 17586 25362 +21403 21547 21474 21476 17587 25363 +21404 21548 21475 21477 17588 25364 +21405 21549 21476 21478 17589 25365 +21406 21550 21477 21479 17590 25366 +21407 21551 21478 21480 17591 25367 +21408 21552 21479 21481 17592 25368 +21409 21553 21480 21482 17593 25369 +21410 21554 21481 21483 17594 25370 +21411 21555 21482 21484 17595 25371 +21412 21556 21483 21485 17596 25372 +21413 21557 21484 21486 17597 25373 +21414 21558 21485 21487 17598 25374 +21415 21559 21486 21488 17599 25375 +21416 21560 21487 21489 17600 25376 +21417 21561 21488 21490 17601 25377 +21418 21562 21489 21491 17602 25378 +21419 21563 21490 21492 17603 25379 +21420 21564 21491 21493 17604 25380 +21421 21565 21492 21494 17605 25381 +21422 21566 21493 21495 17606 25382 +21423 21567 21494 21496 17607 25383 +21424 21568 21495 21497 17608 25384 +21425 21569 21496 21498 17609 25385 +21426 21570 21497 21499 17610 25386 +21427 21571 21498 21500 17611 25387 +21428 21572 21499 21501 17612 25388 +21429 21573 21500 21502 17613 25389 +21430 21574 21501 21503 17614 25390 +21431 21575 21502 21504 17615 25391 +21432 21576 21503 21505 17616 25392 +21433 21577 21504 21506 17617 25393 +21434 21578 21505 21507 17618 25394 +21435 21579 21506 21508 17619 25395 +21436 21580 21507 21509 17620 25396 +21437 21581 21508 21510 17621 25397 +21438 21582 21509 21511 17622 25398 +21439 21583 21510 21512 17623 25399 +21440 21584 21511 21513 17624 25400 +21441 21585 21512 21514 17625 25401 +21442 21586 21513 21515 17626 25402 +21443 21587 21514 21516 17627 25403 +21444 21588 21515 21517 17628 25404 +21445 21589 21516 21518 17629 25405 +21446 21590 21517 21519 17630 25406 +21447 21591 21518 21520 17631 25407 +21448 21592 21519 21521 17632 25408 +21449 21593 21520 21522 17633 25409 +21450 21594 21521 21523 17634 25410 +21451 21595 21522 21524 17635 25411 +21452 21596 21523 21525 17636 25412 +21453 21597 21524 21526 17637 25413 +21454 21598 21525 21527 17638 25414 +21455 21599 21526 21528 17639 25415 +21456 21600 21527 21529 17640 25416 +21457 21601 21528 21530 17641 25417 +21458 21602 21529 21531 17642 25418 +21459 21603 21530 21532 17643 25419 +21460 21604 21531 21533 17644 25420 +21461 21605 21532 21534 17645 25421 +21462 21606 21533 21535 17646 25422 +21463 21607 21534 21536 17647 25423 +21464 21608 21535 21537 17648 25424 +21465 21609 21536 21538 17649 25425 +21466 21610 21537 21539 17650 25426 +21467 21611 21538 21540 17651 25427 +21468 21612 21539 21541 17652 25428 +21469 21613 21540 21542 17653 25429 +21470 21614 21541 21543 17654 25430 +21471 21615 21542 21543 17655 25431 +21472 21616 21544 21545 17656 25432 +21473 21617 21544 21546 17657 25433 +21474 21618 21545 21547 17658 25434 +21475 21619 21546 21548 17659 25435 +21476 21620 21547 21549 17660 25436 +21477 21621 21548 21550 17661 25437 +21478 21622 21549 21551 17662 25438 +21479 21623 21550 21552 17663 25439 +21480 21624 21551 21553 17664 25440 +21481 21625 21552 21554 17665 25441 +21482 21626 21553 21555 17666 25442 +21483 21627 21554 21556 17667 25443 +21484 21628 21555 21557 17668 25444 +21485 21629 21556 21558 17669 25445 +21486 21630 21557 21559 17670 25446 +21487 21631 21558 21560 17671 25447 +21488 21632 21559 21561 17672 25448 +21489 21633 21560 21562 17673 25449 +21490 21634 21561 21563 17674 25450 +21491 21635 21562 21564 17675 25451 +21492 21636 21563 21565 17676 25452 +21493 21637 21564 21566 17677 25453 +21494 21638 21565 21567 17678 25454 +21495 21639 21566 21568 17679 25455 +21496 21640 21567 21569 17680 25456 +21497 21641 21568 21570 17681 25457 +21498 21642 21569 21571 17682 25458 +21499 21643 21570 21572 17683 25459 +21500 21644 21571 21573 17684 25460 +21501 21645 21572 21574 17685 25461 +21502 21646 21573 21575 17686 25462 +21503 21647 21574 21576 17687 25463 +21504 21648 21575 21577 17688 25464 +21505 21649 21576 21578 17689 25465 +21506 21650 21577 21579 17690 25466 +21507 21651 21578 21580 17691 25467 +21508 21652 21579 21581 17692 25468 +21509 21653 21580 21582 17693 25469 +21510 21654 21581 21583 17694 25470 +21511 21655 21582 21584 17695 25471 +21512 21656 21583 21585 17696 25472 +21513 21657 21584 21586 17697 25473 +21514 21658 21585 21587 17698 25474 +21515 21659 21586 21588 17699 25475 +21516 21660 21587 21589 17700 25476 +21517 21661 21588 21590 17701 25477 +21518 21662 21589 21591 17702 25478 +21519 21663 21590 21592 17703 25479 +21520 21664 21591 21593 17704 25480 +21521 21665 21592 21594 17705 25481 +21522 21666 21593 21595 17706 25482 +21523 21667 21594 21596 17707 25483 +21524 21668 21595 21597 17708 25484 +21525 21669 21596 21598 17709 25485 +21526 21670 21597 21599 17710 25486 +21527 21671 21598 21600 17711 25487 +21528 21672 21599 21601 17712 25488 +21529 21673 21600 21602 17713 25489 +21530 21674 21601 21603 17714 25490 +21531 21675 21602 21604 17715 25491 +21532 21676 21603 21605 17716 25492 +21533 21677 21604 21606 17717 25493 +21534 21678 21605 21607 17718 25494 +21535 21679 21606 21608 17719 25495 +21536 21680 21607 21609 17720 25496 +21537 21681 21608 21610 17721 25497 +21538 21682 21609 21611 17722 25498 +21539 21683 21610 21612 17723 25499 +21540 21684 21611 21613 17724 25500 +21541 21685 21612 21614 17725 25501 +21542 21686 21613 21615 17726 25502 +21543 21687 21614 21615 17727 25503 +21544 21688 21616 21617 17728 25504 +21545 21689 21616 21618 17729 25505 +21546 21690 21617 21619 17730 25506 +21547 21691 21618 21620 17731 25507 +21548 21692 21619 21621 17732 25508 +21549 21693 21620 21622 17733 25509 +21550 21694 21621 21623 17734 25510 +21551 21695 21622 21624 17735 25511 +21552 21696 21623 21625 17736 25512 +21553 21697 21624 21626 17737 25513 +21554 21698 21625 21627 17738 25514 +21555 21699 21626 21628 17739 25515 +21556 21700 21627 21629 17740 25516 +21557 21701 21628 21630 17741 25517 +21558 21702 21629 21631 17742 25518 +21559 21703 21630 21632 17743 25519 +21560 21704 21631 21633 17744 25520 +21561 21705 21632 21634 17745 25521 +21562 21706 21633 21635 17746 25522 +21563 21707 21634 21636 17747 25523 +21564 21708 21635 21637 17748 25524 +21565 21709 21636 21638 17749 25525 +21566 21710 21637 21639 17750 25526 +21567 21711 21638 21640 17751 25527 +21568 21712 21639 21641 17752 25528 +21569 21713 21640 21642 17753 25529 +21570 21714 21641 21643 17754 25530 +21571 21715 21642 21644 17755 25531 +21572 21716 21643 21645 17756 25532 +21573 21717 21644 21646 17757 25533 +21574 21718 21645 21647 17758 25534 +21575 21719 21646 21648 17759 25535 +21576 21720 21647 21649 17760 25536 +21577 21721 21648 21650 17761 25537 +21578 21722 21649 21651 17762 25538 +21579 21723 21650 21652 17763 25539 +21580 21724 21651 21653 17764 25540 +21581 21725 21652 21654 17765 25541 +21582 21726 21653 21655 17766 25542 +21583 21727 21654 21656 17767 25543 +21584 21728 21655 21657 17768 25544 +21585 21729 21656 21658 17769 25545 +21586 21730 21657 21659 17770 25546 +21587 21731 21658 21660 17771 25547 +21588 21732 21659 21661 17772 25548 +21589 21733 21660 21662 17773 25549 +21590 21734 21661 21663 17774 25550 +21591 21735 21662 21664 17775 25551 +21592 21736 21663 21665 17776 25552 +21593 21737 21664 21666 17777 25553 +21594 21738 21665 21667 17778 25554 +21595 21739 21666 21668 17779 25555 +21596 21740 21667 21669 17780 25556 +21597 21741 21668 21670 17781 25557 +21598 21742 21669 21671 17782 25558 +21599 21743 21670 21672 17783 25559 +21600 21744 21671 21673 17784 25560 +21601 21745 21672 21674 17785 25561 +21602 21746 21673 21675 17786 25562 +21603 21747 21674 21676 17787 25563 +21604 21748 21675 21677 17788 25564 +21605 21749 21676 21678 17789 25565 +21606 21750 21677 21679 17790 25566 +21607 21751 21678 21680 17791 25567 +21608 21752 21679 21681 17792 25568 +21609 21753 21680 21682 17793 25569 +21610 21754 21681 21683 17794 25570 +21611 21755 21682 21684 17795 25571 +21612 21756 21683 21685 17796 25572 +21613 21757 21684 21686 17797 25573 +21614 21758 21685 21687 17798 25574 +21615 21759 21686 21687 17799 25575 +21616 21760 21688 21689 17800 25576 +21617 21761 21688 21690 17801 25577 +21618 21762 21689 21691 17802 25578 +21619 21763 21690 21692 17803 25579 +21620 21764 21691 21693 17804 25580 +21621 21765 21692 21694 17805 25581 +21622 21766 21693 21695 17806 25582 +21623 21767 21694 21696 17807 25583 +21624 21768 21695 21697 17808 25584 +21625 21769 21696 21698 17809 25585 +21626 21770 21697 21699 17810 25586 +21627 21771 21698 21700 17811 25587 +21628 21772 21699 21701 17812 25588 +21629 21773 21700 21702 17813 25589 +21630 21774 21701 21703 17814 25590 +21631 21775 21702 21704 17815 25591 +21632 21776 21703 21705 17816 25592 +21633 21777 21704 21706 17817 25593 +21634 21778 21705 21707 17818 25594 +21635 21779 21706 21708 17819 25595 +21636 21780 21707 21709 17820 25596 +21637 21781 21708 21710 17821 25597 +21638 21782 21709 21711 17822 25598 +21639 21783 21710 21712 17823 25599 +21640 21784 21711 21713 17824 25600 +21641 21785 21712 21714 17825 25601 +21642 21786 21713 21715 17826 25602 +21643 21787 21714 21716 17827 25603 +21644 21788 21715 21717 17828 25604 +21645 21789 21716 21718 17829 25605 +21646 21790 21717 21719 17830 25606 +21647 21791 21718 21720 17831 25607 +21648 21792 21719 21721 17832 25608 +21649 21793 21720 21722 17833 25609 +21650 21794 21721 21723 17834 25610 +21651 21795 21722 21724 17835 25611 +21652 21796 21723 21725 17836 25612 +21653 21797 21724 21726 17837 25613 +21654 21798 21725 21727 17838 25614 +21655 21799 21726 21728 17839 25615 +21656 21800 21727 21729 17840 25616 +21657 21801 21728 21730 17841 25617 +21658 21802 21729 21731 17842 25618 +21659 21803 21730 21732 17843 25619 +21660 21804 21731 21733 17844 25620 +21661 21805 21732 21734 17845 25621 +21662 21806 21733 21735 17846 25622 +21663 21807 21734 21736 17847 25623 +21664 21808 21735 21737 17848 25624 +21665 21809 21736 21738 17849 25625 +21666 21810 21737 21739 17850 25626 +21667 21811 21738 21740 17851 25627 +21668 21812 21739 21741 17852 25628 +21669 21813 21740 21742 17853 25629 +21670 21814 21741 21743 17854 25630 +21671 21815 21742 21744 17855 25631 +21672 21816 21743 21745 17856 25632 +21673 21817 21744 21746 17857 25633 +21674 21818 21745 21747 17858 25634 +21675 21819 21746 21748 17859 25635 +21676 21820 21747 21749 17860 25636 +21677 21821 21748 21750 17861 25637 +21678 21822 21749 21751 17862 25638 +21679 21823 21750 21752 17863 25639 +21680 21824 21751 21753 17864 25640 +21681 21825 21752 21754 17865 25641 +21682 21826 21753 21755 17866 25642 +21683 21827 21754 21756 17867 25643 +21684 21828 21755 21757 17868 25644 +21685 21829 21756 21758 17869 25645 +21686 21830 21757 21759 17870 25646 +21687 21831 21758 21759 17871 25647 +21688 21832 21760 21761 17872 25648 +21689 21833 21760 21762 17873 25649 +21690 21834 21761 21763 17874 25650 +21691 21835 21762 21764 17875 25651 +21692 21836 21763 21765 17876 25652 +21693 21837 21764 21766 17877 25653 +21694 21838 21765 21767 17878 25654 +21695 21839 21766 21768 17879 25655 +21696 21840 21767 21769 17880 25656 +21697 21841 21768 21770 17881 25657 +21698 21842 21769 21771 17882 25658 +21699 21843 21770 21772 17883 25659 +21700 21844 21771 21773 17884 25660 +21701 21845 21772 21774 17885 25661 +21702 21846 21773 21775 17886 25662 +21703 21847 21774 21776 17887 25663 +21704 21848 21775 21777 17888 25664 +21705 21849 21776 21778 17889 25665 +21706 21850 21777 21779 17890 25666 +21707 21851 21778 21780 17891 25667 +21708 21852 21779 21781 17892 25668 +21709 21853 21780 21782 17893 25669 +21710 21854 21781 21783 17894 25670 +21711 21855 21782 21784 17895 25671 +21712 21856 21783 21785 17896 25672 +21713 21857 21784 21786 17897 25673 +21714 21858 21785 21787 17898 25674 +21715 21859 21786 21788 17899 25675 +21716 21860 21787 21789 17900 25676 +21717 21861 21788 21790 17901 25677 +21718 21862 21789 21791 17902 25678 +21719 21863 21790 21792 17903 25679 +21720 21864 21791 21793 17904 25680 +21721 21865 21792 21794 17905 25681 +21722 21866 21793 21795 17906 25682 +21723 21867 21794 21796 17907 25683 +21724 21868 21795 21797 17908 25684 +21725 21869 21796 21798 17909 25685 +21726 21870 21797 21799 17910 25686 +21727 21871 21798 21800 17911 25687 +21728 21872 21799 21801 17912 25688 +21729 21873 21800 21802 17913 25689 +21730 21874 21801 21803 17914 25690 +21731 21875 21802 21804 17915 25691 +21732 21876 21803 21805 17916 25692 +21733 21877 21804 21806 17917 25693 +21734 21878 21805 21807 17918 25694 +21735 21879 21806 21808 17919 25695 +21736 21880 21807 21809 17920 25696 +21737 21881 21808 21810 17921 25697 +21738 21882 21809 21811 17922 25698 +21739 21883 21810 21812 17923 25699 +21740 21884 21811 21813 17924 25700 +21741 21885 21812 21814 17925 25701 +21742 21886 21813 21815 17926 25702 +21743 21887 21814 21816 17927 25703 +21744 21888 21815 21817 17928 25704 +21745 21889 21816 21818 17929 25705 +21746 21890 21817 21819 17930 25706 +21747 21891 21818 21820 17931 25707 +21748 21892 21819 21821 17932 25708 +21749 21893 21820 21822 17933 25709 +21750 21894 21821 21823 17934 25710 +21751 21895 21822 21824 17935 25711 +21752 21896 21823 21825 17936 25712 +21753 21897 21824 21826 17937 25713 +21754 21898 21825 21827 17938 25714 +21755 21899 21826 21828 17939 25715 +21756 21900 21827 21829 17940 25716 +21757 21901 21828 21830 17941 25717 +21758 21902 21829 21831 17942 25718 +21759 21903 21830 21831 17943 25719 +21760 21904 21832 21833 17944 25720 +21761 21905 21832 21834 17945 25721 +21762 21906 21833 21835 17946 25722 +21763 21907 21834 21836 17947 25723 +21764 21908 21835 21837 17948 25724 +21765 21909 21836 21838 17949 25725 +21766 21910 21837 21839 17950 25726 +21767 21911 21838 21840 17951 25727 +21768 21912 21839 21841 17952 25728 +21769 21913 21840 21842 17953 25729 +21770 21914 21841 21843 17954 25730 +21771 21915 21842 21844 17955 25731 +21772 21916 21843 21845 17956 25732 +21773 21917 21844 21846 17957 25733 +21774 21918 21845 21847 17958 25734 +21775 21919 21846 21848 17959 25735 +21776 21920 21847 21849 17960 25736 +21777 21921 21848 21850 17961 25737 +21778 21922 21849 21851 17962 25738 +21779 21923 21850 21852 17963 25739 +21780 21924 21851 21853 17964 25740 +21781 21925 21852 21854 17965 25741 +21782 21926 21853 21855 17966 25742 +21783 21927 21854 21856 17967 25743 +21784 21928 21855 21857 17968 25744 +21785 21929 21856 21858 17969 25745 +21786 21930 21857 21859 17970 25746 +21787 21931 21858 21860 17971 25747 +21788 21932 21859 21861 17972 25748 +21789 21933 21860 21862 17973 25749 +21790 21934 21861 21863 17974 25750 +21791 21935 21862 21864 17975 25751 +21792 21936 21863 21865 17976 25752 +21793 21937 21864 21866 17977 25753 +21794 21938 21865 21867 17978 25754 +21795 21939 21866 21868 17979 25755 +21796 21940 21867 21869 17980 25756 +21797 21941 21868 21870 17981 25757 +21798 21942 21869 21871 17982 25758 +21799 21943 21870 21872 17983 25759 +21800 21944 21871 21873 17984 25760 +21801 21945 21872 21874 17985 25761 +21802 21946 21873 21875 17986 25762 +21803 21947 21874 21876 17987 25763 +21804 21948 21875 21877 17988 25764 +21805 21949 21876 21878 17989 25765 +21806 21950 21877 21879 17990 25766 +21807 21951 21878 21880 17991 25767 +21808 21952 21879 21881 17992 25768 +21809 21953 21880 21882 17993 25769 +21810 21954 21881 21883 17994 25770 +21811 21955 21882 21884 17995 25771 +21812 21956 21883 21885 17996 25772 +21813 21957 21884 21886 17997 25773 +21814 21958 21885 21887 17998 25774 +21815 21959 21886 21888 17999 25775 +21816 21960 21887 21889 18000 25776 +21817 21961 21888 21890 18001 25777 +21818 21962 21889 21891 18002 25778 +21819 21963 21890 21892 18003 25779 +21820 21964 21891 21893 18004 25780 +21821 21965 21892 21894 18005 25781 +21822 21966 21893 21895 18006 25782 +21823 21967 21894 21896 18007 25783 +21824 21968 21895 21897 18008 25784 +21825 21969 21896 21898 18009 25785 +21826 21970 21897 21899 18010 25786 +21827 21971 21898 21900 18011 25787 +21828 21972 21899 21901 18012 25788 +21829 21973 21900 21902 18013 25789 +21830 21974 21901 21903 18014 25790 +21831 21975 21902 21903 18015 25791 +21832 21976 21904 21905 18016 25792 +21833 21977 21904 21906 18017 25793 +21834 21978 21905 21907 18018 25794 +21835 21979 21906 21908 18019 25795 +21836 21980 21907 21909 18020 25796 +21837 21981 21908 21910 18021 25797 +21838 21982 21909 21911 18022 25798 +21839 21983 21910 21912 18023 25799 +21840 21984 21911 21913 18024 25800 +21841 21985 21912 21914 18025 25801 +21842 21986 21913 21915 18026 25802 +21843 21987 21914 21916 18027 25803 +21844 21988 21915 21917 18028 25804 +21845 21989 21916 21918 18029 25805 +21846 21990 21917 21919 18030 25806 +21847 21991 21918 21920 18031 25807 +21848 21992 21919 21921 18032 25808 +21849 21993 21920 21922 18033 25809 +21850 21994 21921 21923 18034 25810 +21851 21995 21922 21924 18035 25811 +21852 21996 21923 21925 18036 25812 +21853 21997 21924 21926 18037 25813 +21854 21998 21925 21927 18038 25814 +21855 21999 21926 21928 18039 25815 +21856 22000 21927 21929 18040 25816 +21857 22001 21928 21930 18041 25817 +21858 22002 21929 21931 18042 25818 +21859 22003 21930 21932 18043 25819 +21860 22004 21931 21933 18044 25820 +21861 22005 21932 21934 18045 25821 +21862 22006 21933 21935 18046 25822 +21863 22007 21934 21936 18047 25823 +21864 22008 21935 21937 18048 25824 +21865 22009 21936 21938 18049 25825 +21866 22010 21937 21939 18050 25826 +21867 22011 21938 21940 18051 25827 +21868 22012 21939 21941 18052 25828 +21869 22013 21940 21942 18053 25829 +21870 22014 21941 21943 18054 25830 +21871 22015 21942 21944 18055 25831 +21872 22016 21943 21945 18056 25832 +21873 22017 21944 21946 18057 25833 +21874 22018 21945 21947 18058 25834 +21875 22019 21946 21948 18059 25835 +21876 22020 21947 21949 18060 25836 +21877 22021 21948 21950 18061 25837 +21878 22022 21949 21951 18062 25838 +21879 22023 21950 21952 18063 25839 +21880 22024 21951 21953 18064 25840 +21881 22025 21952 21954 18065 25841 +21882 22026 21953 21955 18066 25842 +21883 22027 21954 21956 18067 25843 +21884 22028 21955 21957 18068 25844 +21885 22029 21956 21958 18069 25845 +21886 22030 21957 21959 18070 25846 +21887 22031 21958 21960 18071 25847 +21888 22032 21959 21961 18072 25848 +21889 22033 21960 21962 18073 25849 +21890 22034 21961 21963 18074 25850 +21891 22035 21962 21964 18075 25851 +21892 22036 21963 21965 18076 25852 +21893 22037 21964 21966 18077 25853 +21894 22038 21965 21967 18078 25854 +21895 22039 21966 21968 18079 25855 +21896 22040 21967 21969 18080 25856 +21897 22041 21968 21970 18081 25857 +21898 22042 21969 21971 18082 25858 +21899 22043 21970 21972 18083 25859 +21900 22044 21971 21973 18084 25860 +21901 22045 21972 21974 18085 25861 +21902 22046 21973 21975 18086 25862 +21903 22047 21974 21975 18087 25863 +21904 22048 21976 21977 18088 25864 +21905 22049 21976 21978 18089 25865 +21906 22050 21977 21979 18090 25866 +21907 22051 21978 21980 18091 25867 +21908 22052 21979 21981 18092 25868 +21909 22053 21980 21982 18093 25869 +21910 22054 21981 21983 18094 25870 +21911 22055 21982 21984 18095 25871 +21912 22056 21983 21985 18096 25872 +21913 22057 21984 21986 18097 25873 +21914 22058 21985 21987 18098 25874 +21915 22059 21986 21988 18099 25875 +21916 22060 21987 21989 18100 25876 +21917 22061 21988 21990 18101 25877 +21918 22062 21989 21991 18102 25878 +21919 22063 21990 21992 18103 25879 +21920 22064 21991 21993 18104 25880 +21921 22065 21992 21994 18105 25881 +21922 22066 21993 21995 18106 25882 +21923 22067 21994 21996 18107 25883 +21924 22068 21995 21997 18108 25884 +21925 22069 21996 21998 18109 25885 +21926 22070 21997 21999 18110 25886 +21927 22071 21998 22000 18111 25887 +21928 22072 21999 22001 18112 25888 +21929 22073 22000 22002 18113 25889 +21930 22074 22001 22003 18114 25890 +21931 22075 22002 22004 18115 25891 +21932 22076 22003 22005 18116 25892 +21933 22077 22004 22006 18117 25893 +21934 22078 22005 22007 18118 25894 +21935 22079 22006 22008 18119 25895 +21936 22080 22007 22009 18120 25896 +21937 22081 22008 22010 18121 25897 +21938 22082 22009 22011 18122 25898 +21939 22083 22010 22012 18123 25899 +21940 22084 22011 22013 18124 25900 +21941 22085 22012 22014 18125 25901 +21942 22086 22013 22015 18126 25902 +21943 22087 22014 22016 18127 25903 +21944 22088 22015 22017 18128 25904 +21945 22089 22016 22018 18129 25905 +21946 22090 22017 22019 18130 25906 +21947 22091 22018 22020 18131 25907 +21948 22092 22019 22021 18132 25908 +21949 22093 22020 22022 18133 25909 +21950 22094 22021 22023 18134 25910 +21951 22095 22022 22024 18135 25911 +21952 22096 22023 22025 18136 25912 +21953 22097 22024 22026 18137 25913 +21954 22098 22025 22027 18138 25914 +21955 22099 22026 22028 18139 25915 +21956 22100 22027 22029 18140 25916 +21957 22101 22028 22030 18141 25917 +21958 22102 22029 22031 18142 25918 +21959 22103 22030 22032 18143 25919 +21960 22104 22031 22033 18144 25920 +21961 22105 22032 22034 18145 25921 +21962 22106 22033 22035 18146 25922 +21963 22107 22034 22036 18147 25923 +21964 22108 22035 22037 18148 25924 +21965 22109 22036 22038 18149 25925 +21966 22110 22037 22039 18150 25926 +21967 22111 22038 22040 18151 25927 +21968 22112 22039 22041 18152 25928 +21969 22113 22040 22042 18153 25929 +21970 22114 22041 22043 18154 25930 +21971 22115 22042 22044 18155 25931 +21972 22116 22043 22045 18156 25932 +21973 22117 22044 22046 18157 25933 +21974 22118 22045 22047 18158 25934 +21975 22119 22046 22047 18159 25935 +21976 22120 22048 22049 18160 25936 +21977 22121 22048 22050 18161 25937 +21978 22122 22049 22051 18162 25938 +21979 22123 22050 22052 18163 25939 +21980 22124 22051 22053 18164 25940 +21981 22125 22052 22054 18165 25941 +21982 22126 22053 22055 18166 25942 +21983 22127 22054 22056 18167 25943 +21984 22128 22055 22057 18168 25944 +21985 22129 22056 22058 18169 25945 +21986 22130 22057 22059 18170 25946 +21987 22131 22058 22060 18171 25947 +21988 22132 22059 22061 18172 25948 +21989 22133 22060 22062 18173 25949 +21990 22134 22061 22063 18174 25950 +21991 22135 22062 22064 18175 25951 +21992 22136 22063 22065 18176 25952 +21993 22137 22064 22066 18177 25953 +21994 22138 22065 22067 18178 25954 +21995 22139 22066 22068 18179 25955 +21996 22140 22067 22069 18180 25956 +21997 22141 22068 22070 18181 25957 +21998 22142 22069 22071 18182 25958 +21999 22143 22070 22072 18183 25959 +22000 22144 22071 22073 18184 25960 +22001 22145 22072 22074 18185 25961 +22002 22146 22073 22075 18186 25962 +22003 22147 22074 22076 18187 25963 +22004 22148 22075 22077 18188 25964 +22005 22149 22076 22078 18189 25965 +22006 22150 22077 22079 18190 25966 +22007 22151 22078 22080 18191 25967 +22008 22152 22079 22081 18192 25968 +22009 22153 22080 22082 18193 25969 +22010 22154 22081 22083 18194 25970 +22011 22155 22082 22084 18195 25971 +22012 22156 22083 22085 18196 25972 +22013 22157 22084 22086 18197 25973 +22014 22158 22085 22087 18198 25974 +22015 22159 22086 22088 18199 25975 +22016 22160 22087 22089 18200 25976 +22017 22161 22088 22090 18201 25977 +22018 22162 22089 22091 18202 25978 +22019 22163 22090 22092 18203 25979 +22020 22164 22091 22093 18204 25980 +22021 22165 22092 22094 18205 25981 +22022 22166 22093 22095 18206 25982 +22023 22167 22094 22096 18207 25983 +22024 22168 22095 22097 18208 25984 +22025 22169 22096 22098 18209 25985 +22026 22170 22097 22099 18210 25986 +22027 22171 22098 22100 18211 25987 +22028 22172 22099 22101 18212 25988 +22029 22173 22100 22102 18213 25989 +22030 22174 22101 22103 18214 25990 +22031 22175 22102 22104 18215 25991 +22032 22176 22103 22105 18216 25992 +22033 22177 22104 22106 18217 25993 +22034 22178 22105 22107 18218 25994 +22035 22179 22106 22108 18219 25995 +22036 22180 22107 22109 18220 25996 +22037 22181 22108 22110 18221 25997 +22038 22182 22109 22111 18222 25998 +22039 22183 22110 22112 18223 25999 +22040 22184 22111 22113 18224 26000 +22041 22185 22112 22114 18225 26001 +22042 22186 22113 22115 18226 26002 +22043 22187 22114 22116 18227 26003 +22044 22188 22115 22117 18228 26004 +22045 22189 22116 22118 18229 26005 +22046 22190 22117 22119 18230 26006 +22047 22191 22118 22119 18231 26007 +22048 22192 22120 22121 18232 26008 +22049 22193 22120 22122 18233 26009 +22050 22194 22121 22123 18234 26010 +22051 22195 22122 22124 18235 26011 +22052 22196 22123 22125 18236 26012 +22053 22197 22124 22126 18237 26013 +22054 22198 22125 22127 18238 26014 +22055 22199 22126 22128 18239 26015 +22056 22200 22127 22129 18240 26016 +22057 22201 22128 22130 18241 26017 +22058 22202 22129 22131 18242 26018 +22059 22203 22130 22132 18243 26019 +22060 22204 22131 22133 18244 26020 +22061 22205 22132 22134 18245 26021 +22062 22206 22133 22135 18246 26022 +22063 22207 22134 22136 18247 26023 +22064 22208 22135 22137 18248 26024 +22065 22209 22136 22138 18249 26025 +22066 22210 22137 22139 18250 26026 +22067 22211 22138 22140 18251 26027 +22068 22212 22139 22141 18252 26028 +22069 22213 22140 22142 18253 26029 +22070 22214 22141 22143 18254 26030 +22071 22215 22142 22144 18255 26031 +22072 22216 22143 22145 18256 26032 +22073 22217 22144 22146 18257 26033 +22074 22218 22145 22147 18258 26034 +22075 22219 22146 22148 18259 26035 +22076 22220 22147 22149 18260 26036 +22077 22221 22148 22150 18261 26037 +22078 22222 22149 22151 18262 26038 +22079 22223 22150 22152 18263 26039 +22080 22224 22151 22153 18264 26040 +22081 22225 22152 22154 18265 26041 +22082 22226 22153 22155 18266 26042 +22083 22227 22154 22156 18267 26043 +22084 22228 22155 22157 18268 26044 +22085 22229 22156 22158 18269 26045 +22086 22230 22157 22159 18270 26046 +22087 22231 22158 22160 18271 26047 +22088 22232 22159 22161 18272 26048 +22089 22233 22160 22162 18273 26049 +22090 22234 22161 22163 18274 26050 +22091 22235 22162 22164 18275 26051 +22092 22236 22163 22165 18276 26052 +22093 22237 22164 22166 18277 26053 +22094 22238 22165 22167 18278 26054 +22095 22239 22166 22168 18279 26055 +22096 22240 22167 22169 18280 26056 +22097 22241 22168 22170 18281 26057 +22098 22242 22169 22171 18282 26058 +22099 22243 22170 22172 18283 26059 +22100 22244 22171 22173 18284 26060 +22101 22245 22172 22174 18285 26061 +22102 22246 22173 22175 18286 26062 +22103 22247 22174 22176 18287 26063 +22104 22248 22175 22177 18288 26064 +22105 22249 22176 22178 18289 26065 +22106 22250 22177 22179 18290 26066 +22107 22251 22178 22180 18291 26067 +22108 22252 22179 22181 18292 26068 +22109 22253 22180 22182 18293 26069 +22110 22254 22181 22183 18294 26070 +22111 22255 22182 22184 18295 26071 +22112 22256 22183 22185 18296 26072 +22113 22257 22184 22186 18297 26073 +22114 22258 22185 22187 18298 26074 +22115 22259 22186 22188 18299 26075 +22116 22260 22187 22189 18300 26076 +22117 22261 22188 22190 18301 26077 +22118 22262 22189 22191 18302 26078 +22119 22263 22190 22191 18303 26079 +22120 22264 22192 22193 18304 26080 +22121 22265 22192 22194 18305 26081 +22122 22266 22193 22195 18306 26082 +22123 22267 22194 22196 18307 26083 +22124 22268 22195 22197 18308 26084 +22125 22269 22196 22198 18309 26085 +22126 22270 22197 22199 18310 26086 +22127 22271 22198 22200 18311 26087 +22128 22272 22199 22201 18312 26088 +22129 22273 22200 22202 18313 26089 +22130 22274 22201 22203 18314 26090 +22131 22275 22202 22204 18315 26091 +22132 22276 22203 22205 18316 26092 +22133 22277 22204 22206 18317 26093 +22134 22278 22205 22207 18318 26094 +22135 22279 22206 22208 18319 26095 +22136 22280 22207 22209 18320 26096 +22137 22281 22208 22210 18321 26097 +22138 22282 22209 22211 18322 26098 +22139 22283 22210 22212 18323 26099 +22140 22284 22211 22213 18324 26100 +22141 22285 22212 22214 18325 26101 +22142 22286 22213 22215 18326 26102 +22143 22287 22214 22216 18327 26103 +22144 22288 22215 22217 18328 26104 +22145 22289 22216 22218 18329 26105 +22146 22290 22217 22219 18330 26106 +22147 22291 22218 22220 18331 26107 +22148 22292 22219 22221 18332 26108 +22149 22293 22220 22222 18333 26109 +22150 22294 22221 22223 18334 26110 +22151 22295 22222 22224 18335 26111 +22152 22296 22223 22225 18336 26112 +22153 22297 22224 22226 18337 26113 +22154 22298 22225 22227 18338 26114 +22155 22299 22226 22228 18339 26115 +22156 22300 22227 22229 18340 26116 +22157 22301 22228 22230 18341 26117 +22158 22302 22229 22231 18342 26118 +22159 22303 22230 22232 18343 26119 +22160 22304 22231 22233 18344 26120 +22161 22305 22232 22234 18345 26121 +22162 22306 22233 22235 18346 26122 +22163 22307 22234 22236 18347 26123 +22164 22308 22235 22237 18348 26124 +22165 22309 22236 22238 18349 26125 +22166 22310 22237 22239 18350 26126 +22167 22311 22238 22240 18351 26127 +22168 22312 22239 22241 18352 26128 +22169 22313 22240 22242 18353 26129 +22170 22314 22241 22243 18354 26130 +22171 22315 22242 22244 18355 26131 +22172 22316 22243 22245 18356 26132 +22173 22317 22244 22246 18357 26133 +22174 22318 22245 22247 18358 26134 +22175 22319 22246 22248 18359 26135 +22176 22320 22247 22249 18360 26136 +22177 22321 22248 22250 18361 26137 +22178 22322 22249 22251 18362 26138 +22179 22323 22250 22252 18363 26139 +22180 22324 22251 22253 18364 26140 +22181 22325 22252 22254 18365 26141 +22182 22326 22253 22255 18366 26142 +22183 22327 22254 22256 18367 26143 +22184 22328 22255 22257 18368 26144 +22185 22329 22256 22258 18369 26145 +22186 22330 22257 22259 18370 26146 +22187 22331 22258 22260 18371 26147 +22188 22332 22259 22261 18372 26148 +22189 22333 22260 22262 18373 26149 +22190 22334 22261 22263 18374 26150 +22191 22335 22262 22263 18375 26151 +22192 22336 22264 22265 18376 26152 +22193 22337 22264 22266 18377 26153 +22194 22338 22265 22267 18378 26154 +22195 22339 22266 22268 18379 26155 +22196 22340 22267 22269 18380 26156 +22197 22341 22268 22270 18381 26157 +22198 22342 22269 22271 18382 26158 +22199 22343 22270 22272 18383 26159 +22200 22344 22271 22273 18384 26160 +22201 22345 22272 22274 18385 26161 +22202 22346 22273 22275 18386 26162 +22203 22347 22274 22276 18387 26163 +22204 22348 22275 22277 18388 26164 +22205 22349 22276 22278 18389 26165 +22206 22350 22277 22279 18390 26166 +22207 22351 22278 22280 18391 26167 +22208 22352 22279 22281 18392 26168 +22209 22353 22280 22282 18393 26169 +22210 22354 22281 22283 18394 26170 +22211 22355 22282 22284 18395 26171 +22212 22356 22283 22285 18396 26172 +22213 22357 22284 22286 18397 26173 +22214 22358 22285 22287 18398 26174 +22215 22359 22286 22288 18399 26175 +22216 22360 22287 22289 18400 26176 +22217 22361 22288 22290 18401 26177 +22218 22362 22289 22291 18402 26178 +22219 22363 22290 22292 18403 26179 +22220 22364 22291 22293 18404 26180 +22221 22365 22292 22294 18405 26181 +22222 22366 22293 22295 18406 26182 +22223 22367 22294 22296 18407 26183 +22224 22368 22295 22297 18408 26184 +22225 22369 22296 22298 18409 26185 +22226 22370 22297 22299 18410 26186 +22227 22371 22298 22300 18411 26187 +22228 22372 22299 22301 18412 26188 +22229 22373 22300 22302 18413 26189 +22230 22374 22301 22303 18414 26190 +22231 22375 22302 22304 18415 26191 +22232 22376 22303 22305 18416 26192 +22233 22377 22304 22306 18417 26193 +22234 22378 22305 22307 18418 26194 +22235 22379 22306 22308 18419 26195 +22236 22380 22307 22309 18420 26196 +22237 22381 22308 22310 18421 26197 +22238 22382 22309 22311 18422 26198 +22239 22383 22310 22312 18423 26199 +22240 22384 22311 22313 18424 26200 +22241 22385 22312 22314 18425 26201 +22242 22386 22313 22315 18426 26202 +22243 22387 22314 22316 18427 26203 +22244 22388 22315 22317 18428 26204 +22245 22389 22316 22318 18429 26205 +22246 22390 22317 22319 18430 26206 +22247 22391 22318 22320 18431 26207 +22248 22392 22319 22321 18432 26208 +22249 22393 22320 22322 18433 26209 +22250 22394 22321 22323 18434 26210 +22251 22395 22322 22324 18435 26211 +22252 22396 22323 22325 18436 26212 +22253 22397 22324 22326 18437 26213 +22254 22398 22325 22327 18438 26214 +22255 22399 22326 22328 18439 26215 +22256 22400 22327 22329 18440 26216 +22257 22401 22328 22330 18441 26217 +22258 22402 22329 22331 18442 26218 +22259 22403 22330 22332 18443 26219 +22260 22404 22331 22333 18444 26220 +22261 22405 22332 22334 18445 26221 +22262 22406 22333 22335 18446 26222 +22263 22407 22334 22335 18447 26223 +22264 22408 22336 22337 18448 26224 +22265 22409 22336 22338 18449 26225 +22266 22410 22337 22339 18450 26226 +22267 22411 22338 22340 18451 26227 +22268 22412 22339 22341 18452 26228 +22269 22413 22340 22342 18453 26229 +22270 22414 22341 22343 18454 26230 +22271 22415 22342 22344 18455 26231 +22272 22416 22343 22345 18456 26232 +22273 22417 22344 22346 18457 26233 +22274 22418 22345 22347 18458 26234 +22275 22419 22346 22348 18459 26235 +22276 22420 22347 22349 18460 26236 +22277 22421 22348 22350 18461 26237 +22278 22422 22349 22351 18462 26238 +22279 22423 22350 22352 18463 26239 +22280 22424 22351 22353 18464 26240 +22281 22425 22352 22354 18465 26241 +22282 22426 22353 22355 18466 26242 +22283 22427 22354 22356 18467 26243 +22284 22428 22355 22357 18468 26244 +22285 22429 22356 22358 18469 26245 +22286 22430 22357 22359 18470 26246 +22287 22431 22358 22360 18471 26247 +22288 22432 22359 22361 18472 26248 +22289 22433 22360 22362 18473 26249 +22290 22434 22361 22363 18474 26250 +22291 22435 22362 22364 18475 26251 +22292 22436 22363 22365 18476 26252 +22293 22437 22364 22366 18477 26253 +22294 22438 22365 22367 18478 26254 +22295 22439 22366 22368 18479 26255 +22296 22440 22367 22369 18480 26256 +22297 22441 22368 22370 18481 26257 +22298 22442 22369 22371 18482 26258 +22299 22443 22370 22372 18483 26259 +22300 22444 22371 22373 18484 26260 +22301 22445 22372 22374 18485 26261 +22302 22446 22373 22375 18486 26262 +22303 22447 22374 22376 18487 26263 +22304 22448 22375 22377 18488 26264 +22305 22449 22376 22378 18489 26265 +22306 22450 22377 22379 18490 26266 +22307 22451 22378 22380 18491 26267 +22308 22452 22379 22381 18492 26268 +22309 22453 22380 22382 18493 26269 +22310 22454 22381 22383 18494 26270 +22311 22455 22382 22384 18495 26271 +22312 22456 22383 22385 18496 26272 +22313 22457 22384 22386 18497 26273 +22314 22458 22385 22387 18498 26274 +22315 22459 22386 22388 18499 26275 +22316 22460 22387 22389 18500 26276 +22317 22461 22388 22390 18501 26277 +22318 22462 22389 22391 18502 26278 +22319 22463 22390 22392 18503 26279 +22320 22464 22391 22393 18504 26280 +22321 22465 22392 22394 18505 26281 +22322 22466 22393 22395 18506 26282 +22323 22467 22394 22396 18507 26283 +22324 22468 22395 22397 18508 26284 +22325 22469 22396 22398 18509 26285 +22326 22470 22397 22399 18510 26286 +22327 22471 22398 22400 18511 26287 +22328 22472 22399 22401 18512 26288 +22329 22473 22400 22402 18513 26289 +22330 22474 22401 22403 18514 26290 +22331 22475 22402 22404 18515 26291 +22332 22476 22403 22405 18516 26292 +22333 22477 22404 22406 18517 26293 +22334 22478 22405 22407 18518 26294 +22335 22479 22406 22407 18519 26295 +22336 22480 22408 22409 18520 26296 +22337 22481 22408 22410 18521 26297 +22338 22482 22409 22411 18522 26298 +22339 22483 22410 22412 18523 26299 +22340 22484 22411 22413 18524 26300 +22341 22485 22412 22414 18525 26301 +22342 22486 22413 22415 18526 26302 +22343 22487 22414 22416 18527 26303 +22344 22488 22415 22417 18528 26304 +22345 22489 22416 22418 18529 26305 +22346 22490 22417 22419 18530 26306 +22347 22491 22418 22420 18531 26307 +22348 22492 22419 22421 18532 26308 +22349 22493 22420 22422 18533 26309 +22350 22494 22421 22423 18534 26310 +22351 22495 22422 22424 18535 26311 +22352 22496 22423 22425 18536 26312 +22353 22497 22424 22426 18537 26313 +22354 22498 22425 22427 18538 26314 +22355 22499 22426 22428 18539 26315 +22356 22500 22427 22429 18540 26316 +22357 22501 22428 22430 18541 26317 +22358 22502 22429 22431 18542 26318 +22359 22503 22430 22432 18543 26319 +22360 22504 22431 22433 18544 26320 +22361 22505 22432 22434 18545 26321 +22362 22506 22433 22435 18546 26322 +22363 22507 22434 22436 18547 26323 +22364 22508 22435 22437 18548 26324 +22365 22509 22436 22438 18549 26325 +22366 22510 22437 22439 18550 26326 +22367 22511 22438 22440 18551 26327 +22368 22512 22439 22441 18552 26328 +22369 22513 22440 22442 18553 26329 +22370 22514 22441 22443 18554 26330 +22371 22515 22442 22444 18555 26331 +22372 22516 22443 22445 18556 26332 +22373 22517 22444 22446 18557 26333 +22374 22518 22445 22447 18558 26334 +22375 22519 22446 22448 18559 26335 +22376 22520 22447 22449 18560 26336 +22377 22521 22448 22450 18561 26337 +22378 22522 22449 22451 18562 26338 +22379 22523 22450 22452 18563 26339 +22380 22524 22451 22453 18564 26340 +22381 22525 22452 22454 18565 26341 +22382 22526 22453 22455 18566 26342 +22383 22527 22454 22456 18567 26343 +22384 22528 22455 22457 18568 26344 +22385 22529 22456 22458 18569 26345 +22386 22530 22457 22459 18570 26346 +22387 22531 22458 22460 18571 26347 +22388 22532 22459 22461 18572 26348 +22389 22533 22460 22462 18573 26349 +22390 22534 22461 22463 18574 26350 +22391 22535 22462 22464 18575 26351 +22392 22536 22463 22465 18576 26352 +22393 22537 22464 22466 18577 26353 +22394 22538 22465 22467 18578 26354 +22395 22539 22466 22468 18579 26355 +22396 22540 22467 22469 18580 26356 +22397 22541 22468 22470 18581 26357 +22398 22542 22469 22471 18582 26358 +22399 22543 22470 22472 18583 26359 +22400 22544 22471 22473 18584 26360 +22401 22545 22472 22474 18585 26361 +22402 22546 22473 22475 18586 26362 +22403 22547 22474 22476 18587 26363 +22404 22548 22475 22477 18588 26364 +22405 22549 22476 22478 18589 26365 +22406 22550 22477 22479 18590 26366 +22407 22551 22478 22479 18591 26367 +22408 22552 22480 22481 18592 26368 +22409 22553 22480 22482 18593 26369 +22410 22554 22481 22483 18594 26370 +22411 22555 22482 22484 18595 26371 +22412 22556 22483 22485 18596 26372 +22413 22557 22484 22486 18597 26373 +22414 22558 22485 22487 18598 26374 +22415 22559 22486 22488 18599 26375 +22416 22560 22487 22489 18600 26376 +22417 22561 22488 22490 18601 26377 +22418 22562 22489 22491 18602 26378 +22419 22563 22490 22492 18603 26379 +22420 22564 22491 22493 18604 26380 +22421 22565 22492 22494 18605 26381 +22422 22566 22493 22495 18606 26382 +22423 22567 22494 22496 18607 26383 +22424 22568 22495 22497 18608 26384 +22425 22569 22496 22498 18609 26385 +22426 22570 22497 22499 18610 26386 +22427 22571 22498 22500 18611 26387 +22428 22572 22499 22501 18612 26388 +22429 22573 22500 22502 18613 26389 +22430 22574 22501 22503 18614 26390 +22431 22575 22502 22504 18615 26391 +22432 22576 22503 22505 18616 26392 +22433 22577 22504 22506 18617 26393 +22434 22578 22505 22507 18618 26394 +22435 22579 22506 22508 18619 26395 +22436 22580 22507 22509 18620 26396 +22437 22581 22508 22510 18621 26397 +22438 22582 22509 22511 18622 26398 +22439 22583 22510 22512 18623 26399 +22440 22584 22511 22513 18624 26400 +22441 22585 22512 22514 18625 26401 +22442 22586 22513 22515 18626 26402 +22443 22587 22514 22516 18627 26403 +22444 22588 22515 22517 18628 26404 +22445 22589 22516 22518 18629 26405 +22446 22590 22517 22519 18630 26406 +22447 22591 22518 22520 18631 26407 +22448 22592 22519 22521 18632 26408 +22449 22593 22520 22522 18633 26409 +22450 22594 22521 22523 18634 26410 +22451 22595 22522 22524 18635 26411 +22452 22596 22523 22525 18636 26412 +22453 22597 22524 22526 18637 26413 +22454 22598 22525 22527 18638 26414 +22455 22599 22526 22528 18639 26415 +22456 22600 22527 22529 18640 26416 +22457 22601 22528 22530 18641 26417 +22458 22602 22529 22531 18642 26418 +22459 22603 22530 22532 18643 26419 +22460 22604 22531 22533 18644 26420 +22461 22605 22532 22534 18645 26421 +22462 22606 22533 22535 18646 26422 +22463 22607 22534 22536 18647 26423 +22464 22608 22535 22537 18648 26424 +22465 22609 22536 22538 18649 26425 +22466 22610 22537 22539 18650 26426 +22467 22611 22538 22540 18651 26427 +22468 22612 22539 22541 18652 26428 +22469 22613 22540 22542 18653 26429 +22470 22614 22541 22543 18654 26430 +22471 22615 22542 22544 18655 26431 +22472 22616 22543 22545 18656 26432 +22473 22617 22544 22546 18657 26433 +22474 22618 22545 22547 18658 26434 +22475 22619 22546 22548 18659 26435 +22476 22620 22547 22549 18660 26436 +22477 22621 22548 22550 18661 26437 +22478 22622 22549 22551 18662 26438 +22479 22623 22550 22551 18663 26439 +22480 22624 22552 22553 18664 26440 +22481 22625 22552 22554 18665 26441 +22482 22626 22553 22555 18666 26442 +22483 22627 22554 22556 18667 26443 +22484 22628 22555 22557 18668 26444 +22485 22629 22556 22558 18669 26445 +22486 22630 22557 22559 18670 26446 +22487 22631 22558 22560 18671 26447 +22488 22632 22559 22561 18672 26448 +22489 22633 22560 22562 18673 26449 +22490 22634 22561 22563 18674 26450 +22491 22635 22562 22564 18675 26451 +22492 22636 22563 22565 18676 26452 +22493 22637 22564 22566 18677 26453 +22494 22638 22565 22567 18678 26454 +22495 22639 22566 22568 18679 26455 +22496 22640 22567 22569 18680 26456 +22497 22641 22568 22570 18681 26457 +22498 22642 22569 22571 18682 26458 +22499 22643 22570 22572 18683 26459 +22500 22644 22571 22573 18684 26460 +22501 22645 22572 22574 18685 26461 +22502 22646 22573 22575 18686 26462 +22503 22647 22574 22576 18687 26463 +22504 22648 22575 22577 18688 26464 +22505 22649 22576 22578 18689 26465 +22506 22650 22577 22579 18690 26466 +22507 22651 22578 22580 18691 26467 +22508 22652 22579 22581 18692 26468 +22509 22653 22580 22582 18693 26469 +22510 22654 22581 22583 18694 26470 +22511 22655 22582 22584 18695 26471 +22512 22656 22583 22585 18696 26472 +22513 22657 22584 22586 18697 26473 +22514 22658 22585 22587 18698 26474 +22515 22659 22586 22588 18699 26475 +22516 22660 22587 22589 18700 26476 +22517 22661 22588 22590 18701 26477 +22518 22662 22589 22591 18702 26478 +22519 22663 22590 22592 18703 26479 +22520 22664 22591 22593 18704 26480 +22521 22665 22592 22594 18705 26481 +22522 22666 22593 22595 18706 26482 +22523 22667 22594 22596 18707 26483 +22524 22668 22595 22597 18708 26484 +22525 22669 22596 22598 18709 26485 +22526 22670 22597 22599 18710 26486 +22527 22671 22598 22600 18711 26487 +22528 22672 22599 22601 18712 26488 +22529 22673 22600 22602 18713 26489 +22530 22674 22601 22603 18714 26490 +22531 22675 22602 22604 18715 26491 +22532 22676 22603 22605 18716 26492 +22533 22677 22604 22606 18717 26493 +22534 22678 22605 22607 18718 26494 +22535 22679 22606 22608 18719 26495 +22536 22680 22607 22609 18720 26496 +22537 22681 22608 22610 18721 26497 +22538 22682 22609 22611 18722 26498 +22539 22683 22610 22612 18723 26499 +22540 22684 22611 22613 18724 26500 +22541 22685 22612 22614 18725 26501 +22542 22686 22613 22615 18726 26502 +22543 22687 22614 22616 18727 26503 +22544 22688 22615 22617 18728 26504 +22545 22689 22616 22618 18729 26505 +22546 22690 22617 22619 18730 26506 +22547 22691 22618 22620 18731 26507 +22548 22692 22619 22621 18732 26508 +22549 22693 22620 22622 18733 26509 +22550 22694 22621 22623 18734 26510 +22551 22695 22622 22623 18735 26511 +22552 22696 22624 22625 18736 26512 +22553 22697 22624 22626 18737 26513 +22554 22698 22625 22627 18738 26514 +22555 22699 22626 22628 18739 26515 +22556 22700 22627 22629 18740 26516 +22557 22701 22628 22630 18741 26517 +22558 22702 22629 22631 18742 26518 +22559 22703 22630 22632 18743 26519 +22560 22704 22631 22633 18744 26520 +22561 22705 22632 22634 18745 26521 +22562 22706 22633 22635 18746 26522 +22563 22707 22634 22636 18747 26523 +22564 22708 22635 22637 18748 26524 +22565 22709 22636 22638 18749 26525 +22566 22710 22637 22639 18750 26526 +22567 22711 22638 22640 18751 26527 +22568 22712 22639 22641 18752 26528 +22569 22713 22640 22642 18753 26529 +22570 22714 22641 22643 18754 26530 +22571 22715 22642 22644 18755 26531 +22572 22716 22643 22645 18756 26532 +22573 22717 22644 22646 18757 26533 +22574 22718 22645 22647 18758 26534 +22575 22719 22646 22648 18759 26535 +22576 22720 22647 22649 18760 26536 +22577 22721 22648 22650 18761 26537 +22578 22722 22649 22651 18762 26538 +22579 22723 22650 22652 18763 26539 +22580 22724 22651 22653 18764 26540 +22581 22725 22652 22654 18765 26541 +22582 22726 22653 22655 18766 26542 +22583 22727 22654 22656 18767 26543 +22584 22728 22655 22657 18768 26544 +22585 22729 22656 22658 18769 26545 +22586 22730 22657 22659 18770 26546 +22587 22731 22658 22660 18771 26547 +22588 22732 22659 22661 18772 26548 +22589 22733 22660 22662 18773 26549 +22590 22734 22661 22663 18774 26550 +22591 22735 22662 22664 18775 26551 +22592 22736 22663 22665 18776 26552 +22593 22737 22664 22666 18777 26553 +22594 22738 22665 22667 18778 26554 +22595 22739 22666 22668 18779 26555 +22596 22740 22667 22669 18780 26556 +22597 22741 22668 22670 18781 26557 +22598 22742 22669 22671 18782 26558 +22599 22743 22670 22672 18783 26559 +22600 22744 22671 22673 18784 26560 +22601 22745 22672 22674 18785 26561 +22602 22746 22673 22675 18786 26562 +22603 22747 22674 22676 18787 26563 +22604 22748 22675 22677 18788 26564 +22605 22749 22676 22678 18789 26565 +22606 22750 22677 22679 18790 26566 +22607 22751 22678 22680 18791 26567 +22608 22752 22679 22681 18792 26568 +22609 22753 22680 22682 18793 26569 +22610 22754 22681 22683 18794 26570 +22611 22755 22682 22684 18795 26571 +22612 22756 22683 22685 18796 26572 +22613 22757 22684 22686 18797 26573 +22614 22758 22685 22687 18798 26574 +22615 22759 22686 22688 18799 26575 +22616 22760 22687 22689 18800 26576 +22617 22761 22688 22690 18801 26577 +22618 22762 22689 22691 18802 26578 +22619 22763 22690 22692 18803 26579 +22620 22764 22691 22693 18804 26580 +22621 22765 22692 22694 18805 26581 +22622 22766 22693 22695 18806 26582 +22623 22767 22694 22695 18807 26583 +22624 22768 22696 22697 18808 26584 +22625 22769 22696 22698 18809 26585 +22626 22770 22697 22699 18810 26586 +22627 22771 22698 22700 18811 26587 +22628 22772 22699 22701 18812 26588 +22629 22773 22700 22702 18813 26589 +22630 22774 22701 22703 18814 26590 +22631 22775 22702 22704 18815 26591 +22632 22776 22703 22705 18816 26592 +22633 22777 22704 22706 18817 26593 +22634 22778 22705 22707 18818 26594 +22635 22779 22706 22708 18819 26595 +22636 22780 22707 22709 18820 26596 +22637 22781 22708 22710 18821 26597 +22638 22782 22709 22711 18822 26598 +22639 22783 22710 22712 18823 26599 +22640 22784 22711 22713 18824 26600 +22641 22785 22712 22714 18825 26601 +22642 22786 22713 22715 18826 26602 +22643 22787 22714 22716 18827 26603 +22644 22788 22715 22717 18828 26604 +22645 22789 22716 22718 18829 26605 +22646 22790 22717 22719 18830 26606 +22647 22791 22718 22720 18831 26607 +22648 22792 22719 22721 18832 26608 +22649 22793 22720 22722 18833 26609 +22650 22794 22721 22723 18834 26610 +22651 22795 22722 22724 18835 26611 +22652 22796 22723 22725 18836 26612 +22653 22797 22724 22726 18837 26613 +22654 22798 22725 22727 18838 26614 +22655 22799 22726 22728 18839 26615 +22656 22800 22727 22729 18840 26616 +22657 22801 22728 22730 18841 26617 +22658 22802 22729 22731 18842 26618 +22659 22803 22730 22732 18843 26619 +22660 22804 22731 22733 18844 26620 +22661 22805 22732 22734 18845 26621 +22662 22806 22733 22735 18846 26622 +22663 22807 22734 22736 18847 26623 +22664 22808 22735 22737 18848 26624 +22665 22809 22736 22738 18849 26625 +22666 22810 22737 22739 18850 26626 +22667 22811 22738 22740 18851 26627 +22668 22812 22739 22741 18852 26628 +22669 22813 22740 22742 18853 26629 +22670 22814 22741 22743 18854 26630 +22671 22815 22742 22744 18855 26631 +22672 22816 22743 22745 18856 26632 +22673 22817 22744 22746 18857 26633 +22674 22818 22745 22747 18858 26634 +22675 22819 22746 22748 18859 26635 +22676 22820 22747 22749 18860 26636 +22677 22821 22748 22750 18861 26637 +22678 22822 22749 22751 18862 26638 +22679 22823 22750 22752 18863 26639 +22680 22824 22751 22753 18864 26640 +22681 22825 22752 22754 18865 26641 +22682 22826 22753 22755 18866 26642 +22683 22827 22754 22756 18867 26643 +22684 22828 22755 22757 18868 26644 +22685 22829 22756 22758 18869 26645 +22686 22830 22757 22759 18870 26646 +22687 22831 22758 22760 18871 26647 +22688 22832 22759 22761 18872 26648 +22689 22833 22760 22762 18873 26649 +22690 22834 22761 22763 18874 26650 +22691 22835 22762 22764 18875 26651 +22692 22836 22763 22765 18876 26652 +22693 22837 22764 22766 18877 26653 +22694 22838 22765 22767 18878 26654 +22695 22839 22766 22767 18879 26655 +22696 22840 22768 22769 18880 26656 +22697 22841 22768 22770 18881 26657 +22698 22842 22769 22771 18882 26658 +22699 22843 22770 22772 18883 26659 +22700 22844 22771 22773 18884 26660 +22701 22845 22772 22774 18885 26661 +22702 22846 22773 22775 18886 26662 +22703 22847 22774 22776 18887 26663 +22704 22848 22775 22777 18888 26664 +22705 22849 22776 22778 18889 26665 +22706 22850 22777 22779 18890 26666 +22707 22851 22778 22780 18891 26667 +22708 22852 22779 22781 18892 26668 +22709 22853 22780 22782 18893 26669 +22710 22854 22781 22783 18894 26670 +22711 22855 22782 22784 18895 26671 +22712 22856 22783 22785 18896 26672 +22713 22857 22784 22786 18897 26673 +22714 22858 22785 22787 18898 26674 +22715 22859 22786 22788 18899 26675 +22716 22860 22787 22789 18900 26676 +22717 22861 22788 22790 18901 26677 +22718 22862 22789 22791 18902 26678 +22719 22863 22790 22792 18903 26679 +22720 22864 22791 22793 18904 26680 +22721 22865 22792 22794 18905 26681 +22722 22866 22793 22795 18906 26682 +22723 22867 22794 22796 18907 26683 +22724 22868 22795 22797 18908 26684 +22725 22869 22796 22798 18909 26685 +22726 22870 22797 22799 18910 26686 +22727 22871 22798 22800 18911 26687 +22728 22872 22799 22801 18912 26688 +22729 22873 22800 22802 18913 26689 +22730 22874 22801 22803 18914 26690 +22731 22875 22802 22804 18915 26691 +22732 22876 22803 22805 18916 26692 +22733 22877 22804 22806 18917 26693 +22734 22878 22805 22807 18918 26694 +22735 22879 22806 22808 18919 26695 +22736 22880 22807 22809 18920 26696 +22737 22881 22808 22810 18921 26697 +22738 22882 22809 22811 18922 26698 +22739 22883 22810 22812 18923 26699 +22740 22884 22811 22813 18924 26700 +22741 22885 22812 22814 18925 26701 +22742 22886 22813 22815 18926 26702 +22743 22887 22814 22816 18927 26703 +22744 22888 22815 22817 18928 26704 +22745 22889 22816 22818 18929 26705 +22746 22890 22817 22819 18930 26706 +22747 22891 22818 22820 18931 26707 +22748 22892 22819 22821 18932 26708 +22749 22893 22820 22822 18933 26709 +22750 22894 22821 22823 18934 26710 +22751 22895 22822 22824 18935 26711 +22752 22896 22823 22825 18936 26712 +22753 22897 22824 22826 18937 26713 +22754 22898 22825 22827 18938 26714 +22755 22899 22826 22828 18939 26715 +22756 22900 22827 22829 18940 26716 +22757 22901 22828 22830 18941 26717 +22758 22902 22829 22831 18942 26718 +22759 22903 22830 22832 18943 26719 +22760 22904 22831 22833 18944 26720 +22761 22905 22832 22834 18945 26721 +22762 22906 22833 22835 18946 26722 +22763 22907 22834 22836 18947 26723 +22764 22908 22835 22837 18948 26724 +22765 22909 22836 22838 18949 26725 +22766 22910 22837 22839 18950 26726 +22767 22911 22838 22839 18951 26727 +22768 22912 22840 22841 18952 26728 +22769 22913 22840 22842 18953 26729 +22770 22914 22841 22843 18954 26730 +22771 22915 22842 22844 18955 26731 +22772 22916 22843 22845 18956 26732 +22773 22917 22844 22846 18957 26733 +22774 22918 22845 22847 18958 26734 +22775 22919 22846 22848 18959 26735 +22776 22920 22847 22849 18960 26736 +22777 22921 22848 22850 18961 26737 +22778 22922 22849 22851 18962 26738 +22779 22923 22850 22852 18963 26739 +22780 22924 22851 22853 18964 26740 +22781 22925 22852 22854 18965 26741 +22782 22926 22853 22855 18966 26742 +22783 22927 22854 22856 18967 26743 +22784 22928 22855 22857 18968 26744 +22785 22929 22856 22858 18969 26745 +22786 22930 22857 22859 18970 26746 +22787 22931 22858 22860 18971 26747 +22788 22932 22859 22861 18972 26748 +22789 22933 22860 22862 18973 26749 +22790 22934 22861 22863 18974 26750 +22791 22935 22862 22864 18975 26751 +22792 22936 22863 22865 18976 26752 +22793 22937 22864 22866 18977 26753 +22794 22938 22865 22867 18978 26754 +22795 22939 22866 22868 18979 26755 +22796 22940 22867 22869 18980 26756 +22797 22941 22868 22870 18981 26757 +22798 22942 22869 22871 18982 26758 +22799 22943 22870 22872 18983 26759 +22800 22944 22871 22873 18984 26760 +22801 22945 22872 22874 18985 26761 +22802 22946 22873 22875 18986 26762 +22803 22947 22874 22876 18987 26763 +22804 22948 22875 22877 18988 26764 +22805 22949 22876 22878 18989 26765 +22806 22950 22877 22879 18990 26766 +22807 22951 22878 22880 18991 26767 +22808 22952 22879 22881 18992 26768 +22809 22953 22880 22882 18993 26769 +22810 22954 22881 22883 18994 26770 +22811 22955 22882 22884 18995 26771 +22812 22956 22883 22885 18996 26772 +22813 22957 22884 22886 18997 26773 +22814 22958 22885 22887 18998 26774 +22815 22959 22886 22888 18999 26775 +22816 22960 22887 22889 19000 26776 +22817 22961 22888 22890 19001 26777 +22818 22962 22889 22891 19002 26778 +22819 22963 22890 22892 19003 26779 +22820 22964 22891 22893 19004 26780 +22821 22965 22892 22894 19005 26781 +22822 22966 22893 22895 19006 26782 +22823 22967 22894 22896 19007 26783 +22824 22968 22895 22897 19008 26784 +22825 22969 22896 22898 19009 26785 +22826 22970 22897 22899 19010 26786 +22827 22971 22898 22900 19011 26787 +22828 22972 22899 22901 19012 26788 +22829 22973 22900 22902 19013 26789 +22830 22974 22901 22903 19014 26790 +22831 22975 22902 22904 19015 26791 +22832 22976 22903 22905 19016 26792 +22833 22977 22904 22906 19017 26793 +22834 22978 22905 22907 19018 26794 +22835 22979 22906 22908 19019 26795 +22836 22980 22907 22909 19020 26796 +22837 22981 22908 22910 19021 26797 +22838 22982 22909 22911 19022 26798 +22839 22983 22910 22911 19023 26799 +22840 22984 22912 22913 19024 26800 +22841 22985 22912 22914 19025 26801 +22842 22986 22913 22915 19026 26802 +22843 22987 22914 22916 19027 26803 +22844 22988 22915 22917 19028 26804 +22845 22989 22916 22918 19029 26805 +22846 22990 22917 22919 19030 26806 +22847 22991 22918 22920 19031 26807 +22848 22992 22919 22921 19032 26808 +22849 22993 22920 22922 19033 26809 +22850 22994 22921 22923 19034 26810 +22851 22995 22922 22924 19035 26811 +22852 22996 22923 22925 19036 26812 +22853 22997 22924 22926 19037 26813 +22854 22998 22925 22927 19038 26814 +22855 22999 22926 22928 19039 26815 +22856 23000 22927 22929 19040 26816 +22857 23001 22928 22930 19041 26817 +22858 23002 22929 22931 19042 26818 +22859 23003 22930 22932 19043 26819 +22860 23004 22931 22933 19044 26820 +22861 23005 22932 22934 19045 26821 +22862 23006 22933 22935 19046 26822 +22863 23007 22934 22936 19047 26823 +22864 23008 22935 22937 19048 26824 +22865 23009 22936 22938 19049 26825 +22866 23010 22937 22939 19050 26826 +22867 23011 22938 22940 19051 26827 +22868 23012 22939 22941 19052 26828 +22869 23013 22940 22942 19053 26829 +22870 23014 22941 22943 19054 26830 +22871 23015 22942 22944 19055 26831 +22872 23016 22943 22945 19056 26832 +22873 23017 22944 22946 19057 26833 +22874 23018 22945 22947 19058 26834 +22875 23019 22946 22948 19059 26835 +22876 23020 22947 22949 19060 26836 +22877 23021 22948 22950 19061 26837 +22878 23022 22949 22951 19062 26838 +22879 23023 22950 22952 19063 26839 +22880 23024 22951 22953 19064 26840 +22881 23025 22952 22954 19065 26841 +22882 23026 22953 22955 19066 26842 +22883 23027 22954 22956 19067 26843 +22884 23028 22955 22957 19068 26844 +22885 23029 22956 22958 19069 26845 +22886 23030 22957 22959 19070 26846 +22887 23031 22958 22960 19071 26847 +22888 23032 22959 22961 19072 26848 +22889 23033 22960 22962 19073 26849 +22890 23034 22961 22963 19074 26850 +22891 23035 22962 22964 19075 26851 +22892 23036 22963 22965 19076 26852 +22893 23037 22964 22966 19077 26853 +22894 23038 22965 22967 19078 26854 +22895 23039 22966 22968 19079 26855 +22896 23040 22967 22969 19080 26856 +22897 23041 22968 22970 19081 26857 +22898 23042 22969 22971 19082 26858 +22899 23043 22970 22972 19083 26859 +22900 23044 22971 22973 19084 26860 +22901 23045 22972 22974 19085 26861 +22902 23046 22973 22975 19086 26862 +22903 23047 22974 22976 19087 26863 +22904 23048 22975 22977 19088 26864 +22905 23049 22976 22978 19089 26865 +22906 23050 22977 22979 19090 26866 +22907 23051 22978 22980 19091 26867 +22908 23052 22979 22981 19092 26868 +22909 23053 22980 22982 19093 26869 +22910 23054 22981 22983 19094 26870 +22911 23055 22982 22983 19095 26871 +22912 23056 22984 22985 19096 26872 +22913 23057 22984 22986 19097 26873 +22914 23058 22985 22987 19098 26874 +22915 23059 22986 22988 19099 26875 +22916 23060 22987 22989 19100 26876 +22917 23061 22988 22990 19101 26877 +22918 23062 22989 22991 19102 26878 +22919 23063 22990 22992 19103 26879 +22920 23064 22991 22993 19104 26880 +22921 23065 22992 22994 19105 26881 +22922 23066 22993 22995 19106 26882 +22923 23067 22994 22996 19107 26883 +22924 23068 22995 22997 19108 26884 +22925 23069 22996 22998 19109 26885 +22926 23070 22997 22999 19110 26886 +22927 23071 22998 23000 19111 26887 +22928 23072 22999 23001 19112 26888 +22929 23073 23000 23002 19113 26889 +22930 23074 23001 23003 19114 26890 +22931 23075 23002 23004 19115 26891 +22932 23076 23003 23005 19116 26892 +22933 23077 23004 23006 19117 26893 +22934 23078 23005 23007 19118 26894 +22935 23079 23006 23008 19119 26895 +22936 23080 23007 23009 19120 26896 +22937 23081 23008 23010 19121 26897 +22938 23082 23009 23011 19122 26898 +22939 23083 23010 23012 19123 26899 +22940 23084 23011 23013 19124 26900 +22941 23085 23012 23014 19125 26901 +22942 23086 23013 23015 19126 26902 +22943 23087 23014 23016 19127 26903 +22944 23088 23015 23017 19128 26904 +22945 23089 23016 23018 19129 26905 +22946 23090 23017 23019 19130 26906 +22947 23091 23018 23020 19131 26907 +22948 23092 23019 23021 19132 26908 +22949 23093 23020 23022 19133 26909 +22950 23094 23021 23023 19134 26910 +22951 23095 23022 23024 19135 26911 +22952 23096 23023 23025 19136 26912 +22953 23097 23024 23026 19137 26913 +22954 23098 23025 23027 19138 26914 +22955 23099 23026 23028 19139 26915 +22956 23100 23027 23029 19140 26916 +22957 23101 23028 23030 19141 26917 +22958 23102 23029 23031 19142 26918 +22959 23103 23030 23032 19143 26919 +22960 23104 23031 23033 19144 26920 +22961 23105 23032 23034 19145 26921 +22962 23106 23033 23035 19146 26922 +22963 23107 23034 23036 19147 26923 +22964 23108 23035 23037 19148 26924 +22965 23109 23036 23038 19149 26925 +22966 23110 23037 23039 19150 26926 +22967 23111 23038 23040 19151 26927 +22968 23112 23039 23041 19152 26928 +22969 23113 23040 23042 19153 26929 +22970 23114 23041 23043 19154 26930 +22971 23115 23042 23044 19155 26931 +22972 23116 23043 23045 19156 26932 +22973 23117 23044 23046 19157 26933 +22974 23118 23045 23047 19158 26934 +22975 23119 23046 23048 19159 26935 +22976 23120 23047 23049 19160 26936 +22977 23121 23048 23050 19161 26937 +22978 23122 23049 23051 19162 26938 +22979 23123 23050 23052 19163 26939 +22980 23124 23051 23053 19164 26940 +22981 23125 23052 23054 19165 26941 +22982 23126 23053 23055 19166 26942 +22983 23127 23054 23055 19167 26943 +22984 23128 23056 23057 19168 26944 +22985 23129 23056 23058 19169 26945 +22986 23130 23057 23059 19170 26946 +22987 23131 23058 23060 19171 26947 +22988 23132 23059 23061 19172 26948 +22989 23133 23060 23062 19173 26949 +22990 23134 23061 23063 19174 26950 +22991 23135 23062 23064 19175 26951 +22992 23136 23063 23065 19176 26952 +22993 23137 23064 23066 19177 26953 +22994 23138 23065 23067 19178 26954 +22995 23139 23066 23068 19179 26955 +22996 23140 23067 23069 19180 26956 +22997 23141 23068 23070 19181 26957 +22998 23142 23069 23071 19182 26958 +22999 23143 23070 23072 19183 26959 +23000 23144 23071 23073 19184 26960 +23001 23145 23072 23074 19185 26961 +23002 23146 23073 23075 19186 26962 +23003 23147 23074 23076 19187 26963 +23004 23148 23075 23077 19188 26964 +23005 23149 23076 23078 19189 26965 +23006 23150 23077 23079 19190 26966 +23007 23151 23078 23080 19191 26967 +23008 23152 23079 23081 19192 26968 +23009 23153 23080 23082 19193 26969 +23010 23154 23081 23083 19194 26970 +23011 23155 23082 23084 19195 26971 +23012 23156 23083 23085 19196 26972 +23013 23157 23084 23086 19197 26973 +23014 23158 23085 23087 19198 26974 +23015 23159 23086 23088 19199 26975 +23016 23160 23087 23089 19200 26976 +23017 23161 23088 23090 19201 26977 +23018 23162 23089 23091 19202 26978 +23019 23163 23090 23092 19203 26979 +23020 23164 23091 23093 19204 26980 +23021 23165 23092 23094 19205 26981 +23022 23166 23093 23095 19206 26982 +23023 23167 23094 23096 19207 26983 +23024 23168 23095 23097 19208 26984 +23025 23169 23096 23098 19209 26985 +23026 23170 23097 23099 19210 26986 +23027 23171 23098 23100 19211 26987 +23028 23172 23099 23101 19212 26988 +23029 23173 23100 23102 19213 26989 +23030 23174 23101 23103 19214 26990 +23031 23175 23102 23104 19215 26991 +23032 23176 23103 23105 19216 26992 +23033 23177 23104 23106 19217 26993 +23034 23178 23105 23107 19218 26994 +23035 23179 23106 23108 19219 26995 +23036 23180 23107 23109 19220 26996 +23037 23181 23108 23110 19221 26997 +23038 23182 23109 23111 19222 26998 +23039 23183 23110 23112 19223 26999 +23040 23184 23111 23113 19224 27000 +23041 23185 23112 23114 19225 27001 +23042 23186 23113 23115 19226 27002 +23043 23187 23114 23116 19227 27003 +23044 23188 23115 23117 19228 27004 +23045 23189 23116 23118 19229 27005 +23046 23190 23117 23119 19230 27006 +23047 23191 23118 23120 19231 27007 +23048 23192 23119 23121 19232 27008 +23049 23193 23120 23122 19233 27009 +23050 23194 23121 23123 19234 27010 +23051 23195 23122 23124 19235 27011 +23052 23196 23123 23125 19236 27012 +23053 23197 23124 23126 19237 27013 +23054 23198 23125 23127 19238 27014 +23055 23199 23126 23127 19239 27015 +23056 23200 23128 23129 19240 27016 +23057 23201 23128 23130 19241 27017 +23058 23202 23129 23131 19242 27018 +23059 23203 23130 23132 19243 27019 +23060 23204 23131 23133 19244 27020 +23061 23205 23132 23134 19245 27021 +23062 23206 23133 23135 19246 27022 +23063 23207 23134 23136 19247 27023 +23064 23208 23135 23137 19248 27024 +23065 23209 23136 23138 19249 27025 +23066 23210 23137 23139 19250 27026 +23067 23211 23138 23140 19251 27027 +23068 23212 23139 23141 19252 27028 +23069 23213 23140 23142 19253 27029 +23070 23214 23141 23143 19254 27030 +23071 23215 23142 23144 19255 27031 +23072 23216 23143 23145 19256 27032 +23073 23217 23144 23146 19257 27033 +23074 23218 23145 23147 19258 27034 +23075 23219 23146 23148 19259 27035 +23076 23220 23147 23149 19260 27036 +23077 23221 23148 23150 19261 27037 +23078 23222 23149 23151 19262 27038 +23079 23223 23150 23152 19263 27039 +23080 23224 23151 23153 19264 27040 +23081 23225 23152 23154 19265 27041 +23082 23226 23153 23155 19266 27042 +23083 23227 23154 23156 19267 27043 +23084 23228 23155 23157 19268 27044 +23085 23229 23156 23158 19269 27045 +23086 23230 23157 23159 19270 27046 +23087 23231 23158 23160 19271 27047 +23088 23232 23159 23161 19272 27048 +23089 23233 23160 23162 19273 27049 +23090 23234 23161 23163 19274 27050 +23091 23235 23162 23164 19275 27051 +23092 23236 23163 23165 19276 27052 +23093 23237 23164 23166 19277 27053 +23094 23238 23165 23167 19278 27054 +23095 23239 23166 23168 19279 27055 +23096 23240 23167 23169 19280 27056 +23097 23241 23168 23170 19281 27057 +23098 23242 23169 23171 19282 27058 +23099 23243 23170 23172 19283 27059 +23100 23244 23171 23173 19284 27060 +23101 23245 23172 23174 19285 27061 +23102 23246 23173 23175 19286 27062 +23103 23247 23174 23176 19287 27063 +23104 23248 23175 23177 19288 27064 +23105 23249 23176 23178 19289 27065 +23106 23250 23177 23179 19290 27066 +23107 23251 23178 23180 19291 27067 +23108 23252 23179 23181 19292 27068 +23109 23253 23180 23182 19293 27069 +23110 23254 23181 23183 19294 27070 +23111 23255 23182 23184 19295 27071 +23112 23256 23183 23185 19296 27072 +23113 23257 23184 23186 19297 27073 +23114 23258 23185 23187 19298 27074 +23115 23259 23186 23188 19299 27075 +23116 23260 23187 23189 19300 27076 +23117 23261 23188 23190 19301 27077 +23118 23262 23189 23191 19302 27078 +23119 23263 23190 23192 19303 27079 +23120 23264 23191 23193 19304 27080 +23121 23265 23192 23194 19305 27081 +23122 23266 23193 23195 19306 27082 +23123 23267 23194 23196 19307 27083 +23124 23268 23195 23197 19308 27084 +23125 23269 23196 23198 19309 27085 +23126 23270 23197 23199 19310 27086 +23127 23271 23198 23199 19311 27087 +23128 23272 23200 23201 19312 27088 +23129 23273 23200 23202 19313 27089 +23130 23274 23201 23203 19314 27090 +23131 23275 23202 23204 19315 27091 +23132 23276 23203 23205 19316 27092 +23133 23277 23204 23206 19317 27093 +23134 23278 23205 23207 19318 27094 +23135 23279 23206 23208 19319 27095 +23136 23280 23207 23209 19320 27096 +23137 23281 23208 23210 19321 27097 +23138 23282 23209 23211 19322 27098 +23139 23283 23210 23212 19323 27099 +23140 23284 23211 23213 19324 27100 +23141 23285 23212 23214 19325 27101 +23142 23286 23213 23215 19326 27102 +23143 23287 23214 23216 19327 27103 +23144 23288 23215 23217 19328 27104 +23145 23289 23216 23218 19329 27105 +23146 23290 23217 23219 19330 27106 +23147 23291 23218 23220 19331 27107 +23148 23292 23219 23221 19332 27108 +23149 23293 23220 23222 19333 27109 +23150 23294 23221 23223 19334 27110 +23151 23295 23222 23224 19335 27111 +23152 23296 23223 23225 19336 27112 +23153 23297 23224 23226 19337 27113 +23154 23298 23225 23227 19338 27114 +23155 23299 23226 23228 19339 27115 +23156 23300 23227 23229 19340 27116 +23157 23301 23228 23230 19341 27117 +23158 23302 23229 23231 19342 27118 +23159 23303 23230 23232 19343 27119 +23160 23304 23231 23233 19344 27120 +23161 23305 23232 23234 19345 27121 +23162 23306 23233 23235 19346 27122 +23163 23307 23234 23236 19347 27123 +23164 23308 23235 23237 19348 27124 +23165 23309 23236 23238 19349 27125 +23166 23310 23237 23239 19350 27126 +23167 23311 23238 23240 19351 27127 +23168 23312 23239 23241 19352 27128 +23169 23313 23240 23242 19353 27129 +23170 23314 23241 23243 19354 27130 +23171 23315 23242 23244 19355 27131 +23172 23316 23243 23245 19356 27132 +23173 23317 23244 23246 19357 27133 +23174 23318 23245 23247 19358 27134 +23175 23319 23246 23248 19359 27135 +23176 23320 23247 23249 19360 27136 +23177 23321 23248 23250 19361 27137 +23178 23322 23249 23251 19362 27138 +23179 23323 23250 23252 19363 27139 +23180 23324 23251 23253 19364 27140 +23181 23325 23252 23254 19365 27141 +23182 23326 23253 23255 19366 27142 +23183 23327 23254 23256 19367 27143 +23184 23328 23255 23257 19368 27144 +23185 23329 23256 23258 19369 27145 +23186 23330 23257 23259 19370 27146 +23187 23331 23258 23260 19371 27147 +23188 23332 23259 23261 19372 27148 +23189 23333 23260 23262 19373 27149 +23190 23334 23261 23263 19374 27150 +23191 23335 23262 23264 19375 27151 +23192 23336 23263 23265 19376 27152 +23193 23337 23264 23266 19377 27153 +23194 23338 23265 23267 19378 27154 +23195 23339 23266 23268 19379 27155 +23196 23340 23267 23269 19380 27156 +23197 23341 23268 23270 19381 27157 +23198 23342 23269 23271 19382 27158 +23199 23343 23270 23271 19383 27159 +23200 23344 23272 23273 19384 27160 +23201 23345 23272 23274 19385 27161 +23202 23346 23273 23275 19386 27162 +23203 23347 23274 23276 19387 27163 +23204 23348 23275 23277 19388 27164 +23205 23349 23276 23278 19389 27165 +23206 23350 23277 23279 19390 27166 +23207 23351 23278 23280 19391 27167 +23208 23352 23279 23281 19392 27168 +23209 23353 23280 23282 19393 27169 +23210 23354 23281 23283 19394 27170 +23211 23355 23282 23284 19395 27171 +23212 23356 23283 23285 19396 27172 +23213 23357 23284 23286 19397 27173 +23214 23358 23285 23287 19398 27174 +23215 23359 23286 23288 19399 27175 +23216 23360 23287 23289 19400 27176 +23217 23361 23288 23290 19401 27177 +23218 23362 23289 23291 19402 27178 +23219 23363 23290 23292 19403 27179 +23220 23364 23291 23293 19404 27180 +23221 23365 23292 23294 19405 27181 +23222 23366 23293 23295 19406 27182 +23223 23367 23294 23296 19407 27183 +23224 23368 23295 23297 19408 27184 +23225 23369 23296 23298 19409 27185 +23226 23370 23297 23299 19410 27186 +23227 23371 23298 23300 19411 27187 +23228 23372 23299 23301 19412 27188 +23229 23373 23300 23302 19413 27189 +23230 23374 23301 23303 19414 27190 +23231 23375 23302 23304 19415 27191 +23232 23376 23303 23305 19416 27192 +23233 23377 23304 23306 19417 27193 +23234 23378 23305 23307 19418 27194 +23235 23379 23306 23308 19419 27195 +23236 23380 23307 23309 19420 27196 +23237 23381 23308 23310 19421 27197 +23238 23382 23309 23311 19422 27198 +23239 23383 23310 23312 19423 27199 +23240 23384 23311 23313 19424 27200 +23241 23385 23312 23314 19425 27201 +23242 23386 23313 23315 19426 27202 +23243 23387 23314 23316 19427 27203 +23244 23388 23315 23317 19428 27204 +23245 23389 23316 23318 19429 27205 +23246 23390 23317 23319 19430 27206 +23247 23391 23318 23320 19431 27207 +23248 23392 23319 23321 19432 27208 +23249 23393 23320 23322 19433 27209 +23250 23394 23321 23323 19434 27210 +23251 23395 23322 23324 19435 27211 +23252 23396 23323 23325 19436 27212 +23253 23397 23324 23326 19437 27213 +23254 23398 23325 23327 19438 27214 +23255 23399 23326 23328 19439 27215 +23256 23400 23327 23329 19440 27216 +23257 23401 23328 23330 19441 27217 +23258 23402 23329 23331 19442 27218 +23259 23403 23330 23332 19443 27219 +23260 23404 23331 23333 19444 27220 +23261 23405 23332 23334 19445 27221 +23262 23406 23333 23335 19446 27222 +23263 23407 23334 23336 19447 27223 +23264 23408 23335 23337 19448 27224 +23265 23409 23336 23338 19449 27225 +23266 23410 23337 23339 19450 27226 +23267 23411 23338 23340 19451 27227 +23268 23412 23339 23341 19452 27228 +23269 23413 23340 23342 19453 27229 +23270 23414 23341 23343 19454 27230 +23271 23415 23342 23343 19455 27231 +23272 23416 23344 23345 19456 27232 +23273 23417 23344 23346 19457 27233 +23274 23418 23345 23347 19458 27234 +23275 23419 23346 23348 19459 27235 +23276 23420 23347 23349 19460 27236 +23277 23421 23348 23350 19461 27237 +23278 23422 23349 23351 19462 27238 +23279 23423 23350 23352 19463 27239 +23280 23424 23351 23353 19464 27240 +23281 23425 23352 23354 19465 27241 +23282 23426 23353 23355 19466 27242 +23283 23427 23354 23356 19467 27243 +23284 23428 23355 23357 19468 27244 +23285 23429 23356 23358 19469 27245 +23286 23430 23357 23359 19470 27246 +23287 23431 23358 23360 19471 27247 +23288 23432 23359 23361 19472 27248 +23289 23433 23360 23362 19473 27249 +23290 23434 23361 23363 19474 27250 +23291 23435 23362 23364 19475 27251 +23292 23436 23363 23365 19476 27252 +23293 23437 23364 23366 19477 27253 +23294 23438 23365 23367 19478 27254 +23295 23439 23366 23368 19479 27255 +23296 23440 23367 23369 19480 27256 +23297 23441 23368 23370 19481 27257 +23298 23442 23369 23371 19482 27258 +23299 23443 23370 23372 19483 27259 +23300 23444 23371 23373 19484 27260 +23301 23445 23372 23374 19485 27261 +23302 23446 23373 23375 19486 27262 +23303 23447 23374 23376 19487 27263 +23304 23448 23375 23377 19488 27264 +23305 23449 23376 23378 19489 27265 +23306 23450 23377 23379 19490 27266 +23307 23451 23378 23380 19491 27267 +23308 23452 23379 23381 19492 27268 +23309 23453 23380 23382 19493 27269 +23310 23454 23381 23383 19494 27270 +23311 23455 23382 23384 19495 27271 +23312 23456 23383 23385 19496 27272 +23313 23457 23384 23386 19497 27273 +23314 23458 23385 23387 19498 27274 +23315 23459 23386 23388 19499 27275 +23316 23460 23387 23389 19500 27276 +23317 23461 23388 23390 19501 27277 +23318 23462 23389 23391 19502 27278 +23319 23463 23390 23392 19503 27279 +23320 23464 23391 23393 19504 27280 +23321 23465 23392 23394 19505 27281 +23322 23466 23393 23395 19506 27282 +23323 23467 23394 23396 19507 27283 +23324 23468 23395 23397 19508 27284 +23325 23469 23396 23398 19509 27285 +23326 23470 23397 23399 19510 27286 +23327 23471 23398 23400 19511 27287 +23328 23472 23399 23401 19512 27288 +23329 23473 23400 23402 19513 27289 +23330 23474 23401 23403 19514 27290 +23331 23475 23402 23404 19515 27291 +23332 23476 23403 23405 19516 27292 +23333 23477 23404 23406 19517 27293 +23334 23478 23405 23407 19518 27294 +23335 23479 23406 23408 19519 27295 +23336 23480 23407 23409 19520 27296 +23337 23481 23408 23410 19521 27297 +23338 23482 23409 23411 19522 27298 +23339 23483 23410 23412 19523 27299 +23340 23484 23411 23413 19524 27300 +23341 23485 23412 23414 19525 27301 +23342 23486 23413 23415 19526 27302 +23343 23487 23414 23415 19527 27303 +23344 23488 23416 23417 19528 27304 +23345 23489 23416 23418 19529 27305 +23346 23490 23417 23419 19530 27306 +23347 23491 23418 23420 19531 27307 +23348 23492 23419 23421 19532 27308 +23349 23493 23420 23422 19533 27309 +23350 23494 23421 23423 19534 27310 +23351 23495 23422 23424 19535 27311 +23352 23496 23423 23425 19536 27312 +23353 23497 23424 23426 19537 27313 +23354 23498 23425 23427 19538 27314 +23355 23499 23426 23428 19539 27315 +23356 23500 23427 23429 19540 27316 +23357 23501 23428 23430 19541 27317 +23358 23502 23429 23431 19542 27318 +23359 23503 23430 23432 19543 27319 +23360 23504 23431 23433 19544 27320 +23361 23505 23432 23434 19545 27321 +23362 23506 23433 23435 19546 27322 +23363 23507 23434 23436 19547 27323 +23364 23508 23435 23437 19548 27324 +23365 23509 23436 23438 19549 27325 +23366 23510 23437 23439 19550 27326 +23367 23511 23438 23440 19551 27327 +23368 23512 23439 23441 19552 27328 +23369 23513 23440 23442 19553 27329 +23370 23514 23441 23443 19554 27330 +23371 23515 23442 23444 19555 27331 +23372 23516 23443 23445 19556 27332 +23373 23517 23444 23446 19557 27333 +23374 23518 23445 23447 19558 27334 +23375 23519 23446 23448 19559 27335 +23376 23520 23447 23449 19560 27336 +23377 23521 23448 23450 19561 27337 +23378 23522 23449 23451 19562 27338 +23379 23523 23450 23452 19563 27339 +23380 23524 23451 23453 19564 27340 +23381 23525 23452 23454 19565 27341 +23382 23526 23453 23455 19566 27342 +23383 23527 23454 23456 19567 27343 +23384 23528 23455 23457 19568 27344 +23385 23529 23456 23458 19569 27345 +23386 23530 23457 23459 19570 27346 +23387 23531 23458 23460 19571 27347 +23388 23532 23459 23461 19572 27348 +23389 23533 23460 23462 19573 27349 +23390 23534 23461 23463 19574 27350 +23391 23535 23462 23464 19575 27351 +23392 23536 23463 23465 19576 27352 +23393 23537 23464 23466 19577 27353 +23394 23538 23465 23467 19578 27354 +23395 23539 23466 23468 19579 27355 +23396 23540 23467 23469 19580 27356 +23397 23541 23468 23470 19581 27357 +23398 23542 23469 23471 19582 27358 +23399 23543 23470 23472 19583 27359 +23400 23544 23471 23473 19584 27360 +23401 23545 23472 23474 19585 27361 +23402 23546 23473 23475 19586 27362 +23403 23547 23474 23476 19587 27363 +23404 23548 23475 23477 19588 27364 +23405 23549 23476 23478 19589 27365 +23406 23550 23477 23479 19590 27366 +23407 23551 23478 23480 19591 27367 +23408 23552 23479 23481 19592 27368 +23409 23553 23480 23482 19593 27369 +23410 23554 23481 23483 19594 27370 +23411 23555 23482 23484 19595 27371 +23412 23556 23483 23485 19596 27372 +23413 23557 23484 23486 19597 27373 +23414 23558 23485 23487 19598 27374 +23415 23559 23486 23487 19599 27375 +23416 23560 23488 23489 19600 27376 +23417 23561 23488 23490 19601 27377 +23418 23562 23489 23491 19602 27378 +23419 23563 23490 23492 19603 27379 +23420 23564 23491 23493 19604 27380 +23421 23565 23492 23494 19605 27381 +23422 23566 23493 23495 19606 27382 +23423 23567 23494 23496 19607 27383 +23424 23568 23495 23497 19608 27384 +23425 23569 23496 23498 19609 27385 +23426 23570 23497 23499 19610 27386 +23427 23571 23498 23500 19611 27387 +23428 23572 23499 23501 19612 27388 +23429 23573 23500 23502 19613 27389 +23430 23574 23501 23503 19614 27390 +23431 23575 23502 23504 19615 27391 +23432 23576 23503 23505 19616 27392 +23433 23577 23504 23506 19617 27393 +23434 23578 23505 23507 19618 27394 +23435 23579 23506 23508 19619 27395 +23436 23580 23507 23509 19620 27396 +23437 23581 23508 23510 19621 27397 +23438 23582 23509 23511 19622 27398 +23439 23583 23510 23512 19623 27399 +23440 23584 23511 23513 19624 27400 +23441 23585 23512 23514 19625 27401 +23442 23586 23513 23515 19626 27402 +23443 23587 23514 23516 19627 27403 +23444 23588 23515 23517 19628 27404 +23445 23589 23516 23518 19629 27405 +23446 23590 23517 23519 19630 27406 +23447 23591 23518 23520 19631 27407 +23448 23592 23519 23521 19632 27408 +23449 23593 23520 23522 19633 27409 +23450 23594 23521 23523 19634 27410 +23451 23595 23522 23524 19635 27411 +23452 23596 23523 23525 19636 27412 +23453 23597 23524 23526 19637 27413 +23454 23598 23525 23527 19638 27414 +23455 23599 23526 23528 19639 27415 +23456 23600 23527 23529 19640 27416 +23457 23601 23528 23530 19641 27417 +23458 23602 23529 23531 19642 27418 +23459 23603 23530 23532 19643 27419 +23460 23604 23531 23533 19644 27420 +23461 23605 23532 23534 19645 27421 +23462 23606 23533 23535 19646 27422 +23463 23607 23534 23536 19647 27423 +23464 23608 23535 23537 19648 27424 +23465 23609 23536 23538 19649 27425 +23466 23610 23537 23539 19650 27426 +23467 23611 23538 23540 19651 27427 +23468 23612 23539 23541 19652 27428 +23469 23613 23540 23542 19653 27429 +23470 23614 23541 23543 19654 27430 +23471 23615 23542 23544 19655 27431 +23472 23616 23543 23545 19656 27432 +23473 23617 23544 23546 19657 27433 +23474 23618 23545 23547 19658 27434 +23475 23619 23546 23548 19659 27435 +23476 23620 23547 23549 19660 27436 +23477 23621 23548 23550 19661 27437 +23478 23622 23549 23551 19662 27438 +23479 23623 23550 23552 19663 27439 +23480 23624 23551 23553 19664 27440 +23481 23625 23552 23554 19665 27441 +23482 23626 23553 23555 19666 27442 +23483 23627 23554 23556 19667 27443 +23484 23628 23555 23557 19668 27444 +23485 23629 23556 23558 19669 27445 +23486 23630 23557 23559 19670 27446 +23487 23631 23558 23559 19671 27447 +23488 23560 23560 23561 19672 27448 +23489 23561 23560 23562 19673 27449 +23490 23562 23561 23563 19674 27450 +23491 23563 23562 23564 19675 27451 +23492 23564 23563 23565 19676 27452 +23493 23565 23564 23566 19677 27453 +23494 23566 23565 23567 19678 27454 +23495 23567 23566 23568 19679 27455 +23496 23568 23567 23569 19680 27456 +23497 23569 23568 23570 19681 27457 +23498 23570 23569 23571 19682 27458 +23499 23571 23570 23572 19683 27459 +23500 23572 23571 23573 19684 27460 +23501 23573 23572 23574 19685 27461 +23502 23574 23573 23575 19686 27462 +23503 23575 23574 23576 19687 27463 +23504 23576 23575 23577 19688 27464 +23505 23577 23576 23578 19689 27465 +23506 23578 23577 23579 19690 27466 +23507 23579 23578 23580 19691 27467 +23508 23580 23579 23581 19692 27468 +23509 23581 23580 23582 19693 27469 +23510 23582 23581 23583 19694 27470 +23511 23583 23582 23584 19695 27471 +23512 23584 23583 23585 19696 27472 +23513 23585 23584 23586 19697 27473 +23514 23586 23585 23587 19698 27474 +23515 23587 23586 23588 19699 27475 +23516 23588 23587 23589 19700 27476 +23517 23589 23588 23590 19701 27477 +23518 23590 23589 23591 19702 27478 +23519 23591 23590 23592 19703 27479 +23520 23592 23591 23593 19704 27480 +23521 23593 23592 23594 19705 27481 +23522 23594 23593 23595 19706 27482 +23523 23595 23594 23596 19707 27483 +23524 23596 23595 23597 19708 27484 +23525 23597 23596 23598 19709 27485 +23526 23598 23597 23599 19710 27486 +23527 23599 23598 23600 19711 27487 +23528 23600 23599 23601 19712 27488 +23529 23601 23600 23602 19713 27489 +23530 23602 23601 23603 19714 27490 +23531 23603 23602 23604 19715 27491 +23532 23604 23603 23605 19716 27492 +23533 23605 23604 23606 19717 27493 +23534 23606 23605 23607 19718 27494 +23535 23607 23606 23608 19719 27495 +23536 23608 23607 23609 19720 27496 +23537 23609 23608 23610 19721 27497 +23538 23610 23609 23611 19722 27498 +23539 23611 23610 23612 19723 27499 +23540 23612 23611 23613 19724 27500 +23541 23613 23612 23614 19725 27501 +23542 23614 23613 23615 19726 27502 +23543 23615 23614 23616 19727 27503 +23544 23616 23615 23617 19728 27504 +23545 23617 23616 23618 19729 27505 +23546 23618 23617 23619 19730 27506 +23547 23619 23618 23620 19731 27507 +23548 23620 23619 23621 19732 27508 +23549 23621 23620 23622 19733 27509 +23550 23622 23621 23623 19734 27510 +23551 23623 23622 23624 19735 27511 +23552 23624 23623 23625 19736 27512 +23553 23625 23624 23626 19737 27513 +23554 23626 23625 23627 19738 27514 +23555 23627 23626 23628 19739 27515 +23556 23628 23627 23629 19740 27516 +23557 23629 23628 23630 19741 27517 +23558 23630 23629 23631 19742 27518 +23559 23631 23630 23631 19743 27519 +23632 23633 23632 23635 19744 27520 +23632 23636 23633 23634 19745 27521 +23635 23637 23633 23639 19746 27522 +23632 23640 23634 23635 19747 27523 +23633 23641 23636 23637 19748 27524 +23634 23642 23636 23638 19749 27525 +23639 23643 23637 23645 19750 27526 +23634 23646 23638 23640 19751 27527 +23635 23647 23639 23640 19752 27528 +23636 23648 23641 23642 19753 27529 +23637 23649 23641 23643 19754 27530 +23638 23650 23642 23644 19755 27531 +23645 23651 23643 23653 19756 27532 +23638 23654 23644 23646 19757 27533 +23639 23655 23645 23647 19758 27534 +23640 23656 23646 23647 19759 27535 +23641 23657 23648 23649 19760 27536 +23642 23658 23648 23650 19761 27537 +23643 23659 23649 23651 19762 27538 +23644 23660 23650 23652 19763 27539 +23653 23661 23651 23663 19764 27540 +23644 23664 23652 23654 19765 27541 +23645 23665 23653 23655 19766 27542 +23646 23666 23654 23656 19767 27543 +23647 23667 23655 23656 19768 27544 +23648 23668 23657 23658 19769 27545 +23649 23669 23657 23659 19770 27546 +23650 23670 23658 23660 19771 27547 +23651 23671 23659 23661 19772 27548 +23652 23672 23660 23662 19773 27549 +23663 23673 23661 23675 19774 27550 +23652 23676 23662 23664 19775 27551 +23653 23677 23663 23665 19776 27552 +23654 23678 23664 23666 19777 27553 +23655 23679 23665 23667 19778 27554 +23656 23680 23666 23667 19779 27555 +23657 23681 23668 23669 19780 27556 +23658 23682 23668 23670 19781 27557 +23659 23683 23669 23671 19782 27558 +23660 23684 23670 23672 19783 27559 +23661 23685 23671 23673 19784 27560 +23662 23686 23672 23674 19785 27561 +23675 23687 23673 23689 19786 27562 +23662 23690 23674 23676 19787 27563 +23663 23691 23675 23677 19788 27564 +23664 23692 23676 23678 19789 27565 +23665 23693 23677 23679 19790 27566 +23666 23694 23678 23680 19791 27567 +23667 23695 23679 23680 19792 27568 +23668 23696 23681 23682 19793 27569 +23669 23697 23681 23683 19794 27570 +23670 23698 23682 23684 19795 27571 +23671 23699 23683 23685 19796 27572 +23672 23700 23684 23686 19797 27573 +23673 23701 23685 23687 19798 27574 +23674 23702 23686 23688 19799 27575 +23689 23703 23687 23705 19800 27576 +23674 23706 23688 23690 19801 27577 +23675 23707 23689 23691 19802 27578 +23676 23708 23690 23692 19803 27579 +23677 23709 23691 23693 19804 27580 +23678 23710 23692 23694 19805 27581 +23679 23711 23693 23695 19806 27582 +23680 23712 23694 23695 19807 27583 +23681 23713 23696 23697 19808 27584 +23682 23714 23696 23698 19809 27585 +23683 23715 23697 23699 19810 27586 +23684 23716 23698 23700 19811 27587 +23685 23717 23699 23701 19812 27588 +23686 23718 23700 23702 19813 27589 +23687 23719 23701 23703 19814 27590 +23688 23720 23702 23704 19815 27591 +23705 23721 23703 23723 19816 27592 +23688 23724 23704 23706 19817 27593 +23689 23725 23705 23707 19818 27594 +23690 23726 23706 23708 19819 27595 +23691 23727 23707 23709 19820 27596 +23692 23728 23708 23710 19821 27597 +23693 23729 23709 23711 19822 27598 +23694 23730 23710 23712 19823 27599 +23695 23731 23711 23712 19824 27600 +23696 23732 23713 23714 19825 27601 +23697 23733 23713 23715 19826 27602 +23698 23734 23714 23716 19827 27603 +23699 23735 23715 23717 19828 27604 +23700 23736 23716 23718 19829 27605 +23701 23737 23717 23719 19830 27606 +23702 23738 23718 23720 19831 27607 +23703 23739 23719 23721 19832 27608 +23704 23740 23720 23722 19833 27609 +23723 23741 23721 23743 19834 27610 +23704 23744 23722 23724 19835 27611 +23705 23745 23723 23725 19836 27612 +23706 23746 23724 23726 19837 27613 +23707 23747 23725 23727 19838 27614 +23708 23748 23726 23728 19839 27615 +23709 23749 23727 23729 19840 27616 +23710 23750 23728 23730 19841 27617 +23711 23751 23729 23731 19842 27618 +23712 23752 23730 23731 19843 27619 +23713 23753 23732 23733 19844 27620 +23714 23754 23732 23734 19845 27621 +23715 23755 23733 23735 19846 27622 +23716 23756 23734 23736 19847 27623 +23717 23757 23735 23737 19848 27624 +23718 23758 23736 23738 19849 27625 +23719 23759 23737 23739 19850 27626 +23720 23760 23738 23740 19851 27627 +23721 23761 23739 23741 19852 27628 +23722 23762 23740 23742 19853 27629 +23743 23763 23741 23765 19854 27630 +23722 23766 23742 23744 19855 27631 +23723 23767 23743 23745 19856 27632 +23724 23768 23744 23746 19857 27633 +23725 23769 23745 23747 19858 27634 +23726 23770 23746 23748 19859 27635 +23727 23771 23747 23749 19860 27636 +23728 23772 23748 23750 19861 27637 +23729 23773 23749 23751 19862 27638 +23730 23774 23750 23752 19863 27639 +23731 23775 23751 23752 19864 27640 +23732 23776 23753 23754 19865 27641 +23733 23777 23753 23755 19866 27642 +23734 23778 23754 23756 19867 27643 +23735 23779 23755 23757 19868 27644 +23736 23780 23756 23758 19869 27645 +23737 23781 23757 23759 19870 27646 +23738 23782 23758 23760 19871 27647 +23739 23783 23759 23761 19872 27648 +23740 23784 23760 23762 19873 27649 +23741 23785 23761 23763 19874 27650 +23742 23786 23762 23764 19875 27651 +23765 23787 23763 23789 19876 27652 +23742 23790 23764 23766 19877 27653 +23743 23791 23765 23767 19878 27654 +23744 23792 23766 23768 19879 27655 +23745 23793 23767 23769 19880 27656 +23746 23794 23768 23770 19881 27657 +23747 23795 23769 23771 19882 27658 +23748 23796 23770 23772 19883 27659 +23749 23797 23771 23773 19884 27660 +23750 23798 23772 23774 19885 27661 +23751 23799 23773 23775 19886 27662 +23752 23800 23774 23775 19887 27663 +23753 23801 23776 23777 19888 27664 +23754 23802 23776 23778 19889 27665 +23755 23803 23777 23779 19890 27666 +23756 23804 23778 23780 19891 27667 +23757 23805 23779 23781 19892 27668 +23758 23806 23780 23782 19893 27669 +23759 23807 23781 23783 19894 27670 +23760 23808 23782 23784 19895 27671 +23761 23809 23783 23785 19896 27672 +23762 23810 23784 23786 19897 27673 +23763 23811 23785 23787 19898 27674 +23764 23812 23786 23788 19899 27675 +23789 23813 23787 23815 19900 27676 +23764 23816 23788 23790 19901 27677 +23765 23817 23789 23791 19902 27678 +23766 23818 23790 23792 19903 27679 +23767 23819 23791 23793 19904 27680 +23768 23820 23792 23794 19905 27681 +23769 23821 23793 23795 19906 27682 +23770 23822 23794 23796 19907 27683 +23771 23823 23795 23797 19908 27684 +23772 23824 23796 23798 19909 27685 +23773 23825 23797 23799 19910 27686 +23774 23826 23798 23800 19911 27687 +23775 23827 23799 23800 19912 27688 +23776 23828 23801 23802 19913 27689 +23777 23829 23801 23803 19914 27690 +23778 23830 23802 23804 19915 27691 +23779 23831 23803 23805 19916 27692 +23780 23832 23804 23806 19917 27693 +23781 23833 23805 23807 19918 27694 +23782 23834 23806 23808 19919 27695 +23783 23835 23807 23809 19920 27696 +23784 23836 23808 23810 19921 27697 +23785 23837 23809 23811 19922 27698 +23786 23838 23810 23812 19923 27699 +23787 23839 23811 23813 19924 27700 +23788 23840 23812 23814 19925 27701 +23815 23841 23813 23843 19926 27702 +23788 23844 23814 23816 19927 27703 +23789 23845 23815 23817 19928 27704 +23790 23846 23816 23818 19929 27705 +23791 23847 23817 23819 19930 27706 +23792 23848 23818 23820 19931 27707 +23793 23849 23819 23821 19932 27708 +23794 23850 23820 23822 19933 27709 +23795 23851 23821 23823 19934 27710 +23796 23852 23822 23824 19935 27711 +23797 23853 23823 23825 19936 27712 +23798 23854 23824 23826 19937 27713 +23799 23855 23825 23827 19938 27714 +23800 23856 23826 23827 19939 27715 +23801 23857 23828 23829 19940 27716 +23802 23858 23828 23830 19941 27717 +23803 23859 23829 23831 19942 27718 +23804 23860 23830 23832 19943 27719 +23805 23861 23831 23833 19944 27720 +23806 23862 23832 23834 19945 27721 +23807 23863 23833 23835 19946 27722 +23808 23864 23834 23836 19947 27723 +23809 23865 23835 23837 19948 27724 +23810 23866 23836 23838 19949 27725 +23811 23867 23837 23839 19950 27726 +23812 23868 23838 23840 19951 27727 +23813 23869 23839 23841 19952 27728 +23814 23870 23840 23842 19953 27729 +23843 23871 23841 23873 19954 27730 +23814 23874 23842 23844 19955 27731 +23815 23875 23843 23845 19956 27732 +23816 23876 23844 23846 19957 27733 +23817 23877 23845 23847 19958 27734 +23818 23878 23846 23848 19959 27735 +23819 23879 23847 23849 19960 27736 +23820 23880 23848 23850 19961 27737 +23821 23881 23849 23851 19962 27738 +23822 23882 23850 23852 19963 27739 +23823 23883 23851 23853 19964 27740 +23824 23884 23852 23854 19965 27741 +23825 23885 23853 23855 19966 27742 +23826 23886 23854 23856 19967 27743 +23827 23887 23855 23856 19968 27744 +23828 23888 23857 23858 19969 27745 +23829 23889 23857 23859 19970 27746 +23830 23890 23858 23860 19971 27747 +23831 23891 23859 23861 19972 27748 +23832 23892 23860 23862 19973 27749 +23833 23893 23861 23863 19974 27750 +23834 23894 23862 23864 19975 27751 +23835 23895 23863 23865 19976 27752 +23836 23896 23864 23866 19977 27753 +23837 23897 23865 23867 19978 27754 +23838 23898 23866 23868 19979 27755 +23839 23899 23867 23869 19980 27756 +23840 23900 23868 23870 19981 27757 +23841 23901 23869 23871 19982 27758 +23842 23902 23870 23872 19983 27759 +23873 23903 23871 23905 19984 27760 +23842 23906 23872 23874 19985 27761 +23843 23907 23873 23875 19986 27762 +23844 23908 23874 23876 19987 27763 +23845 23909 23875 23877 19988 27764 +23846 23910 23876 23878 19989 27765 +23847 23911 23877 23879 19990 27766 +23848 23912 23878 23880 19991 27767 +23849 23913 23879 23881 19992 27768 +23850 23914 23880 23882 19993 27769 +23851 23915 23881 23883 19994 27770 +23852 23916 23882 23884 19995 27771 +23853 23917 23883 23885 19996 27772 +23854 23918 23884 23886 19997 27773 +23855 23919 23885 23887 19998 27774 +23856 23920 23886 23887 19999 27775 +23857 23921 23888 23889 20000 27776 +23858 23922 23888 23890 20001 27777 +23859 23923 23889 23891 20002 27778 +23860 23924 23890 23892 20003 27779 +23861 23925 23891 23893 20004 27780 +23862 23926 23892 23894 20005 27781 +23863 23927 23893 23895 20006 27782 +23864 23928 23894 23896 20007 27783 +23865 23929 23895 23897 20008 27784 +23866 23930 23896 23898 20009 27785 +23867 23931 23897 23899 20010 27786 +23868 23932 23898 23900 20011 27787 +23869 23933 23899 23901 20012 27788 +23870 23934 23900 23902 20013 27789 +23871 23935 23901 23903 20014 27790 +23872 23936 23902 23904 20015 27791 +23905 23937 23903 23939 20016 27792 +23872 23940 23904 23906 20017 27793 +23873 23941 23905 23907 20018 27794 +23874 23942 23906 23908 20019 27795 +23875 23943 23907 23909 20020 27796 +23876 23944 23908 23910 20021 27797 +23877 23945 23909 23911 20022 27798 +23878 23946 23910 23912 20023 27799 +23879 23947 23911 23913 20024 27800 +23880 23948 23912 23914 20025 27801 +23881 23949 23913 23915 20026 27802 +23882 23950 23914 23916 20027 27803 +23883 23951 23915 23917 20028 27804 +23884 23952 23916 23918 20029 27805 +23885 23953 23917 23919 20030 27806 +23886 23954 23918 23920 20031 27807 +23887 23955 23919 23920 20032 27808 +23888 23956 23921 23922 20033 27809 +23889 23957 23921 23923 20034 27810 +23890 23958 23922 23924 20035 27811 +23891 23959 23923 23925 20036 27812 +23892 23960 23924 23926 20037 27813 +23893 23961 23925 23927 20038 27814 +23894 23962 23926 23928 20039 27815 +23895 23963 23927 23929 20040 27816 +23896 23964 23928 23930 20041 27817 +23897 23965 23929 23931 20042 27818 +23898 23966 23930 23932 20043 27819 +23899 23967 23931 23933 20044 27820 +23900 23968 23932 23934 20045 27821 +23901 23969 23933 23935 20046 27822 +23902 23970 23934 23936 20047 27823 +23903 23971 23935 23937 20048 27824 +23904 23972 23936 23938 20049 27825 +23939 23973 23937 23975 20050 27826 +23904 23976 23938 23940 20051 27827 +23905 23977 23939 23941 20052 27828 +23906 23978 23940 23942 20053 27829 +23907 23979 23941 23943 20054 27830 +23908 23980 23942 23944 20055 27831 +23909 23981 23943 23945 20056 27832 +23910 23982 23944 23946 20057 27833 +23911 23983 23945 23947 20058 27834 +23912 23984 23946 23948 20059 27835 +23913 23985 23947 23949 20060 27836 +23914 23986 23948 23950 20061 27837 +23915 23987 23949 23951 20062 27838 +23916 23988 23950 23952 20063 27839 +23917 23989 23951 23953 20064 27840 +23918 23990 23952 23954 20065 27841 +23919 23991 23953 23955 20066 27842 +23920 23992 23954 23955 20067 27843 +23921 23993 23956 23957 20068 27844 +23922 23994 23956 23958 20069 27845 +23923 23995 23957 23959 20070 27846 +23924 23996 23958 23960 20071 27847 +23925 23997 23959 23961 20072 27848 +23926 23998 23960 23962 20073 27849 +23927 23999 23961 23963 20074 27850 +23928 24000 23962 23964 20075 27851 +23929 24001 23963 23965 20076 27852 +23930 24002 23964 23966 20077 27853 +23931 24003 23965 23967 20078 27854 +23932 24004 23966 23968 20079 27855 +23933 24005 23967 23969 20080 27856 +23934 24006 23968 23970 20081 27857 +23935 24007 23969 23971 20082 27858 +23936 24008 23970 23972 20083 27859 +23937 24009 23971 23973 20084 27860 +23938 24010 23972 23974 20085 27861 +23975 24011 23973 24013 20086 27862 +23938 24014 23974 23976 20087 27863 +23939 24015 23975 23977 20088 27864 +23940 24016 23976 23978 20089 27865 +23941 24017 23977 23979 20090 27866 +23942 24018 23978 23980 20091 27867 +23943 24019 23979 23981 20092 27868 +23944 24020 23980 23982 20093 27869 +23945 24021 23981 23983 20094 27870 +23946 24022 23982 23984 20095 27871 +23947 24023 23983 23985 20096 27872 +23948 24024 23984 23986 20097 27873 +23949 24025 23985 23987 20098 27874 +23950 24026 23986 23988 20099 27875 +23951 24027 23987 23989 20100 27876 +23952 24028 23988 23990 20101 27877 +23953 24029 23989 23991 20102 27878 +23954 24030 23990 23992 20103 27879 +23955 24031 23991 23992 20104 27880 +23956 24032 23993 23994 20105 27881 +23957 24033 23993 23995 20106 27882 +23958 24034 23994 23996 20107 27883 +23959 24035 23995 23997 20108 27884 +23960 24036 23996 23998 20109 27885 +23961 24037 23997 23999 20110 27886 +23962 24038 23998 24000 20111 27887 +23963 24039 23999 24001 20112 27888 +23964 24040 24000 24002 20113 27889 +23965 24041 24001 24003 20114 27890 +23966 24042 24002 24004 20115 27891 +23967 24043 24003 24005 20116 27892 +23968 24044 24004 24006 20117 27893 +23969 24045 24005 24007 20118 27894 +23970 24046 24006 24008 20119 27895 +23971 24047 24007 24009 20120 27896 +23972 24048 24008 24010 20121 27897 +23973 24049 24009 24011 20122 27898 +23974 24050 24010 24012 20123 27899 +24013 24051 24011 24053 20124 27900 +23974 24054 24012 24014 20125 27901 +23975 24055 24013 24015 20126 27902 +23976 24056 24014 24016 20127 27903 +23977 24057 24015 24017 20128 27904 +23978 24058 24016 24018 20129 27905 +23979 24059 24017 24019 20130 27906 +23980 24060 24018 24020 20131 27907 +23981 24061 24019 24021 20132 27908 +23982 24062 24020 24022 20133 27909 +23983 24063 24021 24023 20134 27910 +23984 24064 24022 24024 20135 27911 +23985 24065 24023 24025 20136 27912 +23986 24066 24024 24026 20137 27913 +23987 24067 24025 24027 20138 27914 +23988 24068 24026 24028 20139 27915 +23989 24069 24027 24029 20140 27916 +23990 24070 24028 24030 20141 27917 +23991 24071 24029 24031 20142 27918 +23992 24072 24030 24031 20143 27919 +23993 24073 24032 24033 20144 27920 +23994 24074 24032 24034 20145 27921 +23995 24075 24033 24035 20146 27922 +23996 24076 24034 24036 20147 27923 +23997 24077 24035 24037 20148 27924 +23998 24078 24036 24038 20149 27925 +23999 24079 24037 24039 20150 27926 +24000 24080 24038 24040 20151 27927 +24001 24081 24039 24041 20152 27928 +24002 24082 24040 24042 20153 27929 +24003 24083 24041 24043 20154 27930 +24004 24084 24042 24044 20155 27931 +24005 24085 24043 24045 20156 27932 +24006 24086 24044 24046 20157 27933 +24007 24087 24045 24047 20158 27934 +24008 24088 24046 24048 20159 27935 +24009 24089 24047 24049 20160 27936 +24010 24090 24048 24050 20161 27937 +24011 24091 24049 24051 20162 27938 +24012 24092 24050 24052 20163 27939 +24053 24093 24051 24095 20164 27940 +24012 24096 24052 24054 20165 27941 +24013 24097 24053 24055 20166 27942 +24014 24098 24054 24056 20167 27943 +24015 24099 24055 24057 20168 27944 +24016 24100 24056 24058 20169 27945 +24017 24101 24057 24059 20170 27946 +24018 24102 24058 24060 20171 27947 +24019 24103 24059 24061 20172 27948 +24020 24104 24060 24062 20173 27949 +24021 24105 24061 24063 20174 27950 +24022 24106 24062 24064 20175 27951 +24023 24107 24063 24065 20176 27952 +24024 24108 24064 24066 20177 27953 +24025 24109 24065 24067 20178 27954 +24026 24110 24066 24068 20179 27955 +24027 24111 24067 24069 20180 27956 +24028 24112 24068 24070 20181 27957 +24029 24113 24069 24071 20182 27958 +24030 24114 24070 24072 20183 27959 +24031 24115 24071 24072 20184 27960 +24032 24116 24073 24074 20185 27961 +24033 24117 24073 24075 20186 27962 +24034 24118 24074 24076 20187 27963 +24035 24119 24075 24077 20188 27964 +24036 24120 24076 24078 20189 27965 +24037 24121 24077 24079 20190 27966 +24038 24122 24078 24080 20191 27967 +24039 24123 24079 24081 20192 27968 +24040 24124 24080 24082 20193 27969 +24041 24125 24081 24083 20194 27970 +24042 24126 24082 24084 20195 27971 +24043 24127 24083 24085 20196 27972 +24044 24128 24084 24086 20197 27973 +24045 24129 24085 24087 20198 27974 +24046 24130 24086 24088 20199 27975 +24047 24131 24087 24089 20200 27976 +24048 24132 24088 24090 20201 27977 +24049 24133 24089 24091 20202 27978 +24050 24134 24090 24092 20203 27979 +24051 24135 24091 24093 20204 27980 +24052 24136 24092 24094 20205 27981 +24095 24137 24093 24139 20206 27982 +24052 24140 24094 24096 20207 27983 +24053 24141 24095 24097 20208 27984 +24054 24142 24096 24098 20209 27985 +24055 24143 24097 24099 20210 27986 +24056 24144 24098 24100 20211 27987 +24057 24145 24099 24101 20212 27988 +24058 24146 24100 24102 20213 27989 +24059 24147 24101 24103 20214 27990 +24060 24148 24102 24104 20215 27991 +24061 24149 24103 24105 20216 27992 +24062 24150 24104 24106 20217 27993 +24063 24151 24105 24107 20218 27994 +24064 24152 24106 24108 20219 27995 +24065 24153 24107 24109 20220 27996 +24066 24154 24108 24110 20221 27997 +24067 24155 24109 24111 20222 27998 +24068 24156 24110 24112 20223 27999 +24069 24157 24111 24113 20224 28000 +24070 24158 24112 24114 20225 28001 +24071 24159 24113 24115 20226 28002 +24072 24160 24114 24115 20227 28003 +24073 24161 24116 24117 20228 28004 +24074 24162 24116 24118 20229 28005 +24075 24163 24117 24119 20230 28006 +24076 24164 24118 24120 20231 28007 +24077 24165 24119 24121 20232 28008 +24078 24166 24120 24122 20233 28009 +24079 24167 24121 24123 20234 28010 +24080 24168 24122 24124 20235 28011 +24081 24169 24123 24125 20236 28012 +24082 24170 24124 24126 20237 28013 +24083 24171 24125 24127 20238 28014 +24084 24172 24126 24128 20239 28015 +24085 24173 24127 24129 20240 28016 +24086 24174 24128 24130 20241 28017 +24087 24175 24129 24131 20242 28018 +24088 24176 24130 24132 20243 28019 +24089 24177 24131 24133 20244 28020 +24090 24178 24132 24134 20245 28021 +24091 24179 24133 24135 20246 28022 +24092 24180 24134 24136 20247 28023 +24093 24181 24135 24137 20248 28024 +24094 24182 24136 24138 20249 28025 +24139 24183 24137 24185 20250 28026 +24094 24186 24138 24140 20251 28027 +24095 24187 24139 24141 20252 28028 +24096 24188 24140 24142 20253 28029 +24097 24189 24141 24143 20254 28030 +24098 24190 24142 24144 20255 28031 +24099 24191 24143 24145 20256 28032 +24100 24192 24144 24146 20257 28033 +24101 24193 24145 24147 20258 28034 +24102 24194 24146 24148 20259 28035 +24103 24195 24147 24149 20260 28036 +24104 24196 24148 24150 20261 28037 +24105 24197 24149 24151 20262 28038 +24106 24198 24150 24152 20263 28039 +24107 24199 24151 24153 20264 28040 +24108 24200 24152 24154 20265 28041 +24109 24201 24153 24155 20266 28042 +24110 24202 24154 24156 20267 28043 +24111 24203 24155 24157 20268 28044 +24112 24204 24156 24158 20269 28045 +24113 24205 24157 24159 20270 28046 +24114 24206 24158 24160 20271 28047 +24115 24207 24159 24160 20272 28048 +24116 24208 24161 24162 20273 28049 +24117 24209 24161 24163 20274 28050 +24118 24210 24162 24164 20275 28051 +24119 24211 24163 24165 20276 28052 +24120 24212 24164 24166 20277 28053 +24121 24213 24165 24167 20278 28054 +24122 24214 24166 24168 20279 28055 +24123 24215 24167 24169 20280 28056 +24124 24216 24168 24170 20281 28057 +24125 24217 24169 24171 20282 28058 +24126 24218 24170 24172 20283 28059 +24127 24219 24171 24173 20284 28060 +24128 24220 24172 24174 20285 28061 +24129 24221 24173 24175 20286 28062 +24130 24222 24174 24176 20287 28063 +24131 24223 24175 24177 20288 28064 +24132 24224 24176 24178 20289 28065 +24133 24225 24177 24179 20290 28066 +24134 24226 24178 24180 20291 28067 +24135 24227 24179 24181 20292 28068 +24136 24228 24180 24182 20293 28069 +24137 24229 24181 24183 20294 28070 +24138 24230 24182 24184 20295 28071 +24185 24231 24183 24233 20296 28072 +24138 24234 24184 24186 20297 28073 +24139 24235 24185 24187 20298 28074 +24140 24236 24186 24188 20299 28075 +24141 24237 24187 24189 20300 28076 +24142 24238 24188 24190 20301 28077 +24143 24239 24189 24191 20302 28078 +24144 24240 24190 24192 20303 28079 +24145 24241 24191 24193 20304 28080 +24146 24242 24192 24194 20305 28081 +24147 24243 24193 24195 20306 28082 +24148 24244 24194 24196 20307 28083 +24149 24245 24195 24197 20308 28084 +24150 24246 24196 24198 20309 28085 +24151 24247 24197 24199 20310 28086 +24152 24248 24198 24200 20311 28087 +24153 24249 24199 24201 20312 28088 +24154 24250 24200 24202 20313 28089 +24155 24251 24201 24203 20314 28090 +24156 24252 24202 24204 20315 28091 +24157 24253 24203 24205 20316 28092 +24158 24254 24204 24206 20317 28093 +24159 24255 24205 24207 20318 28094 +24160 24256 24206 24207 20319 28095 +24161 24257 24208 24209 20320 28096 +24162 24258 24208 24210 20321 28097 +24163 24259 24209 24211 20322 28098 +24164 24260 24210 24212 20323 28099 +24165 24261 24211 24213 20324 28100 +24166 24262 24212 24214 20325 28101 +24167 24263 24213 24215 20326 28102 +24168 24264 24214 24216 20327 28103 +24169 24265 24215 24217 20328 28104 +24170 24266 24216 24218 20329 28105 +24171 24267 24217 24219 20330 28106 +24172 24268 24218 24220 20331 28107 +24173 24269 24219 24221 20332 28108 +24174 24270 24220 24222 20333 28109 +24175 24271 24221 24223 20334 28110 +24176 24272 24222 24224 20335 28111 +24177 24273 24223 24225 20336 28112 +24178 24274 24224 24226 20337 28113 +24179 24275 24225 24227 20338 28114 +24180 24276 24226 24228 20339 28115 +24181 24277 24227 24229 20340 28116 +24182 24278 24228 24230 20341 28117 +24183 24279 24229 24231 20342 28118 +24184 24280 24230 24232 20343 28119 +24233 24281 24231 24283 20344 28120 +24184 24284 24232 24234 20345 28121 +24185 24285 24233 24235 20346 28122 +24186 24286 24234 24236 20347 28123 +24187 24287 24235 24237 20348 28124 +24188 24288 24236 24238 20349 28125 +24189 24289 24237 24239 20350 28126 +24190 24290 24238 24240 20351 28127 +24191 24291 24239 24241 20352 28128 +24192 24292 24240 24242 20353 28129 +24193 24293 24241 24243 20354 28130 +24194 24294 24242 24244 20355 28131 +24195 24295 24243 24245 20356 28132 +24196 24296 24244 24246 20357 28133 +24197 24297 24245 24247 20358 28134 +24198 24298 24246 24248 20359 28135 +24199 24299 24247 24249 20360 28136 +24200 24300 24248 24250 20361 28137 +24201 24301 24249 24251 20362 28138 +24202 24302 24250 24252 20363 28139 +24203 24303 24251 24253 20364 28140 +24204 24304 24252 24254 20365 28141 +24205 24305 24253 24255 20366 28142 +24206 24306 24254 24256 20367 28143 +24207 24307 24255 24256 20368 28144 +24208 24308 24257 24258 20369 28145 +24209 24309 24257 24259 20370 28146 +24210 24310 24258 24260 20371 28147 +24211 24311 24259 24261 20372 28148 +24212 24312 24260 24262 20373 28149 +24213 24313 24261 24263 20374 28150 +24214 24314 24262 24264 20375 28151 +24215 24315 24263 24265 20376 28152 +24216 24316 24264 24266 20377 28153 +24217 24317 24265 24267 20378 28154 +24218 24318 24266 24268 20379 28155 +24219 24319 24267 24269 20380 28156 +24220 24320 24268 24270 20381 28157 +24221 24321 24269 24271 20382 28158 +24222 24322 24270 24272 20383 28159 +24223 24323 24271 24273 20384 28160 +24224 24324 24272 24274 20385 28161 +24225 24325 24273 24275 20386 28162 +24226 24326 24274 24276 20387 28163 +24227 24327 24275 24277 20388 28164 +24228 24328 24276 24278 20389 28165 +24229 24329 24277 24279 20390 28166 +24230 24330 24278 24280 20391 28167 +24231 24331 24279 24281 20392 28168 +24232 24332 24280 24282 20393 28169 +24283 24333 24281 24335 20394 28170 +24232 24336 24282 24284 20395 28171 +24233 24337 24283 24285 20396 28172 +24234 24338 24284 24286 20397 28173 +24235 24339 24285 24287 20398 28174 +24236 24340 24286 24288 20399 28175 +24237 24341 24287 24289 20400 28176 +24238 24342 24288 24290 20401 28177 +24239 24343 24289 24291 20402 28178 +24240 24344 24290 24292 20403 28179 +24241 24345 24291 24293 20404 28180 +24242 24346 24292 24294 20405 28181 +24243 24347 24293 24295 20406 28182 +24244 24348 24294 24296 20407 28183 +24245 24349 24295 24297 20408 28184 +24246 24350 24296 24298 20409 28185 +24247 24351 24297 24299 20410 28186 +24248 24352 24298 24300 20411 28187 +24249 24353 24299 24301 20412 28188 +24250 24354 24300 24302 20413 28189 +24251 24355 24301 24303 20414 28190 +24252 24356 24302 24304 20415 28191 +24253 24357 24303 24305 20416 28192 +24254 24358 24304 24306 20417 28193 +24255 24359 24305 24307 20418 28194 +24256 24360 24306 24307 20419 28195 +24257 24361 24308 24309 20420 28196 +24258 24362 24308 24310 20421 28197 +24259 24363 24309 24311 20422 28198 +24260 24364 24310 24312 20423 28199 +24261 24365 24311 24313 20424 28200 +24262 24366 24312 24314 20425 28201 +24263 24367 24313 24315 20426 28202 +24264 24368 24314 24316 20427 28203 +24265 24369 24315 24317 20428 28204 +24266 24370 24316 24318 20429 28205 +24267 24371 24317 24319 20430 28206 +24268 24372 24318 24320 20431 28207 +24269 24373 24319 24321 20432 28208 +24270 24374 24320 24322 20433 28209 +24271 24375 24321 24323 20434 28210 +24272 24376 24322 24324 20435 28211 +24273 24377 24323 24325 20436 28212 +24274 24378 24324 24326 20437 28213 +24275 24379 24325 24327 20438 28214 +24276 24380 24326 24328 20439 28215 +24277 24381 24327 24329 20440 28216 +24278 24382 24328 24330 20441 28217 +24279 24383 24329 24331 20442 28218 +24280 24384 24330 24332 20443 28219 +24281 24385 24331 24333 20444 28220 +24282 24386 24332 24334 20445 28221 +24335 24387 24333 24389 20446 28222 +24282 24390 24334 24336 20447 28223 +24283 24391 24335 24337 20448 28224 +24284 24392 24336 24338 20449 28225 +24285 24393 24337 24339 20450 28226 +24286 24394 24338 24340 20451 28227 +24287 24395 24339 24341 20452 28228 +24288 24396 24340 24342 20453 28229 +24289 24397 24341 24343 20454 28230 +24290 24398 24342 24344 20455 28231 +24291 24399 24343 24345 20456 28232 +24292 24400 24344 24346 20457 28233 +24293 24401 24345 24347 20458 28234 +24294 24402 24346 24348 20459 28235 +24295 24403 24347 24349 20460 28236 +24296 24404 24348 24350 20461 28237 +24297 24405 24349 24351 20462 28238 +24298 24406 24350 24352 20463 28239 +24299 24407 24351 24353 20464 28240 +24300 24408 24352 24354 20465 28241 +24301 24409 24353 24355 20466 28242 +24302 24410 24354 24356 20467 28243 +24303 24411 24355 24357 20468 28244 +24304 24412 24356 24358 20469 28245 +24305 24413 24357 24359 20470 28246 +24306 24414 24358 24360 20471 28247 +24307 24415 24359 24360 20472 28248 +24308 24416 24361 24362 20473 28249 +24309 24417 24361 24363 20474 28250 +24310 24418 24362 24364 20475 28251 +24311 24419 24363 24365 20476 28252 +24312 24420 24364 24366 20477 28253 +24313 24421 24365 24367 20478 28254 +24314 24422 24366 24368 20479 28255 +24315 24423 24367 24369 20480 28256 +24316 24424 24368 24370 20481 28257 +24317 24425 24369 24371 20482 28258 +24318 24426 24370 24372 20483 28259 +24319 24427 24371 24373 20484 28260 +24320 24428 24372 24374 20485 28261 +24321 24429 24373 24375 20486 28262 +24322 24430 24374 24376 20487 28263 +24323 24431 24375 24377 20488 28264 +24324 24432 24376 24378 20489 28265 +24325 24433 24377 24379 20490 28266 +24326 24434 24378 24380 20491 28267 +24327 24435 24379 24381 20492 28268 +24328 24436 24380 24382 20493 28269 +24329 24437 24381 24383 20494 28270 +24330 24438 24382 24384 20495 28271 +24331 24439 24383 24385 20496 28272 +24332 24440 24384 24386 20497 28273 +24333 24441 24385 24387 20498 28274 +24334 24442 24386 24388 20499 28275 +24389 24443 24387 24445 20500 28276 +24334 24446 24388 24390 20501 28277 +24335 24447 24389 24391 20502 28278 +24336 24448 24390 24392 20503 28279 +24337 24449 24391 24393 20504 28280 +24338 24450 24392 24394 20505 28281 +24339 24451 24393 24395 20506 28282 +24340 24452 24394 24396 20507 28283 +24341 24453 24395 24397 20508 28284 +24342 24454 24396 24398 20509 28285 +24343 24455 24397 24399 20510 28286 +24344 24456 24398 24400 20511 28287 +24345 24457 24399 24401 20512 28288 +24346 24458 24400 24402 20513 28289 +24347 24459 24401 24403 20514 28290 +24348 24460 24402 24404 20515 28291 +24349 24461 24403 24405 20516 28292 +24350 24462 24404 24406 20517 28293 +24351 24463 24405 24407 20518 28294 +24352 24464 24406 24408 20519 28295 +24353 24465 24407 24409 20520 28296 +24354 24466 24408 24410 20521 28297 +24355 24467 24409 24411 20522 28298 +24356 24468 24410 24412 20523 28299 +24357 24469 24411 24413 20524 28300 +24358 24470 24412 24414 20525 28301 +24359 24471 24413 24415 20526 28302 +24360 24472 24414 24415 20527 28303 +24361 24473 24416 24417 20528 28304 +24362 24474 24416 24418 20529 28305 +24363 24475 24417 24419 20530 28306 +24364 24476 24418 24420 20531 28307 +24365 24477 24419 24421 20532 28308 +24366 24478 24420 24422 20533 28309 +24367 24479 24421 24423 20534 28310 +24368 24480 24422 24424 20535 28311 +24369 24481 24423 24425 20536 28312 +24370 24482 24424 24426 20537 28313 +24371 24483 24425 24427 20538 28314 +24372 24484 24426 24428 20539 28315 +24373 24485 24427 24429 20540 28316 +24374 24486 24428 24430 20541 28317 +24375 24487 24429 24431 20542 28318 +24376 24488 24430 24432 20543 28319 +24377 24489 24431 24433 20544 28320 +24378 24490 24432 24434 20545 28321 +24379 24491 24433 24435 20546 28322 +24380 24492 24434 24436 20547 28323 +24381 24493 24435 24437 20548 28324 +24382 24494 24436 24438 20549 28325 +24383 24495 24437 24439 20550 28326 +24384 24496 24438 24440 20551 28327 +24385 24497 24439 24441 20552 28328 +24386 24498 24440 24442 20553 28329 +24387 24499 24441 24443 20554 28330 +24388 24500 24442 24444 20555 28331 +24445 24501 24443 24503 20556 28332 +24388 24504 24444 24446 20557 28333 +24389 24505 24445 24447 20558 28334 +24390 24506 24446 24448 20559 28335 +24391 24507 24447 24449 20560 28336 +24392 24508 24448 24450 20561 28337 +24393 24509 24449 24451 20562 28338 +24394 24510 24450 24452 20563 28339 +24395 24511 24451 24453 20564 28340 +24396 24512 24452 24454 20565 28341 +24397 24513 24453 24455 20566 28342 +24398 24514 24454 24456 20567 28343 +24399 24515 24455 24457 20568 28344 +24400 24516 24456 24458 20569 28345 +24401 24517 24457 24459 20570 28346 +24402 24518 24458 24460 20571 28347 +24403 24519 24459 24461 20572 28348 +24404 24520 24460 24462 20573 28349 +24405 24521 24461 24463 20574 28350 +24406 24522 24462 24464 20575 28351 +24407 24523 24463 24465 20576 28352 +24408 24524 24464 24466 20577 28353 +24409 24525 24465 24467 20578 28354 +24410 24526 24466 24468 20579 28355 +24411 24527 24467 24469 20580 28356 +24412 24528 24468 24470 20581 28357 +24413 24529 24469 24471 20582 28358 +24414 24530 24470 24472 20583 28359 +24415 24531 24471 24472 20584 28360 +24416 24532 24473 24474 20585 28361 +24417 24533 24473 24475 20586 28362 +24418 24534 24474 24476 20587 28363 +24419 24535 24475 24477 20588 28364 +24420 24536 24476 24478 20589 28365 +24421 24537 24477 24479 20590 28366 +24422 24538 24478 24480 20591 28367 +24423 24539 24479 24481 20592 28368 +24424 24540 24480 24482 20593 28369 +24425 24541 24481 24483 20594 28370 +24426 24542 24482 24484 20595 28371 +24427 24543 24483 24485 20596 28372 +24428 24544 24484 24486 20597 28373 +24429 24545 24485 24487 20598 28374 +24430 24546 24486 24488 20599 28375 +24431 24547 24487 24489 20600 28376 +24432 24548 24488 24490 20601 28377 +24433 24549 24489 24491 20602 28378 +24434 24550 24490 24492 20603 28379 +24435 24551 24491 24493 20604 28380 +24436 24552 24492 24494 20605 28381 +24437 24553 24493 24495 20606 28382 +24438 24554 24494 24496 20607 28383 +24439 24555 24495 24497 20608 28384 +24440 24556 24496 24498 20609 28385 +24441 24557 24497 24499 20610 28386 +24442 24558 24498 24500 20611 28387 +24443 24559 24499 24501 20612 28388 +24444 24560 24500 24502 20613 28389 +24503 24561 24501 24563 20614 28390 +24444 24564 24502 24504 20615 28391 +24445 24565 24503 24505 20616 28392 +24446 24566 24504 24506 20617 28393 +24447 24567 24505 24507 20618 28394 +24448 24568 24506 24508 20619 28395 +24449 24569 24507 24509 20620 28396 +24450 24570 24508 24510 20621 28397 +24451 24571 24509 24511 20622 28398 +24452 24572 24510 24512 20623 28399 +24453 24573 24511 24513 20624 28400 +24454 24574 24512 24514 20625 28401 +24455 24575 24513 24515 20626 28402 +24456 24576 24514 24516 20627 28403 +24457 24577 24515 24517 20628 28404 +24458 24578 24516 24518 20629 28405 +24459 24579 24517 24519 20630 28406 +24460 24580 24518 24520 20631 28407 +24461 24581 24519 24521 20632 28408 +24462 24582 24520 24522 20633 28409 +24463 24583 24521 24523 20634 28410 +24464 24584 24522 24524 20635 28411 +24465 24585 24523 24525 20636 28412 +24466 24586 24524 24526 20637 28413 +24467 24587 24525 24527 20638 28414 +24468 24588 24526 24528 20639 28415 +24469 24589 24527 24529 20640 28416 +24470 24590 24528 24530 20641 28417 +24471 24591 24529 24531 20642 28418 +24472 24592 24530 24531 20643 28419 +24473 24593 24532 24533 20644 28420 +24474 24594 24532 24534 20645 28421 +24475 24595 24533 24535 20646 28422 +24476 24596 24534 24536 20647 28423 +24477 24597 24535 24537 20648 28424 +24478 24598 24536 24538 20649 28425 +24479 24599 24537 24539 20650 28426 +24480 24600 24538 24540 20651 28427 +24481 24601 24539 24541 20652 28428 +24482 24602 24540 24542 20653 28429 +24483 24603 24541 24543 20654 28430 +24484 24604 24542 24544 20655 28431 +24485 24605 24543 24545 20656 28432 +24486 24606 24544 24546 20657 28433 +24487 24607 24545 24547 20658 28434 +24488 24608 24546 24548 20659 28435 +24489 24609 24547 24549 20660 28436 +24490 24610 24548 24550 20661 28437 +24491 24611 24549 24551 20662 28438 +24492 24612 24550 24552 20663 28439 +24493 24613 24551 24553 20664 28440 +24494 24614 24552 24554 20665 28441 +24495 24615 24553 24555 20666 28442 +24496 24616 24554 24556 20667 28443 +24497 24617 24555 24557 20668 28444 +24498 24618 24556 24558 20669 28445 +24499 24619 24557 24559 20670 28446 +24500 24620 24558 24560 20671 28447 +24501 24621 24559 24561 20672 28448 +24502 24622 24560 24562 20673 28449 +24563 24623 24561 24625 20674 28450 +24502 24626 24562 24564 20675 28451 +24503 24627 24563 24565 20676 28452 +24504 24628 24564 24566 20677 28453 +24505 24629 24565 24567 20678 28454 +24506 24630 24566 24568 20679 28455 +24507 24631 24567 24569 20680 28456 +24508 24632 24568 24570 20681 28457 +24509 24633 24569 24571 20682 28458 +24510 24634 24570 24572 20683 28459 +24511 24635 24571 24573 20684 28460 +24512 24636 24572 24574 20685 28461 +24513 24637 24573 24575 20686 28462 +24514 24638 24574 24576 20687 28463 +24515 24639 24575 24577 20688 28464 +24516 24640 24576 24578 20689 28465 +24517 24641 24577 24579 20690 28466 +24518 24642 24578 24580 20691 28467 +24519 24643 24579 24581 20692 28468 +24520 24644 24580 24582 20693 28469 +24521 24645 24581 24583 20694 28470 +24522 24646 24582 24584 20695 28471 +24523 24647 24583 24585 20696 28472 +24524 24648 24584 24586 20697 28473 +24525 24649 24585 24587 20698 28474 +24526 24650 24586 24588 20699 28475 +24527 24651 24587 24589 20700 28476 +24528 24652 24588 24590 20701 28477 +24529 24653 24589 24591 20702 28478 +24530 24654 24590 24592 20703 28479 +24531 24655 24591 24592 20704 28480 +24532 24656 24593 24594 20705 28481 +24533 24657 24593 24595 20706 28482 +24534 24658 24594 24596 20707 28483 +24535 24659 24595 24597 20708 28484 +24536 24660 24596 24598 20709 28485 +24537 24661 24597 24599 20710 28486 +24538 24662 24598 24600 20711 28487 +24539 24663 24599 24601 20712 28488 +24540 24664 24600 24602 20713 28489 +24541 24665 24601 24603 20714 28490 +24542 24666 24602 24604 20715 28491 +24543 24667 24603 24605 20716 28492 +24544 24668 24604 24606 20717 28493 +24545 24669 24605 24607 20718 28494 +24546 24670 24606 24608 20719 28495 +24547 24671 24607 24609 20720 28496 +24548 24672 24608 24610 20721 28497 +24549 24673 24609 24611 20722 28498 +24550 24674 24610 24612 20723 28499 +24551 24675 24611 24613 20724 28500 +24552 24676 24612 24614 20725 28501 +24553 24677 24613 24615 20726 28502 +24554 24678 24614 24616 20727 28503 +24555 24679 24615 24617 20728 28504 +24556 24680 24616 24618 20729 28505 +24557 24681 24617 24619 20730 28506 +24558 24682 24618 24620 20731 28507 +24559 24683 24619 24621 20732 28508 +24560 24684 24620 24622 20733 28509 +24561 24685 24621 24623 20734 28510 +24562 24686 24622 24624 20735 28511 +24625 24687 24623 24689 20736 28512 +24562 24690 24624 24626 20737 28513 +24563 24691 24625 24627 20738 28514 +24564 24692 24626 24628 20739 28515 +24565 24693 24627 24629 20740 28516 +24566 24694 24628 24630 20741 28517 +24567 24695 24629 24631 20742 28518 +24568 24696 24630 24632 20743 28519 +24569 24697 24631 24633 20744 28520 +24570 24698 24632 24634 20745 28521 +24571 24699 24633 24635 20746 28522 +24572 24700 24634 24636 20747 28523 +24573 24701 24635 24637 20748 28524 +24574 24702 24636 24638 20749 28525 +24575 24703 24637 24639 20750 28526 +24576 24704 24638 24640 20751 28527 +24577 24705 24639 24641 20752 28528 +24578 24706 24640 24642 20753 28529 +24579 24707 24641 24643 20754 28530 +24580 24708 24642 24644 20755 28531 +24581 24709 24643 24645 20756 28532 +24582 24710 24644 24646 20757 28533 +24583 24711 24645 24647 20758 28534 +24584 24712 24646 24648 20759 28535 +24585 24713 24647 24649 20760 28536 +24586 24714 24648 24650 20761 28537 +24587 24715 24649 24651 20762 28538 +24588 24716 24650 24652 20763 28539 +24589 24717 24651 24653 20764 28540 +24590 24718 24652 24654 20765 28541 +24591 24719 24653 24655 20766 28542 +24592 24720 24654 24655 20767 28543 +24593 24721 24656 24657 20768 28544 +24594 24722 24656 24658 20769 28545 +24595 24723 24657 24659 20770 28546 +24596 24724 24658 24660 20771 28547 +24597 24725 24659 24661 20772 28548 +24598 24726 24660 24662 20773 28549 +24599 24727 24661 24663 20774 28550 +24600 24728 24662 24664 20775 28551 +24601 24729 24663 24665 20776 28552 +24602 24730 24664 24666 20777 28553 +24603 24731 24665 24667 20778 28554 +24604 24732 24666 24668 20779 28555 +24605 24733 24667 24669 20780 28556 +24606 24734 24668 24670 20781 28557 +24607 24735 24669 24671 20782 28558 +24608 24736 24670 24672 20783 28559 +24609 24737 24671 24673 20784 28560 +24610 24738 24672 24674 20785 28561 +24611 24739 24673 24675 20786 28562 +24612 24740 24674 24676 20787 28563 +24613 24741 24675 24677 20788 28564 +24614 24742 24676 24678 20789 28565 +24615 24743 24677 24679 20790 28566 +24616 24744 24678 24680 20791 28567 +24617 24745 24679 24681 20792 28568 +24618 24746 24680 24682 20793 28569 +24619 24747 24681 24683 20794 28570 +24620 24748 24682 24684 20795 28571 +24621 24749 24683 24685 20796 28572 +24622 24750 24684 24686 20797 28573 +24623 24751 24685 24687 20798 28574 +24624 24752 24686 24688 20799 28575 +24689 24753 24687 24755 20800 28576 +24624 24756 24688 24690 20801 28577 +24625 24757 24689 24691 20802 28578 +24626 24758 24690 24692 20803 28579 +24627 24759 24691 24693 20804 28580 +24628 24760 24692 24694 20805 28581 +24629 24761 24693 24695 20806 28582 +24630 24762 24694 24696 20807 28583 +24631 24763 24695 24697 20808 28584 +24632 24764 24696 24698 20809 28585 +24633 24765 24697 24699 20810 28586 +24634 24766 24698 24700 20811 28587 +24635 24767 24699 24701 20812 28588 +24636 24768 24700 24702 20813 28589 +24637 24769 24701 24703 20814 28590 +24638 24770 24702 24704 20815 28591 +24639 24771 24703 24705 20816 28592 +24640 24772 24704 24706 20817 28593 +24641 24773 24705 24707 20818 28594 +24642 24774 24706 24708 20819 28595 +24643 24775 24707 24709 20820 28596 +24644 24776 24708 24710 20821 28597 +24645 24777 24709 24711 20822 28598 +24646 24778 24710 24712 20823 28599 +24647 24779 24711 24713 20824 28600 +24648 24780 24712 24714 20825 28601 +24649 24781 24713 24715 20826 28602 +24650 24782 24714 24716 20827 28603 +24651 24783 24715 24717 20828 28604 +24652 24784 24716 24718 20829 28605 +24653 24785 24717 24719 20830 28606 +24654 24786 24718 24720 20831 28607 +24655 24787 24719 24720 20832 28608 +24656 24788 24721 24722 20833 28609 +24657 24789 24721 24723 20834 28610 +24658 24790 24722 24724 20835 28611 +24659 24791 24723 24725 20836 28612 +24660 24792 24724 24726 20837 28613 +24661 24793 24725 24727 20838 28614 +24662 24794 24726 24728 20839 28615 +24663 24795 24727 24729 20840 28616 +24664 24796 24728 24730 20841 28617 +24665 24797 24729 24731 20842 28618 +24666 24798 24730 24732 20843 28619 +24667 24799 24731 24733 20844 28620 +24668 24800 24732 24734 20845 28621 +24669 24801 24733 24735 20846 28622 +24670 24802 24734 24736 20847 28623 +24671 24803 24735 24737 20848 28624 +24672 24804 24736 24738 20849 28625 +24673 24805 24737 24739 20850 28626 +24674 24806 24738 24740 20851 28627 +24675 24807 24739 24741 20852 28628 +24676 24808 24740 24742 20853 28629 +24677 24809 24741 24743 20854 28630 +24678 24810 24742 24744 20855 28631 +24679 24811 24743 24745 20856 28632 +24680 24812 24744 24746 20857 28633 +24681 24813 24745 24747 20858 28634 +24682 24814 24746 24748 20859 28635 +24683 24815 24747 24749 20860 28636 +24684 24816 24748 24750 20861 28637 +24685 24817 24749 24751 20862 28638 +24686 24818 24750 24752 20863 28639 +24687 24819 24751 24753 20864 28640 +24688 24820 24752 24754 20865 28641 +24755 24821 24753 24823 20866 28642 +24688 24824 24754 24756 20867 28643 +24689 24825 24755 24757 20868 28644 +24690 24826 24756 24758 20869 28645 +24691 24827 24757 24759 20870 28646 +24692 24828 24758 24760 20871 28647 +24693 24829 24759 24761 20872 28648 +24694 24830 24760 24762 20873 28649 +24695 24831 24761 24763 20874 28650 +24696 24832 24762 24764 20875 28651 +24697 24833 24763 24765 20876 28652 +24698 24834 24764 24766 20877 28653 +24699 24835 24765 24767 20878 28654 +24700 24836 24766 24768 20879 28655 +24701 24837 24767 24769 20880 28656 +24702 24838 24768 24770 20881 28657 +24703 24839 24769 24771 20882 28658 +24704 24840 24770 24772 20883 28659 +24705 24841 24771 24773 20884 28660 +24706 24842 24772 24774 20885 28661 +24707 24843 24773 24775 20886 28662 +24708 24844 24774 24776 20887 28663 +24709 24845 24775 24777 20888 28664 +24710 24846 24776 24778 20889 28665 +24711 24847 24777 24779 20890 28666 +24712 24848 24778 24780 20891 28667 +24713 24849 24779 24781 20892 28668 +24714 24850 24780 24782 20893 28669 +24715 24851 24781 24783 20894 28670 +24716 24852 24782 24784 20895 28671 +24717 24853 24783 24785 20896 28672 +24718 24854 24784 24786 20897 28673 +24719 24855 24785 24787 20898 28674 +24720 24856 24786 24787 20899 28675 +24721 24857 24788 24789 20900 28676 +24722 24858 24788 24790 20901 28677 +24723 24859 24789 24791 20902 28678 +24724 24860 24790 24792 20903 28679 +24725 24861 24791 24793 20904 28680 +24726 24862 24792 24794 20905 28681 +24727 24863 24793 24795 20906 28682 +24728 24864 24794 24796 20907 28683 +24729 24865 24795 24797 20908 28684 +24730 24866 24796 24798 20909 28685 +24731 24867 24797 24799 20910 28686 +24732 24868 24798 24800 20911 28687 +24733 24869 24799 24801 20912 28688 +24734 24870 24800 24802 20913 28689 +24735 24871 24801 24803 20914 28690 +24736 24872 24802 24804 20915 28691 +24737 24873 24803 24805 20916 28692 +24738 24874 24804 24806 20917 28693 +24739 24875 24805 24807 20918 28694 +24740 24876 24806 24808 20919 28695 +24741 24877 24807 24809 20920 28696 +24742 24878 24808 24810 20921 28697 +24743 24879 24809 24811 20922 28698 +24744 24880 24810 24812 20923 28699 +24745 24881 24811 24813 20924 28700 +24746 24882 24812 24814 20925 28701 +24747 24883 24813 24815 20926 28702 +24748 24884 24814 24816 20927 28703 +24749 24885 24815 24817 20928 28704 +24750 24886 24816 24818 20929 28705 +24751 24887 24817 24819 20930 28706 +24752 24888 24818 24820 20931 28707 +24753 24889 24819 24821 20932 28708 +24754 24890 24820 24822 20933 28709 +24823 24891 24821 24893 20934 28710 +24754 24894 24822 24824 20935 28711 +24755 24895 24823 24825 20936 28712 +24756 24896 24824 24826 20937 28713 +24757 24897 24825 24827 20938 28714 +24758 24898 24826 24828 20939 28715 +24759 24899 24827 24829 20940 28716 +24760 24900 24828 24830 20941 28717 +24761 24901 24829 24831 20942 28718 +24762 24902 24830 24832 20943 28719 +24763 24903 24831 24833 20944 28720 +24764 24904 24832 24834 20945 28721 +24765 24905 24833 24835 20946 28722 +24766 24906 24834 24836 20947 28723 +24767 24907 24835 24837 20948 28724 +24768 24908 24836 24838 20949 28725 +24769 24909 24837 24839 20950 28726 +24770 24910 24838 24840 20951 28727 +24771 24911 24839 24841 20952 28728 +24772 24912 24840 24842 20953 28729 +24773 24913 24841 24843 20954 28730 +24774 24914 24842 24844 20955 28731 +24775 24915 24843 24845 20956 28732 +24776 24916 24844 24846 20957 28733 +24777 24917 24845 24847 20958 28734 +24778 24918 24846 24848 20959 28735 +24779 24919 24847 24849 20960 28736 +24780 24920 24848 24850 20961 28737 +24781 24921 24849 24851 20962 28738 +24782 24922 24850 24852 20963 28739 +24783 24923 24851 24853 20964 28740 +24784 24924 24852 24854 20965 28741 +24785 24925 24853 24855 20966 28742 +24786 24926 24854 24856 20967 28743 +24787 24927 24855 24856 20968 28744 +24788 24928 24857 24858 20969 28745 +24789 24929 24857 24859 20970 28746 +24790 24930 24858 24860 20971 28747 +24791 24931 24859 24861 20972 28748 +24792 24932 24860 24862 20973 28749 +24793 24933 24861 24863 20974 28750 +24794 24934 24862 24864 20975 28751 +24795 24935 24863 24865 20976 28752 +24796 24936 24864 24866 20977 28753 +24797 24937 24865 24867 20978 28754 +24798 24938 24866 24868 20979 28755 +24799 24939 24867 24869 20980 28756 +24800 24940 24868 24870 20981 28757 +24801 24941 24869 24871 20982 28758 +24802 24942 24870 24872 20983 28759 +24803 24943 24871 24873 20984 28760 +24804 24944 24872 24874 20985 28761 +24805 24945 24873 24875 20986 28762 +24806 24946 24874 24876 20987 28763 +24807 24947 24875 24877 20988 28764 +24808 24948 24876 24878 20989 28765 +24809 24949 24877 24879 20990 28766 +24810 24950 24878 24880 20991 28767 +24811 24951 24879 24881 20992 28768 +24812 24952 24880 24882 20993 28769 +24813 24953 24881 24883 20994 28770 +24814 24954 24882 24884 20995 28771 +24815 24955 24883 24885 20996 28772 +24816 24956 24884 24886 20997 28773 +24817 24957 24885 24887 20998 28774 +24818 24958 24886 24888 20999 28775 +24819 24959 24887 24889 21000 28776 +24820 24960 24888 24890 21001 28777 +24821 24961 24889 24891 21002 28778 +24822 24962 24890 24892 21003 28779 +24893 24963 24891 24964 21004 28780 +24822 24965 24892 24894 21005 28781 +24823 24966 24893 24895 21006 28782 +24824 24967 24894 24896 21007 28783 +24825 24968 24895 24897 21008 28784 +24826 24969 24896 24898 21009 28785 +24827 24970 24897 24899 21010 28786 +24828 24971 24898 24900 21011 28787 +24829 24972 24899 24901 21012 28788 +24830 24973 24900 24902 21013 28789 +24831 24974 24901 24903 21014 28790 +24832 24975 24902 24904 21015 28791 +24833 24976 24903 24905 21016 28792 +24834 24977 24904 24906 21017 28793 +24835 24978 24905 24907 21018 28794 +24836 24979 24906 24908 21019 28795 +24837 24980 24907 24909 21020 28796 +24838 24981 24908 24910 21021 28797 +24839 24982 24909 24911 21022 28798 +24840 24983 24910 24912 21023 28799 +24841 24984 24911 24913 21024 28800 +24842 24985 24912 24914 21025 28801 +24843 24986 24913 24915 21026 28802 +24844 24987 24914 24916 21027 28803 +24845 24988 24915 24917 21028 28804 +24846 24989 24916 24918 21029 28805 +24847 24990 24917 24919 21030 28806 +24848 24991 24918 24920 21031 28807 +24849 24992 24919 24921 21032 28808 +24850 24993 24920 24922 21033 28809 +24851 24994 24921 24923 21034 28810 +24852 24995 24922 24924 21035 28811 +24853 24996 24923 24925 21036 28812 +24854 24997 24924 24926 21037 28813 +24855 24998 24925 24927 21038 28814 +24856 24999 24926 24927 21039 28815 +24857 25000 24928 24929 21040 28816 +24858 25001 24928 24930 21041 28817 +24859 25002 24929 24931 21042 28818 +24860 25003 24930 24932 21043 28819 +24861 25004 24931 24933 21044 28820 +24862 25005 24932 24934 21045 28821 +24863 25006 24933 24935 21046 28822 +24864 25007 24934 24936 21047 28823 +24865 25008 24935 24937 21048 28824 +24866 25009 24936 24938 21049 28825 +24867 25010 24937 24939 21050 28826 +24868 25011 24938 24940 21051 28827 +24869 25012 24939 24941 21052 28828 +24870 25013 24940 24942 21053 28829 +24871 25014 24941 24943 21054 28830 +24872 25015 24942 24944 21055 28831 +24873 25016 24943 24945 21056 28832 +24874 25017 24944 24946 21057 28833 +24875 25018 24945 24947 21058 28834 +24876 25019 24946 24948 21059 28835 +24877 25020 24947 24949 21060 28836 +24878 25021 24948 24950 21061 28837 +24879 25022 24949 24951 21062 28838 +24880 25023 24950 24952 21063 28839 +24881 25024 24951 24953 21064 28840 +24882 25025 24952 24954 21065 28841 +24883 25026 24953 24955 21066 28842 +24884 25027 24954 24956 21067 28843 +24885 25028 24955 24957 21068 28844 +24886 25029 24956 24958 21069 28845 +24887 25030 24957 24959 21070 28846 +24888 25031 24958 24960 21071 28847 +24889 25032 24959 24961 21072 28848 +24890 25033 24960 24962 21073 28849 +24891 25034 24961 24963 21074 28850 +24892 25035 24962 24964 21075 28851 +24892 25036 24963 24965 21076 28852 +24893 25037 24964 24966 21077 28853 +24894 25038 24965 24967 21078 28854 +24895 25039 24966 24968 21079 28855 +24896 25040 24967 24969 21080 28856 +24897 25041 24968 24970 21081 28857 +24898 25042 24969 24971 21082 28858 +24899 25043 24970 24972 21083 28859 +24900 25044 24971 24973 21084 28860 +24901 25045 24972 24974 21085 28861 +24902 25046 24973 24975 21086 28862 +24903 25047 24974 24976 21087 28863 +24904 25048 24975 24977 21088 28864 +24905 25049 24976 24978 21089 28865 +24906 25050 24977 24979 21090 28866 +24907 25051 24978 24980 21091 28867 +24908 25052 24979 24981 21092 28868 +24909 25053 24980 24982 21093 28869 +24910 25054 24981 24983 21094 28870 +24911 25055 24982 24984 21095 28871 +24912 25056 24983 24985 21096 28872 +24913 25057 24984 24986 21097 28873 +24914 25058 24985 24987 21098 28874 +24915 25059 24986 24988 21099 28875 +24916 25060 24987 24989 21100 28876 +24917 25061 24988 24990 21101 28877 +24918 25062 24989 24991 21102 28878 +24919 25063 24990 24992 21103 28879 +24920 25064 24991 24993 21104 28880 +24921 25065 24992 24994 21105 28881 +24922 25066 24993 24995 21106 28882 +24923 25067 24994 24996 21107 28883 +24924 25068 24995 24997 21108 28884 +24925 25069 24996 24998 21109 28885 +24926 25070 24997 24999 21110 28886 +24927 25071 24998 24999 21111 28887 +24928 25072 25000 25001 21112 28888 +24929 25073 25000 25002 21113 28889 +24930 25074 25001 25003 21114 28890 +24931 25075 25002 25004 21115 28891 +24932 25076 25003 25005 21116 28892 +24933 25077 25004 25006 21117 28893 +24934 25078 25005 25007 21118 28894 +24935 25079 25006 25008 21119 28895 +24936 25080 25007 25009 21120 28896 +24937 25081 25008 25010 21121 28897 +24938 25082 25009 25011 21122 28898 +24939 25083 25010 25012 21123 28899 +24940 25084 25011 25013 21124 28900 +24941 25085 25012 25014 21125 28901 +24942 25086 25013 25015 21126 28902 +24943 25087 25014 25016 21127 28903 +24944 25088 25015 25017 21128 28904 +24945 25089 25016 25018 21129 28905 +24946 25090 25017 25019 21130 28906 +24947 25091 25018 25020 21131 28907 +24948 25092 25019 25021 21132 28908 +24949 25093 25020 25022 21133 28909 +24950 25094 25021 25023 21134 28910 +24951 25095 25022 25024 21135 28911 +24952 25096 25023 25025 21136 28912 +24953 25097 25024 25026 21137 28913 +24954 25098 25025 25027 21138 28914 +24955 25099 25026 25028 21139 28915 +24956 25100 25027 25029 21140 28916 +24957 25101 25028 25030 21141 28917 +24958 25102 25029 25031 21142 28918 +24959 25103 25030 25032 21143 28919 +24960 25104 25031 25033 21144 28920 +24961 25105 25032 25034 21145 28921 +24962 25106 25033 25035 21146 28922 +24963 25107 25034 25036 21147 28923 +24964 25108 25035 25037 21148 28924 +24965 25109 25036 25038 21149 28925 +24966 25110 25037 25039 21150 28926 +24967 25111 25038 25040 21151 28927 +24968 25112 25039 25041 21152 28928 +24969 25113 25040 25042 21153 28929 +24970 25114 25041 25043 21154 28930 +24971 25115 25042 25044 21155 28931 +24972 25116 25043 25045 21156 28932 +24973 25117 25044 25046 21157 28933 +24974 25118 25045 25047 21158 28934 +24975 25119 25046 25048 21159 28935 +24976 25120 25047 25049 21160 28936 +24977 25121 25048 25050 21161 28937 +24978 25122 25049 25051 21162 28938 +24979 25123 25050 25052 21163 28939 +24980 25124 25051 25053 21164 28940 +24981 25125 25052 25054 21165 28941 +24982 25126 25053 25055 21166 28942 +24983 25127 25054 25056 21167 28943 +24984 25128 25055 25057 21168 28944 +24985 25129 25056 25058 21169 28945 +24986 25130 25057 25059 21170 28946 +24987 25131 25058 25060 21171 28947 +24988 25132 25059 25061 21172 28948 +24989 25133 25060 25062 21173 28949 +24990 25134 25061 25063 21174 28950 +24991 25135 25062 25064 21175 28951 +24992 25136 25063 25065 21176 28952 +24993 25137 25064 25066 21177 28953 +24994 25138 25065 25067 21178 28954 +24995 25139 25066 25068 21179 28955 +24996 25140 25067 25069 21180 28956 +24997 25141 25068 25070 21181 28957 +24998 25142 25069 25071 21182 28958 +24999 25143 25070 25071 21183 28959 +25000 25144 25072 25073 21184 28960 +25001 25145 25072 25074 21185 28961 +25002 25146 25073 25075 21186 28962 +25003 25147 25074 25076 21187 28963 +25004 25148 25075 25077 21188 28964 +25005 25149 25076 25078 21189 28965 +25006 25150 25077 25079 21190 28966 +25007 25151 25078 25080 21191 28967 +25008 25152 25079 25081 21192 28968 +25009 25153 25080 25082 21193 28969 +25010 25154 25081 25083 21194 28970 +25011 25155 25082 25084 21195 28971 +25012 25156 25083 25085 21196 28972 +25013 25157 25084 25086 21197 28973 +25014 25158 25085 25087 21198 28974 +25015 25159 25086 25088 21199 28975 +25016 25160 25087 25089 21200 28976 +25017 25161 25088 25090 21201 28977 +25018 25162 25089 25091 21202 28978 +25019 25163 25090 25092 21203 28979 +25020 25164 25091 25093 21204 28980 +25021 25165 25092 25094 21205 28981 +25022 25166 25093 25095 21206 28982 +25023 25167 25094 25096 21207 28983 +25024 25168 25095 25097 21208 28984 +25025 25169 25096 25098 21209 28985 +25026 25170 25097 25099 21210 28986 +25027 25171 25098 25100 21211 28987 +25028 25172 25099 25101 21212 28988 +25029 25173 25100 25102 21213 28989 +25030 25174 25101 25103 21214 28990 +25031 25175 25102 25104 21215 28991 +25032 25176 25103 25105 21216 28992 +25033 25177 25104 25106 21217 28993 +25034 25178 25105 25107 21218 28994 +25035 25179 25106 25108 21219 28995 +25036 25180 25107 25109 21220 28996 +25037 25181 25108 25110 21221 28997 +25038 25182 25109 25111 21222 28998 +25039 25183 25110 25112 21223 28999 +25040 25184 25111 25113 21224 29000 +25041 25185 25112 25114 21225 29001 +25042 25186 25113 25115 21226 29002 +25043 25187 25114 25116 21227 29003 +25044 25188 25115 25117 21228 29004 +25045 25189 25116 25118 21229 29005 +25046 25190 25117 25119 21230 29006 +25047 25191 25118 25120 21231 29007 +25048 25192 25119 25121 21232 29008 +25049 25193 25120 25122 21233 29009 +25050 25194 25121 25123 21234 29010 +25051 25195 25122 25124 21235 29011 +25052 25196 25123 25125 21236 29012 +25053 25197 25124 25126 21237 29013 +25054 25198 25125 25127 21238 29014 +25055 25199 25126 25128 21239 29015 +25056 25200 25127 25129 21240 29016 +25057 25201 25128 25130 21241 29017 +25058 25202 25129 25131 21242 29018 +25059 25203 25130 25132 21243 29019 +25060 25204 25131 25133 21244 29020 +25061 25205 25132 25134 21245 29021 +25062 25206 25133 25135 21246 29022 +25063 25207 25134 25136 21247 29023 +25064 25208 25135 25137 21248 29024 +25065 25209 25136 25138 21249 29025 +25066 25210 25137 25139 21250 29026 +25067 25211 25138 25140 21251 29027 +25068 25212 25139 25141 21252 29028 +25069 25213 25140 25142 21253 29029 +25070 25214 25141 25143 21254 29030 +25071 25215 25142 25143 21255 29031 +25072 25216 25144 25145 21256 29032 +25073 25217 25144 25146 21257 29033 +25074 25218 25145 25147 21258 29034 +25075 25219 25146 25148 21259 29035 +25076 25220 25147 25149 21260 29036 +25077 25221 25148 25150 21261 29037 +25078 25222 25149 25151 21262 29038 +25079 25223 25150 25152 21263 29039 +25080 25224 25151 25153 21264 29040 +25081 25225 25152 25154 21265 29041 +25082 25226 25153 25155 21266 29042 +25083 25227 25154 25156 21267 29043 +25084 25228 25155 25157 21268 29044 +25085 25229 25156 25158 21269 29045 +25086 25230 25157 25159 21270 29046 +25087 25231 25158 25160 21271 29047 +25088 25232 25159 25161 21272 29048 +25089 25233 25160 25162 21273 29049 +25090 25234 25161 25163 21274 29050 +25091 25235 25162 25164 21275 29051 +25092 25236 25163 25165 21276 29052 +25093 25237 25164 25166 21277 29053 +25094 25238 25165 25167 21278 29054 +25095 25239 25166 25168 21279 29055 +25096 25240 25167 25169 21280 29056 +25097 25241 25168 25170 21281 29057 +25098 25242 25169 25171 21282 29058 +25099 25243 25170 25172 21283 29059 +25100 25244 25171 25173 21284 29060 +25101 25245 25172 25174 21285 29061 +25102 25246 25173 25175 21286 29062 +25103 25247 25174 25176 21287 29063 +25104 25248 25175 25177 21288 29064 +25105 25249 25176 25178 21289 29065 +25106 25250 25177 25179 21290 29066 +25107 25251 25178 25180 21291 29067 +25108 25252 25179 25181 21292 29068 +25109 25253 25180 25182 21293 29069 +25110 25254 25181 25183 21294 29070 +25111 25255 25182 25184 21295 29071 +25112 25256 25183 25185 21296 29072 +25113 25257 25184 25186 21297 29073 +25114 25258 25185 25187 21298 29074 +25115 25259 25186 25188 21299 29075 +25116 25260 25187 25189 21300 29076 +25117 25261 25188 25190 21301 29077 +25118 25262 25189 25191 21302 29078 +25119 25263 25190 25192 21303 29079 +25120 25264 25191 25193 21304 29080 +25121 25265 25192 25194 21305 29081 +25122 25266 25193 25195 21306 29082 +25123 25267 25194 25196 21307 29083 +25124 25268 25195 25197 21308 29084 +25125 25269 25196 25198 21309 29085 +25126 25270 25197 25199 21310 29086 +25127 25271 25198 25200 21311 29087 +25128 25272 25199 25201 21312 29088 +25129 25273 25200 25202 21313 29089 +25130 25274 25201 25203 21314 29090 +25131 25275 25202 25204 21315 29091 +25132 25276 25203 25205 21316 29092 +25133 25277 25204 25206 21317 29093 +25134 25278 25205 25207 21318 29094 +25135 25279 25206 25208 21319 29095 +25136 25280 25207 25209 21320 29096 +25137 25281 25208 25210 21321 29097 +25138 25282 25209 25211 21322 29098 +25139 25283 25210 25212 21323 29099 +25140 25284 25211 25213 21324 29100 +25141 25285 25212 25214 21325 29101 +25142 25286 25213 25215 21326 29102 +25143 25287 25214 25215 21327 29103 +25144 25288 25216 25217 21328 29104 +25145 25289 25216 25218 21329 29105 +25146 25290 25217 25219 21330 29106 +25147 25291 25218 25220 21331 29107 +25148 25292 25219 25221 21332 29108 +25149 25293 25220 25222 21333 29109 +25150 25294 25221 25223 21334 29110 +25151 25295 25222 25224 21335 29111 +25152 25296 25223 25225 21336 29112 +25153 25297 25224 25226 21337 29113 +25154 25298 25225 25227 21338 29114 +25155 25299 25226 25228 21339 29115 +25156 25300 25227 25229 21340 29116 +25157 25301 25228 25230 21341 29117 +25158 25302 25229 25231 21342 29118 +25159 25303 25230 25232 21343 29119 +25160 25304 25231 25233 21344 29120 +25161 25305 25232 25234 21345 29121 +25162 25306 25233 25235 21346 29122 +25163 25307 25234 25236 21347 29123 +25164 25308 25235 25237 21348 29124 +25165 25309 25236 25238 21349 29125 +25166 25310 25237 25239 21350 29126 +25167 25311 25238 25240 21351 29127 +25168 25312 25239 25241 21352 29128 +25169 25313 25240 25242 21353 29129 +25170 25314 25241 25243 21354 29130 +25171 25315 25242 25244 21355 29131 +25172 25316 25243 25245 21356 29132 +25173 25317 25244 25246 21357 29133 +25174 25318 25245 25247 21358 29134 +25175 25319 25246 25248 21359 29135 +25176 25320 25247 25249 21360 29136 +25177 25321 25248 25250 21361 29137 +25178 25322 25249 25251 21362 29138 +25179 25323 25250 25252 21363 29139 +25180 25324 25251 25253 21364 29140 +25181 25325 25252 25254 21365 29141 +25182 25326 25253 25255 21366 29142 +25183 25327 25254 25256 21367 29143 +25184 25328 25255 25257 21368 29144 +25185 25329 25256 25258 21369 29145 +25186 25330 25257 25259 21370 29146 +25187 25331 25258 25260 21371 29147 +25188 25332 25259 25261 21372 29148 +25189 25333 25260 25262 21373 29149 +25190 25334 25261 25263 21374 29150 +25191 25335 25262 25264 21375 29151 +25192 25336 25263 25265 21376 29152 +25193 25337 25264 25266 21377 29153 +25194 25338 25265 25267 21378 29154 +25195 25339 25266 25268 21379 29155 +25196 25340 25267 25269 21380 29156 +25197 25341 25268 25270 21381 29157 +25198 25342 25269 25271 21382 29158 +25199 25343 25270 25272 21383 29159 +25200 25344 25271 25273 21384 29160 +25201 25345 25272 25274 21385 29161 +25202 25346 25273 25275 21386 29162 +25203 25347 25274 25276 21387 29163 +25204 25348 25275 25277 21388 29164 +25205 25349 25276 25278 21389 29165 +25206 25350 25277 25279 21390 29166 +25207 25351 25278 25280 21391 29167 +25208 25352 25279 25281 21392 29168 +25209 25353 25280 25282 21393 29169 +25210 25354 25281 25283 21394 29170 +25211 25355 25282 25284 21395 29171 +25212 25356 25283 25285 21396 29172 +25213 25357 25284 25286 21397 29173 +25214 25358 25285 25287 21398 29174 +25215 25359 25286 25287 21399 29175 +25216 25360 25288 25289 21400 29176 +25217 25361 25288 25290 21401 29177 +25218 25362 25289 25291 21402 29178 +25219 25363 25290 25292 21403 29179 +25220 25364 25291 25293 21404 29180 +25221 25365 25292 25294 21405 29181 +25222 25366 25293 25295 21406 29182 +25223 25367 25294 25296 21407 29183 +25224 25368 25295 25297 21408 29184 +25225 25369 25296 25298 21409 29185 +25226 25370 25297 25299 21410 29186 +25227 25371 25298 25300 21411 29187 +25228 25372 25299 25301 21412 29188 +25229 25373 25300 25302 21413 29189 +25230 25374 25301 25303 21414 29190 +25231 25375 25302 25304 21415 29191 +25232 25376 25303 25305 21416 29192 +25233 25377 25304 25306 21417 29193 +25234 25378 25305 25307 21418 29194 +25235 25379 25306 25308 21419 29195 +25236 25380 25307 25309 21420 29196 +25237 25381 25308 25310 21421 29197 +25238 25382 25309 25311 21422 29198 +25239 25383 25310 25312 21423 29199 +25240 25384 25311 25313 21424 29200 +25241 25385 25312 25314 21425 29201 +25242 25386 25313 25315 21426 29202 +25243 25387 25314 25316 21427 29203 +25244 25388 25315 25317 21428 29204 +25245 25389 25316 25318 21429 29205 +25246 25390 25317 25319 21430 29206 +25247 25391 25318 25320 21431 29207 +25248 25392 25319 25321 21432 29208 +25249 25393 25320 25322 21433 29209 +25250 25394 25321 25323 21434 29210 +25251 25395 25322 25324 21435 29211 +25252 25396 25323 25325 21436 29212 +25253 25397 25324 25326 21437 29213 +25254 25398 25325 25327 21438 29214 +25255 25399 25326 25328 21439 29215 +25256 25400 25327 25329 21440 29216 +25257 25401 25328 25330 21441 29217 +25258 25402 25329 25331 21442 29218 +25259 25403 25330 25332 21443 29219 +25260 25404 25331 25333 21444 29220 +25261 25405 25332 25334 21445 29221 +25262 25406 25333 25335 21446 29222 +25263 25407 25334 25336 21447 29223 +25264 25408 25335 25337 21448 29224 +25265 25409 25336 25338 21449 29225 +25266 25410 25337 25339 21450 29226 +25267 25411 25338 25340 21451 29227 +25268 25412 25339 25341 21452 29228 +25269 25413 25340 25342 21453 29229 +25270 25414 25341 25343 21454 29230 +25271 25415 25342 25344 21455 29231 +25272 25416 25343 25345 21456 29232 +25273 25417 25344 25346 21457 29233 +25274 25418 25345 25347 21458 29234 +25275 25419 25346 25348 21459 29235 +25276 25420 25347 25349 21460 29236 +25277 25421 25348 25350 21461 29237 +25278 25422 25349 25351 21462 29238 +25279 25423 25350 25352 21463 29239 +25280 25424 25351 25353 21464 29240 +25281 25425 25352 25354 21465 29241 +25282 25426 25353 25355 21466 29242 +25283 25427 25354 25356 21467 29243 +25284 25428 25355 25357 21468 29244 +25285 25429 25356 25358 21469 29245 +25286 25430 25357 25359 21470 29246 +25287 25431 25358 25359 21471 29247 +25288 25432 25360 25361 21472 29248 +25289 25433 25360 25362 21473 29249 +25290 25434 25361 25363 21474 29250 +25291 25435 25362 25364 21475 29251 +25292 25436 25363 25365 21476 29252 +25293 25437 25364 25366 21477 29253 +25294 25438 25365 25367 21478 29254 +25295 25439 25366 25368 21479 29255 +25296 25440 25367 25369 21480 29256 +25297 25441 25368 25370 21481 29257 +25298 25442 25369 25371 21482 29258 +25299 25443 25370 25372 21483 29259 +25300 25444 25371 25373 21484 29260 +25301 25445 25372 25374 21485 29261 +25302 25446 25373 25375 21486 29262 +25303 25447 25374 25376 21487 29263 +25304 25448 25375 25377 21488 29264 +25305 25449 25376 25378 21489 29265 +25306 25450 25377 25379 21490 29266 +25307 25451 25378 25380 21491 29267 +25308 25452 25379 25381 21492 29268 +25309 25453 25380 25382 21493 29269 +25310 25454 25381 25383 21494 29270 +25311 25455 25382 25384 21495 29271 +25312 25456 25383 25385 21496 29272 +25313 25457 25384 25386 21497 29273 +25314 25458 25385 25387 21498 29274 +25315 25459 25386 25388 21499 29275 +25316 25460 25387 25389 21500 29276 +25317 25461 25388 25390 21501 29277 +25318 25462 25389 25391 21502 29278 +25319 25463 25390 25392 21503 29279 +25320 25464 25391 25393 21504 29280 +25321 25465 25392 25394 21505 29281 +25322 25466 25393 25395 21506 29282 +25323 25467 25394 25396 21507 29283 +25324 25468 25395 25397 21508 29284 +25325 25469 25396 25398 21509 29285 +25326 25470 25397 25399 21510 29286 +25327 25471 25398 25400 21511 29287 +25328 25472 25399 25401 21512 29288 +25329 25473 25400 25402 21513 29289 +25330 25474 25401 25403 21514 29290 +25331 25475 25402 25404 21515 29291 +25332 25476 25403 25405 21516 29292 +25333 25477 25404 25406 21517 29293 +25334 25478 25405 25407 21518 29294 +25335 25479 25406 25408 21519 29295 +25336 25480 25407 25409 21520 29296 +25337 25481 25408 25410 21521 29297 +25338 25482 25409 25411 21522 29298 +25339 25483 25410 25412 21523 29299 +25340 25484 25411 25413 21524 29300 +25341 25485 25412 25414 21525 29301 +25342 25486 25413 25415 21526 29302 +25343 25487 25414 25416 21527 29303 +25344 25488 25415 25417 21528 29304 +25345 25489 25416 25418 21529 29305 +25346 25490 25417 25419 21530 29306 +25347 25491 25418 25420 21531 29307 +25348 25492 25419 25421 21532 29308 +25349 25493 25420 25422 21533 29309 +25350 25494 25421 25423 21534 29310 +25351 25495 25422 25424 21535 29311 +25352 25496 25423 25425 21536 29312 +25353 25497 25424 25426 21537 29313 +25354 25498 25425 25427 21538 29314 +25355 25499 25426 25428 21539 29315 +25356 25500 25427 25429 21540 29316 +25357 25501 25428 25430 21541 29317 +25358 25502 25429 25431 21542 29318 +25359 25503 25430 25431 21543 29319 +25360 25504 25432 25433 21544 29320 +25361 25505 25432 25434 21545 29321 +25362 25506 25433 25435 21546 29322 +25363 25507 25434 25436 21547 29323 +25364 25508 25435 25437 21548 29324 +25365 25509 25436 25438 21549 29325 +25366 25510 25437 25439 21550 29326 +25367 25511 25438 25440 21551 29327 +25368 25512 25439 25441 21552 29328 +25369 25513 25440 25442 21553 29329 +25370 25514 25441 25443 21554 29330 +25371 25515 25442 25444 21555 29331 +25372 25516 25443 25445 21556 29332 +25373 25517 25444 25446 21557 29333 +25374 25518 25445 25447 21558 29334 +25375 25519 25446 25448 21559 29335 +25376 25520 25447 25449 21560 29336 +25377 25521 25448 25450 21561 29337 +25378 25522 25449 25451 21562 29338 +25379 25523 25450 25452 21563 29339 +25380 25524 25451 25453 21564 29340 +25381 25525 25452 25454 21565 29341 +25382 25526 25453 25455 21566 29342 +25383 25527 25454 25456 21567 29343 +25384 25528 25455 25457 21568 29344 +25385 25529 25456 25458 21569 29345 +25386 25530 25457 25459 21570 29346 +25387 25531 25458 25460 21571 29347 +25388 25532 25459 25461 21572 29348 +25389 25533 25460 25462 21573 29349 +25390 25534 25461 25463 21574 29350 +25391 25535 25462 25464 21575 29351 +25392 25536 25463 25465 21576 29352 +25393 25537 25464 25466 21577 29353 +25394 25538 25465 25467 21578 29354 +25395 25539 25466 25468 21579 29355 +25396 25540 25467 25469 21580 29356 +25397 25541 25468 25470 21581 29357 +25398 25542 25469 25471 21582 29358 +25399 25543 25470 25472 21583 29359 +25400 25544 25471 25473 21584 29360 +25401 25545 25472 25474 21585 29361 +25402 25546 25473 25475 21586 29362 +25403 25547 25474 25476 21587 29363 +25404 25548 25475 25477 21588 29364 +25405 25549 25476 25478 21589 29365 +25406 25550 25477 25479 21590 29366 +25407 25551 25478 25480 21591 29367 +25408 25552 25479 25481 21592 29368 +25409 25553 25480 25482 21593 29369 +25410 25554 25481 25483 21594 29370 +25411 25555 25482 25484 21595 29371 +25412 25556 25483 25485 21596 29372 +25413 25557 25484 25486 21597 29373 +25414 25558 25485 25487 21598 29374 +25415 25559 25486 25488 21599 29375 +25416 25560 25487 25489 21600 29376 +25417 25561 25488 25490 21601 29377 +25418 25562 25489 25491 21602 29378 +25419 25563 25490 25492 21603 29379 +25420 25564 25491 25493 21604 29380 +25421 25565 25492 25494 21605 29381 +25422 25566 25493 25495 21606 29382 +25423 25567 25494 25496 21607 29383 +25424 25568 25495 25497 21608 29384 +25425 25569 25496 25498 21609 29385 +25426 25570 25497 25499 21610 29386 +25427 25571 25498 25500 21611 29387 +25428 25572 25499 25501 21612 29388 +25429 25573 25500 25502 21613 29389 +25430 25574 25501 25503 21614 29390 +25431 25575 25502 25503 21615 29391 +25432 25576 25504 25505 21616 29392 +25433 25577 25504 25506 21617 29393 +25434 25578 25505 25507 21618 29394 +25435 25579 25506 25508 21619 29395 +25436 25580 25507 25509 21620 29396 +25437 25581 25508 25510 21621 29397 +25438 25582 25509 25511 21622 29398 +25439 25583 25510 25512 21623 29399 +25440 25584 25511 25513 21624 29400 +25441 25585 25512 25514 21625 29401 +25442 25586 25513 25515 21626 29402 +25443 25587 25514 25516 21627 29403 +25444 25588 25515 25517 21628 29404 +25445 25589 25516 25518 21629 29405 +25446 25590 25517 25519 21630 29406 +25447 25591 25518 25520 21631 29407 +25448 25592 25519 25521 21632 29408 +25449 25593 25520 25522 21633 29409 +25450 25594 25521 25523 21634 29410 +25451 25595 25522 25524 21635 29411 +25452 25596 25523 25525 21636 29412 +25453 25597 25524 25526 21637 29413 +25454 25598 25525 25527 21638 29414 +25455 25599 25526 25528 21639 29415 +25456 25600 25527 25529 21640 29416 +25457 25601 25528 25530 21641 29417 +25458 25602 25529 25531 21642 29418 +25459 25603 25530 25532 21643 29419 +25460 25604 25531 25533 21644 29420 +25461 25605 25532 25534 21645 29421 +25462 25606 25533 25535 21646 29422 +25463 25607 25534 25536 21647 29423 +25464 25608 25535 25537 21648 29424 +25465 25609 25536 25538 21649 29425 +25466 25610 25537 25539 21650 29426 +25467 25611 25538 25540 21651 29427 +25468 25612 25539 25541 21652 29428 +25469 25613 25540 25542 21653 29429 +25470 25614 25541 25543 21654 29430 +25471 25615 25542 25544 21655 29431 +25472 25616 25543 25545 21656 29432 +25473 25617 25544 25546 21657 29433 +25474 25618 25545 25547 21658 29434 +25475 25619 25546 25548 21659 29435 +25476 25620 25547 25549 21660 29436 +25477 25621 25548 25550 21661 29437 +25478 25622 25549 25551 21662 29438 +25479 25623 25550 25552 21663 29439 +25480 25624 25551 25553 21664 29440 +25481 25625 25552 25554 21665 29441 +25482 25626 25553 25555 21666 29442 +25483 25627 25554 25556 21667 29443 +25484 25628 25555 25557 21668 29444 +25485 25629 25556 25558 21669 29445 +25486 25630 25557 25559 21670 29446 +25487 25631 25558 25560 21671 29447 +25488 25632 25559 25561 21672 29448 +25489 25633 25560 25562 21673 29449 +25490 25634 25561 25563 21674 29450 +25491 25635 25562 25564 21675 29451 +25492 25636 25563 25565 21676 29452 +25493 25637 25564 25566 21677 29453 +25494 25638 25565 25567 21678 29454 +25495 25639 25566 25568 21679 29455 +25496 25640 25567 25569 21680 29456 +25497 25641 25568 25570 21681 29457 +25498 25642 25569 25571 21682 29458 +25499 25643 25570 25572 21683 29459 +25500 25644 25571 25573 21684 29460 +25501 25645 25572 25574 21685 29461 +25502 25646 25573 25575 21686 29462 +25503 25647 25574 25575 21687 29463 +25504 25648 25576 25577 21688 29464 +25505 25649 25576 25578 21689 29465 +25506 25650 25577 25579 21690 29466 +25507 25651 25578 25580 21691 29467 +25508 25652 25579 25581 21692 29468 +25509 25653 25580 25582 21693 29469 +25510 25654 25581 25583 21694 29470 +25511 25655 25582 25584 21695 29471 +25512 25656 25583 25585 21696 29472 +25513 25657 25584 25586 21697 29473 +25514 25658 25585 25587 21698 29474 +25515 25659 25586 25588 21699 29475 +25516 25660 25587 25589 21700 29476 +25517 25661 25588 25590 21701 29477 +25518 25662 25589 25591 21702 29478 +25519 25663 25590 25592 21703 29479 +25520 25664 25591 25593 21704 29480 +25521 25665 25592 25594 21705 29481 +25522 25666 25593 25595 21706 29482 +25523 25667 25594 25596 21707 29483 +25524 25668 25595 25597 21708 29484 +25525 25669 25596 25598 21709 29485 +25526 25670 25597 25599 21710 29486 +25527 25671 25598 25600 21711 29487 +25528 25672 25599 25601 21712 29488 +25529 25673 25600 25602 21713 29489 +25530 25674 25601 25603 21714 29490 +25531 25675 25602 25604 21715 29491 +25532 25676 25603 25605 21716 29492 +25533 25677 25604 25606 21717 29493 +25534 25678 25605 25607 21718 29494 +25535 25679 25606 25608 21719 29495 +25536 25680 25607 25609 21720 29496 +25537 25681 25608 25610 21721 29497 +25538 25682 25609 25611 21722 29498 +25539 25683 25610 25612 21723 29499 +25540 25684 25611 25613 21724 29500 +25541 25685 25612 25614 21725 29501 +25542 25686 25613 25615 21726 29502 +25543 25687 25614 25616 21727 29503 +25544 25688 25615 25617 21728 29504 +25545 25689 25616 25618 21729 29505 +25546 25690 25617 25619 21730 29506 +25547 25691 25618 25620 21731 29507 +25548 25692 25619 25621 21732 29508 +25549 25693 25620 25622 21733 29509 +25550 25694 25621 25623 21734 29510 +25551 25695 25622 25624 21735 29511 +25552 25696 25623 25625 21736 29512 +25553 25697 25624 25626 21737 29513 +25554 25698 25625 25627 21738 29514 +25555 25699 25626 25628 21739 29515 +25556 25700 25627 25629 21740 29516 +25557 25701 25628 25630 21741 29517 +25558 25702 25629 25631 21742 29518 +25559 25703 25630 25632 21743 29519 +25560 25704 25631 25633 21744 29520 +25561 25705 25632 25634 21745 29521 +25562 25706 25633 25635 21746 29522 +25563 25707 25634 25636 21747 29523 +25564 25708 25635 25637 21748 29524 +25565 25709 25636 25638 21749 29525 +25566 25710 25637 25639 21750 29526 +25567 25711 25638 25640 21751 29527 +25568 25712 25639 25641 21752 29528 +25569 25713 25640 25642 21753 29529 +25570 25714 25641 25643 21754 29530 +25571 25715 25642 25644 21755 29531 +25572 25716 25643 25645 21756 29532 +25573 25717 25644 25646 21757 29533 +25574 25718 25645 25647 21758 29534 +25575 25719 25646 25647 21759 29535 +25576 25720 25648 25649 21760 29536 +25577 25721 25648 25650 21761 29537 +25578 25722 25649 25651 21762 29538 +25579 25723 25650 25652 21763 29539 +25580 25724 25651 25653 21764 29540 +25581 25725 25652 25654 21765 29541 +25582 25726 25653 25655 21766 29542 +25583 25727 25654 25656 21767 29543 +25584 25728 25655 25657 21768 29544 +25585 25729 25656 25658 21769 29545 +25586 25730 25657 25659 21770 29546 +25587 25731 25658 25660 21771 29547 +25588 25732 25659 25661 21772 29548 +25589 25733 25660 25662 21773 29549 +25590 25734 25661 25663 21774 29550 +25591 25735 25662 25664 21775 29551 +25592 25736 25663 25665 21776 29552 +25593 25737 25664 25666 21777 29553 +25594 25738 25665 25667 21778 29554 +25595 25739 25666 25668 21779 29555 +25596 25740 25667 25669 21780 29556 +25597 25741 25668 25670 21781 29557 +25598 25742 25669 25671 21782 29558 +25599 25743 25670 25672 21783 29559 +25600 25744 25671 25673 21784 29560 +25601 25745 25672 25674 21785 29561 +25602 25746 25673 25675 21786 29562 +25603 25747 25674 25676 21787 29563 +25604 25748 25675 25677 21788 29564 +25605 25749 25676 25678 21789 29565 +25606 25750 25677 25679 21790 29566 +25607 25751 25678 25680 21791 29567 +25608 25752 25679 25681 21792 29568 +25609 25753 25680 25682 21793 29569 +25610 25754 25681 25683 21794 29570 +25611 25755 25682 25684 21795 29571 +25612 25756 25683 25685 21796 29572 +25613 25757 25684 25686 21797 29573 +25614 25758 25685 25687 21798 29574 +25615 25759 25686 25688 21799 29575 +25616 25760 25687 25689 21800 29576 +25617 25761 25688 25690 21801 29577 +25618 25762 25689 25691 21802 29578 +25619 25763 25690 25692 21803 29579 +25620 25764 25691 25693 21804 29580 +25621 25765 25692 25694 21805 29581 +25622 25766 25693 25695 21806 29582 +25623 25767 25694 25696 21807 29583 +25624 25768 25695 25697 21808 29584 +25625 25769 25696 25698 21809 29585 +25626 25770 25697 25699 21810 29586 +25627 25771 25698 25700 21811 29587 +25628 25772 25699 25701 21812 29588 +25629 25773 25700 25702 21813 29589 +25630 25774 25701 25703 21814 29590 +25631 25775 25702 25704 21815 29591 +25632 25776 25703 25705 21816 29592 +25633 25777 25704 25706 21817 29593 +25634 25778 25705 25707 21818 29594 +25635 25779 25706 25708 21819 29595 +25636 25780 25707 25709 21820 29596 +25637 25781 25708 25710 21821 29597 +25638 25782 25709 25711 21822 29598 +25639 25783 25710 25712 21823 29599 +25640 25784 25711 25713 21824 29600 +25641 25785 25712 25714 21825 29601 +25642 25786 25713 25715 21826 29602 +25643 25787 25714 25716 21827 29603 +25644 25788 25715 25717 21828 29604 +25645 25789 25716 25718 21829 29605 +25646 25790 25717 25719 21830 29606 +25647 25791 25718 25719 21831 29607 +25648 25792 25720 25721 21832 29608 +25649 25793 25720 25722 21833 29609 +25650 25794 25721 25723 21834 29610 +25651 25795 25722 25724 21835 29611 +25652 25796 25723 25725 21836 29612 +25653 25797 25724 25726 21837 29613 +25654 25798 25725 25727 21838 29614 +25655 25799 25726 25728 21839 29615 +25656 25800 25727 25729 21840 29616 +25657 25801 25728 25730 21841 29617 +25658 25802 25729 25731 21842 29618 +25659 25803 25730 25732 21843 29619 +25660 25804 25731 25733 21844 29620 +25661 25805 25732 25734 21845 29621 +25662 25806 25733 25735 21846 29622 +25663 25807 25734 25736 21847 29623 +25664 25808 25735 25737 21848 29624 +25665 25809 25736 25738 21849 29625 +25666 25810 25737 25739 21850 29626 +25667 25811 25738 25740 21851 29627 +25668 25812 25739 25741 21852 29628 +25669 25813 25740 25742 21853 29629 +25670 25814 25741 25743 21854 29630 +25671 25815 25742 25744 21855 29631 +25672 25816 25743 25745 21856 29632 +25673 25817 25744 25746 21857 29633 +25674 25818 25745 25747 21858 29634 +25675 25819 25746 25748 21859 29635 +25676 25820 25747 25749 21860 29636 +25677 25821 25748 25750 21861 29637 +25678 25822 25749 25751 21862 29638 +25679 25823 25750 25752 21863 29639 +25680 25824 25751 25753 21864 29640 +25681 25825 25752 25754 21865 29641 +25682 25826 25753 25755 21866 29642 +25683 25827 25754 25756 21867 29643 +25684 25828 25755 25757 21868 29644 +25685 25829 25756 25758 21869 29645 +25686 25830 25757 25759 21870 29646 +25687 25831 25758 25760 21871 29647 +25688 25832 25759 25761 21872 29648 +25689 25833 25760 25762 21873 29649 +25690 25834 25761 25763 21874 29650 +25691 25835 25762 25764 21875 29651 +25692 25836 25763 25765 21876 29652 +25693 25837 25764 25766 21877 29653 +25694 25838 25765 25767 21878 29654 +25695 25839 25766 25768 21879 29655 +25696 25840 25767 25769 21880 29656 +25697 25841 25768 25770 21881 29657 +25698 25842 25769 25771 21882 29658 +25699 25843 25770 25772 21883 29659 +25700 25844 25771 25773 21884 29660 +25701 25845 25772 25774 21885 29661 +25702 25846 25773 25775 21886 29662 +25703 25847 25774 25776 21887 29663 +25704 25848 25775 25777 21888 29664 +25705 25849 25776 25778 21889 29665 +25706 25850 25777 25779 21890 29666 +25707 25851 25778 25780 21891 29667 +25708 25852 25779 25781 21892 29668 +25709 25853 25780 25782 21893 29669 +25710 25854 25781 25783 21894 29670 +25711 25855 25782 25784 21895 29671 +25712 25856 25783 25785 21896 29672 +25713 25857 25784 25786 21897 29673 +25714 25858 25785 25787 21898 29674 +25715 25859 25786 25788 21899 29675 +25716 25860 25787 25789 21900 29676 +25717 25861 25788 25790 21901 29677 +25718 25862 25789 25791 21902 29678 +25719 25863 25790 25791 21903 29679 +25720 25864 25792 25793 21904 29680 +25721 25865 25792 25794 21905 29681 +25722 25866 25793 25795 21906 29682 +25723 25867 25794 25796 21907 29683 +25724 25868 25795 25797 21908 29684 +25725 25869 25796 25798 21909 29685 +25726 25870 25797 25799 21910 29686 +25727 25871 25798 25800 21911 29687 +25728 25872 25799 25801 21912 29688 +25729 25873 25800 25802 21913 29689 +25730 25874 25801 25803 21914 29690 +25731 25875 25802 25804 21915 29691 +25732 25876 25803 25805 21916 29692 +25733 25877 25804 25806 21917 29693 +25734 25878 25805 25807 21918 29694 +25735 25879 25806 25808 21919 29695 +25736 25880 25807 25809 21920 29696 +25737 25881 25808 25810 21921 29697 +25738 25882 25809 25811 21922 29698 +25739 25883 25810 25812 21923 29699 +25740 25884 25811 25813 21924 29700 +25741 25885 25812 25814 21925 29701 +25742 25886 25813 25815 21926 29702 +25743 25887 25814 25816 21927 29703 +25744 25888 25815 25817 21928 29704 +25745 25889 25816 25818 21929 29705 +25746 25890 25817 25819 21930 29706 +25747 25891 25818 25820 21931 29707 +25748 25892 25819 25821 21932 29708 +25749 25893 25820 25822 21933 29709 +25750 25894 25821 25823 21934 29710 +25751 25895 25822 25824 21935 29711 +25752 25896 25823 25825 21936 29712 +25753 25897 25824 25826 21937 29713 +25754 25898 25825 25827 21938 29714 +25755 25899 25826 25828 21939 29715 +25756 25900 25827 25829 21940 29716 +25757 25901 25828 25830 21941 29717 +25758 25902 25829 25831 21942 29718 +25759 25903 25830 25832 21943 29719 +25760 25904 25831 25833 21944 29720 +25761 25905 25832 25834 21945 29721 +25762 25906 25833 25835 21946 29722 +25763 25907 25834 25836 21947 29723 +25764 25908 25835 25837 21948 29724 +25765 25909 25836 25838 21949 29725 +25766 25910 25837 25839 21950 29726 +25767 25911 25838 25840 21951 29727 +25768 25912 25839 25841 21952 29728 +25769 25913 25840 25842 21953 29729 +25770 25914 25841 25843 21954 29730 +25771 25915 25842 25844 21955 29731 +25772 25916 25843 25845 21956 29732 +25773 25917 25844 25846 21957 29733 +25774 25918 25845 25847 21958 29734 +25775 25919 25846 25848 21959 29735 +25776 25920 25847 25849 21960 29736 +25777 25921 25848 25850 21961 29737 +25778 25922 25849 25851 21962 29738 +25779 25923 25850 25852 21963 29739 +25780 25924 25851 25853 21964 29740 +25781 25925 25852 25854 21965 29741 +25782 25926 25853 25855 21966 29742 +25783 25927 25854 25856 21967 29743 +25784 25928 25855 25857 21968 29744 +25785 25929 25856 25858 21969 29745 +25786 25930 25857 25859 21970 29746 +25787 25931 25858 25860 21971 29747 +25788 25932 25859 25861 21972 29748 +25789 25933 25860 25862 21973 29749 +25790 25934 25861 25863 21974 29750 +25791 25935 25862 25863 21975 29751 +25792 25936 25864 25865 21976 29752 +25793 25937 25864 25866 21977 29753 +25794 25938 25865 25867 21978 29754 +25795 25939 25866 25868 21979 29755 +25796 25940 25867 25869 21980 29756 +25797 25941 25868 25870 21981 29757 +25798 25942 25869 25871 21982 29758 +25799 25943 25870 25872 21983 29759 +25800 25944 25871 25873 21984 29760 +25801 25945 25872 25874 21985 29761 +25802 25946 25873 25875 21986 29762 +25803 25947 25874 25876 21987 29763 +25804 25948 25875 25877 21988 29764 +25805 25949 25876 25878 21989 29765 +25806 25950 25877 25879 21990 29766 +25807 25951 25878 25880 21991 29767 +25808 25952 25879 25881 21992 29768 +25809 25953 25880 25882 21993 29769 +25810 25954 25881 25883 21994 29770 +25811 25955 25882 25884 21995 29771 +25812 25956 25883 25885 21996 29772 +25813 25957 25884 25886 21997 29773 +25814 25958 25885 25887 21998 29774 +25815 25959 25886 25888 21999 29775 +25816 25960 25887 25889 22000 29776 +25817 25961 25888 25890 22001 29777 +25818 25962 25889 25891 22002 29778 +25819 25963 25890 25892 22003 29779 +25820 25964 25891 25893 22004 29780 +25821 25965 25892 25894 22005 29781 +25822 25966 25893 25895 22006 29782 +25823 25967 25894 25896 22007 29783 +25824 25968 25895 25897 22008 29784 +25825 25969 25896 25898 22009 29785 +25826 25970 25897 25899 22010 29786 +25827 25971 25898 25900 22011 29787 +25828 25972 25899 25901 22012 29788 +25829 25973 25900 25902 22013 29789 +25830 25974 25901 25903 22014 29790 +25831 25975 25902 25904 22015 29791 +25832 25976 25903 25905 22016 29792 +25833 25977 25904 25906 22017 29793 +25834 25978 25905 25907 22018 29794 +25835 25979 25906 25908 22019 29795 +25836 25980 25907 25909 22020 29796 +25837 25981 25908 25910 22021 29797 +25838 25982 25909 25911 22022 29798 +25839 25983 25910 25912 22023 29799 +25840 25984 25911 25913 22024 29800 +25841 25985 25912 25914 22025 29801 +25842 25986 25913 25915 22026 29802 +25843 25987 25914 25916 22027 29803 +25844 25988 25915 25917 22028 29804 +25845 25989 25916 25918 22029 29805 +25846 25990 25917 25919 22030 29806 +25847 25991 25918 25920 22031 29807 +25848 25992 25919 25921 22032 29808 +25849 25993 25920 25922 22033 29809 +25850 25994 25921 25923 22034 29810 +25851 25995 25922 25924 22035 29811 +25852 25996 25923 25925 22036 29812 +25853 25997 25924 25926 22037 29813 +25854 25998 25925 25927 22038 29814 +25855 25999 25926 25928 22039 29815 +25856 26000 25927 25929 22040 29816 +25857 26001 25928 25930 22041 29817 +25858 26002 25929 25931 22042 29818 +25859 26003 25930 25932 22043 29819 +25860 26004 25931 25933 22044 29820 +25861 26005 25932 25934 22045 29821 +25862 26006 25933 25935 22046 29822 +25863 26007 25934 25935 22047 29823 +25864 26008 25936 25937 22048 29824 +25865 26009 25936 25938 22049 29825 +25866 26010 25937 25939 22050 29826 +25867 26011 25938 25940 22051 29827 +25868 26012 25939 25941 22052 29828 +25869 26013 25940 25942 22053 29829 +25870 26014 25941 25943 22054 29830 +25871 26015 25942 25944 22055 29831 +25872 26016 25943 25945 22056 29832 +25873 26017 25944 25946 22057 29833 +25874 26018 25945 25947 22058 29834 +25875 26019 25946 25948 22059 29835 +25876 26020 25947 25949 22060 29836 +25877 26021 25948 25950 22061 29837 +25878 26022 25949 25951 22062 29838 +25879 26023 25950 25952 22063 29839 +25880 26024 25951 25953 22064 29840 +25881 26025 25952 25954 22065 29841 +25882 26026 25953 25955 22066 29842 +25883 26027 25954 25956 22067 29843 +25884 26028 25955 25957 22068 29844 +25885 26029 25956 25958 22069 29845 +25886 26030 25957 25959 22070 29846 +25887 26031 25958 25960 22071 29847 +25888 26032 25959 25961 22072 29848 +25889 26033 25960 25962 22073 29849 +25890 26034 25961 25963 22074 29850 +25891 26035 25962 25964 22075 29851 +25892 26036 25963 25965 22076 29852 +25893 26037 25964 25966 22077 29853 +25894 26038 25965 25967 22078 29854 +25895 26039 25966 25968 22079 29855 +25896 26040 25967 25969 22080 29856 +25897 26041 25968 25970 22081 29857 +25898 26042 25969 25971 22082 29858 +25899 26043 25970 25972 22083 29859 +25900 26044 25971 25973 22084 29860 +25901 26045 25972 25974 22085 29861 +25902 26046 25973 25975 22086 29862 +25903 26047 25974 25976 22087 29863 +25904 26048 25975 25977 22088 29864 +25905 26049 25976 25978 22089 29865 +25906 26050 25977 25979 22090 29866 +25907 26051 25978 25980 22091 29867 +25908 26052 25979 25981 22092 29868 +25909 26053 25980 25982 22093 29869 +25910 26054 25981 25983 22094 29870 +25911 26055 25982 25984 22095 29871 +25912 26056 25983 25985 22096 29872 +25913 26057 25984 25986 22097 29873 +25914 26058 25985 25987 22098 29874 +25915 26059 25986 25988 22099 29875 +25916 26060 25987 25989 22100 29876 +25917 26061 25988 25990 22101 29877 +25918 26062 25989 25991 22102 29878 +25919 26063 25990 25992 22103 29879 +25920 26064 25991 25993 22104 29880 +25921 26065 25992 25994 22105 29881 +25922 26066 25993 25995 22106 29882 +25923 26067 25994 25996 22107 29883 +25924 26068 25995 25997 22108 29884 +25925 26069 25996 25998 22109 29885 +25926 26070 25997 25999 22110 29886 +25927 26071 25998 26000 22111 29887 +25928 26072 25999 26001 22112 29888 +25929 26073 26000 26002 22113 29889 +25930 26074 26001 26003 22114 29890 +25931 26075 26002 26004 22115 29891 +25932 26076 26003 26005 22116 29892 +25933 26077 26004 26006 22117 29893 +25934 26078 26005 26007 22118 29894 +25935 26079 26006 26007 22119 29895 +25936 26080 26008 26009 22120 29896 +25937 26081 26008 26010 22121 29897 +25938 26082 26009 26011 22122 29898 +25939 26083 26010 26012 22123 29899 +25940 26084 26011 26013 22124 29900 +25941 26085 26012 26014 22125 29901 +25942 26086 26013 26015 22126 29902 +25943 26087 26014 26016 22127 29903 +25944 26088 26015 26017 22128 29904 +25945 26089 26016 26018 22129 29905 +25946 26090 26017 26019 22130 29906 +25947 26091 26018 26020 22131 29907 +25948 26092 26019 26021 22132 29908 +25949 26093 26020 26022 22133 29909 +25950 26094 26021 26023 22134 29910 +25951 26095 26022 26024 22135 29911 +25952 26096 26023 26025 22136 29912 +25953 26097 26024 26026 22137 29913 +25954 26098 26025 26027 22138 29914 +25955 26099 26026 26028 22139 29915 +25956 26100 26027 26029 22140 29916 +25957 26101 26028 26030 22141 29917 +25958 26102 26029 26031 22142 29918 +25959 26103 26030 26032 22143 29919 +25960 26104 26031 26033 22144 29920 +25961 26105 26032 26034 22145 29921 +25962 26106 26033 26035 22146 29922 +25963 26107 26034 26036 22147 29923 +25964 26108 26035 26037 22148 29924 +25965 26109 26036 26038 22149 29925 +25966 26110 26037 26039 22150 29926 +25967 26111 26038 26040 22151 29927 +25968 26112 26039 26041 22152 29928 +25969 26113 26040 26042 22153 29929 +25970 26114 26041 26043 22154 29930 +25971 26115 26042 26044 22155 29931 +25972 26116 26043 26045 22156 29932 +25973 26117 26044 26046 22157 29933 +25974 26118 26045 26047 22158 29934 +25975 26119 26046 26048 22159 29935 +25976 26120 26047 26049 22160 29936 +25977 26121 26048 26050 22161 29937 +25978 26122 26049 26051 22162 29938 +25979 26123 26050 26052 22163 29939 +25980 26124 26051 26053 22164 29940 +25981 26125 26052 26054 22165 29941 +25982 26126 26053 26055 22166 29942 +25983 26127 26054 26056 22167 29943 +25984 26128 26055 26057 22168 29944 +25985 26129 26056 26058 22169 29945 +25986 26130 26057 26059 22170 29946 +25987 26131 26058 26060 22171 29947 +25988 26132 26059 26061 22172 29948 +25989 26133 26060 26062 22173 29949 +25990 26134 26061 26063 22174 29950 +25991 26135 26062 26064 22175 29951 +25992 26136 26063 26065 22176 29952 +25993 26137 26064 26066 22177 29953 +25994 26138 26065 26067 22178 29954 +25995 26139 26066 26068 22179 29955 +25996 26140 26067 26069 22180 29956 +25997 26141 26068 26070 22181 29957 +25998 26142 26069 26071 22182 29958 +25999 26143 26070 26072 22183 29959 +26000 26144 26071 26073 22184 29960 +26001 26145 26072 26074 22185 29961 +26002 26146 26073 26075 22186 29962 +26003 26147 26074 26076 22187 29963 +26004 26148 26075 26077 22188 29964 +26005 26149 26076 26078 22189 29965 +26006 26150 26077 26079 22190 29966 +26007 26151 26078 26079 22191 29967 +26008 26152 26080 26081 22192 29968 +26009 26153 26080 26082 22193 29969 +26010 26154 26081 26083 22194 29970 +26011 26155 26082 26084 22195 29971 +26012 26156 26083 26085 22196 29972 +26013 26157 26084 26086 22197 29973 +26014 26158 26085 26087 22198 29974 +26015 26159 26086 26088 22199 29975 +26016 26160 26087 26089 22200 29976 +26017 26161 26088 26090 22201 29977 +26018 26162 26089 26091 22202 29978 +26019 26163 26090 26092 22203 29979 +26020 26164 26091 26093 22204 29980 +26021 26165 26092 26094 22205 29981 +26022 26166 26093 26095 22206 29982 +26023 26167 26094 26096 22207 29983 +26024 26168 26095 26097 22208 29984 +26025 26169 26096 26098 22209 29985 +26026 26170 26097 26099 22210 29986 +26027 26171 26098 26100 22211 29987 +26028 26172 26099 26101 22212 29988 +26029 26173 26100 26102 22213 29989 +26030 26174 26101 26103 22214 29990 +26031 26175 26102 26104 22215 29991 +26032 26176 26103 26105 22216 29992 +26033 26177 26104 26106 22217 29993 +26034 26178 26105 26107 22218 29994 +26035 26179 26106 26108 22219 29995 +26036 26180 26107 26109 22220 29996 +26037 26181 26108 26110 22221 29997 +26038 26182 26109 26111 22222 29998 +26039 26183 26110 26112 22223 29999 +26040 26184 26111 26113 22224 30000 +26041 26185 26112 26114 22225 30001 +26042 26186 26113 26115 22226 30002 +26043 26187 26114 26116 22227 30003 +26044 26188 26115 26117 22228 30004 +26045 26189 26116 26118 22229 30005 +26046 26190 26117 26119 22230 30006 +26047 26191 26118 26120 22231 30007 +26048 26192 26119 26121 22232 30008 +26049 26193 26120 26122 22233 30009 +26050 26194 26121 26123 22234 30010 +26051 26195 26122 26124 22235 30011 +26052 26196 26123 26125 22236 30012 +26053 26197 26124 26126 22237 30013 +26054 26198 26125 26127 22238 30014 +26055 26199 26126 26128 22239 30015 +26056 26200 26127 26129 22240 30016 +26057 26201 26128 26130 22241 30017 +26058 26202 26129 26131 22242 30018 +26059 26203 26130 26132 22243 30019 +26060 26204 26131 26133 22244 30020 +26061 26205 26132 26134 22245 30021 +26062 26206 26133 26135 22246 30022 +26063 26207 26134 26136 22247 30023 +26064 26208 26135 26137 22248 30024 +26065 26209 26136 26138 22249 30025 +26066 26210 26137 26139 22250 30026 +26067 26211 26138 26140 22251 30027 +26068 26212 26139 26141 22252 30028 +26069 26213 26140 26142 22253 30029 +26070 26214 26141 26143 22254 30030 +26071 26215 26142 26144 22255 30031 +26072 26216 26143 26145 22256 30032 +26073 26217 26144 26146 22257 30033 +26074 26218 26145 26147 22258 30034 +26075 26219 26146 26148 22259 30035 +26076 26220 26147 26149 22260 30036 +26077 26221 26148 26150 22261 30037 +26078 26222 26149 26151 22262 30038 +26079 26223 26150 26151 22263 30039 +26080 26224 26152 26153 22264 30040 +26081 26225 26152 26154 22265 30041 +26082 26226 26153 26155 22266 30042 +26083 26227 26154 26156 22267 30043 +26084 26228 26155 26157 22268 30044 +26085 26229 26156 26158 22269 30045 +26086 26230 26157 26159 22270 30046 +26087 26231 26158 26160 22271 30047 +26088 26232 26159 26161 22272 30048 +26089 26233 26160 26162 22273 30049 +26090 26234 26161 26163 22274 30050 +26091 26235 26162 26164 22275 30051 +26092 26236 26163 26165 22276 30052 +26093 26237 26164 26166 22277 30053 +26094 26238 26165 26167 22278 30054 +26095 26239 26166 26168 22279 30055 +26096 26240 26167 26169 22280 30056 +26097 26241 26168 26170 22281 30057 +26098 26242 26169 26171 22282 30058 +26099 26243 26170 26172 22283 30059 +26100 26244 26171 26173 22284 30060 +26101 26245 26172 26174 22285 30061 +26102 26246 26173 26175 22286 30062 +26103 26247 26174 26176 22287 30063 +26104 26248 26175 26177 22288 30064 +26105 26249 26176 26178 22289 30065 +26106 26250 26177 26179 22290 30066 +26107 26251 26178 26180 22291 30067 +26108 26252 26179 26181 22292 30068 +26109 26253 26180 26182 22293 30069 +26110 26254 26181 26183 22294 30070 +26111 26255 26182 26184 22295 30071 +26112 26256 26183 26185 22296 30072 +26113 26257 26184 26186 22297 30073 +26114 26258 26185 26187 22298 30074 +26115 26259 26186 26188 22299 30075 +26116 26260 26187 26189 22300 30076 +26117 26261 26188 26190 22301 30077 +26118 26262 26189 26191 22302 30078 +26119 26263 26190 26192 22303 30079 +26120 26264 26191 26193 22304 30080 +26121 26265 26192 26194 22305 30081 +26122 26266 26193 26195 22306 30082 +26123 26267 26194 26196 22307 30083 +26124 26268 26195 26197 22308 30084 +26125 26269 26196 26198 22309 30085 +26126 26270 26197 26199 22310 30086 +26127 26271 26198 26200 22311 30087 +26128 26272 26199 26201 22312 30088 +26129 26273 26200 26202 22313 30089 +26130 26274 26201 26203 22314 30090 +26131 26275 26202 26204 22315 30091 +26132 26276 26203 26205 22316 30092 +26133 26277 26204 26206 22317 30093 +26134 26278 26205 26207 22318 30094 +26135 26279 26206 26208 22319 30095 +26136 26280 26207 26209 22320 30096 +26137 26281 26208 26210 22321 30097 +26138 26282 26209 26211 22322 30098 +26139 26283 26210 26212 22323 30099 +26140 26284 26211 26213 22324 30100 +26141 26285 26212 26214 22325 30101 +26142 26286 26213 26215 22326 30102 +26143 26287 26214 26216 22327 30103 +26144 26288 26215 26217 22328 30104 +26145 26289 26216 26218 22329 30105 +26146 26290 26217 26219 22330 30106 +26147 26291 26218 26220 22331 30107 +26148 26292 26219 26221 22332 30108 +26149 26293 26220 26222 22333 30109 +26150 26294 26221 26223 22334 30110 +26151 26295 26222 26223 22335 30111 +26152 26296 26224 26225 22336 30112 +26153 26297 26224 26226 22337 30113 +26154 26298 26225 26227 22338 30114 +26155 26299 26226 26228 22339 30115 +26156 26300 26227 26229 22340 30116 +26157 26301 26228 26230 22341 30117 +26158 26302 26229 26231 22342 30118 +26159 26303 26230 26232 22343 30119 +26160 26304 26231 26233 22344 30120 +26161 26305 26232 26234 22345 30121 +26162 26306 26233 26235 22346 30122 +26163 26307 26234 26236 22347 30123 +26164 26308 26235 26237 22348 30124 +26165 26309 26236 26238 22349 30125 +26166 26310 26237 26239 22350 30126 +26167 26311 26238 26240 22351 30127 +26168 26312 26239 26241 22352 30128 +26169 26313 26240 26242 22353 30129 +26170 26314 26241 26243 22354 30130 +26171 26315 26242 26244 22355 30131 +26172 26316 26243 26245 22356 30132 +26173 26317 26244 26246 22357 30133 +26174 26318 26245 26247 22358 30134 +26175 26319 26246 26248 22359 30135 +26176 26320 26247 26249 22360 30136 +26177 26321 26248 26250 22361 30137 +26178 26322 26249 26251 22362 30138 +26179 26323 26250 26252 22363 30139 +26180 26324 26251 26253 22364 30140 +26181 26325 26252 26254 22365 30141 +26182 26326 26253 26255 22366 30142 +26183 26327 26254 26256 22367 30143 +26184 26328 26255 26257 22368 30144 +26185 26329 26256 26258 22369 30145 +26186 26330 26257 26259 22370 30146 +26187 26331 26258 26260 22371 30147 +26188 26332 26259 26261 22372 30148 +26189 26333 26260 26262 22373 30149 +26190 26334 26261 26263 22374 30150 +26191 26335 26262 26264 22375 30151 +26192 26336 26263 26265 22376 30152 +26193 26337 26264 26266 22377 30153 +26194 26338 26265 26267 22378 30154 +26195 26339 26266 26268 22379 30155 +26196 26340 26267 26269 22380 30156 +26197 26341 26268 26270 22381 30157 +26198 26342 26269 26271 22382 30158 +26199 26343 26270 26272 22383 30159 +26200 26344 26271 26273 22384 30160 +26201 26345 26272 26274 22385 30161 +26202 26346 26273 26275 22386 30162 +26203 26347 26274 26276 22387 30163 +26204 26348 26275 26277 22388 30164 +26205 26349 26276 26278 22389 30165 +26206 26350 26277 26279 22390 30166 +26207 26351 26278 26280 22391 30167 +26208 26352 26279 26281 22392 30168 +26209 26353 26280 26282 22393 30169 +26210 26354 26281 26283 22394 30170 +26211 26355 26282 26284 22395 30171 +26212 26356 26283 26285 22396 30172 +26213 26357 26284 26286 22397 30173 +26214 26358 26285 26287 22398 30174 +26215 26359 26286 26288 22399 30175 +26216 26360 26287 26289 22400 30176 +26217 26361 26288 26290 22401 30177 +26218 26362 26289 26291 22402 30178 +26219 26363 26290 26292 22403 30179 +26220 26364 26291 26293 22404 30180 +26221 26365 26292 26294 22405 30181 +26222 26366 26293 26295 22406 30182 +26223 26367 26294 26295 22407 30183 +26224 26368 26296 26297 22408 30184 +26225 26369 26296 26298 22409 30185 +26226 26370 26297 26299 22410 30186 +26227 26371 26298 26300 22411 30187 +26228 26372 26299 26301 22412 30188 +26229 26373 26300 26302 22413 30189 +26230 26374 26301 26303 22414 30190 +26231 26375 26302 26304 22415 30191 +26232 26376 26303 26305 22416 30192 +26233 26377 26304 26306 22417 30193 +26234 26378 26305 26307 22418 30194 +26235 26379 26306 26308 22419 30195 +26236 26380 26307 26309 22420 30196 +26237 26381 26308 26310 22421 30197 +26238 26382 26309 26311 22422 30198 +26239 26383 26310 26312 22423 30199 +26240 26384 26311 26313 22424 30200 +26241 26385 26312 26314 22425 30201 +26242 26386 26313 26315 22426 30202 +26243 26387 26314 26316 22427 30203 +26244 26388 26315 26317 22428 30204 +26245 26389 26316 26318 22429 30205 +26246 26390 26317 26319 22430 30206 +26247 26391 26318 26320 22431 30207 +26248 26392 26319 26321 22432 30208 +26249 26393 26320 26322 22433 30209 +26250 26394 26321 26323 22434 30210 +26251 26395 26322 26324 22435 30211 +26252 26396 26323 26325 22436 30212 +26253 26397 26324 26326 22437 30213 +26254 26398 26325 26327 22438 30214 +26255 26399 26326 26328 22439 30215 +26256 26400 26327 26329 22440 30216 +26257 26401 26328 26330 22441 30217 +26258 26402 26329 26331 22442 30218 +26259 26403 26330 26332 22443 30219 +26260 26404 26331 26333 22444 30220 +26261 26405 26332 26334 22445 30221 +26262 26406 26333 26335 22446 30222 +26263 26407 26334 26336 22447 30223 +26264 26408 26335 26337 22448 30224 +26265 26409 26336 26338 22449 30225 +26266 26410 26337 26339 22450 30226 +26267 26411 26338 26340 22451 30227 +26268 26412 26339 26341 22452 30228 +26269 26413 26340 26342 22453 30229 +26270 26414 26341 26343 22454 30230 +26271 26415 26342 26344 22455 30231 +26272 26416 26343 26345 22456 30232 +26273 26417 26344 26346 22457 30233 +26274 26418 26345 26347 22458 30234 +26275 26419 26346 26348 22459 30235 +26276 26420 26347 26349 22460 30236 +26277 26421 26348 26350 22461 30237 +26278 26422 26349 26351 22462 30238 +26279 26423 26350 26352 22463 30239 +26280 26424 26351 26353 22464 30240 +26281 26425 26352 26354 22465 30241 +26282 26426 26353 26355 22466 30242 +26283 26427 26354 26356 22467 30243 +26284 26428 26355 26357 22468 30244 +26285 26429 26356 26358 22469 30245 +26286 26430 26357 26359 22470 30246 +26287 26431 26358 26360 22471 30247 +26288 26432 26359 26361 22472 30248 +26289 26433 26360 26362 22473 30249 +26290 26434 26361 26363 22474 30250 +26291 26435 26362 26364 22475 30251 +26292 26436 26363 26365 22476 30252 +26293 26437 26364 26366 22477 30253 +26294 26438 26365 26367 22478 30254 +26295 26439 26366 26367 22479 30255 +26296 26440 26368 26369 22480 30256 +26297 26441 26368 26370 22481 30257 +26298 26442 26369 26371 22482 30258 +26299 26443 26370 26372 22483 30259 +26300 26444 26371 26373 22484 30260 +26301 26445 26372 26374 22485 30261 +26302 26446 26373 26375 22486 30262 +26303 26447 26374 26376 22487 30263 +26304 26448 26375 26377 22488 30264 +26305 26449 26376 26378 22489 30265 +26306 26450 26377 26379 22490 30266 +26307 26451 26378 26380 22491 30267 +26308 26452 26379 26381 22492 30268 +26309 26453 26380 26382 22493 30269 +26310 26454 26381 26383 22494 30270 +26311 26455 26382 26384 22495 30271 +26312 26456 26383 26385 22496 30272 +26313 26457 26384 26386 22497 30273 +26314 26458 26385 26387 22498 30274 +26315 26459 26386 26388 22499 30275 +26316 26460 26387 26389 22500 30276 +26317 26461 26388 26390 22501 30277 +26318 26462 26389 26391 22502 30278 +26319 26463 26390 26392 22503 30279 +26320 26464 26391 26393 22504 30280 +26321 26465 26392 26394 22505 30281 +26322 26466 26393 26395 22506 30282 +26323 26467 26394 26396 22507 30283 +26324 26468 26395 26397 22508 30284 +26325 26469 26396 26398 22509 30285 +26326 26470 26397 26399 22510 30286 +26327 26471 26398 26400 22511 30287 +26328 26472 26399 26401 22512 30288 +26329 26473 26400 26402 22513 30289 +26330 26474 26401 26403 22514 30290 +26331 26475 26402 26404 22515 30291 +26332 26476 26403 26405 22516 30292 +26333 26477 26404 26406 22517 30293 +26334 26478 26405 26407 22518 30294 +26335 26479 26406 26408 22519 30295 +26336 26480 26407 26409 22520 30296 +26337 26481 26408 26410 22521 30297 +26338 26482 26409 26411 22522 30298 +26339 26483 26410 26412 22523 30299 +26340 26484 26411 26413 22524 30300 +26341 26485 26412 26414 22525 30301 +26342 26486 26413 26415 22526 30302 +26343 26487 26414 26416 22527 30303 +26344 26488 26415 26417 22528 30304 +26345 26489 26416 26418 22529 30305 +26346 26490 26417 26419 22530 30306 +26347 26491 26418 26420 22531 30307 +26348 26492 26419 26421 22532 30308 +26349 26493 26420 26422 22533 30309 +26350 26494 26421 26423 22534 30310 +26351 26495 26422 26424 22535 30311 +26352 26496 26423 26425 22536 30312 +26353 26497 26424 26426 22537 30313 +26354 26498 26425 26427 22538 30314 +26355 26499 26426 26428 22539 30315 +26356 26500 26427 26429 22540 30316 +26357 26501 26428 26430 22541 30317 +26358 26502 26429 26431 22542 30318 +26359 26503 26430 26432 22543 30319 +26360 26504 26431 26433 22544 30320 +26361 26505 26432 26434 22545 30321 +26362 26506 26433 26435 22546 30322 +26363 26507 26434 26436 22547 30323 +26364 26508 26435 26437 22548 30324 +26365 26509 26436 26438 22549 30325 +26366 26510 26437 26439 22550 30326 +26367 26511 26438 26439 22551 30327 +26368 26512 26440 26441 22552 30328 +26369 26513 26440 26442 22553 30329 +26370 26514 26441 26443 22554 30330 +26371 26515 26442 26444 22555 30331 +26372 26516 26443 26445 22556 30332 +26373 26517 26444 26446 22557 30333 +26374 26518 26445 26447 22558 30334 +26375 26519 26446 26448 22559 30335 +26376 26520 26447 26449 22560 30336 +26377 26521 26448 26450 22561 30337 +26378 26522 26449 26451 22562 30338 +26379 26523 26450 26452 22563 30339 +26380 26524 26451 26453 22564 30340 +26381 26525 26452 26454 22565 30341 +26382 26526 26453 26455 22566 30342 +26383 26527 26454 26456 22567 30343 +26384 26528 26455 26457 22568 30344 +26385 26529 26456 26458 22569 30345 +26386 26530 26457 26459 22570 30346 +26387 26531 26458 26460 22571 30347 +26388 26532 26459 26461 22572 30348 +26389 26533 26460 26462 22573 30349 +26390 26534 26461 26463 22574 30350 +26391 26535 26462 26464 22575 30351 +26392 26536 26463 26465 22576 30352 +26393 26537 26464 26466 22577 30353 +26394 26538 26465 26467 22578 30354 +26395 26539 26466 26468 22579 30355 +26396 26540 26467 26469 22580 30356 +26397 26541 26468 26470 22581 30357 +26398 26542 26469 26471 22582 30358 +26399 26543 26470 26472 22583 30359 +26400 26544 26471 26473 22584 30360 +26401 26545 26472 26474 22585 30361 +26402 26546 26473 26475 22586 30362 +26403 26547 26474 26476 22587 30363 +26404 26548 26475 26477 22588 30364 +26405 26549 26476 26478 22589 30365 +26406 26550 26477 26479 22590 30366 +26407 26551 26478 26480 22591 30367 +26408 26552 26479 26481 22592 30368 +26409 26553 26480 26482 22593 30369 +26410 26554 26481 26483 22594 30370 +26411 26555 26482 26484 22595 30371 +26412 26556 26483 26485 22596 30372 +26413 26557 26484 26486 22597 30373 +26414 26558 26485 26487 22598 30374 +26415 26559 26486 26488 22599 30375 +26416 26560 26487 26489 22600 30376 +26417 26561 26488 26490 22601 30377 +26418 26562 26489 26491 22602 30378 +26419 26563 26490 26492 22603 30379 +26420 26564 26491 26493 22604 30380 +26421 26565 26492 26494 22605 30381 +26422 26566 26493 26495 22606 30382 +26423 26567 26494 26496 22607 30383 +26424 26568 26495 26497 22608 30384 +26425 26569 26496 26498 22609 30385 +26426 26570 26497 26499 22610 30386 +26427 26571 26498 26500 22611 30387 +26428 26572 26499 26501 22612 30388 +26429 26573 26500 26502 22613 30389 +26430 26574 26501 26503 22614 30390 +26431 26575 26502 26504 22615 30391 +26432 26576 26503 26505 22616 30392 +26433 26577 26504 26506 22617 30393 +26434 26578 26505 26507 22618 30394 +26435 26579 26506 26508 22619 30395 +26436 26580 26507 26509 22620 30396 +26437 26581 26508 26510 22621 30397 +26438 26582 26509 26511 22622 30398 +26439 26583 26510 26511 22623 30399 +26440 26584 26512 26513 22624 30400 +26441 26585 26512 26514 22625 30401 +26442 26586 26513 26515 22626 30402 +26443 26587 26514 26516 22627 30403 +26444 26588 26515 26517 22628 30404 +26445 26589 26516 26518 22629 30405 +26446 26590 26517 26519 22630 30406 +26447 26591 26518 26520 22631 30407 +26448 26592 26519 26521 22632 30408 +26449 26593 26520 26522 22633 30409 +26450 26594 26521 26523 22634 30410 +26451 26595 26522 26524 22635 30411 +26452 26596 26523 26525 22636 30412 +26453 26597 26524 26526 22637 30413 +26454 26598 26525 26527 22638 30414 +26455 26599 26526 26528 22639 30415 +26456 26600 26527 26529 22640 30416 +26457 26601 26528 26530 22641 30417 +26458 26602 26529 26531 22642 30418 +26459 26603 26530 26532 22643 30419 +26460 26604 26531 26533 22644 30420 +26461 26605 26532 26534 22645 30421 +26462 26606 26533 26535 22646 30422 +26463 26607 26534 26536 22647 30423 +26464 26608 26535 26537 22648 30424 +26465 26609 26536 26538 22649 30425 +26466 26610 26537 26539 22650 30426 +26467 26611 26538 26540 22651 30427 +26468 26612 26539 26541 22652 30428 +26469 26613 26540 26542 22653 30429 +26470 26614 26541 26543 22654 30430 +26471 26615 26542 26544 22655 30431 +26472 26616 26543 26545 22656 30432 +26473 26617 26544 26546 22657 30433 +26474 26618 26545 26547 22658 30434 +26475 26619 26546 26548 22659 30435 +26476 26620 26547 26549 22660 30436 +26477 26621 26548 26550 22661 30437 +26478 26622 26549 26551 22662 30438 +26479 26623 26550 26552 22663 30439 +26480 26624 26551 26553 22664 30440 +26481 26625 26552 26554 22665 30441 +26482 26626 26553 26555 22666 30442 +26483 26627 26554 26556 22667 30443 +26484 26628 26555 26557 22668 30444 +26485 26629 26556 26558 22669 30445 +26486 26630 26557 26559 22670 30446 +26487 26631 26558 26560 22671 30447 +26488 26632 26559 26561 22672 30448 +26489 26633 26560 26562 22673 30449 +26490 26634 26561 26563 22674 30450 +26491 26635 26562 26564 22675 30451 +26492 26636 26563 26565 22676 30452 +26493 26637 26564 26566 22677 30453 +26494 26638 26565 26567 22678 30454 +26495 26639 26566 26568 22679 30455 +26496 26640 26567 26569 22680 30456 +26497 26641 26568 26570 22681 30457 +26498 26642 26569 26571 22682 30458 +26499 26643 26570 26572 22683 30459 +26500 26644 26571 26573 22684 30460 +26501 26645 26572 26574 22685 30461 +26502 26646 26573 26575 22686 30462 +26503 26647 26574 26576 22687 30463 +26504 26648 26575 26577 22688 30464 +26505 26649 26576 26578 22689 30465 +26506 26650 26577 26579 22690 30466 +26507 26651 26578 26580 22691 30467 +26508 26652 26579 26581 22692 30468 +26509 26653 26580 26582 22693 30469 +26510 26654 26581 26583 22694 30470 +26511 26655 26582 26583 22695 30471 +26512 26656 26584 26585 22696 30472 +26513 26657 26584 26586 22697 30473 +26514 26658 26585 26587 22698 30474 +26515 26659 26586 26588 22699 30475 +26516 26660 26587 26589 22700 30476 +26517 26661 26588 26590 22701 30477 +26518 26662 26589 26591 22702 30478 +26519 26663 26590 26592 22703 30479 +26520 26664 26591 26593 22704 30480 +26521 26665 26592 26594 22705 30481 +26522 26666 26593 26595 22706 30482 +26523 26667 26594 26596 22707 30483 +26524 26668 26595 26597 22708 30484 +26525 26669 26596 26598 22709 30485 +26526 26670 26597 26599 22710 30486 +26527 26671 26598 26600 22711 30487 +26528 26672 26599 26601 22712 30488 +26529 26673 26600 26602 22713 30489 +26530 26674 26601 26603 22714 30490 +26531 26675 26602 26604 22715 30491 +26532 26676 26603 26605 22716 30492 +26533 26677 26604 26606 22717 30493 +26534 26678 26605 26607 22718 30494 +26535 26679 26606 26608 22719 30495 +26536 26680 26607 26609 22720 30496 +26537 26681 26608 26610 22721 30497 +26538 26682 26609 26611 22722 30498 +26539 26683 26610 26612 22723 30499 +26540 26684 26611 26613 22724 30500 +26541 26685 26612 26614 22725 30501 +26542 26686 26613 26615 22726 30502 +26543 26687 26614 26616 22727 30503 +26544 26688 26615 26617 22728 30504 +26545 26689 26616 26618 22729 30505 +26546 26690 26617 26619 22730 30506 +26547 26691 26618 26620 22731 30507 +26548 26692 26619 26621 22732 30508 +26549 26693 26620 26622 22733 30509 +26550 26694 26621 26623 22734 30510 +26551 26695 26622 26624 22735 30511 +26552 26696 26623 26625 22736 30512 +26553 26697 26624 26626 22737 30513 +26554 26698 26625 26627 22738 30514 +26555 26699 26626 26628 22739 30515 +26556 26700 26627 26629 22740 30516 +26557 26701 26628 26630 22741 30517 +26558 26702 26629 26631 22742 30518 +26559 26703 26630 26632 22743 30519 +26560 26704 26631 26633 22744 30520 +26561 26705 26632 26634 22745 30521 +26562 26706 26633 26635 22746 30522 +26563 26707 26634 26636 22747 30523 +26564 26708 26635 26637 22748 30524 +26565 26709 26636 26638 22749 30525 +26566 26710 26637 26639 22750 30526 +26567 26711 26638 26640 22751 30527 +26568 26712 26639 26641 22752 30528 +26569 26713 26640 26642 22753 30529 +26570 26714 26641 26643 22754 30530 +26571 26715 26642 26644 22755 30531 +26572 26716 26643 26645 22756 30532 +26573 26717 26644 26646 22757 30533 +26574 26718 26645 26647 22758 30534 +26575 26719 26646 26648 22759 30535 +26576 26720 26647 26649 22760 30536 +26577 26721 26648 26650 22761 30537 +26578 26722 26649 26651 22762 30538 +26579 26723 26650 26652 22763 30539 +26580 26724 26651 26653 22764 30540 +26581 26725 26652 26654 22765 30541 +26582 26726 26653 26655 22766 30542 +26583 26727 26654 26655 22767 30543 +26584 26728 26656 26657 22768 30544 +26585 26729 26656 26658 22769 30545 +26586 26730 26657 26659 22770 30546 +26587 26731 26658 26660 22771 30547 +26588 26732 26659 26661 22772 30548 +26589 26733 26660 26662 22773 30549 +26590 26734 26661 26663 22774 30550 +26591 26735 26662 26664 22775 30551 +26592 26736 26663 26665 22776 30552 +26593 26737 26664 26666 22777 30553 +26594 26738 26665 26667 22778 30554 +26595 26739 26666 26668 22779 30555 +26596 26740 26667 26669 22780 30556 +26597 26741 26668 26670 22781 30557 +26598 26742 26669 26671 22782 30558 +26599 26743 26670 26672 22783 30559 +26600 26744 26671 26673 22784 30560 +26601 26745 26672 26674 22785 30561 +26602 26746 26673 26675 22786 30562 +26603 26747 26674 26676 22787 30563 +26604 26748 26675 26677 22788 30564 +26605 26749 26676 26678 22789 30565 +26606 26750 26677 26679 22790 30566 +26607 26751 26678 26680 22791 30567 +26608 26752 26679 26681 22792 30568 +26609 26753 26680 26682 22793 30569 +26610 26754 26681 26683 22794 30570 +26611 26755 26682 26684 22795 30571 +26612 26756 26683 26685 22796 30572 +26613 26757 26684 26686 22797 30573 +26614 26758 26685 26687 22798 30574 +26615 26759 26686 26688 22799 30575 +26616 26760 26687 26689 22800 30576 +26617 26761 26688 26690 22801 30577 +26618 26762 26689 26691 22802 30578 +26619 26763 26690 26692 22803 30579 +26620 26764 26691 26693 22804 30580 +26621 26765 26692 26694 22805 30581 +26622 26766 26693 26695 22806 30582 +26623 26767 26694 26696 22807 30583 +26624 26768 26695 26697 22808 30584 +26625 26769 26696 26698 22809 30585 +26626 26770 26697 26699 22810 30586 +26627 26771 26698 26700 22811 30587 +26628 26772 26699 26701 22812 30588 +26629 26773 26700 26702 22813 30589 +26630 26774 26701 26703 22814 30590 +26631 26775 26702 26704 22815 30591 +26632 26776 26703 26705 22816 30592 +26633 26777 26704 26706 22817 30593 +26634 26778 26705 26707 22818 30594 +26635 26779 26706 26708 22819 30595 +26636 26780 26707 26709 22820 30596 +26637 26781 26708 26710 22821 30597 +26638 26782 26709 26711 22822 30598 +26639 26783 26710 26712 22823 30599 +26640 26784 26711 26713 22824 30600 +26641 26785 26712 26714 22825 30601 +26642 26786 26713 26715 22826 30602 +26643 26787 26714 26716 22827 30603 +26644 26788 26715 26717 22828 30604 +26645 26789 26716 26718 22829 30605 +26646 26790 26717 26719 22830 30606 +26647 26791 26718 26720 22831 30607 +26648 26792 26719 26721 22832 30608 +26649 26793 26720 26722 22833 30609 +26650 26794 26721 26723 22834 30610 +26651 26795 26722 26724 22835 30611 +26652 26796 26723 26725 22836 30612 +26653 26797 26724 26726 22837 30613 +26654 26798 26725 26727 22838 30614 +26655 26799 26726 26727 22839 30615 +26656 26800 26728 26729 22840 30616 +26657 26801 26728 26730 22841 30617 +26658 26802 26729 26731 22842 30618 +26659 26803 26730 26732 22843 30619 +26660 26804 26731 26733 22844 30620 +26661 26805 26732 26734 22845 30621 +26662 26806 26733 26735 22846 30622 +26663 26807 26734 26736 22847 30623 +26664 26808 26735 26737 22848 30624 +26665 26809 26736 26738 22849 30625 +26666 26810 26737 26739 22850 30626 +26667 26811 26738 26740 22851 30627 +26668 26812 26739 26741 22852 30628 +26669 26813 26740 26742 22853 30629 +26670 26814 26741 26743 22854 30630 +26671 26815 26742 26744 22855 30631 +26672 26816 26743 26745 22856 30632 +26673 26817 26744 26746 22857 30633 +26674 26818 26745 26747 22858 30634 +26675 26819 26746 26748 22859 30635 +26676 26820 26747 26749 22860 30636 +26677 26821 26748 26750 22861 30637 +26678 26822 26749 26751 22862 30638 +26679 26823 26750 26752 22863 30639 +26680 26824 26751 26753 22864 30640 +26681 26825 26752 26754 22865 30641 +26682 26826 26753 26755 22866 30642 +26683 26827 26754 26756 22867 30643 +26684 26828 26755 26757 22868 30644 +26685 26829 26756 26758 22869 30645 +26686 26830 26757 26759 22870 30646 +26687 26831 26758 26760 22871 30647 +26688 26832 26759 26761 22872 30648 +26689 26833 26760 26762 22873 30649 +26690 26834 26761 26763 22874 30650 +26691 26835 26762 26764 22875 30651 +26692 26836 26763 26765 22876 30652 +26693 26837 26764 26766 22877 30653 +26694 26838 26765 26767 22878 30654 +26695 26839 26766 26768 22879 30655 +26696 26840 26767 26769 22880 30656 +26697 26841 26768 26770 22881 30657 +26698 26842 26769 26771 22882 30658 +26699 26843 26770 26772 22883 30659 +26700 26844 26771 26773 22884 30660 +26701 26845 26772 26774 22885 30661 +26702 26846 26773 26775 22886 30662 +26703 26847 26774 26776 22887 30663 +26704 26848 26775 26777 22888 30664 +26705 26849 26776 26778 22889 30665 +26706 26850 26777 26779 22890 30666 +26707 26851 26778 26780 22891 30667 +26708 26852 26779 26781 22892 30668 +26709 26853 26780 26782 22893 30669 +26710 26854 26781 26783 22894 30670 +26711 26855 26782 26784 22895 30671 +26712 26856 26783 26785 22896 30672 +26713 26857 26784 26786 22897 30673 +26714 26858 26785 26787 22898 30674 +26715 26859 26786 26788 22899 30675 +26716 26860 26787 26789 22900 30676 +26717 26861 26788 26790 22901 30677 +26718 26862 26789 26791 22902 30678 +26719 26863 26790 26792 22903 30679 +26720 26864 26791 26793 22904 30680 +26721 26865 26792 26794 22905 30681 +26722 26866 26793 26795 22906 30682 +26723 26867 26794 26796 22907 30683 +26724 26868 26795 26797 22908 30684 +26725 26869 26796 26798 22909 30685 +26726 26870 26797 26799 22910 30686 +26727 26871 26798 26799 22911 30687 +26728 26872 26800 26801 22912 30688 +26729 26873 26800 26802 22913 30689 +26730 26874 26801 26803 22914 30690 +26731 26875 26802 26804 22915 30691 +26732 26876 26803 26805 22916 30692 +26733 26877 26804 26806 22917 30693 +26734 26878 26805 26807 22918 30694 +26735 26879 26806 26808 22919 30695 +26736 26880 26807 26809 22920 30696 +26737 26881 26808 26810 22921 30697 +26738 26882 26809 26811 22922 30698 +26739 26883 26810 26812 22923 30699 +26740 26884 26811 26813 22924 30700 +26741 26885 26812 26814 22925 30701 +26742 26886 26813 26815 22926 30702 +26743 26887 26814 26816 22927 30703 +26744 26888 26815 26817 22928 30704 +26745 26889 26816 26818 22929 30705 +26746 26890 26817 26819 22930 30706 +26747 26891 26818 26820 22931 30707 +26748 26892 26819 26821 22932 30708 +26749 26893 26820 26822 22933 30709 +26750 26894 26821 26823 22934 30710 +26751 26895 26822 26824 22935 30711 +26752 26896 26823 26825 22936 30712 +26753 26897 26824 26826 22937 30713 +26754 26898 26825 26827 22938 30714 +26755 26899 26826 26828 22939 30715 +26756 26900 26827 26829 22940 30716 +26757 26901 26828 26830 22941 30717 +26758 26902 26829 26831 22942 30718 +26759 26903 26830 26832 22943 30719 +26760 26904 26831 26833 22944 30720 +26761 26905 26832 26834 22945 30721 +26762 26906 26833 26835 22946 30722 +26763 26907 26834 26836 22947 30723 +26764 26908 26835 26837 22948 30724 +26765 26909 26836 26838 22949 30725 +26766 26910 26837 26839 22950 30726 +26767 26911 26838 26840 22951 30727 +26768 26912 26839 26841 22952 30728 +26769 26913 26840 26842 22953 30729 +26770 26914 26841 26843 22954 30730 +26771 26915 26842 26844 22955 30731 +26772 26916 26843 26845 22956 30732 +26773 26917 26844 26846 22957 30733 +26774 26918 26845 26847 22958 30734 +26775 26919 26846 26848 22959 30735 +26776 26920 26847 26849 22960 30736 +26777 26921 26848 26850 22961 30737 +26778 26922 26849 26851 22962 30738 +26779 26923 26850 26852 22963 30739 +26780 26924 26851 26853 22964 30740 +26781 26925 26852 26854 22965 30741 +26782 26926 26853 26855 22966 30742 +26783 26927 26854 26856 22967 30743 +26784 26928 26855 26857 22968 30744 +26785 26929 26856 26858 22969 30745 +26786 26930 26857 26859 22970 30746 +26787 26931 26858 26860 22971 30747 +26788 26932 26859 26861 22972 30748 +26789 26933 26860 26862 22973 30749 +26790 26934 26861 26863 22974 30750 +26791 26935 26862 26864 22975 30751 +26792 26936 26863 26865 22976 30752 +26793 26937 26864 26866 22977 30753 +26794 26938 26865 26867 22978 30754 +26795 26939 26866 26868 22979 30755 +26796 26940 26867 26869 22980 30756 +26797 26941 26868 26870 22981 30757 +26798 26942 26869 26871 22982 30758 +26799 26943 26870 26871 22983 30759 +26800 26944 26872 26873 22984 30760 +26801 26945 26872 26874 22985 30761 +26802 26946 26873 26875 22986 30762 +26803 26947 26874 26876 22987 30763 +26804 26948 26875 26877 22988 30764 +26805 26949 26876 26878 22989 30765 +26806 26950 26877 26879 22990 30766 +26807 26951 26878 26880 22991 30767 +26808 26952 26879 26881 22992 30768 +26809 26953 26880 26882 22993 30769 +26810 26954 26881 26883 22994 30770 +26811 26955 26882 26884 22995 30771 +26812 26956 26883 26885 22996 30772 +26813 26957 26884 26886 22997 30773 +26814 26958 26885 26887 22998 30774 +26815 26959 26886 26888 22999 30775 +26816 26960 26887 26889 23000 30776 +26817 26961 26888 26890 23001 30777 +26818 26962 26889 26891 23002 30778 +26819 26963 26890 26892 23003 30779 +26820 26964 26891 26893 23004 30780 +26821 26965 26892 26894 23005 30781 +26822 26966 26893 26895 23006 30782 +26823 26967 26894 26896 23007 30783 +26824 26968 26895 26897 23008 30784 +26825 26969 26896 26898 23009 30785 +26826 26970 26897 26899 23010 30786 +26827 26971 26898 26900 23011 30787 +26828 26972 26899 26901 23012 30788 +26829 26973 26900 26902 23013 30789 +26830 26974 26901 26903 23014 30790 +26831 26975 26902 26904 23015 30791 +26832 26976 26903 26905 23016 30792 +26833 26977 26904 26906 23017 30793 +26834 26978 26905 26907 23018 30794 +26835 26979 26906 26908 23019 30795 +26836 26980 26907 26909 23020 30796 +26837 26981 26908 26910 23021 30797 +26838 26982 26909 26911 23022 30798 +26839 26983 26910 26912 23023 30799 +26840 26984 26911 26913 23024 30800 +26841 26985 26912 26914 23025 30801 +26842 26986 26913 26915 23026 30802 +26843 26987 26914 26916 23027 30803 +26844 26988 26915 26917 23028 30804 +26845 26989 26916 26918 23029 30805 +26846 26990 26917 26919 23030 30806 +26847 26991 26918 26920 23031 30807 +26848 26992 26919 26921 23032 30808 +26849 26993 26920 26922 23033 30809 +26850 26994 26921 26923 23034 30810 +26851 26995 26922 26924 23035 30811 +26852 26996 26923 26925 23036 30812 +26853 26997 26924 26926 23037 30813 +26854 26998 26925 26927 23038 30814 +26855 26999 26926 26928 23039 30815 +26856 27000 26927 26929 23040 30816 +26857 27001 26928 26930 23041 30817 +26858 27002 26929 26931 23042 30818 +26859 27003 26930 26932 23043 30819 +26860 27004 26931 26933 23044 30820 +26861 27005 26932 26934 23045 30821 +26862 27006 26933 26935 23046 30822 +26863 27007 26934 26936 23047 30823 +26864 27008 26935 26937 23048 30824 +26865 27009 26936 26938 23049 30825 +26866 27010 26937 26939 23050 30826 +26867 27011 26938 26940 23051 30827 +26868 27012 26939 26941 23052 30828 +26869 27013 26940 26942 23053 30829 +26870 27014 26941 26943 23054 30830 +26871 27015 26942 26943 23055 30831 +26872 27016 26944 26945 23056 30832 +26873 27017 26944 26946 23057 30833 +26874 27018 26945 26947 23058 30834 +26875 27019 26946 26948 23059 30835 +26876 27020 26947 26949 23060 30836 +26877 27021 26948 26950 23061 30837 +26878 27022 26949 26951 23062 30838 +26879 27023 26950 26952 23063 30839 +26880 27024 26951 26953 23064 30840 +26881 27025 26952 26954 23065 30841 +26882 27026 26953 26955 23066 30842 +26883 27027 26954 26956 23067 30843 +26884 27028 26955 26957 23068 30844 +26885 27029 26956 26958 23069 30845 +26886 27030 26957 26959 23070 30846 +26887 27031 26958 26960 23071 30847 +26888 27032 26959 26961 23072 30848 +26889 27033 26960 26962 23073 30849 +26890 27034 26961 26963 23074 30850 +26891 27035 26962 26964 23075 30851 +26892 27036 26963 26965 23076 30852 +26893 27037 26964 26966 23077 30853 +26894 27038 26965 26967 23078 30854 +26895 27039 26966 26968 23079 30855 +26896 27040 26967 26969 23080 30856 +26897 27041 26968 26970 23081 30857 +26898 27042 26969 26971 23082 30858 +26899 27043 26970 26972 23083 30859 +26900 27044 26971 26973 23084 30860 +26901 27045 26972 26974 23085 30861 +26902 27046 26973 26975 23086 30862 +26903 27047 26974 26976 23087 30863 +26904 27048 26975 26977 23088 30864 +26905 27049 26976 26978 23089 30865 +26906 27050 26977 26979 23090 30866 +26907 27051 26978 26980 23091 30867 +26908 27052 26979 26981 23092 30868 +26909 27053 26980 26982 23093 30869 +26910 27054 26981 26983 23094 30870 +26911 27055 26982 26984 23095 30871 +26912 27056 26983 26985 23096 30872 +26913 27057 26984 26986 23097 30873 +26914 27058 26985 26987 23098 30874 +26915 27059 26986 26988 23099 30875 +26916 27060 26987 26989 23100 30876 +26917 27061 26988 26990 23101 30877 +26918 27062 26989 26991 23102 30878 +26919 27063 26990 26992 23103 30879 +26920 27064 26991 26993 23104 30880 +26921 27065 26992 26994 23105 30881 +26922 27066 26993 26995 23106 30882 +26923 27067 26994 26996 23107 30883 +26924 27068 26995 26997 23108 30884 +26925 27069 26996 26998 23109 30885 +26926 27070 26997 26999 23110 30886 +26927 27071 26998 27000 23111 30887 +26928 27072 26999 27001 23112 30888 +26929 27073 27000 27002 23113 30889 +26930 27074 27001 27003 23114 30890 +26931 27075 27002 27004 23115 30891 +26932 27076 27003 27005 23116 30892 +26933 27077 27004 27006 23117 30893 +26934 27078 27005 27007 23118 30894 +26935 27079 27006 27008 23119 30895 +26936 27080 27007 27009 23120 30896 +26937 27081 27008 27010 23121 30897 +26938 27082 27009 27011 23122 30898 +26939 27083 27010 27012 23123 30899 +26940 27084 27011 27013 23124 30900 +26941 27085 27012 27014 23125 30901 +26942 27086 27013 27015 23126 30902 +26943 27087 27014 27015 23127 30903 +26944 27088 27016 27017 23128 30904 +26945 27089 27016 27018 23129 30905 +26946 27090 27017 27019 23130 30906 +26947 27091 27018 27020 23131 30907 +26948 27092 27019 27021 23132 30908 +26949 27093 27020 27022 23133 30909 +26950 27094 27021 27023 23134 30910 +26951 27095 27022 27024 23135 30911 +26952 27096 27023 27025 23136 30912 +26953 27097 27024 27026 23137 30913 +26954 27098 27025 27027 23138 30914 +26955 27099 27026 27028 23139 30915 +26956 27100 27027 27029 23140 30916 +26957 27101 27028 27030 23141 30917 +26958 27102 27029 27031 23142 30918 +26959 27103 27030 27032 23143 30919 +26960 27104 27031 27033 23144 30920 +26961 27105 27032 27034 23145 30921 +26962 27106 27033 27035 23146 30922 +26963 27107 27034 27036 23147 30923 +26964 27108 27035 27037 23148 30924 +26965 27109 27036 27038 23149 30925 +26966 27110 27037 27039 23150 30926 +26967 27111 27038 27040 23151 30927 +26968 27112 27039 27041 23152 30928 +26969 27113 27040 27042 23153 30929 +26970 27114 27041 27043 23154 30930 +26971 27115 27042 27044 23155 30931 +26972 27116 27043 27045 23156 30932 +26973 27117 27044 27046 23157 30933 +26974 27118 27045 27047 23158 30934 +26975 27119 27046 27048 23159 30935 +26976 27120 27047 27049 23160 30936 +26977 27121 27048 27050 23161 30937 +26978 27122 27049 27051 23162 30938 +26979 27123 27050 27052 23163 30939 +26980 27124 27051 27053 23164 30940 +26981 27125 27052 27054 23165 30941 +26982 27126 27053 27055 23166 30942 +26983 27127 27054 27056 23167 30943 +26984 27128 27055 27057 23168 30944 +26985 27129 27056 27058 23169 30945 +26986 27130 27057 27059 23170 30946 +26987 27131 27058 27060 23171 30947 +26988 27132 27059 27061 23172 30948 +26989 27133 27060 27062 23173 30949 +26990 27134 27061 27063 23174 30950 +26991 27135 27062 27064 23175 30951 +26992 27136 27063 27065 23176 30952 +26993 27137 27064 27066 23177 30953 +26994 27138 27065 27067 23178 30954 +26995 27139 27066 27068 23179 30955 +26996 27140 27067 27069 23180 30956 +26997 27141 27068 27070 23181 30957 +26998 27142 27069 27071 23182 30958 +26999 27143 27070 27072 23183 30959 +27000 27144 27071 27073 23184 30960 +27001 27145 27072 27074 23185 30961 +27002 27146 27073 27075 23186 30962 +27003 27147 27074 27076 23187 30963 +27004 27148 27075 27077 23188 30964 +27005 27149 27076 27078 23189 30965 +27006 27150 27077 27079 23190 30966 +27007 27151 27078 27080 23191 30967 +27008 27152 27079 27081 23192 30968 +27009 27153 27080 27082 23193 30969 +27010 27154 27081 27083 23194 30970 +27011 27155 27082 27084 23195 30971 +27012 27156 27083 27085 23196 30972 +27013 27157 27084 27086 23197 30973 +27014 27158 27085 27087 23198 30974 +27015 27159 27086 27087 23199 30975 +27016 27160 27088 27089 23200 30976 +27017 27161 27088 27090 23201 30977 +27018 27162 27089 27091 23202 30978 +27019 27163 27090 27092 23203 30979 +27020 27164 27091 27093 23204 30980 +27021 27165 27092 27094 23205 30981 +27022 27166 27093 27095 23206 30982 +27023 27167 27094 27096 23207 30983 +27024 27168 27095 27097 23208 30984 +27025 27169 27096 27098 23209 30985 +27026 27170 27097 27099 23210 30986 +27027 27171 27098 27100 23211 30987 +27028 27172 27099 27101 23212 30988 +27029 27173 27100 27102 23213 30989 +27030 27174 27101 27103 23214 30990 +27031 27175 27102 27104 23215 30991 +27032 27176 27103 27105 23216 30992 +27033 27177 27104 27106 23217 30993 +27034 27178 27105 27107 23218 30994 +27035 27179 27106 27108 23219 30995 +27036 27180 27107 27109 23220 30996 +27037 27181 27108 27110 23221 30997 +27038 27182 27109 27111 23222 30998 +27039 27183 27110 27112 23223 30999 +27040 27184 27111 27113 23224 31000 +27041 27185 27112 27114 23225 31001 +27042 27186 27113 27115 23226 31002 +27043 27187 27114 27116 23227 31003 +27044 27188 27115 27117 23228 31004 +27045 27189 27116 27118 23229 31005 +27046 27190 27117 27119 23230 31006 +27047 27191 27118 27120 23231 31007 +27048 27192 27119 27121 23232 31008 +27049 27193 27120 27122 23233 31009 +27050 27194 27121 27123 23234 31010 +27051 27195 27122 27124 23235 31011 +27052 27196 27123 27125 23236 31012 +27053 27197 27124 27126 23237 31013 +27054 27198 27125 27127 23238 31014 +27055 27199 27126 27128 23239 31015 +27056 27200 27127 27129 23240 31016 +27057 27201 27128 27130 23241 31017 +27058 27202 27129 27131 23242 31018 +27059 27203 27130 27132 23243 31019 +27060 27204 27131 27133 23244 31020 +27061 27205 27132 27134 23245 31021 +27062 27206 27133 27135 23246 31022 +27063 27207 27134 27136 23247 31023 +27064 27208 27135 27137 23248 31024 +27065 27209 27136 27138 23249 31025 +27066 27210 27137 27139 23250 31026 +27067 27211 27138 27140 23251 31027 +27068 27212 27139 27141 23252 31028 +27069 27213 27140 27142 23253 31029 +27070 27214 27141 27143 23254 31030 +27071 27215 27142 27144 23255 31031 +27072 27216 27143 27145 23256 31032 +27073 27217 27144 27146 23257 31033 +27074 27218 27145 27147 23258 31034 +27075 27219 27146 27148 23259 31035 +27076 27220 27147 27149 23260 31036 +27077 27221 27148 27150 23261 31037 +27078 27222 27149 27151 23262 31038 +27079 27223 27150 27152 23263 31039 +27080 27224 27151 27153 23264 31040 +27081 27225 27152 27154 23265 31041 +27082 27226 27153 27155 23266 31042 +27083 27227 27154 27156 23267 31043 +27084 27228 27155 27157 23268 31044 +27085 27229 27156 27158 23269 31045 +27086 27230 27157 27159 23270 31046 +27087 27231 27158 27159 23271 31047 +27088 27232 27160 27161 23272 31048 +27089 27233 27160 27162 23273 31049 +27090 27234 27161 27163 23274 31050 +27091 27235 27162 27164 23275 31051 +27092 27236 27163 27165 23276 31052 +27093 27237 27164 27166 23277 31053 +27094 27238 27165 27167 23278 31054 +27095 27239 27166 27168 23279 31055 +27096 27240 27167 27169 23280 31056 +27097 27241 27168 27170 23281 31057 +27098 27242 27169 27171 23282 31058 +27099 27243 27170 27172 23283 31059 +27100 27244 27171 27173 23284 31060 +27101 27245 27172 27174 23285 31061 +27102 27246 27173 27175 23286 31062 +27103 27247 27174 27176 23287 31063 +27104 27248 27175 27177 23288 31064 +27105 27249 27176 27178 23289 31065 +27106 27250 27177 27179 23290 31066 +27107 27251 27178 27180 23291 31067 +27108 27252 27179 27181 23292 31068 +27109 27253 27180 27182 23293 31069 +27110 27254 27181 27183 23294 31070 +27111 27255 27182 27184 23295 31071 +27112 27256 27183 27185 23296 31072 +27113 27257 27184 27186 23297 31073 +27114 27258 27185 27187 23298 31074 +27115 27259 27186 27188 23299 31075 +27116 27260 27187 27189 23300 31076 +27117 27261 27188 27190 23301 31077 +27118 27262 27189 27191 23302 31078 +27119 27263 27190 27192 23303 31079 +27120 27264 27191 27193 23304 31080 +27121 27265 27192 27194 23305 31081 +27122 27266 27193 27195 23306 31082 +27123 27267 27194 27196 23307 31083 +27124 27268 27195 27197 23308 31084 +27125 27269 27196 27198 23309 31085 +27126 27270 27197 27199 23310 31086 +27127 27271 27198 27200 23311 31087 +27128 27272 27199 27201 23312 31088 +27129 27273 27200 27202 23313 31089 +27130 27274 27201 27203 23314 31090 +27131 27275 27202 27204 23315 31091 +27132 27276 27203 27205 23316 31092 +27133 27277 27204 27206 23317 31093 +27134 27278 27205 27207 23318 31094 +27135 27279 27206 27208 23319 31095 +27136 27280 27207 27209 23320 31096 +27137 27281 27208 27210 23321 31097 +27138 27282 27209 27211 23322 31098 +27139 27283 27210 27212 23323 31099 +27140 27284 27211 27213 23324 31100 +27141 27285 27212 27214 23325 31101 +27142 27286 27213 27215 23326 31102 +27143 27287 27214 27216 23327 31103 +27144 27288 27215 27217 23328 31104 +27145 27289 27216 27218 23329 31105 +27146 27290 27217 27219 23330 31106 +27147 27291 27218 27220 23331 31107 +27148 27292 27219 27221 23332 31108 +27149 27293 27220 27222 23333 31109 +27150 27294 27221 27223 23334 31110 +27151 27295 27222 27224 23335 31111 +27152 27296 27223 27225 23336 31112 +27153 27297 27224 27226 23337 31113 +27154 27298 27225 27227 23338 31114 +27155 27299 27226 27228 23339 31115 +27156 27300 27227 27229 23340 31116 +27157 27301 27228 27230 23341 31117 +27158 27302 27229 27231 23342 31118 +27159 27303 27230 27231 23343 31119 +27160 27304 27232 27233 23344 31120 +27161 27305 27232 27234 23345 31121 +27162 27306 27233 27235 23346 31122 +27163 27307 27234 27236 23347 31123 +27164 27308 27235 27237 23348 31124 +27165 27309 27236 27238 23349 31125 +27166 27310 27237 27239 23350 31126 +27167 27311 27238 27240 23351 31127 +27168 27312 27239 27241 23352 31128 +27169 27313 27240 27242 23353 31129 +27170 27314 27241 27243 23354 31130 +27171 27315 27242 27244 23355 31131 +27172 27316 27243 27245 23356 31132 +27173 27317 27244 27246 23357 31133 +27174 27318 27245 27247 23358 31134 +27175 27319 27246 27248 23359 31135 +27176 27320 27247 27249 23360 31136 +27177 27321 27248 27250 23361 31137 +27178 27322 27249 27251 23362 31138 +27179 27323 27250 27252 23363 31139 +27180 27324 27251 27253 23364 31140 +27181 27325 27252 27254 23365 31141 +27182 27326 27253 27255 23366 31142 +27183 27327 27254 27256 23367 31143 +27184 27328 27255 27257 23368 31144 +27185 27329 27256 27258 23369 31145 +27186 27330 27257 27259 23370 31146 +27187 27331 27258 27260 23371 31147 +27188 27332 27259 27261 23372 31148 +27189 27333 27260 27262 23373 31149 +27190 27334 27261 27263 23374 31150 +27191 27335 27262 27264 23375 31151 +27192 27336 27263 27265 23376 31152 +27193 27337 27264 27266 23377 31153 +27194 27338 27265 27267 23378 31154 +27195 27339 27266 27268 23379 31155 +27196 27340 27267 27269 23380 31156 +27197 27341 27268 27270 23381 31157 +27198 27342 27269 27271 23382 31158 +27199 27343 27270 27272 23383 31159 +27200 27344 27271 27273 23384 31160 +27201 27345 27272 27274 23385 31161 +27202 27346 27273 27275 23386 31162 +27203 27347 27274 27276 23387 31163 +27204 27348 27275 27277 23388 31164 +27205 27349 27276 27278 23389 31165 +27206 27350 27277 27279 23390 31166 +27207 27351 27278 27280 23391 31167 +27208 27352 27279 27281 23392 31168 +27209 27353 27280 27282 23393 31169 +27210 27354 27281 27283 23394 31170 +27211 27355 27282 27284 23395 31171 +27212 27356 27283 27285 23396 31172 +27213 27357 27284 27286 23397 31173 +27214 27358 27285 27287 23398 31174 +27215 27359 27286 27288 23399 31175 +27216 27360 27287 27289 23400 31176 +27217 27361 27288 27290 23401 31177 +27218 27362 27289 27291 23402 31178 +27219 27363 27290 27292 23403 31179 +27220 27364 27291 27293 23404 31180 +27221 27365 27292 27294 23405 31181 +27222 27366 27293 27295 23406 31182 +27223 27367 27294 27296 23407 31183 +27224 27368 27295 27297 23408 31184 +27225 27369 27296 27298 23409 31185 +27226 27370 27297 27299 23410 31186 +27227 27371 27298 27300 23411 31187 +27228 27372 27299 27301 23412 31188 +27229 27373 27300 27302 23413 31189 +27230 27374 27301 27303 23414 31190 +27231 27375 27302 27303 23415 31191 +27232 27376 27304 27305 23416 31192 +27233 27377 27304 27306 23417 31193 +27234 27378 27305 27307 23418 31194 +27235 27379 27306 27308 23419 31195 +27236 27380 27307 27309 23420 31196 +27237 27381 27308 27310 23421 31197 +27238 27382 27309 27311 23422 31198 +27239 27383 27310 27312 23423 31199 +27240 27384 27311 27313 23424 31200 +27241 27385 27312 27314 23425 31201 +27242 27386 27313 27315 23426 31202 +27243 27387 27314 27316 23427 31203 +27244 27388 27315 27317 23428 31204 +27245 27389 27316 27318 23429 31205 +27246 27390 27317 27319 23430 31206 +27247 27391 27318 27320 23431 31207 +27248 27392 27319 27321 23432 31208 +27249 27393 27320 27322 23433 31209 +27250 27394 27321 27323 23434 31210 +27251 27395 27322 27324 23435 31211 +27252 27396 27323 27325 23436 31212 +27253 27397 27324 27326 23437 31213 +27254 27398 27325 27327 23438 31214 +27255 27399 27326 27328 23439 31215 +27256 27400 27327 27329 23440 31216 +27257 27401 27328 27330 23441 31217 +27258 27402 27329 27331 23442 31218 +27259 27403 27330 27332 23443 31219 +27260 27404 27331 27333 23444 31220 +27261 27405 27332 27334 23445 31221 +27262 27406 27333 27335 23446 31222 +27263 27407 27334 27336 23447 31223 +27264 27408 27335 27337 23448 31224 +27265 27409 27336 27338 23449 31225 +27266 27410 27337 27339 23450 31226 +27267 27411 27338 27340 23451 31227 +27268 27412 27339 27341 23452 31228 +27269 27413 27340 27342 23453 31229 +27270 27414 27341 27343 23454 31230 +27271 27415 27342 27344 23455 31231 +27272 27416 27343 27345 23456 31232 +27273 27417 27344 27346 23457 31233 +27274 27418 27345 27347 23458 31234 +27275 27419 27346 27348 23459 31235 +27276 27420 27347 27349 23460 31236 +27277 27421 27348 27350 23461 31237 +27278 27422 27349 27351 23462 31238 +27279 27423 27350 27352 23463 31239 +27280 27424 27351 27353 23464 31240 +27281 27425 27352 27354 23465 31241 +27282 27426 27353 27355 23466 31242 +27283 27427 27354 27356 23467 31243 +27284 27428 27355 27357 23468 31244 +27285 27429 27356 27358 23469 31245 +27286 27430 27357 27359 23470 31246 +27287 27431 27358 27360 23471 31247 +27288 27432 27359 27361 23472 31248 +27289 27433 27360 27362 23473 31249 +27290 27434 27361 27363 23474 31250 +27291 27435 27362 27364 23475 31251 +27292 27436 27363 27365 23476 31252 +27293 27437 27364 27366 23477 31253 +27294 27438 27365 27367 23478 31254 +27295 27439 27366 27368 23479 31255 +27296 27440 27367 27369 23480 31256 +27297 27441 27368 27370 23481 31257 +27298 27442 27369 27371 23482 31258 +27299 27443 27370 27372 23483 31259 +27300 27444 27371 27373 23484 31260 +27301 27445 27372 27374 23485 31261 +27302 27446 27373 27375 23486 31262 +27303 27447 27374 27375 23487 31263 +27304 27448 27376 27377 23488 31264 +27305 27449 27376 27378 23489 31265 +27306 27450 27377 27379 23490 31266 +27307 27451 27378 27380 23491 31267 +27308 27452 27379 27381 23492 31268 +27309 27453 27380 27382 23493 31269 +27310 27454 27381 27383 23494 31270 +27311 27455 27382 27384 23495 31271 +27312 27456 27383 27385 23496 31272 +27313 27457 27384 27386 23497 31273 +27314 27458 27385 27387 23498 31274 +27315 27459 27386 27388 23499 31275 +27316 27460 27387 27389 23500 31276 +27317 27461 27388 27390 23501 31277 +27318 27462 27389 27391 23502 31278 +27319 27463 27390 27392 23503 31279 +27320 27464 27391 27393 23504 31280 +27321 27465 27392 27394 23505 31281 +27322 27466 27393 27395 23506 31282 +27323 27467 27394 27396 23507 31283 +27324 27468 27395 27397 23508 31284 +27325 27469 27396 27398 23509 31285 +27326 27470 27397 27399 23510 31286 +27327 27471 27398 27400 23511 31287 +27328 27472 27399 27401 23512 31288 +27329 27473 27400 27402 23513 31289 +27330 27474 27401 27403 23514 31290 +27331 27475 27402 27404 23515 31291 +27332 27476 27403 27405 23516 31292 +27333 27477 27404 27406 23517 31293 +27334 27478 27405 27407 23518 31294 +27335 27479 27406 27408 23519 31295 +27336 27480 27407 27409 23520 31296 +27337 27481 27408 27410 23521 31297 +27338 27482 27409 27411 23522 31298 +27339 27483 27410 27412 23523 31299 +27340 27484 27411 27413 23524 31300 +27341 27485 27412 27414 23525 31301 +27342 27486 27413 27415 23526 31302 +27343 27487 27414 27416 23527 31303 +27344 27488 27415 27417 23528 31304 +27345 27489 27416 27418 23529 31305 +27346 27490 27417 27419 23530 31306 +27347 27491 27418 27420 23531 31307 +27348 27492 27419 27421 23532 31308 +27349 27493 27420 27422 23533 31309 +27350 27494 27421 27423 23534 31310 +27351 27495 27422 27424 23535 31311 +27352 27496 27423 27425 23536 31312 +27353 27497 27424 27426 23537 31313 +27354 27498 27425 27427 23538 31314 +27355 27499 27426 27428 23539 31315 +27356 27500 27427 27429 23540 31316 +27357 27501 27428 27430 23541 31317 +27358 27502 27429 27431 23542 31318 +27359 27503 27430 27432 23543 31319 +27360 27504 27431 27433 23544 31320 +27361 27505 27432 27434 23545 31321 +27362 27506 27433 27435 23546 31322 +27363 27507 27434 27436 23547 31323 +27364 27508 27435 27437 23548 31324 +27365 27509 27436 27438 23549 31325 +27366 27510 27437 27439 23550 31326 +27367 27511 27438 27440 23551 31327 +27368 27512 27439 27441 23552 31328 +27369 27513 27440 27442 23553 31329 +27370 27514 27441 27443 23554 31330 +27371 27515 27442 27444 23555 31331 +27372 27516 27443 27445 23556 31332 +27373 27517 27444 27446 23557 31333 +27374 27518 27445 27447 23558 31334 +27375 27519 27446 27447 23559 31335 +27376 27448 27448 27449 23560 31336 +27377 27449 27448 27450 23561 31337 +27378 27450 27449 27451 23562 31338 +27379 27451 27450 27452 23563 31339 +27380 27452 27451 27453 23564 31340 +27381 27453 27452 27454 23565 31341 +27382 27454 27453 27455 23566 31342 +27383 27455 27454 27456 23567 31343 +27384 27456 27455 27457 23568 31344 +27385 27457 27456 27458 23569 31345 +27386 27458 27457 27459 23570 31346 +27387 27459 27458 27460 23571 31347 +27388 27460 27459 27461 23572 31348 +27389 27461 27460 27462 23573 31349 +27390 27462 27461 27463 23574 31350 +27391 27463 27462 27464 23575 31351 +27392 27464 27463 27465 23576 31352 +27393 27465 27464 27466 23577 31353 +27394 27466 27465 27467 23578 31354 +27395 27467 27466 27468 23579 31355 +27396 27468 27467 27469 23580 31356 +27397 27469 27468 27470 23581 31357 +27398 27470 27469 27471 23582 31358 +27399 27471 27470 27472 23583 31359 +27400 27472 27471 27473 23584 31360 +27401 27473 27472 27474 23585 31361 +27402 27474 27473 27475 23586 31362 +27403 27475 27474 27476 23587 31363 +27404 27476 27475 27477 23588 31364 +27405 27477 27476 27478 23589 31365 +27406 27478 27477 27479 23590 31366 +27407 27479 27478 27480 23591 31367 +27408 27480 27479 27481 23592 31368 +27409 27481 27480 27482 23593 31369 +27410 27482 27481 27483 23594 31370 +27411 27483 27482 27484 23595 31371 +27412 27484 27483 27485 23596 31372 +27413 27485 27484 27486 23597 31373 +27414 27486 27485 27487 23598 31374 +27415 27487 27486 27488 23599 31375 +27416 27488 27487 27489 23600 31376 +27417 27489 27488 27490 23601 31377 +27418 27490 27489 27491 23602 31378 +27419 27491 27490 27492 23603 31379 +27420 27492 27491 27493 23604 31380 +27421 27493 27492 27494 23605 31381 +27422 27494 27493 27495 23606 31382 +27423 27495 27494 27496 23607 31383 +27424 27496 27495 27497 23608 31384 +27425 27497 27496 27498 23609 31385 +27426 27498 27497 27499 23610 31386 +27427 27499 27498 27500 23611 31387 +27428 27500 27499 27501 23612 31388 +27429 27501 27500 27502 23613 31389 +27430 27502 27501 27503 23614 31390 +27431 27503 27502 27504 23615 31391 +27432 27504 27503 27505 23616 31392 +27433 27505 27504 27506 23617 31393 +27434 27506 27505 27507 23618 31394 +27435 27507 27506 27508 23619 31395 +27436 27508 27507 27509 23620 31396 +27437 27509 27508 27510 23621 31397 +27438 27510 27509 27511 23622 31398 +27439 27511 27510 27512 23623 31399 +27440 27512 27511 27513 23624 31400 +27441 27513 27512 27514 23625 31401 +27442 27514 27513 27515 23626 31402 +27443 27515 27514 27516 23627 31403 +27444 27516 27515 27517 23628 31404 +27445 27517 27516 27518 23629 31405 +27446 27518 27517 27519 23630 31406 +27447 27519 27518 27519 23631 31407 +27520 27521 27520 27523 23632 27520 +27520 27524 27521 27522 23633 27521 +27523 27525 27521 27527 23634 27522 +27520 27528 27522 27523 23635 27523 +27521 27529 27524 27525 23636 27524 +27522 27530 27524 27526 23637 27525 +27527 27531 27525 27533 23638 27526 +27522 27534 27526 27528 23639 27527 +27523 27535 27527 27528 23640 27528 +27524 27536 27529 27530 23641 27529 +27525 27537 27529 27531 23642 27530 +27526 27538 27530 27532 23643 27531 +27533 27539 27531 27541 23644 27532 +27526 27542 27532 27534 23645 27533 +27527 27543 27533 27535 23646 27534 +27528 27544 27534 27535 23647 27535 +27529 27545 27536 27537 23648 27536 +27530 27546 27536 27538 23649 27537 +27531 27547 27537 27539 23650 27538 +27532 27548 27538 27540 23651 27539 +27541 27549 27539 27551 23652 27540 +27532 27552 27540 27542 23653 27541 +27533 27553 27541 27543 23654 27542 +27534 27554 27542 27544 23655 27543 +27535 27555 27543 27544 23656 27544 +27536 27556 27545 27546 23657 27545 +27537 27557 27545 27547 23658 27546 +27538 27558 27546 27548 23659 27547 +27539 27559 27547 27549 23660 27548 +27540 27560 27548 27550 23661 27549 +27551 27561 27549 27563 23662 27550 +27540 27564 27550 27552 23663 27551 +27541 27565 27551 27553 23664 27552 +27542 27566 27552 27554 23665 27553 +27543 27567 27553 27555 23666 27554 +27544 27568 27554 27555 23667 27555 +27545 27569 27556 27557 23668 27556 +27546 27570 27556 27558 23669 27557 +27547 27571 27557 27559 23670 27558 +27548 27572 27558 27560 23671 27559 +27549 27573 27559 27561 23672 27560 +27550 27574 27560 27562 23673 27561 +27563 27575 27561 27577 23674 27562 +27550 27578 27562 27564 23675 27563 +27551 27579 27563 27565 23676 27564 +27552 27580 27564 27566 23677 27565 +27553 27581 27565 27567 23678 27566 +27554 27582 27566 27568 23679 27567 +27555 27583 27567 27568 23680 27568 +27556 27584 27569 27570 23681 27569 +27557 27585 27569 27571 23682 27570 +27558 27586 27570 27572 23683 27571 +27559 27587 27571 27573 23684 27572 +27560 27588 27572 27574 23685 27573 +27561 27589 27573 27575 23686 27574 +27562 27590 27574 27576 23687 27575 +27577 27591 27575 27593 23688 27576 +27562 27594 27576 27578 23689 27577 +27563 27595 27577 27579 23690 27578 +27564 27596 27578 27580 23691 27579 +27565 27597 27579 27581 23692 27580 +27566 27598 27580 27582 23693 27581 +27567 27599 27581 27583 23694 27582 +27568 27600 27582 27583 23695 27583 +27569 27601 27584 27585 23696 27584 +27570 27602 27584 27586 23697 27585 +27571 27603 27585 27587 23698 27586 +27572 27604 27586 27588 23699 27587 +27573 27605 27587 27589 23700 27588 +27574 27606 27588 27590 23701 27589 +27575 27607 27589 27591 23702 27590 +27576 27608 27590 27592 23703 27591 +27593 27609 27591 27611 23704 27592 +27576 27612 27592 27594 23705 27593 +27577 27613 27593 27595 23706 27594 +27578 27614 27594 27596 23707 27595 +27579 27615 27595 27597 23708 27596 +27580 27616 27596 27598 23709 27597 +27581 27617 27597 27599 23710 27598 +27582 27618 27598 27600 23711 27599 +27583 27619 27599 27600 23712 27600 +27584 27620 27601 27602 23713 27601 +27585 27621 27601 27603 23714 27602 +27586 27622 27602 27604 23715 27603 +27587 27623 27603 27605 23716 27604 +27588 27624 27604 27606 23717 27605 +27589 27625 27605 27607 23718 27606 +27590 27626 27606 27608 23719 27607 +27591 27627 27607 27609 23720 27608 +27592 27628 27608 27610 23721 27609 +27611 27629 27609 27631 23722 27610 +27592 27632 27610 27612 23723 27611 +27593 27633 27611 27613 23724 27612 +27594 27634 27612 27614 23725 27613 +27595 27635 27613 27615 23726 27614 +27596 27636 27614 27616 23727 27615 +27597 27637 27615 27617 23728 27616 +27598 27638 27616 27618 23729 27617 +27599 27639 27617 27619 23730 27618 +27600 27640 27618 27619 23731 27619 +27601 27641 27620 27621 23732 27620 +27602 27642 27620 27622 23733 27621 +27603 27643 27621 27623 23734 27622 +27604 27644 27622 27624 23735 27623 +27605 27645 27623 27625 23736 27624 +27606 27646 27624 27626 23737 27625 +27607 27647 27625 27627 23738 27626 +27608 27648 27626 27628 23739 27627 +27609 27649 27627 27629 23740 27628 +27610 27650 27628 27630 23741 27629 +27631 27651 27629 27653 23742 27630 +27610 27654 27630 27632 23743 27631 +27611 27655 27631 27633 23744 27632 +27612 27656 27632 27634 23745 27633 +27613 27657 27633 27635 23746 27634 +27614 27658 27634 27636 23747 27635 +27615 27659 27635 27637 23748 27636 +27616 27660 27636 27638 23749 27637 +27617 27661 27637 27639 23750 27638 +27618 27662 27638 27640 23751 27639 +27619 27663 27639 27640 23752 27640 +27620 27664 27641 27642 23753 27641 +27621 27665 27641 27643 23754 27642 +27622 27666 27642 27644 23755 27643 +27623 27667 27643 27645 23756 27644 +27624 27668 27644 27646 23757 27645 +27625 27669 27645 27647 23758 27646 +27626 27670 27646 27648 23759 27647 +27627 27671 27647 27649 23760 27648 +27628 27672 27648 27650 23761 27649 +27629 27673 27649 27651 23762 27650 +27630 27674 27650 27652 23763 27651 +27653 27675 27651 27677 23764 27652 +27630 27678 27652 27654 23765 27653 +27631 27679 27653 27655 23766 27654 +27632 27680 27654 27656 23767 27655 +27633 27681 27655 27657 23768 27656 +27634 27682 27656 27658 23769 27657 +27635 27683 27657 27659 23770 27658 +27636 27684 27658 27660 23771 27659 +27637 27685 27659 27661 23772 27660 +27638 27686 27660 27662 23773 27661 +27639 27687 27661 27663 23774 27662 +27640 27688 27662 27663 23775 27663 +27641 27689 27664 27665 23776 27664 +27642 27690 27664 27666 23777 27665 +27643 27691 27665 27667 23778 27666 +27644 27692 27666 27668 23779 27667 +27645 27693 27667 27669 23780 27668 +27646 27694 27668 27670 23781 27669 +27647 27695 27669 27671 23782 27670 +27648 27696 27670 27672 23783 27671 +27649 27697 27671 27673 23784 27672 +27650 27698 27672 27674 23785 27673 +27651 27699 27673 27675 23786 27674 +27652 27700 27674 27676 23787 27675 +27677 27701 27675 27703 23788 27676 +27652 27704 27676 27678 23789 27677 +27653 27705 27677 27679 23790 27678 +27654 27706 27678 27680 23791 27679 +27655 27707 27679 27681 23792 27680 +27656 27708 27680 27682 23793 27681 +27657 27709 27681 27683 23794 27682 +27658 27710 27682 27684 23795 27683 +27659 27711 27683 27685 23796 27684 +27660 27712 27684 27686 23797 27685 +27661 27713 27685 27687 23798 27686 +27662 27714 27686 27688 23799 27687 +27663 27715 27687 27688 23800 27688 +27664 27716 27689 27690 23801 27689 +27665 27717 27689 27691 23802 27690 +27666 27718 27690 27692 23803 27691 +27667 27719 27691 27693 23804 27692 +27668 27720 27692 27694 23805 27693 +27669 27721 27693 27695 23806 27694 +27670 27722 27694 27696 23807 27695 +27671 27723 27695 27697 23808 27696 +27672 27724 27696 27698 23809 27697 +27673 27725 27697 27699 23810 27698 +27674 27726 27698 27700 23811 27699 +27675 27727 27699 27701 23812 27700 +27676 27728 27700 27702 23813 27701 +27703 27729 27701 27731 23814 27702 +27676 27732 27702 27704 23815 27703 +27677 27733 27703 27705 23816 27704 +27678 27734 27704 27706 23817 27705 +27679 27735 27705 27707 23818 27706 +27680 27736 27706 27708 23819 27707 +27681 27737 27707 27709 23820 27708 +27682 27738 27708 27710 23821 27709 +27683 27739 27709 27711 23822 27710 +27684 27740 27710 27712 23823 27711 +27685 27741 27711 27713 23824 27712 +27686 27742 27712 27714 23825 27713 +27687 27743 27713 27715 23826 27714 +27688 27744 27714 27715 23827 27715 +27689 27745 27716 27717 23828 27716 +27690 27746 27716 27718 23829 27717 +27691 27747 27717 27719 23830 27718 +27692 27748 27718 27720 23831 27719 +27693 27749 27719 27721 23832 27720 +27694 27750 27720 27722 23833 27721 +27695 27751 27721 27723 23834 27722 +27696 27752 27722 27724 23835 27723 +27697 27753 27723 27725 23836 27724 +27698 27754 27724 27726 23837 27725 +27699 27755 27725 27727 23838 27726 +27700 27756 27726 27728 23839 27727 +27701 27757 27727 27729 23840 27728 +27702 27758 27728 27730 23841 27729 +27731 27759 27729 27761 23842 27730 +27702 27762 27730 27732 23843 27731 +27703 27763 27731 27733 23844 27732 +27704 27764 27732 27734 23845 27733 +27705 27765 27733 27735 23846 27734 +27706 27766 27734 27736 23847 27735 +27707 27767 27735 27737 23848 27736 +27708 27768 27736 27738 23849 27737 +27709 27769 27737 27739 23850 27738 +27710 27770 27738 27740 23851 27739 +27711 27771 27739 27741 23852 27740 +27712 27772 27740 27742 23853 27741 +27713 27773 27741 27743 23854 27742 +27714 27774 27742 27744 23855 27743 +27715 27775 27743 27744 23856 27744 +27716 27776 27745 27746 23857 27745 +27717 27777 27745 27747 23858 27746 +27718 27778 27746 27748 23859 27747 +27719 27779 27747 27749 23860 27748 +27720 27780 27748 27750 23861 27749 +27721 27781 27749 27751 23862 27750 +27722 27782 27750 27752 23863 27751 +27723 27783 27751 27753 23864 27752 +27724 27784 27752 27754 23865 27753 +27725 27785 27753 27755 23866 27754 +27726 27786 27754 27756 23867 27755 +27727 27787 27755 27757 23868 27756 +27728 27788 27756 27758 23869 27757 +27729 27789 27757 27759 23870 27758 +27730 27790 27758 27760 23871 27759 +27761 27791 27759 27793 23872 27760 +27730 27794 27760 27762 23873 27761 +27731 27795 27761 27763 23874 27762 +27732 27796 27762 27764 23875 27763 +27733 27797 27763 27765 23876 27764 +27734 27798 27764 27766 23877 27765 +27735 27799 27765 27767 23878 27766 +27736 27800 27766 27768 23879 27767 +27737 27801 27767 27769 23880 27768 +27738 27802 27768 27770 23881 27769 +27739 27803 27769 27771 23882 27770 +27740 27804 27770 27772 23883 27771 +27741 27805 27771 27773 23884 27772 +27742 27806 27772 27774 23885 27773 +27743 27807 27773 27775 23886 27774 +27744 27808 27774 27775 23887 27775 +27745 27809 27776 27777 23888 27776 +27746 27810 27776 27778 23889 27777 +27747 27811 27777 27779 23890 27778 +27748 27812 27778 27780 23891 27779 +27749 27813 27779 27781 23892 27780 +27750 27814 27780 27782 23893 27781 +27751 27815 27781 27783 23894 27782 +27752 27816 27782 27784 23895 27783 +27753 27817 27783 27785 23896 27784 +27754 27818 27784 27786 23897 27785 +27755 27819 27785 27787 23898 27786 +27756 27820 27786 27788 23899 27787 +27757 27821 27787 27789 23900 27788 +27758 27822 27788 27790 23901 27789 +27759 27823 27789 27791 23902 27790 +27760 27824 27790 27792 23903 27791 +27793 27825 27791 27827 23904 27792 +27760 27828 27792 27794 23905 27793 +27761 27829 27793 27795 23906 27794 +27762 27830 27794 27796 23907 27795 +27763 27831 27795 27797 23908 27796 +27764 27832 27796 27798 23909 27797 +27765 27833 27797 27799 23910 27798 +27766 27834 27798 27800 23911 27799 +27767 27835 27799 27801 23912 27800 +27768 27836 27800 27802 23913 27801 +27769 27837 27801 27803 23914 27802 +27770 27838 27802 27804 23915 27803 +27771 27839 27803 27805 23916 27804 +27772 27840 27804 27806 23917 27805 +27773 27841 27805 27807 23918 27806 +27774 27842 27806 27808 23919 27807 +27775 27843 27807 27808 23920 27808 +27776 27844 27809 27810 23921 27809 +27777 27845 27809 27811 23922 27810 +27778 27846 27810 27812 23923 27811 +27779 27847 27811 27813 23924 27812 +27780 27848 27812 27814 23925 27813 +27781 27849 27813 27815 23926 27814 +27782 27850 27814 27816 23927 27815 +27783 27851 27815 27817 23928 27816 +27784 27852 27816 27818 23929 27817 +27785 27853 27817 27819 23930 27818 +27786 27854 27818 27820 23931 27819 +27787 27855 27819 27821 23932 27820 +27788 27856 27820 27822 23933 27821 +27789 27857 27821 27823 23934 27822 +27790 27858 27822 27824 23935 27823 +27791 27859 27823 27825 23936 27824 +27792 27860 27824 27826 23937 27825 +27827 27861 27825 27863 23938 27826 +27792 27864 27826 27828 23939 27827 +27793 27865 27827 27829 23940 27828 +27794 27866 27828 27830 23941 27829 +27795 27867 27829 27831 23942 27830 +27796 27868 27830 27832 23943 27831 +27797 27869 27831 27833 23944 27832 +27798 27870 27832 27834 23945 27833 +27799 27871 27833 27835 23946 27834 +27800 27872 27834 27836 23947 27835 +27801 27873 27835 27837 23948 27836 +27802 27874 27836 27838 23949 27837 +27803 27875 27837 27839 23950 27838 +27804 27876 27838 27840 23951 27839 +27805 27877 27839 27841 23952 27840 +27806 27878 27840 27842 23953 27841 +27807 27879 27841 27843 23954 27842 +27808 27880 27842 27843 23955 27843 +27809 27881 27844 27845 23956 27844 +27810 27882 27844 27846 23957 27845 +27811 27883 27845 27847 23958 27846 +27812 27884 27846 27848 23959 27847 +27813 27885 27847 27849 23960 27848 +27814 27886 27848 27850 23961 27849 +27815 27887 27849 27851 23962 27850 +27816 27888 27850 27852 23963 27851 +27817 27889 27851 27853 23964 27852 +27818 27890 27852 27854 23965 27853 +27819 27891 27853 27855 23966 27854 +27820 27892 27854 27856 23967 27855 +27821 27893 27855 27857 23968 27856 +27822 27894 27856 27858 23969 27857 +27823 27895 27857 27859 23970 27858 +27824 27896 27858 27860 23971 27859 +27825 27897 27859 27861 23972 27860 +27826 27898 27860 27862 23973 27861 +27863 27899 27861 27901 23974 27862 +27826 27902 27862 27864 23975 27863 +27827 27903 27863 27865 23976 27864 +27828 27904 27864 27866 23977 27865 +27829 27905 27865 27867 23978 27866 +27830 27906 27866 27868 23979 27867 +27831 27907 27867 27869 23980 27868 +27832 27908 27868 27870 23981 27869 +27833 27909 27869 27871 23982 27870 +27834 27910 27870 27872 23983 27871 +27835 27911 27871 27873 23984 27872 +27836 27912 27872 27874 23985 27873 +27837 27913 27873 27875 23986 27874 +27838 27914 27874 27876 23987 27875 +27839 27915 27875 27877 23988 27876 +27840 27916 27876 27878 23989 27877 +27841 27917 27877 27879 23990 27878 +27842 27918 27878 27880 23991 27879 +27843 27919 27879 27880 23992 27880 +27844 27920 27881 27882 23993 27881 +27845 27921 27881 27883 23994 27882 +27846 27922 27882 27884 23995 27883 +27847 27923 27883 27885 23996 27884 +27848 27924 27884 27886 23997 27885 +27849 27925 27885 27887 23998 27886 +27850 27926 27886 27888 23999 27887 +27851 27927 27887 27889 24000 27888 +27852 27928 27888 27890 24001 27889 +27853 27929 27889 27891 24002 27890 +27854 27930 27890 27892 24003 27891 +27855 27931 27891 27893 24004 27892 +27856 27932 27892 27894 24005 27893 +27857 27933 27893 27895 24006 27894 +27858 27934 27894 27896 24007 27895 +27859 27935 27895 27897 24008 27896 +27860 27936 27896 27898 24009 27897 +27861 27937 27897 27899 24010 27898 +27862 27938 27898 27900 24011 27899 +27901 27939 27899 27941 24012 27900 +27862 27942 27900 27902 24013 27901 +27863 27943 27901 27903 24014 27902 +27864 27944 27902 27904 24015 27903 +27865 27945 27903 27905 24016 27904 +27866 27946 27904 27906 24017 27905 +27867 27947 27905 27907 24018 27906 +27868 27948 27906 27908 24019 27907 +27869 27949 27907 27909 24020 27908 +27870 27950 27908 27910 24021 27909 +27871 27951 27909 27911 24022 27910 +27872 27952 27910 27912 24023 27911 +27873 27953 27911 27913 24024 27912 +27874 27954 27912 27914 24025 27913 +27875 27955 27913 27915 24026 27914 +27876 27956 27914 27916 24027 27915 +27877 27957 27915 27917 24028 27916 +27878 27958 27916 27918 24029 27917 +27879 27959 27917 27919 24030 27918 +27880 27960 27918 27919 24031 27919 +27881 27961 27920 27921 24032 27920 +27882 27962 27920 27922 24033 27921 +27883 27963 27921 27923 24034 27922 +27884 27964 27922 27924 24035 27923 +27885 27965 27923 27925 24036 27924 +27886 27966 27924 27926 24037 27925 +27887 27967 27925 27927 24038 27926 +27888 27968 27926 27928 24039 27927 +27889 27969 27927 27929 24040 27928 +27890 27970 27928 27930 24041 27929 +27891 27971 27929 27931 24042 27930 +27892 27972 27930 27932 24043 27931 +27893 27973 27931 27933 24044 27932 +27894 27974 27932 27934 24045 27933 +27895 27975 27933 27935 24046 27934 +27896 27976 27934 27936 24047 27935 +27897 27977 27935 27937 24048 27936 +27898 27978 27936 27938 24049 27937 +27899 27979 27937 27939 24050 27938 +27900 27980 27938 27940 24051 27939 +27941 27981 27939 27983 24052 27940 +27900 27984 27940 27942 24053 27941 +27901 27985 27941 27943 24054 27942 +27902 27986 27942 27944 24055 27943 +27903 27987 27943 27945 24056 27944 +27904 27988 27944 27946 24057 27945 +27905 27989 27945 27947 24058 27946 +27906 27990 27946 27948 24059 27947 +27907 27991 27947 27949 24060 27948 +27908 27992 27948 27950 24061 27949 +27909 27993 27949 27951 24062 27950 +27910 27994 27950 27952 24063 27951 +27911 27995 27951 27953 24064 27952 +27912 27996 27952 27954 24065 27953 +27913 27997 27953 27955 24066 27954 +27914 27998 27954 27956 24067 27955 +27915 27999 27955 27957 24068 27956 +27916 28000 27956 27958 24069 27957 +27917 28001 27957 27959 24070 27958 +27918 28002 27958 27960 24071 27959 +27919 28003 27959 27960 24072 27960 +27920 28004 27961 27962 24073 27961 +27921 28005 27961 27963 24074 27962 +27922 28006 27962 27964 24075 27963 +27923 28007 27963 27965 24076 27964 +27924 28008 27964 27966 24077 27965 +27925 28009 27965 27967 24078 27966 +27926 28010 27966 27968 24079 27967 +27927 28011 27967 27969 24080 27968 +27928 28012 27968 27970 24081 27969 +27929 28013 27969 27971 24082 27970 +27930 28014 27970 27972 24083 27971 +27931 28015 27971 27973 24084 27972 +27932 28016 27972 27974 24085 27973 +27933 28017 27973 27975 24086 27974 +27934 28018 27974 27976 24087 27975 +27935 28019 27975 27977 24088 27976 +27936 28020 27976 27978 24089 27977 +27937 28021 27977 27979 24090 27978 +27938 28022 27978 27980 24091 27979 +27939 28023 27979 27981 24092 27980 +27940 28024 27980 27982 24093 27981 +27983 28025 27981 28027 24094 27982 +27940 28028 27982 27984 24095 27983 +27941 28029 27983 27985 24096 27984 +27942 28030 27984 27986 24097 27985 +27943 28031 27985 27987 24098 27986 +27944 28032 27986 27988 24099 27987 +27945 28033 27987 27989 24100 27988 +27946 28034 27988 27990 24101 27989 +27947 28035 27989 27991 24102 27990 +27948 28036 27990 27992 24103 27991 +27949 28037 27991 27993 24104 27992 +27950 28038 27992 27994 24105 27993 +27951 28039 27993 27995 24106 27994 +27952 28040 27994 27996 24107 27995 +27953 28041 27995 27997 24108 27996 +27954 28042 27996 27998 24109 27997 +27955 28043 27997 27999 24110 27998 +27956 28044 27998 28000 24111 27999 +27957 28045 27999 28001 24112 28000 +27958 28046 28000 28002 24113 28001 +27959 28047 28001 28003 24114 28002 +27960 28048 28002 28003 24115 28003 +27961 28049 28004 28005 24116 28004 +27962 28050 28004 28006 24117 28005 +27963 28051 28005 28007 24118 28006 +27964 28052 28006 28008 24119 28007 +27965 28053 28007 28009 24120 28008 +27966 28054 28008 28010 24121 28009 +27967 28055 28009 28011 24122 28010 +27968 28056 28010 28012 24123 28011 +27969 28057 28011 28013 24124 28012 +27970 28058 28012 28014 24125 28013 +27971 28059 28013 28015 24126 28014 +27972 28060 28014 28016 24127 28015 +27973 28061 28015 28017 24128 28016 +27974 28062 28016 28018 24129 28017 +27975 28063 28017 28019 24130 28018 +27976 28064 28018 28020 24131 28019 +27977 28065 28019 28021 24132 28020 +27978 28066 28020 28022 24133 28021 +27979 28067 28021 28023 24134 28022 +27980 28068 28022 28024 24135 28023 +27981 28069 28023 28025 24136 28024 +27982 28070 28024 28026 24137 28025 +28027 28071 28025 28073 24138 28026 +27982 28074 28026 28028 24139 28027 +27983 28075 28027 28029 24140 28028 +27984 28076 28028 28030 24141 28029 +27985 28077 28029 28031 24142 28030 +27986 28078 28030 28032 24143 28031 +27987 28079 28031 28033 24144 28032 +27988 28080 28032 28034 24145 28033 +27989 28081 28033 28035 24146 28034 +27990 28082 28034 28036 24147 28035 +27991 28083 28035 28037 24148 28036 +27992 28084 28036 28038 24149 28037 +27993 28085 28037 28039 24150 28038 +27994 28086 28038 28040 24151 28039 +27995 28087 28039 28041 24152 28040 +27996 28088 28040 28042 24153 28041 +27997 28089 28041 28043 24154 28042 +27998 28090 28042 28044 24155 28043 +27999 28091 28043 28045 24156 28044 +28000 28092 28044 28046 24157 28045 +28001 28093 28045 28047 24158 28046 +28002 28094 28046 28048 24159 28047 +28003 28095 28047 28048 24160 28048 +28004 28096 28049 28050 24161 28049 +28005 28097 28049 28051 24162 28050 +28006 28098 28050 28052 24163 28051 +28007 28099 28051 28053 24164 28052 +28008 28100 28052 28054 24165 28053 +28009 28101 28053 28055 24166 28054 +28010 28102 28054 28056 24167 28055 +28011 28103 28055 28057 24168 28056 +28012 28104 28056 28058 24169 28057 +28013 28105 28057 28059 24170 28058 +28014 28106 28058 28060 24171 28059 +28015 28107 28059 28061 24172 28060 +28016 28108 28060 28062 24173 28061 +28017 28109 28061 28063 24174 28062 +28018 28110 28062 28064 24175 28063 +28019 28111 28063 28065 24176 28064 +28020 28112 28064 28066 24177 28065 +28021 28113 28065 28067 24178 28066 +28022 28114 28066 28068 24179 28067 +28023 28115 28067 28069 24180 28068 +28024 28116 28068 28070 24181 28069 +28025 28117 28069 28071 24182 28070 +28026 28118 28070 28072 24183 28071 +28073 28119 28071 28121 24184 28072 +28026 28122 28072 28074 24185 28073 +28027 28123 28073 28075 24186 28074 +28028 28124 28074 28076 24187 28075 +28029 28125 28075 28077 24188 28076 +28030 28126 28076 28078 24189 28077 +28031 28127 28077 28079 24190 28078 +28032 28128 28078 28080 24191 28079 +28033 28129 28079 28081 24192 28080 +28034 28130 28080 28082 24193 28081 +28035 28131 28081 28083 24194 28082 +28036 28132 28082 28084 24195 28083 +28037 28133 28083 28085 24196 28084 +28038 28134 28084 28086 24197 28085 +28039 28135 28085 28087 24198 28086 +28040 28136 28086 28088 24199 28087 +28041 28137 28087 28089 24200 28088 +28042 28138 28088 28090 24201 28089 +28043 28139 28089 28091 24202 28090 +28044 28140 28090 28092 24203 28091 +28045 28141 28091 28093 24204 28092 +28046 28142 28092 28094 24205 28093 +28047 28143 28093 28095 24206 28094 +28048 28144 28094 28095 24207 28095 +28049 28145 28096 28097 24208 28096 +28050 28146 28096 28098 24209 28097 +28051 28147 28097 28099 24210 28098 +28052 28148 28098 28100 24211 28099 +28053 28149 28099 28101 24212 28100 +28054 28150 28100 28102 24213 28101 +28055 28151 28101 28103 24214 28102 +28056 28152 28102 28104 24215 28103 +28057 28153 28103 28105 24216 28104 +28058 28154 28104 28106 24217 28105 +28059 28155 28105 28107 24218 28106 +28060 28156 28106 28108 24219 28107 +28061 28157 28107 28109 24220 28108 +28062 28158 28108 28110 24221 28109 +28063 28159 28109 28111 24222 28110 +28064 28160 28110 28112 24223 28111 +28065 28161 28111 28113 24224 28112 +28066 28162 28112 28114 24225 28113 +28067 28163 28113 28115 24226 28114 +28068 28164 28114 28116 24227 28115 +28069 28165 28115 28117 24228 28116 +28070 28166 28116 28118 24229 28117 +28071 28167 28117 28119 24230 28118 +28072 28168 28118 28120 24231 28119 +28121 28169 28119 28171 24232 28120 +28072 28172 28120 28122 24233 28121 +28073 28173 28121 28123 24234 28122 +28074 28174 28122 28124 24235 28123 +28075 28175 28123 28125 24236 28124 +28076 28176 28124 28126 24237 28125 +28077 28177 28125 28127 24238 28126 +28078 28178 28126 28128 24239 28127 +28079 28179 28127 28129 24240 28128 +28080 28180 28128 28130 24241 28129 +28081 28181 28129 28131 24242 28130 +28082 28182 28130 28132 24243 28131 +28083 28183 28131 28133 24244 28132 +28084 28184 28132 28134 24245 28133 +28085 28185 28133 28135 24246 28134 +28086 28186 28134 28136 24247 28135 +28087 28187 28135 28137 24248 28136 +28088 28188 28136 28138 24249 28137 +28089 28189 28137 28139 24250 28138 +28090 28190 28138 28140 24251 28139 +28091 28191 28139 28141 24252 28140 +28092 28192 28140 28142 24253 28141 +28093 28193 28141 28143 24254 28142 +28094 28194 28142 28144 24255 28143 +28095 28195 28143 28144 24256 28144 +28096 28196 28145 28146 24257 28145 +28097 28197 28145 28147 24258 28146 +28098 28198 28146 28148 24259 28147 +28099 28199 28147 28149 24260 28148 +28100 28200 28148 28150 24261 28149 +28101 28201 28149 28151 24262 28150 +28102 28202 28150 28152 24263 28151 +28103 28203 28151 28153 24264 28152 +28104 28204 28152 28154 24265 28153 +28105 28205 28153 28155 24266 28154 +28106 28206 28154 28156 24267 28155 +28107 28207 28155 28157 24268 28156 +28108 28208 28156 28158 24269 28157 +28109 28209 28157 28159 24270 28158 +28110 28210 28158 28160 24271 28159 +28111 28211 28159 28161 24272 28160 +28112 28212 28160 28162 24273 28161 +28113 28213 28161 28163 24274 28162 +28114 28214 28162 28164 24275 28163 +28115 28215 28163 28165 24276 28164 +28116 28216 28164 28166 24277 28165 +28117 28217 28165 28167 24278 28166 +28118 28218 28166 28168 24279 28167 +28119 28219 28167 28169 24280 28168 +28120 28220 28168 28170 24281 28169 +28171 28221 28169 28223 24282 28170 +28120 28224 28170 28172 24283 28171 +28121 28225 28171 28173 24284 28172 +28122 28226 28172 28174 24285 28173 +28123 28227 28173 28175 24286 28174 +28124 28228 28174 28176 24287 28175 +28125 28229 28175 28177 24288 28176 +28126 28230 28176 28178 24289 28177 +28127 28231 28177 28179 24290 28178 +28128 28232 28178 28180 24291 28179 +28129 28233 28179 28181 24292 28180 +28130 28234 28180 28182 24293 28181 +28131 28235 28181 28183 24294 28182 +28132 28236 28182 28184 24295 28183 +28133 28237 28183 28185 24296 28184 +28134 28238 28184 28186 24297 28185 +28135 28239 28185 28187 24298 28186 +28136 28240 28186 28188 24299 28187 +28137 28241 28187 28189 24300 28188 +28138 28242 28188 28190 24301 28189 +28139 28243 28189 28191 24302 28190 +28140 28244 28190 28192 24303 28191 +28141 28245 28191 28193 24304 28192 +28142 28246 28192 28194 24305 28193 +28143 28247 28193 28195 24306 28194 +28144 28248 28194 28195 24307 28195 +28145 28249 28196 28197 24308 28196 +28146 28250 28196 28198 24309 28197 +28147 28251 28197 28199 24310 28198 +28148 28252 28198 28200 24311 28199 +28149 28253 28199 28201 24312 28200 +28150 28254 28200 28202 24313 28201 +28151 28255 28201 28203 24314 28202 +28152 28256 28202 28204 24315 28203 +28153 28257 28203 28205 24316 28204 +28154 28258 28204 28206 24317 28205 +28155 28259 28205 28207 24318 28206 +28156 28260 28206 28208 24319 28207 +28157 28261 28207 28209 24320 28208 +28158 28262 28208 28210 24321 28209 +28159 28263 28209 28211 24322 28210 +28160 28264 28210 28212 24323 28211 +28161 28265 28211 28213 24324 28212 +28162 28266 28212 28214 24325 28213 +28163 28267 28213 28215 24326 28214 +28164 28268 28214 28216 24327 28215 +28165 28269 28215 28217 24328 28216 +28166 28270 28216 28218 24329 28217 +28167 28271 28217 28219 24330 28218 +28168 28272 28218 28220 24331 28219 +28169 28273 28219 28221 24332 28220 +28170 28274 28220 28222 24333 28221 +28223 28275 28221 28277 24334 28222 +28170 28278 28222 28224 24335 28223 +28171 28279 28223 28225 24336 28224 +28172 28280 28224 28226 24337 28225 +28173 28281 28225 28227 24338 28226 +28174 28282 28226 28228 24339 28227 +28175 28283 28227 28229 24340 28228 +28176 28284 28228 28230 24341 28229 +28177 28285 28229 28231 24342 28230 +28178 28286 28230 28232 24343 28231 +28179 28287 28231 28233 24344 28232 +28180 28288 28232 28234 24345 28233 +28181 28289 28233 28235 24346 28234 +28182 28290 28234 28236 24347 28235 +28183 28291 28235 28237 24348 28236 +28184 28292 28236 28238 24349 28237 +28185 28293 28237 28239 24350 28238 +28186 28294 28238 28240 24351 28239 +28187 28295 28239 28241 24352 28240 +28188 28296 28240 28242 24353 28241 +28189 28297 28241 28243 24354 28242 +28190 28298 28242 28244 24355 28243 +28191 28299 28243 28245 24356 28244 +28192 28300 28244 28246 24357 28245 +28193 28301 28245 28247 24358 28246 +28194 28302 28246 28248 24359 28247 +28195 28303 28247 28248 24360 28248 +28196 28304 28249 28250 24361 28249 +28197 28305 28249 28251 24362 28250 +28198 28306 28250 28252 24363 28251 +28199 28307 28251 28253 24364 28252 +28200 28308 28252 28254 24365 28253 +28201 28309 28253 28255 24366 28254 +28202 28310 28254 28256 24367 28255 +28203 28311 28255 28257 24368 28256 +28204 28312 28256 28258 24369 28257 +28205 28313 28257 28259 24370 28258 +28206 28314 28258 28260 24371 28259 +28207 28315 28259 28261 24372 28260 +28208 28316 28260 28262 24373 28261 +28209 28317 28261 28263 24374 28262 +28210 28318 28262 28264 24375 28263 +28211 28319 28263 28265 24376 28264 +28212 28320 28264 28266 24377 28265 +28213 28321 28265 28267 24378 28266 +28214 28322 28266 28268 24379 28267 +28215 28323 28267 28269 24380 28268 +28216 28324 28268 28270 24381 28269 +28217 28325 28269 28271 24382 28270 +28218 28326 28270 28272 24383 28271 +28219 28327 28271 28273 24384 28272 +28220 28328 28272 28274 24385 28273 +28221 28329 28273 28275 24386 28274 +28222 28330 28274 28276 24387 28275 +28277 28331 28275 28333 24388 28276 +28222 28334 28276 28278 24389 28277 +28223 28335 28277 28279 24390 28278 +28224 28336 28278 28280 24391 28279 +28225 28337 28279 28281 24392 28280 +28226 28338 28280 28282 24393 28281 +28227 28339 28281 28283 24394 28282 +28228 28340 28282 28284 24395 28283 +28229 28341 28283 28285 24396 28284 +28230 28342 28284 28286 24397 28285 +28231 28343 28285 28287 24398 28286 +28232 28344 28286 28288 24399 28287 +28233 28345 28287 28289 24400 28288 +28234 28346 28288 28290 24401 28289 +28235 28347 28289 28291 24402 28290 +28236 28348 28290 28292 24403 28291 +28237 28349 28291 28293 24404 28292 +28238 28350 28292 28294 24405 28293 +28239 28351 28293 28295 24406 28294 +28240 28352 28294 28296 24407 28295 +28241 28353 28295 28297 24408 28296 +28242 28354 28296 28298 24409 28297 +28243 28355 28297 28299 24410 28298 +28244 28356 28298 28300 24411 28299 +28245 28357 28299 28301 24412 28300 +28246 28358 28300 28302 24413 28301 +28247 28359 28301 28303 24414 28302 +28248 28360 28302 28303 24415 28303 +28249 28361 28304 28305 24416 28304 +28250 28362 28304 28306 24417 28305 +28251 28363 28305 28307 24418 28306 +28252 28364 28306 28308 24419 28307 +28253 28365 28307 28309 24420 28308 +28254 28366 28308 28310 24421 28309 +28255 28367 28309 28311 24422 28310 +28256 28368 28310 28312 24423 28311 +28257 28369 28311 28313 24424 28312 +28258 28370 28312 28314 24425 28313 +28259 28371 28313 28315 24426 28314 +28260 28372 28314 28316 24427 28315 +28261 28373 28315 28317 24428 28316 +28262 28374 28316 28318 24429 28317 +28263 28375 28317 28319 24430 28318 +28264 28376 28318 28320 24431 28319 +28265 28377 28319 28321 24432 28320 +28266 28378 28320 28322 24433 28321 +28267 28379 28321 28323 24434 28322 +28268 28380 28322 28324 24435 28323 +28269 28381 28323 28325 24436 28324 +28270 28382 28324 28326 24437 28325 +28271 28383 28325 28327 24438 28326 +28272 28384 28326 28328 24439 28327 +28273 28385 28327 28329 24440 28328 +28274 28386 28328 28330 24441 28329 +28275 28387 28329 28331 24442 28330 +28276 28388 28330 28332 24443 28331 +28333 28389 28331 28391 24444 28332 +28276 28392 28332 28334 24445 28333 +28277 28393 28333 28335 24446 28334 +28278 28394 28334 28336 24447 28335 +28279 28395 28335 28337 24448 28336 +28280 28396 28336 28338 24449 28337 +28281 28397 28337 28339 24450 28338 +28282 28398 28338 28340 24451 28339 +28283 28399 28339 28341 24452 28340 +28284 28400 28340 28342 24453 28341 +28285 28401 28341 28343 24454 28342 +28286 28402 28342 28344 24455 28343 +28287 28403 28343 28345 24456 28344 +28288 28404 28344 28346 24457 28345 +28289 28405 28345 28347 24458 28346 +28290 28406 28346 28348 24459 28347 +28291 28407 28347 28349 24460 28348 +28292 28408 28348 28350 24461 28349 +28293 28409 28349 28351 24462 28350 +28294 28410 28350 28352 24463 28351 +28295 28411 28351 28353 24464 28352 +28296 28412 28352 28354 24465 28353 +28297 28413 28353 28355 24466 28354 +28298 28414 28354 28356 24467 28355 +28299 28415 28355 28357 24468 28356 +28300 28416 28356 28358 24469 28357 +28301 28417 28357 28359 24470 28358 +28302 28418 28358 28360 24471 28359 +28303 28419 28359 28360 24472 28360 +28304 28420 28361 28362 24473 28361 +28305 28421 28361 28363 24474 28362 +28306 28422 28362 28364 24475 28363 +28307 28423 28363 28365 24476 28364 +28308 28424 28364 28366 24477 28365 +28309 28425 28365 28367 24478 28366 +28310 28426 28366 28368 24479 28367 +28311 28427 28367 28369 24480 28368 +28312 28428 28368 28370 24481 28369 +28313 28429 28369 28371 24482 28370 +28314 28430 28370 28372 24483 28371 +28315 28431 28371 28373 24484 28372 +28316 28432 28372 28374 24485 28373 +28317 28433 28373 28375 24486 28374 +28318 28434 28374 28376 24487 28375 +28319 28435 28375 28377 24488 28376 +28320 28436 28376 28378 24489 28377 +28321 28437 28377 28379 24490 28378 +28322 28438 28378 28380 24491 28379 +28323 28439 28379 28381 24492 28380 +28324 28440 28380 28382 24493 28381 +28325 28441 28381 28383 24494 28382 +28326 28442 28382 28384 24495 28383 +28327 28443 28383 28385 24496 28384 +28328 28444 28384 28386 24497 28385 +28329 28445 28385 28387 24498 28386 +28330 28446 28386 28388 24499 28387 +28331 28447 28387 28389 24500 28388 +28332 28448 28388 28390 24501 28389 +28391 28449 28389 28451 24502 28390 +28332 28452 28390 28392 24503 28391 +28333 28453 28391 28393 24504 28392 +28334 28454 28392 28394 24505 28393 +28335 28455 28393 28395 24506 28394 +28336 28456 28394 28396 24507 28395 +28337 28457 28395 28397 24508 28396 +28338 28458 28396 28398 24509 28397 +28339 28459 28397 28399 24510 28398 +28340 28460 28398 28400 24511 28399 +28341 28461 28399 28401 24512 28400 +28342 28462 28400 28402 24513 28401 +28343 28463 28401 28403 24514 28402 +28344 28464 28402 28404 24515 28403 +28345 28465 28403 28405 24516 28404 +28346 28466 28404 28406 24517 28405 +28347 28467 28405 28407 24518 28406 +28348 28468 28406 28408 24519 28407 +28349 28469 28407 28409 24520 28408 +28350 28470 28408 28410 24521 28409 +28351 28471 28409 28411 24522 28410 +28352 28472 28410 28412 24523 28411 +28353 28473 28411 28413 24524 28412 +28354 28474 28412 28414 24525 28413 +28355 28475 28413 28415 24526 28414 +28356 28476 28414 28416 24527 28415 +28357 28477 28415 28417 24528 28416 +28358 28478 28416 28418 24529 28417 +28359 28479 28417 28419 24530 28418 +28360 28480 28418 28419 24531 28419 +28361 28481 28420 28421 24532 28420 +28362 28482 28420 28422 24533 28421 +28363 28483 28421 28423 24534 28422 +28364 28484 28422 28424 24535 28423 +28365 28485 28423 28425 24536 28424 +28366 28486 28424 28426 24537 28425 +28367 28487 28425 28427 24538 28426 +28368 28488 28426 28428 24539 28427 +28369 28489 28427 28429 24540 28428 +28370 28490 28428 28430 24541 28429 +28371 28491 28429 28431 24542 28430 +28372 28492 28430 28432 24543 28431 +28373 28493 28431 28433 24544 28432 +28374 28494 28432 28434 24545 28433 +28375 28495 28433 28435 24546 28434 +28376 28496 28434 28436 24547 28435 +28377 28497 28435 28437 24548 28436 +28378 28498 28436 28438 24549 28437 +28379 28499 28437 28439 24550 28438 +28380 28500 28438 28440 24551 28439 +28381 28501 28439 28441 24552 28440 +28382 28502 28440 28442 24553 28441 +28383 28503 28441 28443 24554 28442 +28384 28504 28442 28444 24555 28443 +28385 28505 28443 28445 24556 28444 +28386 28506 28444 28446 24557 28445 +28387 28507 28445 28447 24558 28446 +28388 28508 28446 28448 24559 28447 +28389 28509 28447 28449 24560 28448 +28390 28510 28448 28450 24561 28449 +28451 28511 28449 28513 24562 28450 +28390 28514 28450 28452 24563 28451 +28391 28515 28451 28453 24564 28452 +28392 28516 28452 28454 24565 28453 +28393 28517 28453 28455 24566 28454 +28394 28518 28454 28456 24567 28455 +28395 28519 28455 28457 24568 28456 +28396 28520 28456 28458 24569 28457 +28397 28521 28457 28459 24570 28458 +28398 28522 28458 28460 24571 28459 +28399 28523 28459 28461 24572 28460 +28400 28524 28460 28462 24573 28461 +28401 28525 28461 28463 24574 28462 +28402 28526 28462 28464 24575 28463 +28403 28527 28463 28465 24576 28464 +28404 28528 28464 28466 24577 28465 +28405 28529 28465 28467 24578 28466 +28406 28530 28466 28468 24579 28467 +28407 28531 28467 28469 24580 28468 +28408 28532 28468 28470 24581 28469 +28409 28533 28469 28471 24582 28470 +28410 28534 28470 28472 24583 28471 +28411 28535 28471 28473 24584 28472 +28412 28536 28472 28474 24585 28473 +28413 28537 28473 28475 24586 28474 +28414 28538 28474 28476 24587 28475 +28415 28539 28475 28477 24588 28476 +28416 28540 28476 28478 24589 28477 +28417 28541 28477 28479 24590 28478 +28418 28542 28478 28480 24591 28479 +28419 28543 28479 28480 24592 28480 +28420 28544 28481 28482 24593 28481 +28421 28545 28481 28483 24594 28482 +28422 28546 28482 28484 24595 28483 +28423 28547 28483 28485 24596 28484 +28424 28548 28484 28486 24597 28485 +28425 28549 28485 28487 24598 28486 +28426 28550 28486 28488 24599 28487 +28427 28551 28487 28489 24600 28488 +28428 28552 28488 28490 24601 28489 +28429 28553 28489 28491 24602 28490 +28430 28554 28490 28492 24603 28491 +28431 28555 28491 28493 24604 28492 +28432 28556 28492 28494 24605 28493 +28433 28557 28493 28495 24606 28494 +28434 28558 28494 28496 24607 28495 +28435 28559 28495 28497 24608 28496 +28436 28560 28496 28498 24609 28497 +28437 28561 28497 28499 24610 28498 +28438 28562 28498 28500 24611 28499 +28439 28563 28499 28501 24612 28500 +28440 28564 28500 28502 24613 28501 +28441 28565 28501 28503 24614 28502 +28442 28566 28502 28504 24615 28503 +28443 28567 28503 28505 24616 28504 +28444 28568 28504 28506 24617 28505 +28445 28569 28505 28507 24618 28506 +28446 28570 28506 28508 24619 28507 +28447 28571 28507 28509 24620 28508 +28448 28572 28508 28510 24621 28509 +28449 28573 28509 28511 24622 28510 +28450 28574 28510 28512 24623 28511 +28513 28575 28511 28577 24624 28512 +28450 28578 28512 28514 24625 28513 +28451 28579 28513 28515 24626 28514 +28452 28580 28514 28516 24627 28515 +28453 28581 28515 28517 24628 28516 +28454 28582 28516 28518 24629 28517 +28455 28583 28517 28519 24630 28518 +28456 28584 28518 28520 24631 28519 +28457 28585 28519 28521 24632 28520 +28458 28586 28520 28522 24633 28521 +28459 28587 28521 28523 24634 28522 +28460 28588 28522 28524 24635 28523 +28461 28589 28523 28525 24636 28524 +28462 28590 28524 28526 24637 28525 +28463 28591 28525 28527 24638 28526 +28464 28592 28526 28528 24639 28527 +28465 28593 28527 28529 24640 28528 +28466 28594 28528 28530 24641 28529 +28467 28595 28529 28531 24642 28530 +28468 28596 28530 28532 24643 28531 +28469 28597 28531 28533 24644 28532 +28470 28598 28532 28534 24645 28533 +28471 28599 28533 28535 24646 28534 +28472 28600 28534 28536 24647 28535 +28473 28601 28535 28537 24648 28536 +28474 28602 28536 28538 24649 28537 +28475 28603 28537 28539 24650 28538 +28476 28604 28538 28540 24651 28539 +28477 28605 28539 28541 24652 28540 +28478 28606 28540 28542 24653 28541 +28479 28607 28541 28543 24654 28542 +28480 28608 28542 28543 24655 28543 +28481 28609 28544 28545 24656 28544 +28482 28610 28544 28546 24657 28545 +28483 28611 28545 28547 24658 28546 +28484 28612 28546 28548 24659 28547 +28485 28613 28547 28549 24660 28548 +28486 28614 28548 28550 24661 28549 +28487 28615 28549 28551 24662 28550 +28488 28616 28550 28552 24663 28551 +28489 28617 28551 28553 24664 28552 +28490 28618 28552 28554 24665 28553 +28491 28619 28553 28555 24666 28554 +28492 28620 28554 28556 24667 28555 +28493 28621 28555 28557 24668 28556 +28494 28622 28556 28558 24669 28557 +28495 28623 28557 28559 24670 28558 +28496 28624 28558 28560 24671 28559 +28497 28625 28559 28561 24672 28560 +28498 28626 28560 28562 24673 28561 +28499 28627 28561 28563 24674 28562 +28500 28628 28562 28564 24675 28563 +28501 28629 28563 28565 24676 28564 +28502 28630 28564 28566 24677 28565 +28503 28631 28565 28567 24678 28566 +28504 28632 28566 28568 24679 28567 +28505 28633 28567 28569 24680 28568 +28506 28634 28568 28570 24681 28569 +28507 28635 28569 28571 24682 28570 +28508 28636 28570 28572 24683 28571 +28509 28637 28571 28573 24684 28572 +28510 28638 28572 28574 24685 28573 +28511 28639 28573 28575 24686 28574 +28512 28640 28574 28576 24687 28575 +28577 28641 28575 28643 24688 28576 +28512 28644 28576 28578 24689 28577 +28513 28645 28577 28579 24690 28578 +28514 28646 28578 28580 24691 28579 +28515 28647 28579 28581 24692 28580 +28516 28648 28580 28582 24693 28581 +28517 28649 28581 28583 24694 28582 +28518 28650 28582 28584 24695 28583 +28519 28651 28583 28585 24696 28584 +28520 28652 28584 28586 24697 28585 +28521 28653 28585 28587 24698 28586 +28522 28654 28586 28588 24699 28587 +28523 28655 28587 28589 24700 28588 +28524 28656 28588 28590 24701 28589 +28525 28657 28589 28591 24702 28590 +28526 28658 28590 28592 24703 28591 +28527 28659 28591 28593 24704 28592 +28528 28660 28592 28594 24705 28593 +28529 28661 28593 28595 24706 28594 +28530 28662 28594 28596 24707 28595 +28531 28663 28595 28597 24708 28596 +28532 28664 28596 28598 24709 28597 +28533 28665 28597 28599 24710 28598 +28534 28666 28598 28600 24711 28599 +28535 28667 28599 28601 24712 28600 +28536 28668 28600 28602 24713 28601 +28537 28669 28601 28603 24714 28602 +28538 28670 28602 28604 24715 28603 +28539 28671 28603 28605 24716 28604 +28540 28672 28604 28606 24717 28605 +28541 28673 28605 28607 24718 28606 +28542 28674 28606 28608 24719 28607 +28543 28675 28607 28608 24720 28608 +28544 28676 28609 28610 24721 28609 +28545 28677 28609 28611 24722 28610 +28546 28678 28610 28612 24723 28611 +28547 28679 28611 28613 24724 28612 +28548 28680 28612 28614 24725 28613 +28549 28681 28613 28615 24726 28614 +28550 28682 28614 28616 24727 28615 +28551 28683 28615 28617 24728 28616 +28552 28684 28616 28618 24729 28617 +28553 28685 28617 28619 24730 28618 +28554 28686 28618 28620 24731 28619 +28555 28687 28619 28621 24732 28620 +28556 28688 28620 28622 24733 28621 +28557 28689 28621 28623 24734 28622 +28558 28690 28622 28624 24735 28623 +28559 28691 28623 28625 24736 28624 +28560 28692 28624 28626 24737 28625 +28561 28693 28625 28627 24738 28626 +28562 28694 28626 28628 24739 28627 +28563 28695 28627 28629 24740 28628 +28564 28696 28628 28630 24741 28629 +28565 28697 28629 28631 24742 28630 +28566 28698 28630 28632 24743 28631 +28567 28699 28631 28633 24744 28632 +28568 28700 28632 28634 24745 28633 +28569 28701 28633 28635 24746 28634 +28570 28702 28634 28636 24747 28635 +28571 28703 28635 28637 24748 28636 +28572 28704 28636 28638 24749 28637 +28573 28705 28637 28639 24750 28638 +28574 28706 28638 28640 24751 28639 +28575 28707 28639 28641 24752 28640 +28576 28708 28640 28642 24753 28641 +28643 28709 28641 28711 24754 28642 +28576 28712 28642 28644 24755 28643 +28577 28713 28643 28645 24756 28644 +28578 28714 28644 28646 24757 28645 +28579 28715 28645 28647 24758 28646 +28580 28716 28646 28648 24759 28647 +28581 28717 28647 28649 24760 28648 +28582 28718 28648 28650 24761 28649 +28583 28719 28649 28651 24762 28650 +28584 28720 28650 28652 24763 28651 +28585 28721 28651 28653 24764 28652 +28586 28722 28652 28654 24765 28653 +28587 28723 28653 28655 24766 28654 +28588 28724 28654 28656 24767 28655 +28589 28725 28655 28657 24768 28656 +28590 28726 28656 28658 24769 28657 +28591 28727 28657 28659 24770 28658 +28592 28728 28658 28660 24771 28659 +28593 28729 28659 28661 24772 28660 +28594 28730 28660 28662 24773 28661 +28595 28731 28661 28663 24774 28662 +28596 28732 28662 28664 24775 28663 +28597 28733 28663 28665 24776 28664 +28598 28734 28664 28666 24777 28665 +28599 28735 28665 28667 24778 28666 +28600 28736 28666 28668 24779 28667 +28601 28737 28667 28669 24780 28668 +28602 28738 28668 28670 24781 28669 +28603 28739 28669 28671 24782 28670 +28604 28740 28670 28672 24783 28671 +28605 28741 28671 28673 24784 28672 +28606 28742 28672 28674 24785 28673 +28607 28743 28673 28675 24786 28674 +28608 28744 28674 28675 24787 28675 +28609 28745 28676 28677 24788 28676 +28610 28746 28676 28678 24789 28677 +28611 28747 28677 28679 24790 28678 +28612 28748 28678 28680 24791 28679 +28613 28749 28679 28681 24792 28680 +28614 28750 28680 28682 24793 28681 +28615 28751 28681 28683 24794 28682 +28616 28752 28682 28684 24795 28683 +28617 28753 28683 28685 24796 28684 +28618 28754 28684 28686 24797 28685 +28619 28755 28685 28687 24798 28686 +28620 28756 28686 28688 24799 28687 +28621 28757 28687 28689 24800 28688 +28622 28758 28688 28690 24801 28689 +28623 28759 28689 28691 24802 28690 +28624 28760 28690 28692 24803 28691 +28625 28761 28691 28693 24804 28692 +28626 28762 28692 28694 24805 28693 +28627 28763 28693 28695 24806 28694 +28628 28764 28694 28696 24807 28695 +28629 28765 28695 28697 24808 28696 +28630 28766 28696 28698 24809 28697 +28631 28767 28697 28699 24810 28698 +28632 28768 28698 28700 24811 28699 +28633 28769 28699 28701 24812 28700 +28634 28770 28700 28702 24813 28701 +28635 28771 28701 28703 24814 28702 +28636 28772 28702 28704 24815 28703 +28637 28773 28703 28705 24816 28704 +28638 28774 28704 28706 24817 28705 +28639 28775 28705 28707 24818 28706 +28640 28776 28706 28708 24819 28707 +28641 28777 28707 28709 24820 28708 +28642 28778 28708 28710 24821 28709 +28711 28779 28709 28781 24822 28710 +28642 28782 28710 28712 24823 28711 +28643 28783 28711 28713 24824 28712 +28644 28784 28712 28714 24825 28713 +28645 28785 28713 28715 24826 28714 +28646 28786 28714 28716 24827 28715 +28647 28787 28715 28717 24828 28716 +28648 28788 28716 28718 24829 28717 +28649 28789 28717 28719 24830 28718 +28650 28790 28718 28720 24831 28719 +28651 28791 28719 28721 24832 28720 +28652 28792 28720 28722 24833 28721 +28653 28793 28721 28723 24834 28722 +28654 28794 28722 28724 24835 28723 +28655 28795 28723 28725 24836 28724 +28656 28796 28724 28726 24837 28725 +28657 28797 28725 28727 24838 28726 +28658 28798 28726 28728 24839 28727 +28659 28799 28727 28729 24840 28728 +28660 28800 28728 28730 24841 28729 +28661 28801 28729 28731 24842 28730 +28662 28802 28730 28732 24843 28731 +28663 28803 28731 28733 24844 28732 +28664 28804 28732 28734 24845 28733 +28665 28805 28733 28735 24846 28734 +28666 28806 28734 28736 24847 28735 +28667 28807 28735 28737 24848 28736 +28668 28808 28736 28738 24849 28737 +28669 28809 28737 28739 24850 28738 +28670 28810 28738 28740 24851 28739 +28671 28811 28739 28741 24852 28740 +28672 28812 28740 28742 24853 28741 +28673 28813 28741 28743 24854 28742 +28674 28814 28742 28744 24855 28743 +28675 28815 28743 28744 24856 28744 +28676 28816 28745 28746 24857 28745 +28677 28817 28745 28747 24858 28746 +28678 28818 28746 28748 24859 28747 +28679 28819 28747 28749 24860 28748 +28680 28820 28748 28750 24861 28749 +28681 28821 28749 28751 24862 28750 +28682 28822 28750 28752 24863 28751 +28683 28823 28751 28753 24864 28752 +28684 28824 28752 28754 24865 28753 +28685 28825 28753 28755 24866 28754 +28686 28826 28754 28756 24867 28755 +28687 28827 28755 28757 24868 28756 +28688 28828 28756 28758 24869 28757 +28689 28829 28757 28759 24870 28758 +28690 28830 28758 28760 24871 28759 +28691 28831 28759 28761 24872 28760 +28692 28832 28760 28762 24873 28761 +28693 28833 28761 28763 24874 28762 +28694 28834 28762 28764 24875 28763 +28695 28835 28763 28765 24876 28764 +28696 28836 28764 28766 24877 28765 +28697 28837 28765 28767 24878 28766 +28698 28838 28766 28768 24879 28767 +28699 28839 28767 28769 24880 28768 +28700 28840 28768 28770 24881 28769 +28701 28841 28769 28771 24882 28770 +28702 28842 28770 28772 24883 28771 +28703 28843 28771 28773 24884 28772 +28704 28844 28772 28774 24885 28773 +28705 28845 28773 28775 24886 28774 +28706 28846 28774 28776 24887 28775 +28707 28847 28775 28777 24888 28776 +28708 28848 28776 28778 24889 28777 +28709 28849 28777 28779 24890 28778 +28710 28850 28778 28780 24891 28779 +28781 28851 28779 28852 24892 28780 +28710 28853 28780 28782 24893 28781 +28711 28854 28781 28783 24894 28782 +28712 28855 28782 28784 24895 28783 +28713 28856 28783 28785 24896 28784 +28714 28857 28784 28786 24897 28785 +28715 28858 28785 28787 24898 28786 +28716 28859 28786 28788 24899 28787 +28717 28860 28787 28789 24900 28788 +28718 28861 28788 28790 24901 28789 +28719 28862 28789 28791 24902 28790 +28720 28863 28790 28792 24903 28791 +28721 28864 28791 28793 24904 28792 +28722 28865 28792 28794 24905 28793 +28723 28866 28793 28795 24906 28794 +28724 28867 28794 28796 24907 28795 +28725 28868 28795 28797 24908 28796 +28726 28869 28796 28798 24909 28797 +28727 28870 28797 28799 24910 28798 +28728 28871 28798 28800 24911 28799 +28729 28872 28799 28801 24912 28800 +28730 28873 28800 28802 24913 28801 +28731 28874 28801 28803 24914 28802 +28732 28875 28802 28804 24915 28803 +28733 28876 28803 28805 24916 28804 +28734 28877 28804 28806 24917 28805 +28735 28878 28805 28807 24918 28806 +28736 28879 28806 28808 24919 28807 +28737 28880 28807 28809 24920 28808 +28738 28881 28808 28810 24921 28809 +28739 28882 28809 28811 24922 28810 +28740 28883 28810 28812 24923 28811 +28741 28884 28811 28813 24924 28812 +28742 28885 28812 28814 24925 28813 +28743 28886 28813 28815 24926 28814 +28744 28887 28814 28815 24927 28815 +28745 28888 28816 28817 24928 28816 +28746 28889 28816 28818 24929 28817 +28747 28890 28817 28819 24930 28818 +28748 28891 28818 28820 24931 28819 +28749 28892 28819 28821 24932 28820 +28750 28893 28820 28822 24933 28821 +28751 28894 28821 28823 24934 28822 +28752 28895 28822 28824 24935 28823 +28753 28896 28823 28825 24936 28824 +28754 28897 28824 28826 24937 28825 +28755 28898 28825 28827 24938 28826 +28756 28899 28826 28828 24939 28827 +28757 28900 28827 28829 24940 28828 +28758 28901 28828 28830 24941 28829 +28759 28902 28829 28831 24942 28830 +28760 28903 28830 28832 24943 28831 +28761 28904 28831 28833 24944 28832 +28762 28905 28832 28834 24945 28833 +28763 28906 28833 28835 24946 28834 +28764 28907 28834 28836 24947 28835 +28765 28908 28835 28837 24948 28836 +28766 28909 28836 28838 24949 28837 +28767 28910 28837 28839 24950 28838 +28768 28911 28838 28840 24951 28839 +28769 28912 28839 28841 24952 28840 +28770 28913 28840 28842 24953 28841 +28771 28914 28841 28843 24954 28842 +28772 28915 28842 28844 24955 28843 +28773 28916 28843 28845 24956 28844 +28774 28917 28844 28846 24957 28845 +28775 28918 28845 28847 24958 28846 +28776 28919 28846 28848 24959 28847 +28777 28920 28847 28849 24960 28848 +28778 28921 28848 28850 24961 28849 +28779 28922 28849 28851 24962 28850 +28780 28923 28850 28852 24963 28851 +28780 28924 28851 28853 24964 28852 +28781 28925 28852 28854 24965 28853 +28782 28926 28853 28855 24966 28854 +28783 28927 28854 28856 24967 28855 +28784 28928 28855 28857 24968 28856 +28785 28929 28856 28858 24969 28857 +28786 28930 28857 28859 24970 28858 +28787 28931 28858 28860 24971 28859 +28788 28932 28859 28861 24972 28860 +28789 28933 28860 28862 24973 28861 +28790 28934 28861 28863 24974 28862 +28791 28935 28862 28864 24975 28863 +28792 28936 28863 28865 24976 28864 +28793 28937 28864 28866 24977 28865 +28794 28938 28865 28867 24978 28866 +28795 28939 28866 28868 24979 28867 +28796 28940 28867 28869 24980 28868 +28797 28941 28868 28870 24981 28869 +28798 28942 28869 28871 24982 28870 +28799 28943 28870 28872 24983 28871 +28800 28944 28871 28873 24984 28872 +28801 28945 28872 28874 24985 28873 +28802 28946 28873 28875 24986 28874 +28803 28947 28874 28876 24987 28875 +28804 28948 28875 28877 24988 28876 +28805 28949 28876 28878 24989 28877 +28806 28950 28877 28879 24990 28878 +28807 28951 28878 28880 24991 28879 +28808 28952 28879 28881 24992 28880 +28809 28953 28880 28882 24993 28881 +28810 28954 28881 28883 24994 28882 +28811 28955 28882 28884 24995 28883 +28812 28956 28883 28885 24996 28884 +28813 28957 28884 28886 24997 28885 +28814 28958 28885 28887 24998 28886 +28815 28959 28886 28887 24999 28887 +28816 28960 28888 28889 25000 28888 +28817 28961 28888 28890 25001 28889 +28818 28962 28889 28891 25002 28890 +28819 28963 28890 28892 25003 28891 +28820 28964 28891 28893 25004 28892 +28821 28965 28892 28894 25005 28893 +28822 28966 28893 28895 25006 28894 +28823 28967 28894 28896 25007 28895 +28824 28968 28895 28897 25008 28896 +28825 28969 28896 28898 25009 28897 +28826 28970 28897 28899 25010 28898 +28827 28971 28898 28900 25011 28899 +28828 28972 28899 28901 25012 28900 +28829 28973 28900 28902 25013 28901 +28830 28974 28901 28903 25014 28902 +28831 28975 28902 28904 25015 28903 +28832 28976 28903 28905 25016 28904 +28833 28977 28904 28906 25017 28905 +28834 28978 28905 28907 25018 28906 +28835 28979 28906 28908 25019 28907 +28836 28980 28907 28909 25020 28908 +28837 28981 28908 28910 25021 28909 +28838 28982 28909 28911 25022 28910 +28839 28983 28910 28912 25023 28911 +28840 28984 28911 28913 25024 28912 +28841 28985 28912 28914 25025 28913 +28842 28986 28913 28915 25026 28914 +28843 28987 28914 28916 25027 28915 +28844 28988 28915 28917 25028 28916 +28845 28989 28916 28918 25029 28917 +28846 28990 28917 28919 25030 28918 +28847 28991 28918 28920 25031 28919 +28848 28992 28919 28921 25032 28920 +28849 28993 28920 28922 25033 28921 +28850 28994 28921 28923 25034 28922 +28851 28995 28922 28924 25035 28923 +28852 28996 28923 28925 25036 28924 +28853 28997 28924 28926 25037 28925 +28854 28998 28925 28927 25038 28926 +28855 28999 28926 28928 25039 28927 +28856 29000 28927 28929 25040 28928 +28857 29001 28928 28930 25041 28929 +28858 29002 28929 28931 25042 28930 +28859 29003 28930 28932 25043 28931 +28860 29004 28931 28933 25044 28932 +28861 29005 28932 28934 25045 28933 +28862 29006 28933 28935 25046 28934 +28863 29007 28934 28936 25047 28935 +28864 29008 28935 28937 25048 28936 +28865 29009 28936 28938 25049 28937 +28866 29010 28937 28939 25050 28938 +28867 29011 28938 28940 25051 28939 +28868 29012 28939 28941 25052 28940 +28869 29013 28940 28942 25053 28941 +28870 29014 28941 28943 25054 28942 +28871 29015 28942 28944 25055 28943 +28872 29016 28943 28945 25056 28944 +28873 29017 28944 28946 25057 28945 +28874 29018 28945 28947 25058 28946 +28875 29019 28946 28948 25059 28947 +28876 29020 28947 28949 25060 28948 +28877 29021 28948 28950 25061 28949 +28878 29022 28949 28951 25062 28950 +28879 29023 28950 28952 25063 28951 +28880 29024 28951 28953 25064 28952 +28881 29025 28952 28954 25065 28953 +28882 29026 28953 28955 25066 28954 +28883 29027 28954 28956 25067 28955 +28884 29028 28955 28957 25068 28956 +28885 29029 28956 28958 25069 28957 +28886 29030 28957 28959 25070 28958 +28887 29031 28958 28959 25071 28959 +28888 29032 28960 28961 25072 28960 +28889 29033 28960 28962 25073 28961 +28890 29034 28961 28963 25074 28962 +28891 29035 28962 28964 25075 28963 +28892 29036 28963 28965 25076 28964 +28893 29037 28964 28966 25077 28965 +28894 29038 28965 28967 25078 28966 +28895 29039 28966 28968 25079 28967 +28896 29040 28967 28969 25080 28968 +28897 29041 28968 28970 25081 28969 +28898 29042 28969 28971 25082 28970 +28899 29043 28970 28972 25083 28971 +28900 29044 28971 28973 25084 28972 +28901 29045 28972 28974 25085 28973 +28902 29046 28973 28975 25086 28974 +28903 29047 28974 28976 25087 28975 +28904 29048 28975 28977 25088 28976 +28905 29049 28976 28978 25089 28977 +28906 29050 28977 28979 25090 28978 +28907 29051 28978 28980 25091 28979 +28908 29052 28979 28981 25092 28980 +28909 29053 28980 28982 25093 28981 +28910 29054 28981 28983 25094 28982 +28911 29055 28982 28984 25095 28983 +28912 29056 28983 28985 25096 28984 +28913 29057 28984 28986 25097 28985 +28914 29058 28985 28987 25098 28986 +28915 29059 28986 28988 25099 28987 +28916 29060 28987 28989 25100 28988 +28917 29061 28988 28990 25101 28989 +28918 29062 28989 28991 25102 28990 +28919 29063 28990 28992 25103 28991 +28920 29064 28991 28993 25104 28992 +28921 29065 28992 28994 25105 28993 +28922 29066 28993 28995 25106 28994 +28923 29067 28994 28996 25107 28995 +28924 29068 28995 28997 25108 28996 +28925 29069 28996 28998 25109 28997 +28926 29070 28997 28999 25110 28998 +28927 29071 28998 29000 25111 28999 +28928 29072 28999 29001 25112 29000 +28929 29073 29000 29002 25113 29001 +28930 29074 29001 29003 25114 29002 +28931 29075 29002 29004 25115 29003 +28932 29076 29003 29005 25116 29004 +28933 29077 29004 29006 25117 29005 +28934 29078 29005 29007 25118 29006 +28935 29079 29006 29008 25119 29007 +28936 29080 29007 29009 25120 29008 +28937 29081 29008 29010 25121 29009 +28938 29082 29009 29011 25122 29010 +28939 29083 29010 29012 25123 29011 +28940 29084 29011 29013 25124 29012 +28941 29085 29012 29014 25125 29013 +28942 29086 29013 29015 25126 29014 +28943 29087 29014 29016 25127 29015 +28944 29088 29015 29017 25128 29016 +28945 29089 29016 29018 25129 29017 +28946 29090 29017 29019 25130 29018 +28947 29091 29018 29020 25131 29019 +28948 29092 29019 29021 25132 29020 +28949 29093 29020 29022 25133 29021 +28950 29094 29021 29023 25134 29022 +28951 29095 29022 29024 25135 29023 +28952 29096 29023 29025 25136 29024 +28953 29097 29024 29026 25137 29025 +28954 29098 29025 29027 25138 29026 +28955 29099 29026 29028 25139 29027 +28956 29100 29027 29029 25140 29028 +28957 29101 29028 29030 25141 29029 +28958 29102 29029 29031 25142 29030 +28959 29103 29030 29031 25143 29031 +28960 29104 29032 29033 25144 29032 +28961 29105 29032 29034 25145 29033 +28962 29106 29033 29035 25146 29034 +28963 29107 29034 29036 25147 29035 +28964 29108 29035 29037 25148 29036 +28965 29109 29036 29038 25149 29037 +28966 29110 29037 29039 25150 29038 +28967 29111 29038 29040 25151 29039 +28968 29112 29039 29041 25152 29040 +28969 29113 29040 29042 25153 29041 +28970 29114 29041 29043 25154 29042 +28971 29115 29042 29044 25155 29043 +28972 29116 29043 29045 25156 29044 +28973 29117 29044 29046 25157 29045 +28974 29118 29045 29047 25158 29046 +28975 29119 29046 29048 25159 29047 +28976 29120 29047 29049 25160 29048 +28977 29121 29048 29050 25161 29049 +28978 29122 29049 29051 25162 29050 +28979 29123 29050 29052 25163 29051 +28980 29124 29051 29053 25164 29052 +28981 29125 29052 29054 25165 29053 +28982 29126 29053 29055 25166 29054 +28983 29127 29054 29056 25167 29055 +28984 29128 29055 29057 25168 29056 +28985 29129 29056 29058 25169 29057 +28986 29130 29057 29059 25170 29058 +28987 29131 29058 29060 25171 29059 +28988 29132 29059 29061 25172 29060 +28989 29133 29060 29062 25173 29061 +28990 29134 29061 29063 25174 29062 +28991 29135 29062 29064 25175 29063 +28992 29136 29063 29065 25176 29064 +28993 29137 29064 29066 25177 29065 +28994 29138 29065 29067 25178 29066 +28995 29139 29066 29068 25179 29067 +28996 29140 29067 29069 25180 29068 +28997 29141 29068 29070 25181 29069 +28998 29142 29069 29071 25182 29070 +28999 29143 29070 29072 25183 29071 +29000 29144 29071 29073 25184 29072 +29001 29145 29072 29074 25185 29073 +29002 29146 29073 29075 25186 29074 +29003 29147 29074 29076 25187 29075 +29004 29148 29075 29077 25188 29076 +29005 29149 29076 29078 25189 29077 +29006 29150 29077 29079 25190 29078 +29007 29151 29078 29080 25191 29079 +29008 29152 29079 29081 25192 29080 +29009 29153 29080 29082 25193 29081 +29010 29154 29081 29083 25194 29082 +29011 29155 29082 29084 25195 29083 +29012 29156 29083 29085 25196 29084 +29013 29157 29084 29086 25197 29085 +29014 29158 29085 29087 25198 29086 +29015 29159 29086 29088 25199 29087 +29016 29160 29087 29089 25200 29088 +29017 29161 29088 29090 25201 29089 +29018 29162 29089 29091 25202 29090 +29019 29163 29090 29092 25203 29091 +29020 29164 29091 29093 25204 29092 +29021 29165 29092 29094 25205 29093 +29022 29166 29093 29095 25206 29094 +29023 29167 29094 29096 25207 29095 +29024 29168 29095 29097 25208 29096 +29025 29169 29096 29098 25209 29097 +29026 29170 29097 29099 25210 29098 +29027 29171 29098 29100 25211 29099 +29028 29172 29099 29101 25212 29100 +29029 29173 29100 29102 25213 29101 +29030 29174 29101 29103 25214 29102 +29031 29175 29102 29103 25215 29103 +29032 29176 29104 29105 25216 29104 +29033 29177 29104 29106 25217 29105 +29034 29178 29105 29107 25218 29106 +29035 29179 29106 29108 25219 29107 +29036 29180 29107 29109 25220 29108 +29037 29181 29108 29110 25221 29109 +29038 29182 29109 29111 25222 29110 +29039 29183 29110 29112 25223 29111 +29040 29184 29111 29113 25224 29112 +29041 29185 29112 29114 25225 29113 +29042 29186 29113 29115 25226 29114 +29043 29187 29114 29116 25227 29115 +29044 29188 29115 29117 25228 29116 +29045 29189 29116 29118 25229 29117 +29046 29190 29117 29119 25230 29118 +29047 29191 29118 29120 25231 29119 +29048 29192 29119 29121 25232 29120 +29049 29193 29120 29122 25233 29121 +29050 29194 29121 29123 25234 29122 +29051 29195 29122 29124 25235 29123 +29052 29196 29123 29125 25236 29124 +29053 29197 29124 29126 25237 29125 +29054 29198 29125 29127 25238 29126 +29055 29199 29126 29128 25239 29127 +29056 29200 29127 29129 25240 29128 +29057 29201 29128 29130 25241 29129 +29058 29202 29129 29131 25242 29130 +29059 29203 29130 29132 25243 29131 +29060 29204 29131 29133 25244 29132 +29061 29205 29132 29134 25245 29133 +29062 29206 29133 29135 25246 29134 +29063 29207 29134 29136 25247 29135 +29064 29208 29135 29137 25248 29136 +29065 29209 29136 29138 25249 29137 +29066 29210 29137 29139 25250 29138 +29067 29211 29138 29140 25251 29139 +29068 29212 29139 29141 25252 29140 +29069 29213 29140 29142 25253 29141 +29070 29214 29141 29143 25254 29142 +29071 29215 29142 29144 25255 29143 +29072 29216 29143 29145 25256 29144 +29073 29217 29144 29146 25257 29145 +29074 29218 29145 29147 25258 29146 +29075 29219 29146 29148 25259 29147 +29076 29220 29147 29149 25260 29148 +29077 29221 29148 29150 25261 29149 +29078 29222 29149 29151 25262 29150 +29079 29223 29150 29152 25263 29151 +29080 29224 29151 29153 25264 29152 +29081 29225 29152 29154 25265 29153 +29082 29226 29153 29155 25266 29154 +29083 29227 29154 29156 25267 29155 +29084 29228 29155 29157 25268 29156 +29085 29229 29156 29158 25269 29157 +29086 29230 29157 29159 25270 29158 +29087 29231 29158 29160 25271 29159 +29088 29232 29159 29161 25272 29160 +29089 29233 29160 29162 25273 29161 +29090 29234 29161 29163 25274 29162 +29091 29235 29162 29164 25275 29163 +29092 29236 29163 29165 25276 29164 +29093 29237 29164 29166 25277 29165 +29094 29238 29165 29167 25278 29166 +29095 29239 29166 29168 25279 29167 +29096 29240 29167 29169 25280 29168 +29097 29241 29168 29170 25281 29169 +29098 29242 29169 29171 25282 29170 +29099 29243 29170 29172 25283 29171 +29100 29244 29171 29173 25284 29172 +29101 29245 29172 29174 25285 29173 +29102 29246 29173 29175 25286 29174 +29103 29247 29174 29175 25287 29175 +29104 29248 29176 29177 25288 29176 +29105 29249 29176 29178 25289 29177 +29106 29250 29177 29179 25290 29178 +29107 29251 29178 29180 25291 29179 +29108 29252 29179 29181 25292 29180 +29109 29253 29180 29182 25293 29181 +29110 29254 29181 29183 25294 29182 +29111 29255 29182 29184 25295 29183 +29112 29256 29183 29185 25296 29184 +29113 29257 29184 29186 25297 29185 +29114 29258 29185 29187 25298 29186 +29115 29259 29186 29188 25299 29187 +29116 29260 29187 29189 25300 29188 +29117 29261 29188 29190 25301 29189 +29118 29262 29189 29191 25302 29190 +29119 29263 29190 29192 25303 29191 +29120 29264 29191 29193 25304 29192 +29121 29265 29192 29194 25305 29193 +29122 29266 29193 29195 25306 29194 +29123 29267 29194 29196 25307 29195 +29124 29268 29195 29197 25308 29196 +29125 29269 29196 29198 25309 29197 +29126 29270 29197 29199 25310 29198 +29127 29271 29198 29200 25311 29199 +29128 29272 29199 29201 25312 29200 +29129 29273 29200 29202 25313 29201 +29130 29274 29201 29203 25314 29202 +29131 29275 29202 29204 25315 29203 +29132 29276 29203 29205 25316 29204 +29133 29277 29204 29206 25317 29205 +29134 29278 29205 29207 25318 29206 +29135 29279 29206 29208 25319 29207 +29136 29280 29207 29209 25320 29208 +29137 29281 29208 29210 25321 29209 +29138 29282 29209 29211 25322 29210 +29139 29283 29210 29212 25323 29211 +29140 29284 29211 29213 25324 29212 +29141 29285 29212 29214 25325 29213 +29142 29286 29213 29215 25326 29214 +29143 29287 29214 29216 25327 29215 +29144 29288 29215 29217 25328 29216 +29145 29289 29216 29218 25329 29217 +29146 29290 29217 29219 25330 29218 +29147 29291 29218 29220 25331 29219 +29148 29292 29219 29221 25332 29220 +29149 29293 29220 29222 25333 29221 +29150 29294 29221 29223 25334 29222 +29151 29295 29222 29224 25335 29223 +29152 29296 29223 29225 25336 29224 +29153 29297 29224 29226 25337 29225 +29154 29298 29225 29227 25338 29226 +29155 29299 29226 29228 25339 29227 +29156 29300 29227 29229 25340 29228 +29157 29301 29228 29230 25341 29229 +29158 29302 29229 29231 25342 29230 +29159 29303 29230 29232 25343 29231 +29160 29304 29231 29233 25344 29232 +29161 29305 29232 29234 25345 29233 +29162 29306 29233 29235 25346 29234 +29163 29307 29234 29236 25347 29235 +29164 29308 29235 29237 25348 29236 +29165 29309 29236 29238 25349 29237 +29166 29310 29237 29239 25350 29238 +29167 29311 29238 29240 25351 29239 +29168 29312 29239 29241 25352 29240 +29169 29313 29240 29242 25353 29241 +29170 29314 29241 29243 25354 29242 +29171 29315 29242 29244 25355 29243 +29172 29316 29243 29245 25356 29244 +29173 29317 29244 29246 25357 29245 +29174 29318 29245 29247 25358 29246 +29175 29319 29246 29247 25359 29247 +29176 29320 29248 29249 25360 29248 +29177 29321 29248 29250 25361 29249 +29178 29322 29249 29251 25362 29250 +29179 29323 29250 29252 25363 29251 +29180 29324 29251 29253 25364 29252 +29181 29325 29252 29254 25365 29253 +29182 29326 29253 29255 25366 29254 +29183 29327 29254 29256 25367 29255 +29184 29328 29255 29257 25368 29256 +29185 29329 29256 29258 25369 29257 +29186 29330 29257 29259 25370 29258 +29187 29331 29258 29260 25371 29259 +29188 29332 29259 29261 25372 29260 +29189 29333 29260 29262 25373 29261 +29190 29334 29261 29263 25374 29262 +29191 29335 29262 29264 25375 29263 +29192 29336 29263 29265 25376 29264 +29193 29337 29264 29266 25377 29265 +29194 29338 29265 29267 25378 29266 +29195 29339 29266 29268 25379 29267 +29196 29340 29267 29269 25380 29268 +29197 29341 29268 29270 25381 29269 +29198 29342 29269 29271 25382 29270 +29199 29343 29270 29272 25383 29271 +29200 29344 29271 29273 25384 29272 +29201 29345 29272 29274 25385 29273 +29202 29346 29273 29275 25386 29274 +29203 29347 29274 29276 25387 29275 +29204 29348 29275 29277 25388 29276 +29205 29349 29276 29278 25389 29277 +29206 29350 29277 29279 25390 29278 +29207 29351 29278 29280 25391 29279 +29208 29352 29279 29281 25392 29280 +29209 29353 29280 29282 25393 29281 +29210 29354 29281 29283 25394 29282 +29211 29355 29282 29284 25395 29283 +29212 29356 29283 29285 25396 29284 +29213 29357 29284 29286 25397 29285 +29214 29358 29285 29287 25398 29286 +29215 29359 29286 29288 25399 29287 +29216 29360 29287 29289 25400 29288 +29217 29361 29288 29290 25401 29289 +29218 29362 29289 29291 25402 29290 +29219 29363 29290 29292 25403 29291 +29220 29364 29291 29293 25404 29292 +29221 29365 29292 29294 25405 29293 +29222 29366 29293 29295 25406 29294 +29223 29367 29294 29296 25407 29295 +29224 29368 29295 29297 25408 29296 +29225 29369 29296 29298 25409 29297 +29226 29370 29297 29299 25410 29298 +29227 29371 29298 29300 25411 29299 +29228 29372 29299 29301 25412 29300 +29229 29373 29300 29302 25413 29301 +29230 29374 29301 29303 25414 29302 +29231 29375 29302 29304 25415 29303 +29232 29376 29303 29305 25416 29304 +29233 29377 29304 29306 25417 29305 +29234 29378 29305 29307 25418 29306 +29235 29379 29306 29308 25419 29307 +29236 29380 29307 29309 25420 29308 +29237 29381 29308 29310 25421 29309 +29238 29382 29309 29311 25422 29310 +29239 29383 29310 29312 25423 29311 +29240 29384 29311 29313 25424 29312 +29241 29385 29312 29314 25425 29313 +29242 29386 29313 29315 25426 29314 +29243 29387 29314 29316 25427 29315 +29244 29388 29315 29317 25428 29316 +29245 29389 29316 29318 25429 29317 +29246 29390 29317 29319 25430 29318 +29247 29391 29318 29319 25431 29319 +29248 29392 29320 29321 25432 29320 +29249 29393 29320 29322 25433 29321 +29250 29394 29321 29323 25434 29322 +29251 29395 29322 29324 25435 29323 +29252 29396 29323 29325 25436 29324 +29253 29397 29324 29326 25437 29325 +29254 29398 29325 29327 25438 29326 +29255 29399 29326 29328 25439 29327 +29256 29400 29327 29329 25440 29328 +29257 29401 29328 29330 25441 29329 +29258 29402 29329 29331 25442 29330 +29259 29403 29330 29332 25443 29331 +29260 29404 29331 29333 25444 29332 +29261 29405 29332 29334 25445 29333 +29262 29406 29333 29335 25446 29334 +29263 29407 29334 29336 25447 29335 +29264 29408 29335 29337 25448 29336 +29265 29409 29336 29338 25449 29337 +29266 29410 29337 29339 25450 29338 +29267 29411 29338 29340 25451 29339 +29268 29412 29339 29341 25452 29340 +29269 29413 29340 29342 25453 29341 +29270 29414 29341 29343 25454 29342 +29271 29415 29342 29344 25455 29343 +29272 29416 29343 29345 25456 29344 +29273 29417 29344 29346 25457 29345 +29274 29418 29345 29347 25458 29346 +29275 29419 29346 29348 25459 29347 +29276 29420 29347 29349 25460 29348 +29277 29421 29348 29350 25461 29349 +29278 29422 29349 29351 25462 29350 +29279 29423 29350 29352 25463 29351 +29280 29424 29351 29353 25464 29352 +29281 29425 29352 29354 25465 29353 +29282 29426 29353 29355 25466 29354 +29283 29427 29354 29356 25467 29355 +29284 29428 29355 29357 25468 29356 +29285 29429 29356 29358 25469 29357 +29286 29430 29357 29359 25470 29358 +29287 29431 29358 29360 25471 29359 +29288 29432 29359 29361 25472 29360 +29289 29433 29360 29362 25473 29361 +29290 29434 29361 29363 25474 29362 +29291 29435 29362 29364 25475 29363 +29292 29436 29363 29365 25476 29364 +29293 29437 29364 29366 25477 29365 +29294 29438 29365 29367 25478 29366 +29295 29439 29366 29368 25479 29367 +29296 29440 29367 29369 25480 29368 +29297 29441 29368 29370 25481 29369 +29298 29442 29369 29371 25482 29370 +29299 29443 29370 29372 25483 29371 +29300 29444 29371 29373 25484 29372 +29301 29445 29372 29374 25485 29373 +29302 29446 29373 29375 25486 29374 +29303 29447 29374 29376 25487 29375 +29304 29448 29375 29377 25488 29376 +29305 29449 29376 29378 25489 29377 +29306 29450 29377 29379 25490 29378 +29307 29451 29378 29380 25491 29379 +29308 29452 29379 29381 25492 29380 +29309 29453 29380 29382 25493 29381 +29310 29454 29381 29383 25494 29382 +29311 29455 29382 29384 25495 29383 +29312 29456 29383 29385 25496 29384 +29313 29457 29384 29386 25497 29385 +29314 29458 29385 29387 25498 29386 +29315 29459 29386 29388 25499 29387 +29316 29460 29387 29389 25500 29388 +29317 29461 29388 29390 25501 29389 +29318 29462 29389 29391 25502 29390 +29319 29463 29390 29391 25503 29391 +29320 29464 29392 29393 25504 29392 +29321 29465 29392 29394 25505 29393 +29322 29466 29393 29395 25506 29394 +29323 29467 29394 29396 25507 29395 +29324 29468 29395 29397 25508 29396 +29325 29469 29396 29398 25509 29397 +29326 29470 29397 29399 25510 29398 +29327 29471 29398 29400 25511 29399 +29328 29472 29399 29401 25512 29400 +29329 29473 29400 29402 25513 29401 +29330 29474 29401 29403 25514 29402 +29331 29475 29402 29404 25515 29403 +29332 29476 29403 29405 25516 29404 +29333 29477 29404 29406 25517 29405 +29334 29478 29405 29407 25518 29406 +29335 29479 29406 29408 25519 29407 +29336 29480 29407 29409 25520 29408 +29337 29481 29408 29410 25521 29409 +29338 29482 29409 29411 25522 29410 +29339 29483 29410 29412 25523 29411 +29340 29484 29411 29413 25524 29412 +29341 29485 29412 29414 25525 29413 +29342 29486 29413 29415 25526 29414 +29343 29487 29414 29416 25527 29415 +29344 29488 29415 29417 25528 29416 +29345 29489 29416 29418 25529 29417 +29346 29490 29417 29419 25530 29418 +29347 29491 29418 29420 25531 29419 +29348 29492 29419 29421 25532 29420 +29349 29493 29420 29422 25533 29421 +29350 29494 29421 29423 25534 29422 +29351 29495 29422 29424 25535 29423 +29352 29496 29423 29425 25536 29424 +29353 29497 29424 29426 25537 29425 +29354 29498 29425 29427 25538 29426 +29355 29499 29426 29428 25539 29427 +29356 29500 29427 29429 25540 29428 +29357 29501 29428 29430 25541 29429 +29358 29502 29429 29431 25542 29430 +29359 29503 29430 29432 25543 29431 +29360 29504 29431 29433 25544 29432 +29361 29505 29432 29434 25545 29433 +29362 29506 29433 29435 25546 29434 +29363 29507 29434 29436 25547 29435 +29364 29508 29435 29437 25548 29436 +29365 29509 29436 29438 25549 29437 +29366 29510 29437 29439 25550 29438 +29367 29511 29438 29440 25551 29439 +29368 29512 29439 29441 25552 29440 +29369 29513 29440 29442 25553 29441 +29370 29514 29441 29443 25554 29442 +29371 29515 29442 29444 25555 29443 +29372 29516 29443 29445 25556 29444 +29373 29517 29444 29446 25557 29445 +29374 29518 29445 29447 25558 29446 +29375 29519 29446 29448 25559 29447 +29376 29520 29447 29449 25560 29448 +29377 29521 29448 29450 25561 29449 +29378 29522 29449 29451 25562 29450 +29379 29523 29450 29452 25563 29451 +29380 29524 29451 29453 25564 29452 +29381 29525 29452 29454 25565 29453 +29382 29526 29453 29455 25566 29454 +29383 29527 29454 29456 25567 29455 +29384 29528 29455 29457 25568 29456 +29385 29529 29456 29458 25569 29457 +29386 29530 29457 29459 25570 29458 +29387 29531 29458 29460 25571 29459 +29388 29532 29459 29461 25572 29460 +29389 29533 29460 29462 25573 29461 +29390 29534 29461 29463 25574 29462 +29391 29535 29462 29463 25575 29463 +29392 29536 29464 29465 25576 29464 +29393 29537 29464 29466 25577 29465 +29394 29538 29465 29467 25578 29466 +29395 29539 29466 29468 25579 29467 +29396 29540 29467 29469 25580 29468 +29397 29541 29468 29470 25581 29469 +29398 29542 29469 29471 25582 29470 +29399 29543 29470 29472 25583 29471 +29400 29544 29471 29473 25584 29472 +29401 29545 29472 29474 25585 29473 +29402 29546 29473 29475 25586 29474 +29403 29547 29474 29476 25587 29475 +29404 29548 29475 29477 25588 29476 +29405 29549 29476 29478 25589 29477 +29406 29550 29477 29479 25590 29478 +29407 29551 29478 29480 25591 29479 +29408 29552 29479 29481 25592 29480 +29409 29553 29480 29482 25593 29481 +29410 29554 29481 29483 25594 29482 +29411 29555 29482 29484 25595 29483 +29412 29556 29483 29485 25596 29484 +29413 29557 29484 29486 25597 29485 +29414 29558 29485 29487 25598 29486 +29415 29559 29486 29488 25599 29487 +29416 29560 29487 29489 25600 29488 +29417 29561 29488 29490 25601 29489 +29418 29562 29489 29491 25602 29490 +29419 29563 29490 29492 25603 29491 +29420 29564 29491 29493 25604 29492 +29421 29565 29492 29494 25605 29493 +29422 29566 29493 29495 25606 29494 +29423 29567 29494 29496 25607 29495 +29424 29568 29495 29497 25608 29496 +29425 29569 29496 29498 25609 29497 +29426 29570 29497 29499 25610 29498 +29427 29571 29498 29500 25611 29499 +29428 29572 29499 29501 25612 29500 +29429 29573 29500 29502 25613 29501 +29430 29574 29501 29503 25614 29502 +29431 29575 29502 29504 25615 29503 +29432 29576 29503 29505 25616 29504 +29433 29577 29504 29506 25617 29505 +29434 29578 29505 29507 25618 29506 +29435 29579 29506 29508 25619 29507 +29436 29580 29507 29509 25620 29508 +29437 29581 29508 29510 25621 29509 +29438 29582 29509 29511 25622 29510 +29439 29583 29510 29512 25623 29511 +29440 29584 29511 29513 25624 29512 +29441 29585 29512 29514 25625 29513 +29442 29586 29513 29515 25626 29514 +29443 29587 29514 29516 25627 29515 +29444 29588 29515 29517 25628 29516 +29445 29589 29516 29518 25629 29517 +29446 29590 29517 29519 25630 29518 +29447 29591 29518 29520 25631 29519 +29448 29592 29519 29521 25632 29520 +29449 29593 29520 29522 25633 29521 +29450 29594 29521 29523 25634 29522 +29451 29595 29522 29524 25635 29523 +29452 29596 29523 29525 25636 29524 +29453 29597 29524 29526 25637 29525 +29454 29598 29525 29527 25638 29526 +29455 29599 29526 29528 25639 29527 +29456 29600 29527 29529 25640 29528 +29457 29601 29528 29530 25641 29529 +29458 29602 29529 29531 25642 29530 +29459 29603 29530 29532 25643 29531 +29460 29604 29531 29533 25644 29532 +29461 29605 29532 29534 25645 29533 +29462 29606 29533 29535 25646 29534 +29463 29607 29534 29535 25647 29535 +29464 29608 29536 29537 25648 29536 +29465 29609 29536 29538 25649 29537 +29466 29610 29537 29539 25650 29538 +29467 29611 29538 29540 25651 29539 +29468 29612 29539 29541 25652 29540 +29469 29613 29540 29542 25653 29541 +29470 29614 29541 29543 25654 29542 +29471 29615 29542 29544 25655 29543 +29472 29616 29543 29545 25656 29544 +29473 29617 29544 29546 25657 29545 +29474 29618 29545 29547 25658 29546 +29475 29619 29546 29548 25659 29547 +29476 29620 29547 29549 25660 29548 +29477 29621 29548 29550 25661 29549 +29478 29622 29549 29551 25662 29550 +29479 29623 29550 29552 25663 29551 +29480 29624 29551 29553 25664 29552 +29481 29625 29552 29554 25665 29553 +29482 29626 29553 29555 25666 29554 +29483 29627 29554 29556 25667 29555 +29484 29628 29555 29557 25668 29556 +29485 29629 29556 29558 25669 29557 +29486 29630 29557 29559 25670 29558 +29487 29631 29558 29560 25671 29559 +29488 29632 29559 29561 25672 29560 +29489 29633 29560 29562 25673 29561 +29490 29634 29561 29563 25674 29562 +29491 29635 29562 29564 25675 29563 +29492 29636 29563 29565 25676 29564 +29493 29637 29564 29566 25677 29565 +29494 29638 29565 29567 25678 29566 +29495 29639 29566 29568 25679 29567 +29496 29640 29567 29569 25680 29568 +29497 29641 29568 29570 25681 29569 +29498 29642 29569 29571 25682 29570 +29499 29643 29570 29572 25683 29571 +29500 29644 29571 29573 25684 29572 +29501 29645 29572 29574 25685 29573 +29502 29646 29573 29575 25686 29574 +29503 29647 29574 29576 25687 29575 +29504 29648 29575 29577 25688 29576 +29505 29649 29576 29578 25689 29577 +29506 29650 29577 29579 25690 29578 +29507 29651 29578 29580 25691 29579 +29508 29652 29579 29581 25692 29580 +29509 29653 29580 29582 25693 29581 +29510 29654 29581 29583 25694 29582 +29511 29655 29582 29584 25695 29583 +29512 29656 29583 29585 25696 29584 +29513 29657 29584 29586 25697 29585 +29514 29658 29585 29587 25698 29586 +29515 29659 29586 29588 25699 29587 +29516 29660 29587 29589 25700 29588 +29517 29661 29588 29590 25701 29589 +29518 29662 29589 29591 25702 29590 +29519 29663 29590 29592 25703 29591 +29520 29664 29591 29593 25704 29592 +29521 29665 29592 29594 25705 29593 +29522 29666 29593 29595 25706 29594 +29523 29667 29594 29596 25707 29595 +29524 29668 29595 29597 25708 29596 +29525 29669 29596 29598 25709 29597 +29526 29670 29597 29599 25710 29598 +29527 29671 29598 29600 25711 29599 +29528 29672 29599 29601 25712 29600 +29529 29673 29600 29602 25713 29601 +29530 29674 29601 29603 25714 29602 +29531 29675 29602 29604 25715 29603 +29532 29676 29603 29605 25716 29604 +29533 29677 29604 29606 25717 29605 +29534 29678 29605 29607 25718 29606 +29535 29679 29606 29607 25719 29607 +29536 29680 29608 29609 25720 29608 +29537 29681 29608 29610 25721 29609 +29538 29682 29609 29611 25722 29610 +29539 29683 29610 29612 25723 29611 +29540 29684 29611 29613 25724 29612 +29541 29685 29612 29614 25725 29613 +29542 29686 29613 29615 25726 29614 +29543 29687 29614 29616 25727 29615 +29544 29688 29615 29617 25728 29616 +29545 29689 29616 29618 25729 29617 +29546 29690 29617 29619 25730 29618 +29547 29691 29618 29620 25731 29619 +29548 29692 29619 29621 25732 29620 +29549 29693 29620 29622 25733 29621 +29550 29694 29621 29623 25734 29622 +29551 29695 29622 29624 25735 29623 +29552 29696 29623 29625 25736 29624 +29553 29697 29624 29626 25737 29625 +29554 29698 29625 29627 25738 29626 +29555 29699 29626 29628 25739 29627 +29556 29700 29627 29629 25740 29628 +29557 29701 29628 29630 25741 29629 +29558 29702 29629 29631 25742 29630 +29559 29703 29630 29632 25743 29631 +29560 29704 29631 29633 25744 29632 +29561 29705 29632 29634 25745 29633 +29562 29706 29633 29635 25746 29634 +29563 29707 29634 29636 25747 29635 +29564 29708 29635 29637 25748 29636 +29565 29709 29636 29638 25749 29637 +29566 29710 29637 29639 25750 29638 +29567 29711 29638 29640 25751 29639 +29568 29712 29639 29641 25752 29640 +29569 29713 29640 29642 25753 29641 +29570 29714 29641 29643 25754 29642 +29571 29715 29642 29644 25755 29643 +29572 29716 29643 29645 25756 29644 +29573 29717 29644 29646 25757 29645 +29574 29718 29645 29647 25758 29646 +29575 29719 29646 29648 25759 29647 +29576 29720 29647 29649 25760 29648 +29577 29721 29648 29650 25761 29649 +29578 29722 29649 29651 25762 29650 +29579 29723 29650 29652 25763 29651 +29580 29724 29651 29653 25764 29652 +29581 29725 29652 29654 25765 29653 +29582 29726 29653 29655 25766 29654 +29583 29727 29654 29656 25767 29655 +29584 29728 29655 29657 25768 29656 +29585 29729 29656 29658 25769 29657 +29586 29730 29657 29659 25770 29658 +29587 29731 29658 29660 25771 29659 +29588 29732 29659 29661 25772 29660 +29589 29733 29660 29662 25773 29661 +29590 29734 29661 29663 25774 29662 +29591 29735 29662 29664 25775 29663 +29592 29736 29663 29665 25776 29664 +29593 29737 29664 29666 25777 29665 +29594 29738 29665 29667 25778 29666 +29595 29739 29666 29668 25779 29667 +29596 29740 29667 29669 25780 29668 +29597 29741 29668 29670 25781 29669 +29598 29742 29669 29671 25782 29670 +29599 29743 29670 29672 25783 29671 +29600 29744 29671 29673 25784 29672 +29601 29745 29672 29674 25785 29673 +29602 29746 29673 29675 25786 29674 +29603 29747 29674 29676 25787 29675 +29604 29748 29675 29677 25788 29676 +29605 29749 29676 29678 25789 29677 +29606 29750 29677 29679 25790 29678 +29607 29751 29678 29679 25791 29679 +29608 29752 29680 29681 25792 29680 +29609 29753 29680 29682 25793 29681 +29610 29754 29681 29683 25794 29682 +29611 29755 29682 29684 25795 29683 +29612 29756 29683 29685 25796 29684 +29613 29757 29684 29686 25797 29685 +29614 29758 29685 29687 25798 29686 +29615 29759 29686 29688 25799 29687 +29616 29760 29687 29689 25800 29688 +29617 29761 29688 29690 25801 29689 +29618 29762 29689 29691 25802 29690 +29619 29763 29690 29692 25803 29691 +29620 29764 29691 29693 25804 29692 +29621 29765 29692 29694 25805 29693 +29622 29766 29693 29695 25806 29694 +29623 29767 29694 29696 25807 29695 +29624 29768 29695 29697 25808 29696 +29625 29769 29696 29698 25809 29697 +29626 29770 29697 29699 25810 29698 +29627 29771 29698 29700 25811 29699 +29628 29772 29699 29701 25812 29700 +29629 29773 29700 29702 25813 29701 +29630 29774 29701 29703 25814 29702 +29631 29775 29702 29704 25815 29703 +29632 29776 29703 29705 25816 29704 +29633 29777 29704 29706 25817 29705 +29634 29778 29705 29707 25818 29706 +29635 29779 29706 29708 25819 29707 +29636 29780 29707 29709 25820 29708 +29637 29781 29708 29710 25821 29709 +29638 29782 29709 29711 25822 29710 +29639 29783 29710 29712 25823 29711 +29640 29784 29711 29713 25824 29712 +29641 29785 29712 29714 25825 29713 +29642 29786 29713 29715 25826 29714 +29643 29787 29714 29716 25827 29715 +29644 29788 29715 29717 25828 29716 +29645 29789 29716 29718 25829 29717 +29646 29790 29717 29719 25830 29718 +29647 29791 29718 29720 25831 29719 +29648 29792 29719 29721 25832 29720 +29649 29793 29720 29722 25833 29721 +29650 29794 29721 29723 25834 29722 +29651 29795 29722 29724 25835 29723 +29652 29796 29723 29725 25836 29724 +29653 29797 29724 29726 25837 29725 +29654 29798 29725 29727 25838 29726 +29655 29799 29726 29728 25839 29727 +29656 29800 29727 29729 25840 29728 +29657 29801 29728 29730 25841 29729 +29658 29802 29729 29731 25842 29730 +29659 29803 29730 29732 25843 29731 +29660 29804 29731 29733 25844 29732 +29661 29805 29732 29734 25845 29733 +29662 29806 29733 29735 25846 29734 +29663 29807 29734 29736 25847 29735 +29664 29808 29735 29737 25848 29736 +29665 29809 29736 29738 25849 29737 +29666 29810 29737 29739 25850 29738 +29667 29811 29738 29740 25851 29739 +29668 29812 29739 29741 25852 29740 +29669 29813 29740 29742 25853 29741 +29670 29814 29741 29743 25854 29742 +29671 29815 29742 29744 25855 29743 +29672 29816 29743 29745 25856 29744 +29673 29817 29744 29746 25857 29745 +29674 29818 29745 29747 25858 29746 +29675 29819 29746 29748 25859 29747 +29676 29820 29747 29749 25860 29748 +29677 29821 29748 29750 25861 29749 +29678 29822 29749 29751 25862 29750 +29679 29823 29750 29751 25863 29751 +29680 29824 29752 29753 25864 29752 +29681 29825 29752 29754 25865 29753 +29682 29826 29753 29755 25866 29754 +29683 29827 29754 29756 25867 29755 +29684 29828 29755 29757 25868 29756 +29685 29829 29756 29758 25869 29757 +29686 29830 29757 29759 25870 29758 +29687 29831 29758 29760 25871 29759 +29688 29832 29759 29761 25872 29760 +29689 29833 29760 29762 25873 29761 +29690 29834 29761 29763 25874 29762 +29691 29835 29762 29764 25875 29763 +29692 29836 29763 29765 25876 29764 +29693 29837 29764 29766 25877 29765 +29694 29838 29765 29767 25878 29766 +29695 29839 29766 29768 25879 29767 +29696 29840 29767 29769 25880 29768 +29697 29841 29768 29770 25881 29769 +29698 29842 29769 29771 25882 29770 +29699 29843 29770 29772 25883 29771 +29700 29844 29771 29773 25884 29772 +29701 29845 29772 29774 25885 29773 +29702 29846 29773 29775 25886 29774 +29703 29847 29774 29776 25887 29775 +29704 29848 29775 29777 25888 29776 +29705 29849 29776 29778 25889 29777 +29706 29850 29777 29779 25890 29778 +29707 29851 29778 29780 25891 29779 +29708 29852 29779 29781 25892 29780 +29709 29853 29780 29782 25893 29781 +29710 29854 29781 29783 25894 29782 +29711 29855 29782 29784 25895 29783 +29712 29856 29783 29785 25896 29784 +29713 29857 29784 29786 25897 29785 +29714 29858 29785 29787 25898 29786 +29715 29859 29786 29788 25899 29787 +29716 29860 29787 29789 25900 29788 +29717 29861 29788 29790 25901 29789 +29718 29862 29789 29791 25902 29790 +29719 29863 29790 29792 25903 29791 +29720 29864 29791 29793 25904 29792 +29721 29865 29792 29794 25905 29793 +29722 29866 29793 29795 25906 29794 +29723 29867 29794 29796 25907 29795 +29724 29868 29795 29797 25908 29796 +29725 29869 29796 29798 25909 29797 +29726 29870 29797 29799 25910 29798 +29727 29871 29798 29800 25911 29799 +29728 29872 29799 29801 25912 29800 +29729 29873 29800 29802 25913 29801 +29730 29874 29801 29803 25914 29802 +29731 29875 29802 29804 25915 29803 +29732 29876 29803 29805 25916 29804 +29733 29877 29804 29806 25917 29805 +29734 29878 29805 29807 25918 29806 +29735 29879 29806 29808 25919 29807 +29736 29880 29807 29809 25920 29808 +29737 29881 29808 29810 25921 29809 +29738 29882 29809 29811 25922 29810 +29739 29883 29810 29812 25923 29811 +29740 29884 29811 29813 25924 29812 +29741 29885 29812 29814 25925 29813 +29742 29886 29813 29815 25926 29814 +29743 29887 29814 29816 25927 29815 +29744 29888 29815 29817 25928 29816 +29745 29889 29816 29818 25929 29817 +29746 29890 29817 29819 25930 29818 +29747 29891 29818 29820 25931 29819 +29748 29892 29819 29821 25932 29820 +29749 29893 29820 29822 25933 29821 +29750 29894 29821 29823 25934 29822 +29751 29895 29822 29823 25935 29823 +29752 29896 29824 29825 25936 29824 +29753 29897 29824 29826 25937 29825 +29754 29898 29825 29827 25938 29826 +29755 29899 29826 29828 25939 29827 +29756 29900 29827 29829 25940 29828 +29757 29901 29828 29830 25941 29829 +29758 29902 29829 29831 25942 29830 +29759 29903 29830 29832 25943 29831 +29760 29904 29831 29833 25944 29832 +29761 29905 29832 29834 25945 29833 +29762 29906 29833 29835 25946 29834 +29763 29907 29834 29836 25947 29835 +29764 29908 29835 29837 25948 29836 +29765 29909 29836 29838 25949 29837 +29766 29910 29837 29839 25950 29838 +29767 29911 29838 29840 25951 29839 +29768 29912 29839 29841 25952 29840 +29769 29913 29840 29842 25953 29841 +29770 29914 29841 29843 25954 29842 +29771 29915 29842 29844 25955 29843 +29772 29916 29843 29845 25956 29844 +29773 29917 29844 29846 25957 29845 +29774 29918 29845 29847 25958 29846 +29775 29919 29846 29848 25959 29847 +29776 29920 29847 29849 25960 29848 +29777 29921 29848 29850 25961 29849 +29778 29922 29849 29851 25962 29850 +29779 29923 29850 29852 25963 29851 +29780 29924 29851 29853 25964 29852 +29781 29925 29852 29854 25965 29853 +29782 29926 29853 29855 25966 29854 +29783 29927 29854 29856 25967 29855 +29784 29928 29855 29857 25968 29856 +29785 29929 29856 29858 25969 29857 +29786 29930 29857 29859 25970 29858 +29787 29931 29858 29860 25971 29859 +29788 29932 29859 29861 25972 29860 +29789 29933 29860 29862 25973 29861 +29790 29934 29861 29863 25974 29862 +29791 29935 29862 29864 25975 29863 +29792 29936 29863 29865 25976 29864 +29793 29937 29864 29866 25977 29865 +29794 29938 29865 29867 25978 29866 +29795 29939 29866 29868 25979 29867 +29796 29940 29867 29869 25980 29868 +29797 29941 29868 29870 25981 29869 +29798 29942 29869 29871 25982 29870 +29799 29943 29870 29872 25983 29871 +29800 29944 29871 29873 25984 29872 +29801 29945 29872 29874 25985 29873 +29802 29946 29873 29875 25986 29874 +29803 29947 29874 29876 25987 29875 +29804 29948 29875 29877 25988 29876 +29805 29949 29876 29878 25989 29877 +29806 29950 29877 29879 25990 29878 +29807 29951 29878 29880 25991 29879 +29808 29952 29879 29881 25992 29880 +29809 29953 29880 29882 25993 29881 +29810 29954 29881 29883 25994 29882 +29811 29955 29882 29884 25995 29883 +29812 29956 29883 29885 25996 29884 +29813 29957 29884 29886 25997 29885 +29814 29958 29885 29887 25998 29886 +29815 29959 29886 29888 25999 29887 +29816 29960 29887 29889 26000 29888 +29817 29961 29888 29890 26001 29889 +29818 29962 29889 29891 26002 29890 +29819 29963 29890 29892 26003 29891 +29820 29964 29891 29893 26004 29892 +29821 29965 29892 29894 26005 29893 +29822 29966 29893 29895 26006 29894 +29823 29967 29894 29895 26007 29895 +29824 29968 29896 29897 26008 29896 +29825 29969 29896 29898 26009 29897 +29826 29970 29897 29899 26010 29898 +29827 29971 29898 29900 26011 29899 +29828 29972 29899 29901 26012 29900 +29829 29973 29900 29902 26013 29901 +29830 29974 29901 29903 26014 29902 +29831 29975 29902 29904 26015 29903 +29832 29976 29903 29905 26016 29904 +29833 29977 29904 29906 26017 29905 +29834 29978 29905 29907 26018 29906 +29835 29979 29906 29908 26019 29907 +29836 29980 29907 29909 26020 29908 +29837 29981 29908 29910 26021 29909 +29838 29982 29909 29911 26022 29910 +29839 29983 29910 29912 26023 29911 +29840 29984 29911 29913 26024 29912 +29841 29985 29912 29914 26025 29913 +29842 29986 29913 29915 26026 29914 +29843 29987 29914 29916 26027 29915 +29844 29988 29915 29917 26028 29916 +29845 29989 29916 29918 26029 29917 +29846 29990 29917 29919 26030 29918 +29847 29991 29918 29920 26031 29919 +29848 29992 29919 29921 26032 29920 +29849 29993 29920 29922 26033 29921 +29850 29994 29921 29923 26034 29922 +29851 29995 29922 29924 26035 29923 +29852 29996 29923 29925 26036 29924 +29853 29997 29924 29926 26037 29925 +29854 29998 29925 29927 26038 29926 +29855 29999 29926 29928 26039 29927 +29856 30000 29927 29929 26040 29928 +29857 30001 29928 29930 26041 29929 +29858 30002 29929 29931 26042 29930 +29859 30003 29930 29932 26043 29931 +29860 30004 29931 29933 26044 29932 +29861 30005 29932 29934 26045 29933 +29862 30006 29933 29935 26046 29934 +29863 30007 29934 29936 26047 29935 +29864 30008 29935 29937 26048 29936 +29865 30009 29936 29938 26049 29937 +29866 30010 29937 29939 26050 29938 +29867 30011 29938 29940 26051 29939 +29868 30012 29939 29941 26052 29940 +29869 30013 29940 29942 26053 29941 +29870 30014 29941 29943 26054 29942 +29871 30015 29942 29944 26055 29943 +29872 30016 29943 29945 26056 29944 +29873 30017 29944 29946 26057 29945 +29874 30018 29945 29947 26058 29946 +29875 30019 29946 29948 26059 29947 +29876 30020 29947 29949 26060 29948 +29877 30021 29948 29950 26061 29949 +29878 30022 29949 29951 26062 29950 +29879 30023 29950 29952 26063 29951 +29880 30024 29951 29953 26064 29952 +29881 30025 29952 29954 26065 29953 +29882 30026 29953 29955 26066 29954 +29883 30027 29954 29956 26067 29955 +29884 30028 29955 29957 26068 29956 +29885 30029 29956 29958 26069 29957 +29886 30030 29957 29959 26070 29958 +29887 30031 29958 29960 26071 29959 +29888 30032 29959 29961 26072 29960 +29889 30033 29960 29962 26073 29961 +29890 30034 29961 29963 26074 29962 +29891 30035 29962 29964 26075 29963 +29892 30036 29963 29965 26076 29964 +29893 30037 29964 29966 26077 29965 +29894 30038 29965 29967 26078 29966 +29895 30039 29966 29967 26079 29967 +29896 30040 29968 29969 26080 29968 +29897 30041 29968 29970 26081 29969 +29898 30042 29969 29971 26082 29970 +29899 30043 29970 29972 26083 29971 +29900 30044 29971 29973 26084 29972 +29901 30045 29972 29974 26085 29973 +29902 30046 29973 29975 26086 29974 +29903 30047 29974 29976 26087 29975 +29904 30048 29975 29977 26088 29976 +29905 30049 29976 29978 26089 29977 +29906 30050 29977 29979 26090 29978 +29907 30051 29978 29980 26091 29979 +29908 30052 29979 29981 26092 29980 +29909 30053 29980 29982 26093 29981 +29910 30054 29981 29983 26094 29982 +29911 30055 29982 29984 26095 29983 +29912 30056 29983 29985 26096 29984 +29913 30057 29984 29986 26097 29985 +29914 30058 29985 29987 26098 29986 +29915 30059 29986 29988 26099 29987 +29916 30060 29987 29989 26100 29988 +29917 30061 29988 29990 26101 29989 +29918 30062 29989 29991 26102 29990 +29919 30063 29990 29992 26103 29991 +29920 30064 29991 29993 26104 29992 +29921 30065 29992 29994 26105 29993 +29922 30066 29993 29995 26106 29994 +29923 30067 29994 29996 26107 29995 +29924 30068 29995 29997 26108 29996 +29925 30069 29996 29998 26109 29997 +29926 30070 29997 29999 26110 29998 +29927 30071 29998 30000 26111 29999 +29928 30072 29999 30001 26112 30000 +29929 30073 30000 30002 26113 30001 +29930 30074 30001 30003 26114 30002 +29931 30075 30002 30004 26115 30003 +29932 30076 30003 30005 26116 30004 +29933 30077 30004 30006 26117 30005 +29934 30078 30005 30007 26118 30006 +29935 30079 30006 30008 26119 30007 +29936 30080 30007 30009 26120 30008 +29937 30081 30008 30010 26121 30009 +29938 30082 30009 30011 26122 30010 +29939 30083 30010 30012 26123 30011 +29940 30084 30011 30013 26124 30012 +29941 30085 30012 30014 26125 30013 +29942 30086 30013 30015 26126 30014 +29943 30087 30014 30016 26127 30015 +29944 30088 30015 30017 26128 30016 +29945 30089 30016 30018 26129 30017 +29946 30090 30017 30019 26130 30018 +29947 30091 30018 30020 26131 30019 +29948 30092 30019 30021 26132 30020 +29949 30093 30020 30022 26133 30021 +29950 30094 30021 30023 26134 30022 +29951 30095 30022 30024 26135 30023 +29952 30096 30023 30025 26136 30024 +29953 30097 30024 30026 26137 30025 +29954 30098 30025 30027 26138 30026 +29955 30099 30026 30028 26139 30027 +29956 30100 30027 30029 26140 30028 +29957 30101 30028 30030 26141 30029 +29958 30102 30029 30031 26142 30030 +29959 30103 30030 30032 26143 30031 +29960 30104 30031 30033 26144 30032 +29961 30105 30032 30034 26145 30033 +29962 30106 30033 30035 26146 30034 +29963 30107 30034 30036 26147 30035 +29964 30108 30035 30037 26148 30036 +29965 30109 30036 30038 26149 30037 +29966 30110 30037 30039 26150 30038 +29967 30111 30038 30039 26151 30039 +29968 30112 30040 30041 26152 30040 +29969 30113 30040 30042 26153 30041 +29970 30114 30041 30043 26154 30042 +29971 30115 30042 30044 26155 30043 +29972 30116 30043 30045 26156 30044 +29973 30117 30044 30046 26157 30045 +29974 30118 30045 30047 26158 30046 +29975 30119 30046 30048 26159 30047 +29976 30120 30047 30049 26160 30048 +29977 30121 30048 30050 26161 30049 +29978 30122 30049 30051 26162 30050 +29979 30123 30050 30052 26163 30051 +29980 30124 30051 30053 26164 30052 +29981 30125 30052 30054 26165 30053 +29982 30126 30053 30055 26166 30054 +29983 30127 30054 30056 26167 30055 +29984 30128 30055 30057 26168 30056 +29985 30129 30056 30058 26169 30057 +29986 30130 30057 30059 26170 30058 +29987 30131 30058 30060 26171 30059 +29988 30132 30059 30061 26172 30060 +29989 30133 30060 30062 26173 30061 +29990 30134 30061 30063 26174 30062 +29991 30135 30062 30064 26175 30063 +29992 30136 30063 30065 26176 30064 +29993 30137 30064 30066 26177 30065 +29994 30138 30065 30067 26178 30066 +29995 30139 30066 30068 26179 30067 +29996 30140 30067 30069 26180 30068 +29997 30141 30068 30070 26181 30069 +29998 30142 30069 30071 26182 30070 +29999 30143 30070 30072 26183 30071 +30000 30144 30071 30073 26184 30072 +30001 30145 30072 30074 26185 30073 +30002 30146 30073 30075 26186 30074 +30003 30147 30074 30076 26187 30075 +30004 30148 30075 30077 26188 30076 +30005 30149 30076 30078 26189 30077 +30006 30150 30077 30079 26190 30078 +30007 30151 30078 30080 26191 30079 +30008 30152 30079 30081 26192 30080 +30009 30153 30080 30082 26193 30081 +30010 30154 30081 30083 26194 30082 +30011 30155 30082 30084 26195 30083 +30012 30156 30083 30085 26196 30084 +30013 30157 30084 30086 26197 30085 +30014 30158 30085 30087 26198 30086 +30015 30159 30086 30088 26199 30087 +30016 30160 30087 30089 26200 30088 +30017 30161 30088 30090 26201 30089 +30018 30162 30089 30091 26202 30090 +30019 30163 30090 30092 26203 30091 +30020 30164 30091 30093 26204 30092 +30021 30165 30092 30094 26205 30093 +30022 30166 30093 30095 26206 30094 +30023 30167 30094 30096 26207 30095 +30024 30168 30095 30097 26208 30096 +30025 30169 30096 30098 26209 30097 +30026 30170 30097 30099 26210 30098 +30027 30171 30098 30100 26211 30099 +30028 30172 30099 30101 26212 30100 +30029 30173 30100 30102 26213 30101 +30030 30174 30101 30103 26214 30102 +30031 30175 30102 30104 26215 30103 +30032 30176 30103 30105 26216 30104 +30033 30177 30104 30106 26217 30105 +30034 30178 30105 30107 26218 30106 +30035 30179 30106 30108 26219 30107 +30036 30180 30107 30109 26220 30108 +30037 30181 30108 30110 26221 30109 +30038 30182 30109 30111 26222 30110 +30039 30183 30110 30111 26223 30111 +30040 30184 30112 30113 26224 30112 +30041 30185 30112 30114 26225 30113 +30042 30186 30113 30115 26226 30114 +30043 30187 30114 30116 26227 30115 +30044 30188 30115 30117 26228 30116 +30045 30189 30116 30118 26229 30117 +30046 30190 30117 30119 26230 30118 +30047 30191 30118 30120 26231 30119 +30048 30192 30119 30121 26232 30120 +30049 30193 30120 30122 26233 30121 +30050 30194 30121 30123 26234 30122 +30051 30195 30122 30124 26235 30123 +30052 30196 30123 30125 26236 30124 +30053 30197 30124 30126 26237 30125 +30054 30198 30125 30127 26238 30126 +30055 30199 30126 30128 26239 30127 +30056 30200 30127 30129 26240 30128 +30057 30201 30128 30130 26241 30129 +30058 30202 30129 30131 26242 30130 +30059 30203 30130 30132 26243 30131 +30060 30204 30131 30133 26244 30132 +30061 30205 30132 30134 26245 30133 +30062 30206 30133 30135 26246 30134 +30063 30207 30134 30136 26247 30135 +30064 30208 30135 30137 26248 30136 +30065 30209 30136 30138 26249 30137 +30066 30210 30137 30139 26250 30138 +30067 30211 30138 30140 26251 30139 +30068 30212 30139 30141 26252 30140 +30069 30213 30140 30142 26253 30141 +30070 30214 30141 30143 26254 30142 +30071 30215 30142 30144 26255 30143 +30072 30216 30143 30145 26256 30144 +30073 30217 30144 30146 26257 30145 +30074 30218 30145 30147 26258 30146 +30075 30219 30146 30148 26259 30147 +30076 30220 30147 30149 26260 30148 +30077 30221 30148 30150 26261 30149 +30078 30222 30149 30151 26262 30150 +30079 30223 30150 30152 26263 30151 +30080 30224 30151 30153 26264 30152 +30081 30225 30152 30154 26265 30153 +30082 30226 30153 30155 26266 30154 +30083 30227 30154 30156 26267 30155 +30084 30228 30155 30157 26268 30156 +30085 30229 30156 30158 26269 30157 +30086 30230 30157 30159 26270 30158 +30087 30231 30158 30160 26271 30159 +30088 30232 30159 30161 26272 30160 +30089 30233 30160 30162 26273 30161 +30090 30234 30161 30163 26274 30162 +30091 30235 30162 30164 26275 30163 +30092 30236 30163 30165 26276 30164 +30093 30237 30164 30166 26277 30165 +30094 30238 30165 30167 26278 30166 +30095 30239 30166 30168 26279 30167 +30096 30240 30167 30169 26280 30168 +30097 30241 30168 30170 26281 30169 +30098 30242 30169 30171 26282 30170 +30099 30243 30170 30172 26283 30171 +30100 30244 30171 30173 26284 30172 +30101 30245 30172 30174 26285 30173 +30102 30246 30173 30175 26286 30174 +30103 30247 30174 30176 26287 30175 +30104 30248 30175 30177 26288 30176 +30105 30249 30176 30178 26289 30177 +30106 30250 30177 30179 26290 30178 +30107 30251 30178 30180 26291 30179 +30108 30252 30179 30181 26292 30180 +30109 30253 30180 30182 26293 30181 +30110 30254 30181 30183 26294 30182 +30111 30255 30182 30183 26295 30183 +30112 30256 30184 30185 26296 30184 +30113 30257 30184 30186 26297 30185 +30114 30258 30185 30187 26298 30186 +30115 30259 30186 30188 26299 30187 +30116 30260 30187 30189 26300 30188 +30117 30261 30188 30190 26301 30189 +30118 30262 30189 30191 26302 30190 +30119 30263 30190 30192 26303 30191 +30120 30264 30191 30193 26304 30192 +30121 30265 30192 30194 26305 30193 +30122 30266 30193 30195 26306 30194 +30123 30267 30194 30196 26307 30195 +30124 30268 30195 30197 26308 30196 +30125 30269 30196 30198 26309 30197 +30126 30270 30197 30199 26310 30198 +30127 30271 30198 30200 26311 30199 +30128 30272 30199 30201 26312 30200 +30129 30273 30200 30202 26313 30201 +30130 30274 30201 30203 26314 30202 +30131 30275 30202 30204 26315 30203 +30132 30276 30203 30205 26316 30204 +30133 30277 30204 30206 26317 30205 +30134 30278 30205 30207 26318 30206 +30135 30279 30206 30208 26319 30207 +30136 30280 30207 30209 26320 30208 +30137 30281 30208 30210 26321 30209 +30138 30282 30209 30211 26322 30210 +30139 30283 30210 30212 26323 30211 +30140 30284 30211 30213 26324 30212 +30141 30285 30212 30214 26325 30213 +30142 30286 30213 30215 26326 30214 +30143 30287 30214 30216 26327 30215 +30144 30288 30215 30217 26328 30216 +30145 30289 30216 30218 26329 30217 +30146 30290 30217 30219 26330 30218 +30147 30291 30218 30220 26331 30219 +30148 30292 30219 30221 26332 30220 +30149 30293 30220 30222 26333 30221 +30150 30294 30221 30223 26334 30222 +30151 30295 30222 30224 26335 30223 +30152 30296 30223 30225 26336 30224 +30153 30297 30224 30226 26337 30225 +30154 30298 30225 30227 26338 30226 +30155 30299 30226 30228 26339 30227 +30156 30300 30227 30229 26340 30228 +30157 30301 30228 30230 26341 30229 +30158 30302 30229 30231 26342 30230 +30159 30303 30230 30232 26343 30231 +30160 30304 30231 30233 26344 30232 +30161 30305 30232 30234 26345 30233 +30162 30306 30233 30235 26346 30234 +30163 30307 30234 30236 26347 30235 +30164 30308 30235 30237 26348 30236 +30165 30309 30236 30238 26349 30237 +30166 30310 30237 30239 26350 30238 +30167 30311 30238 30240 26351 30239 +30168 30312 30239 30241 26352 30240 +30169 30313 30240 30242 26353 30241 +30170 30314 30241 30243 26354 30242 +30171 30315 30242 30244 26355 30243 +30172 30316 30243 30245 26356 30244 +30173 30317 30244 30246 26357 30245 +30174 30318 30245 30247 26358 30246 +30175 30319 30246 30248 26359 30247 +30176 30320 30247 30249 26360 30248 +30177 30321 30248 30250 26361 30249 +30178 30322 30249 30251 26362 30250 +30179 30323 30250 30252 26363 30251 +30180 30324 30251 30253 26364 30252 +30181 30325 30252 30254 26365 30253 +30182 30326 30253 30255 26366 30254 +30183 30327 30254 30255 26367 30255 +30184 30328 30256 30257 26368 30256 +30185 30329 30256 30258 26369 30257 +30186 30330 30257 30259 26370 30258 +30187 30331 30258 30260 26371 30259 +30188 30332 30259 30261 26372 30260 +30189 30333 30260 30262 26373 30261 +30190 30334 30261 30263 26374 30262 +30191 30335 30262 30264 26375 30263 +30192 30336 30263 30265 26376 30264 +30193 30337 30264 30266 26377 30265 +30194 30338 30265 30267 26378 30266 +30195 30339 30266 30268 26379 30267 +30196 30340 30267 30269 26380 30268 +30197 30341 30268 30270 26381 30269 +30198 30342 30269 30271 26382 30270 +30199 30343 30270 30272 26383 30271 +30200 30344 30271 30273 26384 30272 +30201 30345 30272 30274 26385 30273 +30202 30346 30273 30275 26386 30274 +30203 30347 30274 30276 26387 30275 +30204 30348 30275 30277 26388 30276 +30205 30349 30276 30278 26389 30277 +30206 30350 30277 30279 26390 30278 +30207 30351 30278 30280 26391 30279 +30208 30352 30279 30281 26392 30280 +30209 30353 30280 30282 26393 30281 +30210 30354 30281 30283 26394 30282 +30211 30355 30282 30284 26395 30283 +30212 30356 30283 30285 26396 30284 +30213 30357 30284 30286 26397 30285 +30214 30358 30285 30287 26398 30286 +30215 30359 30286 30288 26399 30287 +30216 30360 30287 30289 26400 30288 +30217 30361 30288 30290 26401 30289 +30218 30362 30289 30291 26402 30290 +30219 30363 30290 30292 26403 30291 +30220 30364 30291 30293 26404 30292 +30221 30365 30292 30294 26405 30293 +30222 30366 30293 30295 26406 30294 +30223 30367 30294 30296 26407 30295 +30224 30368 30295 30297 26408 30296 +30225 30369 30296 30298 26409 30297 +30226 30370 30297 30299 26410 30298 +30227 30371 30298 30300 26411 30299 +30228 30372 30299 30301 26412 30300 +30229 30373 30300 30302 26413 30301 +30230 30374 30301 30303 26414 30302 +30231 30375 30302 30304 26415 30303 +30232 30376 30303 30305 26416 30304 +30233 30377 30304 30306 26417 30305 +30234 30378 30305 30307 26418 30306 +30235 30379 30306 30308 26419 30307 +30236 30380 30307 30309 26420 30308 +30237 30381 30308 30310 26421 30309 +30238 30382 30309 30311 26422 30310 +30239 30383 30310 30312 26423 30311 +30240 30384 30311 30313 26424 30312 +30241 30385 30312 30314 26425 30313 +30242 30386 30313 30315 26426 30314 +30243 30387 30314 30316 26427 30315 +30244 30388 30315 30317 26428 30316 +30245 30389 30316 30318 26429 30317 +30246 30390 30317 30319 26430 30318 +30247 30391 30318 30320 26431 30319 +30248 30392 30319 30321 26432 30320 +30249 30393 30320 30322 26433 30321 +30250 30394 30321 30323 26434 30322 +30251 30395 30322 30324 26435 30323 +30252 30396 30323 30325 26436 30324 +30253 30397 30324 30326 26437 30325 +30254 30398 30325 30327 26438 30326 +30255 30399 30326 30327 26439 30327 +30256 30400 30328 30329 26440 30328 +30257 30401 30328 30330 26441 30329 +30258 30402 30329 30331 26442 30330 +30259 30403 30330 30332 26443 30331 +30260 30404 30331 30333 26444 30332 +30261 30405 30332 30334 26445 30333 +30262 30406 30333 30335 26446 30334 +30263 30407 30334 30336 26447 30335 +30264 30408 30335 30337 26448 30336 +30265 30409 30336 30338 26449 30337 +30266 30410 30337 30339 26450 30338 +30267 30411 30338 30340 26451 30339 +30268 30412 30339 30341 26452 30340 +30269 30413 30340 30342 26453 30341 +30270 30414 30341 30343 26454 30342 +30271 30415 30342 30344 26455 30343 +30272 30416 30343 30345 26456 30344 +30273 30417 30344 30346 26457 30345 +30274 30418 30345 30347 26458 30346 +30275 30419 30346 30348 26459 30347 +30276 30420 30347 30349 26460 30348 +30277 30421 30348 30350 26461 30349 +30278 30422 30349 30351 26462 30350 +30279 30423 30350 30352 26463 30351 +30280 30424 30351 30353 26464 30352 +30281 30425 30352 30354 26465 30353 +30282 30426 30353 30355 26466 30354 +30283 30427 30354 30356 26467 30355 +30284 30428 30355 30357 26468 30356 +30285 30429 30356 30358 26469 30357 +30286 30430 30357 30359 26470 30358 +30287 30431 30358 30360 26471 30359 +30288 30432 30359 30361 26472 30360 +30289 30433 30360 30362 26473 30361 +30290 30434 30361 30363 26474 30362 +30291 30435 30362 30364 26475 30363 +30292 30436 30363 30365 26476 30364 +30293 30437 30364 30366 26477 30365 +30294 30438 30365 30367 26478 30366 +30295 30439 30366 30368 26479 30367 +30296 30440 30367 30369 26480 30368 +30297 30441 30368 30370 26481 30369 +30298 30442 30369 30371 26482 30370 +30299 30443 30370 30372 26483 30371 +30300 30444 30371 30373 26484 30372 +30301 30445 30372 30374 26485 30373 +30302 30446 30373 30375 26486 30374 +30303 30447 30374 30376 26487 30375 +30304 30448 30375 30377 26488 30376 +30305 30449 30376 30378 26489 30377 +30306 30450 30377 30379 26490 30378 +30307 30451 30378 30380 26491 30379 +30308 30452 30379 30381 26492 30380 +30309 30453 30380 30382 26493 30381 +30310 30454 30381 30383 26494 30382 +30311 30455 30382 30384 26495 30383 +30312 30456 30383 30385 26496 30384 +30313 30457 30384 30386 26497 30385 +30314 30458 30385 30387 26498 30386 +30315 30459 30386 30388 26499 30387 +30316 30460 30387 30389 26500 30388 +30317 30461 30388 30390 26501 30389 +30318 30462 30389 30391 26502 30390 +30319 30463 30390 30392 26503 30391 +30320 30464 30391 30393 26504 30392 +30321 30465 30392 30394 26505 30393 +30322 30466 30393 30395 26506 30394 +30323 30467 30394 30396 26507 30395 +30324 30468 30395 30397 26508 30396 +30325 30469 30396 30398 26509 30397 +30326 30470 30397 30399 26510 30398 +30327 30471 30398 30399 26511 30399 +30328 30472 30400 30401 26512 30400 +30329 30473 30400 30402 26513 30401 +30330 30474 30401 30403 26514 30402 +30331 30475 30402 30404 26515 30403 +30332 30476 30403 30405 26516 30404 +30333 30477 30404 30406 26517 30405 +30334 30478 30405 30407 26518 30406 +30335 30479 30406 30408 26519 30407 +30336 30480 30407 30409 26520 30408 +30337 30481 30408 30410 26521 30409 +30338 30482 30409 30411 26522 30410 +30339 30483 30410 30412 26523 30411 +30340 30484 30411 30413 26524 30412 +30341 30485 30412 30414 26525 30413 +30342 30486 30413 30415 26526 30414 +30343 30487 30414 30416 26527 30415 +30344 30488 30415 30417 26528 30416 +30345 30489 30416 30418 26529 30417 +30346 30490 30417 30419 26530 30418 +30347 30491 30418 30420 26531 30419 +30348 30492 30419 30421 26532 30420 +30349 30493 30420 30422 26533 30421 +30350 30494 30421 30423 26534 30422 +30351 30495 30422 30424 26535 30423 +30352 30496 30423 30425 26536 30424 +30353 30497 30424 30426 26537 30425 +30354 30498 30425 30427 26538 30426 +30355 30499 30426 30428 26539 30427 +30356 30500 30427 30429 26540 30428 +30357 30501 30428 30430 26541 30429 +30358 30502 30429 30431 26542 30430 +30359 30503 30430 30432 26543 30431 +30360 30504 30431 30433 26544 30432 +30361 30505 30432 30434 26545 30433 +30362 30506 30433 30435 26546 30434 +30363 30507 30434 30436 26547 30435 +30364 30508 30435 30437 26548 30436 +30365 30509 30436 30438 26549 30437 +30366 30510 30437 30439 26550 30438 +30367 30511 30438 30440 26551 30439 +30368 30512 30439 30441 26552 30440 +30369 30513 30440 30442 26553 30441 +30370 30514 30441 30443 26554 30442 +30371 30515 30442 30444 26555 30443 +30372 30516 30443 30445 26556 30444 +30373 30517 30444 30446 26557 30445 +30374 30518 30445 30447 26558 30446 +30375 30519 30446 30448 26559 30447 +30376 30520 30447 30449 26560 30448 +30377 30521 30448 30450 26561 30449 +30378 30522 30449 30451 26562 30450 +30379 30523 30450 30452 26563 30451 +30380 30524 30451 30453 26564 30452 +30381 30525 30452 30454 26565 30453 +30382 30526 30453 30455 26566 30454 +30383 30527 30454 30456 26567 30455 +30384 30528 30455 30457 26568 30456 +30385 30529 30456 30458 26569 30457 +30386 30530 30457 30459 26570 30458 +30387 30531 30458 30460 26571 30459 +30388 30532 30459 30461 26572 30460 +30389 30533 30460 30462 26573 30461 +30390 30534 30461 30463 26574 30462 +30391 30535 30462 30464 26575 30463 +30392 30536 30463 30465 26576 30464 +30393 30537 30464 30466 26577 30465 +30394 30538 30465 30467 26578 30466 +30395 30539 30466 30468 26579 30467 +30396 30540 30467 30469 26580 30468 +30397 30541 30468 30470 26581 30469 +30398 30542 30469 30471 26582 30470 +30399 30543 30470 30471 26583 30471 +30400 30544 30472 30473 26584 30472 +30401 30545 30472 30474 26585 30473 +30402 30546 30473 30475 26586 30474 +30403 30547 30474 30476 26587 30475 +30404 30548 30475 30477 26588 30476 +30405 30549 30476 30478 26589 30477 +30406 30550 30477 30479 26590 30478 +30407 30551 30478 30480 26591 30479 +30408 30552 30479 30481 26592 30480 +30409 30553 30480 30482 26593 30481 +30410 30554 30481 30483 26594 30482 +30411 30555 30482 30484 26595 30483 +30412 30556 30483 30485 26596 30484 +30413 30557 30484 30486 26597 30485 +30414 30558 30485 30487 26598 30486 +30415 30559 30486 30488 26599 30487 +30416 30560 30487 30489 26600 30488 +30417 30561 30488 30490 26601 30489 +30418 30562 30489 30491 26602 30490 +30419 30563 30490 30492 26603 30491 +30420 30564 30491 30493 26604 30492 +30421 30565 30492 30494 26605 30493 +30422 30566 30493 30495 26606 30494 +30423 30567 30494 30496 26607 30495 +30424 30568 30495 30497 26608 30496 +30425 30569 30496 30498 26609 30497 +30426 30570 30497 30499 26610 30498 +30427 30571 30498 30500 26611 30499 +30428 30572 30499 30501 26612 30500 +30429 30573 30500 30502 26613 30501 +30430 30574 30501 30503 26614 30502 +30431 30575 30502 30504 26615 30503 +30432 30576 30503 30505 26616 30504 +30433 30577 30504 30506 26617 30505 +30434 30578 30505 30507 26618 30506 +30435 30579 30506 30508 26619 30507 +30436 30580 30507 30509 26620 30508 +30437 30581 30508 30510 26621 30509 +30438 30582 30509 30511 26622 30510 +30439 30583 30510 30512 26623 30511 +30440 30584 30511 30513 26624 30512 +30441 30585 30512 30514 26625 30513 +30442 30586 30513 30515 26626 30514 +30443 30587 30514 30516 26627 30515 +30444 30588 30515 30517 26628 30516 +30445 30589 30516 30518 26629 30517 +30446 30590 30517 30519 26630 30518 +30447 30591 30518 30520 26631 30519 +30448 30592 30519 30521 26632 30520 +30449 30593 30520 30522 26633 30521 +30450 30594 30521 30523 26634 30522 +30451 30595 30522 30524 26635 30523 +30452 30596 30523 30525 26636 30524 +30453 30597 30524 30526 26637 30525 +30454 30598 30525 30527 26638 30526 +30455 30599 30526 30528 26639 30527 +30456 30600 30527 30529 26640 30528 +30457 30601 30528 30530 26641 30529 +30458 30602 30529 30531 26642 30530 +30459 30603 30530 30532 26643 30531 +30460 30604 30531 30533 26644 30532 +30461 30605 30532 30534 26645 30533 +30462 30606 30533 30535 26646 30534 +30463 30607 30534 30536 26647 30535 +30464 30608 30535 30537 26648 30536 +30465 30609 30536 30538 26649 30537 +30466 30610 30537 30539 26650 30538 +30467 30611 30538 30540 26651 30539 +30468 30612 30539 30541 26652 30540 +30469 30613 30540 30542 26653 30541 +30470 30614 30541 30543 26654 30542 +30471 30615 30542 30543 26655 30543 +30472 30616 30544 30545 26656 30544 +30473 30617 30544 30546 26657 30545 +30474 30618 30545 30547 26658 30546 +30475 30619 30546 30548 26659 30547 +30476 30620 30547 30549 26660 30548 +30477 30621 30548 30550 26661 30549 +30478 30622 30549 30551 26662 30550 +30479 30623 30550 30552 26663 30551 +30480 30624 30551 30553 26664 30552 +30481 30625 30552 30554 26665 30553 +30482 30626 30553 30555 26666 30554 +30483 30627 30554 30556 26667 30555 +30484 30628 30555 30557 26668 30556 +30485 30629 30556 30558 26669 30557 +30486 30630 30557 30559 26670 30558 +30487 30631 30558 30560 26671 30559 +30488 30632 30559 30561 26672 30560 +30489 30633 30560 30562 26673 30561 +30490 30634 30561 30563 26674 30562 +30491 30635 30562 30564 26675 30563 +30492 30636 30563 30565 26676 30564 +30493 30637 30564 30566 26677 30565 +30494 30638 30565 30567 26678 30566 +30495 30639 30566 30568 26679 30567 +30496 30640 30567 30569 26680 30568 +30497 30641 30568 30570 26681 30569 +30498 30642 30569 30571 26682 30570 +30499 30643 30570 30572 26683 30571 +30500 30644 30571 30573 26684 30572 +30501 30645 30572 30574 26685 30573 +30502 30646 30573 30575 26686 30574 +30503 30647 30574 30576 26687 30575 +30504 30648 30575 30577 26688 30576 +30505 30649 30576 30578 26689 30577 +30506 30650 30577 30579 26690 30578 +30507 30651 30578 30580 26691 30579 +30508 30652 30579 30581 26692 30580 +30509 30653 30580 30582 26693 30581 +30510 30654 30581 30583 26694 30582 +30511 30655 30582 30584 26695 30583 +30512 30656 30583 30585 26696 30584 +30513 30657 30584 30586 26697 30585 +30514 30658 30585 30587 26698 30586 +30515 30659 30586 30588 26699 30587 +30516 30660 30587 30589 26700 30588 +30517 30661 30588 30590 26701 30589 +30518 30662 30589 30591 26702 30590 +30519 30663 30590 30592 26703 30591 +30520 30664 30591 30593 26704 30592 +30521 30665 30592 30594 26705 30593 +30522 30666 30593 30595 26706 30594 +30523 30667 30594 30596 26707 30595 +30524 30668 30595 30597 26708 30596 +30525 30669 30596 30598 26709 30597 +30526 30670 30597 30599 26710 30598 +30527 30671 30598 30600 26711 30599 +30528 30672 30599 30601 26712 30600 +30529 30673 30600 30602 26713 30601 +30530 30674 30601 30603 26714 30602 +30531 30675 30602 30604 26715 30603 +30532 30676 30603 30605 26716 30604 +30533 30677 30604 30606 26717 30605 +30534 30678 30605 30607 26718 30606 +30535 30679 30606 30608 26719 30607 +30536 30680 30607 30609 26720 30608 +30537 30681 30608 30610 26721 30609 +30538 30682 30609 30611 26722 30610 +30539 30683 30610 30612 26723 30611 +30540 30684 30611 30613 26724 30612 +30541 30685 30612 30614 26725 30613 +30542 30686 30613 30615 26726 30614 +30543 30687 30614 30615 26727 30615 +30544 30688 30616 30617 26728 30616 +30545 30689 30616 30618 26729 30617 +30546 30690 30617 30619 26730 30618 +30547 30691 30618 30620 26731 30619 +30548 30692 30619 30621 26732 30620 +30549 30693 30620 30622 26733 30621 +30550 30694 30621 30623 26734 30622 +30551 30695 30622 30624 26735 30623 +30552 30696 30623 30625 26736 30624 +30553 30697 30624 30626 26737 30625 +30554 30698 30625 30627 26738 30626 +30555 30699 30626 30628 26739 30627 +30556 30700 30627 30629 26740 30628 +30557 30701 30628 30630 26741 30629 +30558 30702 30629 30631 26742 30630 +30559 30703 30630 30632 26743 30631 +30560 30704 30631 30633 26744 30632 +30561 30705 30632 30634 26745 30633 +30562 30706 30633 30635 26746 30634 +30563 30707 30634 30636 26747 30635 +30564 30708 30635 30637 26748 30636 +30565 30709 30636 30638 26749 30637 +30566 30710 30637 30639 26750 30638 +30567 30711 30638 30640 26751 30639 +30568 30712 30639 30641 26752 30640 +30569 30713 30640 30642 26753 30641 +30570 30714 30641 30643 26754 30642 +30571 30715 30642 30644 26755 30643 +30572 30716 30643 30645 26756 30644 +30573 30717 30644 30646 26757 30645 +30574 30718 30645 30647 26758 30646 +30575 30719 30646 30648 26759 30647 +30576 30720 30647 30649 26760 30648 +30577 30721 30648 30650 26761 30649 +30578 30722 30649 30651 26762 30650 +30579 30723 30650 30652 26763 30651 +30580 30724 30651 30653 26764 30652 +30581 30725 30652 30654 26765 30653 +30582 30726 30653 30655 26766 30654 +30583 30727 30654 30656 26767 30655 +30584 30728 30655 30657 26768 30656 +30585 30729 30656 30658 26769 30657 +30586 30730 30657 30659 26770 30658 +30587 30731 30658 30660 26771 30659 +30588 30732 30659 30661 26772 30660 +30589 30733 30660 30662 26773 30661 +30590 30734 30661 30663 26774 30662 +30591 30735 30662 30664 26775 30663 +30592 30736 30663 30665 26776 30664 +30593 30737 30664 30666 26777 30665 +30594 30738 30665 30667 26778 30666 +30595 30739 30666 30668 26779 30667 +30596 30740 30667 30669 26780 30668 +30597 30741 30668 30670 26781 30669 +30598 30742 30669 30671 26782 30670 +30599 30743 30670 30672 26783 30671 +30600 30744 30671 30673 26784 30672 +30601 30745 30672 30674 26785 30673 +30602 30746 30673 30675 26786 30674 +30603 30747 30674 30676 26787 30675 +30604 30748 30675 30677 26788 30676 +30605 30749 30676 30678 26789 30677 +30606 30750 30677 30679 26790 30678 +30607 30751 30678 30680 26791 30679 +30608 30752 30679 30681 26792 30680 +30609 30753 30680 30682 26793 30681 +30610 30754 30681 30683 26794 30682 +30611 30755 30682 30684 26795 30683 +30612 30756 30683 30685 26796 30684 +30613 30757 30684 30686 26797 30685 +30614 30758 30685 30687 26798 30686 +30615 30759 30686 30687 26799 30687 +30616 30760 30688 30689 26800 30688 +30617 30761 30688 30690 26801 30689 +30618 30762 30689 30691 26802 30690 +30619 30763 30690 30692 26803 30691 +30620 30764 30691 30693 26804 30692 +30621 30765 30692 30694 26805 30693 +30622 30766 30693 30695 26806 30694 +30623 30767 30694 30696 26807 30695 +30624 30768 30695 30697 26808 30696 +30625 30769 30696 30698 26809 30697 +30626 30770 30697 30699 26810 30698 +30627 30771 30698 30700 26811 30699 +30628 30772 30699 30701 26812 30700 +30629 30773 30700 30702 26813 30701 +30630 30774 30701 30703 26814 30702 +30631 30775 30702 30704 26815 30703 +30632 30776 30703 30705 26816 30704 +30633 30777 30704 30706 26817 30705 +30634 30778 30705 30707 26818 30706 +30635 30779 30706 30708 26819 30707 +30636 30780 30707 30709 26820 30708 +30637 30781 30708 30710 26821 30709 +30638 30782 30709 30711 26822 30710 +30639 30783 30710 30712 26823 30711 +30640 30784 30711 30713 26824 30712 +30641 30785 30712 30714 26825 30713 +30642 30786 30713 30715 26826 30714 +30643 30787 30714 30716 26827 30715 +30644 30788 30715 30717 26828 30716 +30645 30789 30716 30718 26829 30717 +30646 30790 30717 30719 26830 30718 +30647 30791 30718 30720 26831 30719 +30648 30792 30719 30721 26832 30720 +30649 30793 30720 30722 26833 30721 +30650 30794 30721 30723 26834 30722 +30651 30795 30722 30724 26835 30723 +30652 30796 30723 30725 26836 30724 +30653 30797 30724 30726 26837 30725 +30654 30798 30725 30727 26838 30726 +30655 30799 30726 30728 26839 30727 +30656 30800 30727 30729 26840 30728 +30657 30801 30728 30730 26841 30729 +30658 30802 30729 30731 26842 30730 +30659 30803 30730 30732 26843 30731 +30660 30804 30731 30733 26844 30732 +30661 30805 30732 30734 26845 30733 +30662 30806 30733 30735 26846 30734 +30663 30807 30734 30736 26847 30735 +30664 30808 30735 30737 26848 30736 +30665 30809 30736 30738 26849 30737 +30666 30810 30737 30739 26850 30738 +30667 30811 30738 30740 26851 30739 +30668 30812 30739 30741 26852 30740 +30669 30813 30740 30742 26853 30741 +30670 30814 30741 30743 26854 30742 +30671 30815 30742 30744 26855 30743 +30672 30816 30743 30745 26856 30744 +30673 30817 30744 30746 26857 30745 +30674 30818 30745 30747 26858 30746 +30675 30819 30746 30748 26859 30747 +30676 30820 30747 30749 26860 30748 +30677 30821 30748 30750 26861 30749 +30678 30822 30749 30751 26862 30750 +30679 30823 30750 30752 26863 30751 +30680 30824 30751 30753 26864 30752 +30681 30825 30752 30754 26865 30753 +30682 30826 30753 30755 26866 30754 +30683 30827 30754 30756 26867 30755 +30684 30828 30755 30757 26868 30756 +30685 30829 30756 30758 26869 30757 +30686 30830 30757 30759 26870 30758 +30687 30831 30758 30759 26871 30759 +30688 30832 30760 30761 26872 30760 +30689 30833 30760 30762 26873 30761 +30690 30834 30761 30763 26874 30762 +30691 30835 30762 30764 26875 30763 +30692 30836 30763 30765 26876 30764 +30693 30837 30764 30766 26877 30765 +30694 30838 30765 30767 26878 30766 +30695 30839 30766 30768 26879 30767 +30696 30840 30767 30769 26880 30768 +30697 30841 30768 30770 26881 30769 +30698 30842 30769 30771 26882 30770 +30699 30843 30770 30772 26883 30771 +30700 30844 30771 30773 26884 30772 +30701 30845 30772 30774 26885 30773 +30702 30846 30773 30775 26886 30774 +30703 30847 30774 30776 26887 30775 +30704 30848 30775 30777 26888 30776 +30705 30849 30776 30778 26889 30777 +30706 30850 30777 30779 26890 30778 +30707 30851 30778 30780 26891 30779 +30708 30852 30779 30781 26892 30780 +30709 30853 30780 30782 26893 30781 +30710 30854 30781 30783 26894 30782 +30711 30855 30782 30784 26895 30783 +30712 30856 30783 30785 26896 30784 +30713 30857 30784 30786 26897 30785 +30714 30858 30785 30787 26898 30786 +30715 30859 30786 30788 26899 30787 +30716 30860 30787 30789 26900 30788 +30717 30861 30788 30790 26901 30789 +30718 30862 30789 30791 26902 30790 +30719 30863 30790 30792 26903 30791 +30720 30864 30791 30793 26904 30792 +30721 30865 30792 30794 26905 30793 +30722 30866 30793 30795 26906 30794 +30723 30867 30794 30796 26907 30795 +30724 30868 30795 30797 26908 30796 +30725 30869 30796 30798 26909 30797 +30726 30870 30797 30799 26910 30798 +30727 30871 30798 30800 26911 30799 +30728 30872 30799 30801 26912 30800 +30729 30873 30800 30802 26913 30801 +30730 30874 30801 30803 26914 30802 +30731 30875 30802 30804 26915 30803 +30732 30876 30803 30805 26916 30804 +30733 30877 30804 30806 26917 30805 +30734 30878 30805 30807 26918 30806 +30735 30879 30806 30808 26919 30807 +30736 30880 30807 30809 26920 30808 +30737 30881 30808 30810 26921 30809 +30738 30882 30809 30811 26922 30810 +30739 30883 30810 30812 26923 30811 +30740 30884 30811 30813 26924 30812 +30741 30885 30812 30814 26925 30813 +30742 30886 30813 30815 26926 30814 +30743 30887 30814 30816 26927 30815 +30744 30888 30815 30817 26928 30816 +30745 30889 30816 30818 26929 30817 +30746 30890 30817 30819 26930 30818 +30747 30891 30818 30820 26931 30819 +30748 30892 30819 30821 26932 30820 +30749 30893 30820 30822 26933 30821 +30750 30894 30821 30823 26934 30822 +30751 30895 30822 30824 26935 30823 +30752 30896 30823 30825 26936 30824 +30753 30897 30824 30826 26937 30825 +30754 30898 30825 30827 26938 30826 +30755 30899 30826 30828 26939 30827 +30756 30900 30827 30829 26940 30828 +30757 30901 30828 30830 26941 30829 +30758 30902 30829 30831 26942 30830 +30759 30903 30830 30831 26943 30831 +30760 30904 30832 30833 26944 30832 +30761 30905 30832 30834 26945 30833 +30762 30906 30833 30835 26946 30834 +30763 30907 30834 30836 26947 30835 +30764 30908 30835 30837 26948 30836 +30765 30909 30836 30838 26949 30837 +30766 30910 30837 30839 26950 30838 +30767 30911 30838 30840 26951 30839 +30768 30912 30839 30841 26952 30840 +30769 30913 30840 30842 26953 30841 +30770 30914 30841 30843 26954 30842 +30771 30915 30842 30844 26955 30843 +30772 30916 30843 30845 26956 30844 +30773 30917 30844 30846 26957 30845 +30774 30918 30845 30847 26958 30846 +30775 30919 30846 30848 26959 30847 +30776 30920 30847 30849 26960 30848 +30777 30921 30848 30850 26961 30849 +30778 30922 30849 30851 26962 30850 +30779 30923 30850 30852 26963 30851 +30780 30924 30851 30853 26964 30852 +30781 30925 30852 30854 26965 30853 +30782 30926 30853 30855 26966 30854 +30783 30927 30854 30856 26967 30855 +30784 30928 30855 30857 26968 30856 +30785 30929 30856 30858 26969 30857 +30786 30930 30857 30859 26970 30858 +30787 30931 30858 30860 26971 30859 +30788 30932 30859 30861 26972 30860 +30789 30933 30860 30862 26973 30861 +30790 30934 30861 30863 26974 30862 +30791 30935 30862 30864 26975 30863 +30792 30936 30863 30865 26976 30864 +30793 30937 30864 30866 26977 30865 +30794 30938 30865 30867 26978 30866 +30795 30939 30866 30868 26979 30867 +30796 30940 30867 30869 26980 30868 +30797 30941 30868 30870 26981 30869 +30798 30942 30869 30871 26982 30870 +30799 30943 30870 30872 26983 30871 +30800 30944 30871 30873 26984 30872 +30801 30945 30872 30874 26985 30873 +30802 30946 30873 30875 26986 30874 +30803 30947 30874 30876 26987 30875 +30804 30948 30875 30877 26988 30876 +30805 30949 30876 30878 26989 30877 +30806 30950 30877 30879 26990 30878 +30807 30951 30878 30880 26991 30879 +30808 30952 30879 30881 26992 30880 +30809 30953 30880 30882 26993 30881 +30810 30954 30881 30883 26994 30882 +30811 30955 30882 30884 26995 30883 +30812 30956 30883 30885 26996 30884 +30813 30957 30884 30886 26997 30885 +30814 30958 30885 30887 26998 30886 +30815 30959 30886 30888 26999 30887 +30816 30960 30887 30889 27000 30888 +30817 30961 30888 30890 27001 30889 +30818 30962 30889 30891 27002 30890 +30819 30963 30890 30892 27003 30891 +30820 30964 30891 30893 27004 30892 +30821 30965 30892 30894 27005 30893 +30822 30966 30893 30895 27006 30894 +30823 30967 30894 30896 27007 30895 +30824 30968 30895 30897 27008 30896 +30825 30969 30896 30898 27009 30897 +30826 30970 30897 30899 27010 30898 +30827 30971 30898 30900 27011 30899 +30828 30972 30899 30901 27012 30900 +30829 30973 30900 30902 27013 30901 +30830 30974 30901 30903 27014 30902 +30831 30975 30902 30903 27015 30903 +30832 30976 30904 30905 27016 30904 +30833 30977 30904 30906 27017 30905 +30834 30978 30905 30907 27018 30906 +30835 30979 30906 30908 27019 30907 +30836 30980 30907 30909 27020 30908 +30837 30981 30908 30910 27021 30909 +30838 30982 30909 30911 27022 30910 +30839 30983 30910 30912 27023 30911 +30840 30984 30911 30913 27024 30912 +30841 30985 30912 30914 27025 30913 +30842 30986 30913 30915 27026 30914 +30843 30987 30914 30916 27027 30915 +30844 30988 30915 30917 27028 30916 +30845 30989 30916 30918 27029 30917 +30846 30990 30917 30919 27030 30918 +30847 30991 30918 30920 27031 30919 +30848 30992 30919 30921 27032 30920 +30849 30993 30920 30922 27033 30921 +30850 30994 30921 30923 27034 30922 +30851 30995 30922 30924 27035 30923 +30852 30996 30923 30925 27036 30924 +30853 30997 30924 30926 27037 30925 +30854 30998 30925 30927 27038 30926 +30855 30999 30926 30928 27039 30927 +30856 31000 30927 30929 27040 30928 +30857 31001 30928 30930 27041 30929 +30858 31002 30929 30931 27042 30930 +30859 31003 30930 30932 27043 30931 +30860 31004 30931 30933 27044 30932 +30861 31005 30932 30934 27045 30933 +30862 31006 30933 30935 27046 30934 +30863 31007 30934 30936 27047 30935 +30864 31008 30935 30937 27048 30936 +30865 31009 30936 30938 27049 30937 +30866 31010 30937 30939 27050 30938 +30867 31011 30938 30940 27051 30939 +30868 31012 30939 30941 27052 30940 +30869 31013 30940 30942 27053 30941 +30870 31014 30941 30943 27054 30942 +30871 31015 30942 30944 27055 30943 +30872 31016 30943 30945 27056 30944 +30873 31017 30944 30946 27057 30945 +30874 31018 30945 30947 27058 30946 +30875 31019 30946 30948 27059 30947 +30876 31020 30947 30949 27060 30948 +30877 31021 30948 30950 27061 30949 +30878 31022 30949 30951 27062 30950 +30879 31023 30950 30952 27063 30951 +30880 31024 30951 30953 27064 30952 +30881 31025 30952 30954 27065 30953 +30882 31026 30953 30955 27066 30954 +30883 31027 30954 30956 27067 30955 +30884 31028 30955 30957 27068 30956 +30885 31029 30956 30958 27069 30957 +30886 31030 30957 30959 27070 30958 +30887 31031 30958 30960 27071 30959 +30888 31032 30959 30961 27072 30960 +30889 31033 30960 30962 27073 30961 +30890 31034 30961 30963 27074 30962 +30891 31035 30962 30964 27075 30963 +30892 31036 30963 30965 27076 30964 +30893 31037 30964 30966 27077 30965 +30894 31038 30965 30967 27078 30966 +30895 31039 30966 30968 27079 30967 +30896 31040 30967 30969 27080 30968 +30897 31041 30968 30970 27081 30969 +30898 31042 30969 30971 27082 30970 +30899 31043 30970 30972 27083 30971 +30900 31044 30971 30973 27084 30972 +30901 31045 30972 30974 27085 30973 +30902 31046 30973 30975 27086 30974 +30903 31047 30974 30975 27087 30975 +30904 31048 30976 30977 27088 30976 +30905 31049 30976 30978 27089 30977 +30906 31050 30977 30979 27090 30978 +30907 31051 30978 30980 27091 30979 +30908 31052 30979 30981 27092 30980 +30909 31053 30980 30982 27093 30981 +30910 31054 30981 30983 27094 30982 +30911 31055 30982 30984 27095 30983 +30912 31056 30983 30985 27096 30984 +30913 31057 30984 30986 27097 30985 +30914 31058 30985 30987 27098 30986 +30915 31059 30986 30988 27099 30987 +30916 31060 30987 30989 27100 30988 +30917 31061 30988 30990 27101 30989 +30918 31062 30989 30991 27102 30990 +30919 31063 30990 30992 27103 30991 +30920 31064 30991 30993 27104 30992 +30921 31065 30992 30994 27105 30993 +30922 31066 30993 30995 27106 30994 +30923 31067 30994 30996 27107 30995 +30924 31068 30995 30997 27108 30996 +30925 31069 30996 30998 27109 30997 +30926 31070 30997 30999 27110 30998 +30927 31071 30998 31000 27111 30999 +30928 31072 30999 31001 27112 31000 +30929 31073 31000 31002 27113 31001 +30930 31074 31001 31003 27114 31002 +30931 31075 31002 31004 27115 31003 +30932 31076 31003 31005 27116 31004 +30933 31077 31004 31006 27117 31005 +30934 31078 31005 31007 27118 31006 +30935 31079 31006 31008 27119 31007 +30936 31080 31007 31009 27120 31008 +30937 31081 31008 31010 27121 31009 +30938 31082 31009 31011 27122 31010 +30939 31083 31010 31012 27123 31011 +30940 31084 31011 31013 27124 31012 +30941 31085 31012 31014 27125 31013 +30942 31086 31013 31015 27126 31014 +30943 31087 31014 31016 27127 31015 +30944 31088 31015 31017 27128 31016 +30945 31089 31016 31018 27129 31017 +30946 31090 31017 31019 27130 31018 +30947 31091 31018 31020 27131 31019 +30948 31092 31019 31021 27132 31020 +30949 31093 31020 31022 27133 31021 +30950 31094 31021 31023 27134 31022 +30951 31095 31022 31024 27135 31023 +30952 31096 31023 31025 27136 31024 +30953 31097 31024 31026 27137 31025 +30954 31098 31025 31027 27138 31026 +30955 31099 31026 31028 27139 31027 +30956 31100 31027 31029 27140 31028 +30957 31101 31028 31030 27141 31029 +30958 31102 31029 31031 27142 31030 +30959 31103 31030 31032 27143 31031 +30960 31104 31031 31033 27144 31032 +30961 31105 31032 31034 27145 31033 +30962 31106 31033 31035 27146 31034 +30963 31107 31034 31036 27147 31035 +30964 31108 31035 31037 27148 31036 +30965 31109 31036 31038 27149 31037 +30966 31110 31037 31039 27150 31038 +30967 31111 31038 31040 27151 31039 +30968 31112 31039 31041 27152 31040 +30969 31113 31040 31042 27153 31041 +30970 31114 31041 31043 27154 31042 +30971 31115 31042 31044 27155 31043 +30972 31116 31043 31045 27156 31044 +30973 31117 31044 31046 27157 31045 +30974 31118 31045 31047 27158 31046 +30975 31119 31046 31047 27159 31047 +30976 31120 31048 31049 27160 31048 +30977 31121 31048 31050 27161 31049 +30978 31122 31049 31051 27162 31050 +30979 31123 31050 31052 27163 31051 +30980 31124 31051 31053 27164 31052 +30981 31125 31052 31054 27165 31053 +30982 31126 31053 31055 27166 31054 +30983 31127 31054 31056 27167 31055 +30984 31128 31055 31057 27168 31056 +30985 31129 31056 31058 27169 31057 +30986 31130 31057 31059 27170 31058 +30987 31131 31058 31060 27171 31059 +30988 31132 31059 31061 27172 31060 +30989 31133 31060 31062 27173 31061 +30990 31134 31061 31063 27174 31062 +30991 31135 31062 31064 27175 31063 +30992 31136 31063 31065 27176 31064 +30993 31137 31064 31066 27177 31065 +30994 31138 31065 31067 27178 31066 +30995 31139 31066 31068 27179 31067 +30996 31140 31067 31069 27180 31068 +30997 31141 31068 31070 27181 31069 +30998 31142 31069 31071 27182 31070 +30999 31143 31070 31072 27183 31071 +31000 31144 31071 31073 27184 31072 +31001 31145 31072 31074 27185 31073 +31002 31146 31073 31075 27186 31074 +31003 31147 31074 31076 27187 31075 +31004 31148 31075 31077 27188 31076 +31005 31149 31076 31078 27189 31077 +31006 31150 31077 31079 27190 31078 +31007 31151 31078 31080 27191 31079 +31008 31152 31079 31081 27192 31080 +31009 31153 31080 31082 27193 31081 +31010 31154 31081 31083 27194 31082 +31011 31155 31082 31084 27195 31083 +31012 31156 31083 31085 27196 31084 +31013 31157 31084 31086 27197 31085 +31014 31158 31085 31087 27198 31086 +31015 31159 31086 31088 27199 31087 +31016 31160 31087 31089 27200 31088 +31017 31161 31088 31090 27201 31089 +31018 31162 31089 31091 27202 31090 +31019 31163 31090 31092 27203 31091 +31020 31164 31091 31093 27204 31092 +31021 31165 31092 31094 27205 31093 +31022 31166 31093 31095 27206 31094 +31023 31167 31094 31096 27207 31095 +31024 31168 31095 31097 27208 31096 +31025 31169 31096 31098 27209 31097 +31026 31170 31097 31099 27210 31098 +31027 31171 31098 31100 27211 31099 +31028 31172 31099 31101 27212 31100 +31029 31173 31100 31102 27213 31101 +31030 31174 31101 31103 27214 31102 +31031 31175 31102 31104 27215 31103 +31032 31176 31103 31105 27216 31104 +31033 31177 31104 31106 27217 31105 +31034 31178 31105 31107 27218 31106 +31035 31179 31106 31108 27219 31107 +31036 31180 31107 31109 27220 31108 +31037 31181 31108 31110 27221 31109 +31038 31182 31109 31111 27222 31110 +31039 31183 31110 31112 27223 31111 +31040 31184 31111 31113 27224 31112 +31041 31185 31112 31114 27225 31113 +31042 31186 31113 31115 27226 31114 +31043 31187 31114 31116 27227 31115 +31044 31188 31115 31117 27228 31116 +31045 31189 31116 31118 27229 31117 +31046 31190 31117 31119 27230 31118 +31047 31191 31118 31119 27231 31119 +31048 31192 31120 31121 27232 31120 +31049 31193 31120 31122 27233 31121 +31050 31194 31121 31123 27234 31122 +31051 31195 31122 31124 27235 31123 +31052 31196 31123 31125 27236 31124 +31053 31197 31124 31126 27237 31125 +31054 31198 31125 31127 27238 31126 +31055 31199 31126 31128 27239 31127 +31056 31200 31127 31129 27240 31128 +31057 31201 31128 31130 27241 31129 +31058 31202 31129 31131 27242 31130 +31059 31203 31130 31132 27243 31131 +31060 31204 31131 31133 27244 31132 +31061 31205 31132 31134 27245 31133 +31062 31206 31133 31135 27246 31134 +31063 31207 31134 31136 27247 31135 +31064 31208 31135 31137 27248 31136 +31065 31209 31136 31138 27249 31137 +31066 31210 31137 31139 27250 31138 +31067 31211 31138 31140 27251 31139 +31068 31212 31139 31141 27252 31140 +31069 31213 31140 31142 27253 31141 +31070 31214 31141 31143 27254 31142 +31071 31215 31142 31144 27255 31143 +31072 31216 31143 31145 27256 31144 +31073 31217 31144 31146 27257 31145 +31074 31218 31145 31147 27258 31146 +31075 31219 31146 31148 27259 31147 +31076 31220 31147 31149 27260 31148 +31077 31221 31148 31150 27261 31149 +31078 31222 31149 31151 27262 31150 +31079 31223 31150 31152 27263 31151 +31080 31224 31151 31153 27264 31152 +31081 31225 31152 31154 27265 31153 +31082 31226 31153 31155 27266 31154 +31083 31227 31154 31156 27267 31155 +31084 31228 31155 31157 27268 31156 +31085 31229 31156 31158 27269 31157 +31086 31230 31157 31159 27270 31158 +31087 31231 31158 31160 27271 31159 +31088 31232 31159 31161 27272 31160 +31089 31233 31160 31162 27273 31161 +31090 31234 31161 31163 27274 31162 +31091 31235 31162 31164 27275 31163 +31092 31236 31163 31165 27276 31164 +31093 31237 31164 31166 27277 31165 +31094 31238 31165 31167 27278 31166 +31095 31239 31166 31168 27279 31167 +31096 31240 31167 31169 27280 31168 +31097 31241 31168 31170 27281 31169 +31098 31242 31169 31171 27282 31170 +31099 31243 31170 31172 27283 31171 +31100 31244 31171 31173 27284 31172 +31101 31245 31172 31174 27285 31173 +31102 31246 31173 31175 27286 31174 +31103 31247 31174 31176 27287 31175 +31104 31248 31175 31177 27288 31176 +31105 31249 31176 31178 27289 31177 +31106 31250 31177 31179 27290 31178 +31107 31251 31178 31180 27291 31179 +31108 31252 31179 31181 27292 31180 +31109 31253 31180 31182 27293 31181 +31110 31254 31181 31183 27294 31182 +31111 31255 31182 31184 27295 31183 +31112 31256 31183 31185 27296 31184 +31113 31257 31184 31186 27297 31185 +31114 31258 31185 31187 27298 31186 +31115 31259 31186 31188 27299 31187 +31116 31260 31187 31189 27300 31188 +31117 31261 31188 31190 27301 31189 +31118 31262 31189 31191 27302 31190 +31119 31263 31190 31191 27303 31191 +31120 31264 31192 31193 27304 31192 +31121 31265 31192 31194 27305 31193 +31122 31266 31193 31195 27306 31194 +31123 31267 31194 31196 27307 31195 +31124 31268 31195 31197 27308 31196 +31125 31269 31196 31198 27309 31197 +31126 31270 31197 31199 27310 31198 +31127 31271 31198 31200 27311 31199 +31128 31272 31199 31201 27312 31200 +31129 31273 31200 31202 27313 31201 +31130 31274 31201 31203 27314 31202 +31131 31275 31202 31204 27315 31203 +31132 31276 31203 31205 27316 31204 +31133 31277 31204 31206 27317 31205 +31134 31278 31205 31207 27318 31206 +31135 31279 31206 31208 27319 31207 +31136 31280 31207 31209 27320 31208 +31137 31281 31208 31210 27321 31209 +31138 31282 31209 31211 27322 31210 +31139 31283 31210 31212 27323 31211 +31140 31284 31211 31213 27324 31212 +31141 31285 31212 31214 27325 31213 +31142 31286 31213 31215 27326 31214 +31143 31287 31214 31216 27327 31215 +31144 31288 31215 31217 27328 31216 +31145 31289 31216 31218 27329 31217 +31146 31290 31217 31219 27330 31218 +31147 31291 31218 31220 27331 31219 +31148 31292 31219 31221 27332 31220 +31149 31293 31220 31222 27333 31221 +31150 31294 31221 31223 27334 31222 +31151 31295 31222 31224 27335 31223 +31152 31296 31223 31225 27336 31224 +31153 31297 31224 31226 27337 31225 +31154 31298 31225 31227 27338 31226 +31155 31299 31226 31228 27339 31227 +31156 31300 31227 31229 27340 31228 +31157 31301 31228 31230 27341 31229 +31158 31302 31229 31231 27342 31230 +31159 31303 31230 31232 27343 31231 +31160 31304 31231 31233 27344 31232 +31161 31305 31232 31234 27345 31233 +31162 31306 31233 31235 27346 31234 +31163 31307 31234 31236 27347 31235 +31164 31308 31235 31237 27348 31236 +31165 31309 31236 31238 27349 31237 +31166 31310 31237 31239 27350 31238 +31167 31311 31238 31240 27351 31239 +31168 31312 31239 31241 27352 31240 +31169 31313 31240 31242 27353 31241 +31170 31314 31241 31243 27354 31242 +31171 31315 31242 31244 27355 31243 +31172 31316 31243 31245 27356 31244 +31173 31317 31244 31246 27357 31245 +31174 31318 31245 31247 27358 31246 +31175 31319 31246 31248 27359 31247 +31176 31320 31247 31249 27360 31248 +31177 31321 31248 31250 27361 31249 +31178 31322 31249 31251 27362 31250 +31179 31323 31250 31252 27363 31251 +31180 31324 31251 31253 27364 31252 +31181 31325 31252 31254 27365 31253 +31182 31326 31253 31255 27366 31254 +31183 31327 31254 31256 27367 31255 +31184 31328 31255 31257 27368 31256 +31185 31329 31256 31258 27369 31257 +31186 31330 31257 31259 27370 31258 +31187 31331 31258 31260 27371 31259 +31188 31332 31259 31261 27372 31260 +31189 31333 31260 31262 27373 31261 +31190 31334 31261 31263 27374 31262 +31191 31335 31262 31263 27375 31263 +31192 31336 31264 31265 27376 31264 +31193 31337 31264 31266 27377 31265 +31194 31338 31265 31267 27378 31266 +31195 31339 31266 31268 27379 31267 +31196 31340 31267 31269 27380 31268 +31197 31341 31268 31270 27381 31269 +31198 31342 31269 31271 27382 31270 +31199 31343 31270 31272 27383 31271 +31200 31344 31271 31273 27384 31272 +31201 31345 31272 31274 27385 31273 +31202 31346 31273 31275 27386 31274 +31203 31347 31274 31276 27387 31275 +31204 31348 31275 31277 27388 31276 +31205 31349 31276 31278 27389 31277 +31206 31350 31277 31279 27390 31278 +31207 31351 31278 31280 27391 31279 +31208 31352 31279 31281 27392 31280 +31209 31353 31280 31282 27393 31281 +31210 31354 31281 31283 27394 31282 +31211 31355 31282 31284 27395 31283 +31212 31356 31283 31285 27396 31284 +31213 31357 31284 31286 27397 31285 +31214 31358 31285 31287 27398 31286 +31215 31359 31286 31288 27399 31287 +31216 31360 31287 31289 27400 31288 +31217 31361 31288 31290 27401 31289 +31218 31362 31289 31291 27402 31290 +31219 31363 31290 31292 27403 31291 +31220 31364 31291 31293 27404 31292 +31221 31365 31292 31294 27405 31293 +31222 31366 31293 31295 27406 31294 +31223 31367 31294 31296 27407 31295 +31224 31368 31295 31297 27408 31296 +31225 31369 31296 31298 27409 31297 +31226 31370 31297 31299 27410 31298 +31227 31371 31298 31300 27411 31299 +31228 31372 31299 31301 27412 31300 +31229 31373 31300 31302 27413 31301 +31230 31374 31301 31303 27414 31302 +31231 31375 31302 31304 27415 31303 +31232 31376 31303 31305 27416 31304 +31233 31377 31304 31306 27417 31305 +31234 31378 31305 31307 27418 31306 +31235 31379 31306 31308 27419 31307 +31236 31380 31307 31309 27420 31308 +31237 31381 31308 31310 27421 31309 +31238 31382 31309 31311 27422 31310 +31239 31383 31310 31312 27423 31311 +31240 31384 31311 31313 27424 31312 +31241 31385 31312 31314 27425 31313 +31242 31386 31313 31315 27426 31314 +31243 31387 31314 31316 27427 31315 +31244 31388 31315 31317 27428 31316 +31245 31389 31316 31318 27429 31317 +31246 31390 31317 31319 27430 31318 +31247 31391 31318 31320 27431 31319 +31248 31392 31319 31321 27432 31320 +31249 31393 31320 31322 27433 31321 +31250 31394 31321 31323 27434 31322 +31251 31395 31322 31324 27435 31323 +31252 31396 31323 31325 27436 31324 +31253 31397 31324 31326 27437 31325 +31254 31398 31325 31327 27438 31326 +31255 31399 31326 31328 27439 31327 +31256 31400 31327 31329 27440 31328 +31257 31401 31328 31330 27441 31329 +31258 31402 31329 31331 27442 31330 +31259 31403 31330 31332 27443 31331 +31260 31404 31331 31333 27444 31332 +31261 31405 31332 31334 27445 31333 +31262 31406 31333 31335 27446 31334 +31263 31407 31334 31335 27447 31335 +31264 31336 31336 31337 27448 31336 +31265 31337 31336 31338 27449 31337 +31266 31338 31337 31339 27450 31338 +31267 31339 31338 31340 27451 31339 +31268 31340 31339 31341 27452 31340 +31269 31341 31340 31342 27453 31341 +31270 31342 31341 31343 27454 31342 +31271 31343 31342 31344 27455 31343 +31272 31344 31343 31345 27456 31344 +31273 31345 31344 31346 27457 31345 +31274 31346 31345 31347 27458 31346 +31275 31347 31346 31348 27459 31347 +31276 31348 31347 31349 27460 31348 +31277 31349 31348 31350 27461 31349 +31278 31350 31349 31351 27462 31350 +31279 31351 31350 31352 27463 31351 +31280 31352 31351 31353 27464 31352 +31281 31353 31352 31354 27465 31353 +31282 31354 31353 31355 27466 31354 +31283 31355 31354 31356 27467 31355 +31284 31356 31355 31357 27468 31356 +31285 31357 31356 31358 27469 31357 +31286 31358 31357 31359 27470 31358 +31287 31359 31358 31360 27471 31359 +31288 31360 31359 31361 27472 31360 +31289 31361 31360 31362 27473 31361 +31290 31362 31361 31363 27474 31362 +31291 31363 31362 31364 27475 31363 +31292 31364 31363 31365 27476 31364 +31293 31365 31364 31366 27477 31365 +31294 31366 31365 31367 27478 31366 +31295 31367 31366 31368 27479 31367 +31296 31368 31367 31369 27480 31368 +31297 31369 31368 31370 27481 31369 +31298 31370 31369 31371 27482 31370 +31299 31371 31370 31372 27483 31371 +31300 31372 31371 31373 27484 31372 +31301 31373 31372 31374 27485 31373 +31302 31374 31373 31375 27486 31374 +31303 31375 31374 31376 27487 31375 +31304 31376 31375 31377 27488 31376 +31305 31377 31376 31378 27489 31377 +31306 31378 31377 31379 27490 31378 +31307 31379 31378 31380 27491 31379 +31308 31380 31379 31381 27492 31380 +31309 31381 31380 31382 27493 31381 +31310 31382 31381 31383 27494 31382 +31311 31383 31382 31384 27495 31383 +31312 31384 31383 31385 27496 31384 +31313 31385 31384 31386 27497 31385 +31314 31386 31385 31387 27498 31386 +31315 31387 31386 31388 27499 31387 +31316 31388 31387 31389 27500 31388 +31317 31389 31388 31390 27501 31389 +31318 31390 31389 31391 27502 31390 +31319 31391 31390 31392 27503 31391 +31320 31392 31391 31393 27504 31392 +31321 31393 31392 31394 27505 31393 +31322 31394 31393 31395 27506 31394 +31323 31395 31394 31396 27507 31395 +31324 31396 31395 31397 27508 31396 +31325 31397 31396 31398 27509 31397 +31326 31398 31397 31399 27510 31398 +31327 31399 31398 31400 27511 31399 +31328 31400 31399 31401 27512 31400 +31329 31401 31400 31402 27513 31401 +31330 31402 31401 31403 27514 31402 +31331 31403 31402 31404 27515 31403 +31332 31404 31403 31405 27516 31404 +31333 31405 31404 31406 27517 31405 +31334 31406 31405 31407 27518 31406 +31335 31407 31406 31407 27519 31407 +734 +0 +1 +4 +7 +8 +11 +16 +21 +26 +27 +30 +35 +42 +49 +56 +63 +64 +67 +72 +79 +88 +97 +106 +115 +124 +125 +128 +133 +140 +149 +158 +167 +176 +185 +188 +193 +206 +217 +240 +257 +290 +313 +354 +379 +420 +445 +486 +511 +552 +577 +594 +597 +602 +609 +618 +629 +642 +657 +674 +693 +714 +737 +762 +787 +812 +837 +862 +887 +912 +937 +962 +987 +1012 +1037 +1062 +1063 +1066 +1071 +1078 +1087 +1098 +1111 +1126 +1143 +1162 +1183 +1206 +1231 +1256 +1281 +1306 +1331 +1356 +1381 +1406 +1431 +1456 +1481 +1506 +1531 +1532 +1535 +1540 +1547 +1556 +1567 +1580 +1595 +1612 +1631 +1652 +1675 +1700 +1725 +1750 +1775 +1800 +1825 +1850 +1875 +1900 +1925 +1950 +1975 +2000 +2001 +2004 +2009 +2016 +2025 +2036 +2049 +2064 +2081 +2100 +2121 +2144 +2169 +2194 +2219 +2244 +2269 +2294 +2319 +2344 +2369 +2394 +2419 +2444 +2469 +2470 +2473 +2478 +2485 +2494 +2505 +2518 +2533 +2550 +2569 +2590 +2613 +2638 +2663 +2688 +2713 +2738 +2763 +2788 +2813 +2838 +2863 +2888 +2913 +2938 +2941 +2946 +2959 +2970 +2993 +3010 +3043 +3066 +3109 +3138 +3191 +3226 +3289 +3330 +3403 +3450 +3533 +3586 +3679 +3738 +3841 +3906 +4019 +4090 +4211 +4284 +4405 +4478 +4599 +4672 +4793 +4866 +4987 +5060 +5181 +5254 +5375 +5448 +5569 +5642 +5763 +5836 +5957 +6030 +6151 +6224 +6345 +6418 +6467 +6470 +6475 +6482 +6491 +6502 +6515 +6530 +6547 +6566 +6587 +6610 +6635 +6662 +6691 +6722 +6755 +6790 +6827 +6866 +6907 +6950 +6995 +7042 +7091 +7142 +7195 +7250 +7307 +7366 +7427 +7490 +7555 +7622 +7691 +7762 +7835 +7908 +7981 +8054 +8127 +8200 +8273 +8346 +8419 +8492 +8565 +8638 +8711 +8784 +8857 +8930 +9003 +9076 +9149 +9222 +9295 +9368 +9441 +9514 +9587 +9660 +9733 +9806 +9879 +9952 +10025 +10098 +10171 +10244 +10317 +10390 +10463 +10464 +10467 +10472 +10479 +10488 +10499 +10512 +10527 +10544 +10563 +10584 +10607 +10632 +10659 +10688 +10719 +10752 +10787 +10824 +10863 +10904 +10947 +10992 +11039 +11088 +11139 +11192 +11247 +11304 +11363 +11424 +11487 +11552 +11619 +11688 +11759 +11832 +11905 +11978 +12051 +12124 +12197 +12270 +12343 +12416 +12489 +12562 +12635 +12708 +12781 +12854 +12927 +13000 +13073 +13146 +13219 +13292 +13365 +13438 +13511 +13584 +13657 +13730 +13803 +13876 +13949 +14022 +14095 +14168 +14241 +14314 +14387 +14460 +14461 +14464 +14469 +14476 +14485 +14496 +14509 +14524 +14541 +14560 +14581 +14604 +14629 +14656 +14685 +14716 +14749 +14784 +14821 +14860 +14901 +14944 +14989 +15036 +15085 +15136 +15189 +15244 +15301 +15360 +15421 +15484 +15549 +15616 +15685 +15756 +15829 +15902 +15975 +16048 +16121 +16194 +16267 +16340 +16413 +16486 +16559 +16632 +16705 +16778 +16851 +16924 +16997 +17070 +17143 +17216 +17289 +17362 +17435 +17508 +17581 +17654 +17727 +17800 +17873 +17946 +18019 +18092 +18165 +18238 +18311 +18384 +18457 +18458 +18461 +18466 +18473 +18482 +18493 +18506 +18521 +18538 +18557 +18578 +18601 +18626 +18653 +18682 +18713 +18746 +18781 +18818 +18857 +18898 +18941 +18986 +19033 +19082 +19133 +19186 +19241 +19298 +19357 +19418 +19481 +19546 +19613 +19682 +19753 +19826 +19899 +19972 +20045 +20118 +20191 +20264 +20337 +20410 +20483 +20556 +20629 +20702 +20775 +20848 +20921 +20994 +21067 +21140 +21213 +21286 +21359 +21432 +21505 +21578 +21651 +21724 +21797 +21870 +21943 +22016 +22089 +22162 +22235 +22308 +22381 +22454 +22455 +22458 +22463 +22470 +22479 +22490 +22503 +22518 +22535 +22554 +22575 +22598 +22623 +22650 +22679 +22710 +22743 +22778 +22815 +22854 +22895 +22938 +22983 +23030 +23079 +23130 +23183 +23238 +23295 +23354 +23415 +23478 +23543 +23610 +23679 +23750 +23823 +23896 +23969 +24042 +24115 +24188 +24261 +24334 +24407 +24480 +24553 +24626 +24699 +24772 +24845 +24918 +24991 +25064 +25137 +25210 +25283 +25356 +25429 +25502 +25575 +25648 +25721 +25794 +25867 +25940 +26013 +26086 +26159 +26232 +26305 +26378 +26451 +26452 +26455 +26460 +26467 +26476 +26487 +26500 +26515 +26532 +26551 +26572 +26595 +26620 +26647 +26676 +26707 +26740 +26775 +26812 +26851 +26892 +26935 +26980 +27027 +27076 +27127 +27180 +27235 +27292 +27351 +27412 +27475 +27540 +27607 +27676 +27747 +27820 +27893 +27966 +28039 +28112 +28185 +28258 +28331 +28404 +28477 +28550 +28623 +28696 +28769 +28842 +28915 +28988 +29061 +29134 +29207 +29280 +29353 +29426 +29499 +29572 +29645 +29718 +29791 +29864 +29937 +30010 +30083 +30156 +30229 +30302 +30375 +30448 +30449 +30452 +30457 +30464 +30473 +30484 +30497 +30512 +30529 +30548 +30569 +30592 +30617 +30644 +30673 +30704 +30737 +30772 +30809 +30848 +30889 +30932 +30977 +31024 +31073 +31124 +31177 +31232 +31289 +31348 +31409 +31472 +31537 +31604 +31673 +31744 +31817 +31890 +31963 +32036 +32109 +32182 +32255 +32328 +32401 +32474 +32547 +32620 +32693 +32766 +32839 +32912 +32985 +33058 +33131 +33204 +33277 +33350 +33423 +33496 +33569 +33642 +33715 +33788 +33861 +33934 +34007 +34080 +34153 +34226 +34299 +34372 +34445 +734 +0 +1 +2 +5 +8 +9 +12 +17 +22 +27 +28 +31 +36 +43 +50 +57 +64 +65 +68 +73 +80 +89 +98 +107 +116 +125 +126 +129 +134 +141 +150 +159 +168 +177 +186 +189 +198 +207 +226 +241 +270 +291 +330 +355 +396 +421 +462 +487 +528 +553 +594 +595 +598 +603 +610 +619 +630 +643 +658 +675 +694 +715 +738 +763 +788 +813 +838 +863 +888 +913 +938 +963 +988 +1013 +1038 +1063 +1064 +1067 +1072 +1079 +1088 +1099 +1112 +1127 +1144 +1163 +1184 +1207 +1232 +1257 +1282 +1307 +1332 +1357 +1382 +1407 +1432 +1457 +1482 +1507 +1532 +1533 +1536 +1541 +1548 +1557 +1568 +1581 +1596 +1613 +1632 +1653 +1676 +1701 +1726 +1751 +1776 +1801 +1826 +1851 +1876 +1901 +1926 +1951 +1976 +2001 +2002 +2005 +2010 +2017 +2026 +2037 +2050 +2065 +2082 +2101 +2122 +2145 +2170 +2195 +2220 +2245 +2270 +2295 +2320 +2345 +2370 +2395 +2420 +2445 +2470 +2471 +2474 +2479 +2486 +2495 +2506 +2519 +2534 +2551 +2570 +2591 +2614 +2639 +2664 +2689 +2714 +2739 +2764 +2789 +2814 +2839 +2864 +2889 +2914 +2939 +2942 +2951 +2960 +2979 +2994 +3023 +3044 +3083 +3110 +3159 +3192 +3251 +3290 +3359 +3404 +3483 +3534 +3623 +3680 +3779 +3842 +3951 +4020 +4139 +4212 +4333 +4406 +4527 +4600 +4721 +4794 +4915 +4988 +5109 +5182 +5303 +5376 +5497 +5570 +5691 +5764 +5885 +5958 +6079 +6152 +6273 +6346 +6467 +6468 +6471 +6476 +6483 +6492 +6503 +6516 +6531 +6548 +6567 +6588 +6611 +6636 +6663 +6692 +6723 +6756 +6791 +6828 +6867 +6908 +6951 +6996 +7043 +7092 +7143 +7196 +7251 +7308 +7367 +7428 +7491 +7556 +7623 +7692 +7763 +7836 +7909 +7982 +8055 +8128 +8201 +8274 +8347 +8420 +8493 +8566 +8639 +8712 +8785 +8858 +8931 +9004 +9077 +9150 +9223 +9296 +9369 +9442 +9515 +9588 +9661 +9734 +9807 +9880 +9953 +10026 +10099 +10172 +10245 +10318 +10391 +10464 +10465 +10468 +10473 +10480 +10489 +10500 +10513 +10528 +10545 +10564 +10585 +10608 +10633 +10660 +10689 +10720 +10753 +10788 +10825 +10864 +10905 +10948 +10993 +11040 +11089 +11140 +11193 +11248 +11305 +11364 +11425 +11488 +11553 +11620 +11689 +11760 +11833 +11906 +11979 +12052 +12125 +12198 +12271 +12344 +12417 +12490 +12563 +12636 +12709 +12782 +12855 +12928 +13001 +13074 +13147 +13220 +13293 +13366 +13439 +13512 +13585 +13658 +13731 +13804 +13877 +13950 +14023 +14096 +14169 +14242 +14315 +14388 +14461 +14462 +14465 +14470 +14477 +14486 +14497 +14510 +14525 +14542 +14561 +14582 +14605 +14630 +14657 +14686 +14717 +14750 +14785 +14822 +14861 +14902 +14945 +14990 +15037 +15086 +15137 +15190 +15245 +15302 +15361 +15422 +15485 +15550 +15617 +15686 +15757 +15830 +15903 +15976 +16049 +16122 +16195 +16268 +16341 +16414 +16487 +16560 +16633 +16706 +16779 +16852 +16925 +16998 +17071 +17144 +17217 +17290 +17363 +17436 +17509 +17582 +17655 +17728 +17801 +17874 +17947 +18020 +18093 +18166 +18239 +18312 +18385 +18458 +18459 +18462 +18467 +18474 +18483 +18494 +18507 +18522 +18539 +18558 +18579 +18602 +18627 +18654 +18683 +18714 +18747 +18782 +18819 +18858 +18899 +18942 +18987 +19034 +19083 +19134 +19187 +19242 +19299 +19358 +19419 +19482 +19547 +19614 +19683 +19754 +19827 +19900 +19973 +20046 +20119 +20192 +20265 +20338 +20411 +20484 +20557 +20630 +20703 +20776 +20849 +20922 +20995 +21068 +21141 +21214 +21287 +21360 +21433 +21506 +21579 +21652 +21725 +21798 +21871 +21944 +22017 +22090 +22163 +22236 +22309 +22382 +22455 +22456 +22459 +22464 +22471 +22480 +22491 +22504 +22519 +22536 +22555 +22576 +22599 +22624 +22651 +22680 +22711 +22744 +22779 +22816 +22855 +22896 +22939 +22984 +23031 +23080 +23131 +23184 +23239 +23296 +23355 +23416 +23479 +23544 +23611 +23680 +23751 +23824 +23897 +23970 +24043 +24116 +24189 +24262 +24335 +24408 +24481 +24554 +24627 +24700 +24773 +24846 +24919 +24992 +25065 +25138 +25211 +25284 +25357 +25430 +25503 +25576 +25649 +25722 +25795 +25868 +25941 +26014 +26087 +26160 +26233 +26306 +26379 +26452 +26453 +26456 +26461 +26468 +26477 +26488 +26501 +26516 +26533 +26552 +26573 +26596 +26621 +26648 +26677 +26708 +26741 +26776 +26813 +26852 +26893 +26936 +26981 +27028 +27077 +27128 +27181 +27236 +27293 +27352 +27413 +27476 +27541 +27608 +27677 +27748 +27821 +27894 +27967 +28040 +28113 +28186 +28259 +28332 +28405 +28478 +28551 +28624 +28697 +28770 +28843 +28916 +28989 +29062 +29135 +29208 +29281 +29354 +29427 +29500 +29573 +29646 +29719 +29792 +29865 +29938 +30011 +30084 +30157 +30230 +30303 +30376 +30449 +30450 +30453 +30458 +30465 +30474 +30485 +30498 +30513 +30530 +30549 +30570 +30593 +30618 +30645 +30674 +30705 +30738 +30773 +30810 +30849 +30890 +30933 +30978 +31025 +31074 +31125 +31178 +31233 +31290 +31349 +31410 +31473 +31538 +31605 +31674 +31745 +31818 +31891 +31964 +32037 +32110 +32183 +32256 +32329 +32402 +32475 +32548 +32621 +32694 +32767 +32840 +32913 +32986 +33059 +33132 +33205 +33278 +33351 +33424 +33497 +33570 +33643 +33716 +33789 +33862 +33935 +34008 +34081 +34154 +34227 +34300 +34373 +734 +0 +5 +6 +7 +22 +23 +24 +25 +26 +57 +58 +59 +60 +61 +62 +63 +116 +117 +118 +119 +120 +121 +122 +123 +124 +177 +178 +179 +180 +181 +182 +183 +184 +185 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +1038 +1039 +1040 +1041 +1042 +1043 +1044 +1045 +1046 +1047 +1048 +1049 +1050 +1051 +1052 +1053 +1054 +1055 +1056 +1057 +1058 +1059 +1060 +1061 +1062 +1507 +1508 +1509 +1510 +1511 +1512 +1513 +1514 +1515 +1516 +1517 +1518 +1519 +1520 +1521 +1522 +1523 +1524 +1525 +1526 +1527 +1528 +1529 +1530 +1531 +1976 +1977 +1978 +1979 +1980 +1981 +1982 +1983 +1984 +1985 +1986 +1987 +1988 +1989 +1990 +1991 +1992 +1993 +1994 +1995 +1996 +1997 +1998 +1999 +2000 +2445 +2446 +2447 +2448 +2449 +2450 +2451 +2452 +2453 +2454 +2455 +2456 +2457 +2458 +2459 +2460 +2461 +2462 +2463 +2464 +2465 +2466 +2467 +2468 +2469 +2914 +2915 +2916 +2917 +2918 +2919 +2920 +2921 +2922 +2923 +2924 +2925 +2926 +2927 +2928 +2929 +2930 +2931 +2932 +2933 +2934 +2935 +2936 +2937 +2938 +6419 +6420 +6421 +6422 +6423 +6424 +6425 +6426 +6427 +6428 +6429 +6430 +6431 +6432 +6433 +6434 +6435 +6436 +6437 +6438 +6439 +6440 +6441 +6442 +6443 +6444 +6445 +6446 +6447 +6448 +6449 +6450 +6451 +6452 +6453 +6454 +6455 +6456 +6457 +6458 +6459 +6460 +6461 +6462 +6463 +6464 +6465 +6466 +10391 +10392 +10393 +10394 +10395 +10396 +10397 +10398 +10399 +10400 +10401 +10402 +10403 +10404 +10405 +10406 +10407 +10408 +10409 +10410 +10411 +10412 +10413 +10414 +10415 +10416 +10417 +10418 +10419 +10420 +10421 +10422 +10423 +10424 +10425 +10426 +10427 +10428 +10429 +10430 +10431 +10432 +10433 +10434 +10435 +10436 +10437 +10438 +10439 +10440 +10441 +10442 +10443 +10444 +10445 +10446 +10447 +10448 +10449 +10450 +10451 +10452 +10453 +10454 +10455 +10456 +10457 +10458 +10459 +10460 +10461 +10462 +10463 +14388 +14389 +14390 +14391 +14392 +14393 +14394 +14395 +14396 +14397 +14398 +14399 +14400 +14401 +14402 +14403 +14404 +14405 +14406 +14407 +14408 +14409 +14410 +14411 +14412 +14413 +14414 +14415 +14416 +14417 +14418 +14419 +14420 +14421 +14422 +14423 +14424 +14425 +14426 +14427 +14428 +14429 +14430 +14431 +14432 +14433 +14434 +14435 +14436 +14437 +14438 +14439 +14440 +14441 +14442 +14443 +14444 +14445 +14446 +14447 +14448 +14449 +14450 +14451 +14452 +14453 +14454 +14455 +14456 +14457 +14458 +14459 +14460 +18385 +18386 +18387 +18388 +18389 +18390 +18391 +18392 +18393 +18394 +18395 +18396 +18397 +18398 +18399 +18400 +18401 +18402 +18403 +18404 +18405 +18406 +18407 +18408 +18409 +18410 +18411 +18412 +18413 +18414 +18415 +18416 +18417 +18418 +18419 +18420 +18421 +18422 +18423 +18424 +18425 +18426 +18427 +18428 +18429 +18430 +18431 +18432 +18433 +18434 +18435 +18436 +18437 +18438 +18439 +18440 +18441 +18442 +18443 +18444 +18445 +18446 +18447 +18448 +18449 +18450 +18451 +18452 +18453 +18454 +18455 +18456 +18457 +22382 +22383 +22384 +22385 +22386 +22387 +22388 +22389 +22390 +22391 +22392 +22393 +22394 +22395 +22396 +22397 +22398 +22399 +22400 +22401 +22402 +22403 +22404 +22405 +22406 +22407 +22408 +22409 +22410 +22411 +22412 +22413 +22414 +22415 +22416 +22417 +22418 +22419 +22420 +22421 +22422 +22423 +22424 +22425 +22426 +22427 +22428 +22429 +22430 +22431 +22432 +22433 +22434 +22435 +22436 +22437 +22438 +22439 +22440 +22441 +22442 +22443 +22444 +22445 +22446 +22447 +22448 +22449 +22450 +22451 +22452 +22453 +22454 +26379 +26380 +26381 +26382 +26383 +26384 +26385 +26386 +26387 +26388 +26389 +26390 +26391 +26392 +26393 +26394 +26395 +26396 +26397 +26398 +26399 +26400 +26401 +26402 +26403 +26404 +26405 +26406 +26407 +26408 +26409 +26410 +26411 +26412 +26413 +26414 +26415 +26416 +26417 +26418 +26419 +26420 +26421 +26422 +26423 +26424 +26425 +26426 +26427 +26428 +26429 +26430 +26431 +26432 +26433 +26434 +26435 +26436 +26437 +26438 +26439 +26440 +26441 +26442 +26443 +26444 +26445 +26446 +26447 +26448 +26449 +26450 +26451 +30376 +30377 +30378 +30379 +30380 +30381 +30382 +30383 +30384 +30385 +30386 +30387 +30388 +30389 +30390 +30391 +30392 +30393 +30394 +30395 +30396 +30397 +30398 +30399 +30400 +30401 +30402 +30403 +30404 +30405 +30406 +30407 +30408 +30409 +30410 +30411 +30412 +30413 +30414 +30415 +30416 +30417 +30418 +30419 +30420 +30421 +30422 +30423 +30424 +30425 +30426 +30427 +30428 +30429 +30430 +30431 +30432 +30433 +30434 +30435 +30436 +30437 +30438 +30439 +30440 +30441 +30442 +30443 +30444 +30445 +30446 +30447 +30448 +34373 +34374 +34375 +34376 +34377 +34378 +34379 +34380 +34381 +34382 +34383 +34384 +34385 +34386 +34387 +34388 +34389 +34390 +34391 +34392 +34393 +34394 +34395 +34396 +34397 +34398 +34399 +34400 +34401 +34402 +34403 +34404 +34405 +34406 +34407 +34408 +34409 +34410 +34411 +34412 +34413 +34414 +34415 +34416 +34417 +34418 +34419 +34420 +34421 +34422 +34423 +34424 +34425 +34426 +34427 +34428 +34429 +34430 +34431 +34432 +34433 +34434 +34435 +34436 +34437 +34438 +34439 +34440 +34441 +34442 +34443 +34444 +34445 +3997 +30449 +30450 +30451 +30452 +30453 +30454 +30455 +30456 +30457 +30458 +30459 +30460 +30461 +30462 +30463 +30464 +30465 +30466 +30467 +30468 +30469 +30470 +30471 +30472 +30473 +30474 +30475 +30476 +30477 +30478 +30479 +30480 +30481 +30482 +30483 +30484 +30485 +30486 +30487 +30488 +30489 +30490 +30491 +30492 +30493 +30494 +30495 +30496 +30497 +30498 +30499 +30500 +30501 +30502 +30503 +30504 +30505 +30506 +30507 +30508 +30509 +30510 +30511 +30512 +30513 +30514 +30515 +30516 +30517 +30518 +30519 +30520 +30521 +30522 +30523 +30524 +30525 +30526 +30527 +30528 +30529 +30530 +30531 +30532 +30533 +30534 +30535 +30536 +30537 +30538 +30539 +30540 +30541 +30542 +30543 +30544 +30545 +30546 +30547 +30548 +30549 +30550 +30551 +30552 +30553 +30554 +30555 +30556 +30557 +30558 +30559 +30560 +30561 +30562 +30563 +30564 +30565 +30566 +30567 +30568 +30569 +30570 +30571 +30572 +30573 +30574 +30575 +30576 +30577 +30578 +30579 +30580 +30581 +30582 +30583 +30584 +30585 +30586 +30587 +30588 +30589 +30590 +30591 +30592 +30593 +30594 +30595 +30596 +30597 +30598 +30599 +30600 +30601 +30602 +30603 +30604 +30605 +30606 +30607 +30608 +30609 +30610 +30611 +30612 +30613 +30614 +30615 +30616 +30617 +30618 +30619 +30620 +30621 +30622 +30623 +30624 +30625 +30626 +30627 +30628 +30629 +30630 +30631 +30632 +30633 +30634 +30635 +30636 +30637 +30638 +30639 +30640 +30641 +30642 +30643 +30644 +30645 +30646 +30647 +30648 +30649 +30650 +30651 +30652 +30653 +30654 +30655 +30656 +30657 +30658 +30659 +30660 +30661 +30662 +30663 +30664 +30665 +30666 +30667 +30668 +30669 +30670 +30671 +30672 +30673 +30674 +30675 +30676 +30677 +30678 +30679 +30680 +30681 +30682 +30683 +30684 +30685 +30686 +30687 +30688 +30689 +30690 +30691 +30692 +30693 +30694 +30695 +30696 +30697 +30698 +30699 +30700 +30701 +30702 +30703 +30704 +30705 +30706 +30707 +30708 +30709 +30710 +30711 +30712 +30713 +30714 +30715 +30716 +30717 +30718 +30719 +30720 +30721 +30722 +30723 +30724 +30725 +30726 +30727 +30728 +30729 +30730 +30731 +30732 +30733 +30734 +30735 +30736 +30737 +30738 +30739 +30740 +30741 +30742 +30743 +30744 +30745 +30746 +30747 +30748 +30749 +30750 +30751 +30752 +30753 +30754 +30755 +30756 +30757 +30758 +30759 +30760 +30761 +30762 +30763 +30764 +30765 +30766 +30767 +30768 +30769 +30770 +30771 +30772 +30773 +30774 +30775 +30776 +30777 +30778 +30779 +30780 +30781 +30782 +30783 +30784 +30785 +30786 +30787 +30788 +30789 +30790 +30791 +30792 +30793 +30794 +30795 +30796 +30797 +30798 +30799 +30800 +30801 +30802 +30803 +30804 +30805 +30806 +30807 +30808 +30809 +30810 +30811 +30812 +30813 +30814 +30815 +30816 +30817 +30818 +30819 +30820 +30821 +30822 +30823 +30824 +30825 +30826 +30827 +30828 +30829 +30830 +30831 +30832 +30833 +30834 +30835 +30836 +30837 +30838 +30839 +30840 +30841 +30842 +30843 +30844 +30845 +30846 +30847 +30848 +30849 +30850 +30851 +30852 +30853 +30854 +30855 +30856 +30857 +30858 +30859 +30860 +30861 +30862 +30863 +30864 +30865 +30866 +30867 +30868 +30869 +30870 +30871 +30872 +30873 +30874 +30875 +30876 +30877 +30878 +30879 +30880 +30881 +30882 +30883 +30884 +30885 +30886 +30887 +30888 +30889 +30890 +30891 +30892 +30893 +30894 +30895 +30896 +30897 +30898 +30899 +30900 +30901 +30902 +30903 +30904 +30905 +30906 +30907 +30908 +30909 +30910 +30911 +30912 +30913 +30914 +30915 +30916 +30917 +30918 +30919 +30920 +30921 +30922 +30923 +30924 +30925 +30926 +30927 +30928 +30929 +30930 +30931 +30932 +30933 +30934 +30935 +30936 +30937 +30938 +30939 +30940 +30941 +30942 +30943 +30944 +30945 +30946 +30947 +30948 +30949 +30950 +30951 +30952 +30953 +30954 +30955 +30956 +30957 +30958 +30959 +30960 +30961 +30962 +30963 +30964 +30965 +30966 +30967 +30968 +30969 +30970 +30971 +30972 +30973 +30974 +30975 +30976 +30977 +30978 +30979 +30980 +30981 +30982 +30983 +30984 +30985 +30986 +30987 +30988 +30989 +30990 +30991 +30992 +30993 +30994 +30995 +30996 +30997 +30998 +30999 +31000 +31001 +31002 +31003 +31004 +31005 +31006 +31007 +31008 +31009 +31010 +31011 +31012 +31013 +31014 +31015 +31016 +31017 +31018 +31019 +31020 +31021 +31022 +31023 +31024 +31025 +31026 +31027 +31028 +31029 +31030 +31031 +31032 +31033 +31034 +31035 +31036 +31037 +31038 +31039 +31040 +31041 +31042 +31043 +31044 +31045 +31046 +31047 +31048 +31049 +31050 +31051 +31052 +31053 +31054 +31055 +31056 +31057 +31058 +31059 +31060 +31061 +31062 +31063 +31064 +31065 +31066 +31067 +31068 +31069 +31070 +31071 +31072 +31073 +31074 +31075 +31076 +31077 +31078 +31079 +31080 +31081 +31082 +31083 +31084 +31085 +31086 +31087 +31088 +31089 +31090 +31091 +31092 +31093 +31094 +31095 +31096 +31097 +31098 +31099 +31100 +31101 +31102 +31103 +31104 +31105 +31106 +31107 +31108 +31109 +31110 +31111 +31112 +31113 +31114 +31115 +31116 +31117 +31118 +31119 +31120 +31121 +31122 +31123 +31124 +31125 +31126 +31127 +31128 +31129 +31130 +31131 +31132 +31133 +31134 +31135 +31136 +31137 +31138 +31139 +31140 +31141 +31142 +31143 +31144 +31145 +31146 +31147 +31148 +31149 +31150 +31151 +31152 +31153 +31154 +31155 +31156 +31157 +31158 +31159 +31160 +31161 +31162 +31163 +31164 +31165 +31166 +31167 +31168 +31169 +31170 +31171 +31172 +31173 +31174 +31175 +31176 +31177 +31178 +31179 +31180 +31181 +31182 +31183 +31184 +31185 +31186 +31187 +31188 +31189 +31190 +31191 +31192 +31193 +31194 +31195 +31196 +31197 +31198 +31199 +31200 +31201 +31202 +31203 +31204 +31205 +31206 +31207 +31208 +31209 +31210 +31211 +31212 +31213 +31214 +31215 +31216 +31217 +31218 +31219 +31220 +31221 +31222 +31223 +31224 +31225 +31226 +31227 +31228 +31229 +31230 +31231 +31232 +31233 +31234 +31235 +31236 +31237 +31238 +31239 +31240 +31241 +31242 +31243 +31244 +31245 +31246 +31247 +31248 +31249 +31250 +31251 +31252 +31253 +31254 +31255 +31256 +31257 +31258 +31259 +31260 +31261 +31262 +31263 +31264 +31265 +31266 +31267 +31268 +31269 +31270 +31271 +31272 +31273 +31274 +31275 +31276 +31277 +31278 +31279 +31280 +31281 +31282 +31283 +31284 +31285 +31286 +31287 +31288 +31289 +31290 +31291 +31292 +31293 +31294 +31295 +31296 +31297 +31298 +31299 +31300 +31301 +31302 +31303 +31304 +31305 +31306 +31307 +31308 +31309 +31310 +31311 +31312 +31313 +31314 +31315 +31316 +31317 +31318 +31319 +31320 +31321 +31322 +31323 +31324 +31325 +31326 +31327 +31328 +31329 +31330 +31331 +31332 +31333 +31334 +31335 +31336 +31337 +31338 +31339 +31340 +31341 +31342 +31343 +31344 +31345 +31346 +31347 +31348 +31349 +31350 +31351 +31352 +31353 +31354 +31355 +31356 +31357 +31358 +31359 +31360 +31361 +31362 +31363 +31364 +31365 +31366 +31367 +31368 +31369 +31370 +31371 +31372 +31373 +31374 +31375 +31376 +31377 +31378 +31379 +31380 +31381 +31382 +31383 +31384 +31385 +31386 +31387 +31388 +31389 +31390 +31391 +31392 +31393 +31394 +31395 +31396 +31397 +31398 +31399 +31400 +31401 +31402 +31403 +31404 +31405 +31406 +31407 +31408 +31409 +31410 +31411 +31412 +31413 +31414 +31415 +31416 +31417 +31418 +31419 +31420 +31421 +31422 +31423 +31424 +31425 +31426 +31427 +31428 +31429 +31430 +31431 +31432 +31433 +31434 +31435 +31436 +31437 +31438 +31439 +31440 +31441 +31442 +31443 +31444 +31445 +31446 +31447 +31448 +31449 +31450 +31451 +31452 +31453 +31454 +31455 +31456 +31457 +31458 +31459 +31460 +31461 +31462 +31463 +31464 +31465 +31466 +31467 +31468 +31469 +31470 +31471 +31472 +31473 +31474 +31475 +31476 +31477 +31478 +31479 +31480 +31481 +31482 +31483 +31484 +31485 +31486 +31487 +31488 +31489 +31490 +31491 +31492 +31493 +31494 +31495 +31496 +31497 +31498 +31499 +31500 +31501 +31502 +31503 +31504 +31505 +31506 +31507 +31508 +31509 +31510 +31511 +31512 +31513 +31514 +31515 +31516 +31517 +31518 +31519 +31520 +31521 +31522 +31523 +31524 +31525 +31526 +31527 +31528 +31529 +31530 +31531 +31532 +31533 +31534 +31535 +31536 +31537 +31538 +31539 +31540 +31541 +31542 +31543 +31544 +31545 +31546 +31547 +31548 +31549 +31550 +31551 +31552 +31553 +31554 +31555 +31556 +31557 +31558 +31559 +31560 +31561 +31562 +31563 +31564 +31565 +31566 +31567 +31568 +31569 +31570 +31571 +31572 +31573 +31574 +31575 +31576 +31577 +31578 +31579 +31580 +31581 +31582 +31583 +31584 +31585 +31586 +31587 +31588 +31589 +31590 +31591 +31592 +31593 +31594 +31595 +31596 +31597 +31598 +31599 +31600 +31601 +31602 +31603 +31604 +31605 +31606 +31607 +31608 +31609 +31610 +31611 +31612 +31613 +31614 +31615 +31616 +31617 +31618 +31619 +31620 +31621 +31622 +31623 +31624 +31625 +31626 +31627 +31628 +31629 +31630 +31631 +31632 +31633 +31634 +31635 +31636 +31637 +31638 +31639 +31640 +31641 +31642 +31643 +31644 +31645 +31646 +31647 +31648 +31649 +31650 +31651 +31652 +31653 +31654 +31655 +31656 +31657 +31658 +31659 +31660 +31661 +31662 +31663 +31664 +31665 +31666 +31667 +31668 +31669 +31670 +31671 +31672 +31673 +31674 +31675 +31676 +31677 +31678 +31679 +31680 +31681 +31682 +31683 +31684 +31685 +31686 +31687 +31688 +31689 +31690 +31691 +31692 +31693 +31694 +31695 +31696 +31697 +31698 +31699 +31700 +31701 +31702 +31703 +31704 +31705 +31706 +31707 +31708 +31709 +31710 +31711 +31712 +31713 +31714 +31715 +31716 +31717 +31718 +31719 +31720 +31721 +31722 +31723 +31724 +31725 +31726 +31727 +31728 +31729 +31730 +31731 +31732 +31733 +31734 +31735 +31736 +31737 +31738 +31739 +31740 +31741 +31742 +31743 +31744 +31745 +31746 +31747 +31748 +31749 +31750 +31751 +31752 +31753 +31754 +31755 +31756 +31757 +31758 +31759 +31760 +31761 +31762 +31763 +31764 +31765 +31766 +31767 +31768 +31769 +31770 +31771 +31772 +31773 +31774 +31775 +31776 +31777 +31778 +31779 +31780 +31781 +31782 +31783 +31784 +31785 +31786 +31787 +31788 +31789 +31790 +31791 +31792 +31793 +31794 +31795 +31796 +31797 +31798 +31799 +31800 +31801 +31802 +31803 +31804 +31805 +31806 +31807 +31808 +31809 +31810 +31811 +31812 +31813 +31814 +31815 +31816 +31817 +31818 +31819 +31820 +31821 +31822 +31823 +31824 +31825 +31826 +31827 +31828 +31829 +31830 +31831 +31832 +31833 +31834 +31835 +31836 +31837 +31838 +31839 +31840 +31841 +31842 +31843 +31844 +31845 +31846 +31847 +31848 +31849 +31850 +31851 +31852 +31853 +31854 +31855 +31856 +31857 +31858 +31859 +31860 +31861 +31862 +31863 +31864 +31865 +31866 +31867 +31868 +31869 +31870 +31871 +31872 +31873 +31874 +31875 +31876 +31877 +31878 +31879 +31880 +31881 +31882 +31883 +31884 +31885 +31886 +31887 +31888 +31889 +31890 +31891 +31892 +31893 +31894 +31895 +31896 +31897 +31898 +31899 +31900 +31901 +31902 +31903 +31904 +31905 +31906 +31907 +31908 +31909 +31910 +31911 +31912 +31913 +31914 +31915 +31916 +31917 +31918 +31919 +31920 +31921 +31922 +31923 +31924 +31925 +31926 +31927 +31928 +31929 +31930 +31931 +31932 +31933 +31934 +31935 +31936 +31937 +31938 +31939 +31940 +31941 +31942 +31943 +31944 +31945 +31946 +31947 +31948 +31949 +31950 +31951 +31952 +31953 +31954 +31955 +31956 +31957 +31958 +31959 +31960 +31961 +31962 +31963 +31964 +31965 +31966 +31967 +31968 +31969 +31970 +31971 +31972 +31973 +31974 +31975 +31976 +31977 +31978 +31979 +31980 +31981 +31982 +31983 +31984 +31985 +31986 +31987 +31988 +31989 +31990 +31991 +31992 +31993 +31994 +31995 +31996 +31997 +31998 +31999 +32000 +32001 +32002 +32003 +32004 +32005 +32006 +32007 +32008 +32009 +32010 +32011 +32012 +32013 +32014 +32015 +32016 +32017 +32018 +32019 +32020 +32021 +32022 +32023 +32024 +32025 +32026 +32027 +32028 +32029 +32030 +32031 +32032 +32033 +32034 +32035 +32036 +32037 +32038 +32039 +32040 +32041 +32042 +32043 +32044 +32045 +32046 +32047 +32048 +32049 +32050 +32051 +32052 +32053 +32054 +32055 +32056 +32057 +32058 +32059 +32060 +32061 +32062 +32063 +32064 +32065 +32066 +32067 +32068 +32069 +32070 +32071 +32072 +32073 +32074 +32075 +32076 +32077 +32078 +32079 +32080 +32081 +32082 +32083 +32084 +32085 +32086 +32087 +32088 +32089 +32090 +32091 +32092 +32093 +32094 +32095 +32096 +32097 +32098 +32099 +32100 +32101 +32102 +32103 +32104 +32105 +32106 +32107 +32108 +32109 +32110 +32111 +32112 +32113 +32114 +32115 +32116 +32117 +32118 +32119 +32120 +32121 +32122 +32123 +32124 +32125 +32126 +32127 +32128 +32129 +32130 +32131 +32132 +32133 +32134 +32135 +32136 +32137 +32138 +32139 +32140 +32141 +32142 +32143 +32144 +32145 +32146 +32147 +32148 +32149 +32150 +32151 +32152 +32153 +32154 +32155 +32156 +32157 +32158 +32159 +32160 +32161 +32162 +32163 +32164 +32165 +32166 +32167 +32168 +32169 +32170 +32171 +32172 +32173 +32174 +32175 +32176 +32177 +32178 +32179 +32180 +32181 +32182 +32183 +32184 +32185 +32186 +32187 +32188 +32189 +32190 +32191 +32192 +32193 +32194 +32195 +32196 +32197 +32198 +32199 +32200 +32201 +32202 +32203 +32204 +32205 +32206 +32207 +32208 +32209 +32210 +32211 +32212 +32213 +32214 +32215 +32216 +32217 +32218 +32219 +32220 +32221 +32222 +32223 +32224 +32225 +32226 +32227 +32228 +32229 +32230 +32231 +32232 +32233 +32234 +32235 +32236 +32237 +32238 +32239 +32240 +32241 +32242 +32243 +32244 +32245 +32246 +32247 +32248 +32249 +32250 +32251 +32252 +32253 +32254 +32255 +32256 +32257 +32258 +32259 +32260 +32261 +32262 +32263 +32264 +32265 +32266 +32267 +32268 +32269 +32270 +32271 +32272 +32273 +32274 +32275 +32276 +32277 +32278 +32279 +32280 +32281 +32282 +32283 +32284 +32285 +32286 +32287 +32288 +32289 +32290 +32291 +32292 +32293 +32294 +32295 +32296 +32297 +32298 +32299 +32300 +32301 +32302 +32303 +32304 +32305 +32306 +32307 +32308 +32309 +32310 +32311 +32312 +32313 +32314 +32315 +32316 +32317 +32318 +32319 +32320 +32321 +32322 +32323 +32324 +32325 +32326 +32327 +32328 +32329 +32330 +32331 +32332 +32333 +32334 +32335 +32336 +32337 +32338 +32339 +32340 +32341 +32342 +32343 +32344 +32345 +32346 +32347 +32348 +32349 +32350 +32351 +32352 +32353 +32354 +32355 +32356 +32357 +32358 +32359 +32360 +32361 +32362 +32363 +32364 +32365 +32366 +32367 +32368 +32369 +32370 +32371 +32372 +32373 +32374 +32375 +32376 +32377 +32378 +32379 +32380 +32381 +32382 +32383 +32384 +32385 +32386 +32387 +32388 +32389 +32390 +32391 +32392 +32393 +32394 +32395 +32396 +32397 +32398 +32399 +32400 +32401 +32402 +32403 +32404 +32405 +32406 +32407 +32408 +32409 +32410 +32411 +32412 +32413 +32414 +32415 +32416 +32417 +32418 +32419 +32420 +32421 +32422 +32423 +32424 +32425 +32426 +32427 +32428 +32429 +32430 +32431 +32432 +32433 +32434 +32435 +32436 +32437 +32438 +32439 +32440 +32441 +32442 +32443 +32444 +32445 +32446 +32447 +32448 +32449 +32450 +32451 +32452 +32453 +32454 +32455 +32456 +32457 +32458 +32459 +32460 +32461 +32462 +32463 +32464 +32465 +32466 +32467 +32468 +32469 +32470 +32471 +32472 +32473 +32474 +32475 +32476 +32477 +32478 +32479 +32480 +32481 +32482 +32483 +32484 +32485 +32486 +32487 +32488 +32489 +32490 +32491 +32492 +32493 +32494 +32495 +32496 +32497 +32498 +32499 +32500 +32501 +32502 +32503 +32504 +32505 +32506 +32507 +32508 +32509 +32510 +32511 +32512 +32513 +32514 +32515 +32516 +32517 +32518 +32519 +32520 +32521 +32522 +32523 +32524 +32525 +32526 +32527 +32528 +32529 +32530 +32531 +32532 +32533 +32534 +32535 +32536 +32537 +32538 +32539 +32540 +32541 +32542 +32543 +32544 +32545 +32546 +32547 +32548 +32549 +32550 +32551 +32552 +32553 +32554 +32555 +32556 +32557 +32558 +32559 +32560 +32561 +32562 +32563 +32564 +32565 +32566 +32567 +32568 +32569 +32570 +32571 +32572 +32573 +32574 +32575 +32576 +32577 +32578 +32579 +32580 +32581 +32582 +32583 +32584 +32585 +32586 +32587 +32588 +32589 +32590 +32591 +32592 +32593 +32594 +32595 +32596 +32597 +32598 +32599 +32600 +32601 +32602 +32603 +32604 +32605 +32606 +32607 +32608 +32609 +32610 +32611 +32612 +32613 +32614 +32615 +32616 +32617 +32618 +32619 +32620 +32621 +32622 +32623 +32624 +32625 +32626 +32627 +32628 +32629 +32630 +32631 +32632 +32633 +32634 +32635 +32636 +32637 +32638 +32639 +32640 +32641 +32642 +32643 +32644 +32645 +32646 +32647 +32648 +32649 +32650 +32651 +32652 +32653 +32654 +32655 +32656 +32657 +32658 +32659 +32660 +32661 +32662 +32663 +32664 +32665 +32666 +32667 +32668 +32669 +32670 +32671 +32672 +32673 +32674 +32675 +32676 +32677 +32678 +32679 +32680 +32681 +32682 +32683 +32684 +32685 +32686 +32687 +32688 +32689 +32690 +32691 +32692 +32693 +32694 +32695 +32696 +32697 +32698 +32699 +32700 +32701 +32702 +32703 +32704 +32705 +32706 +32707 +32708 +32709 +32710 +32711 +32712 +32713 +32714 +32715 +32716 +32717 +32718 +32719 +32720 +32721 +32722 +32723 +32724 +32725 +32726 +32727 +32728 +32729 +32730 +32731 +32732 +32733 +32734 +32735 +32736 +32737 +32738 +32739 +32740 +32741 +32742 +32743 +32744 +32745 +32746 +32747 +32748 +32749 +32750 +32751 +32752 +32753 +32754 +32755 +32756 +32757 +32758 +32759 +32760 +32761 +32762 +32763 +32764 +32765 +32766 +32767 +32768 +32769 +32770 +32771 +32772 +32773 +32774 +32775 +32776 +32777 +32778 +32779 +32780 +32781 +32782 +32783 +32784 +32785 +32786 +32787 +32788 +32789 +32790 +32791 +32792 +32793 +32794 +32795 +32796 +32797 +32798 +32799 +32800 +32801 +32802 +32803 +32804 +32805 +32806 +32807 +32808 +32809 +32810 +32811 +32812 +32813 +32814 +32815 +32816 +32817 +32818 +32819 +32820 +32821 +32822 +32823 +32824 +32825 +32826 +32827 +32828 +32829 +32830 +32831 +32832 +32833 +32834 +32835 +32836 +32837 +32838 +32839 +32840 +32841 +32842 +32843 +32844 +32845 +32846 +32847 +32848 +32849 +32850 +32851 +32852 +32853 +32854 +32855 +32856 +32857 +32858 +32859 +32860 +32861 +32862 +32863 +32864 +32865 +32866 +32867 +32868 +32869 +32870 +32871 +32872 +32873 +32874 +32875 +32876 +32877 +32878 +32879 +32880 +32881 +32882 +32883 +32884 +32885 +32886 +32887 +32888 +32889 +32890 +32891 +32892 +32893 +32894 +32895 +32896 +32897 +32898 +32899 +32900 +32901 +32902 +32903 +32904 +32905 +32906 +32907 +32908 +32909 +32910 +32911 +32912 +32913 +32914 +32915 +32916 +32917 +32918 +32919 +32920 +32921 +32922 +32923 +32924 +32925 +32926 +32927 +32928 +32929 +32930 +32931 +32932 +32933 +32934 +32935 +32936 +32937 +32938 +32939 +32940 +32941 +32942 +32943 +32944 +32945 +32946 +32947 +32948 +32949 +32950 +32951 +32952 +32953 +32954 +32955 +32956 +32957 +32958 +32959 +32960 +32961 +32962 +32963 +32964 +32965 +32966 +32967 +32968 +32969 +32970 +32971 +32972 +32973 +32974 +32975 +32976 +32977 +32978 +32979 +32980 +32981 +32982 +32983 +32984 +32985 +32986 +32987 +32988 +32989 +32990 +32991 +32992 +32993 +32994 +32995 +32996 +32997 +32998 +32999 +33000 +33001 +33002 +33003 +33004 +33005 +33006 +33007 +33008 +33009 +33010 +33011 +33012 +33013 +33014 +33015 +33016 +33017 +33018 +33019 +33020 +33021 +33022 +33023 +33024 +33025 +33026 +33027 +33028 +33029 +33030 +33031 +33032 +33033 +33034 +33035 +33036 +33037 +33038 +33039 +33040 +33041 +33042 +33043 +33044 +33045 +33046 +33047 +33048 +33049 +33050 +33051 +33052 +33053 +33054 +33055 +33056 +33057 +33058 +33059 +33060 +33061 +33062 +33063 +33064 +33065 +33066 +33067 +33068 +33069 +33070 +33071 +33072 +33073 +33074 +33075 +33076 +33077 +33078 +33079 +33080 +33081 +33082 +33083 +33084 +33085 +33086 +33087 +33088 +33089 +33090 +33091 +33092 +33093 +33094 +33095 +33096 +33097 +33098 +33099 +33100 +33101 +33102 +33103 +33104 +33105 +33106 +33107 +33108 +33109 +33110 +33111 +33112 +33113 +33114 +33115 +33116 +33117 +33118 +33119 +33120 +33121 +33122 +33123 +33124 +33125 +33126 +33127 +33128 +33129 +33130 +33131 +33132 +33133 +33134 +33135 +33136 +33137 +33138 +33139 +33140 +33141 +33142 +33143 +33144 +33145 +33146 +33147 +33148 +33149 +33150 +33151 +33152 +33153 +33154 +33155 +33156 +33157 +33158 +33159 +33160 +33161 +33162 +33163 +33164 +33165 +33166 +33167 +33168 +33169 +33170 +33171 +33172 +33173 +33174 +33175 +33176 +33177 +33178 +33179 +33180 +33181 +33182 +33183 +33184 +33185 +33186 +33187 +33188 +33189 +33190 +33191 +33192 +33193 +33194 +33195 +33196 +33197 +33198 +33199 +33200 +33201 +33202 +33203 +33204 +33205 +33206 +33207 +33208 +33209 +33210 +33211 +33212 +33213 +33214 +33215 +33216 +33217 +33218 +33219 +33220 +33221 +33222 +33223 +33224 +33225 +33226 +33227 +33228 +33229 +33230 +33231 +33232 +33233 +33234 +33235 +33236 +33237 +33238 +33239 +33240 +33241 +33242 +33243 +33244 +33245 +33246 +33247 +33248 +33249 +33250 +33251 +33252 +33253 +33254 +33255 +33256 +33257 +33258 +33259 +33260 +33261 +33262 +33263 +33264 +33265 +33266 +33267 +33268 +33269 +33270 +33271 +33272 +33273 +33274 +33275 +33276 +33277 +33278 +33279 +33280 +33281 +33282 +33283 +33284 +33285 +33286 +33287 +33288 +33289 +33290 +33291 +33292 +33293 +33294 +33295 +33296 +33297 +33298 +33299 +33300 +33301 +33302 +33303 +33304 +33305 +33306 +33307 +33308 +33309 +33310 +33311 +33312 +33313 +33314 +33315 +33316 +33317 +33318 +33319 +33320 +33321 +33322 +33323 +33324 +33325 +33326 +33327 +33328 +33329 +33330 +33331 +33332 +33333 +33334 +33335 +33336 +33337 +33338 +33339 +33340 +33341 +33342 +33343 +33344 +33345 +33346 +33347 +33348 +33349 +33350 +33351 +33352 +33353 +33354 +33355 +33356 +33357 +33358 +33359 +33360 +33361 +33362 +33363 +33364 +33365 +33366 +33367 +33368 +33369 +33370 +33371 +33372 +33373 +33374 +33375 +33376 +33377 +33378 +33379 +33380 +33381 +33382 +33383 +33384 +33385 +33386 +33387 +33388 +33389 +33390 +33391 +33392 +33393 +33394 +33395 +33396 +33397 +33398 +33399 +33400 +33401 +33402 +33403 +33404 +33405 +33406 +33407 +33408 +33409 +33410 +33411 +33412 +33413 +33414 +33415 +33416 +33417 +33418 +33419 +33420 +33421 +33422 +33423 +33424 +33425 +33426 +33427 +33428 +33429 +33430 +33431 +33432 +33433 +33434 +33435 +33436 +33437 +33438 +33439 +33440 +33441 +33442 +33443 +33444 +33445 +33446 +33447 +33448 +33449 +33450 +33451 +33452 +33453 +33454 +33455 +33456 +33457 +33458 +33459 +33460 +33461 +33462 +33463 +33464 +33465 +33466 +33467 +33468 +33469 +33470 +33471 +33472 +33473 +33474 +33475 +33476 +33477 +33478 +33479 +33480 +33481 +33482 +33483 +33484 +33485 +33486 +33487 +33488 +33489 +33490 +33491 +33492 +33493 +33494 +33495 +33496 +33497 +33498 +33499 +33500 +33501 +33502 +33503 +33504 +33505 +33506 +33507 +33508 +33509 +33510 +33511 +33512 +33513 +33514 +33515 +33516 +33517 +33518 +33519 +33520 +33521 +33522 +33523 +33524 +33525 +33526 +33527 +33528 +33529 +33530 +33531 +33532 +33533 +33534 +33535 +33536 +33537 +33538 +33539 +33540 +33541 +33542 +33543 +33544 +33545 +33546 +33547 +33548 +33549 +33550 +33551 +33552 +33553 +33554 +33555 +33556 +33557 +33558 +33559 +33560 +33561 +33562 +33563 +33564 +33565 +33566 +33567 +33568 +33569 +33570 +33571 +33572 +33573 +33574 +33575 +33576 +33577 +33578 +33579 +33580 +33581 +33582 +33583 +33584 +33585 +33586 +33587 +33588 +33589 +33590 +33591 +33592 +33593 +33594 +33595 +33596 +33597 +33598 +33599 +33600 +33601 +33602 +33603 +33604 +33605 +33606 +33607 +33608 +33609 +33610 +33611 +33612 +33613 +33614 +33615 +33616 +33617 +33618 +33619 +33620 +33621 +33622 +33623 +33624 +33625 +33626 +33627 +33628 +33629 +33630 +33631 +33632 +33633 +33634 +33635 +33636 +33637 +33638 +33639 +33640 +33641 +33642 +33643 +33644 +33645 +33646 +33647 +33648 +33649 +33650 +33651 +33652 +33653 +33654 +33655 +33656 +33657 +33658 +33659 +33660 +33661 +33662 +33663 +33664 +33665 +33666 +33667 +33668 +33669 +33670 +33671 +33672 +33673 +33674 +33675 +33676 +33677 +33678 +33679 +33680 +33681 +33682 +33683 +33684 +33685 +33686 +33687 +33688 +33689 +33690 +33691 +33692 +33693 +33694 +33695 +33696 +33697 +33698 +33699 +33700 +33701 +33702 +33703 +33704 +33705 +33706 +33707 +33708 +33709 +33710 +33711 +33712 +33713 +33714 +33715 +33716 +33717 +33718 +33719 +33720 +33721 +33722 +33723 +33724 +33725 +33726 +33727 +33728 +33729 +33730 +33731 +33732 +33733 +33734 +33735 +33736 +33737 +33738 +33739 +33740 +33741 +33742 +33743 +33744 +33745 +33746 +33747 +33748 +33749 +33750 +33751 +33752 +33753 +33754 +33755 +33756 +33757 +33758 +33759 +33760 +33761 +33762 +33763 +33764 +33765 +33766 +33767 +33768 +33769 +33770 +33771 +33772 +33773 +33774 +33775 +33776 +33777 +33778 +33779 +33780 +33781 +33782 +33783 +33784 +33785 +33786 +33787 +33788 +33789 +33790 +33791 +33792 +33793 +33794 +33795 +33796 +33797 +33798 +33799 +33800 +33801 +33802 +33803 +33804 +33805 +33806 +33807 +33808 +33809 +33810 +33811 +33812 +33813 +33814 +33815 +33816 +33817 +33818 +33819 +33820 +33821 +33822 +33823 +33824 +33825 +33826 +33827 +33828 +33829 +33830 +33831 +33832 +33833 +33834 +33835 +33836 +33837 +33838 +33839 +33840 +33841 +33842 +33843 +33844 +33845 +33846 +33847 +33848 +33849 +33850 +33851 +33852 +33853 +33854 +33855 +33856 +33857 +33858 +33859 +33860 +33861 +33862 +33863 +33864 +33865 +33866 +33867 +33868 +33869 +33870 +33871 +33872 +33873 +33874 +33875 +33876 +33877 +33878 +33879 +33880 +33881 +33882 +33883 +33884 +33885 +33886 +33887 +33888 +33889 +33890 +33891 +33892 +33893 +33894 +33895 +33896 +33897 +33898 +33899 +33900 +33901 +33902 +33903 +33904 +33905 +33906 +33907 +33908 +33909 +33910 +33911 +33912 +33913 +33914 +33915 +33916 +33917 +33918 +33919 +33920 +33921 +33922 +33923 +33924 +33925 +33926 +33927 +33928 +33929 +33930 +33931 +33932 +33933 +33934 +33935 +33936 +33937 +33938 +33939 +33940 +33941 +33942 +33943 +33944 +33945 +33946 +33947 +33948 +33949 +33950 +33951 +33952 +33953 +33954 +33955 +33956 +33957 +33958 +33959 +33960 +33961 +33962 +33963 +33964 +33965 +33966 +33967 +33968 +33969 +33970 +33971 +33972 +33973 +33974 +33975 +33976 +33977 +33978 +33979 +33980 +33981 +33982 +33983 +33984 +33985 +33986 +33987 +33988 +33989 +33990 +33991 +33992 +33993 +33994 +33995 +33996 +33997 +33998 +33999 +34000 +34001 +34002 +34003 +34004 +34005 +34006 +34007 +34008 +34009 +34010 +34011 +34012 +34013 +34014 +34015 +34016 +34017 +34018 +34019 +34020 +34021 +34022 +34023 +34024 +34025 +34026 +34027 +34028 +34029 +34030 +34031 +34032 +34033 +34034 +34035 +34036 +34037 +34038 +34039 +34040 +34041 +34042 +34043 +34044 +34045 +34046 +34047 +34048 +34049 +34050 +34051 +34052 +34053 +34054 +34055 +34056 +34057 +34058 +34059 +34060 +34061 +34062 +34063 +34064 +34065 +34066 +34067 +34068 +34069 +34070 +34071 +34072 +34073 +34074 +34075 +34076 +34077 +34078 +34079 +34080 +34081 +34082 +34083 +34084 +34085 +34086 +34087 +34088 +34089 +34090 +34091 +34092 +34093 +34094 +34095 +34096 +34097 +34098 +34099 +34100 +34101 +34102 +34103 +34104 +34105 +34106 +34107 +34108 +34109 +34110 +34111 +34112 +34113 +34114 +34115 +34116 +34117 +34118 +34119 +34120 +34121 +34122 +34123 +34124 +34125 +34126 +34127 +34128 +34129 +34130 +34131 +34132 +34133 +34134 +34135 +34136 +34137 +34138 +34139 +34140 +34141 +34142 +34143 +34144 +34145 +34146 +34147 +34148 +34149 +34150 +34151 +34152 +34153 +34154 +34155 +34156 +34157 +34158 +34159 +34160 +34161 +34162 +34163 +34164 +34165 +34166 +34167 +34168 +34169 +34170 +34171 +34172 +34173 +34174 +34175 +34176 +34177 +34178 +34179 +34180 +34181 +34182 +34183 +34184 +34185 +34186 +34187 +34188 +34189 +34190 +34191 +34192 +34193 +34194 +34195 +34196 +34197 +34198 +34199 +34200 +34201 +34202 +34203 +34204 +34205 +34206 +34207 +34208 +34209 +34210 +34211 +34212 +34213 +34214 +34215 +34216 +34217 +34218 +34219 +34220 +34221 +34222 +34223 +34224 +34225 +34226 +34227 +34228 +34229 +34230 +34231 +34232 +34233 +34234 +34235 +34236 +34237 +34238 +34239 +34240 +34241 +34242 +34243 +34244 +34245 +34246 +34247 +34248 +34249 +34250 +34251 +34252 +34253 +34254 +34255 +34256 +34257 +34258 +34259 +34260 +34261 +34262 +34263 +34264 +34265 +34266 +34267 +34268 +34269 +34270 +34271 +34272 +34273 +34274 +34275 +34276 +34277 +34278 +34279 +34280 +34281 +34282 +34283 +34284 +34285 +34286 +34287 +34288 +34289 +34290 +34291 +34292 +34293 +34294 +34295 +34296 +34297 +34298 +34299 +34300 +34301 +34302 +34303 +34304 +34305 +34306 +34307 +34308 +34309 +34310 +34311 +34312 +34313 +34314 +34315 +34316 +34317 +34318 +34319 +34320 +34321 +34322 +34323 +34324 +34325 +34326 +34327 +34328 +34329 +34330 +34331 +34332 +34333 +34334 +34335 +34336 +34337 +34338 +34339 +34340 +34341 +34342 +34343 +34344 +34345 +34346 +34347 +34348 +34349 +34350 +34351 +34352 +34353 +34354 +34355 +34356 +34357 +34358 +34359 +34360 +34361 +34362 +34363 +34364 +34365 +34366 +34367 +34368 +34369 +34370 +34371 +34372 +34373 +34374 +34375 +34376 +34377 +34378 +34379 +34380 +34381 +34382 +34383 +34384 +34385 +34386 +34387 +34388 +34389 +34390 +34391 +34392 +34393 +34394 +34395 +34396 +34397 +34398 +34399 +34400 +34401 +34402 +34403 +34404 +34405 +34406 +34407 +34408 +34409 +34410 +34411 +34412 +34413 +34414 +34415 +34416 +34417 +34418 +34419 +34420 +34421 +34422 +34423 +34424 +34425 +34426 +34427 +34428 +34429 +34430 +34431 +34432 +34433 +34434 +34435 +34436 +34437 +34438 +34439 +34440 +34441 +34442 +34443 +34444 +34445 diff --git a/benchmarks/cuda/LULESH/sm_utils.inl b/benchmarks/cuda/LULESH/sm_utils.inl new file mode 100755 index 0000000..c79b81d --- /dev/null +++ b/benchmarks/cuda/LULESH/sm_utils.inl @@ -0,0 +1,414 @@ + +/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +#if (defined(_MSC_VER) && defined(_WIN64)) || defined(__LP64__) +#define __PTR "l" +#else +#define __PTR "r" +#endif + +#if __CUDA_ARCH__ >= 700 +#define FULL_MASK 0xffffffff +#endif + +namespace utils { + +// ==================================================================================================================== +// Atomics. +// ==================================================================================================================== + +static __device__ __forceinline__ void atomic_add( float *address, float value ) +{ + atomicAdd( address, value ); +} + +static __device__ __forceinline__ void atomic_add( double *address, double value ) +{ + unsigned long long *address_as_ull = (unsigned long long *) address; + unsigned long long old = __double_as_longlong( address[0] ), assumed; + do { + assumed = old; + old = atomicCAS( address_as_ull, assumed, __double_as_longlong( value + __longlong_as_double( assumed ) ) ); + } + while( assumed != old ); +} + +// ==================================================================================================================== +// Bit tools. +// ==================================================================================================================== + +static __device__ __forceinline__ int bfe( int src, int num_bits ) +{ + unsigned mask; + asm( "bfe.u32 %0, %1, 0, %2;" : "=r"(mask) : "r"(src), "r"(num_bits) ); + return mask; +} + +static __device__ __forceinline__ int bfind( int src ) +{ + int msb; + asm( "bfind.u32 %0, %1;" : "=r"(msb) : "r"(src) ); + return msb; +} + +static __device__ __forceinline__ int bfind( unsigned long long src ) +{ + int msb; + asm( "bfind.u64 %0, %1;" : "=r"(msb) : "l"(src) ); + return msb; +} + +static __device__ __forceinline__ unsigned long long brev( unsigned long long src ) +{ + unsigned long long rev; + asm( "brev.b64 %0, %1;" : "=l"(rev) : "l"(src) ); + return rev; +} + +// ==================================================================================================================== +// Warp tools. +// ==================================================================================================================== + +static __device__ __forceinline__ int lane_id() +{ + int id; + asm( "mov.u32 %0, %%laneid;" : "=r"(id) ); + return id; +} + +static __device__ __forceinline__ int lane_mask_lt() +{ + int mask; + asm( "mov.u32 %0, %%lanemask_lt;" : "=r"(mask) ); + return mask; +} + +static __device__ __forceinline__ int warp_id() +{ + return threadIdx.x >> 5; +} + +// ==================================================================================================================== +// Loads. +// ==================================================================================================================== + +enum Ld_mode { LD_AUTO = 0, LD_CA, LD_CG, LD_TEX, LD_NC }; + +template< Ld_mode Mode > +struct Ld {}; + +template<> +struct Ld +{ + template< typename T > + static __device__ __forceinline__ T load( const T *ptr ) { return *ptr; } +}; + +template<> +struct Ld +{ + static __device__ __forceinline__ int load( const int *ptr ) + { + int ret; + asm volatile ( "ld.global.cg.s32 %0, [%1];" : "=r"(ret) : __PTR(ptr) ); + return ret; + } + + static __device__ __forceinline__ float load( const float *ptr ) + { + float ret; + asm volatile ( "ld.global.cg.f32 %0, [%1];" : "=f"(ret) : __PTR(ptr) ); + return ret; + } + + static __device__ __forceinline__ double load( const double *ptr ) + { + double ret; + asm volatile ( "ld.global.cg.f64 %0, [%1];" : "=d"(ret) : __PTR(ptr) ); + return ret; + } +}; + +template<> +struct Ld +{ + static __device__ __forceinline__ int load( const int *ptr ) + { + int ret; + asm volatile ( "ld.global.ca.s32 %0, [%1];" : "=r"(ret) : __PTR(ptr) ); + return ret; + } + + static __device__ __forceinline__ float load( const float *ptr ) + { + float ret; + asm volatile ( "ld.global.ca.f32 %0, [%1];" : "=f"(ret) : __PTR(ptr) ); + return ret; + } + + static __device__ __forceinline__ double load( const double *ptr ) + { + double ret; + asm volatile ( "ld.global.ca.f64 %0, [%1];" : "=d"(ret) : __PTR(ptr) ); + return ret; + } +}; + +template<> +struct Ld +{ + template< typename T > + static __device__ __forceinline__ T load( const T *ptr ) { return __ldg( ptr ); } +}; + + +// ==================================================================================================================== +// Vector loads. +// ==================================================================================================================== + +static __device__ __forceinline__ void load_vec2( float (&u)[2], const float *ptr ) +{ + asm( "ld.global.cg.f32.v2 {%0, %1}, [%2];" : "=f"(u[0]), "=f"(u[1]) : __PTR(ptr) ); +} + +static __device__ __forceinline__ void load_vec2( double (&u)[2], const double *ptr ) +{ + asm( "ld.global.cg.f64.v2 {%0, %1}, [%2];" : "=d"(u[0]), "=d"(u[1]) : __PTR(ptr) ); +} + +static __device__ __forceinline__ void load_vec4( float (&u)[4], const float *ptr ) +{ + asm( "ld.global.cg.f32.v4 {%0, %1, %2, %3}, [%4];" : "=f"(u[0]), "=f"(u[1]), "=f"(u[2]), "=f"(u[3]) : __PTR(ptr) ); +} + +static __device__ __forceinline__ void load_vec4( double (&u)[4], const double *ptr ) +{ + asm( "ld.global.cg.f64.v2 {%0, %1}, [%2];" : "=d"(u[0]), "=d"(u[1]) : __PTR(ptr + 0) ); + asm( "ld.global.cg.f64.v2 {%0, %1}, [%2];" : "=d"(u[2]), "=d"(u[3]) : __PTR(ptr + 2) ); +} + +// ==================================================================================================================== +// Shuffle. +// ==================================================================================================================== +static __device__ __forceinline__ float shfl( float r, int lane, int warp_size ) +{ +#if __CUDA_ARCH__ >= 700 + return __shfl_sync(FULL_MASK, r, lane , warp_size); +#elif __CUDA_ARCH__ >= 300 + return __shfl( r, lane , warp_size); +#else + return 0.0f; +#endif +} + +static __device__ __forceinline__ double shfl( double r, int lane, int warp_size ) +{ +#if __CUDA_ARCH__ >= 700 + int hi = __shfl_sync(FULL_MASK, __double2hiint(r), lane , warp_size); + int lo = __shfl_sync(FULL_MASK, __double2loint(r), lane , warp_size); + return __hiloint2double( hi, lo ); +#elif __CUDA_ARCH__ >= 300 + int hi = __shfl( __double2hiint(r), lane , warp_size); + int lo = __shfl( __double2loint(r), lane , warp_size); + return __hiloint2double( hi, lo ); +#else + return 0.0; +#endif +} + +static __device__ __forceinline__ float shfl_xor( float r, int mask, int warp_size ) +{ +#if __CUDA_ARCH__ >= 700 + return __shfl_xor_sync(FULL_MASK, r, mask, warp_size ); +#elif __CUDA_ARCH__ >= 300 + return __shfl_xor( r, mask, warp_size ); +#else + return 0.0f; +#endif +} + +static __device__ __forceinline__ double shfl_xor( double r, int mask, int warp_size ) +{ +#if __CUDA_ARCH__ >= 700 + int hi = __shfl_xor_sync( __double2hiint(r), mask, warp_size ); + int lo = __shfl_xor_sync( __double2loint(r), mask, warp_size ); + return __hiloint2double( hi, lo ); +#elif __CUDA_ARCH__ >= 300 + int hi = __shfl_xor( __double2hiint(r), mask, warp_size ); + int lo = __shfl_xor( __double2loint(r), mask, warp_size ); + return __hiloint2double( hi, lo ); +#else + return 0.0; +#endif +} + +static __device__ __forceinline__ float shfl_down( float r, int offset ) +{ +#if __CUDA_ARCH__ >= 700 + return __shfl_down_sync(FULL_MASK, r, offset ); +#elif __CUDA_ARCH__ >= 300 + return __shfl_down( r, offset ); +#else + return 0.0f; +#endif +} + +static __device__ __forceinline__ double shfl_down( double r, int offset ) +{ +#if __CUDA_ARCH__ >= 700 + int hi = __shfl_down_sync(FULL_MASK, __double2hiint(r), offset ); + int lo = __shfl_down_sync(FULL_MASK, __double2loint(r), offset ); + return __hiloint2double( hi, lo ); +#elif __CUDA_ARCH__ >= 300 + int hi = __shfl_down( __double2hiint(r), offset ); + int lo = __shfl_down( __double2loint(r), offset ); + return __hiloint2double( hi, lo ); +#else + return 0.0; +#endif +} + +// ==================================================================================================================== +// Warp-level reductions. +// ==================================================================================================================== + +struct Add +{ + template< typename Value_type > + static __device__ __forceinline__ Value_type eval( Value_type x, Value_type y ) { return x+y; } +}; + +#if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 300 + +template< int NUM_THREADS_PER_ITEM, int WARP_SIZE > +struct Warp_reduce_pow2 +{ + template< typename Operator, typename Value_type > + static __device__ __inline__ Value_type execute( Value_type x ) + { + #pragma unroll + for( int mask = WARP_SIZE / 2 ; mask >= NUM_THREADS_PER_ITEM ; mask >>= 1 ) + x = Operator::eval( x, shfl_xor(x, mask) ); + return x; + } +}; + +template< int NUM_THREADS_PER_ITEM, int WARP_SIZE > +struct Warp_reduce_linear +{ + template< typename Operator, typename Value_type > + static __device__ __inline__ Value_type execute( Value_type x ) + { + const int NUM_STEPS = WARP_SIZE / NUM_THREADS_PER_ITEM; + int my_lane_id = utils::lane_id(); + #pragma unroll + for( int i = 1 ; i < NUM_STEPS ; ++i ) + { + Value_type y = shfl_down( x, i*NUM_THREADS_PER_ITEM ); + if( my_lane_id < NUM_THREADS_PER_ITEM ) + x = Operator::eval( x, y ); + } + return x; + } +}; + +#else + +template< int NUM_THREADS_PER_ITEM, int WARP_SIZE > +struct Warp_reduce_pow2 +{ + template< typename Operator, typename Value_type > + static __device__ __inline__ Value_type execute( volatile Value_type *smem, Value_type x ) + { + int my_lane_id = utils::lane_id(); + #pragma unroll + for( int offset = WARP_SIZE / 2 ; offset >= NUM_THREADS_PER_ITEM ; offset >>= 1 ) + if( my_lane_id < offset ) + smem[threadIdx.x] = x = Operator::eval( x, smem[threadIdx.x+offset] ); + return x; + } +}; + +template< int NUM_THREADS_PER_ITEM, int WARP_SIZE > +struct Warp_reduce_linear +{ + template< typename Operator, typename Value_type > + static __device__ __inline__ Value_type execute( volatile Value_type *smem, Value_type x ) + { + const int NUM_STEPS = WARP_SIZE / NUM_THREADS_PER_ITEM; + int my_lane_id = utils::lane_id(); + #pragma unroll + for( int i = 1 ; i < NUM_STEPS ; ++i ) + if( my_lane_id < NUM_THREADS_PER_ITEM ) + smem[threadIdx.x] = x = Operator::eval( x, smem[threadIdx.x+i*NUM_THREADS_PER_ITEM] ); + return x; + } +}; + +#endif + +// ==================================================================================================================== + +template< int NUM_THREADS_PER_ITEM, int WARP_SIZE = 32 > +struct Warp_reduce : public Warp_reduce_pow2 {}; + +template< int WARP_SIZE > +struct Warp_reduce< 3, WARP_SIZE> : public Warp_reduce_linear< 3, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce< 4, WARP_SIZE> : public Warp_reduce_linear< 4, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce< 5, WARP_SIZE> : public Warp_reduce_linear< 5, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce< 6, WARP_SIZE> : public Warp_reduce_linear< 6, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce< 7, WARP_SIZE> : public Warp_reduce_linear< 7, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce< 9, WARP_SIZE> : public Warp_reduce_linear< 9, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce<10, WARP_SIZE> : public Warp_reduce_linear<10, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce<11, WARP_SIZE> : public Warp_reduce_linear<11, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce<12, WARP_SIZE> : public Warp_reduce_linear<12, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce<13, WARP_SIZE> : public Warp_reduce_linear<13, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce<14, WARP_SIZE> : public Warp_reduce_linear<14, WARP_SIZE> {}; + +template< int WARP_SIZE > +struct Warp_reduce<15, WARP_SIZE> : public Warp_reduce_linear<15, WARP_SIZE> {}; + +// ==================================================================================================================== + +#if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 300 + +template< int NUM_THREADS_PER_ITEM, typename Operator, typename Value_type > +static __device__ __forceinline__ Value_type warp_reduce( Value_type x ) +{ + return Warp_reduce::template execute( x ); +} + +#else + +template< int NUM_THREADS_PER_ITEM, typename Operator, typename Value_type > +static __device__ __forceinline__ Value_type warp_reduce( volatile Value_type *smem, Value_type x ) +{ + return Warp_reduce::template execute( smem, x ); +} + +#endif + +/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +} // namespace utils + diff --git a/benchmarks/cuda/LULESH/util.h b/benchmarks/cuda/LULESH/util.h new file mode 100755 index 0000000..181fb6f --- /dev/null +++ b/benchmarks/cuda/LULESH/util.h @@ -0,0 +1,83 @@ +#pragma once + +#include +#include +#include + +#define cudaSafeCall(x) x;cudaCheckError() + +#ifndef NDEBUG + +#define cudaCheckError() { \ + cudaDeviceSynchronize(); \ + cudaError_t err=cudaGetLastError(); \ + if(err!=cudaSuccess) { \ + fprintf(stderr, "Cuda error in file '%s' in line %i : %s.\n", \ + __FILE__, __LINE__, cudaGetErrorString( err) ); \ + exit(EXIT_FAILURE); \ + } \ +} + +#else + +#define cudaCheckError() { \ + cudaError_t err=cudaGetLastError(); \ + if(err!=cudaSuccess) { \ + fprintf(stderr, "Cuda error in file '%s' in line %i : %s.\n", \ + __FILE__, __LINE__, cudaGetErrorString( err) ); \ + exit(EXIT_FAILURE); \ + } \ +} + +#endif + +/* Given a number of bytes, nbytes, and a byte alignment, align, (e.g., 2, + * 4, 8, or 16), return the smallest integer that is larger than nbytes and + * a multiple of align. + */ +#define PAD_DIV(nbytes, align) (((nbytes) + (align) - 1) / (align)) +#define PAD(nbytes, align) (PAD_DIV((nbytes),(align)) * (align)) + +#if defined(_WIN64) || defined(__LP64__) +// 64-bit pointer operand constraint for inlined asm +#define _ASM_PTR_ "l" +#else +// 32-bit pointer operand constraint for inlined asm +#define _ASM_PTR_ "r" +#endif + +// Function to print a vector +template +void printVector(const char* label, const vector &v) +{ + std::cout << label << ": "; + for(int i=0;i +#include + +template +class Vector_h; + +template +class Vector_d; + +// host vector +template +class Vector_h: public thrust::host_vector { + public: + + // Constructors + Vector_h() {} + inline Vector_h(int N) : thrust::host_vector(N) {} + inline Vector_h(int N, T v) : thrust::host_vector(N,v) {} + inline Vector_h(const Vector_h& a) : thrust::host_vector(a) {} + inline Vector_h(const Vector_d& a) : thrust::host_vector(a) {} + + template< typename OtherVector > + inline void copy( const OtherVector &a ) { + this->assign( a.begin( ), a.end( ) ); + } + + inline Vector_h& operator=(const Vector_h &a) { copy(a); return *this; } + inline Vector_h& operator=(const Vector_d &a) { copy(a); return *this; } + + inline T* raw() { + if(bytes()>0) return thrust::raw_pointer_cast(this->data()); + else return 0; + } + + inline const T* raw() const { + if(bytes()>0) return thrust::raw_pointer_cast(this->data()); + else return 0; + } + + inline size_t bytes() const { return this->size()*sizeof(T); } + +}; + +// device vector +template +class Vector_d: public thrust::device_vector { + public: + + Vector_d() {} + inline Vector_d(int N) : thrust::device_vector(N) {} + inline Vector_d(int N, T v) : thrust::device_vector(N,v) {} + inline Vector_d(const Vector_d& a) : thrust::device_vector(a) {} + inline Vector_d(const Vector_h& a) : thrust::device_vector(a) {} + + template< typename OtherVector > + inline void copy( const OtherVector &a ) { + this->assign( a.begin( ), a.end( ) ); + } + + inline Vector_d& operator=(const Vector_d &a) { copy(a); return *this; } + inline Vector_d& operator=(const Vector_h &a) { copy(a); return *this; } + + inline T* raw() { + if(bytes()>0) return thrust::raw_pointer_cast(this->data()); + else return 0; + } + + inline const T* raw() const { + if(bytes()>0) return thrust::raw_pointer_cast(this->data()); + else return 0; + } + + inline size_t bytes() const { return this->size()*sizeof(T); } +}; + diff --git a/benchmarks/cuda/adam/LICENSE b/benchmarks/cuda/adam/LICENSE new file mode 100644 index 0000000..5ab6112 --- /dev/null +++ b/benchmarks/cuda/adam/LICENSE @@ -0,0 +1,224 @@ +Copyright 2021- The Colossal-ai Authors. All rights reserved. + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +## Some of colossal-ai's code is derived from DeepSpeed, which is subject to the following copyright notice: + +Copyright (c) Microsoft Corporation. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE \ No newline at end of file diff --git a/benchmarks/cuda/adam/Makefile b/benchmarks/cuda/adam/Makefile new file mode 100644 index 0000000..f4d096c --- /dev/null +++ b/benchmarks/cuda/adam/Makefile @@ -0,0 +1,73 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC ?= nvcc +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = +JIT_PATH ?=/p/vast1/koparasy/JIT/jit/build-lassen/ +JIT ?= no + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + +program = adam$(SUFFIX).x + +source = main.cu + +obj = $(source:.cu=$(SUFFIX).o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := $(EXTRA_CFLAGS) -std=c++14 --cuda-gpu-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia + +# Linker Flags +LDFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g -DDEBUG + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3 -ffast-math +endif + +ifeq ($(JIT),yes) + LIBLLVM_PATH=$(dir $(realpath $(CC)))../lib + CFLAGS += -fpass-plugin=$(JIT_PATH)/pass/libProteusJitPass.so -DENABLE_JIT + LDFLAGS += -Wl,-rpath,$(LIBLLVM_PATH) -L$(LIBLLVM_PATH) -lLLVM \ + -Wl,-rpath,$(JIT_PATH)/lib -L$(JIT_PATH)/lib/ -lproteusjit -lnvptxcompiler_static +endif + +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) Makefile + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +%$(SUFFIX).o: %.cu Makefile + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf *.x *.o + +run: $(program) + $(LAUNCHER) ./$(program) 10000 200 100 diff --git a/benchmarks/cuda/adam/experiments.json b/benchmarks/cuda/adam/experiments.json new file mode 100644 index 0000000..5eed397 --- /dev/null +++ b/benchmarks/cuda/adam/experiments.json @@ -0,0 +1,10 @@ +{ + "name": "adam", + "executables": { + "aot": "adam-aot.x", + "jit": "adam-jit.x" + }, + "inputs": { + "default": "160000 1600 1000" + } +} diff --git a/benchmarks/cuda/adam/main.cu b/benchmarks/cuda/adam/main.cu new file mode 100644 index 0000000..636a037 --- /dev/null +++ b/benchmarks/cuda/adam/main.cu @@ -0,0 +1,160 @@ +#include +#include +#include +#include +#include +#include "reference.h" + +template +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 5,6,7,8,9,10,11,13))) +#endif +void adam ( + T* __restrict__ p, + T* __restrict__ m, + T* __restrict__ v, + const G* __restrict__ g, + const float b1, + const float b2, + const float eps, + const float grad_scale, + const float step_size, + const int time_step, + const size_t vector_size, + adamMode_t mode, + const float decay) +{ + const size_t i = blockIdx.x * blockDim.x + threadIdx.x; + const size_t totThreads = gridDim.x*blockDim.x; + + for (size_t j = i; j < vector_size; j += totThreads) { + for (int t = 0; t < time_step; t++) { + T scaled_grad = g[j]/grad_scale; + m[j] = b1*m[j] + (1.f-b1)*scaled_grad; + v[j] = b2*v[j] + (1.f-b2)*scaled_grad*scaled_grad; + float m_corrected = m[j] / (1.f-powf(b1, t)); + float v_corrected = v[j] / (1.f-powf(b2, t)); + float denom; + if (mode == ADAM_MODE_0) + denom = sqrtf(v_corrected + eps); + else // Mode 1 + denom = sqrtf(v_corrected) + eps; + float update = (m_corrected/denom) + (decay*p[j]); + p[j] -= (step_size*update); + } + } +} + +int main(int argc, char* argv[]) +{ + if (argc != 4) { + printf("Usage: %s \n", argv[0]); + return 1; + } + + const int vector_size = atoi(argv[1]); + const int time_step = atoi(argv[2]); + const int repeat = atoi(argv[3]); + + size_t size_bytes = vector_size * sizeof(float); + + float *m = (float*) malloc (size_bytes); + float *v = (float*) malloc (size_bytes); + float *g = (float*) malloc (size_bytes); + float *p = (float*) malloc (size_bytes); + float *r = (float*) malloc (size_bytes); + + srand(123); + for (int i = 0; i < vector_size; i++) { + m[i] = rand() / (float)RAND_MAX; + v[i] = rand() / (float)RAND_MAX; + g[i] = rand() / (float)RAND_MAX; + r[i] = p[i] = rand() / (float)RAND_MAX; + } + + float *d_m, *d_v, *d_g, *d_p; + + cudaMalloc((void**)&d_m, size_bytes); + cudaMemcpy(d_m, m, size_bytes, cudaMemcpyHostToDevice); + + cudaMalloc((void**)&d_v, size_bytes); + cudaMemcpy(d_v, v, size_bytes, cudaMemcpyHostToDevice); + + cudaMalloc((void**)&d_g, size_bytes); + cudaMemcpy(d_g, g, size_bytes, cudaMemcpyHostToDevice); + + cudaMalloc((void**)&d_p, size_bytes); + cudaMemcpy(d_p, p, size_bytes, cudaMemcpyHostToDevice); + + // Arbitrary constants + const float step_size = 1e-3f; + const float decay = 0.5f; + const float beta1 = 0.9f; + const float beta2 = 0.999f; + const float eps = 1e-8f; + const float grad_scale = 256.f; + + const int threadsPerBlock = 256; + const dim3 grids ((vector_size+threadsPerBlock-1) / threadsPerBlock); + const dim3 blocks (threadsPerBlock); + + adamMode_t mode = ADAM_MODE_0; + + cudaDeviceSynchronize(); + auto start = std::chrono::steady_clock::now(); + + for (int i = 0; i < repeat; i++) { + adam<<>> ( + d_p, d_m, d_v, d_g, + beta1, beta2, + eps, + grad_scale, + step_size, + time_step, + vector_size, + mode, + decay); + } + + cudaDeviceSynchronize(); + auto end = std::chrono::steady_clock::now(); + auto time = std::chrono::duration_cast(end - start).count(); + printf("Average kernel execution time %f (ms)\n", time * 1e-6f / repeat); + + cudaMemcpy(p, d_p, size_bytes, cudaMemcpyDeviceToHost); + + cudaFree(d_p); + cudaFree(d_m); + cudaFree(d_v); + cudaFree(d_g); + + // verify +// reference( +// repeat, +// r, m, v, g, +// beta1, beta2, +// eps, +// grad_scale, +// step_size, +// time_step, +// vector_size, +// mode, +// decay); +// +// bool ok = true; +// for (int i = 0; i < vector_size; i++) { +// if (r[i] - p[i] > 1e-3f) { +// ok = false; +// break; +// } +// } +// printf("%s\n", ok ? "PASS" : "FAIL"); + + free(p); + free(m); + free(v); + free(g); + free(r); + return 0; +} diff --git a/benchmarks/cuda/adam/reference.h b/benchmarks/cuda/adam/reference.h new file mode 100644 index 0000000..99c8aad --- /dev/null +++ b/benchmarks/cuda/adam/reference.h @@ -0,0 +1,42 @@ +typedef enum { + ADAM_MODE_0 = 0, // eps under square root + ADAM_MODE_1 = 1 // eps outside square root +} adamMode_t; + +template +void reference ( + int repeat, + T* p, + T* m, + T* v, + const G* g, + const float b1, + const float b2, + const float eps, + const float grad_scale, + const float step_size, + const int time_step, + const size_t vector_size, + adamMode_t mode, + const float decay) +{ + for (int i = 0; i < repeat; i++) { + for (size_t j = 0; j < vector_size; j++) { + for (int t = 0; t < time_step; t++) { + T scaled_grad = g[j]/grad_scale; + m[j] = b1*m[j] + (1.f-b1)*scaled_grad; + v[j] = b2*v[j] + (1.f-b2)*scaled_grad*scaled_grad; + float m_corrected = m[j] / (1.f-powf(b1, t)); + float v_corrected = v[j] / (1.f-powf(b2, t)); + float denom; + if (mode == ADAM_MODE_0) + denom = sqrtf(v_corrected + eps); + else // Mode 1 + denom = sqrtf(v_corrected) + eps; + float update = (m_corrected/denom) + (decay*p[j]); + p[j] -= (step_size*update); + } + } + } +} + diff --git a/benchmarks/cuda/feynman-kac/Makefile b/benchmarks/cuda/feynman-kac/Makefile new file mode 100644 index 0000000..68e392b --- /dev/null +++ b/benchmarks/cuda/feynman-kac/Makefile @@ -0,0 +1,76 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC ?= nvcc +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = +JIT_PATH ?=/p/vast1/koparasy/JIT/jit/build-lassen/ +JIT ?= no + + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + +program = fk$(SUFFIX).x + +source = main.cu + +obj = $(source:.cu=$(SUFFIX).o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := $(EXTRA_CFLAGS) -std=c++14 -Wall --offload-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia + +# Linker Flags +LDFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl + + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g -DDEBUG + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3 +endif + +ifeq ($(JIT),yes) + LIBLLVM_PATH=$(dir $(realpath $(CC)))../lib + CFLAGS += -fpass-plugin=$(JIT_PATH)/pass/libProteusJitPass.so -DENABLE_JIT + LDFLAGS += -Wl,-rpath,$(LIBLLVM_PATH) -L$(LIBLLVM_PATH) -lLLVM \ + -Wl,-rpath,$(JIT_PATH)/lib -L$(JIT_PATH)/lib/ -lproteusjit -lnvptxcompiler_static +endif + +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) Makefile + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +%$(SUFFIX).o: %.cu util.h kernel.h Makefile + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf $(program) $(obj) + +run: $(program) + $(LAUNCHER) ./$(program) 10 + diff --git a/benchmarks/cuda/feynman-kac/experiments.json b/benchmarks/cuda/feynman-kac/experiments.json new file mode 100644 index 0000000..487fdc1 --- /dev/null +++ b/benchmarks/cuda/feynman-kac/experiments.json @@ -0,0 +1,10 @@ +{ + "name": "feynman-kac", + "executables": { + "aot" : "fk-aot.x", + "jit": "fk-jit.x" + }, + "inputs" : { + "default":"1" + } +} diff --git a/benchmarks/cuda/feynman-kac/kernel.h b/benchmarks/cuda/feynman-kac/kernel.h new file mode 100644 index 0000000..f3a89b5 --- /dev/null +++ b/benchmarks/cuda/feynman-kac/kernel.h @@ -0,0 +1,83 @@ +__global__ +#ifdef ENABLE_JIT + __attribute__((annotate("jit", 5, 6, 7, 8))) +#endif + void + fk(const int ni, const int nj, int seed, const int N, const double a, + const double b, const double h, const double rth, + int *__restrict__ n_inside, double *__restrict__ err) { + int i = blockIdx.x * blockDim.x + threadIdx.x + 1; + int j = blockIdx.y * blockDim.y + threadIdx.y + 1; + if (i <= ni && j <= nj) { + double x = + ((double)(nj - j) * (-a) + (double)(j - 1) * a) / (double)(nj - 1); + + double y = + ((double)(ni - i) * (-b) + (double)(i - 1) * b) / (double)(ni - 1); + + double dx; + double dy; + double us; + double ut; + double vh; + double vs; + double x1; + double x2; + double w; + double w_exact; + double we; + double wt; + double chk = pow(x / a, 2.0) + pow(y / b, 2.0); + + if (1.0 < chk) { + w_exact = 1.0; + wt = 1.0; + } else { + atomicAdd(n_inside, 1); + w_exact = exp(pow(x / a, 2.0) + pow(y / b, 2.0) - 1.0); + wt = 0.0; + for (int k = 0; k < N; k++) { + x1 = x; + x2 = y; + w = 1.0; + chk = 0.0; + while (chk < 1.0) { + ut = r8_uniform_01(&seed); + if (ut < 1.0 / 2.0) { + us = r8_uniform_01(&seed) - 0.5; + if (us < 0.0) + dx = -rth; + else + dx = rth; + } else { + dx = 0.0; + } + + ut = r8_uniform_01(&seed); + if (ut < 1.0 / 2.0) { + us = r8_uniform_01(&seed) - 0.5; + if (us < 0.0) + dy = -rth; + else + dy = rth; + } else { + dy = 0.0; + } + vs = potential(a, b, x1, x2); + x1 = x1 + dx; + x2 = x2 + dy; + + vh = potential(a, b, x1, x2); + + we = (1.0 - h * vs) * w; + w = w - 0.5 * h * (vh * we + vs * w); + + chk = pow(x1 / a, 2.0) + pow(x2 / b, 2.0); + } + wt += w; + } + wt /= (double)(N); + atomicAdd(err, pow(w_exact - wt, 2.0)); + } + } +} diff --git a/benchmarks/cuda/feynman-kac/main.cu b/benchmarks/cuda/feynman-kac/main.cu new file mode 100644 index 0000000..f883a27 --- /dev/null +++ b/benchmarks/cuda/feynman-kac/main.cu @@ -0,0 +1,196 @@ +/* + Purpose: + + MAIN is the main program for FEYNMAN_KAC_2D. + + Discussion: + + This program is derived from section 2.5, exercise 2.2 of Petersen and Arbenz. + + The problem is to determine the solution U(X,Y) of the following + partial differential equation: + + (1/2) Laplacian U - V(X,Y) * U = 0, + + inside the elliptic domain D: + + D = { (X,Y) | (X/A)^2+(Y/B)^2 <= 1 } + + with the boundary condition U(boundary(D)) = 1. + + The V(X,Y) is the potential function: + + V = 2 * ( (X/A^2)^2 + (Y/B^2)^2 ) + 1/A^2 + 1/B^2. + + The analytic solution of this problem is already known: + + U(X,Y) = exp ( (X/A)^2 + (Y/B)^2 - 1 ). + + Our method is via the Feynman-Kac Formula. + + The idea is to start from any (x,y) in D, and + compute (x+Wx(t),y+Wy(t)) where 2D Brownian motion + (Wx,Wy) is updated each step by sqrt(h)*(z1,z2), + each z1,z2 are independent approximately Gaussian + random variables with zero mean and variance 1. + + Each (x1(t),x2(t)) is advanced until (x1,x2) exits + the domain D. + + Upon its first exit from D, the sample path (x1,x2) is stopped and a + new sample path at (x,y) is started until N such paths are completed. + + The Feynman-Kac formula gives the solution here as + + U(X,Y) = (1/N) sum(1 <= I <= N) Y(tau_i), + + where + + Y(tau) = exp( -int(s=0..tau) v(x1(s),x2(s)) ds), + + and tau = first exit time for path (x1,x2). + + The integration procedure is a second order weak accurate method: + + X(t+h) = [ x1(t) + sqrt ( h ) * z1 ] + [ x2(t) + sqrt ( h ) * z2 ] + + Here Z1, Z2 are approximately normal univariate Gaussians. + + An Euler predictor approximates Y at the end of the step + + Y_e = (1 - h*v(X(t)) * Y(t), + + A trapezoidal rule completes the step: + + Y(t+h) = Y(t) - (h/2)*[v(X(t+h))*Y_e + v(X(t))*Y(t)]. + + Licensing: + + This code is distributed under the GNU LGPL license. + + Modified: + + 31 May 2012 + + Author: + + Original C 3D version by Wesley Petersen. + C 2D version by John Burkardt. + + Reference: + + Peter Arbenz, Wesley Petersen, + Introduction to Parallel Computing: + A Practical Guide with Examples in C, + Oxford, 2004, + ISBN: 0-19-851577-4, + LC: QA76.59.P47. +*/ + +#include +#include +#include +#include +#include +#include "util.h" +#include "kernel.h" + +int main ( int argc, char **argv ) +{ + if (argc != 2) { + printf("Usage: %s \n", argv[0]); + return 1; + } + + const int repeat = atoi(argv[1]); + double a = 2.0; + double b = 1.0; + int dim = 2; + double err; + double h = 0.001; + int N = 1000; + int n_inside; + int ni; + int nj; + double rth; + int seed = 123456789; + + printf ( "\n" ); + + printf ( "\n" ); + printf ( "FEYNMAN_KAC_2D:\n" ); + printf ( "\n" ); + printf ( " Program parameters:\n" ); + printf ( "\n" ); + printf ( " The calculation takes place inside a 2D ellipse.\n" ); + printf ( " A rectangular grid of points will be defined.\n" ); + printf ( " The solution will be estimated for those grid points\n" ); + printf ( " that lie inside the ellipse.\n" ); + printf ( "\n" ); + printf ( " Each solution will be estimated by computing %d trajectories\n", N ); + printf ( " from the point to the boundary.\n" ); + printf ( "\n" ); + printf ( " (X/A)^2 + (Y/B)^2 = 1\n" ); + printf ( "\n" ); + printf ( " The ellipse parameters A, B are set to:\n" ); + printf ( "\n" ); + printf ( " A = %f\n", a ); + printf ( " B = %f\n", b ); + printf ( " Stepsize H = %6.4f\n", h ); + + // scaled stepsize. + rth = sqrt ( ( double ) dim * h ); + + // a > b + nj = 128; + ni = 1 + i4_ceiling ( a / b ) * ( nj - 1 ); + + printf ( "\n" ); + printf ( " X coordinate marked by %d points\n", ni ); + printf ( " Y coordinate marked by %d points\n", nj ); + + err = 0.0; + n_inside = 0; + + dim3 grids ((ni+15)/16, (nj+15)/16); + dim3 blocks (16, 16); + + double *d_err; + int *d_n_inside; + + cudaMalloc((void**)&d_err, sizeof(double)); + cudaMalloc((void**)&d_n_inside, sizeof(int)); + + long time = 0; + for (int i = 0; i < repeat; i++) { + cudaMemcpy(d_err, &err, sizeof(double), cudaMemcpyHostToDevice); + cudaMemcpy(d_n_inside, &n_inside, sizeof(int), cudaMemcpyHostToDevice); + + cudaDeviceSynchronize(); + auto start = std::chrono::steady_clock::now(); + + fk <<< grids, blocks >>> (ni, nj, seed, N, a, b, h, rth, d_n_inside, d_err); + + cudaDeviceSynchronize(); + auto end = std::chrono::steady_clock::now(); + time += std::chrono::duration_cast(end - start).count(); + } + printf("Average kernel time: %lf (s)\n", time * 1e-9 / repeat); + + cudaMemcpy(&err, d_err, sizeof(double), cudaMemcpyDeviceToHost); + cudaMemcpy(&n_inside, d_n_inside, sizeof(int), cudaMemcpyDeviceToHost); + + cudaFree(d_err); + cudaFree(d_n_inside); + + err = sqrt ( err / ( double ) ( n_inside ) ); + printf ( "\n" ); + printf ( " RMS absolute error in solution = %e\n", err ); + printf ( "\n" ); + printf ( "FEYNMAN_KAC_2D:\n" ); + printf ( " Normal end of execution.\n" ); + printf ( "\n" ); + + return 0; +} diff --git a/benchmarks/cuda/feynman-kac/util.h b/benchmarks/cuda/feynman-kac/util.h new file mode 100644 index 0000000..746d125 --- /dev/null +++ b/benchmarks/cuda/feynman-kac/util.h @@ -0,0 +1,183 @@ +int i4_ceiling(double x) + +/* + Purpose: + + I4_CEILING rounds an R8 up to the nearest I4. + + Discussion: + + The "ceiling" of X is the value of X rounded towards plus infinity. + + Example: + + X I4_CEILING(X) + + -1.1 -1 + -1.0 -1 + -0.9 0 + -0.1 0 + 0.0 0 + 0.1 1 + 0.9 1 + 1.0 1 + 1.1 2 + 2.9 3 + 3.0 3 + 3.14159 4 + + Licensing: + + This code is distributed under the GNU LGPL license. + + Modified: + + 10 November 2011 + + Author: + + John Burkardt + + Parameters: + + Input, double X, the number whose ceiling is desired. + + Output, int I4_CEILING, the ceiling of X. +*/ +{ + int value; + + value = (int)x; + + if (value < x) { + value = value + 1; + } + + return value; +} + +__device__ double potential(double a, double b, double x, double y) + +/* + Purpose: + + POTENTIAL evaluates the potential function V(X,Y,Z). + + Licensing: + + This code is distributed under the GNU LGPL license. + + Modified: + + 19 February 2008 + + Author: + + John Burkardt + + Parameters: + + Input, double A, B, the parameters that define the ellipse. + + Input, double X, Y, the coordinates of the point. + + Output, double POTENTIAL, the value of the potential function at (X,Y). +*/ +{ + double value; + + value = 2.0 * (pow(x / a / a, 2.0) + pow(y / b / b, 2.0)) + 1.0 / a / a + + 1.0 / b / b; + + return value; +} + +__device__ double r8_uniform_01(int *seed) + +/* + Purpose: + + R8_UNIFORM_01 returns a unit pseudorandom R8. + + Discussion: + + This routine implements the recursion + + seed = 16807 * seed mod ( 2^31 - 1 ) + r8_uniform_01 = seed / ( 2^31 - 1 ) + + The integer arithmetic never requires more than 32 bits, + including a sign bit. + + If the initial seed is 12345, then the first three computations are + + Input Output R8_UNIFORM_01 + SEED SEED + + 12345 207482415 0.096616 + 207482415 1790989824 0.833995 + 1790989824 2035175616 0.947702 + + Licensing: + + This code is distributed under the GNU LGPL license. + + Modified: + + 11 August 2004 + + Author: + + John Burkardt + + Reference: + + Paul Bratley, Bennett Fox, Linus Schrage, + A Guide to Simulation, + Springer Verlag, pages 201-202, 1983. + + Pierre L'Ecuyer, + Random Number Generation, + in Handbook of Simulation + edited by Jerry Banks, + Wiley Interscience, page 95, 1998. + + Bennett Fox, + Algorithm 647: + Implementation and Relative Efficiency of Quasirandom + Sequence Generators, + ACM Transactions on Mathematical Software, + Volume 12, Number 4, pages 362-376, 1986. + + Peter Lewis, Allen Goodman, James Miller, + A Pseudo-Random Number Generator for the System/360, + IBM Systems Journal, + Volume 8, pages 136-143, 1969. + + Parameters: + + Input/output, int *SEED, the "seed" value. Normally, this + value should not be 0. On output, SEED has been updated. + + Output, double R8_UNIFORM_01, a new pseudorandom variate, strictly between + 0 and 1. +*/ +{ + int k; + double r; + + k = *seed / 127773; + + *seed = 16807 * (*seed - k * 127773) - k * 2836; + + if (*seed < 0) { + *seed = *seed + 2147483647; + } + /* + Although SEED can be represented exactly as a 32 bit integer, + it generally cannot be represented exactly as a 32 bit real number! + */ + r = (double)(*seed) * 4.656612875E-10; + + return r; +} diff --git a/benchmarks/cuda/rsbench/Makefile b/benchmarks/cuda/rsbench/Makefile new file mode 100644 index 0000000..e768b17 --- /dev/null +++ b/benchmarks/cuda/rsbench/Makefile @@ -0,0 +1,81 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC ?= nvcc +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = +JIT_PATH ?=/p/vast1/koparasy/JIT/jit/build-lassen/ +JIT ?= no + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + +program = rsbench$(SUFFIX).x + +source = \ +main.cu \ +simulation.cu\ +io.cu \ +init.cu \ +material.cu \ +utils.cu + +obj = $(source:.cu=$(SUFFIX).o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := $(EXTRA_CFLAGS) -std=c++14 --cuda-gpu-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia + +# Linker Flags +LDFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3 +endif + +ifeq ($(JIT),yes) + LIBLLVM_PATH=$(dir $(realpath $(CC)))../lib + CFLAGS += -fpass-plugin=$(JIT_PATH)/pass/libProteusJitPass.so -DENABLE_JIT + LDFLAGS += -Wl,-rpath,$(LIBLLVM_PATH) -L$(LIBLLVM_PATH) -lLLVM \ + -Wl,-rpath,$(JIT_PATH)/lib -L$(JIT_PATH)/lib/ -lproteusjit -lnvptxcompiler_static +endif + +LDFLAGS +=-lnvptxcompiler_static + +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) rsbench.h Makefile + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +%$(SUFFIX).o: %.cu rsbench.h Makefile + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf *.x *.o + +run: $(program) + $(LAUNCHER) ./$(program) -s large -m event diff --git a/benchmarks/cuda/rsbench/experiments.json b/benchmarks/cuda/rsbench/experiments.json new file mode 100644 index 0000000..981bae0 --- /dev/null +++ b/benchmarks/cuda/rsbench/experiments.json @@ -0,0 +1,10 @@ +{ + "name": "rsbench", + "executables": { + "aot" : "rsbench-aot.x", + "jit": "rsbench-jit.x" + }, + "inputs" : { + "default":"-s large -m event" + } +} diff --git a/benchmarks/cuda/rsbench/init.cu b/benchmarks/cuda/rsbench/init.cu new file mode 100644 index 0000000..2445acf --- /dev/null +++ b/benchmarks/cuda/rsbench/init.cu @@ -0,0 +1,185 @@ +#include "rsbench.h" + +SimulationData initialize_simulation( Input input ) +{ + uint64_t seed = INITIALIZATION_SEED; + + // Get material data + printf("Loading Hoogenboom-Martin material data...\n"); + SimulationData SD = get_materials( input, &seed ); + + // Allocate & fill energy grids + printf("Generating resonance distributions...\n"); + SD.n_poles = generate_n_poles( input, &seed ); + SD.length_n_poles = input.n_nuclides; + + // Allocate & fill Window grids + printf("Generating window distributions...\n"); + SD.n_windows = generate_n_windows( input, &seed ); + SD.length_n_windows = input.n_nuclides; + + // Prepare full resonance grid + printf("Generating resonance parameter grid...\n"); + SD.poles = generate_poles( input, SD.n_poles, &seed, &SD.max_num_poles ); + SD.length_poles = input.n_nuclides * SD.max_num_poles; + + // Prepare full Window grid + printf("Generating window parameter grid...\n"); + SD.windows = generate_window_params( input, SD.n_windows, SD.n_poles, &seed, &SD.max_num_windows); + SD.length_windows = input.n_nuclides * SD.max_num_windows; + + // Prepare 0K Resonances + printf("Generating 0K l_value data...\n"); + SD.pseudo_K0RS = generate_pseudo_K0RS( input, &seed ); + SD.length_pseudo_K0RS = input.n_nuclides * input.numL; + + return SD; +} + +int * generate_n_poles( Input input, uint64_t * seed ) +{ + int total_resonances = input.avg_n_poles * input.n_nuclides; + + int * R = (int *) malloc( input.n_nuclides * sizeof(int)); + + // Ensure all nuclides have at least 1 resonance + for( int i = 0; i < input.n_nuclides; i++ ) + R[i] = 1; + + // Sample the rest + for( int i = 0; i < total_resonances - input.n_nuclides; i++ ) + R[LCG_random_int(seed) % input.n_nuclides]++; + + /* Debug + for( int i = 0; i < input.n_nuclides; i++ ) + printf("R[%d] = %d\n", i, R[i]); + */ + + return R; +} + +int * generate_n_windows( Input input, uint64_t * seed ) +{ + int total_resonances = input.avg_n_windows * input.n_nuclides; + + int * R = (int *) malloc( input.n_nuclides * sizeof(int)); + + // Ensure all nuclides have at least 1 resonance + for( int i = 0; i < input.n_nuclides; i++ ) + R[i] = 1; + + // Sample the rest + for( int i = 0; i < total_resonances - input.n_nuclides; i++ ) + R[LCG_random_int(seed) % input.n_nuclides]++; + + /* Debug + for( int i = 0; i < input.n_nuclides; i++ ) + printf("R[%d] = %d\n", i, R[i]); + */ + + return R; +} + +Pole * generate_poles( Input input, int * n_poles, uint64_t * seed, int * max_num_poles ) +{ + // Pole Scaling Factor -- Used to bias hitting of the fast Faddeeva + // region to approximately 99.5% (i.e., only 0.5% of lookups should + // require the full eval). + double f = 152.5; + RSComplex f_c = {f, 0}; + + int max_poles = -1; + + for( int i = 0; i < input.n_nuclides; i++ ) + { + if( n_poles[i] > max_poles) + max_poles = n_poles[i]; + } + *max_num_poles = max_poles; + + // Allocating 2D matrix as a 1D contiguous vector + Pole * R = (Pole *) malloc( input.n_nuclides * max_poles * sizeof(Pole)); + + // fill with data + for( int i = 0; i < input.n_nuclides; i++ ) + for( int j = 0; j < n_poles[i]; j++ ) + { + double r = LCG_random_double(seed); + double im = LCG_random_double(seed); + RSComplex t1 = {r, im}; + R[i * max_poles + j].MP_EA = c_mul(f_c,t1); + r = LCG_random_double(seed); + im = LCG_random_double(seed); + RSComplex t2 = {f*r, im}; + R[i * max_poles + j].MP_RT = t2; + r = LCG_random_double(seed); + im = LCG_random_double(seed); + RSComplex t3 = {f*r, im}; + R[i * max_poles + j].MP_RA = t3; + r = LCG_random_double(seed); + im = LCG_random_double(seed); + RSComplex t4 = {f*r, im}; + R[i * max_poles + j].MP_RF = t4; + R[i * max_poles + j].l_value = LCG_random_int(seed) % input.numL; + } + + /* Debug + for( int i = 0; i < input.n_nuclides; i++ ) + for( int j = 0; j < n_poles[i]; j++ ) + printf("R[%d][%d]: Eo = %lf lambda_o = %lf Tn = %lf Tg = %lf Tf = %lf\n", i, j, R[i * max_poles + j].Eo, R[i * max_poles + j].lambda_o, R[i * max_poles + j].Tn, R[i * max_poles + j].Tg, R[i * max_poles + j].Tf); + */ + + return R; +} + +Window * generate_window_params( Input input, int * n_windows, int * n_poles, uint64_t * seed, int * max_num_windows ) +{ + int max_windows = -1; + + for( int i = 0; i < input.n_nuclides; i++ ) + { + if( n_windows[i] > max_windows) + max_windows = n_windows[i]; + } + *max_num_windows = max_windows; + + // Allocating 2D contiguous matrix + Window * R = (Window *) malloc( input.n_nuclides * max_windows * sizeof(Window)); + + // fill with data + for( int i = 0; i < input.n_nuclides; i++ ) + { + int space = n_poles[i] / n_windows[i]; + int remainder = n_poles[i] - space * n_windows[i]; + int ctr = 0; + for( int j = 0; j < n_windows[i]; j++ ) + { + R[i * max_windows + j].T = LCG_random_double(seed); + R[i * max_windows + j].A = LCG_random_double(seed); + R[i * max_windows + j].F = LCG_random_double(seed); + R[i * max_windows + j].start = ctr; + R[i * max_windows + j].end = ctr + space - 1; + + ctr += space; + + if ( j < remainder ) + { + ctr++; + R[i * max_windows + j].end++; + } + } + } + + return R; +} + +double * generate_pseudo_K0RS( Input input, uint64_t * seed ) +{ + double * R = (double *) malloc( input.n_nuclides * input.numL * sizeof(double)); + + for( int i = 0; i < input.n_nuclides; i++) + for( int j = 0; j < input.numL; j++ ) + R[i * input.numL + j] = LCG_random_double(seed); + + return R; +} diff --git a/benchmarks/cuda/rsbench/io.cu b/benchmarks/cuda/rsbench/io.cu new file mode 100644 index 0000000..8c413a9 --- /dev/null +++ b/benchmarks/cuda/rsbench/io.cu @@ -0,0 +1,338 @@ +#include "rsbench.h" + +// Prints program logo +void logo(int version) +{ + border_print(); + printf( +" _____ _____ ____ _ \n" +" | __ \\ / ____| _ \\ | | \n" +" | |__) | (___ | |_) | ___ _ __ ___| |__ \n" +" | _ / \\___ \\| _ < / _ \\ '_ \\ / __| '_ \\ \n" +" | | \\ \\ ____) | |_) | __/ | | | (__| | | |\n" +" |_| \\_\\_____/|____/ \\___|_| |_|\\___|_| |_|\n\n" + ); + border_print(); + center_print("Developed at Argonne National Laboratory", 79); + char v[100]; + sprintf(v, "Version: %d", version); + center_print(v, 79); + border_print(); +} + +// Prints Section titles in center of 80 char terminal +void center_print(const char *s, int width) +{ + int length = strlen(s); + int i; + for (i=0; i<=(width-length)/2; i++) { + fputs(" ", stdout); + } + fputs(s, stdout); + fputs("\n", stdout); +} + +void border_print(void) +{ + printf( + "===================================================================" + "=============\n"); +} + +// Prints comma separated integers - for ease of reading +void fancy_int( int a ) +{ + if( a < 1000 ) + printf("%d\n",a); + + else if( a >= 1000 && a < 1000000 ) + printf("%d,%03d\n", a / 1000, a % 1000); + + else if( a >= 1000000 && a < 1000000000 ) + printf("%d,%03d,%03d\n", a / 1000000, (a % 1000000) / 1000, a % 1000 ); + + else if( a >= 1000000000 ) + printf("%d,%03d,%03d,%03d\n", + a / 1000000000, + (a % 1000000000) / 1000000, + (a % 1000000) / 1000, + a % 1000 ); + else + printf("%d\n",a); +} + +Input read_CLI( int argc, char * argv[] ) +{ + Input input; + + // defaults to the history based simulation method + input.simulation_method = HISTORY_BASED; + // defaults to max threads on the system + input.nthreads = 1; + // defaults to 355 (corresponding to H-M Large benchmark) + input.n_nuclides = 355; + // defaults to 300,000 + input.particles = 300000; + // defaults to 34 + input.lookups = 34; + // defaults to H-M Large benchmark + input.HM = LARGE; + // defaults to 3000 resonancs (avg) per nuclide + input.avg_n_poles = 1000; + // defaults to 100 + input.avg_n_windows = 100; + // defaults to 4; + input.numL = 4; + // defaults to no temperature dependence (Doppler broadening) + input.doppler = 1; + // defaults to baseline simulation kernel + input.kernel_id = 0; + + int default_lookups = 1; + int default_particles = 1; + + // Collect Raw Input + for( int i = 1; i < argc; i++ ) + { + char * arg = argv[i]; + + // Simulation Method (-m) + if( strcmp(arg, "-m") == 0 ) + { + char * sim_type = NULL; + if( ++i < argc ) + sim_type = argv[i]; + else + print_CLI_error(); + + if( strcmp(sim_type, "history") == 0 ) + input.simulation_method = HISTORY_BASED; + else if( strcmp(sim_type, "event") == 0 ) + { + input.simulation_method = EVENT_BASED; + // Also resets default # of lookups + if( default_lookups && default_particles ) + { + input.lookups = input.lookups * input.particles; + input.particles = 0; + } + } + else + print_CLI_error(); + } + // lookups (-l) + else if( strcmp(arg, "-l") == 0 ) + { + if( ++i < argc ) + { + input.lookups = atoi(argv[i]); + default_lookups = 0; + } + else + print_CLI_error(); + } + // particles (-p) + else if( strcmp(arg, "-p") == 0 ) + { + if( ++i < argc ) + { + input.particles = atoi(argv[i]); + default_particles = 0; + } + else + print_CLI_error(); + } + // nuclides (-n) + else if( strcmp(arg, "-n") == 0 ) + { + if( ++i < argc ) + input.n_nuclides = atoi(argv[i]); + else + print_CLI_error(); + } + // HM (-s) + else if( strcmp(arg, "-s") == 0 ) + { + if( ++i < argc ) + { + if( strcmp(argv[i], "small") == 0 ) + input.HM = SMALL; + else if ( strcmp(argv[i], "large") == 0 ) + input.HM = LARGE; + else + print_CLI_error(); + } + else + print_CLI_error(); + } + // Doppler Broadening (Temperature Dependence) + else if( strcmp(arg, "-d") == 0 ) + { + input.doppler = 0; + } + // Avg number of windows per nuclide (-w) + else if( strcmp(arg, "-W") == 0 ) + { + if( ++i < argc ) + input.avg_n_windows = atoi(argv[i]); + else + print_CLI_error(); + } + // Avg number of poles per nuclide (-p) + else if( strcmp(arg, "-P") == 0 ) + { + if( ++i < argc ) + input.avg_n_poles = atoi(argv[i]); + else + print_CLI_error(); + } + // Kernel ID (-k) + else if( strcmp(arg, "-k") == 0 ) + { + if( ++i < argc ) + input.kernel_id = atoi(argv[i]); + else + print_CLI_error(); + } + else + print_CLI_error(); + } + + // Validate Input + + // Validate nthreads + if( input.nthreads < 1 ) + print_CLI_error(); + + // Validate n_isotopes + if( input.n_nuclides < 1 ) + print_CLI_error(); + + // Validate lookups + if( input.lookups < 1 ) + print_CLI_error(); + + // Validate lookups + if( input.avg_n_poles < 1 ) + print_CLI_error(); + + // Validate lookups + if( input.avg_n_windows < 1 ) + print_CLI_error(); + + // Set HM size specific parameters + // (defaults to large) + if( input.HM == SMALL ) + input.n_nuclides = 68; + + // Return input struct + return input; +} + +void print_CLI_error(void) +{ + printf("Usage: ./multibench \n"); + printf("Options include:\n"); + printf(" -s Size of H-M Benchmark to run (small, large)\n"); + printf(" -l Number of Cross-section (XS) lookups per particle history\n"); + printf(" -p Number of particle histories\n"); + printf(" -P Average Number of Poles per Nuclide\n"); + printf(" -W Average Number of Windows per Nuclide\n"); + printf(" -d Disables Temperature Dependence (Doppler Broadening)\n"); + printf("Default is equivalent to: -s large -l 34 -p 300000 -P 1000 -W 100\n"); + printf("See readme for full description of default run values\n"); + exit(4); +} + +void print_input_summary(Input input) +{ + // Calculate Estimate of Memory Usage + size_t mem = get_mem_estimate(input); + + printf("Programming Model: CUDA\n"); + if( input.simulation_method == EVENT_BASED ) + printf("Simulation Method: Event Based\n"); + else + printf("Simulation Method: History Based\n"); + printf("Materials: 12\n"); + printf("H-M Benchmark Size: "); + if( input.HM == 0 ) + printf("Small\n"); + else + printf("Large\n"); + if( input.doppler == 1 ) + printf("Temperature Dependence: ON\n"); + else + printf("Temperature Dependence: OFF\n"); + printf("Total Nuclides: %d\n", input.n_nuclides); + printf("Avg Poles per Nuclide: "); fancy_int(input.avg_n_poles); + printf("Avg Windows per Nuclide: "); fancy_int(input.avg_n_windows); + + int lookups = input.lookups; + if( input.simulation_method == HISTORY_BASED ) + { + printf("Particles: "); fancy_int(input.particles); + printf("XS Lookups per Particle: "); fancy_int(input.lookups); + lookups *= input.particles; + } + printf("Total XS Lookups: "); fancy_int(lookups); + printf("Est. Memory Usage (MB): %.1lf\n", mem / 1024.0 / 1024.0); +} + +int validate_and_print_results(Input input, double runtime, unsigned long vhash, double kernel_time) +{ + int lookups = 0; + if( input.simulation_method == HISTORY_BASED ) + lookups = input.lookups*input.particles; + else + lookups = input.lookups; + + int lookups_per_sec = (int) ((double) lookups / runtime); + int sim_only_lookups_per_sec = (int) ((double) lookups/ kernel_time); + + printf("Total Time Statistics (CUDA Init / JIT Compilation + Simulation Kernel)\n"); + printf("Runtime: %.3lf seconds\n", runtime); + printf("Lookups: "); fancy_int(lookups); + printf("Lookups/s: "); fancy_int(lookups_per_sec); + printf("Simulation Kernel Only Statistics\n"); + printf("Lookups/s: "); + fancy_int(sim_only_lookups_per_sec); + + int is_invalid = 1; + + unsigned long long large = 0; + unsigned long long small = 0; + if(input.simulation_method == HISTORY_BASED ) + { + large = 351485; + small = 879693; + } + else if( input.simulation_method == EVENT_BASED ) + { + large = 358389; + small = 880018; + } + + if( input.HM == LARGE ) + { + if( vhash == large ) + { + printf("Verification checksum: %lu (Valid)\n", vhash); + is_invalid = 0; + } + else + printf("Verification checksum: %lu (WARNING - INAVALID CHECKSUM!)\n", vhash); + } + else if( input.HM == SMALL ) + { + if( vhash == small ) + { + printf("Verification checksum: %lu (Valid)\n", vhash); + is_invalid = 0; + } + else + printf("Verification checksum: %lu (WARNING - INAVALID CHECKSUM!)\n", vhash); + } + + return is_invalid; +} diff --git a/benchmarks/cuda/rsbench/main.cu b/benchmarks/cuda/rsbench/main.cu new file mode 100644 index 0000000..e2f2233 --- /dev/null +++ b/benchmarks/cuda/rsbench/main.cu @@ -0,0 +1,88 @@ +#include "rsbench.h" + +int main(int argc, char * argv[]) +{ + // ===================================================================== + // Initialization & Command Line Read-In + // ===================================================================== + + int version = 12; + double start, stop; + + // Process CLI Fields + Input input = read_CLI( argc, argv ); + + // ===================================================================== + // Print-out of Input Summary + // ===================================================================== + logo(version); + center_print("INPUT SUMMARY", 79); + border_print(); + print_input_summary(input); + + // ===================================================================== + // Intialize Simulation Data Structures + // ===================================================================== + border_print(); + center_print("INITIALIZATION", 79); + border_print(); + + start = get_time(); + + SimulationData SD = initialize_simulation( input ); + + stop = get_time(); + + printf("Initialization Complete. (%.2lf seconds)\n", stop-start); + + // ===================================================================== + // Cross Section (XS) Parallel Lookup Simulation Begins + // ===================================================================== + border_print(); + center_print("SIMULATION", 79); + border_print(); + + unsigned long vhash = 0; + + double kernel_time; + + // Run Simulation + start = get_time(); + + // Run simulation + if( input.simulation_method == EVENT_BASED ) + { + if( input.kernel_id == 0 ) + run_event_based_simulation(input, SD, &vhash, &kernel_time ); + else + { + printf("Error: No kernel ID %d found!\n", input.kernel_id); + exit(1); + } + } + else if( input.simulation_method == HISTORY_BASED ) + { + printf("History-based simulation not implemented in the code. Instead,\nuse the event-based method with \"-m event\" argument.\n"); + exit(1); + } + + stop = get_time(); + + // Final hash step + vhash = vhash % 999983; + + printf("Simulation Complete.\n"); + + // ===================================================================== + // Print / Save Results and Exit + // ===================================================================== + border_print(); + center_print("RESULTS", 79); + border_print(); + + int is_invalid = validate_and_print_results(input, stop-start, vhash, kernel_time); + + border_print(); + + return is_invalid; +} diff --git a/benchmarks/cuda/rsbench/material.cu b/benchmarks/cuda/rsbench/material.cu new file mode 100644 index 0000000..791565b --- /dev/null +++ b/benchmarks/cuda/rsbench/material.cu @@ -0,0 +1,123 @@ +#include "rsbench.h" + +// Handles all material creation tasks - returns Material struct +SimulationData get_materials(Input input, uint64_t * seed) +{ + SimulationData SD; + + SD.num_nucs = load_num_nucs(input); + SD.length_num_nucs = 12; + + SD.mats = load_mats(input, SD.num_nucs, &SD.max_num_nucs, &SD.length_mats); + + SD.concs = load_concs(SD.num_nucs, seed, SD.max_num_nucs); + SD.length_concs = 12 * SD.max_num_nucs; + + return SD; +} + +// num_nucs represents the number of nuclides that each material contains +int * load_num_nucs(Input input) +{ + int * num_nucs = (int*)malloc(12*sizeof(int)); + + // Material 0 is a special case (fuel). The H-M small reactor uses + // 34 nuclides, while H-M larges uses 300. + if( input.n_nuclides == 68 ) + num_nucs[0] = 34; // HM Small is 34, H-M Large is 321 + else + num_nucs[0] = 321; // HM Small is 34, H-M Large is 321 + + num_nucs[1] = 5; + num_nucs[2] = 4; + num_nucs[3] = 4; + num_nucs[4] = 27; + num_nucs[5] = 21; + num_nucs[6] = 21; + num_nucs[7] = 21; + num_nucs[8] = 21; + num_nucs[9] = 21; + num_nucs[10] = 9; + num_nucs[11] = 9; + + return num_nucs; +} + +// Assigns an array of nuclide ID's to each material +int * load_mats( Input input, int * num_nucs, int * max_num_nucs, unsigned long * length_mats ) +{ + *max_num_nucs = 0; + int num_mats = 12; + for( int m = 0; m < num_mats; m++ ) + { + if( num_nucs[m] > *max_num_nucs ) + *max_num_nucs = num_nucs[m]; + } + int * mats = (int *) malloc( num_mats * (*max_num_nucs) * sizeof(int) ); + *length_mats = num_mats * (*max_num_nucs); + + // Small H-M has 34 fuel nuclides + int mats0_Sml[] = { 58, 59, 60, 61, 40, 42, 43, 44, 45, 46, 1, 2, 3, 7, + 8, 9, 10, 29, 57, 47, 48, 0, 62, 15, 33, 34, 52, 53, + 54, 55, 56, 18, 23, 41 }; //fuel + // Large H-M has 300 fuel nuclides + int mats0_Lrg[321] = { 58, 59, 60, 61, 40, 42, 43, 44, 45, 46, 1, 2, 3, 7, + 8, 9, 10, 29, 57, 47, 48, 0, 62, 15, 33, 34, 52, 53, + 54, 55, 56, 18, 23, 41 }; //fuel + for( int i = 0; i < 321-34; i++ ) + mats0_Lrg[34+i] = 68 + i; // H-M large adds nuclides to fuel only + + // These are the non-fuel materials + int mats1[] = { 63, 64, 65, 66, 67 }; // cladding + int mats2[] = { 24, 41, 4, 5 }; // cold borated water + int mats3[] = { 24, 41, 4, 5 }; // hot borated water + int mats4[] = { 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, 27, 28, 29, + 30, 31, 32, 26, 49, 50, 51, 11, 12, 13, 14, 6, 16, + 17 }; // RPV + int mats5[] = { 24, 41, 4, 5, 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, + 49, 50, 51, 11, 12, 13, 14 }; // lower radial reflector + int mats6[] = { 24, 41, 4, 5, 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, + 49, 50, 51, 11, 12, 13, 14 }; // top reflector / plate + int mats7[] = { 24, 41, 4, 5, 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, + 49, 50, 51, 11, 12, 13, 14 }; // bottom plate + int mats8[] = { 24, 41, 4, 5, 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, + 49, 50, 51, 11, 12, 13, 14 }; // bottom nozzle + int mats9[] = { 24, 41, 4, 5, 19, 20, 21, 22, 35, 36, 37, 38, 39, 25, + 49, 50, 51, 11, 12, 13, 14 }; // top nozzle + int mats10[] = { 24, 41, 4, 5, 63, 64, 65, 66, 67 }; // top of FA's + int mats11[] = { 24, 41, 4, 5, 63, 64, 65, 66, 67 }; // bottom FA's + + // H-M large v small dependency + if( input.n_nuclides == 68 ) + memcpy( mats, mats0_Sml, num_nucs[0] * sizeof(int) ); + else + memcpy( mats, mats0_Lrg, num_nucs[0] * sizeof(int) ); + + // Copy other materials + memcpy( mats + *max_num_nucs * 1, mats1, num_nucs[1] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 2, mats2, num_nucs[2] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 3, mats3, num_nucs[3] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 4, mats4, num_nucs[4] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 5, mats5, num_nucs[5] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 6, mats6, num_nucs[6] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 7, mats7, num_nucs[7] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 8, mats8, num_nucs[8] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 9, mats9, num_nucs[9] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 10, mats10, num_nucs[10] * sizeof(int) ); + memcpy( mats + *max_num_nucs * 11, mats11, num_nucs[11] * sizeof(int) ); + + return mats; +} + +// Creates a randomized array of 'concentrations' of nuclides in each mat +double * load_concs( int * num_nucs, uint64_t * seed, int max_num_nucs ) +{ + double * concs = (double *) malloc( 12 * max_num_nucs * sizeof( double ) ); + + for( int i = 0; i < 12; i++ ) + for( int j = 0; j < num_nucs[i]; j++ ) + concs[i * max_num_nucs + j] = LCG_random_double(seed); + + return concs; +} + diff --git a/benchmarks/cuda/rsbench/rsbench.h b/benchmarks/cuda/rsbench/rsbench.h new file mode 100644 index 0000000..5129d58 --- /dev/null +++ b/benchmarks/cuda/rsbench/rsbench.h @@ -0,0 +1,150 @@ +#include +#include +#include +#include +#include +#include +#include +#include + +#define PI 3.14159265359 + +// typedefs +typedef enum __hm{SMALL, LARGE, XL, XXL} HM_size; + +#define HISTORY_BASED 1 +#define EVENT_BASED 2 + +#define STARTING_SEED 1070 +#define INITIALIZATION_SEED 42 + +typedef struct{ + double r; + double i; +} RSComplex; + +typedef struct{ + int nthreads; + int n_nuclides; + int lookups; + HM_size HM; + int avg_n_poles; + int avg_n_windows; + int numL; + int doppler; + int particles; + int simulation_method; + int kernel_id; +} Input; + +typedef struct{ + RSComplex MP_EA; + RSComplex MP_RT; + RSComplex MP_RA; + RSComplex MP_RF; + short int l_value; +} Pole; + +typedef struct{ + double T; + double A; + double F; + int start; + int end; +} Window; + +typedef struct{ + int * n_poles; + unsigned long length_n_poles; + int * n_windows; + unsigned long length_n_windows; + Pole * poles; + unsigned long length_poles; + Window * windows; + unsigned long length_windows; + double * pseudo_K0RS; + unsigned long length_pseudo_K0RS; + int * num_nucs; + unsigned long length_num_nucs; + int * mats; + unsigned long length_mats; + double * concs; + unsigned long length_concs; + int max_num_nucs; + int max_num_poles; + int max_num_windows; + double * p_energy_samples; + unsigned long length_p_energy_samples; + int * mat_samples; + unsigned long length_mat_samples; +} SimulationData; + +// io.c +void logo(int version); +void center_print(const char *s, int width); +void border_print(void); +void fancy_int( int a ); +Input read_CLI( int argc, char * argv[] ); +void print_CLI_error(void); +void print_input_summary(Input input); +int validate_and_print_results(Input input, double runtime, unsigned long vhash, double kernel_init_time); + +// init.c +SimulationData initialize_simulation( Input input ); +int * generate_n_poles( Input input, uint64_t * seed ); +int * generate_n_windows( Input input , uint64_t * seed); +Pole * generate_poles( Input input, int * n_poles, uint64_t * seed, int * max_num_poles ); +Window * generate_window_params( Input input, int * n_windows, int * n_poles, uint64_t * seed, int * max_num_windows ); +double * generate_pseudo_K0RS( Input input, uint64_t * seed ); + +// material.c +int * load_num_nucs(Input input); +int * load_mats( Input input, int * num_nucs, int * max_num_nucs, unsigned long * length_mats ); +double * load_concs( int * num_nucs, uint64_t * seed, int max_num_nucs ); +SimulationData get_materials(Input input, uint64_t * seed); + +// utils.c +size_t get_mem_estimate( Input input ); +double get_time(void); + +// simulation.c +__device__ +RSComplex fast_cexp( RSComplex z ); +__device__ +RSComplex fast_nuclear_W( RSComplex Z ); +template +__device__ +void calculate_macro_xs( double * macro_xs, int mat, double E, int input_doppler, int input_numL, INT_T num_nucs, INT_T mats, int max_num_nucs, DOUBLE_T concs, INT_T n_windows, DOUBLE_T pseudo_K0Rs, WINDOW_T windows, POLE_T poles, int max_num_windows, int max_num_poles ) ; +template +__device__ +void calculate_micro_xs( double * micro_xs, int nuc, double E, Input input, INT_T n_windows, DOUBLE_T pseudo_K0RS, WINDOW_T windows, POLE_T poles, int max_num_windows, int max_num_poles); +template +__device__ +void calculate_micro_xs_doppler( double * micro_xs, int nuc, double E, Input input, INT_T n_windows, DOUBLE_T pseudo_K0RS, WINDOW_T windows, POLE_T poles, int max_num_windows, int max_num_poles ); +template +__device__ +void calculate_sig_T( int nuc, double E, Input input, DOUBLE_T pseudo_K0RS, RSComplex * sigTfactors ); +void run_event_based_simulation(Input in, SimulationData SD, unsigned long * vhash_result, double * kernel_init_time ); +__host__ __device__ +double LCG_random_double(uint64_t * seed); +uint64_t LCG_random_int(uint64_t * seed); +__device__ +uint64_t fast_forward_LCG(uint64_t seed, uint64_t n); +__device__ +int pick_mat( uint64_t * seed ); + +// rscomplex.c +__device__ +RSComplex c_add( RSComplex A, RSComplex B); +__device__ +RSComplex c_sub( RSComplex A, RSComplex B); +__host__ __device__ +RSComplex c_mul( RSComplex A, RSComplex B); +__device__ +RSComplex c_div( RSComplex A, RSComplex B); +__device__ +double c_abs( RSComplex A); + +// papi.c +void counter_init( int *eventset, int *num_papi_events ); +void counter_stop( int * eventset, int num_papi_events ); diff --git a/benchmarks/cuda/rsbench/simulation.cu b/benchmarks/cuda/rsbench/simulation.cu new file mode 100644 index 0000000..2e8979c --- /dev/null +++ b/benchmarks/cuda/rsbench/simulation.cu @@ -0,0 +1,637 @@ +#include "rsbench.h" + +//////////////////////////////////////////////////////////////////////////////////// +// BASELINE FUNCTIONS +//////////////////////////////////////////////////////////////////////////////////// +// All "baseline" code is at the top of this file. The baseline code is a simple +// implementation of the algorithm, with only minor CPU optimizations in place. +// Following these functions are a number of optimized variants, +// which each deploy a different combination of optimizations strategies. By +// default, RSBench will only run the baseline implementation. Optimized variants +// must be specifically selected using the "-k " command +// line argument. +//////////////////////////////////////////////////////////////////////////////////// + +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit",9,10,11,12,13,14))) +#endif +void lookup ( + const int*__restrict__ num_nucs, + const double*__restrict__ concs, + const int*__restrict__ mats, + int*__restrict__ verification, + const int*__restrict__ n_windows, + const double*__restrict__ pseudo_K0RS, + const Window*__restrict__ windows, + const Pole*__restrict__ poles, + int n_lookups, + int input_doppler, + int input_numL, + int max_num_windows, + int max_num_poles, + int max_num_nucs ) { + + // get the index to operate on, first dimemsion + size_t i = threadIdx.x + blockIdx.x * blockDim.x; + + if (i < n_lookups) { + + // Set the initial seed value + uint64_t seed = STARTING_SEED; + + // Forward seed to lookup index (we need 2 samples per lookup) + seed = fast_forward_LCG(seed, 2*i); + + // Randomly pick an energy and material for the particle + double p_energy = LCG_random_double(&seed); + int mat = pick_mat(&seed); + + // debugging + //printf("E = %lf mat = %d\n", p_energy, mat); + + double macro_xs_vector[4] = {0}; + + // Perform macroscopic Cross Section Lookup + calculate_macro_xs( + macro_xs_vector, mat, p_energy, + input_doppler, //in, + input_numL, + num_nucs, mats, + max_num_nucs, concs, n_windows, pseudo_K0RS, windows, poles, + max_num_windows, max_num_poles ); + + // For verification, and to prevent the compiler from optimizing + // all work out, we interrogate the returned macro_xs_vector array + // to find its maximum value index, then increment the verification + // value by that index. In this implementation, we store to a global + // array that will get tranferred back and reduced on the host. + double max = -DBL_MAX; + int max_idx = 0; + for(int j = 0; j < 4; j++ ) + { + if( macro_xs_vector[j] > max ) + { + max = macro_xs_vector[j]; + max_idx = j; + } + } + verification[i] = max_idx+1; + } +} + + +void run_event_based_simulation(Input in, SimulationData SD, unsigned long * vhash_result, double * kernel_time ) +{ + printf("Beginning event based simulation...\n"); + + // Let's create an extra verification array to reduce manually later on + printf("Allocating an additional %.1lf MB of memory for verification arrays...\n", in.lookups * sizeof(int) /1024.0/1024.0); + int * verification_host = (int *) malloc(in.lookups * sizeof(int)); + + // Scope here is important, as when we exit this blocl we will automatically sync with device + // to ensure all work is done and that we can read from verification_host array. + + // create a queue using the default device for the platform (cpu, gpu) + + cudaDeviceProp devProp; + cudaGetDeviceProperties(&devProp, 0); + printf("Running on: %s\n", devProp.name); + printf("Initializing device buffers and JIT compiling kernel...\n"); + + //////////////////////////////////////////////////////////////////////////////// + // Create Device Buffers + //////////////////////////////////////////////////////////////////////////////// + int *verification_d = nullptr; + int *mats_d = nullptr ; + int *num_nucs_d = nullptr; + int *n_windows_d = nullptr; + double *concs_d = nullptr; + double *pseudo_K0RS_d = nullptr; + Window *windows_d = nullptr; + Pole *poles_d = nullptr; + + // assign SYCL buffer to existing memory + //buffer num_nucs_d(SD.num_nucs,SD.length_num_nucs); + cudaMalloc((void**)&num_nucs_d, sizeof(int) * SD.length_num_nucs); + cudaMemcpy(num_nucs_d, SD.num_nucs, sizeof(int) * SD.length_num_nucs, cudaMemcpyHostToDevice); + + //buffer concs_d(SD.concs, SD.length_concs); + cudaMalloc((void**)&concs_d, sizeof(double) * SD.length_concs); + cudaMemcpy(concs_d, SD.concs, sizeof(double) * SD.length_concs, cudaMemcpyHostToDevice); + + //buffer mats_d(SD.mats, SD.length_mats); + cudaMalloc((void**)&mats_d, sizeof(int) * SD.length_mats); + cudaMemcpy(mats_d, SD.mats, sizeof(int) * SD.length_mats, cudaMemcpyHostToDevice); + + //buffer n_windows_d(SD.n_windows, SD.length_n_windows); + cudaMalloc((void**)&n_windows_d, sizeof(int) * SD.length_n_windows); + cudaMemcpy(n_windows_d, SD.n_windows, sizeof(int) * SD.length_n_windows, cudaMemcpyHostToDevice); + + //buffer poles_d(SD.poles, SD.length_poles); + cudaMalloc((void**)&poles_d, sizeof(Pole) * SD.length_poles); + cudaMemcpy(poles_d, SD.poles, sizeof(Pole) * SD.length_poles, cudaMemcpyHostToDevice); + + //buffer windows_d(SD.windows, SD.length_windows); + cudaMalloc((void**)&windows_d, sizeof(Window) * SD.length_windows); + cudaMemcpy(windows_d, SD.windows, sizeof(Window) * SD.length_windows, cudaMemcpyHostToDevice); + //buffer pseudo_K0RS_d(SD.pseudo_K0RS, SD.length_pseudo_K0RS); + cudaMalloc((void**)&pseudo_K0RS_d, sizeof(double) * SD.length_pseudo_K0RS); + cudaMemcpy(pseudo_K0RS_d, SD.pseudo_K0RS, sizeof(double) * SD.length_pseudo_K0RS, cudaMemcpyHostToDevice); + + //buffer verification_d(verification_host, in.lookups); + cudaMalloc((void**)&verification_d, sizeof(int) * in.lookups); + cudaMemcpy(verification_d, verification_host, sizeof(int) * in.lookups, cudaMemcpyHostToDevice); + + double start = get_time(); + + //////////////////////////////////////////////////////////////////////////////// + // XS Lookup Simulation Loop + //////////////////////////////////////////////////////////////////////////////// + lookup<<< dim3((in.lookups + 255) / 256), dim3(256) >>> ( + num_nucs_d, + concs_d, + mats_d, + verification_d, + n_windows_d, + pseudo_K0RS_d, + windows_d, + poles_d, + in.lookups, + in.doppler, + in.numL, + SD.max_num_windows, + SD.max_num_poles, + SD.max_num_nucs ); + + cudaDeviceSynchronize(); + double stop = get_time(); + printf("Kernel initialization, compilation, and execution took %.2lf seconds.\n", stop-start); + + cudaMemcpy(verification_host, verification_d, sizeof(int) * in.lookups, cudaMemcpyDeviceToHost); + + cudaFree(verification_d); + cudaFree(mats_d); + cudaFree(num_nucs_d); + cudaFree(concs_d); + cudaFree(n_windows_d); + cudaFree(windows_d); + cudaFree(poles_d); + cudaFree(pseudo_K0RS_d); + + // Host reduces the verification array + unsigned long long verification_scalar = 0; + for( int i = 0; i < in.lookups; i++ ) + verification_scalar += verification_host[i]; + + *vhash_result = verification_scalar; + *kernel_time = stop-start; +} + +template +__device__ +void calculate_macro_xs(double * macro_xs, int mat, double E, + int input_doppler, int input_numL, + INT_T num_nucs, INT_T mats, + int max_num_nucs, + DOUBLE_T concs, + INT_T n_windows, + DOUBLE_T pseudo_K0Rs, + WINDOW_T windows, + POLE_T poles, + int max_num_windows, + int max_num_poles ) +{ + // zero out macro vector + for( int i = 0; i < 4; i++ ) + macro_xs[i] = 0; + + // for nuclide in mat + for( int i = 0; i < num_nucs[mat]; i++ ) + { + double micro_xs[4]; + int nuc = mats[mat * max_num_nucs + i]; + + if( input_doppler == 1 ) + calculate_micro_xs_doppler( micro_xs, nuc, E, input_numL, n_windows, pseudo_K0Rs, windows, poles, max_num_windows, max_num_poles); + else + calculate_micro_xs( micro_xs, nuc, E, input_numL, n_windows, pseudo_K0Rs, windows, poles, max_num_windows, max_num_poles); + + for( int j = 0; j < 4; j++ ) + { + macro_xs[j] += micro_xs[j] * concs[mat * max_num_nucs + i]; + } + // Debug + /* + printf("E = %.2lf, mat = %d, macro_xs[0] = %.2lf, macro_xs[1] = %.2lf, macro_xs[2] = %.2lf, macro_xs[3] = %.2lf\n", + E, mat, macro_xs[0], macro_xs[1], macro_xs[2], macro_xs[3] ); + */ + } + + // Debug + /* + printf("E = %.2lf, mat = %d, macro_xs[0] = %.2lf, macro_xs[1] = %.2lf, macro_xs[2] = %.2lf, macro_xs[3] = %.2lf\n", + E, mat, macro_xs[0], macro_xs[1], macro_xs[2], macro_xs[3] ); + */ +} + +// No Temperature dependence (i.e., 0K evaluation) +template +__device__ +void calculate_micro_xs(double * micro_xs, int nuc, double E, int input_numL, + INT_T n_windows, DOUBLE_T pseudo_K0RS, WINDOW_T windows, + POLE_T poles, int max_num_windows, int max_num_poles) +{ + // MicroScopic XS's to Calculate + double sigT; + double sigA; + double sigF; + double sigE; + + // Calculate Window Index + double spacing = 1.0 / n_windows[nuc]; + int window = (int) ( E / spacing ); + if( window == n_windows[nuc] ) + window--; + + // Calculate sigTfactors + RSComplex sigTfactors[4]; // Of length input.numL, which is always 4 + calculate_sig_T(nuc, E, input_numL, pseudo_K0RS, sigTfactors ); + + // Calculate contributions from window "background" (i.e., poles outside window (pre-calculated) + Window w = windows[nuc * max_num_windows + window]; + sigT = E * w.T; + sigA = E * w.A; + sigF = E * w.F; + + // Loop over Poles within window, add contributions + for( int i = w.start; i < w.end; i++ ) + { + RSComplex PSIIKI; + RSComplex CDUM; + Pole pole = poles[nuc * max_num_poles + i]; + RSComplex t1 = {0, 1}; + RSComplex t2 = {sqrt(E), 0 }; + PSIIKI = c_div( t1 , c_sub(pole.MP_EA,t2) ); + RSComplex E_c = {E, 0}; + CDUM = c_div(PSIIKI, E_c); + sigT += (c_mul(pole.MP_RT, c_mul(CDUM, sigTfactors[pole.l_value])) ).r; + sigA += (c_mul( pole.MP_RA, CDUM)).r; + sigF += (c_mul(pole.MP_RF, CDUM)).r; + } + + sigE = sigT - sigA; + + micro_xs[0] = sigT; + micro_xs[1] = sigA; + micro_xs[2] = sigF; + micro_xs[3] = sigE; +} + +// Temperature Dependent Variation of Kernel +// (This involves using the Complex Faddeeva function to +// Doppler broaden the poles within the window) +template +__device__ +void calculate_micro_xs_doppler(double * micro_xs, int nuc, double E, + int input_numL, INT_T n_windows, + DOUBLE_T pseudo_K0RS, WINDOW_T windows, + POLE_T poles, int max_num_windows, int max_num_poles ) +{ + // MicroScopic XS's to Calculate + double sigT; + double sigA; + double sigF; + double sigE; + + // Calculate Window Index + double spacing = 1.0 / n_windows[nuc]; + int window = (int) ( E / spacing ); + if( window == n_windows[nuc] ) + window--; + + // Calculate sigTfactors + RSComplex sigTfactors[4]; // Of length input.numL, which is always 4 + calculate_sig_T(nuc, E, input_numL, pseudo_K0RS, sigTfactors ); + + // Calculate contributions from window "background" (i.e., poles outside window (pre-calculated) + Window w = windows[nuc * max_num_windows + window]; + sigT = E * w.T; + sigA = E * w.A; + sigF = E * w.F; + + double dopp = 0.5; + + // Loop over Poles within window, add contributions + for( int i = w.start; i < w.end; i++ ) + { + Pole pole = poles[nuc * max_num_poles + i]; + + // Prep Z + RSComplex E_c = {E, 0}; + RSComplex dopp_c = {dopp, 0}; + RSComplex Z = c_mul(c_sub(E_c, pole.MP_EA), dopp_c); + + // Evaluate Fadeeva Function + RSComplex faddeeva = fast_nuclear_W( Z ); + + // Update W + sigT += (c_mul( pole.MP_RT, c_mul(faddeeva, sigTfactors[pole.l_value]) )).r; + sigA += (c_mul( pole.MP_RA , faddeeva)).r; + sigF += (c_mul( pole.MP_RF , faddeeva)).r; + } + + sigE = sigT - sigA; + + micro_xs[0] = sigT; + micro_xs[1] = sigA; + micro_xs[2] = sigF; + micro_xs[3] = sigE; +} + +// picks a material based on a probabilistic distribution +__device__ +int pick_mat( uint64_t * seed ) +{ + // I have a nice spreadsheet supporting these numbers. They are + // the fractions (by volume) of material in the core. Not a + // *perfect* approximation of where XS lookups are going to occur, + // but this will do a good job of biasing the system nonetheless. + + double dist[12]; + dist[0] = 0.140; // fuel + dist[1] = 0.052; // cladding + dist[2] = 0.275; // cold, borated water + dist[3] = 0.134; // hot, borated water + dist[4] = 0.154; // RPV + dist[5] = 0.064; // Lower, radial reflector + dist[6] = 0.066; // Upper reflector / top plate + dist[7] = 0.055; // bottom plate + dist[8] = 0.008; // bottom nozzle + dist[9] = 0.015; // top nozzle + dist[10] = 0.025; // top of fuel assemblies + dist[11] = 0.013; // bottom of fuel assemblies + + double roll = LCG_random_double(seed); + + // makes a pick based on the distro + for( int i = 0; i < 12; i++ ) + { + double running = 0; + for( int j = i; j > 0; j-- ) + running += dist[j]; + if( roll < running ) + return i; + } + + return 0; +} + +template +__device__ +void calculate_sig_T( int nuc, double E, int input_numL, DOUBLE_T pseudo_K0RS, RSComplex * sigTfactors ) +{ + double phi; + + for( int i = 0; i < 4; i++ ) + { + phi = pseudo_K0RS[nuc * input_numL + i] * sqrt(E); + + if( i == 1 ) + phi -= - atan( phi ); + else if( i == 2 ) + phi -= atan( 3.0 * phi / (3.0 - phi*phi)); + else if( i == 3 ) + phi -= atan(phi*(15.0-phi*phi)/(15.0-6.0*phi*phi)); + + phi *= 2.0; + + sigTfactors[i].r = cos(phi); + sigTfactors[i].i = -sin(phi); + } +} + +// This function uses a combination of the Abrarov Approximation +// and the QUICK_W three term asymptotic expansion. +// Only expected to use Abrarov ~0.5% of the time. +__device__ +RSComplex fast_nuclear_W( RSComplex Z ) +{ + // Abrarov + if( c_abs(Z) < 6.0 ) + { + // Precomputed parts for speeding things up + // (N = 10, Tm = 12.0) + RSComplex prefactor = {0, 8.124330e+01}; + double an[10] = { + 2.758402e-01, + 2.245740e-01, + 1.594149e-01, + 9.866577e-02, + 5.324414e-02, + 2.505215e-02, + 1.027747e-02, + 3.676164e-03, + 1.146494e-03, + 3.117570e-04 + }; + double neg_1n[10] = { + -1.0, + 1.0, + -1.0, + 1.0, + -1.0, + 1.0, + -1.0, + 1.0, + -1.0, + 1.0 + }; + + double denominator_left[10] = { + 9.869604e+00, + 3.947842e+01, + 8.882644e+01, + 1.579137e+02, + 2.467401e+02, + 3.553058e+02, + 4.836106e+02, + 6.316547e+02, + 7.994380e+02, + 9.869604e+02 + }; + + RSComplex t1 = {0, 12}; + RSComplex t2 = {12, 0}; + RSComplex i = {0,1}; + RSComplex one = {1, 0}; + RSComplex W = c_div(c_mul(i, ( c_sub(one, fast_cexp(c_mul(t1, Z))) )) , c_mul(t2, Z)); + RSComplex sum = {0,0}; + for( int n = 0; n < 10; n++ ) + { + RSComplex t3 = {neg_1n[n], 0}; + RSComplex top = c_sub(c_mul(t3, fast_cexp(c_mul(t1, Z))), one); + RSComplex t4 = {denominator_left[n], 0}; + RSComplex t5 = {144, 0}; + RSComplex bot = c_sub(t4, c_mul(t5,c_mul(Z,Z))); + RSComplex t6 = {an[n], 0}; + sum = c_add(sum, c_mul(t6, c_div(top,bot))); + } + W = c_add(W, c_mul(prefactor, c_mul(Z, sum))); + return W; + } + else + { + // QUICK_2 3 Term Asymptotic Expansion (Accurate to O(1e-6)). + // Pre-computed parameters + RSComplex a = {0.512424224754768462984202823134979415014943561548661637413182,0}; + RSComplex b = {0.275255128608410950901357962647054304017026259671664935783653, 0}; + RSComplex c = {0.051765358792987823963876628425793170829107067780337219430904, 0}; + RSComplex d = {2.724744871391589049098642037352945695982973740328335064216346, 0}; + + RSComplex i = {0,1}; + RSComplex Z2 = c_mul(Z, Z); + // Three Term Asymptotic Expansion + RSComplex W = c_mul(c_mul(Z,i), (c_add(c_div(a,(c_sub(Z2, b))) , c_div(c,(c_sub(Z2, d)))))); + + return W; + } +} + +__host__ __device__ +double LCG_random_double(uint64_t * seed) +{ + const uint64_t m = 9223372036854775808ULL; // 2^63 + const uint64_t a = 2806196910506780709ULL; + const uint64_t c = 1ULL; + *seed = (a * (*seed) + c) % m; + return (double) (*seed) / (double) m; +} + +uint64_t LCG_random_int(uint64_t * seed) +{ + const uint64_t m = 9223372036854775808ULL; // 2^63 + const uint64_t a = 2806196910506780709ULL; + const uint64_t c = 1ULL; + *seed = (a * (*seed) + c) % m; + return *seed; +} + +__device__ +uint64_t fast_forward_LCG(uint64_t seed, uint64_t n) +{ + const uint64_t m = 9223372036854775808ULL; // 2^63 + uint64_t a = 2806196910506780709ULL; + uint64_t c = 1ULL; + + n = n % m; + + uint64_t a_new = 1; + uint64_t c_new = 0; + + while(n > 0) + { + if(n & 1) + { + a_new *= a; + c_new = c_new * a + c; + } + c *= (a + 1); + a *= a; + + n >>= 1; + } + + return (a_new * seed + c_new) % m; +} + +// Complex arithmetic functions + +__device__ +RSComplex c_add( RSComplex A, RSComplex B) +{ + RSComplex C; + C.r = A.r + B.r; + C.i = A.i + B.i; + return C; +} + +__device__ +RSComplex c_sub( RSComplex A, RSComplex B) +{ + RSComplex C; + C.r = A.r - B.r; + C.i = A.i - B.i; + return C; +} + +__host__ __device__ +RSComplex c_mul( RSComplex A, RSComplex B) +{ + double a = A.r; + double b = A.i; + double c = B.r; + double d = B.i; + RSComplex C; + C.r = (a*c) - (b*d); + C.i = (a*d) + (b*c); + return C; +} + +__device__ +RSComplex c_div( RSComplex A, RSComplex B) +{ + double a = A.r; + double b = A.i; + double c = B.r; + double d = B.i; + RSComplex C; + double denom = c*c + d*d; + C.r = ( (a*c) + (b*d) ) / denom; + C.i = ( (b*c) - (a*d) ) / denom; + return C; +} + +__device__ +double c_abs( RSComplex A) +{ + return sqrt(A.r*A.r + A.i * A.i); +} + + +// Fast (but inaccurate) exponential function +// Written By "ACMer": +// https://codingforspeed.com/using-faster-exponential-approximation/ +// We use our own to avoid small differences in compiler specific +// exp() intrinsic implementations that make it difficult to verify +// if the code is working correctly or not. +__device__ +double fast_exp(double x) +{ + x = 1.0 + x * 0.000244140625; + x *= x; x *= x; x *= x; x *= x; + x *= x; x *= x; x *= x; x *= x; + x *= x; x *= x; x *= x; x *= x; + return x; +} + +// Implementation based on: +// z = x + iy +// cexp(z) = e^x * (cos(y) + i * sin(y)) +__device__ +RSComplex fast_cexp( RSComplex z ) +{ + double x = z.r; + double y = z.i; + + // For consistency across architectures, we + // will use our own exponetial implementation + //double t1 = exp(x); + double t1 = fast_exp(x); + double t2 = cos(y); + double t3 = sin(y); + RSComplex t4 = {t2, t3}; + RSComplex t5 = {t1, 0}; + RSComplex result = c_mul(t5, (t4)); + return result; +} diff --git a/benchmarks/cuda/rsbench/utils.cu b/benchmarks/cuda/rsbench/utils.cu new file mode 100644 index 0000000..e06b352 --- /dev/null +++ b/benchmarks/cuda/rsbench/utils.cu @@ -0,0 +1,29 @@ +#include "rsbench.h" + +size_t get_mem_estimate( Input input ) +{ + size_t poles = input.n_nuclides * input.avg_n_poles * sizeof(Pole) + input.n_nuclides * sizeof(Pole *); + size_t windows = input.n_nuclides * input.avg_n_windows * sizeof(Window) + input.n_nuclides * sizeof(Window *); + size_t pseudo_K0RS = input.n_nuclides * input.numL * sizeof( double ) + input.n_nuclides * sizeof(double); + size_t other = input.n_nuclides * 2 * sizeof(int); + + size_t total = poles + windows + pseudo_K0RS + other; + + return total; +} + +double get_time(void) +{ + #ifdef OPENMP + return omp_get_wtime(); + #endif + + struct timeval timecheck; + + gettimeofday(&timecheck, NULL); + long ms = (long)timecheck.tv_sec * 1000 + (long)timecheck.tv_usec / 1000; + + double time = (double) ms / 1000.0; + + return time; +} diff --git a/benchmarks/cuda/sw4ck/LICENSE b/benchmarks/cuda/sw4ck/LICENSE new file mode 100644 index 0000000..9bd56be --- /dev/null +++ b/benchmarks/cuda/sw4ck/LICENSE @@ -0,0 +1,339 @@ +GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + +Copyright (C) 1989, 1991 Free Software Foundation, Inc., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + + Preamble + +The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + +To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + +For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + +We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + +Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + +Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + +The precise terms and conditions for copying, distribution and +modification follow. + +GNU GENERAL PUBLIC LICENSE +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + +1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + +a) You must cause the modified files to carry prominent notices +stating that you changed the files and the date of any change. + +b) You must cause any work that you distribute or publish, that in +whole or in part contains or is derived from the Program or any +part thereof, to be licensed as a whole at no charge to all third +parties under the terms of this License. + +c) If the modified program normally reads commands interactively +when run, you must cause it, when started running for such +interactive use in the most ordinary way, to print or display an +announcement including an appropriate copyright notice and a +notice that there is no warranty (or else, saying that you provide +a warranty) and that users may redistribute the program under +these conditions, and telling the user how to view a copy of this +License. (Exception: if the Program itself is interactive but +does not normally print such an announcement, your work based on +the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + +3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + +a) Accompany it with the complete corresponding machine-readable +source code, which must be distributed under the terms of Sections +1 and 2 above on a medium customarily used for software interchange; or, + +b) Accompany it with a written offer, valid for at least three +years, to give any third party, for a charge no more than your +cost of physically performing source distribution, a complete +machine-readable copy of the corresponding source code, to be +distributed under the terms of Sections 1 and 2 above on a medium +customarily used for software interchange; or, + +c) Accompany it with the information you received as to the offer +to distribute corresponding source code. (This alternative is +allowed only for noncommercial distribution and only if you +received the program in object code or executable form with such +an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + +4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + +5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + +6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + +7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + +8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + +9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + +10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + +11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + +12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + +Copyright (C) + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program; if not, write to the Free Software Foundation, Inc., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + +Gnomovision version 69, Copyright (C) year name of author +Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. +This is free software, and you are welcome to redistribute it +under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + +Yoyodyne, Inc., hereby disclaims all copyright interest in the program +`Gnomovision' (which makes passes at compilers) written by James Hacker. + +, 1 April 1989 +Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/benchmarks/cuda/sw4ck/Makefile b/benchmarks/cuda/sw4ck/Makefile new file mode 100644 index 0000000..c21dc11 --- /dev/null +++ b/benchmarks/cuda/sw4ck/Makefile @@ -0,0 +1,83 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC ?= nvcc +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = +JIT_PATH ?=/p/vast1/koparasy/JIT/jit/build/ +JIT ?= no + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + +program = sw4ck$(SUFFIX).x + +source = main.cu curvilinear4sg.cu + +obj = $(source:.cu=$(SUFFIX).o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := $(EXTRA_CFLAGS) -std=c++14 --cuda-gpu-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia + +# Linker Flags +LDFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3 +endif + +ifeq ($(JIT),yes) + LIBLLVM_PATH=$(dir $(realpath $(CC)))../lib + CFLAGS += -fpass-plugin=$(JIT_PATH)/pass/libProteusJitPass.so -DENABLE_JIT + LDFLAGS += -Wl,-rpath,$(LIBLLVM_PATH) -L$(LIBLLVM_PATH) -lLLVM \ + -Wl,-rpath,$(JIT_PATH)/lib -L$(JIT_PATH)/lib/ -lproteusjit -lnvptxcompiler_static +endif + +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +main$(SUFFIX).o: main.cu utils.cpp utils.h + $(CC) $(CFLAGS) -c $< -o $@ + +curvilinear4sg$(SUFFIX).o : curvilinear4sg.cu \ + kernel1.cpp \ + kernel2.cpp \ + kernel3.cpp \ + kernel4.cpp \ + kernel5.cpp \ + utils.h \ + curvilinear4sg.h + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf *.x *.o + +run: $(program) + $(LAUNCHER) ./$(program) sw4ck.in 100 diff --git a/benchmarks/cuda/sw4ck/curvilinear4sg.cu b/benchmarks/cuda/sw4ck/curvilinear4sg.cu new file mode 100644 index 0000000..2891fba --- /dev/null +++ b/benchmarks/cuda/sw4ck/curvilinear4sg.cu @@ -0,0 +1,109 @@ +#include "curvilinear4sg.h" +#include "kernel1.cpp" +#include "kernel2.cpp" +#include "kernel3.cpp" +#include "kernel4.cpp" +#include "kernel5.cpp" + +void curvilinear4sg_ci( + int ifirst, int ilast, + int jfirst, int jlast, + int kfirst, int klast, + float_sw4* d_u, + float_sw4* d_mu, + float_sw4* d_lambda, + float_sw4* d_met, + float_sw4* d_jac, + float_sw4* d_lu, + int* onesided, + float_sw4* d_acof, + float_sw4* d_bope, + float_sw4* d_ghcof, + float_sw4* d_acof_no_gp, + float_sw4* d_ghcof_no_gp, + float_sw4* d_strx, + float_sw4* d_stry, + int nk, char op) { + + float_sw4 a1 = 0; + float_sw4 sgn = 1; + if (op == '=') { + a1 = 0; + sgn = 1; + } else if (op == '+') { + a1 = 1; + sgn = 1; + } else if (op == '-') { + a1 = 1; + sgn = -1; + } + + int kstart = kfirst + 2; + int kend = klast - 2; + if (onesided[5] == 1) kend = nk - 6; + + if (onesided[4] == 1) { + kstart = 7; + + Range<16> I(ifirst + 2, ilast - 1); + Range<4> J(jfirst + 2, jlast - 1); + Range<3> K(1, 6 + 1); // This was 6 + + dim3 tpb(I.tpb, J.tpb, K.tpb); + dim3 blocks(I.blocks, J.blocks, K.blocks); + + kernel1<<>>( + I.start, I.end, J.start, J.end, K.start, K.end, + ifirst, ilast, jfirst, jlast, kfirst, klast, a1, sgn, + d_u, d_mu, d_lambda, d_met, d_jac, d_lu, + d_acof, d_bope, d_ghcof, d_acof_no_gp, d_ghcof_no_gp, + d_strx, d_stry); + } + + Range<64> I(ifirst + 2, ilast - 1); + Range<2> J(jfirst + 2, jlast - 1); + Range<2> K(kstart, kend + 1); // Changed for CUrvi-MR Was klast-1 + + dim3 tpb(I.tpb, J.tpb, K.tpb); + dim3 blocks(I.blocks, J.blocks, K.blocks); + + kernel2<<>>( + I.start, I.end, J.start, J.end, K.start, K.end, + ifirst, ilast, jfirst, jlast, kfirst, klast, a1, sgn, + d_u, d_mu, d_lambda, d_met, d_jac, d_lu, + d_acof, d_bope, d_ghcof, d_acof_no_gp, d_ghcof_no_gp, + d_strx, d_stry); + + kernel3<<>>( + I.start, I.end, J.start, J.end, K.start, K.end, + ifirst, ilast, jfirst, jlast, kfirst, klast, a1, sgn, + d_u, d_mu, d_lambda, d_met, d_jac, d_lu, + d_acof, d_bope, d_ghcof, d_acof_no_gp, d_ghcof_no_gp, + d_strx, d_stry); + + kernel4<<>>( + I.start, I.end, J.start, J.end, K.start, K.end, + ifirst, ilast, jfirst, jlast, kfirst, klast, a1, sgn, + d_u, d_mu, d_lambda, d_met, d_jac, d_lu, + d_acof, d_bope, d_ghcof, d_acof_no_gp, d_ghcof_no_gp, + d_strx, d_stry); + + + if (onesided[5] == 1) { + Range<16> I(ifirst + 2, ilast - 1); + Range<4> J(jfirst + 2, jlast - 1); + Range<4> K(nk - 5, nk + 1); // THIS WAS 6 + + dim3 tpb(I.tpb, J.tpb, K.tpb); + dim3 blocks(I.blocks, J.blocks, K.blocks); + + kernel5<<>>( + I.start, I.end, J.start, J.end, K.start, K.end, + ifirst, ilast, jfirst, jlast, kfirst, klast, nk, a1, sgn, + d_u, d_mu, d_lambda, d_met, d_jac, d_lu, + d_acof, d_bope, d_ghcof, d_acof_no_gp, d_ghcof_no_gp, + d_strx, d_stry); + } +} + + diff --git a/benchmarks/cuda/sw4ck/curvilinear4sg.h b/benchmarks/cuda/sw4ck/curvilinear4sg.h new file mode 100644 index 0000000..883e04a --- /dev/null +++ b/benchmarks/cuda/sw4ck/curvilinear4sg.h @@ -0,0 +1,51 @@ +#ifndef CURVILINEAR4SG_H +#define CURVILINEAR4SG_H + +#include "utils.h" + +template +class Range { + public: + Range(int istart, int iend) : start(istart), end(iend), tpb(N) { + blocks = (end - start) / N; + blocks = ((end - start) % N == 0) ? blocks : blocks + 1; + invalid = false; + if (blocks <= 0) invalid = true; + }; + int start; + int end; + int blocks; + int tpb; + bool invalid; +}; + + +#define ni (ilast - ifirst + 1) +#define nij (ni * (jlast - jfirst + 1)) +#define nijk (nij * (klast - kfirst + 1)) +#define base (-(ifirst + ni * jfirst + nij * kfirst)) +#define base3 (base - nijk) +#define base4 (base - nijk) +#define ifirst0 (ifirst) +#define jfirst0 (jfirst) + +#define mu(i, j, k) a_mu[base + (i) + ni * (j) + nij * (k)] +#define la(i, j, k) a_lambda[base + (i) + ni * (j) + nij * (k)] +#define jac(i, j, k) a_jac[base + (i) + ni * (j) + nij * (k)] +#define u(c, i, j, k) a_u[base3 + (i) + ni * (j) + nij * (k) + nijk * (c)] +#define lu(c, i, j, k) a_lu[base3 + (i) + ni * (j) + nij * (k) + nijk * (c)] +#define met(c, i, j, k) a_met[base4 + (i) + ni * (j) + nij * (k) + nijk * (c)] +#define strx(i) a_strx[i - ifirst0] +#define stry(j) a_stry[j - jfirst0] +#define acof(i, j, k) a_acof[(i - 1) + 6 * (j - 1) + 48 * (k - 1)] +#define bope(i, j) a_bope[i - 1 + 6 * (j - 1)] +#define ghcof(i) a_ghcof[i - 1] +#define acof_no_gp(i, j, k) a_acof_no_gp[(i - 1) + 6 * (j - 1) + 48 * (k - 1)] +#define ghcof_no_gp(i) a_ghcof_no_gp[i - 1] + +#define i6 ((float_sw4)(1.0 / 6)) +#define tf ((float_sw4)(0.75)) +#define c1 ((float_sw4)(2.0 / 3)) +#define c2 ((float_sw4)(-1.0 / 12)) + +#endif diff --git a/benchmarks/cuda/sw4ck/experiments.json b/benchmarks/cuda/sw4ck/experiments.json new file mode 100644 index 0000000..76aeee3 --- /dev/null +++ b/benchmarks/cuda/sw4ck/experiments.json @@ -0,0 +1,10 @@ +{ + "name": "sw4ck", + "executables": { + "aot": "sw4ck-aot.x", + "jit": "sw4ck-jit.x" + }, + "inputs": { + "default": "sw4ck.in 1000" + } +} diff --git a/benchmarks/cuda/sw4ck/kernel1.cpp b/benchmarks/cuda/sw4ck/kernel1.cpp new file mode 100644 index 0000000..83b58c4 --- /dev/null +++ b/benchmarks/cuda/sw4ck/kernel1.cpp @@ -0,0 +1,662 @@ +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))) +#endif +void kernel1( + const int start0, const int N0, + const int start1, const int N1, + const int start2, const int N2, + const int ifirst, const int ilast, + const int jfirst, const int jlast, + const int kfirst, const int klast, + const float_sw4 a1, const float_sw4 sgn, + const float_sw4* __restrict__ a_u, + const float_sw4* __restrict__ a_mu, + const float_sw4* __restrict__ a_lambda, + const float_sw4* __restrict__ a_met, + const float_sw4* __restrict__ a_jac, + float_sw4* __restrict__ a_lu, + const float_sw4* __restrict__ a_acof, + const float_sw4* __restrict__ a_bope, + const float_sw4* __restrict__ a_ghcof, + const float_sw4* __restrict__ a_acof_no_gp, + const float_sw4* __restrict__ a_ghcof_no_gp, + const float_sw4* __restrict__ a_strx, + const float_sw4* __restrict__ a_stry ) +{ + + int i = start0 + threadIdx.x + blockIdx.x * blockDim.x; + int j = start1 + threadIdx.y + blockIdx.y * blockDim.y; + int k = start2 + threadIdx.z + blockIdx.z * blockDim.z; + if ((i < N0) && (j < N1) && (k < N2)) { + // 5 ops + float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k); + // float_sw4 ijac = 1 / jac(i, j, k); + float_sw4 istry = 1 / (stry(j)); + float_sw4 istrx = 1 / (strx(i)); + float_sw4 istrxy = istry * istrx; + // ijac*=strx(i) * stry(j); + + float_sw4 r1 = 0, r2 = 0, r3 = 0; + + // pp derivative (u) (u-eq) + // 53 ops, tot=58 + float_sw4 cof1 = (2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(1, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2); + float_sw4 cof2 = (2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(1, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1); + float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * strx(i); + float_sw4 cof4 = (2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(1, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1); + float_sw4 cof5 = (2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(1, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2); + + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r1 = r1 + i6 * + (mux1 * (u(1, i - 2, j, k) - u(1, i, j, k)) + + mux2 * (u(1, i - 1, j, k) - u(1, i, j, k)) + + mux3 * (u(1, i + 1, j, k) - u(1, i, j, k)) + + mux4 * (u(1, i + 2, j, k) - u(1, i, j, k))) * + istry; + + // qq derivative (u) (u-eq) + // 43 ops, tot=101 + cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r1 = r1 + i6 * + (mux1 * (u(1, i, j - 2, k) - u(1, i, j, k)) + + mux2 * (u(1, i, j - 1, k) - u(1, i, j, k)) + + mux3 * (u(1, i, j + 1, k) - u(1, i, j, k)) + + mux4 * (u(1, i, j + 2, k) - u(1, i, j, k))) * + istrx; + + // pp derivative (v) (v-eq) + // 43 ops, tot=144 + cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * strx(i - 2); + cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * strx(i - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * strx(i + 1); + cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * strx(i + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 = r2 + i6 * + (mux1 * (u(2, i - 2, j, k) - u(2, i, j, k)) + + mux2 * (u(2, i - 1, j, k) - u(2, i, j, k)) + + mux3 * (u(2, i + 1, j, k) - u(2, i, j, k)) + + mux4 * (u(2, i + 2, j, k) - u(2, i, j, k))) * + istry; + + // qq derivative (v) (v-eq) + // 53 ops, tot=197 + cof1 = (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * + met(1, i, j - 2, k) * met(1, i, j - 2, k) * stry(j - 2); + cof2 = (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * + met(1, i, j - 1, k) * met(1, i, j - 1, k) * stry(j - 1); + cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * stry(j); + cof4 = (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * + met(1, i, j + 1, k) * met(1, i, j + 1, k) * stry(j + 1); + cof5 = (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * + met(1, i, j + 2, k) * met(1, i, j + 2, k) * stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 = r2 + i6 * + (mux1 * (u(2, i, j - 2, k) - u(2, i, j, k)) + + mux2 * (u(2, i, j - 1, k) - u(2, i, j, k)) + + mux3 * (u(2, i, j + 1, k) - u(2, i, j, k)) + + mux4 * (u(2, i, j + 2, k) - u(2, i, j, k))) * + istrx; + + // pp derivative (w) (w-eq) + // 43 ops, tot=240 + cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * strx(i - 2); + cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * strx(i - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * strx(i + 1); + cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * strx(i + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 = r3 + i6 * + (mux1 * (u(3, i - 2, j, k) - u(3, i, j, k)) + + mux2 * (u(3, i - 1, j, k) - u(3, i, j, k)) + + mux3 * (u(3, i + 1, j, k) - u(3, i, j, k)) + + mux4 * (u(3, i + 2, j, k) - u(3, i, j, k))) * + istry; + + // qq derivative (w) (w-eq) + // 43 ops, tot=283 + cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 = r3 + i6 * + (mux1 * (u(3, i, j - 2, k) - u(3, i, j, k)) + + mux2 * (u(3, i, j - 1, k) - u(3, i, j, k)) + + mux3 * (u(3, i, j + 1, k) - u(3, i, j, k)) + + mux4 * (u(3, i, j + 2, k) - u(3, i, j, k))) * + istrx; + + // All rr-derivatives at once + // averaging the coefficient + // 54*8*8+25*8 = 3656 ops, tot=3939 + float_sw4 mucofu2, mucofuv, mucofuw, mucofvw, mucofv2, mucofw2; + //#pragma unroll 1 // slowdown due to register spills + for (int q = 1; q <= 8; q++) { + mucofu2 = 0; + mucofuv = 0; + mucofuw = 0; + mucofvw = 0; + mucofv2 = 0; + mucofw2 = 0; + //#pragma unroll 1 // slowdown due to register spills + for (int m = 1; m <= 8; m++) { + mucofu2 += acof(k, q, m) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) * + strx(i) * met(2, i, j, m) * strx(i) + + mu(i, j, m) * (met(3, i, j, m) * stry(j) * + met(3, i, j, m) * stry(j) + + met(4, i, j, m) * met(4, i, j, m))); + mucofv2 += acof(k, q, m) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(3, i, j, m) * + stry(j) * met(3, i, j, m) * stry(j) + + mu(i, j, m) * (met(2, i, j, m) * strx(i) * + met(2, i, j, m) * strx(i) + + met(4, i, j, m) * met(4, i, j, m))); + mucofw2 += acof(k, q, m) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(4, i, j, m) * + met(4, i, j, m) + + mu(i, j, m) * (met(2, i, j, m) * strx(i) * + met(2, i, j, m) * strx(i) + + met(3, i, j, m) * stry(j) * + met(3, i, j, m) * stry(j))); + mucofuv += acof(k, q, m) * (mu(i, j, m) + la(i, j, m)) * + met(2, i, j, m) * met(3, i, j, m); + mucofuw += acof(k, q, m) * (mu(i, j, m) + la(i, j, m)) * + met(2, i, j, m) * met(4, i, j, m); + mucofvw += acof(k, q, m) * (mu(i, j, m) + la(i, j, m)) * + met(3, i, j, m) * met(4, i, j, m); + } + + // Computing the second derivative, + r1 += istrxy * mucofu2 * u(1, i, j, q) + mucofuv * u(2, i, j, q) + + istry * mucofuw * u(3, i, j, q); + r2 += mucofuv * u(1, i, j, q) + istrxy * mucofv2 * u(2, i, j, q) + + istrx * mucofvw * u(3, i, j, q); + r3 += istry * mucofuw * u(1, i, j, q) + + istrx * mucofvw * u(2, i, j, q) + + istrxy * mucofw2 * u(3, i, j, q); + } + + // Ghost point values, only nonzero for k=1. + // 72 ops., tot=4011 + mucofu2 = + ghcof(k) * ((2 * mu(i, j, 1) + la(i, j, 1)) * met(2, i, j, 1) * + strx(i) * met(2, i, j, 1) * strx(i) + + mu(i, j, 1) * (met(3, i, j, 1) * stry(j) * + met(3, i, j, 1) * stry(j) + + met(4, i, j, 1) * met(4, i, j, 1))); + mucofv2 = + ghcof(k) * ((2 * mu(i, j, 1) + la(i, j, 1)) * met(3, i, j, 1) * + stry(j) * met(3, i, j, 1) * stry(j) + + mu(i, j, 1) * (met(2, i, j, 1) * strx(i) * + met(2, i, j, 1) * strx(i) + + met(4, i, j, 1) * met(4, i, j, 1))); + mucofw2 = + ghcof(k) * + ((2 * mu(i, j, 1) + la(i, j, 1)) * met(4, i, j, 1) * + met(4, i, j, 1) + + mu(i, j, 1) * + (met(2, i, j, 1) * strx(i) * met(2, i, j, 1) * strx(i) + + met(3, i, j, 1) * stry(j) * met(3, i, j, 1) * stry(j))); + mucofuv = ghcof(k) * (mu(i, j, 1) + la(i, j, 1)) * met(2, i, j, 1) * + met(3, i, j, 1); + mucofuw = ghcof(k) * (mu(i, j, 1) + la(i, j, 1)) * met(2, i, j, 1) * + met(4, i, j, 1); + mucofvw = ghcof(k) * (mu(i, j, 1) + la(i, j, 1)) * met(3, i, j, 1) * + met(4, i, j, 1); + r1 += istrxy * mucofu2 * u(1, i, j, 0) + mucofuv * u(2, i, j, 0) + + istry * mucofuw * u(3, i, j, 0); + r2 += mucofuv * u(1, i, j, 0) + istrxy * mucofv2 * u(2, i, j, 0) + + istrx * mucofvw * u(3, i, j, 0); + r3 += istry * mucofuw * u(1, i, j, 0) + + istrx * mucofvw * u(2, i, j, 0) + + istrxy * mucofw2 * u(3, i, j, 0); + + // pq-derivatives (u-eq) + // 38 ops., tot=4049 + r1 += + c2 * + (mu(i, j + 2, k) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i - 2, j + 2, k)) + + c1 * + (u(2, i + 1, j + 2, k) - u(2, i - 1, j + 2, k))) - + mu(i, j - 2, k) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(2, i + 2, j - 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i + 1, j - 2, k) - + u(2, i - 1, j - 2, k)))) + + c1 * + (mu(i, j + 1, k) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * + (c2 * (u(2, i + 2, j + 1, k) - u(2, i - 2, j + 1, k)) + + c1 * + (u(2, i + 1, j + 1, k) - u(2, i - 1, j + 1, k))) - + mu(i, j - 1, k) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(2, i + 2, j - 1, k) - u(2, i - 2, j - 1, k)) + + c1 * + (u(2, i + 1, j - 1, k) - u(2, i - 1, j - 1, k)))); + + // qp-derivatives (u-eq) + // 38 ops. tot=4087 + r1 += + c2 * + (la(i + 2, j, k) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i + 2, j - 2, k)) + + c1 * + (u(2, i + 2, j + 1, k) - u(2, i + 2, j - 1, k))) - + la(i - 2, j, k) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(2, i - 2, j + 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i - 2, j + 1, k) - + u(2, i - 2, j - 1, k)))) + + c1 * + (la(i + 1, j, k) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(2, i + 1, j + 2, k) - u(2, i + 1, j - 2, k)) + + c1 * + (u(2, i + 1, j + 1, k) - u(2, i + 1, j - 1, k))) - + la(i - 1, j, k) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(2, i - 1, j + 2, k) - u(2, i - 1, j - 2, k)) + + c1 * + (u(2, i - 1, j + 1, k) - u(2, i - 1, j - 1, k)))); + + // pq-derivatives (v-eq) + // 38 ops. , tot=4125 + r2 += + c2 * + (la(i, j + 2, k) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i - 2, j + 2, k)) + + c1 * + (u(1, i + 1, j + 2, k) - u(1, i - 1, j + 2, k))) - + la(i, j - 2, k) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(1, i + 2, j - 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i + 1, j - 2, k) - + u(1, i - 1, j - 2, k)))) + + c1 * + (la(i, j + 1, k) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * + (c2 * (u(1, i + 2, j + 1, k) - u(1, i - 2, j + 1, k)) + + c1 * + (u(1, i + 1, j + 1, k) - u(1, i - 1, j + 1, k))) - + la(i, j - 1, k) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(1, i + 2, j - 1, k) - u(1, i - 2, j - 1, k)) + + c1 * + (u(1, i + 1, j - 1, k) - u(1, i - 1, j - 1, k)))); + + //* qp-derivatives (v-eq) + // 38 ops., tot=4163 + r2 += + c2 * + (mu(i + 2, j, k) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i + 2, j - 2, k)) + + c1 * + (u(1, i + 2, j + 1, k) - u(1, i + 2, j - 1, k))) - + mu(i - 2, j, k) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j + 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i - 2, j + 1, k) - + u(1, i - 2, j - 1, k)))) + + c1 * + (mu(i + 1, j, k) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j + 2, k) - u(1, i + 1, j - 2, k)) + + c1 * + (u(1, i + 1, j + 1, k) - u(1, i + 1, j - 1, k))) - + mu(i - 1, j, k) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j + 2, k) - u(1, i - 1, j - 2, k)) + + c1 * + (u(1, i - 1, j + 1, k) - u(1, i - 1, j - 1, k)))); + + // rp - derivatives + // 24*8 = 192 ops, tot=4355 + float_sw4 dudrm2 = 0, dudrm1 = 0, dudrp1 = 0, dudrp2 = 0; + float_sw4 dvdrm2 = 0, dvdrm1 = 0, dvdrp1 = 0, dvdrp2 = 0; + float_sw4 dwdrm2 = 0, dwdrm1 = 0, dwdrp1 = 0, dwdrp2 = 0; + //#pragma unroll 1 + for (int q = 1; q <= 8; q++) { + dudrm2 += bope(k, q) * u(1, i - 2, j, q); + dvdrm2 += bope(k, q) * u(2, i - 2, j, q); + dwdrm2 += bope(k, q) * u(3, i - 2, j, q); + dudrm1 += bope(k, q) * u(1, i - 1, j, q); + dvdrm1 += bope(k, q) * u(2, i - 1, j, q); + dwdrm1 += bope(k, q) * u(3, i - 1, j, q); + dudrp2 += bope(k, q) * u(1, i + 2, j, q); + dvdrp2 += bope(k, q) * u(2, i + 2, j, q); + dwdrp2 += bope(k, q) * u(3, i + 2, j, q); + dudrp1 += bope(k, q) * u(1, i + 1, j, q); + dvdrp1 += bope(k, q) * u(2, i + 1, j, q); + dwdrp1 += bope(k, q) * u(3, i + 1, j, q); + } + + // rp derivatives (u-eq) + // 67 ops, tot=4422 + r1 += (c2 * ((2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(2, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2) * dudrp2 + + la(i + 2, j, k) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * dvdrp2 * stry(j) + + la(i + 2, j, k) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * dwdrp2 - + ((2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(2, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2) * dudrm2 + + la(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * dvdrm2 * stry(j) + + la(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * dwdrm2)) + + c1 * ((2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(2, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1) * dudrp1 + + la(i + 1, j, k) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * dvdrp1 * stry(j) + + la(i + 1, j, k) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * dwdrp1 - + ((2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(2, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1) * dudrm1 + + la(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * dvdrm1 * stry(j) + + la(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * dwdrm1))) * + istry; + + // rp derivatives (v-eq) + // 42 ops, tot=4464 + r2 += + c2 * + (mu(i + 2, j, k) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * dudrp2 + + mu(i + 2, j, k) * met(2, i + 2, j, k) * + met(1, i + 2, j, k) * dvdrp2 * strx(i + 2) * istry - + (mu(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * dudrm2 + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * dvdrm2 * strx(i - 2) * istry)) + + c1 * (mu(i + 1, j, k) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * dudrp1 + + mu(i + 1, j, k) * met(2, i + 1, j, k) * + met(1, i + 1, j, k) * dvdrp1 * strx(i + 1) * istry - + (mu(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * dudrm1 + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * dvdrm1 * strx(i - 1) * istry)); + + // rp derivatives (w-eq) + // 38 ops, tot=4502 + r3 += istry * + (c2 * (mu(i + 2, j, k) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * dudrp2 + + mu(i + 2, j, k) * met(2, i + 2, j, k) * + met(1, i + 2, j, k) * dwdrp2 * strx(i + 2) - + (mu(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * dudrm2 + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * dwdrm2 * strx(i - 2))) + + c1 * (mu(i + 1, j, k) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * dudrp1 + + mu(i + 1, j, k) * met(2, i + 1, j, k) * + met(1, i + 1, j, k) * dwdrp1 * strx(i + 1) - + (mu(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * dudrm1 + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * dwdrm1 * strx(i - 1)))); + + // rq - derivatives + // 24*8 = 192 ops , tot=4694 + + dudrm2 = 0; + dudrm1 = 0; + dudrp1 = 0; + dudrp2 = 0; + dvdrm2 = 0; + dvdrm1 = 0; + dvdrp1 = 0; + dvdrp2 = 0; + dwdrm2 = 0; + dwdrm1 = 0; + dwdrp1 = 0; + dwdrp2 = 0; + //#pragma unroll 1 + for (int q = 1; q <= 8; q++) { + dudrm2 += bope(k, q) * u(1, i, j - 2, q); + dvdrm2 += bope(k, q) * u(2, i, j - 2, q); + dwdrm2 += bope(k, q) * u(3, i, j - 2, q); + dudrm1 += bope(k, q) * u(1, i, j - 1, q); + dvdrm1 += bope(k, q) * u(2, i, j - 1, q); + dwdrm1 += bope(k, q) * u(3, i, j - 1, q); + dudrp2 += bope(k, q) * u(1, i, j + 2, q); + dvdrp2 += bope(k, q) * u(2, i, j + 2, q); + dwdrp2 += bope(k, q) * u(3, i, j + 2, q); + dudrp1 += bope(k, q) * u(1, i, j + 1, q); + dvdrp1 += bope(k, q) * u(2, i, j + 1, q); + dwdrp1 += bope(k, q) * u(3, i, j + 1, q); + } + + // rq derivatives (u-eq) + // 42 ops, tot=4736 + r1 += + c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) * + met(1, i, j + 2, k) * dudrp2 * stry(j + 2) * istrx + + mu(i, j + 2, k) * met(2, i, j + 2, k) * + met(1, i, j + 2, k) * dvdrp2 - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * dudrm2 * stry(j - 2) * istrx + + mu(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * dvdrm2)) + + c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) * + met(1, i, j + 1, k) * dudrp1 * stry(j + 1) * istrx + + mu(i, j + 1, k) * met(2, i, j + 1, k) * + met(1, i, j + 1, k) * dvdrp1 - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * dudrm1 * stry(j - 1) * istrx + + mu(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * dvdrm1)); + + // rq derivatives (v-eq) + // 70 ops, tot=4806 + r2 += c2 * (la(i, j + 2, k) * met(2, i, j + 2, k) * + met(1, i, j + 2, k) * dudrp2 + + (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * + met(3, i, j + 2, k) * met(1, i, j + 2, k) * dvdrp2 * + stry(j + 2) * istrx + + la(i, j + 2, k) * met(4, i, j + 2, k) * + met(1, i, j + 2, k) * dwdrp2 * istrx - + (la(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * dudrm2 + + (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * + met(3, i, j - 2, k) * met(1, i, j - 2, k) * + dvdrm2 * stry(j - 2) * istrx + + la(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * dwdrm2 * istrx)) + + c1 * (la(i, j + 1, k) * met(2, i, j + 1, k) * + met(1, i, j + 1, k) * dudrp1 + + (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * + met(3, i, j + 1, k) * met(1, i, j + 1, k) * dvdrp1 * + stry(j + 1) * istrx + + la(i, j + 1, k) * met(4, i, j + 1, k) * + met(1, i, j + 1, k) * dwdrp1 * istrx - + (la(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * dudrm1 + + (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * + met(3, i, j - 1, k) * met(1, i, j - 1, k) * + dvdrm1 * stry(j - 1) * istrx + + la(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * dwdrm1 * istrx)); + + // rq derivatives (w-eq) + // 39 ops, tot=4845 + r3 += (c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) * + met(1, i, j + 2, k) * dwdrp2 * stry(j + 2) + + mu(i, j + 2, k) * met(4, i, j + 2, k) * + met(1, i, j + 2, k) * dvdrp2 - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * dwdrm2 * stry(j - 2) + + mu(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * dvdrm2)) + + c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) * + met(1, i, j + 1, k) * dwdrp1 * stry(j + 1) + + mu(i, j + 1, k) * met(4, i, j + 1, k) * + met(1, i, j + 1, k) * dvdrp1 - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * dwdrm1 * stry(j - 1) + + mu(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * dvdrm1))) * + istrx; + + // pr and qr derivatives at once + // in loop: 8*(53+53+43) = 1192 ops, tot=6037 + //#pragma unroll 1 + for (int q = 1; q <= 8; q++) { + // (u-eq) + // 53 ops + r1 += bope(k, q) * + ( + // pr + (2 * mu(i, j, q) + la(i, j, q)) * met(2, i, j, q) * + met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) * + strx(i) * istry + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) + + c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) + + mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) + + c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) * + istry + // qr + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) + + c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) * + stry(j) * istrx + + la(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q)))); + + // (v-eq) + // 53 ops + r2 += bope(k, q) * + ( + // pr + la(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) + + c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) * + strx(i) * istry + // qr + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) + + c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) + + (2 * mu(i, j, q) + la(i, j, q)) * met(3, i, j, q) * + met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) * + stry(j) * istrx + + mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) + + c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) * + istrx); + + // (w-eq) + // 43 ops + r3 += bope(k, q) * + ( + // pr + la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) * + istry + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) + + c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) * + strx(i) * istry + // qr + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) + + c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) * + stry(j) * istrx + + la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) * + istrx); + } + + // 12 ops, tot=6049 + lu(1, i, j, k) = a1 * lu(1, i, j, k) + sgn * r1 * ijac; + lu(2, i, j, k) = a1 * lu(2, i, j, k) + sgn * r2 * ijac; + lu(3, i, j, k) = a1 * lu(3, i, j, k) + sgn * r3 * ijac; + } +} + diff --git a/benchmarks/cuda/sw4ck/kernel2.cpp b/benchmarks/cuda/sw4ck/kernel2.cpp new file mode 100644 index 0000000..e481c7d --- /dev/null +++ b/benchmarks/cuda/sw4ck/kernel2.cpp @@ -0,0 +1,428 @@ +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))) +#endif +void kernel2( + const int start0, const int N0, + const int start1, const int N1, + const int start2, const int N2, + const int ifirst, const int ilast, + const int jfirst, const int jlast, + const int kfirst, const int klast, + const float_sw4 a1, float_sw4 sgn, + const float_sw4* __restrict__ a_u, + const float_sw4* __restrict__ a_mu, + const float_sw4* __restrict__ a_lambda, + const float_sw4* __restrict__ a_met, + const float_sw4* __restrict__ a_jac, + float_sw4* __restrict__ a_lu, + const float_sw4* __restrict__ a_acof, + const float_sw4* __restrict__ a_bope, + const float_sw4* __restrict__ a_ghcof, + const float_sw4* __restrict__ a_acof_no_gp, + const float_sw4* __restrict__ a_ghcof_no_gp, + const float_sw4* __restrict__ a_strx, + const float_sw4* __restrict__ a_stry ) +{ + int i = start0 + threadIdx.x + blockIdx.x * blockDim.x; + int j = start1 + threadIdx.y + blockIdx.y * blockDim.y; + int k = start2 + threadIdx.z + blockIdx.z * blockDim.z; + if ((i < N0) && (j < N1) && (k < N2)) { + float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k); + float_sw4 istry = 1 / (stry(j)); + float_sw4 istrx = 1 / (strx(i)); + float_sw4 istrxy = istry * istrx; + + float_sw4 r1 = 0; + + // pp derivative (u) + // 53 ops, tot=58 + float_sw4 cof1 = (2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(1, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2); + float_sw4 cof2 = (2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(1, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1); + float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * strx(i); + float_sw4 cof4 = (2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(1, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1); + float_sw4 cof5 = (2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(1, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2); + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r1 += i6 * + (mux1 * (u(1, i - 2, j, k) - u(1, i, j, k)) + + mux2 * (u(1, i - 1, j, k) - u(1, i, j, k)) + + mux3 * (u(1, i + 1, j, k) - u(1, i, j, k)) + + mux4 * (u(1, i + 2, j, k) - u(1, i, j, k))) * + istry; + // qq derivative (u) + // 43 ops, tot=101 + { + float_sw4 cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + float_sw4 cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + float_sw4 cof3 = + (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + float_sw4 cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + float_sw4 cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r1 += i6 * + (mux1 * (u(1, i, j - 2, k) - u(1, i, j, k)) + + mux2 * (u(1, i, j - 1, k) - u(1, i, j, k)) + + mux3 * (u(1, i, j + 1, k) - u(1, i, j, k)) + + mux4 * (u(1, i, j + 2, k) - u(1, i, j, k))) * + istrx; + } + // rr derivative (u) + // 5*11+14+14=83 ops, tot=184 + { + float_sw4 cof1 = + (2 * mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) * + strx(i) * met(2, i, j, k - 2) * strx(i) + + mu(i, j, k - 2) * (met(3, i, j, k - 2) * stry(j) * + met(3, i, j, k - 2) * stry(j) + + met(4, i, j, k - 2) * met(4, i, j, k - 2)); + float_sw4 cof2 = + (2 * mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) * + strx(i) * met(2, i, j, k - 1) * strx(i) + + mu(i, j, k - 1) * (met(3, i, j, k - 1) * stry(j) * + met(3, i, j, k - 1) * stry(j) + + met(4, i, j, k - 1) * met(4, i, j, k - 1)); + float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * + strx(i) * met(2, i, j, k) * strx(i) + + mu(i, j, k) * (met(3, i, j, k) * stry(j) * + met(3, i, j, k) * stry(j) + + met(4, i, j, k) * met(4, i, j, k)); + float_sw4 cof4 = + (2 * mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) * + strx(i) * met(2, i, j, k + 1) * strx(i) + + mu(i, j, k + 1) * (met(3, i, j, k + 1) * stry(j) * + met(3, i, j, k + 1) * stry(j) + + met(4, i, j, k + 1) * met(4, i, j, k + 1)); + float_sw4 cof5 = + (2 * mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) * + strx(i) * met(2, i, j, k + 2) * strx(i) + + mu(i, j, k + 2) * (met(3, i, j, k + 2) * stry(j) * + met(3, i, j, k + 2) * stry(j) + + met(4, i, j, k + 2) * met(4, i, j, k + 2)); + + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r1 += i6 * + (mux1 * (u(1, i, j, k - 2) - u(1, i, j, k)) + + mux2 * (u(1, i, j, k - 1) - u(1, i, j, k)) + + mux3 * (u(1, i, j, k + 1) - u(1, i, j, k)) + + mux4 * (u(1, i, j, k + 2) - u(1, i, j, k))) * + istrxy; + } + // rr derivative (v) + // 42 ops, tot=226 + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) * + met(3, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) * + met(3, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(3, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) * + met(3, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) * + met(3, i, j, k + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r1 += i6 * (mux1 * (u(2, i, j, k - 2) - u(2, i, j, k)) + + mux2 * (u(2, i, j, k - 1) - u(2, i, j, k)) + + mux3 * (u(2, i, j, k + 1) - u(2, i, j, k)) + + mux4 * (u(2, i, j, k + 2) - u(2, i, j, k))); + + // rr derivative (w) + // 43 ops, tot=269 + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) * + met(4, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) * + met(4, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(4, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) * + met(4, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) * + met(4, i, j, k + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r1 += i6 * + (mux1 * (u(3, i, j, k - 2) - u(3, i, j, k)) + + mux2 * (u(3, i, j, k - 1) - u(3, i, j, k)) + + mux3 * (u(3, i, j, k + 1) - u(3, i, j, k)) + + mux4 * (u(3, i, j, k + 2) - u(3, i, j, k))) * + istry; + + // pq-derivatives + // 38 ops, tot=307 + r1 += + c2 * + (mu(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i - 2, j + 2, k)) + + c1 * (u(2, i + 1, j + 2, k) - u(2, i - 1, j + 2, k))) - + mu(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + (c2 * (u(2, i + 2, j - 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i + 1, j - 2, k) - u(2, i - 1, j - 2, k)))) + + c1 * + (mu(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(2, i + 2, j + 1, k) - u(2, i - 2, j + 1, k)) + + c1 * (u(2, i + 1, j + 1, k) - u(2, i - 1, j + 1, k))) - + mu(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + (c2 * (u(2, i + 2, j - 1, k) - u(2, i - 2, j - 1, k)) + + c1 * (u(2, i + 1, j - 1, k) - u(2, i - 1, j - 1, k)))); + + // qp-derivatives + // 38 ops, tot=345 + r1 += + c2 * + (la(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i + 2, j - 2, k)) + + c1 * (u(2, i + 2, j + 1, k) - u(2, i + 2, j - 1, k))) - + la(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + (c2 * (u(2, i - 2, j + 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i - 2, j + 1, k) - u(2, i - 2, j - 1, k)))) + + c1 * + (la(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(2, i + 1, j + 2, k) - u(2, i + 1, j - 2, k)) + + c1 * (u(2, i + 1, j + 1, k) - u(2, i + 1, j - 1, k))) - + la(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + (c2 * (u(2, i - 1, j + 2, k) - u(2, i - 1, j - 2, k)) + + c1 * (u(2, i - 1, j + 1, k) - u(2, i - 1, j - 1, k)))); + + // pr-derivatives + // 130 ops., tot=475 + r1 += + c2 * + ((2 * mu(i, j, k + 2) + la(i, j, k + 2)) * + met(2, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(1, i + 2, j, k + 2) - u(1, i - 2, j, k + 2)) + + c1 * (u(1, i + 1, j, k + 2) - u(1, i - 1, j, k + 2))) * + strx(i) * istry + + mu(i, j, k + 2) * met(3, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(2, i + 2, j, k + 2) - u(2, i - 2, j, k + 2)) + + c1 * (u(2, i + 1, j, k + 2) - u(2, i - 1, j, k + 2))) + + mu(i, j, k + 2) * met(4, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(3, i + 2, j, k + 2) - u(3, i - 2, j, k + 2)) + + c1 * (u(3, i + 1, j, k + 2) - u(3, i - 1, j, k + 2))) * + istry - + ((2 * mu(i, j, k - 2) + la(i, j, k - 2)) * + met(2, i, j, k - 2) * met(1, i, j, k - 2) * + (c2 * (u(1, i + 2, j, k - 2) - u(1, i - 2, j, k - 2)) + + c1 * (u(1, i + 1, j, k - 2) - u(1, i - 1, j, k - 2))) * + strx(i) * istry + + mu(i, j, k - 2) * met(3, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(2, i + 2, j, k - 2) - u(2, i - 2, j, k - 2)) + + c1 * (u(2, i + 1, j, k - 2) - u(2, i - 1, j, k - 2))) + + mu(i, j, k - 2) * met(4, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(3, i + 2, j, k - 2) - u(3, i - 2, j, k - 2)) + + c1 * (u(3, i + 1, j, k - 2) - u(3, i - 1, j, k - 2))) * + istry)) + + c1 * + ((2 * mu(i, j, k + 1) + la(i, j, k + 1)) * + met(2, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(1, i + 2, j, k + 1) - u(1, i - 2, j, k + 1)) + + c1 * (u(1, i + 1, j, k + 1) - u(1, i - 1, j, k + 1))) * + strx(i) * istry + + mu(i, j, k + 1) * met(3, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(2, i + 2, j, k + 1) - u(2, i - 2, j, k + 1)) + + c1 * (u(2, i + 1, j, k + 1) - u(2, i - 1, j, k + 1))) + + mu(i, j, k + 1) * met(4, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(3, i + 2, j, k + 1) - u(3, i - 2, j, k + 1)) + + c1 * (u(3, i + 1, j, k + 1) - u(3, i - 1, j, k + 1))) * + istry - + ((2 * mu(i, j, k - 1) + la(i, j, k - 1)) * + met(2, i, j, k - 1) * met(1, i, j, k - 1) * + (c2 * (u(1, i + 2, j, k - 1) - u(1, i - 2, j, k - 1)) + + c1 * (u(1, i + 1, j, k - 1) - u(1, i - 1, j, k - 1))) * + strx(i) * istry + + mu(i, j, k - 1) * met(3, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(2, i + 2, j, k - 1) - u(2, i - 2, j, k - 1)) + + c1 * (u(2, i + 1, j, k - 1) - u(2, i - 1, j, k - 1))) + + mu(i, j, k - 1) * met(4, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(3, i + 2, j, k - 1) - u(3, i - 2, j, k - 1)) + + c1 * (u(3, i + 1, j, k - 1) - u(3, i - 1, j, k - 1))) * + istry)); + + // rp derivatives + // 130 ops, tot=605 + r1 += + (c2 * + ((2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(2, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j, k + 2) - u(1, i + 2, j, k - 2)) + + c1 * (u(1, i + 2, j, k + 1) - u(1, i + 2, j, k - 1))) * + strx(i + 2) + + la(i + 2, j, k) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(2, i + 2, j, k + 2) - u(2, i + 2, j, k - 2)) + + c1 * (u(2, i + 2, j, k + 1) - u(2, i + 2, j, k - 1))) * + stry(j) + + la(i + 2, j, k) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(3, i + 2, j, k + 2) - u(3, i + 2, j, k - 2)) + + c1 * (u(3, i + 2, j, k + 1) - u(3, i + 2, j, k - 1))) - + ((2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(2, i - 2, j, k) * met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j, k + 2) - u(1, i - 2, j, k - 2)) + + c1 * + (u(1, i - 2, j, k + 1) - u(1, i - 2, j, k - 1))) * + strx(i - 2) + + la(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(2, i - 2, j, k + 2) - u(2, i - 2, j, k - 2)) + + c1 * + (u(2, i - 2, j, k + 1) - u(2, i - 2, j, k - 1))) * + stry(j) + + la(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(3, i - 2, j, k + 2) - u(3, i - 2, j, k - 2)) + + c1 * (u(3, i - 2, j, k + 1) - + u(3, i - 2, j, k - 1))))) + + c1 * + ((2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(2, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j, k + 2) - u(1, i + 1, j, k - 2)) + + c1 * (u(1, i + 1, j, k + 1) - u(1, i + 1, j, k - 1))) * + strx(i + 1) + + la(i + 1, j, k) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(2, i + 1, j, k + 2) - u(2, i + 1, j, k - 2)) + + c1 * (u(2, i + 1, j, k + 1) - u(2, i + 1, j, k - 1))) * + stry(j) + + la(i + 1, j, k) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(3, i + 1, j, k + 2) - u(3, i + 1, j, k - 2)) + + c1 * (u(3, i + 1, j, k + 1) - u(3, i + 1, j, k - 1))) - + ((2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(2, i - 1, j, k) * met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j, k + 2) - u(1, i - 1, j, k - 2)) + + c1 * + (u(1, i - 1, j, k + 1) - u(1, i - 1, j, k - 1))) * + strx(i - 1) + + la(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(2, i - 1, j, k + 2) - u(2, i - 1, j, k - 2)) + + c1 * + (u(2, i - 1, j, k + 1) - u(2, i - 1, j, k - 1))) * + stry(j) + + la(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(3, i - 1, j, k + 2) - u(3, i - 1, j, k - 2)) + + c1 * (u(3, i - 1, j, k + 1) - + u(3, i - 1, j, k - 1)))))) * + istry; + + // qr derivatives + // 82 ops, tot=687 + r1 += + c2 * + (mu(i, j, k + 2) * met(3, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j - 2, k + 2)) + + c1 * (u(1, i, j + 1, k + 2) - u(1, i, j - 1, k + 2))) * + stry(j) * istrx + + la(i, j, k + 2) * met(2, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j - 2, k + 2)) + + c1 * (u(2, i, j + 1, k + 2) - u(2, i, j - 1, k + 2))) - + (mu(i, j, k - 2) * met(3, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(1, i, j + 2, k - 2) - u(1, i, j - 2, k - 2)) + + c1 * (u(1, i, j + 1, k - 2) - u(1, i, j - 1, k - 2))) * + stry(j) * istrx + + la(i, j, k - 2) * met(2, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(2, i, j + 2, k - 2) - u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j + 1, k - 2) - + u(2, i, j - 1, k - 2))))) + + c1 * + (mu(i, j, k + 1) * met(3, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(1, i, j + 2, k + 1) - u(1, i, j - 2, k + 1)) + + c1 * (u(1, i, j + 1, k + 1) - u(1, i, j - 1, k + 1))) * + stry(j) * istrx + + la(i, j, k + 1) * met(2, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(2, i, j + 2, k + 1) - u(2, i, j - 2, k + 1)) + + c1 * (u(2, i, j + 1, k + 1) - u(2, i, j - 1, k + 1))) - + (mu(i, j, k - 1) * met(3, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(1, i, j + 2, k - 1) - u(1, i, j - 2, k - 1)) + + c1 * (u(1, i, j + 1, k - 1) - u(1, i, j - 1, k - 1))) * + stry(j) * istrx + + la(i, j, k - 1) * met(2, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(2, i, j + 2, k - 1) - u(2, i, j - 2, k - 1)) + + c1 * + (u(2, i, j + 1, k - 1) - u(2, i, j - 1, k - 1))))); + + // rq derivatives + // 82 ops, tot=769 + r1 += + c2 * + (mu(i, j + 2, k) * met(3, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j + 2, k - 2)) + + c1 * (u(1, i, j + 2, k + 1) - u(1, i, j + 2, k - 1))) * + stry(j + 2) * istrx + + mu(i, j + 2, k) * met(2, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j + 2, k - 2)) + + c1 * (u(2, i, j + 2, k + 1) - u(2, i, j + 2, k - 1))) - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(1, i, j - 2, k + 2) - u(1, i, j - 2, k - 2)) + + c1 * (u(1, i, j - 2, k + 1) - u(1, i, j - 2, k - 1))) * + stry(j - 2) * istrx + + mu(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(2, i, j - 2, k + 2) - u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j - 2, k + 1) - + u(2, i, j - 2, k - 1))))) + + c1 * + (mu(i, j + 1, k) * met(3, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(1, i, j + 1, k + 2) - u(1, i, j + 1, k - 2)) + + c1 * (u(1, i, j + 1, k + 1) - u(1, i, j + 1, k - 1))) * + stry(j + 1) * istrx + + mu(i, j + 1, k) * met(2, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(2, i, j + 1, k + 2) - u(2, i, j + 1, k - 2)) + + c1 * (u(2, i, j + 1, k + 1) - u(2, i, j + 1, k - 1))) - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(1, i, j - 1, k + 2) - u(1, i, j - 1, k - 2)) + + c1 * (u(1, i, j - 1, k + 1) - u(1, i, j - 1, k - 1))) * + stry(j - 1) * istrx + + mu(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(2, i, j - 1, k + 2) - u(2, i, j - 1, k - 2)) + + c1 * + (u(2, i, j - 1, k + 1) - u(2, i, j - 1, k - 1))))); + + // 4 ops, tot=773 + lu(1, i, j, k) = a1 * lu(1, i, j, k) + sgn * r1 * ijac; + } +} + diff --git a/benchmarks/cuda/sw4ck/kernel3.cpp b/benchmarks/cuda/sw4ck/kernel3.cpp new file mode 100644 index 0000000..b959afc --- /dev/null +++ b/benchmarks/cuda/sw4ck/kernel3.cpp @@ -0,0 +1,412 @@ +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))) +#endif +void kernel3( + const int start0, const int N0, + const int start1, const int N1, + const int start2, const int N2, + const int ifirst, const int ilast, + const int jfirst, const int jlast, + const int kfirst, const int klast, + const float_sw4 a1, const float_sw4 sgn, + const float_sw4* __restrict__ a_u, + const float_sw4* __restrict__ a_mu, + const float_sw4* __restrict__ a_lambda, + const float_sw4* __restrict__ a_met, + const float_sw4* __restrict__ a_jac, + float_sw4* __restrict__ a_lu, + const float_sw4* __restrict__ a_acof, + const float_sw4* __restrict__ a_bope, + const float_sw4* __restrict__ a_ghcof, + const float_sw4* __restrict__ a_acof_no_gp, + const float_sw4* __restrict__ a_ghcof_no_gp, + const float_sw4* __restrict__ a_strx, + const float_sw4* __restrict__ a_stry ) +{ + int i = start0 + threadIdx.x + blockIdx.x * blockDim.x; + int j = start1 + threadIdx.y + blockIdx.y * blockDim.y; + int k = start2 + threadIdx.z + blockIdx.z * blockDim.z; + if ((i < N0) && (j < N1) && (k < N2)) { + float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k); + float_sw4 istry = 1 / (stry(j)); + float_sw4 istrx = 1 / (strx(i)); + float_sw4 istrxy = istry * istrx; + + float_sw4 r2 = 0; + // v-equation + + // r1 = 0; + // pp derivative (v) + // 43 ops, tot=816 + float_sw4 cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * strx(i - 2); + float_sw4 cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * strx(i - 1); + float_sw4 cof3 = + (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + float_sw4 cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * strx(i + 1); + float_sw4 cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * strx(i + 2); + + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r2 += i6 * + (mux1 * (u(2, i - 2, j, k) - u(2, i, j, k)) + + mux2 * (u(2, i - 1, j, k) - u(2, i, j, k)) + + mux3 * (u(2, i + 1, j, k) - u(2, i, j, k)) + + mux4 * (u(2, i + 2, j, k) - u(2, i, j, k))) * + istry; + + // qq derivative (v) + // 53 ops, tot=869 + cof1 = (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + cof2 = (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * stry(j); + cof4 = (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + cof5 = (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 += i6 * + (mux1 * (u(2, i, j - 2, k) - u(2, i, j, k)) + + mux2 * (u(2, i, j - 1, k) - u(2, i, j, k)) + + mux3 * (u(2, i, j + 1, k) - u(2, i, j, k)) + + mux4 * (u(2, i, j + 2, k) - u(2, i, j, k))) * + istrx; + + // rr derivative (u) + // 42 ops, tot=911 + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) * + met(3, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) * + met(3, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(3, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) * + met(3, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) * + met(3, i, j, k + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 += i6 * (mux1 * (u(1, i, j, k - 2) - u(1, i, j, k)) + + mux2 * (u(1, i, j, k - 1) - u(1, i, j, k)) + + mux3 * (u(1, i, j, k + 1) - u(1, i, j, k)) + + mux4 * (u(1, i, j, k + 2) - u(1, i, j, k))); + + // rr derivative (v) + // 83 ops, tot=994 + cof1 = (2 * mu(i, j, k - 2) + la(i, j, k - 2)) * met(3, i, j, k - 2) * + stry(j) * met(3, i, j, k - 2) * stry(j) + + mu(i, j, k - 2) * (met(2, i, j, k - 2) * strx(i) * + met(2, i, j, k - 2) * strx(i) + + met(4, i, j, k - 2) * met(4, i, j, k - 2)); + cof2 = (2 * mu(i, j, k - 1) + la(i, j, k - 1)) * met(3, i, j, k - 1) * + stry(j) * met(3, i, j, k - 1) * stry(j) + + mu(i, j, k - 1) * (met(2, i, j, k - 1) * strx(i) * + met(2, i, j, k - 1) * strx(i) + + met(4, i, j, k - 1) * met(4, i, j, k - 1)); + cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(3, i, j, k) * stry(j) * + met(3, i, j, k) * stry(j) + + mu(i, j, k) * + (met(2, i, j, k) * strx(i) * met(2, i, j, k) * strx(i) + + met(4, i, j, k) * met(4, i, j, k)); + cof4 = (2 * mu(i, j, k + 1) + la(i, j, k + 1)) * met(3, i, j, k + 1) * + stry(j) * met(3, i, j, k + 1) * stry(j) + + mu(i, j, k + 1) * (met(2, i, j, k + 1) * strx(i) * + met(2, i, j, k + 1) * strx(i) + + met(4, i, j, k + 1) * met(4, i, j, k + 1)); + cof5 = (2 * mu(i, j, k + 2) + la(i, j, k + 2)) * met(3, i, j, k + 2) * + stry(j) * met(3, i, j, k + 2) * stry(j) + + mu(i, j, k + 2) * (met(2, i, j, k + 2) * strx(i) * + met(2, i, j, k + 2) * strx(i) + + met(4, i, j, k + 2) * met(4, i, j, k + 2)); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 += i6 * + (mux1 * (u(2, i, j, k - 2) - u(2, i, j, k)) + + mux2 * (u(2, i, j, k - 1) - u(2, i, j, k)) + + mux3 * (u(2, i, j, k + 1) - u(2, i, j, k)) + + mux4 * (u(2, i, j, k + 2) - u(2, i, j, k))) * + istrxy; + + // rr derivative (w) + // 43 ops, tot=1037 + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(3, i, j, k - 2) * + met(4, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(3, i, j, k - 1) * + met(4, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(3, i, j, k) * met(4, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(3, i, j, k + 1) * + met(4, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(3, i, j, k + 2) * + met(4, i, j, k + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 += i6 * + (mux1 * (u(3, i, j, k - 2) - u(3, i, j, k)) + + mux2 * (u(3, i, j, k - 1) - u(3, i, j, k)) + + mux3 * (u(3, i, j, k + 1) - u(3, i, j, k)) + + mux4 * (u(3, i, j, k + 2) - u(3, i, j, k))) * + istrx; + + // pq-derivatives + // 38 ops, tot=1075 + r2 += + c2 * + (la(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i - 2, j + 2, k)) + + c1 * (u(1, i + 1, j + 2, k) - u(1, i - 1, j + 2, k))) - + la(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + (c2 * (u(1, i + 2, j - 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i + 1, j - 2, k) - u(1, i - 1, j - 2, k)))) + + c1 * + (la(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(1, i + 2, j + 1, k) - u(1, i - 2, j + 1, k)) + + c1 * (u(1, i + 1, j + 1, k) - u(1, i - 1, j + 1, k))) - + la(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + (c2 * (u(1, i + 2, j - 1, k) - u(1, i - 2, j - 1, k)) + + c1 * (u(1, i + 1, j - 1, k) - u(1, i - 1, j - 1, k)))); + + // qp-derivatives + // 38 ops, tot=1113 + r2 += + c2 * + (mu(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i + 2, j - 2, k)) + + c1 * (u(1, i + 2, j + 1, k) - u(1, i + 2, j - 1, k))) - + mu(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j + 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i - 2, j + 1, k) - u(1, i - 2, j - 1, k)))) + + c1 * + (mu(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j + 2, k) - u(1, i + 1, j - 2, k)) + + c1 * (u(1, i + 1, j + 1, k) - u(1, i + 1, j - 1, k))) - + mu(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j + 2, k) - u(1, i - 1, j - 2, k)) + + c1 * (u(1, i - 1, j + 1, k) - u(1, i - 1, j - 1, k)))); + + // pr-derivatives + // 82 ops, tot=1195 + r2 += + c2 * + ((la(i, j, k + 2)) * met(3, i, j, k + 2) * + met(1, i, j, k + 2) * + (c2 * (u(1, i + 2, j, k + 2) - u(1, i - 2, j, k + 2)) + + c1 * (u(1, i + 1, j, k + 2) - u(1, i - 1, j, k + 2))) + + mu(i, j, k + 2) * met(2, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(2, i + 2, j, k + 2) - u(2, i - 2, j, k + 2)) + + c1 * (u(2, i + 1, j, k + 2) - u(2, i - 1, j, k + 2))) * + strx(i) * istry - + ((la(i, j, k - 2)) * met(3, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(1, i + 2, j, k - 2) - u(1, i - 2, j, k - 2)) + + c1 * (u(1, i + 1, j, k - 2) - u(1, i - 1, j, k - 2))) + + mu(i, j, k - 2) * met(2, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(2, i + 2, j, k - 2) - u(2, i - 2, j, k - 2)) + + c1 * (u(2, i + 1, j, k - 2) - u(2, i - 1, j, k - 2))) * + strx(i) * istry)) + + c1 * + ((la(i, j, k + 1)) * met(3, i, j, k + 1) * + met(1, i, j, k + 1) * + (c2 * (u(1, i + 2, j, k + 1) - u(1, i - 2, j, k + 1)) + + c1 * (u(1, i + 1, j, k + 1) - u(1, i - 1, j, k + 1))) + + mu(i, j, k + 1) * met(2, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(2, i + 2, j, k + 1) - u(2, i - 2, j, k + 1)) + + c1 * (u(2, i + 1, j, k + 1) - u(2, i - 1, j, k + 1))) * + strx(i) * istry - + (la(i, j, k - 1) * met(3, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(1, i + 2, j, k - 1) - u(1, i - 2, j, k - 1)) + + c1 * (u(1, i + 1, j, k - 1) - u(1, i - 1, j, k - 1))) + + mu(i, j, k - 1) * met(2, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(2, i + 2, j, k - 1) - u(2, i - 2, j, k - 1)) + + c1 * (u(2, i + 1, j, k - 1) - u(2, i - 1, j, k - 1))) * + strx(i) * istry)); + + // rp derivatives + // 82 ops, tot=1277 + r2 += + c2 * + ((mu(i + 2, j, k)) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j, k + 2) - u(1, i + 2, j, k - 2)) + + c1 * (u(1, i + 2, j, k + 1) - u(1, i + 2, j, k - 1))) + + mu(i + 2, j, k) * met(2, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(2, i + 2, j, k + 2) - u(2, i + 2, j, k - 2)) + + c1 * (u(2, i + 2, j, k + 1) - u(2, i + 2, j, k - 1))) * + strx(i + 2) * istry - + (mu(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j, k + 2) - u(1, i - 2, j, k - 2)) + + c1 * (u(1, i - 2, j, k + 1) - u(1, i - 2, j, k - 1))) + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(2, i - 2, j, k + 2) - u(2, i - 2, j, k - 2)) + + c1 * (u(2, i - 2, j, k + 1) - u(2, i - 2, j, k - 1))) * + strx(i - 2) * istry)) + + c1 * + ((mu(i + 1, j, k)) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j, k + 2) - u(1, i + 1, j, k - 2)) + + c1 * (u(1, i + 1, j, k + 1) - u(1, i + 1, j, k - 1))) + + mu(i + 1, j, k) * met(2, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(2, i + 1, j, k + 2) - u(2, i + 1, j, k - 2)) + + c1 * (u(2, i + 1, j, k + 1) - u(2, i + 1, j, k - 1))) * + strx(i + 1) * istry - + (mu(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j, k + 2) - u(1, i - 1, j, k - 2)) + + c1 * (u(1, i - 1, j, k + 1) - u(1, i - 1, j, k - 1))) + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(2, i - 1, j, k + 2) - u(2, i - 1, j, k - 2)) + + c1 * (u(2, i - 1, j, k + 1) - u(2, i - 1, j, k - 1))) * + strx(i - 1) * istry)); + + // qr derivatives + // 130 ops, tot=1407 + r2 += + c2 * + (mu(i, j, k + 2) * met(2, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j - 2, k + 2)) + + c1 * (u(1, i, j + 1, k + 2) - u(1, i, j - 1, k + 2))) + + (2 * mu(i, j, k + 2) + la(i, j, k + 2)) * + met(3, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j - 2, k + 2)) + + c1 * (u(2, i, j + 1, k + 2) - u(2, i, j - 1, k + 2))) * + stry(j) * istrx + + mu(i, j, k + 2) * met(4, i, j, k + 2) * met(1, i, j, k + 2) * + (c2 * (u(3, i, j + 2, k + 2) - u(3, i, j - 2, k + 2)) + + c1 * (u(3, i, j + 1, k + 2) - u(3, i, j - 1, k + 2))) * + istrx - + (mu(i, j, k - 2) * met(2, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(1, i, j + 2, k - 2) - u(1, i, j - 2, k - 2)) + + c1 * (u(1, i, j + 1, k - 2) - u(1, i, j - 1, k - 2))) + + (2 * mu(i, j, k - 2) + la(i, j, k - 2)) * + met(3, i, j, k - 2) * met(1, i, j, k - 2) * + (c2 * (u(2, i, j + 2, k - 2) - u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j + 1, k - 2) - u(2, i, j - 1, k - 2))) * + stry(j) * istrx + + mu(i, j, k - 2) * met(4, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * (u(3, i, j + 2, k - 2) - u(3, i, j - 2, k - 2)) + + c1 * (u(3, i, j + 1, k - 2) - u(3, i, j - 1, k - 2))) * + istrx)) + + c1 * + (mu(i, j, k + 1) * met(2, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(1, i, j + 2, k + 1) - u(1, i, j - 2, k + 1)) + + c1 * (u(1, i, j + 1, k + 1) - u(1, i, j - 1, k + 1))) + + (2 * mu(i, j, k + 1) + la(i, j, k + 1)) * + met(3, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(2, i, j + 2, k + 1) - u(2, i, j - 2, k + 1)) + + c1 * (u(2, i, j + 1, k + 1) - u(2, i, j - 1, k + 1))) * + stry(j) * istrx + + mu(i, j, k + 1) * met(4, i, j, k + 1) * met(1, i, j, k + 1) * + (c2 * (u(3, i, j + 2, k + 1) - u(3, i, j - 2, k + 1)) + + c1 * (u(3, i, j + 1, k + 1) - u(3, i, j - 1, k + 1))) * + istrx - + (mu(i, j, k - 1) * met(2, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(1, i, j + 2, k - 1) - u(1, i, j - 2, k - 1)) + + c1 * (u(1, i, j + 1, k - 1) - u(1, i, j - 1, k - 1))) + + (2 * mu(i, j, k - 1) + la(i, j, k - 1)) * + met(3, i, j, k - 1) * met(1, i, j, k - 1) * + (c2 * (u(2, i, j + 2, k - 1) - u(2, i, j - 2, k - 1)) + + c1 * (u(2, i, j + 1, k - 1) - u(2, i, j - 1, k - 1))) * + stry(j) * istrx + + mu(i, j, k - 1) * met(4, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * (u(3, i, j + 2, k - 1) - u(3, i, j - 2, k - 1)) + + c1 * (u(3, i, j + 1, k - 1) - u(3, i, j - 1, k - 1))) * + istrx)); + + // rq derivatives + // 130 ops, tot=1537 + r2 += + c2 * + (la(i, j + 2, k) * met(2, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(1, i, j + 2, k + 2) - u(1, i, j + 2, k - 2)) + + c1 * (u(1, i, j + 2, k + 1) - u(1, i, j + 2, k - 1))) + + (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * + met(3, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j + 2, k - 2)) + + c1 * (u(2, i, j + 2, k + 1) - u(2, i, j + 2, k - 1))) * + stry(j + 2) * istrx + + la(i, j + 2, k) * met(4, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(3, i, j + 2, k + 2) - u(3, i, j + 2, k - 2)) + + c1 * (u(3, i, j + 2, k + 1) - u(3, i, j + 2, k - 1))) * + istrx - + (la(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(1, i, j - 2, k + 2) - u(1, i, j - 2, k - 2)) + + c1 * (u(1, i, j - 2, k + 1) - u(1, i, j - 2, k - 1))) + + (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * + met(3, i, j - 2, k) * met(1, i, j - 2, k) * + (c2 * (u(2, i, j - 2, k + 2) - u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j - 2, k + 1) - u(2, i, j - 2, k - 1))) * + stry(j - 2) * istrx + + la(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(3, i, j - 2, k + 2) - u(3, i, j - 2, k - 2)) + + c1 * (u(3, i, j - 2, k + 1) - u(3, i, j - 2, k - 1))) * + istrx)) + + c1 * + (la(i, j + 1, k) * met(2, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(1, i, j + 1, k + 2) - u(1, i, j + 1, k - 2)) + + c1 * (u(1, i, j + 1, k + 1) - u(1, i, j + 1, k - 1))) + + (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * + met(3, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(2, i, j + 1, k + 2) - u(2, i, j + 1, k - 2)) + + c1 * (u(2, i, j + 1, k + 1) - u(2, i, j + 1, k - 1))) * + stry(j + 1) * istrx + + la(i, j + 1, k) * met(4, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(3, i, j + 1, k + 2) - u(3, i, j + 1, k - 2)) + + c1 * (u(3, i, j + 1, k + 1) - u(3, i, j + 1, k - 1))) * + istrx - + (la(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(1, i, j - 1, k + 2) - u(1, i, j - 1, k - 2)) + + c1 * (u(1, i, j - 1, k + 1) - u(1, i, j - 1, k - 1))) + + (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * + met(3, i, j - 1, k) * met(1, i, j - 1, k) * + (c2 * (u(2, i, j - 1, k + 2) - u(2, i, j - 1, k - 2)) + + c1 * (u(2, i, j - 1, k + 1) - u(2, i, j - 1, k - 1))) * + stry(j - 1) * istrx + + la(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(3, i, j - 1, k + 2) - u(3, i, j - 1, k - 2)) + + c1 * (u(3, i, j - 1, k + 1) - u(3, i, j - 1, k - 1))) * + istrx)); + + // 4 ops, tot=1541 + lu(2, i, j, k) = a1 * lu(2, i, j, k) + sgn * r2 * ijac; + } +} + diff --git a/benchmarks/cuda/sw4ck/kernel4.cpp b/benchmarks/cuda/sw4ck/kernel4.cpp new file mode 100644 index 0000000..909fadd --- /dev/null +++ b/benchmarks/cuda/sw4ck/kernel4.cpp @@ -0,0 +1,423 @@ +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))) +#endif +void kernel4( + const int start0, const int N0, + const int start1, const int N1, + const int start2, const int N2, + const int ifirst, const int ilast, + const int jfirst, const int jlast, + const int kfirst, const int klast, + const float_sw4 a1, const float_sw4 sgn, + const float_sw4* __restrict__ a_u, + const float_sw4* __restrict__ a_mu, + const float_sw4* __restrict__ a_lambda, + const float_sw4* __restrict__ a_met, + const float_sw4* __restrict__ a_jac, + float_sw4* __restrict__ a_lu, + const float_sw4* __restrict__ a_acof, + const float_sw4* __restrict__ a_bope, + const float_sw4* __restrict__ a_ghcof, + const float_sw4* __restrict__ a_acof_no_gp, + const float_sw4* __restrict__ a_ghcof_no_gp, + const float_sw4* __restrict__ a_strx, + const float_sw4* __restrict__ a_stry ) +{ + int i = start0 + threadIdx.x + blockIdx.x * blockDim.x; + int j = start1 + threadIdx.y + blockIdx.y * blockDim.y; + int k = start2 + threadIdx.z + blockIdx.z * blockDim.z; + if ((i < N0) && (j < N1) && (k < N2)) { + float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k); + float_sw4 istry = 1 / (stry(j)); + float_sw4 istrx = 1 / (strx(i)); + float_sw4 istrxy = istry * istrx; + + float_sw4 r3 = 0.0; + + // w-equation + + // r1 = 0; + // pp derivative (w) + // 43 ops, tot=1580 + float_sw4 cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * + met(1, i - 2, j, k) * strx(i - 2); + float_sw4 cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * + met(1, i - 1, j, k) * strx(i - 1); + float_sw4 cof3 = + (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + float_sw4 cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * + met(1, i + 1, j, k) * strx(i + 1); + float_sw4 cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * + met(1, i + 2, j, k) * strx(i + 2); + + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r3 += i6 * + (mux1 * (u(3, i - 2, j, k) - u(3, i, j, k)) + + mux2 * (u(3, i - 1, j, k) - u(3, i, j, k)) + + mux3 * (u(3, i + 1, j, k) - u(3, i, j, k)) + + mux4 * (u(3, i + 2, j, k) - u(3, i, j, k))) * + istry; + + // qq derivative (w) + // 43 ops, tot=1623 + { + float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4; + cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 += i6 * + (mux1 * (u(3, i, j - 2, k) - u(3, i, j, k)) + + mux2 * (u(3, i, j - 1, k) - u(3, i, j, k)) + + mux3 * (u(3, i, j + 1, k) - u(3, i, j, k)) + + mux4 * (u(3, i, j + 2, k) - u(3, i, j, k))) * + istrx; + } + // rr derivative (u) + // 43 ops, tot=1666 + { + float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4; + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(2, i, j, k - 2) * + met(4, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(2, i, j, k - 1) * + met(4, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(2, i, j, k) * met(4, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(2, i, j, k + 1) * + met(4, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(2, i, j, k + 2) * + met(4, i, j, k + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 += i6 * + (mux1 * (u(1, i, j, k - 2) - u(1, i, j, k)) + + mux2 * (u(1, i, j, k - 1) - u(1, i, j, k)) + + mux3 * (u(1, i, j, k + 1) - u(1, i, j, k)) + + mux4 * (u(1, i, j, k + 2) - u(1, i, j, k))) * + istry; + } + // rr derivative (v) + // 43 ops, tot=1709 + { + float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4; + cof1 = (mu(i, j, k - 2) + la(i, j, k - 2)) * met(3, i, j, k - 2) * + met(4, i, j, k - 2); + cof2 = (mu(i, j, k - 1) + la(i, j, k - 1)) * met(3, i, j, k - 1) * + met(4, i, j, k - 1); + cof3 = + (mu(i, j, k) + la(i, j, k)) * met(3, i, j, k) * met(4, i, j, k); + cof4 = (mu(i, j, k + 1) + la(i, j, k + 1)) * met(3, i, j, k + 1) * + met(4, i, j, k + 1); + cof5 = (mu(i, j, k + 2) + la(i, j, k + 2)) * met(3, i, j, k + 2) * + met(4, i, j, k + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 += i6 * + (mux1 * (u(2, i, j, k - 2) - u(2, i, j, k)) + + mux2 * (u(2, i, j, k - 1) - u(2, i, j, k)) + + mux3 * (u(2, i, j, k + 1) - u(2, i, j, k)) + + mux4 * (u(2, i, j, k + 2) - u(2, i, j, k))) * + istrx; + } + + // rr derivative (w) + // 83 ops, tot=1792 + { + float_sw4 cof1, cof2, cof3, cof4, cof5, mux1, mux3, mux4; + cof1 = (2 * mu(i, j, k - 2) + la(i, j, k - 2)) * + met(4, i, j, k - 2) * met(4, i, j, k - 2) + + mu(i, j, k - 2) * (met(2, i, j, k - 2) * strx(i) * + met(2, i, j, k - 2) * strx(i) + + met(3, i, j, k - 2) * stry(j) * + met(3, i, j, k - 2) * stry(j)); + cof2 = (2 * mu(i, j, k - 1) + la(i, j, k - 1)) * + met(4, i, j, k - 1) * met(4, i, j, k - 1) + + mu(i, j, k - 1) * (met(2, i, j, k - 1) * strx(i) * + met(2, i, j, k - 1) * strx(i) + + met(3, i, j, k - 1) * stry(j) * + met(3, i, j, k - 1) * stry(j)); + cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(4, i, j, k) * + met(4, i, j, k) + + mu(i, j, k) * + (met(2, i, j, k) * strx(i) * met(2, i, j, k) * strx(i) + + met(3, i, j, k) * stry(j) * met(3, i, j, k) * stry(j)); + cof4 = (2 * mu(i, j, k + 1) + la(i, j, k + 1)) * + met(4, i, j, k + 1) * met(4, i, j, k + 1) + + mu(i, j, k + 1) * (met(2, i, j, k + 1) * strx(i) * + met(2, i, j, k + 1) * strx(i) + + met(3, i, j, k + 1) * stry(j) * + met(3, i, j, k + 1) * stry(j)); + cof5 = (2 * mu(i, j, k + 2) + la(i, j, k + 2)) * + met(4, i, j, k + 2) * met(4, i, j, k + 2) + + mu(i, j, k + 2) * (met(2, i, j, k + 2) * strx(i) * + met(2, i, j, k + 2) * strx(i) + + met(3, i, j, k + 2) * stry(j) * + met(3, i, j, k + 2) * stry(j)); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 += + i6 * + (mux1 * (u(3, i, j, k - 2) - u(3, i, j, k)) + + mux2 * (u(3, i, j, k - 1) - u(3, i, j, k)) + + mux3 * (u(3, i, j, k + 1) - u(3, i, j, k)) + + mux4 * (u(3, i, j, k + 2) - u(3, i, j, k))) * + istrxy + // pr-derivatives + // 86 ops, tot=1878 + // r1 += + + + c2 * + ((la(i, j, k + 2)) * met(4, i, j, k + 2) * + met(1, i, j, k + 2) * + (c2 * (u(1, i + 2, j, k + 2) - u(1, i - 2, j, k + 2)) + + c1 * + (u(1, i + 1, j, k + 2) - u(1, i - 1, j, k + 2))) * + istry + + mu(i, j, k + 2) * met(2, i, j, k + 2) * + met(1, i, j, k + 2) * + (c2 * (u(3, i + 2, j, k + 2) - u(3, i - 2, j, k + 2)) + + c1 * + (u(3, i + 1, j, k + 2) - u(3, i - 1, j, k + 2))) * + strx(i) * istry - + ((la(i, j, k - 2)) * met(4, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * + (u(1, i + 2, j, k - 2) - u(1, i - 2, j, k - 2)) + + c1 * (u(1, i + 1, j, k - 2) - + u(1, i - 1, j, k - 2))) * + istry + + mu(i, j, k - 2) * met(2, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * + (u(3, i + 2, j, k - 2) - u(3, i - 2, j, k - 2)) + + c1 * (u(3, i + 1, j, k - 2) - + u(3, i - 1, j, k - 2))) * + strx(i) * istry)) + + c1 * + ((la(i, j, k + 1)) * met(4, i, j, k + 1) * + met(1, i, j, k + 1) * + (c2 * (u(1, i + 2, j, k + 1) - u(1, i - 2, j, k + 1)) + + c1 * + (u(1, i + 1, j, k + 1) - u(1, i - 1, j, k + 1))) * + istry + + mu(i, j, k + 1) * met(2, i, j, k + 1) * + met(1, i, j, k + 1) * + (c2 * (u(3, i + 2, j, k + 1) - u(3, i - 2, j, k + 1)) + + c1 * + (u(3, i + 1, j, k + 1) - u(3, i - 1, j, k + 1))) * + strx(i) * istry - + (la(i, j, k - 1) * met(4, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * + (u(1, i + 2, j, k - 1) - u(1, i - 2, j, k - 1)) + + c1 * (u(1, i + 1, j, k - 1) - + u(1, i - 1, j, k - 1))) * + istry + + mu(i, j, k - 1) * met(2, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * + (u(3, i + 2, j, k - 1) - u(3, i - 2, j, k - 1)) + + c1 * (u(3, i + 1, j, k - 1) - + u(3, i - 1, j, k - 1))) * + strx(i) * istry)) + // rp derivatives + // 79 ops, tot=1957 + // r1 += + + istry * (c2 * ((mu(i + 2, j, k)) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j, k + 2) - + u(1, i + 2, j, k - 2)) + + c1 * (u(1, i + 2, j, k + 1) - + u(1, i + 2, j, k - 1))) + + mu(i + 2, j, k) * met(2, i + 2, j, k) * + met(1, i + 2, j, k) * + (c2 * (u(3, i + 2, j, k + 2) - + u(3, i + 2, j, k - 2)) + + c1 * (u(3, i + 2, j, k + 1) - + u(3, i + 2, j, k - 1))) * + strx(i + 2) - + (mu(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j, k + 2) - + u(1, i - 2, j, k - 2)) + + c1 * (u(1, i - 2, j, k + 1) - + u(1, i - 2, j, k - 1))) + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * + (c2 * (u(3, i - 2, j, k + 2) - + u(3, i - 2, j, k - 2)) + + c1 * (u(3, i - 2, j, k + 1) - + u(3, i - 2, j, k - 1))) * + strx(i - 2))) + + c1 * ((mu(i + 1, j, k)) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j, k + 2) - + u(1, i + 1, j, k - 2)) + + c1 * (u(1, i + 1, j, k + 1) - + u(1, i + 1, j, k - 1))) + + mu(i + 1, j, k) * met(2, i + 1, j, k) * + met(1, i + 1, j, k) * + (c2 * (u(3, i + 1, j, k + 2) - + u(3, i + 1, j, k - 2)) + + c1 * (u(3, i + 1, j, k + 1) - + u(3, i + 1, j, k - 1))) * + strx(i + 1) - + (mu(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j, k + 2) - + u(1, i - 1, j, k - 2)) + + c1 * (u(1, i - 1, j, k + 1) - + u(1, i - 1, j, k - 1))) + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * + (c2 * (u(3, i - 1, j, k + 2) - + u(3, i - 1, j, k - 2)) + + c1 * (u(3, i - 1, j, k + 1) - + u(3, i - 1, j, k - 1))) * + strx(i - 1)))) + // qr derivatives + // 86 ops, tot=2043 + // r1 += + + + c2 * + (mu(i, j, k + 2) * met(3, i, j, k + 2) * + met(1, i, j, k + 2) * + (c2 * (u(3, i, j + 2, k + 2) - u(3, i, j - 2, k + 2)) + + c1 * + (u(3, i, j + 1, k + 2) - u(3, i, j - 1, k + 2))) * + stry(j) * istrx + + la(i, j, k + 2) * met(4, i, j, k + 2) * + met(1, i, j, k + 2) * + (c2 * (u(2, i, j + 2, k + 2) - u(2, i, j - 2, k + 2)) + + c1 * + (u(2, i, j + 1, k + 2) - u(2, i, j - 1, k + 2))) * + istrx - + (mu(i, j, k - 2) * met(3, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * + (u(3, i, j + 2, k - 2) - u(3, i, j - 2, k - 2)) + + c1 * (u(3, i, j + 1, k - 2) - + u(3, i, j - 1, k - 2))) * + stry(j) * istrx + + la(i, j, k - 2) * met(4, i, j, k - 2) * + met(1, i, j, k - 2) * + (c2 * + (u(2, i, j + 2, k - 2) - u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j + 1, k - 2) - + u(2, i, j - 1, k - 2))) * + istrx)) + + c1 * + (mu(i, j, k + 1) * met(3, i, j, k + 1) * + met(1, i, j, k + 1) * + (c2 * (u(3, i, j + 2, k + 1) - u(3, i, j - 2, k + 1)) + + c1 * + (u(3, i, j + 1, k + 1) - u(3, i, j - 1, k + 1))) * + stry(j) * istrx + + la(i, j, k + 1) * met(4, i, j, k + 1) * + met(1, i, j, k + 1) * + (c2 * (u(2, i, j + 2, k + 1) - u(2, i, j - 2, k + 1)) + + c1 * + (u(2, i, j + 1, k + 1) - u(2, i, j - 1, k + 1))) * + istrx - + (mu(i, j, k - 1) * met(3, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * + (u(3, i, j + 2, k - 1) - u(3, i, j - 2, k - 1)) + + c1 * (u(3, i, j + 1, k - 1) - + u(3, i, j - 1, k - 1))) * + stry(j) * istrx + + la(i, j, k - 1) * met(4, i, j, k - 1) * + met(1, i, j, k - 1) * + (c2 * + (u(2, i, j + 2, k - 1) - u(2, i, j - 2, k - 1)) + + c1 * (u(2, i, j + 1, k - 1) - + u(2, i, j - 1, k - 1))) * + istrx)) + // rq derivatives + // 79 ops, tot=2122 + // r1 += + + istrx * (c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) * + met(1, i, j + 2, k) * + (c2 * (u(3, i, j + 2, k + 2) - + u(3, i, j + 2, k - 2)) + + c1 * (u(3, i, j + 2, k + 1) - + u(3, i, j + 2, k - 1))) * + stry(j + 2) + + mu(i, j + 2, k) * met(4, i, j + 2, k) * + met(1, i, j + 2, k) * + (c2 * (u(2, i, j + 2, k + 2) - + u(2, i, j + 2, k - 2)) + + c1 * (u(2, i, j + 2, k + 1) - + u(2, i, j + 2, k - 1))) - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(3, i, j - 2, k + 2) - + u(3, i, j - 2, k - 2)) + + c1 * (u(3, i, j - 2, k + 1) - + u(3, i, j - 2, k - 1))) * + stry(j - 2) + + mu(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * + (c2 * (u(2, i, j - 2, k + 2) - + u(2, i, j - 2, k - 2)) + + c1 * (u(2, i, j - 2, k + 1) - + u(2, i, j - 2, k - 1))))) + + c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) * + met(1, i, j + 1, k) * + (c2 * (u(3, i, j + 1, k + 2) - + u(3, i, j + 1, k - 2)) + + c1 * (u(3, i, j + 1, k + 1) - + u(3, i, j + 1, k - 1))) * + stry(j + 1) + + mu(i, j + 1, k) * met(4, i, j + 1, k) * + met(1, i, j + 1, k) * + (c2 * (u(2, i, j + 1, k + 2) - + u(2, i, j + 1, k - 2)) + + c1 * (u(2, i, j + 1, k + 1) - + u(2, i, j + 1, k - 1))) - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(3, i, j - 1, k + 2) - + u(3, i, j - 1, k - 2)) + + c1 * (u(3, i, j - 1, k + 1) - + u(3, i, j - 1, k - 1))) * + stry(j - 1) + + mu(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * + (c2 * (u(2, i, j - 1, k + 2) - + u(2, i, j - 1, k - 2)) + + c1 * (u(2, i, j - 1, k + 1) - + u(2, i, j - 1, k - 1)))))); + } + + // 4 ops, tot=2126 + lu(3, i, j, k) = a1 * lu(3, i, j, k) + sgn * r3 * ijac; + } +} + diff --git a/benchmarks/cuda/sw4ck/kernel5.cpp b/benchmarks/cuda/sw4ck/kernel5.cpp new file mode 100644 index 0000000..aa0ccad --- /dev/null +++ b/benchmarks/cuda/sw4ck/kernel5.cpp @@ -0,0 +1,631 @@ +__global__ +#ifdef ENABLE_JIT +__attribute__((annotate("jit", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15))) +#endif +void kernel5( + const int start0, const int N0, + const int start1, const int N1, + const int start2, const int N2, + const int ifirst, const int ilast, + const int jfirst, const int jlast, + const int kfirst, const int klast, + const int nk, + const float_sw4 a1, const float_sw4 sgn, + const float_sw4* __restrict__ a_u, + const float_sw4* __restrict__ a_mu, + const float_sw4* __restrict__ a_lambda, + const float_sw4* __restrict__ a_met, + const float_sw4* __restrict__ a_jac, + float_sw4* __restrict__ a_lu, + const float_sw4* __restrict__ a_acof, + const float_sw4* __restrict__ a_bope, + const float_sw4* __restrict__ a_ghcof, + const float_sw4* __restrict__ a_acof_no_gp, + const float_sw4* __restrict__ a_ghcof_no_gp, + const float_sw4* __restrict__ a_strx, + const float_sw4* __restrict__ a_stry ) +{ + + int i = start0 + threadIdx.x + blockIdx.x * blockDim.x; + int j = start1 + threadIdx.y + blockIdx.y * blockDim.y; + int k = start2 + threadIdx.z + blockIdx.z * blockDim.z; + if ((i < N0) && (j < N1) && (k < N2)) { + // 5 ops + float_sw4 ijac = strx(i) * stry(j) / jac(i, j, k); + float_sw4 istry = 1 / (stry(j)); + float_sw4 istrx = 1 / (strx(i)); + float_sw4 istrxy = istry * istrx; + + float_sw4 r1 = 0, r2 = 0, r3 = 0; + + // pp derivative (u) (u-eq) + // 53 ops, tot=58 + float_sw4 cof1 = (2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(1, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2); + float_sw4 cof2 = (2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(1, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1); + float_sw4 cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * strx(i); + float_sw4 cof4 = (2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(1, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1); + float_sw4 cof5 = (2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(1, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2); + + float_sw4 mux1 = cof2 - tf * (cof3 + cof1); + float_sw4 mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + float_sw4 mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + float_sw4 mux4 = cof4 - tf * (cof3 + cof5); + + r1 = r1 + i6 * + (mux1 * (u(1, i - 2, j, k) - u(1, i, j, k)) + + mux2 * (u(1, i - 1, j, k) - u(1, i, j, k)) + + mux3 * (u(1, i + 1, j, k) - u(1, i, j, k)) + + mux4 * (u(1, i + 2, j, k) - u(1, i, j, k))) * + istry; + + // qq derivative (u) (u-eq) + // 43 ops, tot=101 + cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + stry(j - 2); + cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + stry(j - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + stry(j + 1); + cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + stry(j + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r1 = r1 + i6 * + (mux1 * (u(1, i, j - 2, k) - u(1, i, j, k)) + + mux2 * (u(1, i, j - 1, k) - u(1, i, j, k)) + + mux3 * (u(1, i, j + 1, k) - u(1, i, j, k)) + + mux4 * (u(1, i, j + 2, k) - u(1, i, j, k))) * + istrx; + + // pp derivative (v) (v-eq) + // 43 ops, tot=144 + cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2); + cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1); + cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 = r2 + i6 * + (mux1 * (u(2, i - 2, j, k) - u(2, i, j, k)) + + mux2 * (u(2, i - 1, j, k) - u(2, i, j, k)) + + mux3 * (u(2, i + 1, j, k) - u(2, i, j, k)) + + mux4 * (u(2, i + 2, j, k) - u(2, i, j, k))) * + istry; + + // qq derivative (v) (v-eq) + // 53 ops, tot=197 + cof1 = (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * met(1, i, j - 2, k) * + met(1, i, j - 2, k) * stry(j - 2); + cof2 = (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * met(1, i, j - 1, k) * + met(1, i, j - 1, k) * stry(j - 1); + cof3 = (2 * mu(i, j, k) + la(i, j, k)) * met(1, i, j, k) * + met(1, i, j, k) * stry(j); + cof4 = (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * met(1, i, j + 1, k) * + met(1, i, j + 1, k) * stry(j + 1); + cof5 = (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * met(1, i, j + 2, k) * + met(1, i, j + 2, k) * stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r2 = r2 + i6 * + (mux1 * (u(2, i, j - 2, k) - u(2, i, j, k)) + + mux2 * (u(2, i, j - 1, k) - u(2, i, j, k)) + + mux3 * (u(2, i, j + 1, k) - u(2, i, j, k)) + + mux4 * (u(2, i, j + 2, k) - u(2, i, j, k))) * + istrx; + + // pp derivative (w) (w-eq) + // 43 ops, tot=240 + cof1 = (mu(i - 2, j, k)) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2); + cof2 = (mu(i - 1, j, k)) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * strx(i); + cof4 = (mu(i + 1, j, k)) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1); + cof5 = (mu(i + 2, j, k)) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2); + + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 = r3 + i6 * + (mux1 * (u(3, i - 2, j, k) - u(3, i, j, k)) + + mux2 * (u(3, i - 1, j, k) - u(3, i, j, k)) + + mux3 * (u(3, i + 1, j, k) - u(3, i, j, k)) + + mux4 * (u(3, i + 2, j, k) - u(3, i, j, k))) * + istry; + + // qq derivative (w) (w-eq) + // 43 ops, tot=283 + cof1 = (mu(i, j - 2, k)) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + stry(j - 2); + cof2 = (mu(i, j - 1, k)) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + stry(j - 1); + cof3 = (mu(i, j, k)) * met(1, i, j, k) * met(1, i, j, k) * stry(j); + cof4 = (mu(i, j + 1, k)) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + stry(j + 1); + cof5 = (mu(i, j + 2, k)) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + stry(j + 2); + mux1 = cof2 - tf * (cof3 + cof1); + mux2 = cof1 + cof4 + 3 * (cof3 + cof2); + mux3 = cof2 + cof5 + 3 * (cof4 + cof3); + mux4 = cof4 - tf * (cof3 + cof5); + + r3 = r3 + i6 * + (mux1 * (u(3, i, j - 2, k) - u(3, i, j, k)) + + mux2 * (u(3, i, j - 1, k) - u(3, i, j, k)) + + mux3 * (u(3, i, j + 1, k) - u(3, i, j, k)) + + mux4 * (u(3, i, j + 2, k) - u(3, i, j, k))) * + istrx; + + // All rr-derivatives at once + // averaging the coefficient + // 54*8*8+25*8 = 3656 ops, tot=3939 + float_sw4 mucofu2, mucofuv, mucofuw, mucofvw, mucofv2, mucofw2; + //#pragma unroll 8 + for (int q = nk - 7; q <= nk; q++) { + mucofu2 = 0; + mucofuv = 0; + mucofuw = 0; + mucofvw = 0; + mucofv2 = 0; + mucofw2 = 0; + //#pragma unroll 8 + for (int m = nk - 7; m <= nk; m++) { + mucofu2 += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) * + strx(i) * met(2, i, j, m) * strx(i) + + mu(i, j, m) * (met(3, i, j, m) * stry(j) * + met(3, i, j, m) * stry(j) + + met(4, i, j, m) * met(4, i, j, m))); + mucofv2 += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(3, i, j, m) * + stry(j) * met(3, i, j, m) * stry(j) + + mu(i, j, m) * (met(2, i, j, m) * strx(i) * + met(2, i, j, m) * strx(i) + + met(4, i, j, m) * met(4, i, j, m))); + mucofw2 += + acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + ((2 * mu(i, j, m) + la(i, j, m)) * met(4, i, j, m) * + met(4, i, j, m) + + mu(i, j, m) * + (met(2, i, j, m) * strx(i) * met(2, i, j, m) * strx(i) + + met(3, i, j, m) * stry(j) * met(3, i, j, m) * stry(j))); + mucofuv += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + (mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) * + met(3, i, j, m); + mucofuw += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + (mu(i, j, m) + la(i, j, m)) * met(2, i, j, m) * + met(4, i, j, m); + mucofvw += acof_no_gp(nk - k + 1, nk - q + 1, nk - m + 1) * + (mu(i, j, m) + la(i, j, m)) * met(3, i, j, m) * + met(4, i, j, m); + } + + // Computing the second derivative, + r1 += istrxy * mucofu2 * u(1, i, j, q) + mucofuv * u(2, i, j, q) + + istry * mucofuw * u(3, i, j, q); + r2 += mucofuv * u(1, i, j, q) + istrxy * mucofv2 * u(2, i, j, q) + + istrx * mucofvw * u(3, i, j, q); + r3 += istry * mucofuw * u(1, i, j, q) + + istrx * mucofvw * u(2, i, j, q) + + istrxy * mucofw2 * u(3, i, j, q); + } + + // Ghost point values, only nonzero for k=nk. + // 72 ops., tot=4011 + mucofu2 = ghcof_no_gp(nk - k + 1) * + ((2 * mu(i, j, nk) + la(i, j, nk)) * met(2, i, j, nk) * + strx(i) * met(2, i, j, nk) * strx(i) + + mu(i, j, nk) * (met(3, i, j, nk) * stry(j) * + met(3, i, j, nk) * stry(j) + + met(4, i, j, nk) * met(4, i, j, nk))); + mucofv2 = ghcof_no_gp(nk - k + 1) * + ((2 * mu(i, j, nk) + la(i, j, nk)) * met(3, i, j, nk) * + stry(j) * met(3, i, j, nk) * stry(j) + + mu(i, j, nk) * (met(2, i, j, nk) * strx(i) * + met(2, i, j, nk) * strx(i) + + met(4, i, j, nk) * met(4, i, j, nk))); + mucofw2 = + ghcof_no_gp(nk - k + 1) * + ((2 * mu(i, j, nk) + la(i, j, nk)) * met(4, i, j, nk) * + met(4, i, j, nk) + + mu(i, j, nk) * + (met(2, i, j, nk) * strx(i) * met(2, i, j, nk) * strx(i) + + met(3, i, j, nk) * stry(j) * met(3, i, j, nk) * stry(j))); + mucofuv = ghcof_no_gp(nk - k + 1) * (mu(i, j, nk) + la(i, j, nk)) * + met(2, i, j, nk) * met(3, i, j, nk); + mucofuw = ghcof_no_gp(nk - k + 1) * (mu(i, j, nk) + la(i, j, nk)) * + met(2, i, j, nk) * met(4, i, j, nk); + mucofvw = ghcof_no_gp(nk - k + 1) * (mu(i, j, nk) + la(i, j, nk)) * + met(3, i, j, nk) * met(4, i, j, nk); + r1 += istrxy * mucofu2 * u(1, i, j, nk + 1) + + mucofuv * u(2, i, j, nk + 1) + + istry * mucofuw * u(3, i, j, nk + 1); + r2 += mucofuv * u(1, i, j, nk + 1) + + istrxy * mucofv2 * u(2, i, j, nk + 1) + + istrx * mucofvw * u(3, i, j, nk + 1); + r3 += istry * mucofuw * u(1, i, j, nk + 1) + + istrx * mucofvw * u(2, i, j, nk + 1) + + istrxy * mucofw2 * u(3, i, j, nk + 1); + + // pq-derivatives (u-eq) + // 38 ops., tot=4049 + r1 += + c2 * + (mu(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i - 2, j + 2, k)) + + c1 * (u(2, i + 1, j + 2, k) - u(2, i - 1, j + 2, k))) - + mu(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + (c2 * (u(2, i + 2, j - 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i + 1, j - 2, k) - u(2, i - 1, j - 2, k)))) + + c1 * + (mu(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(2, i + 2, j + 1, k) - u(2, i - 2, j + 1, k)) + + c1 * (u(2, i + 1, j + 1, k) - u(2, i - 1, j + 1, k))) - + mu(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + (c2 * (u(2, i + 2, j - 1, k) - u(2, i - 2, j - 1, k)) + + c1 * (u(2, i + 1, j - 1, k) - u(2, i - 1, j - 1, k)))); + + // qp-derivatives (u-eq) + // 38 ops. tot=4087 + r1 += + c2 * + (la(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(2, i + 2, j + 2, k) - u(2, i + 2, j - 2, k)) + + c1 * (u(2, i + 2, j + 1, k) - u(2, i + 2, j - 1, k))) - + la(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + (c2 * (u(2, i - 2, j + 2, k) - u(2, i - 2, j - 2, k)) + + c1 * (u(2, i - 2, j + 1, k) - u(2, i - 2, j - 1, k)))) + + c1 * + (la(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(2, i + 1, j + 2, k) - u(2, i + 1, j - 2, k)) + + c1 * (u(2, i + 1, j + 1, k) - u(2, i + 1, j - 1, k))) - + la(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + (c2 * (u(2, i - 1, j + 2, k) - u(2, i - 1, j - 2, k)) + + c1 * (u(2, i - 1, j + 1, k) - u(2, i - 1, j - 1, k)))); + + // pq-derivatives (v-eq) + // 38 ops. , tot=4125 + r2 += + c2 * + (la(i, j + 2, k) * met(1, i, j + 2, k) * met(1, i, j + 2, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i - 2, j + 2, k)) + + c1 * (u(1, i + 1, j + 2, k) - u(1, i - 1, j + 2, k))) - + la(i, j - 2, k) * met(1, i, j - 2, k) * met(1, i, j - 2, k) * + (c2 * (u(1, i + 2, j - 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i + 1, j - 2, k) - u(1, i - 1, j - 2, k)))) + + c1 * + (la(i, j + 1, k) * met(1, i, j + 1, k) * met(1, i, j + 1, k) * + (c2 * (u(1, i + 2, j + 1, k) - u(1, i - 2, j + 1, k)) + + c1 * (u(1, i + 1, j + 1, k) - u(1, i - 1, j + 1, k))) - + la(i, j - 1, k) * met(1, i, j - 1, k) * met(1, i, j - 1, k) * + (c2 * (u(1, i + 2, j - 1, k) - u(1, i - 2, j - 1, k)) + + c1 * (u(1, i + 1, j - 1, k) - u(1, i - 1, j - 1, k)))); + + //* qp-derivatives (v-eq) + // 38 ops., tot=4163 + r2 += + c2 * + (mu(i + 2, j, k) * met(1, i + 2, j, k) * met(1, i + 2, j, k) * + (c2 * (u(1, i + 2, j + 2, k) - u(1, i + 2, j - 2, k)) + + c1 * (u(1, i + 2, j + 1, k) - u(1, i + 2, j - 1, k))) - + mu(i - 2, j, k) * met(1, i - 2, j, k) * met(1, i - 2, j, k) * + (c2 * (u(1, i - 2, j + 2, k) - u(1, i - 2, j - 2, k)) + + c1 * (u(1, i - 2, j + 1, k) - u(1, i - 2, j - 1, k)))) + + c1 * + (mu(i + 1, j, k) * met(1, i + 1, j, k) * met(1, i + 1, j, k) * + (c2 * (u(1, i + 1, j + 2, k) - u(1, i + 1, j - 2, k)) + + c1 * (u(1, i + 1, j + 1, k) - u(1, i + 1, j - 1, k))) - + mu(i - 1, j, k) * met(1, i - 1, j, k) * met(1, i - 1, j, k) * + (c2 * (u(1, i - 1, j + 2, k) - u(1, i - 1, j - 2, k)) + + c1 * (u(1, i - 1, j + 1, k) - u(1, i - 1, j - 1, k)))); + + // rp - derivatives + // 24*8 = 192 ops, tot=4355 + float_sw4 dudrm2 = 0, dudrm1 = 0, dudrp1 = 0, dudrp2 = 0; + float_sw4 dvdrm2 = 0, dvdrm1 = 0, dvdrp1 = 0, dvdrp2 = 0; + float_sw4 dwdrm2 = 0, dwdrm1 = 0, dwdrp1 = 0, dwdrp2 = 0; + //#pragma unroll 8 + for (int q = nk - 7; q <= nk; q++) { + dudrm2 -= bope(nk - k + 1, nk - q + 1) * u(1, i - 2, j, q); + dvdrm2 -= bope(nk - k + 1, nk - q + 1) * u(2, i - 2, j, q); + dwdrm2 -= bope(nk - k + 1, nk - q + 1) * u(3, i - 2, j, q); + dudrm1 -= bope(nk - k + 1, nk - q + 1) * u(1, i - 1, j, q); + dvdrm1 -= bope(nk - k + 1, nk - q + 1) * u(2, i - 1, j, q); + dwdrm1 -= bope(nk - k + 1, nk - q + 1) * u(3, i - 1, j, q); + dudrp2 -= bope(nk - k + 1, nk - q + 1) * u(1, i + 2, j, q); + dvdrp2 -= bope(nk - k + 1, nk - q + 1) * u(2, i + 2, j, q); + dwdrp2 -= bope(nk - k + 1, nk - q + 1) * u(3, i + 2, j, q); + dudrp1 -= bope(nk - k + 1, nk - q + 1) * u(1, i + 1, j, q); + dvdrp1 -= bope(nk - k + 1, nk - q + 1) * u(2, i + 1, j, q); + dwdrp1 -= bope(nk - k + 1, nk - q + 1) * u(3, i + 1, j, q); + } + + // rp derivatives (u-eq) + // 67 ops, tot=4422 + r1 += (c2 * ((2 * mu(i + 2, j, k) + la(i + 2, j, k)) * + met(2, i + 2, j, k) * met(1, i + 2, j, k) * + strx(i + 2) * dudrp2 + + la(i + 2, j, k) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * dvdrp2 * stry(j) + + la(i + 2, j, k) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * dwdrp2 - + ((2 * mu(i - 2, j, k) + la(i - 2, j, k)) * + met(2, i - 2, j, k) * met(1, i - 2, j, k) * + strx(i - 2) * dudrm2 + + la(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * dvdrm2 * stry(j) + + la(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * dwdrm2)) + + c1 * ((2 * mu(i + 1, j, k) + la(i + 1, j, k)) * + met(2, i + 1, j, k) * met(1, i + 1, j, k) * + strx(i + 1) * dudrp1 + + la(i + 1, j, k) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * dvdrp1 * stry(j) + + la(i + 1, j, k) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * dwdrp1 - + ((2 * mu(i - 1, j, k) + la(i - 1, j, k)) * + met(2, i - 1, j, k) * met(1, i - 1, j, k) * + strx(i - 1) * dudrm1 + + la(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * dvdrm1 * stry(j) + + la(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * dwdrm1))) * + istry; + + // rp derivatives (v-eq) + // 42 ops, tot=4464 + r2 += + c2 * (mu(i + 2, j, k) * met(3, i + 2, j, k) * + met(1, i + 2, j, k) * dudrp2 + + mu(i + 2, j, k) * met(2, i + 2, j, k) * + met(1, i + 2, j, k) * dvdrp2 * strx(i + 2) * istry - + (mu(i - 2, j, k) * met(3, i - 2, j, k) * + met(1, i - 2, j, k) * dudrm2 + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * dvdrm2 * strx(i - 2) * istry)) + + c1 * (mu(i + 1, j, k) * met(3, i + 1, j, k) * + met(1, i + 1, j, k) * dudrp1 + + mu(i + 1, j, k) * met(2, i + 1, j, k) * + met(1, i + 1, j, k) * dvdrp1 * strx(i + 1) * istry - + (mu(i - 1, j, k) * met(3, i - 1, j, k) * + met(1, i - 1, j, k) * dudrm1 + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * dvdrm1 * strx(i - 1) * istry)); + + // rp derivatives (w-eq) + // 38 ops, tot=4502 + r3 += + istry * (c2 * (mu(i + 2, j, k) * met(4, i + 2, j, k) * + met(1, i + 2, j, k) * dudrp2 + + mu(i + 2, j, k) * met(2, i + 2, j, k) * + met(1, i + 2, j, k) * dwdrp2 * strx(i + 2) - + (mu(i - 2, j, k) * met(4, i - 2, j, k) * + met(1, i - 2, j, k) * dudrm2 + + mu(i - 2, j, k) * met(2, i - 2, j, k) * + met(1, i - 2, j, k) * dwdrm2 * strx(i - 2))) + + c1 * (mu(i + 1, j, k) * met(4, i + 1, j, k) * + met(1, i + 1, j, k) * dudrp1 + + mu(i + 1, j, k) * met(2, i + 1, j, k) * + met(1, i + 1, j, k) * dwdrp1 * strx(i + 1) - + (mu(i - 1, j, k) * met(4, i - 1, j, k) * + met(1, i - 1, j, k) * dudrm1 + + mu(i - 1, j, k) * met(2, i - 1, j, k) * + met(1, i - 1, j, k) * dwdrm1 * strx(i - 1)))); + + // rq - derivatives + // 24*8 = 192 ops , tot=4694 + + dudrm2 = 0; + dudrm1 = 0; + dudrp1 = 0; + dudrp2 = 0; + dvdrm2 = 0; + dvdrm1 = 0; + dvdrp1 = 0; + dvdrp2 = 0; + dwdrm2 = 0; + dwdrm1 = 0; + dwdrp1 = 0; + dwdrp2 = 0; + //#pragma unroll 8 + for (int q = nk - 7; q <= nk; q++) { + dudrm2 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j - 2, q); + dvdrm2 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j - 2, q); + dwdrm2 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j - 2, q); + dudrm1 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j - 1, q); + dvdrm1 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j - 1, q); + dwdrm1 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j - 1, q); + dudrp2 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j + 2, q); + dvdrp2 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j + 2, q); + dwdrp2 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j + 2, q); + dudrp1 -= bope(nk - k + 1, nk - q + 1) * u(1, i, j + 1, q); + dvdrp1 -= bope(nk - k + 1, nk - q + 1) * u(2, i, j + 1, q); + dwdrp1 -= bope(nk - k + 1, nk - q + 1) * u(3, i, j + 1, q); + } + + // rq derivatives (u-eq) + // 42 ops, tot=4736 + r1 += c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) * + met(1, i, j + 2, k) * dudrp2 * stry(j + 2) * istrx + + mu(i, j + 2, k) * met(2, i, j + 2, k) * + met(1, i, j + 2, k) * dvdrp2 - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * dudrm2 * stry(j - 2) * istrx + + mu(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * dvdrm2)) + + c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) * + met(1, i, j + 1, k) * dudrp1 * stry(j + 1) * istrx + + mu(i, j + 1, k) * met(2, i, j + 1, k) * + met(1, i, j + 1, k) * dvdrp1 - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * dudrm1 * stry(j - 1) * istrx + + mu(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * dvdrm1)); + + // rq derivatives (v-eq) + // 70 ops, tot=4806 + r2 += c2 * (la(i, j + 2, k) * met(2, i, j + 2, k) * + met(1, i, j + 2, k) * dudrp2 + + (2 * mu(i, j + 2, k) + la(i, j + 2, k)) * + met(3, i, j + 2, k) * met(1, i, j + 2, k) * dvdrp2 * + stry(j + 2) * istrx + + la(i, j + 2, k) * met(4, i, j + 2, k) * + met(1, i, j + 2, k) * dwdrp2 * istrx - + (la(i, j - 2, k) * met(2, i, j - 2, k) * + met(1, i, j - 2, k) * dudrm2 + + (2 * mu(i, j - 2, k) + la(i, j - 2, k)) * + met(3, i, j - 2, k) * met(1, i, j - 2, k) * dvdrm2 * + stry(j - 2) * istrx + + la(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * dwdrm2 * istrx)) + + c1 * (la(i, j + 1, k) * met(2, i, j + 1, k) * + met(1, i, j + 1, k) * dudrp1 + + (2 * mu(i, j + 1, k) + la(i, j + 1, k)) * + met(3, i, j + 1, k) * met(1, i, j + 1, k) * dvdrp1 * + stry(j + 1) * istrx + + la(i, j + 1, k) * met(4, i, j + 1, k) * + met(1, i, j + 1, k) * dwdrp1 * istrx - + (la(i, j - 1, k) * met(2, i, j - 1, k) * + met(1, i, j - 1, k) * dudrm1 + + (2 * mu(i, j - 1, k) + la(i, j - 1, k)) * + met(3, i, j - 1, k) * met(1, i, j - 1, k) * dvdrm1 * + stry(j - 1) * istrx + + la(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * dwdrm1 * istrx)); + + // rq derivatives (w-eq) + // 39 ops, tot=4845 + r3 += (c2 * (mu(i, j + 2, k) * met(3, i, j + 2, k) * + met(1, i, j + 2, k) * dwdrp2 * stry(j + 2) + + mu(i, j + 2, k) * met(4, i, j + 2, k) * + met(1, i, j + 2, k) * dvdrp2 - + (mu(i, j - 2, k) * met(3, i, j - 2, k) * + met(1, i, j - 2, k) * dwdrm2 * stry(j - 2) + + mu(i, j - 2, k) * met(4, i, j - 2, k) * + met(1, i, j - 2, k) * dvdrm2)) + + c1 * (mu(i, j + 1, k) * met(3, i, j + 1, k) * + met(1, i, j + 1, k) * dwdrp1 * stry(j + 1) + + mu(i, j + 1, k) * met(4, i, j + 1, k) * + met(1, i, j + 1, k) * dvdrp1 - + (mu(i, j - 1, k) * met(3, i, j - 1, k) * + met(1, i, j - 1, k) * dwdrm1 * stry(j - 1) + + mu(i, j - 1, k) * met(4, i, j - 1, k) * + met(1, i, j - 1, k) * dvdrm1))) * + istrx; + + // pr and qr derivatives at once + // in loop: 8*(53+53+43) = 1192 ops, tot=6037 + //#pragma unroll 8 + for (int q = nk - 7; q <= nk; q++) { + // (u-eq) + // 53 ops + r1 -= bope(nk - k + 1, nk - q + 1) * + ( + // pr + (2 * mu(i, j, q) + la(i, j, q)) * met(2, i, j, q) * + met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) * + strx(i) * istry + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) + + c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) + + mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) + + c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) * + istry + // qr + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) + + c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) * + stry(j) * istrx + + la(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q)))); + + // (v-eq) + // 53 ops + r2 -= bope(nk - k + 1, nk - q + 1) * + ( + // pr + la(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i + 2, j, q) - u(2, i - 2, j, q)) + + c1 * (u(2, i + 1, j, q) - u(2, i - 1, j, q))) * + strx(i) * istry + // qr + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i, j + 2, q) - u(1, i, j - 2, q)) + + c1 * (u(1, i, j + 1, q) - u(1, i, j - 1, q))) + + (2 * mu(i, j, q) + la(i, j, q)) * met(3, i, j, q) * + met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) * + stry(j) * istrx + + mu(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) + + c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) * + istrx); + + // (w-eq) + // 43 ops + r3 -= bope(nk - k + 1, nk - q + 1) * + ( + // pr + la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(1, i + 2, j, q) - u(1, i - 2, j, q)) + + c1 * (u(1, i + 1, j, q) - u(1, i - 1, j, q))) * + istry + + mu(i, j, q) * met(2, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i + 2, j, q) - u(3, i - 2, j, q)) + + c1 * (u(3, i + 1, j, q) - u(3, i - 1, j, q))) * + strx(i) * istry + // qr + + mu(i, j, q) * met(3, i, j, q) * met(1, i, j, q) * + (c2 * (u(3, i, j + 2, q) - u(3, i, j - 2, q)) + + c1 * (u(3, i, j + 1, q) - u(3, i, j - 1, q))) * + stry(j) * istrx + + la(i, j, q) * met(4, i, j, q) * met(1, i, j, q) * + (c2 * (u(2, i, j + 2, q) - u(2, i, j - 2, q)) + + c1 * (u(2, i, j + 1, q) - u(2, i, j - 1, q))) * + istrx); + } + + // 12 ops, tot=6049 + lu(1, i, j, k) = a1 * lu(1, i, j, k) + sgn * r1 * ijac; + lu(2, i, j, k) = a1 * lu(2, i, j, k) + sgn * r2 * ijac; + lu(3, i, j, k) = a1 * lu(3, i, j, k) + sgn * r3 * ijac; + } +} diff --git a/benchmarks/cuda/sw4ck/main.cu b/benchmarks/cuda/sw4ck/main.cu new file mode 100644 index 0000000..5fc5232 --- /dev/null +++ b/benchmarks/cuda/sw4ck/main.cu @@ -0,0 +1,223 @@ +////////////////////////////////////////////////////////////////////////////// +//// Copyright (c) 2021, Lawrence Livermore National Security, LLC and SW4CK +//// project contributors. See the COPYRIGHT file for details. +//// +//// SPDX-License-Identifier: GPL-2.0-only +//////////////////////////////////////////////////////////////////////////////// + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "utils.h" +#include "utils.cpp" + +int main(int argc, char* argv[]) { + if (argc != 3) { + std::cout << "Usage: " << argv[0] << " \n"; + return 1; + } + + // Open an input data file + std::ifstream iff; + iff.open(argv[1]); + + // Repeat the execution of kernels + const int repeat = atoi(argv[2]); + + // At most 10 input datasets + std::map arrays[10]; + std::vector onesided; + std::string line; + int lc = 0; + std::cout << "Reading from file " << argv[1] << "\n"; + while (std::getline(iff, line)) { + std::istringstream iss(line); + int* optr = new int[14]; + const int N = 16; + if ((lc % N) == 0) { + if (!(iss >> optr[0] >> optr[1] >> optr[2] >> optr[3] >> optr[4] >> + optr[5] >> optr[6] >> optr[7] >> optr[8] >> optr[9] >> optr[10] >> + optr[11] >> optr[12] >> optr[13])) { + std::cerr << "Error reading data on line " << lc + 1 << "\n"; + break; + } + onesided.push_back(optr); + } else { + Sarray* s = new Sarray(); + auto name = s->fill(iss); + if (name == "Break") { + std::cerr << "Error reading Sarray data on line " << lc + 1 << "\n"; + break; + } else { + arrays[lc / N][name] = s; + } + } + lc++; + } // while + +#ifdef VERBOSE + std::cout << "\nCurrent state of map array\n"; +#endif + for (int i = 0; i < 2; i++) + for (auto const& x : arrays[i]) { +#ifdef VERBOSE + std::cout << x.first << " " << x.second->g << " " << x.second->m_npts + << "\n"; +#endif + x.second->init(); + } + + // + // Allocate device memory explictly + // + int size = (6 + 384 + 24 + 48 + 6 + 384 + 6 + 6); + float_sw4 *cof_ptr = (float_sw4*) malloc (sizeof(float_sw4) * size); + for (int i = 0; i < size; i++) cof_ptr[i] = i / 1000.0; + + float_sw4 *d_cof_ptr; + cudaMalloc ((void**)&d_cof_ptr, size * sizeof(float_sw4)); + cudaMemcpy(d_cof_ptr, cof_ptr, size * sizeof(float_sw4), cudaMemcpyHostToDevice); + + // obtain memory offsets + float_sw4 *d_sbop = d_cof_ptr; + float_sw4 *d_acof = d_sbop + 6; + float_sw4 *d_bop = d_acof + 384; + float_sw4 *d_bope = d_bop + 24; + float_sw4 *d_ghcof = d_bope + 48; + float_sw4 *d_acof_no_gp = d_ghcof + 6; + float_sw4 *d_ghcof_no_gp = d_acof_no_gp + 384; + + // Expected norm values after executing five kernels for the two input dataset + float_sw4 exact_norm[2] = {2.2502232733796421194, 202.0512747393526638}; + + for (int i = 0; i < 2; i++) { + int* optr = onesided[i]; + float_sw4* alpha_ptr = arrays[i]["a_AlphaVE_0"]->m_data; + size = arrays[i]["a_AlphaVE_0"]->m_nc * + arrays[i]["a_AlphaVE_0"]->m_ni * + arrays[i]["a_AlphaVE_0"]->m_nj * + arrays[i]["a_AlphaVE_0"]->m_nk * sizeof(float_sw4); + float_sw4* d_alpha_ptr; + cudaMalloc((void**)&d_alpha_ptr, size); + cudaMemcpy(d_alpha_ptr, alpha_ptr, size, cudaMemcpyHostToDevice); + + float_sw4* mua_ptr = arrays[i]["mMuVE_0"]->m_data; + size = arrays[i]["mMuVE_0"]->m_nc * + arrays[i]["mMuVE_0"]->m_ni * + arrays[i]["mMuVE_0"]->m_nj * + arrays[i]["mMuVE_0"]->m_nk * sizeof(float_sw4); + float_sw4* d_mua_ptr; + cudaMalloc((void**)&d_mua_ptr, size); + cudaMemcpy(d_mua_ptr, mua_ptr, size, cudaMemcpyHostToDevice); + + float_sw4* lambdaa_ptr = arrays[i]["mLambdaVE_0"]->m_data; + size = arrays[i]["mLambdaVE_0"]->m_nc * + arrays[i]["mLambdaVE_0"]->m_ni * + arrays[i]["mLambdaVE_0"]->m_nj * + arrays[i]["mLambdaVE_0"]->m_nk * sizeof(float_sw4); + float_sw4* d_lambdaa_ptr; + cudaMalloc((void**)&d_lambdaa_ptr, size); + cudaMemcpy(d_lambdaa_ptr, lambdaa_ptr, size, cudaMemcpyHostToDevice); + + float_sw4* met_ptr = arrays[i]["mMetric"]->m_data; + size = arrays[i]["mMetric"]->m_nc * + arrays[i]["mMetric"]->m_ni * + arrays[i]["mMetric"]->m_nj * + arrays[i]["mMetric"]->m_nk * sizeof(float_sw4); + float_sw4* d_met_ptr; + cudaMalloc((void**)&d_met_ptr, size); + cudaMemcpy(d_met_ptr, met_ptr, size, cudaMemcpyHostToDevice); + + float_sw4* jac_ptr = arrays[i]["mJ"]->m_data; + size = arrays[i]["mJ"]->m_nc * + arrays[i]["mJ"]->m_ni * + arrays[i]["mJ"]->m_nj * + arrays[i]["mJ"]->m_nk * sizeof(float_sw4); + float_sw4* d_jac_ptr; + cudaMalloc((void**)&d_jac_ptr, size); + cudaMemcpy(d_jac_ptr, jac_ptr, size, cudaMemcpyHostToDevice); + + float_sw4* uacc_ptr = arrays[i]["a_Uacc"]->m_data; + // will initialize uacc content for each kernel run + int uacc_size = arrays[i]["a_Uacc"]->m_nc * + arrays[i]["a_Uacc"]->m_ni * + arrays[i]["a_Uacc"]->m_nj * + arrays[i]["a_Uacc"]->m_nk * sizeof(float_sw4); + float_sw4* d_uacc_ptr; + cudaMalloc((void**)&d_uacc_ptr, uacc_size); + + int* onesided_ptr = optr; + int nkg = optr[12]; + char op = '-'; + + int sg_str_size = (optr[7] - optr[6] + optr[9] - optr[8] + 2); + float_sw4* sg_str = (float_sw4*) malloc (sg_str_size * sizeof(float_sw4)); + for (int n = 0; n < sg_str_size; n++) sg_str[n] = n / 1000.0; + + float_sw4* d_sg_str; + cudaMalloc((void**)&d_sg_str, sg_str_size * sizeof(float_sw4)); + cudaMemcpy(d_sg_str, sg_str, sg_str_size * sizeof(float_sw4), cudaMemcpyHostToDevice); + + float_sw4* d_sg_str_x = d_sg_str; + float_sw4* d_sg_str_y = d_sg_str_x + optr[7] - optr[6] + 1; + + double time = 0.0; + + // execute kernel (need to reset device uacc content for result verification) + for (int p = 0; p < repeat; p++) { + cudaMemcpy(d_uacc_ptr, uacc_ptr, uacc_size, cudaMemcpyHostToDevice); + + cudaDeviceSynchronize(); + auto start = std::chrono::steady_clock::now(); + + curvilinear4sg_ci(optr[6], optr[7], optr[8], optr[9], optr[10], optr[11], + d_alpha_ptr, d_mua_ptr, d_lambdaa_ptr, d_met_ptr, d_jac_ptr, + d_uacc_ptr, onesided_ptr, d_acof_no_gp, d_bope, + d_ghcof_no_gp, d_acof_no_gp, d_ghcof_no_gp, d_sg_str_x, + d_sg_str_y, nkg, op); + + cudaDeviceSynchronize(); + auto end = std::chrono::steady_clock::now(); + time += std::chrono::duration_cast(end - start).count(); + } + + CheckDeviceError(cudaPeekAtLastError()); + + std::cout << "\nAverage execution time of sw4ck kernels: " + << (time * 1e-6f) / repeat << " milliseconds\n\n"; + + size = arrays[i]["a_Uacc"]->m_nc * + arrays[i]["a_Uacc"]->m_ni * + arrays[i]["a_Uacc"]->m_nj * + arrays[i]["a_Uacc"]->m_nk * sizeof(float_sw4); + cudaMemcpy(uacc_ptr, d_uacc_ptr, size, cudaMemcpyDeviceToHost); + + float_sw4 norm = arrays[i]["a_Uacc"]->norm(); + float_sw4 err = (norm - exact_norm[i]) / exact_norm[i] * 100; + std::cout << "Error = " << err << " %\n"; + + // Free host and device memory allocations + cudaFree(d_alpha_ptr); + cudaFree(d_mua_ptr); + cudaFree(d_lambdaa_ptr); + cudaFree(d_met_ptr); + cudaFree(d_jac_ptr); + cudaFree(d_uacc_ptr); + cudaFree(d_sg_str); + free(sg_str); + delete(optr); + } + cudaFree(d_cof_ptr); + free(cof_ptr); + for (int i = 0; i < 2; i++) + for (auto const& x : arrays[i]) + delete(x.second); + return 0; +} diff --git a/benchmarks/cuda/sw4ck/sw4ck.in b/benchmarks/cuda/sw4ck/sw4ck.in new file mode 100644 index 0000000..b6b621e --- /dev/null +++ b/benchmarks/cuda/sw4ck/sw4ck.in @@ -0,0 +1,32 @@ +0 0 0 0 1 1 -2 375 -2 375 -2 17 14 3 +a_U 2 3 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 8573040 +a_Mu 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +a_Lambda 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +mMetric 2 4 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 11430720 +mJ 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +a_Uacc 2 3 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 8573040 +a_AlphaVE_0 2 3 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 8573040 +mMuVE_0 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +mLambdaVE_0 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +a_AlphaVE_1 2 3 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 8573040 +mMuVE_1 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +mLambdaVE_1 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +a_AlphaVE_2 2 3 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 8573040 +mMuVE_2 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +mLambdaVE_2 2 1 378 378 20 -2 375 -2 375 -2 17 -2571154 1 378 142884 2857680 2857680 +0 0 0 0 1 1 -2 746 -2 746 -2 21 18 3 +a_U 3 3 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 40392072 +a_Mu 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +a_Lambda 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +mMetric 3 4 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 53856096 +mJ 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +a_Uacc 3 3 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 40392072 +a_AlphaVE_0 3 3 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 40392072 +mMuVE_0 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +mLambdaVE_0 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +a_AlphaVE_1 3 3 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 40392072 +mMuVE_1 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +mLambdaVE_1 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +a_AlphaVE_2 3 3 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 40392072 +mMuVE_2 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 +mLambdaVE_2 3 1 749 749 24 -2 746 -2 746 -2 21 -12340522 1 749 561001 13464024 13464024 diff --git a/benchmarks/cuda/sw4ck/utils.cpp b/benchmarks/cuda/sw4ck/utils.cpp new file mode 100644 index 0000000..a0de62e --- /dev/null +++ b/benchmarks/cuda/sw4ck/utils.cpp @@ -0,0 +1,100 @@ +class Sarray { + public: + Sarray() {} + ~Sarray(); + Sarray(int nc, int ibeg, int iend, int jbeg, int jend, int kbeg, int kend); + std::string fill(std::istringstream& iss); + void init(); + float_sw4 norm(); + std::tuple minmax(); + int m_nc, m_ni, m_nj, m_nk; + int m_ib, m_ie, m_jb, m_je, m_kb, m_ke; + ssize_t m_base; + size_t m_offi, m_offj, m_offk, m_offc, m_npts; + float_sw4* m_data; + size_t size; + int g; +}; + +std::string Sarray::fill(std::istringstream& iss) { + std::string name; + if (!(iss >> name >> g >> m_nc >> m_ni >> m_nj >> m_nk >> m_ib >> m_ie >> + m_jb >> m_je >> m_kb >> m_ke >> m_base >> m_offi >> m_offj >> m_offk >> + m_offc >> m_npts)) + return "Break"; +#ifdef VERBOSE + std::cout << name << " " << m_npts << "\n"; +#endif + size = m_nc * m_ni * m_nj * m_nk * sizeof(float_sw4); + + float_sw4* ptr = (float_sw4*) malloc (size); + if (ptr == nullptr) { + std::cerr << "malloc failed (size:" << size << " bytes)\n"; + abort(); + } + +#ifdef VERBOSE + std::cout << "Allocated " << size << " bytes " << name << "[" << g << "]\n"; +#endif + m_data = ptr; + return name; +} + +Sarray::~Sarray() { +#ifdef VERBOSE + std::cout << "Free " << size << " bytes\n"; +#endif + free(m_data); +} + +void Sarray::init() { + + const float_sw4 dx = 0.001; + int nc = m_nc; + int offi = nc; + int offj = nc*m_ni; + int offk = nc*m_ni*m_nj; + + for (int i = 0; i < m_ni; i++) + for (int j = 0; j < m_nj; j++) + for (int k = 0; k < m_nk; k++) + for (int c = 0; c < nc; c++) { + int indx = c + i * offi + j * offj + k * offk; + float_sw4 x = i*dx; + float_sw4 y = j*dx; + float_sw4 z = k*dx; + float_sw4 f = sin(x)*sin(y)*sin(z); + m_data[indx]=f; + } + +} +float_sw4 Sarray::norm() { + float_sw4 ret = 0.0; + for (size_t i = 0; i < size / 8; i++) ret += m_data[i] * m_data[i]; + return ret; +} + +std::tuple Sarray::minmax(){ + float_sw4 min = std::numeric_limits::max(); + float_sw4 max = std::numeric_limits::min(); + for (size_t i = 0; i < size / 8; i++) { + min=std::min(min,m_data[i]); + max=std::max(max,m_data[i]); + } + return std::make_tuple(min,max); +} + + +void CheckError(cudaError_t const err, const char *file, char const *const fun, + const int line) { + if (err) { + std::cerr << "CUDA Error Code[" << err << "]: " << cudaGetErrorString(err) + << " " << file << " " << fun << " Line number: " << line << "\n"; + abort(); + } +} + +#define CheckDeviceError(err) \ + CheckError(err, __FILE__, __FUNCTION__, __LINE__) + + diff --git a/benchmarks/cuda/sw4ck/utils.h b/benchmarks/cuda/sw4ck/utils.h new file mode 100644 index 0000000..7d29704 --- /dev/null +++ b/benchmarks/cuda/sw4ck/utils.h @@ -0,0 +1,29 @@ +#ifndef __UTILS_H +#define __UTILS_H + +#include + +// Use double precision for accuracy +#define float_sw4 double + +void curvilinear4sg_ci( + int ifirst, int ilast, + int jfirst, int jlast, + int kfirst, int klast, + float_sw4* d_u, + float_sw4* d_mu, + float_sw4* d_lambda, + float_sw4* d_met, + float_sw4* d_jac, + float_sw4* d_lu, + int* onesided, + float_sw4* d_acof, + float_sw4* d_bope, + float_sw4* d_ghcof, + float_sw4* d_acof_no_gp, + float_sw4* d_ghcof_no_gp, + float_sw4* d_strx, + float_sw4* d_stry, + int nk, char op); + +#endif diff --git a/benchmarks/cuda/wsm5/Makefile b/benchmarks/cuda/wsm5/Makefile new file mode 100644 index 0000000..f7f4440 --- /dev/null +++ b/benchmarks/cuda/wsm5/Makefile @@ -0,0 +1,74 @@ +#=============================================================================== +# User Options +#=============================================================================== + +# Compiler can be set below, or via environment variable +CC ?= nvcc +OPTIMIZE = yes +DEBUG = no +ARCH = sm_70 +LAUNCHER = +JIT_PATH ?=/p/vast1/koparasy/JIT/jit/build-lassen/ +JIT ?= no + +#=============================================================================== +# Program name & source code list +#=============================================================================== + +ifeq ($(JIT),yes) + SUFFIX = "-jit" +else + SUFFIX = "-aot" +endif + +program = main$(SUFFIX).x + +source = main.cu + +obj = $(source:.cu=$(SUFFIX).o) + +#=============================================================================== +# Sets Flags +#=============================================================================== + +# Standard Flags +CFLAGS := -DMKX=4 -std=c++14 -Xcompiler -Wall --offload-arch=$(ARCH) --cuda-path=${CUDA_HOME}/nvidia + +# Linker Flags +LDFLAGS = -Wl,-rpath,${CUDA_HOME}/nvidia/lib64 -L${CUDA_HOME}/nvidia/lib64 \ + -lcuda -lcudadevrt -lcudart_static -lrt -lpthread -ldl + + +# Debug Flags +ifeq ($(DEBUG),yes) + CFLAGS += -g -DDEBUG + LDFLAGS += -g +endif + +# Optimization Flags +ifeq ($(OPTIMIZE),yes) + CFLAGS += -O3 +endif + +ifeq ($(JIT),yes) + LIBLLVM_PATH=$(dir $(realpath $(CC)))../lib + CFLAGS += -fpass-plugin=$(JIT_PATH)/pass/libProteusJitPass.so -DENABLE_JIT + LDFLAGS += -Wl,-rpath,$(LIBLLVM_PATH) -L$(LIBLLVM_PATH) -lLLVM \ + -Wl,-rpath,$(JIT_PATH)/lib -L$(JIT_PATH)/lib/ -lproteusjit -lnvptxcompiler_static +endif + +#=============================================================================== +# Targets to Build +#=============================================================================== + +$(program): $(obj) Makefile + $(CC) $(CFLAGS) $(obj) -o $@ $(LDFLAGS) + +%$(SUFFIX).o: %.cu kernel.h spt.h constants.h utils.h Makefile + $(CC) $(CFLAGS) -c $< -o $@ + +clean: + rm -rf $(program) $(obj) + +run: $(program) + $(LAUNCHER) ./$(program) 10 diff --git a/benchmarks/cuda/wsm5/constants.h b/benchmarks/cuda/wsm5/constants.h new file mode 100644 index 0000000..dbea514 --- /dev/null +++ b/benchmarks/cuda/wsm5/constants.h @@ -0,0 +1,92 @@ +// WSM5 Constants + +#if 1 +# define epsilon 1.e-15 +# define r_d 287. +# define rhoair0 1.28 +# define rhosnow 100. +# define dens rhosnow +# define rhowater 1000. +# define svpt0 .27314999389648438e+03 +# define xlv 2.5e6 +#endif + +#define g 0.981000041961670E+01 +#define r_v 0.461600006103516E+03 +#define rv r_v +#define cice 0.210600000000000E+04 +#define cliq 0.419000000000000E+04 +#define denr 0.100000000000000E+04 +#define den0 0.127999997138977E+01 +#define xlf0 0.350000000000000E+06 +#define xlv0 0.250000000000000E+07 +#define xls 0.285000000000000E+07 +#define t0c 0.273149993896484E+03 +#define qmin 0.100000000362749E-14 +#define ep1 0.608362436294556E+00 +#define ep2 0.621750414371490E+00 +#define psat 0.610780029296875E+03 +#define alpha 0.120000000000000E+00 +#define n0smax 0.100000000000000E+12 +#define n0s 0.200000000000000E+07 +#define n0r 0.800000000000000E+07 +#define qcrmin 0.100000000000000E-08 +#define avtr 0.841900000000000E+03 +#define bvtr 0.800000000000000E+00 +#define g1pbr 0.931232915622909E+00 +#define g3pbr 0.469078683336385E+01 +#define g4pbr 0.178173289058329E+02 +#define g5pbro2 0.182658695197891E+01 +#define avts 0.117200000000000E+02 +#define bvts 0.410000000000000E+00 +#define g1pbs 0.886676521690526E+00 +#define g3pbs 0.301156382231086E+01 +#define g4pbs 0.102654190601850E+02 +#define g5pbso2 1.550308 +#define r0 0.800000000000000E-05 +#define peaut 0.550000000000000E+00 +#define xncr 0.300000000000000E+09 +#define xmyu 0.171800000000000E-04 +#define lamdarmax 0.800000000000000E+05 +#define lamdasmax 0.100000000000000E+06 +#define lamdagmax 0.600000000000000E+05 +#define pi 0.314159265358979E+01 +#define dicon 0.119000000000000E+02 +#define dimax 0.500000000000000E-03 +#define pfrz1 0.100000000000000E+03 +#define pfrz2 0.660000000000000E+00 +#define eacrr 0.100000000000000E+01 +#define eacrc 0.100000000000000E+01 + + double cpv = 4.*r_v ; + double cp = 7.*r_d/2. ; + double cv = cp-r_d ; + double cpd = cp ; + + //double ep_1 = r_v/r_d-1. ; + //double ep_2 = r_d/r_v ; + double pvtr = avtr*g4pbr/6. ; + double pvts = avts*g4pbs/6. ; + double xlv1 = cliq - cv ; + + double rslopermax = 1./lamdarmax ; + double rslopesmax = .10000000000000001e-04 ; // 1./lamdasmax ; + double rsloperbmax = 0.11954406247375457E-03 ; // exp(log(rslopermax) * bvtr) ; + double rslopesbmax = .89125093813374589e-02 ; // exp(log(rslopesmax) * bvts) ; + double rsloper2max = rslopermax * rslopermax ; + double rslopes2max = rslopesmax * rslopesmax ; + double rsloper3max = rsloper2max * rslopermax ; + double rslopes3max = rslopes2max * rslopesmax ; + + double pidn0r = pi*denr*n0r ; + double pidn0s = pi*dens*n0s ; + + double precs1 = 4.*n0s*.65 ; + double precs2 = 4.*n0s*.44*sqrt(avts)*g5pbso2 ; + double qc0 = 4./3.*pi*denr*(r0*r0*r0)*xncr/den0 ; + double qck1 = .104*9.8*peaut/pow((xncr*denr),(1./3.))/xmyu*pow(den0,(4./3.)) ; + double precr1 = 2.*pi*n0r*.78 ; + double precr2 = 2.*pi*n0r*.31*sqrt(avtr)*g5pbro2 ; + double pacrr = pi*n0r*avtr*g3pbr*.25*eacrr ; + double pacrc = pi*n0s*avts*g3pbs*.25*eacrc ; + double roqimax = 2.08e22*pow(dimax,8.0) ; diff --git a/benchmarks/cuda/wsm5/experiments.json b/benchmarks/cuda/wsm5/experiments.json new file mode 100644 index 0000000..12298de --- /dev/null +++ b/benchmarks/cuda/wsm5/experiments.json @@ -0,0 +1,10 @@ +{ + "name": "wsm5", + "executables": { + "aot" : "main-aot.x", + "jit": "main-jit.x" + }, + "inputs" : { + "default":"10" + } +} diff --git a/benchmarks/cuda/wsm5/kernel.h b/benchmarks/cuda/wsm5/kernel.h new file mode 100644 index 0000000..f5da2a7 --- /dev/null +++ b/benchmarks/cuda/wsm5/kernel.h @@ -0,0 +1,790 @@ +#include "spt.h" +#ifdef ENABLE_JIT +__global__ __attribute__((annotate("jit", 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34))) +#else +__global__ +#endif +__global__ void +wsm(float *__restrict__ th, const float *__restrict__ pii, + float *__restrict__ q, float *__restrict__ qc, float *__restrict__ qi, + float *__restrict__ qr, float *__restrict__ qs, + const float *__restrict__ den, const float *__restrict__ p, + const float *__restrict__ delz, float *__restrict__ rain, + float *__restrict__ rainncv, float *__restrict__ sr, + float *__restrict__ snow, float *__restrict__ snowncv, const float delt, + const int ids, const int ide, const int jds, const int jde, const int kds, + const int kde, const int ims, const int ime, const int jms, const int jme, + const int kms, const int kme, const int ips, const int ipe, const int jps, + const int jpe, const int kps, const int kpe) { + float xlf, xmi, acrfac, vt2i, vt2s, supice, diameter; + float roqi0, xni0, qimax, value, source, factor, xlwork2; + float t_k, q_k, qr_k, qc_k, qs_k, qi_k, qs1_k, qs2_k, cpm_k, xl_k, w1_k, w2_k, + w3_k; + +#define hsub xls +#define hvap xlv0 +#define cvap cpv + float ttp; + float dldt; + float xa; + float xb; + float dldti; + float xai; + float xbi; + + float qs1[MKX]; + float qs2[MKX]; + float rh1[MKX]; + float rh2[MKX]; + + if (ig < ide - ids + 1 && jg < jde - jds + 1) { + + int k; + +#include "constants.h" + + float t[MKX]; + float cpm[MKX]; + float xl[MKX]; + + for (k = kps - 1; k <= kpe - 1; k++) { + t[k] = th[P3(ti, k, tj)] * pii[P3(ti, k, tj)]; + } + + for (k = kps - 1; k <= kpe - 1; k++) { + if (qc[P3(ti, k, tj)] < 0.f) { + qc[P3(ti, k, tj)] = 0.f; + } + if (qi[P3(ti, k, tj)] < 0.f) { + qi[P3(ti, k, tj)] = 0.f; + } + if (qr[P3(ti, k, tj)] < 0.f) { + qr[P3(ti, k, tj)] = 0.f; + } + if (qs[P3(ti, k, tj)] < 0.f) { + qs[P3(ti, k, tj)] = 0.f; + } + } + + // latent heat for phase changes and heat capacity. neglect the + // changes during microphysical process calculation + // emanuel(1994) + +#define CPMCAL(x) (cpd * (1.f - MAX(x, qmin)) + MAX(x, qmin) * cpv) +#define XLCAL(x) (xlv0 - xlv1 * ((x) - t0c)) + + for (k = kps - 1; k <= kpe - 1; k++) { + cpm[k] = CPMCAL(q[P3(ti, k, tj)]); + xl[k] = XLCAL(t[k]); + } + + // compute the minor time steps. + + float dtcldcr = 120.f; + int loops = delt / dtcldcr + .5f; + + loops = MAX(loops, 1); + float dtcld = delt / loops; + if (delt <= dtcldcr) + dtcld = delt; + + int loop; + + for (loop = 1; loop <= loops; loop++) { + // initialize the large scale variables + int mstep = 1; + + ttp = t0c + 0.01f; + dldt = cvap - cliq; + xa = -dldt / rv; + xb = xa + hvap / (rv * ttp); + dldti = cvap - cice; + xai = -dldti / rv; + xbi = xai + hsub / (rv * ttp); + + float tr, ltr, tt, pp, qq; + + for (k = kps - 1; k <= kpe - 1; k++) { + + pp = p[P3(ti, k, tj)]; + tt = t[k]; + tr = ttp / tt; + ltr = logf(tr); + + qq = psat * expf(ltr * (xa) + xb * (1.f - tr)); + qq = ep2 * qq / (pp - qq); + qs1[k] = MAX(qq, qmin); + rh1[k] = MAX(q[P3(ti, k, tj)] / qs1[k], qmin); + + if (tt < ttp) { + qq = psat * expf(ltr * (xai) + xbi * (1.f - tr)); + } else { + qq = psat * expf(ltr * (xa) + xb * (1.f - tr)); + } + qq = ep2 * qq / (pp - qq); + qs2[k] = MAX(qq, qmin); + rh2[k] = MAX(q[P3(ti, k, tj)] / qs2[k], qmin); + } + + float prevp_reg; + float psdep_reg; + float praut_reg; + float psaut_reg; + float pracw_reg; + float psaci_reg; + float psacw_reg; + float pigen_reg; + float pidep_reg; + float pcond_reg; + float psmlt_reg; + float psevp_reg; + float xni[MKX]; + + for (k = kps - 1; k <= kpe - 1; k++) { + xni[k] = 1.e3f; + } + +#define DIFFUS(x, y) (8.794e-5f * expf(logf(x) * (1.81f)) / (y)) +#define VISCOS(x, y) (1.496e-6f * ((x) * sqrtf(x)) / ((x) + 120.f) / (y)) +#define XKA(x, y) (1.414e3f * VISCOS((x), (y)) * (y)) +#define DIFFAC(a, b, c, d, e) \ + ((d) * (a) * (a) / (XKA((c), (d)) * rv * (c) * (c)) + \ + 1.f / ((e) * DIFFUS((c), (b)))) +#define VENFAC(a, b, c) \ + (expf(logf((VISCOS((b), (c)) / DIFFUS((b), (a)))) * ((.3333333f))) * \ + rsqrtf(VISCOS((b), (c))) * sqrtf(sqrtf(den0 / (c)))) + +#define LAMDAR(x, y) sqrtf(sqrtf(pidn0r / ((x) * (y)))) +#define LAMDAS(x, y, z) sqrtf(sqrtf(pidn0s *(z) / ((x) * (y)))) + + // calculate mstep for this column + + float rsloper[MKX]; + float rslopebr[MKX]; + float rslope2r[MKX]; + float rslope3r[MKX]; + float rslopes[MKX]; + float rslopebs[MKX]; + float rslope2s[MKX]; + float rslope3s[MKX]; + float denfac[MKX]; + float n0sfac[MKX]; + + float w1[MKX]; + float w2[MKX]; + float w3[MKX]; + + float w; + float rmstep; + int numdt; + for (k = kps - 1; k <= kpe - 1; k++) { + float supcol = t0c - t[k]; + n0sfac[k] = MAX(MIN(expf(alpha * supcol), n0smax / n0s), 1.f); + if (qr[P3(ti, k, tj)] <= qcrmin) { + rsloper[k] = rslopermax; + rslopebr[k] = rsloperbmax; + rslope2r[k] = rsloper2max; + rslope3r[k] = rsloper3max; + } else { + rsloper[k] = 1.f / LAMDAR(qr[P3(ti, k, tj)], den[P3(ti, k, tj)]); + rslopebr[k] = expf(logf(rsloper[k]) * bvtr); + rslope2r[k] = rsloper[k] * rsloper[k]; + rslope3r[k] = rslope2r[k] * rsloper[k]; + } + if (qs[P3(ti, k, tj)] <= qcrmin) { + rslopes[k] = rslopesmax; + rslopebs[k] = rslopesbmax; + rslope2s[k] = rslopes2max; + rslope3s[k] = rslopes3max; + } else { + rslopes[k] = + 1.f / LAMDAS(qs[P3(ti, k, tj)], den[P3(ti, k, tj)], n0sfac[k]); + rslopebs[k] = expf(logf(rslopes[k]) * bvts); + rslope2s[k] = rslopes[k] * rslopes[k]; + rslope3s[k] = rslope2s[k] * rslopes[k]; + } + denfac[k] = sqrtf(den0 / den[P3(ti, k, tj)]); + w1[k] = pvtr * rslopebr[k] * denfac[k] / delz[P3(ti, k, tj)]; + w2[k] = pvts * rslopebs[k] * denfac[k] / delz[P3(ti, k, tj)]; + + w = MAX(w1[k], w2[k]); + numdt = MAX((int)trunc(w * dtcld + .5f + .5f), 1); + if (numdt >= mstep) + mstep = numdt; + //------------------------------------------------------------- + // Ni: ice crystal number concentration [HDC 5c] + //------------------------------------------------------------- + float temp = (den[P3(ti, k, tj)] * MAX(qi[P3(ti, k, tj)], qmin)); + temp = sqrtf(sqrtf(temp * temp * temp)); + xni[k] = MIN(MAX(5.38e7f * temp, 1.e3f), 1.e6f); + } + rmstep = 1.f / mstep; + + int n; + float dtcldden, coeres, rdelz; + + float den_k, falk1_k, falk1_kp1, fall1_k, delz_k, delz_kp1; + float falk2_k, falk2_kp1, fall2_k; + + for (n = 1; n <= mstep; n++) { + k = kpe - 1; + den_k = den[P3(ti, k, tj)]; + falk1_kp1 = den_k * qr[P3(ti, k, tj)] * w1[k] * rmstep; + falk2_kp1 = den_k * qs[P3(ti, k, tj)] * w2[k] * rmstep; + dtcldden = dtcld / den_k; + qr[P3(ti, k, tj)] = MAX(qr[P3(ti, k, tj)] - falk1_kp1 * dtcldden, 0.f); + qs[P3(ti, k, tj)] = MAX(qs[P3(ti, k, tj)] - falk2_kp1 * dtcldden, 0.f); + delz_kp1 = delz[P3(ti, k, tj)]; + for (k = kpe - 2; k >= kps - 1; k--) { + den_k = den[P3(ti, k, tj)]; + falk1_k = den_k * qr[P3(ti, k, tj)] * w1[k] * rmstep; + fall1_k = falk1_k; + falk2_k = den_k * qs[P3(ti, k, tj)] * w2[k] * rmstep; + fall2_k = falk2_k; + dtcldden = dtcld / den_k; + delz_k = delz[P3(ti, k, tj)]; + rdelz = 1.f / delz_k; + qr[P3(ti, k, tj)] = + MAX(qr[P3(ti, k, tj)] - + (falk1_k - falk1_kp1 * delz_kp1 * rdelz) * dtcldden, + 0.f); + qs[P3(ti, k, tj)] = + MAX(qs[P3(ti, k, tj)] - + (falk2_k - falk2_kp1 * delz_kp1 * rdelz) * dtcldden, + 0.f); + delz_kp1 = delz_k; + falk1_kp1 = falk1_k; + falk2_kp1 = falk2_k; + } + + for (k = kpe - 1; k >= kps - 1; k--) { + if (t[k] > t0c && qs[P3(ti, k, tj)] > 0.f) { + xlf = xlf0; + w3[k] = VENFAC(p[P3(ti, k, tj)], t[k], den[P3(ti, k, tj)]); + coeres = rslope2s[k] * sqrtf(rslopes[k] * rslopebs[2]); + psmlt_reg = XKA(t[k], den[P3(ti, k, tj)]) / xlf * (t0c - t[k]) * + pi / 2.f * n0sfac[k] * + (precs1 * rslope2s[k] + precs2 * w3[k] * coeres); + psmlt_reg = MIN( + MAX(psmlt_reg * dtcld * rmstep, -qs[P3(ti, k, tj)] * rmstep), + 0.f); + qs[P3(ti, k, tj)] += psmlt_reg; + qr[P3(ti, k, tj)] -= psmlt_reg; + t[k] += xlf / CPMCAL(q[P3(ti, k, tj)]) * psmlt_reg; + } + } + } + + //--------------------------------------------------------------- + // Vice [ms-1] : fallout of ice crystal [HDC 5a] + //--------------------------------------------------------------- + mstep = 1; + numdt = 1; + for (k = kpe - 1; k >= kps - 1; k--) { + if (qi[P3(ti, k, tj)] <= 0.f) { + w2[k] = 0.f; + } else { + xmi = den[P3(ti, k, tj)] * qi[P3(ti, k, tj)] / xni[k]; + diameter = MAX(MIN(dicon * sqrtf(xmi), dimax), 1.e-25f); + w1[k] = 1.49e4f * expf(logf(diameter) * (1.31f)); + w2[k] = w1[k] / delz[P3(ti, k, tj)]; + } + numdt = MAX((int)trunc(w2[k] * dtcld + .5f + .5f), 1); + if (numdt > mstep) + mstep = numdt; + } + rmstep = 1.f / mstep; + + float falkc_k, falkc_kp1, fallc_k, fallc_kp1; + for (n = 1; n <= mstep; n++) { + k = kpe - 1; + den_k = den[P3(ti, k, tj)]; + falkc_kp1 = den_k * qi[P3(ti, k, tj)] * w2[k] * rmstep; + fallc_kp1 = fallc_kp1 + falkc_kp1; + qi[P3(ti, k, tj)] = + MAX(qi[P3(ti, k, tj)] - falkc_kp1 * dtcld / den_k, 0.f); + delz_kp1 = delz[P3(ti, k, tj)]; + for (k = kpe - 2; k >= kps - 1; k--) { + den_k = den[P3(ti, k, tj)]; + falkc_k = den_k * qi[P3(ti, k, tj)] * w2[k] * rmstep; + fallc_k = fallc_k + falkc_k; + delz_k = delz[P3(ti, k, tj)]; + qi[P3(ti, k, tj)] = + MAX(qi[P3(ti, k, tj)] - + (falkc_k - falkc_kp1 * delz_kp1 / delz_k) * dtcld / den_k, + 0.f); + delz_kp1 = delz_k; + falkc_kp1 = falkc_k; + fallc_kp1 = fallc_k; + } + } + float fallsum = fall1_k + fall2_k + fallc_k; + float fallsum_qsi = fall2_k + fallc_k; + + rainncv[P2(ti, tj)] = 0.f; + if (fallsum > 0.f) { + rainncv[P2(ti, tj)] = + fallsum * delz[P3(ti, 1, tj)] / denr * dtcld * 1000.f; + rain[P2(ti, tj)] = + fallsum * delz[P3(ti, 1, tj)] / denr * dtcld * 1000.f + + rain[P2(ti, tj)]; + } + snowncv[P2(ti, tj)] = 0.f; + if (fallsum_qsi > 0.f) { + snowncv[P2(ti, tj)] = + fallsum_qsi * delz[P3(ti, 0, tj)] / denr * dtcld * 1000.f; + snow[P2(ti, tj)] = + fallsum_qsi * delz[P3(ti, 0, tj)] / denr * dtcld * 1000.f + + snow[P2(ti, tj)]; + } + sr[P2(ti, tj)] = 0.f; + if (fallsum > 0.f) + sr[P2(ti, tj)] = fallsum_qsi * delz[P3(ti, 0, tj)] / denr * dtcld * + 1000.f / (rainncv[P2(ti, tj)] + 1.e-12f); + + //--------------------------------------------------------------- + // pimlt: instantaneous melting of cloud ice [HL A47] [RH83 A28] + // (T>T0: I->C) + //--------------------------------------------------------------- + + for (k = kps - 1; k <= kpe - 1; k++) { + + // note -- many of these are turned into scalars of form name_reg by + // _def_ above so that they will be stored in registers + prevp_reg = 0.f; + psdep_reg = 0.f; + praut_reg = 0.f; + psaut_reg = 0.f; + pracw_reg = 0.f; + psaci_reg = 0.f; + psacw_reg = 0.f; + pigen_reg = 0.f; + pidep_reg = 0.f; + pcond_reg = 0.f; + psevp_reg = 0.f; + + q_k = q[P3(ti, k, tj)]; + t_k = t[k]; + qr_k = qr[P3(ti, k, tj)]; + qc_k = qc[P3(ti, k, tj)]; + qs_k = qs[P3(ti, k, tj)]; + qi_k = qi[P3(ti, k, tj)]; + qs1_k = qs1[k]; + qs2_k = qs2[k]; + cpm_k = cpm[k]; + xl_k = xl[k]; + + float supcol = t0c - t_k; + xlf = xls - xl_k; + if (supcol < 0.f) + xlf = xlf0; + if (supcol < 0.f && qi_k > 0.f) { + qc_k = qc_k + qi_k; + t_k = t_k - xlf / cpm_k * qi_k; + qi_k = 0.f; + } + //--------------------------------------------------------------- + // pihmf: homogeneous freezing of cloud water below -40c [HL A45] + // (T<-40C: C->I) + //--------------------------------------------------------------- + if (supcol > 40.f && qc_k > 0.f) { + qi_k = qi_k + qc_k; + t_k = t_k + xlf / cpm_k * qc_k; + qc_k = 0.f; + } + //--------------------------------------------------------------- + // pihtf: heterogeneous freezing of cloud water [HL A44] + // (T0>T>-40C: C->I) + //--------------------------------------------------------------- + if (supcol > 0.f && qc_k > 0.f) { + float pfrzdtc = + MIN(pfrz1 * (expf(pfrz2 * supcol) - 1.f) * den[P3(ti, k, tj)] / + denr / xncr * qc_k * qc_k * dtcld, + qc_k); + qi_k = qi_k + pfrzdtc; + t_k = t_k + xlf / cpm_k * pfrzdtc; + qc_k = qc_k - pfrzdtc; + } + //--------------------------------------------------------------- + // psfrz: freezing of rain water [HL A20] [LFO 45] + // (TS) + //--------------------------------------------------------------- + if (supcol > 0.f && qr_k > 0.f) { + float temp = rsloper[k]; + temp = temp * temp * temp * temp * temp * temp * temp; + float pfrzdtr = + MIN(20.f * (pi * pi) * pfrz1 * n0r * denr / den[P3(ti, k, tj)] * + (expf(pfrz2 * supcol) - 1.f) * temp * dtcld, + qr_k); + qs_k = qs_k + pfrzdtr; + t_k = t_k + xlf / cpm_k * pfrzdtr; + qr_k = qr_k - pfrzdtr; + } + + //---------------------------------------------------------------- + // rsloper: reverse of the slope parameter of the rain(m) + // xka: thermal conductivity of air(jm-1s-1k-1) + // work1: the thermodynamic term in the denominator associated with + // heat conduction and vapor diffusion + // (ry88, y93, h85) + // work2: parameter associated with the ventilation effects(y93) + + n0sfac[k] = MAX(MIN(expf(alpha * supcol), n0smax / n0s), 1.f); + if (qr_k <= qcrmin) { + rsloper[k] = rslopermax; + rslopebr[k] = rsloperbmax; + rslope2r[k] = rsloper2max; + rslope3r[k] = rsloper3max; + } else { + rsloper[k] = + 1.f / (sqrtf(sqrtf(pidn0r / ((qr_k) * (den[P3(ti, k, tj)]))))); + rslopebr[k] = expf(logf(rsloper[k]) * bvtr); + rslope2r[k] = rsloper[k] * rsloper[k]; + rslope3r[k] = rslope2r[k] * rsloper[k]; + } + if (qs_k <= qcrmin) { + rslopes[k] = rslopesmax; + rslopebs[k] = rslopesbmax; + rslope2s[k] = rslopes2max; + rslope3s[k] = rslopes3max; + } else { + rslopes[k] = 1.f / (sqrtf(sqrtf(pidn0s * (n0sfac[k]) / + ((qs_k) * (den[P3(ti, k, tj)]))))); + rslopebs[k] = expf(logf(rslopes[k]) * bvts); + rslope2s[k] = rslopes[k] * rslopes[k]; + rslope3s[k] = rslope2s[k] * rslopes[k]; + } + + w1_k = DIFFAC(xl_k, p[P3(ti, k, tj)], t_k, den[P3(ti, k, tj)], qs1_k); + w2_k = DIFFAC(xls, p[P3(ti, k, tj)], t_k, den[P3(ti, k, tj)], qs2_k); + w3_k = VENFAC(p[P3(ti, k, tj)], t_k, den[P3(ti, k, tj)]); + + // + //=============================================================== + // + // warm rain processes + // + // - follows the processes in RH83 and LFO except for autoconcersion + // + //=============================================================== + // + float supsat = MAX(q_k, qmin) - qs1_k; + float satdt = supsat / dtcld; + //--------------------------------------------------------------- + // praut: auto conversion rate from cloud to rain [HDC 16] + // (C->R) + //--------------------------------------------------------------- + if (qc_k > qc0) { + praut_reg = qck1 * expf(logf(qc_k) * ((7.f / 3.f))); + praut_reg = MIN(praut_reg, qc_k / dtcld); + } + //--------------------------------------------------------------- + // pracw: accretion of cloud water by rain [HL A40] [LFO 51] + // (C->R) + //--------------------------------------------------------------- + if (qr_k > qcrmin && qc_k > qmin) { + pracw_reg = MIN(pacrr * rslope3r[k] * rslopebr[k] * qc_k * denfac[k], + qc_k / dtcld); + } + //--------------------------------------------------------------- + // prevp: evaporation/condensation rate of rain [HDC 14] + // (V->R or R->V) + //--------------------------------------------------------------- + if (qr_k > 0.f) { + coeres = rslope2r[k] * sqrtf(rsloper[k] * rslopebr[k]); + prevp_reg = (rh1[k] - 1.f) * + (precr1 * rslope2r[k] + precr2 * w3_k * coeres) / w1_k; + if (prevp_reg < 0.f) { + prevp_reg = MAX(prevp_reg, -qr_k / dtcld); + prevp_reg = MAX(prevp_reg, satdt / 2.f); + } else { + prevp_reg = MIN(prevp_reg, satdt / 2.f); + } + } + + // + //=============================================================== + // + // cold rain processes + // + // - follows the revised ice microphysics processes in HDC + // - the processes same as in RH83 and RH84 and LFO behave + // following ice crystal hapits defined in HDC, inclduing + // intercept parameter for snow (n0s), ice crystal number + // concentration (ni), ice nuclei number concentration + // (n0i), ice diameter (d) + // + //=============================================================== + // + float rdtcld = 1.f / dtcld; + supsat = MAX(q_k, qmin) - qs2_k; + satdt = supsat / dtcld; + int ifsat = 0; + //------------------------------------------------------------- + // Ni: ice crystal number concentraiton [HDC 5c] + //------------------------------------------------------------- + float temp = (den[P3(ti, k, tj)] * MAX(qi_k, qmin)); + temp = sqrtf(sqrtf(temp * temp * temp)); + xni[k] = MIN(MAX(5.38e7f * temp, 1.e3f), 1.e6f); + float eacrs = expf(0.07f * (-supcol)); + //------------------------------------------------------------- + // psacw: Accretion of cloud water by snow [HL A7] [LFO 24] + // (TS, and T>=T0: C->R) + //------------------------------------------------------------- + if (qs_k > qcrmin && qc_k > qmin) { + psacw_reg = MIN(pacrc * n0sfac[k] * rslope3s[k] * rslopebs[k] * qc_k * + denfac[k], + qc_k * rdtcld); + } + // + if (supcol > 0) { + if (qs_k > qcrmin && qi_k > qmin) { + xmi = den[P3(ti, k, tj)] * qi_k / xni[k]; + diameter = MIN(dicon * sqrtf(xmi), dimax); + vt2i = 1.49e4f * powf(diameter, 1.31f); + vt2s = pvts * rslopebs[k] * denfac[k]; + //------------------------------------------------------------- + // psaci: Accretion of cloud ice by rain [HDC 10] + // (TS) + //------------------------------------------------------------- + acrfac = 2.f * rslope3s[k] + 2.f * diameter * rslope2s[k] + + diameter * diameter * rslopes[k]; + psaci_reg = pi * qi_k * eacrs * n0s * n0sfac[k] * abs(vt2s - vt2i) * + acrfac * .25f; + } + //------------------------------------------------------------- + // pidep: Deposition/Sublimation rate of ice [HDC 9] + // (TI or I->V) + //------------------------------------------------------------- + if (qi_k > 0 && ifsat != 1) { + xmi = den[P3(ti, k, tj)] * qi_k / xni[k]; + diameter = dicon * sqrtf(xmi); + pidep_reg = 4.f * diameter * xni[k] * (rh2[k] - 1.f) / w2_k; + supice = satdt - prevp_reg; + if (pidep_reg < 0.f) { + pidep_reg = MAX(MAX(pidep_reg, satdt * .5f), supice); + pidep_reg = MAX(pidep_reg, -qi_k * rdtcld); + } else { + pidep_reg = MIN(MIN(pidep_reg, satdt * .5f), supice); + } + if (abs(prevp_reg + pidep_reg) >= abs(satdt)) + ifsat = 1; + } + //------------------------------------------------------------- + // psdep: deposition/sublimation rate of snow [HDC 14] + // (V->S or S->V) + //------------------------------------------------------------- + if (qs_k > 0.f && ifsat != 1) { + coeres = rslope2s[k] * sqrtf(rslopes[k] * rslopebs[k]); + psdep_reg = (rh2[k] - 1.f) * n0sfac[k] * + (precs1 * rslope2s[k] + precs2 * w3_k * coeres) / w2_k; + supice = satdt - prevp_reg - pidep_reg; + if (psdep_reg < 0.f) { + psdep_reg = MAX(psdep_reg, -qs_k * rdtcld); + psdep_reg = MAX(MAX(psdep_reg, satdt * .5f), supice); + } else { + psdep_reg = MIN(MIN(psdep_reg, satdt * .5f), supice); + } + if (abs(prevp_reg + pidep_reg + psdep_reg) >= abs(satdt)) + ifsat = 1; + } + //------------------------------------------------------------- + // pigen: generation(nucleation) of ice from vapor [HL A50] [HDC 7-8] + // (TI) + //------------------------------------------------------------- + if (supsat > 0 && ifsat != 1) { + supice = satdt - prevp_reg - pidep_reg - psdep_reg; + xni0 = 1.e3f * expf(0.1f * supcol); + roqi0 = 4.92e-11f * expf(logf(xni0) * (1.33f)); + pigen_reg = MAX(0.f, (roqi0 / den[P3(ti, k, tj)] - MAX(qi_k, 0.f)) * + rdtcld); + pigen_reg = MIN(MIN(pigen_reg, satdt), supice); + } + // + //------------------------------------------------------------- + // psaut: conversion(aggregation) of ice to snow [HDC 12] + // (TS) + //------------------------------------------------------------- + if (qi_k > 0.f) { + qimax = roqimax / den[P3(ti, k, tj)]; + psaut_reg = MAX(0.f, (qi_k - qimax) * rdtcld); + } + } + //------------------------------------------------------------- + // psevp: Evaporation of melting snow [HL A35] [RH83 A27] + // (T>T0: S->V) + //------------------------------------------------------------- + if (supcol < 0.f) { + if (qs_k > 0.f && rh1[k] < 1.f) { + psevp_reg = psdep_reg * w2_k / w1_k; + } // asked Jimy about this, 11.6.07, JM + psevp_reg = MIN(MAX(psevp_reg, -qs_k * rdtcld), 0.f); + } + + // check mass conservation of generation terms and feedback to the + // large scale + if (t_k <= t0c) { + // + // cloud water + // + value = MAX(qmin, qc_k); + source = (praut_reg + pracw_reg + psacw_reg) * dtcld; + if (source > value) { + factor = value / source; + praut_reg = praut_reg * factor; + pracw_reg = pracw_reg * factor; + psacw_reg = psacw_reg * factor; + } + // + // cloud ice + // + value = MAX(qmin, qi_k); + source = (psaut_reg + psaci_reg - pigen_reg - pidep_reg) * dtcld; + if (source > value) { + factor = value / source; + psaut_reg = psaut_reg * factor; + psaci_reg = psaci_reg * factor; + pigen_reg = pigen_reg * factor; + pidep_reg = pidep_reg * factor; + } + + // + // rain (added for WRFV3.0.1) + // + value = MAX(qmin, qr_k); + source = (-praut_reg + pracw_reg - prevp_reg) * dtcld; + if (source > value) { + factor = value / source; + praut_reg = praut_reg * factor; + pracw_reg = pracw_reg * factor; + prevp_reg = prevp_reg * factor; + } + // + // snow (added for WRFV3.0.1) + // + value = MAX(qmin, qs_k); + source = (-psdep_reg + psaut_reg - psaci_reg - psacw_reg) * dtcld; + if (source > value) { + factor = value / source; + psdep_reg = psdep_reg * factor; + psaut_reg = psaut_reg * factor; + psaci_reg = psaci_reg * factor; + psacw_reg = psacw_reg * factor; + } + // (end added for WRFV3.0.1) + + // + w3_k = -(prevp_reg + psdep_reg + pigen_reg + pidep_reg); + // update + q_k = q_k + w3_k * dtcld; + qc_k = MAX(qc_k - (praut_reg + pracw_reg + psacw_reg) * dtcld, 0.f); + qr_k = MAX(qr_k + (praut_reg + pracw_reg + prevp_reg) * dtcld, 0.f); + qi_k = MAX(qi_k - (psaut_reg + psaci_reg - pigen_reg - pidep_reg) * + dtcld, + 0.f); + qs_k = MAX(qs_k + (psdep_reg + psaut_reg + psaci_reg + psacw_reg) * + dtcld, + 0.f); + xlf = xls - xl_k; + xlwork2 = -xls * (psdep_reg + pidep_reg + pigen_reg) - + xl_k * prevp_reg - xlf * psacw_reg; + t_k = t_k - xlwork2 / cpm_k * dtcld; + } else { + // + // cloud water + // + value = MAX(qmin, qc_k); + source = (praut_reg + pracw_reg + psacw_reg) * dtcld; + if (source > value) { + factor = value / source; + praut_reg = praut_reg * factor; + pracw_reg = pracw_reg * factor; + psacw_reg = psacw_reg * factor; + } + // + // rain (added for WRFV3.0.1) + // + value = MAX(qmin, qr_k); + source = (-praut_reg - pracw_reg - prevp_reg - psacw_reg) * dtcld; + if (source > value) { + factor = value / source; + praut_reg = praut_reg * factor; + pracw_reg = pracw_reg * factor; + prevp_reg = prevp_reg * factor; + psacw_reg = psacw_reg * factor; + } + // (end added for WRFV3.0.1) + // + // snow + // + value = MAX(qcrmin, qs_k); + source = (-psevp_reg) * dtcld; + if (source > value) { + factor = value / source; + psevp_reg = psevp_reg * factor; + } + w3_k = -(prevp_reg + psevp_reg); + // update + q_k = q_k + w3_k * dtcld; + qc_k = MAX(qc_k - (praut_reg + pracw_reg + psacw_reg) * dtcld, 0.f); + qr_k = MAX(qr_k + (praut_reg + pracw_reg + prevp_reg + psacw_reg) * + dtcld, + 0.f); + qs_k = MAX(qs_k + psevp_reg * dtcld, 0.f); + xlf = xls - xl_k; + xlwork2 = -xl_k * (prevp_reg + psevp_reg); + t_k = t_k - xlwork2 / cpm_k * dtcld; + } + // + // Inline expansion for fpvs + cvap = cpv; + ttp = t0c + 0.01f; + dldt = cvap - cliq; + xa = -dldt / rv; + xb = xa + hvap / (rv * ttp); + dldti = cvap - cice; + xai = -dldti / rv; + xbi = xai + hsub / (rv * ttp); + tr = ttp / t_k; + qs1_k = psat * expf(logf(tr) * (xa)) * expf(xb * (1.f - tr)); + qs1_k = ep2 * qs1_k / (p[P3(ti, k, tj)] - qs1_k); + qs1_k = MAX(qs1_k, qmin); + + // pcond: condensational/evaporational rate of cloud water [HL A46] + // [RH83 A6] + // if there exists additional water vapor condensated/if + // evaporation of cloud water is not enough to remove subsaturation + + w1_k = ((MAX(q_k, qmin) - (qs1_k)) / + (1.f + + (xl_k) * (xl_k) / (rv * (cpm_k)) * (qs1_k) / ((t_k) * (t_k)))); + // w3_k = qc_k+w1_k ; NOT USED + pcond_reg = MIN(MAX(w1_k / dtcld, 0.f), MAX(q_k, 0.f) / dtcld); + if (qc_k > 0.f && w1_k < 0.f) { + pcond_reg = MAX(w1_k, -qc_k) / dtcld; + } + q_k = q_k - pcond_reg * dtcld; + qc_k = MAX(qc_k + pcond_reg * dtcld, 0.f); + t_k = t_k + pcond_reg * xl_k / cpm_k * dtcld; + + // padding for small values + if (qc_k <= qmin) + qc_k = 0.f; + if (qi_k <= qmin) + qi_k = 0.f; + + q[P3(ti, k, tj)] = q_k; + t[k] = t_k; + qr[P3(ti, k, tj)] = qr_k; + qc[P3(ti, k, tj)] = qc_k; + qs[P3(ti, k, tj)] = qs_k; + qi[P3(ti, k, tj)] = qi_k; + qs1[k] = qs1_k; + } + } + + for (k = kps - 1; k <= kpe - 1; k++) + th[P3(ti, k, tj)] = t[k] / pii[P3(ti, k, tj)]; + } +} diff --git a/benchmarks/cuda/wsm5/main.cu b/benchmarks/cuda/wsm5/main.cu new file mode 100644 index 0000000..ab307a1 --- /dev/null +++ b/benchmarks/cuda/wsm5/main.cu @@ -0,0 +1,114 @@ +#include +#include +#include +#include +#include +#include "utils.h" +#include "kernel.h" + +int main(int argc, char* argv[]) +{ + if (argc != 2) { + printf("Usage: %s \n", argv[0]); + return 1; + } + const int repeat = atoi(argv[1]); + float *th, *pii, *q; + float *qc, *qi, *qr, *qs; + float *den, *p, *delz; + float *rain,*rainncv; + float *sr; + float *snow, *snowncv; + + float delt = 10.f; + int ims = 0, ime = 59, jms = 0, jme = 45, kms = 0, kme = 2; + int ips = 0, ipe = 59, jps = 0, jpe = 45, kps = 0, kpe = 2; + int d3 = (ime-ims+1) * (jme-jms+1) * (kme-kms+1) ; + int d2 = (ime-ims+1) * (jme-jms+1) ; + + int dips = 0 ; int dipe = (ipe-ips+1) ; + int djps = 0 ; int djpe = (jpe-jps+1) ; + int dkps = 0 ; int dkpe = (kpe-kps+1) ; + + int remx = (ipe-ips+1) % XXX != 0 ? 1 : 0 ; + int remy = (jpe-jps+1) % YYY != 0 ? 1 : 0 ; + + dim3 dimBlock( XXX , YYY ) ; + dim3 dimGrid ( (ipe-ips+1) / XXX + remx , (jpe-jps+1) / YYY + remy ) ; + + float rain_sum = 0, snow_sum = 0; + + long time = 0; + for (int i = 0; i < repeat; i++) { + // read-only in the kernel + TODEV3(pii) ; + TODEV3(den) ; + TODEV3(p) ; + TODEV3(delz) ; + + TODEV3(th) ; + TODEV3(q) ; + TODEV3(qc) ; + TODEV3(qi) ; + TODEV3(qr) ; + TODEV3(qs) ; + TODEV2(rain) ; + TODEV2(rainncv) ; + TODEV2(sr) ; + TODEV2(snow) ; + TODEV2(snowncv) ; + + cudaDeviceSynchronize(); + auto start = std::chrono::steady_clock::now(); + + wsm <<< dimGrid, dimBlock >>> ( + th_d, pii_d, q_d, qc_d, qi_d, qr_d, qs_d, den_d, p_d, delz_d, + rain_d, rainncv_d, + sr_d, + snow_d, snowncv_d, + delt, + dips+1 , (ipe-ips+1) , // ids, ide + djps+1 , (jpe-jps+1) , // jds, jde + dkps+1 , (kpe-kps+1), // kds, kde + dips+1 , dipe , // ims, ime + djps+1 , djpe , // jms, jme + dkps+1 , dkpe, // kms, kme + dips+1 , dipe , // ips, ipe + djps+1 , djpe , // jps, jpe + dkps+1 , dkpe) ; // kps, kpe + + cudaDeviceSynchronize() ; + auto end = std::chrono::steady_clock::now(); + time += std::chrono::duration_cast(end - start).count(); + + FROMDEV2(rain) ; + FROMDEV2(snow) ; + + rain_sum = snow_sum = 0; + for (int i = 0; i < d2; i++) { + rain_sum += rain[i]; + snow_sum += snow[i]; + } + + FREE(pii) ; + FREE(den) ; + FREE(p) ; + FREE(delz) ; + FREE(th) ; + FREE(q) ; + FREE(qc) ; + FREE(qi) ; + FREE(qr) ; + FREE(qs) ; + FREE(rain) ; + FREE(rainncv) ; + FREE(sr) ; + FREE(snow) ; + FREE(snowncv) ; + } + + printf("Average kernel execution time: %lf (ms)\n", (time * 1e-6) / repeat); + printf("Checksum: rain = %f snow = %f\n", rain_sum, snow_sum); + + return(0) ; +} diff --git a/benchmarks/cuda/wsm5/spt.h b/benchmarks/cuda/wsm5/spt.h new file mode 100644 index 0000000..2904b11 --- /dev/null +++ b/benchmarks/cuda/wsm5/spt.h @@ -0,0 +1,64 @@ +// The lower bound to MKX is kpe - kps + 1 +#ifndef MKX + #error(need a defined constant MKX that is static number of levels) +#endif + +#define bi blockIdx.x +#define bj blockIdx.y +#define bx blockDim.x +#define by blockDim.y +#define ti threadIdx.x +#define tj threadIdx.y + +# define ix (ime-ims+1) +# define jx (jme-jms+1) +# define kx (kme-kms+1) + + +// basic indexing macros. indices are always given as global indices +// in undecompsed Domain(ids:ide,jds:jde) +// +// That is, given IJ (global index), the global Index mapped to +// a local index on a Patch(0:nx-1,0:ny-1) in Device Memory as: +// +// I - (ips-ims) + nx * ( J - (jps-jms) ) +// +// where ips is the global index of the start of the patch (the -1 is +// for translating from WRF fortran indices). +// +// The global index I is mapped to a local index on a GPU Block's +// shared memory (0:bx-1, 0:by-1) as: +// +// I - (ips-ims) - bi * bx + by * ( J - (jps-jms) - bj * by ) +// +// Where bi is the index into the GPU Block, and bx is the +// GPU Block Width. + +// global to patch index converter +#define GtoP(i,p,P) ((i)-(p)+(P)) +#define GtoB(i,n,N,p,P) ((i)-(p)+(P)-(n)*(N)) + +// thread index to local memory index = i + bi * bx + ips - ims +#define TtoP(i,a,b,c,d) ((i)+(a)*(b)+(c)-(d)) + +#define MAX(x,y) ((x)>(y)?(x):(y)) +#define MIN(x,y) ((x)<(y)?(x):(y)) + +// basic indexing macros +#define I2(i,j,m) ((i)+((j)*(m))) +#define I3(i,j,m,k,n) (I2(i,j,m)+((k)*(m)*(n))) + +// index into a patch stored on device memory - 1 +# define P2(i,j) I2(TtoP(i,bi,bx,ips,ims),TtoP(j,bj,by,jps,jms),ime-ims+1) +# define P3(i,k,j) I3(TtoP(i,bi,bx,ips,ims),k,ime-ims+1,TtoP(j,bj,by,jps,jms),kme-kms+1) + +// index into a block stored on shared memory +# define S2(i,j) I2(i,j,bx) +//# define S3(i,k,j) I3(i,k,bx,j,kme-kms+1) +//# define S3(i,k,j) I3(i,j,bx,k,by) +# define S3(i,k,j) I3(k,i,kx,j,bx) + +#define ig (TtoP(ti,bi,bx,ips,ims)) +#define jg (TtoP(tj,bj,by,jps,jms)) + + diff --git a/benchmarks/cuda/wsm5/utils.h b/benchmarks/cuda/wsm5/utils.h new file mode 100644 index 0000000..46d4076 --- /dev/null +++ b/benchmarks/cuda/wsm5/utils.h @@ -0,0 +1,25 @@ +// thread block sizes +#define XXX 8 +#define YYY 8 + +// data allocation on host and device +// data initialization on host +// host to device copy +# define TODEV(A,s) A = (float*) malloc ((s) * sizeof(float)); \ + for (int i = 0; i < s; i++) A[i] = 0.001; \ + float *A##_d;\ + cudaMalloc((void**)&A##_d,((s))*sizeof(float));\ + cudaMemcpy(A##_d, A, (s)*sizeof(float), cudaMemcpyHostToDevice); + +// device to host copy +# define FROMDEV(A,s) cudaMemcpy(A, A##_d, (s)*sizeof(float), cudaMemcpyDeviceToHost); + +// deallocation host and device memory +# define FREE(A) free(A);\ + cudaFree(A##_d) + +# define TODEV3(A) TODEV(A,d3) +# define TODEV2(A) TODEV(A,d2) +# define FROMDEV3(A) FROMDEV(A,d3) +# define FROMDEV2(A) FROMDEV(A,d2) + diff --git a/benchmarks/driver.py b/benchmarks/driver.py new file mode 100644 index 0000000..056665d --- /dev/null +++ b/benchmarks/driver.py @@ -0,0 +1,576 @@ +import argparse +import pandas as pd +from pathlib import Path +import pathlib +import subprocess +import json +import os +import cxxfilt +import time +import re + +NUM_REPEATS = 3 + +env_configs = { + # Setting same env vars used in jit for aot, jitify to simplify dataframe + # creation. + "aot": [ + { + "ENV_PROTEUS_USE_STORED_CACHE": "0", + "ENV_PROTEUS_SET_LAUNCH_BOUNDS": "0", + "ENV_PROTEUS_SPECIALIZE_ARGS": "0", + }, + ], + "jitify": [ + { + "ENV_PROTEUS_USE_STORED_CACHE": "0", + "ENV_PROTEUS_SET_LAUNCH_BOUNDS": "0", + "ENV_PROTEUS_SPECIALIZE_ARGS": "0", + }, + ], + "jit": [ + # Without using stored cache. + { + "ENV_PROTEUS_USE_STORED_CACHE": "0", + "ENV_PROTEUS_SET_LAUNCH_BOUNDS": "0", + "ENV_PROTEUS_SPECIALIZE_ARGS": "0", + }, + { + "ENV_PROTEUS_USE_STORED_CACHE": "0", + "ENV_PROTEUS_SET_LAUNCH_BOUNDS": "0", + "ENV_PROTEUS_SPECIALIZE_ARGS": "1", + }, + { + "ENV_PROTEUS_USE_STORED_CACHE": "0", + "ENV_PROTEUS_SET_LAUNCH_BOUNDS": "1", + "ENV_PROTEUS_SPECIALIZE_ARGS": "0", + }, + { + "ENV_PROTEUS_USE_STORED_CACHE": "0", + "ENV_PROTEUS_SET_LAUNCH_BOUNDS": "1", + "ENV_PROTEUS_SPECIALIZE_ARGS": "1", + }, + # Using stored cache. + # CAUTION: We need to create the cache jit binaries before running. + # Especially, JIT launch bounds, runtime constprop will be baked into + # the binary so we need a "warmup" run for each setting before taking + # the measurement. + { + "ENV_PROTEUS_USE_STORED_CACHE": "1", + "ENV_PROTEUS_SET_LAUNCH_BOUNDS": "0", + "ENV_PROTEUS_SPECIALIZE_ARGS": "0", + }, + { + "ENV_PROTEUS_USE_STORED_CACHE": "1", + "ENV_PROTEUS_SET_LAUNCH_BOUNDS": "0", + "ENV_PROTEUS_SPECIALIZE_ARGS": "1", + }, + { + "ENV_PROTEUS_USE_STORED_CACHE": "1", + "ENV_PROTEUS_SET_LAUNCH_BOUNDS": "1", + "ENV_PROTEUS_SPECIALIZE_ARGS": "0", + }, + { + "ENV_PROTEUS_USE_STORED_CACHE": "1", + "ENV_PROTEUS_SET_LAUNCH_BOUNDS": "1", + "ENV_PROTEUS_SPECIALIZE_ARGS": "1", + }, + ], +} + + +class rocprof: + def __init__(self, metrics, cwd): + self.metrics = metrics + if metrics: + metrics_file = f"{cwd}/vis-scripts/rocprof-metrics.txt" + self.command = f"rocprof -i {metrics_file}" + " --timestamp on -o {0} {1}" + else: + self.command = "rocprof --timestamp on -o {0} {1}" + + def get_command(self, output, executable): + return self.command.format(output, executable) + + def parse(self, fn): + def get_hash(x): + try: + hash_pos = 2 + return cxxfilt.demangle(x.split("$")[hash_pos]) + except IndexError: + return None + + df = pd.read_csv(fn, sep=",") + # Rename to match output between rocprof, nvprof. + df.rename(columns={"KernelName": "Name", "Index": "RunIndex"}, inplace=True) + df["Duration"] = df["EndNs"] - df["BeginNs"] + df["Name"] = df["Name"].str.replace(" [clone .kd]", "", regex=False) + df["Hash"] = df.Name.apply(lambda x: get_hash(x)) + df["Name"] = df.Name.apply(lambda x: cxxfilt.demangle(x.split("$")[0])) + return df + + +class nvprof: + def __init__(self, metrics): + if metrics: + self.command = "nvprof --metrics inst_per_warp,stall_exec_dependency --print-gpu-trace --normalized-time-unit ns --csv --log-file {0} {1}" + else: + self.command = "nvprof --print-gpu-trace --normalized-time-unit ns --csv --log-file {0} {1}" + self.metrics = metrics + + def get_command(self, output, executable): + return self.command.format(output, executable) + + def parse(self, fn): + def get_hash(x): + try: + hash_pos = 2 + return cxxfilt.demangle(x.split("$")[hash_pos]) + except IndexError: + return None + + # Skip the first 3 (or 4 lines if metrics are collected) of nvprof + # metadata info. + skiprows = 4 if self.metrics else 3 + df = pd.read_csv(fn, sep=",", skiprows=skiprows) + # Skip the first row after the header which contains units of metrics. + df = df[1:] + # Nvprof with metrics tracks only kernels. + if self.metrics: + df["Kernel"] = df.Kernel.apply(lambda x: cxxfilt.demangle(x.split("$")[0])) + df.rename(columns={"Kernel": "Name"}, inplace=True) + else: + df["Hash"] = df.Name.apply(lambda x: get_hash(x)) + df["Name"] = df.Name.apply(lambda x: cxxfilt.demangle(x.split("$")[0])) + + return df + + +def execute_command(cmd, **kwargs): + print("=> Execute", cmd) + try: + p = subprocess.run(cmd, check=True, text=True, **kwargs) + except subprocess.CalledProcessError as e: + print("Failed cmd", e.cmd) + print("ret", e.returncode) + print("stdout\n", e.stdout) + print("stderr\n", e.stderr) + print(e) + raise e + + if "capture_output" in kwargs and kwargs["capture_output"]: + return p.stdout, p.stderr + + return None, None + + +class Configuration: + def __init__(self, path, cc, jit_path, config): + self.path = path + self.cc = cc + self.jit_path = jit_path + self.config = config + + def __str__(self): + return f"{self.config} {self.path}" + + def clean(self): + os.chdir(self.path) + cmd = "make clean" + out, err = execute_command(cmd, capture_output=True, shell=True) + print("=========== stdout ===========") + print(out) + print("==============================") + print("=========== stderr ===========") + print(err) + print("==============================") + + def build(self, do_jit): + os.chdir(self.path) + cmd = "make" + env = os.environ.copy() + env["JIT"] = "yes" if do_jit else "no" + env["JIT_PATH"] = self.jit_path + env["CC"] = self.cc + t1 = time.perf_counter() + print( + "Build command", + cmd, + "CC=" + env["CC"], + "JIT_PATH=" + env["JIT_PATH"], + "JIT=" + env["JIT"], + ) + out, err = execute_command(cmd, env=env, capture_output=True, shell=True) + t2 = time.perf_counter() + print("=========== stdout ===========") + print(out) + print("==============================") + print("=========== stderr ===========") + print(err) + print("==============================") + return t2 - t1 + + def build_and_run(self, profiler): + os.chdir(self.path) + + results = pd.DataFrame() + caching = pd.DataFrame() + for btype, exe in self.config["executables"].items(): + self.clean() + print("BUILD", self.path, "type", btype) + assert ( + btype == "aot" or btype == "jit" or btype == "jitify" + ), "Expected aot or jit or jitify for btype" + ctime = self.build(btype != "aot") + exe_size = Path(f"{self.path}/{exe}").stat().st_size + print("=> BUILT") + + for repeat in range(0, NUM_REPEATS): + for input_id, args in self.config["inputs"].items(): + for env in env_configs[btype]: + cmd_env = os.environ.copy() + for k, v in env.items(): + cmd_env[k] = v + cmd = f"./{exe} {args}" + + set_launch_bounds = ( + False + if env["ENV_PROTEUS_SET_LAUNCH_BOUNDS"] == "0" + else True + ) + use_stored_cache = ( + False + if env["ENV_PROTEUS_USE_STORED_CACHE"] == "0" + else True + ) + specialize_args = ( + False if env["ENV_PROTEUS_SPECIALIZE_ARGS"] == "0" else True + ) + + if btype == "jit": + print("Proteus JIT env", env) + + if profiler is not None: + if profiler.metrics: + # Skip profiler with metrics (GPU counters) runs for + # jitify, as we don't use them. + if btype == "jitify": + continue + # Skip measuring metrics (GPU counters) for the + # proteus jit stored cache variation since they are + # identical to the non-cached runs. + if btype == "jit" and use_stored_cache == True: + continue + + # Delete any previous generated JIT stored cache. + if use_stored_cache: + # Delete amy previous cache files in the command path. + for file in Path(self.path).glob(".proteus/cache-jit-*"): + file.unlink() + + # Early on execute always a warmup run. If using the + # stored cache, this run will generate the files for a + # warm cache. + execute_command( + cmd, + env=cmd_env, + capture_output=True, + shell=True, + cwd=str(self.path), + ) + + stats = f"{os.getcwd()}/{btype}_{input_id}.csv" + if profiler: + # Execute with profiler on. + cmd = profiler.get_command(stats, cmd) + + t1 = time.perf_counter() + out, err = execute_command( + cmd, + env=cmd_env, + capture_output=True, + shell=True, + cwd=str(self.path), + ) + t2 = time.perf_counter() + + # Cleanup from a stored cache run, removing cache files. + cache_size = 0 + if use_stored_cache: + for file in Path(self.path).glob(".proteus/cache-jit-*.o"): + # Size in bytes. + cache_size += file.stat().st_size + # Delete amy previous cache files in the command path. + for file in Path(self.path).glob(".proteus/cache-jit-*"): + file.unlink() + + print("=========Error=================") + print(err) + print("=========== stdout ===========") + print(out) + print("==============================") + + if profiler: + df = profiler.parse(stats) + # Add new columns to the existing dataframe from the + # profiler. + df["Benchmark"] = self.config["name"] + df["Input"] = input_id + df["Compile"] = btype + df["Ctime"] = ctime + df["StoredCache"] = use_stored_cache + df["Bounds"] = set_launch_bounds + df["RuntimeConstprop"] = specialize_args + df["ExeSize"] = exe_size + df["ExeTime"] = t2 - t1 + # Drop memcpy operations (because JIT adds DtoH copies + # to read kernel bitcodes that interfere with unique + # indexing and add RunIndex for nvprof to uniquely + # identify kernel invocations. + if isinstance(profiler, nvprof): + df.drop( + df[df.Name.str.contains("CUDA memcpy")].index, + inplace=True, + ) + # Reset index to sequential, integer index. + df.reset_index(drop=True, inplace=True) + df["RunIndex"] = df.index + else: + # Create a new dataframe row. + df = pd.DataFrame( + { + "Benchmark": [self.config["name"]], + "Input": [input_id], + "Compile": [btype], + "Ctime": [ctime], + "StoredCache": [use_stored_cache], + "Bounds": [set_launch_bounds], + "RuntimeConstprop": [specialize_args], + "ExeSize": [exe_size], + "ExeTime": [t2 - t1], + } + ) + df["repeat"] = repeat + results = pd.concat((results, df), ignore_index=True) + + # Skip parsing caching stats when running AOT. + if btype != "jit": + continue + + # Parse JIT caching info. + matches = re.findall( + "HashValue ([0-9]+) NumExecs ([0-9]+) NumHits ([0-9]+)", + out, + ) + cache_df = pd.DataFrame( + { + "HashValue": [str(m[0]) for m in matches], + "NumExecs": [int(m[1]) for m in matches], + "NumHits": [int(m[2]) for m in matches], + } + ) + cache_df["Benchmark"] = self.config["name"] + cache_df["Input"] = input_id + cache_df["StoredCache"] = use_stored_cache + cache_df["Bounds"] = set_launch_bounds + cache_df["RuntimeConstprop"] = specialize_args + cache_df["repeat"] = repeat + cache_df["CacheSize"] = cache_size + + caching = pd.concat((caching, cache_df)) + + return results, caching + + +def postprocess_profiler(results): + print("POSTPROCESS PROFILER") + assert ( + len(results.Benchmark.unique()) == 1 + ), "Postprocessing expects a dataframe of a single benchmark" + + # Make sure Duration is a float. + results.Duration = results.Duration.astype(float) + for input_id in results.Input.unique(): + for repeat in results.repeat.unique(): + base = results[ + (results.Compile == "aot") + & (results.Input == input_id) + & (results.repeat == repeat) + ] + + # RunIndex is unique for the same benchmark and input, rdiv to divide + # the base (AOT) duration with the JIT duration. + results.loc[ + (results.Input == input_id) & (results.repeat == repeat), + "Speedup", + ] = results.Duration.rdiv( + results["RunIndex"].map(base.set_index("RunIndex").Duration) + ) + + return results + + +def postprocess(results): + print("POSTPROCESS") + assert ( + len(results.Benchmark.unique()) == 1 + ), "Postprocessing expects a dataframe of a single benchmark" + + # Make sure ExeTime is a float. + results.ExeTime = results.ExeTime.astype(float) + for input_id in results.Input.unique(): + for repeat in results.repeat.unique(): + base = results[ + (results.Compile == "aot") + & (results.Input == input_id) + & (results.repeat == repeat) + ] + # Input is unique for the same benchmark and input, rdiv to divide + # the base (AOT) execution time with the JIT execution time. + results.loc[ + (results.Input == input_id) & (results.repeat == repeat), + "Speedup", + ] = results.ExeTime.rdiv( + results["Input"].map(base.set_index("Input").ExeTime) + ) + + return results + + +def main(): + parser = argparse.ArgumentParser( + description="Build, run and collect measurements for a benchmark program" + ) + parser.add_argument( + "-g", + "--glob", + default=str, + help="glob pattern of benchmark directories", + required=True, + ) + parser.add_argument( + "--compiler", help="path to the compiler executable", required=True + ) + parser.add_argument( + "-j", + "--jit-path", + help="path to the jit build directory", + required=True, + ) + parser.add_argument( + "-x", + "--exemode", + help="execution model", + choices=("direct", "profiler", "metrics"), + required=True, + ) + parser.add_argument( + "-m", + "--machine", + help="which machine to run on: amd|nvidia", + choices=("amd", "nvidia"), + required=True, + ) + args = parser.parse_args() + cwd = os.getcwd() + + res_dir = pathlib.Path(f"{cwd}/results/") + res_dir.mkdir(parents=True, exist_ok=True) + + experiments = list() + # Each benchmark directory is expected to have a dictionary json file of the form: + # { + # "name" : + # "executables" : { + # "aot" : , + # "jit" : + # }, + # "inputs" : { + # : + # ... + # } + # } + experiments_json = [] + basedir = Path(f"{args.glob}").parent + for directory in Path(".").glob(f"{args.glob}"): + if not Path(f"{directory}").is_dir(): + raise Exception(f"Cannot find directory {directory}") + if not Path(f"{directory}/experiments.json").is_file(): + raise Exception(f"Directory {directory} is missing experiments.json") + + experiments_json.append(Path(f"{directory}/experiments.json")) + + if not experiments_json: + raise Exception("Glob pattern did not produce any experiments") + + for exp_config in experiments_json: + with open(exp_config, "r") as f: + print("Loading", exp_config) + config = json.load(f) + print("config", config) + experiments.append( + Configuration( + Path(exp_config).absolute().parent, + args.compiler, + args.jit_path, + config, + ) + ) + + def gather_profiler_results(metrics): + if args.machine == "amd": + eresults_profiler, ecaching_profiler = e.build_and_run( + rocprof(metrics, cwd) + ) + elif args.machine == "nvidia": + eresults_profiler, ecaching_profiler = e.build_and_run(nvprof(metrics)) + else: + raise Exception("Expected amd or nvidia machine") + + print("=== results ===") + print(eresults_profiler) + print("=== eof results ===") + if not metrics: + # Postprocess profiler runs, add speedup. + eresults_profiler = postprocess_profiler(eresults_profiler) + # Store the intermediate, benchmark results. + metrics_suffix = "-metrics" if metrics else "" + eresults_profiler.to_csv( + f"{res_dir}/{args.machine}-{basedir}-{e.config['name']}-results-profiler{metrics_suffix}.csv" + ) + ecaching_profiler.to_csv( + f"{res_dir}/{args.machine}-{basedir}-{e.config['name']}-caching-profiler{metrics_suffix}.csv" + ) + + def gather_results(): + eresults, ecaching = e.build_and_run(None) + # Postprocess non-profiler runs, add speedup. + eresults = postprocess(eresults) + # Store the intermediate, benchmark results. + eresults.to_csv( + f"{res_dir}/{args.machine}-{basedir}-{e.config['name']}-results.csv" + ) + ecaching.to_csv( + f"{res_dir}/{args.machine}-{basedir}-{e.config['name']}-caching.csv" + ) + + # Build, run, and collect results for each experiment as gathered by glob + # directories. Do profiler runs with and without metrics, and a run without + # the profiler for end-to-end execution times. + for e in experiments: + # Gather results without the profiler. + if args.exemode == "direct": + gather_results() + # Gather results with the machine-specific profiler WITHOUT metrics (gpu + # counters) + if args.exemode == "profiler": + gather_profiler_results(metrics=False) + # Gather results with the machine-specific profiler WITH metrics (gpu + # counters). + if args.exemode == "metrics": + gather_profiler_results(metrics=True) + + print("Results are stored in ", res_dir) + + +if __name__ == "__main__": + main() diff --git a/benchmarks/external/jitify/.clang-format b/benchmarks/external/jitify/.clang-format new file mode 100644 index 0000000..4a88069 --- /dev/null +++ b/benchmarks/external/jitify/.clang-format @@ -0,0 +1,149 @@ +--- +Language: Cpp +# BasedOnStyle: Google +AccessModifierOffset: -1 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +AlignEscapedNewlines: Left +AlignOperands: true +AlignTrailingComments: true +AllowAllParametersOfDeclarationOnNextLine: true +AllowShortBlocksOnASingleLine: false +AllowShortCaseLabelsOnASingleLine: false +AllowShortFunctionsOnASingleLine: All +AllowShortIfStatementsOnASingleLine: true +AllowShortLoopsOnASingleLine: true +AlwaysBreakAfterDefinitionReturnType: None +AlwaysBreakAfterReturnType: None +AlwaysBreakBeforeMultilineStrings: true +AlwaysBreakTemplateDeclarations: Yes +BinPackArguments: true +BinPackParameters: true +BraceWrapping: + AfterClass: false + AfterControlStatement: false + AfterEnum: false + AfterFunction: false + AfterNamespace: false + AfterObjCDeclaration: false + AfterStruct: false + AfterUnion: false + AfterExternBlock: false + BeforeCatch: false + BeforeElse: false + IndentBraces: false + SplitEmptyFunction: true + SplitEmptyRecord: true + SplitEmptyNamespace: true +BreakBeforeBinaryOperators: None +BreakBeforeBraces: Attach +BreakBeforeInheritanceComma: false +BreakInheritanceList: BeforeColon +BreakBeforeTernaryOperators: true +BreakConstructorInitializersBeforeComma: false +BreakConstructorInitializers: BeforeColon +BreakAfterJavaFieldAnnotations: false +BreakStringLiterals: true +ColumnLimit: 80 +CommentPragmas: '^ IWYU pragma:' +CommentPragmas: '^\\.+' +CompactNamespaces: false +ConstructorInitializerAllOnOneLineOrOnePerLine: true +ConstructorInitializerIndentWidth: 4 +ContinuationIndentWidth: 4 +Cpp11BracedListStyle: true +DerivePointerAlignment: false +DisableFormat: false +ExperimentalAutoDetectBinPacking: false +FixNamespaceComments: true +ForEachMacros: + - foreach + - Q_FOREACH + - BOOST_FOREACH +IncludeBlocks: Preserve +IncludeCategories: + - Regex: '^' + Priority: 2 + - Regex: '^<.*\.h>' + Priority: 1 + - Regex: '^<.*' + Priority: 2 + - Regex: '.*' + Priority: 3 +IncludeIsMainRegex: '([-_](test|unittest))?$' +IndentCaseLabels: true +IndentPPDirectives: None +IndentWidth: 2 +IndentWrappedFunctionNames: false +JavaScriptQuotes: Leave +JavaScriptWrapImports: true +KeepEmptyLinesAtTheStartOfBlocks: false +MacroBlockBegin: '' +MacroBlockEnd: '' +MaxEmptyLinesToKeep: 1 +NamespaceIndentation: None +ObjCBinPackProtocolList: Never +ObjCBlockIndentWidth: 2 +ObjCSpaceAfterProperty: false +ObjCSpaceBeforeProtocolList: true +PenaltyBreakAssignment: 2 +PenaltyBreakBeforeFirstCallParameter: 1 +PenaltyBreakComment: 300 +PenaltyBreakFirstLessLess: 120 +PenaltyBreakString: 1000 +PenaltyBreakTemplateDeclaration: 10 +PenaltyExcessCharacter: 1000000 +PenaltyReturnTypeOnItsOwnLine: 200 +PointerAlignment: Left +RawStringFormats: + - Language: Cpp + Delimiters: + - cc + - CC + - cpp + - Cpp + - CPP + - 'c++' + - 'C++' + CanonicalDelimiter: '' + BasedOnStyle: google + - Language: TextProto + Delimiters: + - pb + - PB + - proto + - PROTO + EnclosingFunctions: + - EqualsProto + - EquivToProto + - PARSE_PARTIAL_TEXT_PROTO + - PARSE_TEST_PROTO + - PARSE_TEXT_PROTO + - ParseTextOrDie + - ParseTextProtoOrDie + CanonicalDelimiter: '' + BasedOnStyle: google +ReflowComments: true +SortIncludes: true +SortUsingDeclarations: true +SpaceAfterCStyleCast: false +SpaceAfterTemplateKeyword: true +SpaceBeforeAssignmentOperators: true +SpaceBeforeCpp11BracedList: false +SpaceBeforeCtorInitializerColon: true +SpaceBeforeInheritanceColon: true +SpaceBeforeParens: ControlStatements +SpaceBeforeRangeBasedForLoopColon: true +SpaceInEmptyParentheses: false +SpacesBeforeTrailingComments: 2 +SpacesInAngles: false +SpacesInContainerLiterals: true +SpacesInCStyleCastParentheses: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +Standard: Auto +TabWidth: 8 +UseTab: Never +... + diff --git a/benchmarks/external/jitify/.gitignore b/benchmarks/external/jitify/.gitignore new file mode 100644 index 0000000..c3a73d4 --- /dev/null +++ b/benchmarks/external/jitify/.gitignore @@ -0,0 +1,10 @@ + +jitify_example +stringify +*.jit +*.o +jitify_2nd_compilation_unit.cpp +jitify_test +googletest/ +# Backup files +*~ diff --git a/benchmarks/external/jitify/Doxyfile b/benchmarks/external/jitify/Doxyfile new file mode 100644 index 0000000..583bc0c --- /dev/null +++ b/benchmarks/external/jitify/Doxyfile @@ -0,0 +1,2427 @@ +# Doxyfile 1.8.11 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project. +# +# All text after a double hash (##) is considered a comment and is placed in +# front of the TAG it is preceding. +# +# All text after a single hash (#) is considered a comment and will be ignored. +# The format is: +# TAG = value [value, ...] +# For lists, items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (\" \"). + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all text +# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv +# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv +# for the list of possible encodings. +# The default value is: UTF-8. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by +# double-quotes, unless you are using Doxywizard) that should identify the +# project for which the documentation is generated. This name is used in the +# title of most generated pages and in a few other places. +# The default value is: My Project. + +PROJECT_NAME = Jitify + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. This +# could be handy for archiving the generated documentation or if some version +# control system is used. + +PROJECT_NUMBER = + +# Using the PROJECT_BRIEF tag one can provide an optional one line description +# for a project that appears at the top of each page and should give viewer a +# quick idea about the purpose of the project. Keep the description short. + +PROJECT_BRIEF = + +# With the PROJECT_LOGO tag one can specify a logo or an icon that is included +# in the documentation. The maximum height of the logo should not exceed 55 +# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy +# the logo to the output directory. + +PROJECT_LOGO = + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path +# into which the generated documentation will be written. If a relative path is +# entered, it will be relative to the location where doxygen was started. If +# left blank the current directory will be used. + +OUTPUT_DIRECTORY = doc + +# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- +# directories (in 2 levels) under the output directory of each output format and +# will distribute the generated files over these directories. Enabling this +# option can be useful when feeding doxygen a huge amount of source files, where +# putting all generated files in the same directory would otherwise causes +# performance problems for the file system. +# The default value is: NO. + +CREATE_SUBDIRS = NO + +# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII +# characters to appear in the names of generated files. If set to NO, non-ASCII +# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode +# U+3044. +# The default value is: NO. + +ALLOW_UNICODE_NAMES = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, +# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), +# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, +# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), +# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, +# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, +# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, +# Ukrainian and Vietnamese. +# The default value is: English. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member +# descriptions after the members that are listed in the file and class +# documentation (similar to Javadoc). Set to NO to disable this. +# The default value is: YES. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief +# description of a member or function before the detailed description +# +# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. +# The default value is: YES. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator that is +# used to form the text in various listings. Each string in this list, if found +# as the leading text of the brief description, will be stripped from the text +# and the result, after processing the whole list, is used as the annotated +# text. Otherwise, the brief description is used as-is. If left blank, the +# following values are used ($name is automatically replaced with the name of +# the entity):The $name class, The $name widget, The $name file, is, provides, +# specifies, contains, represents, a, an and the. + +ABBREVIATE_BRIEF = + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# doxygen will generate a detailed section even if there is only a brief +# description. +# The default value is: NO. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. +# The default value is: NO. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path +# before files name in the file list and in the header files. If set to NO the +# shortest path that makes the file name unique will be used +# The default value is: YES. + +FULL_PATH_NAMES = YES + +# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. +# Stripping is only done if one of the specified strings matches the left-hand +# part of the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the path to +# strip. +# +# Note that you can specify absolute paths here, but also relative paths, which +# will be relative from the directory where doxygen is started. +# This tag requires that the tag FULL_PATH_NAMES is set to YES. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the +# path mentioned in the documentation of a class, which tells the reader which +# header file to include in order to use a class. If left blank only the name of +# the header file containing the class definition is used. Otherwise one should +# specify the list of include paths that are normally passed to the compiler +# using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but +# less readable) file names. This can be useful is your file systems doesn't +# support long names like on DOS, Mac, or CD-ROM. +# The default value is: NO. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the +# first line (until the first dot) of a Javadoc-style comment as the brief +# description. If set to NO, the Javadoc-style will behave just like regular Qt- +# style comments (thus requiring an explicit @brief command for a brief +# description.) +# The default value is: NO. + +JAVADOC_AUTOBRIEF = NO + +# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first +# line (until the first dot) of a Qt-style comment as the brief description. If +# set to NO, the Qt-style will behave just like regular Qt-style comments (thus +# requiring an explicit \brief command for a brief description.) +# The default value is: NO. + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a +# multi-line C++ special comment block (i.e. a block of //! or /// comments) as +# a brief description. This used to be the default behavior. The new default is +# to treat a multi-line C++ comment block as a detailed description. Set this +# tag to YES if you prefer the old behavior instead. +# +# Note that setting this tag to YES also means that rational rose comments are +# not recognized any more. +# The default value is: NO. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the +# documentation from any documented member that it re-implements. +# The default value is: YES. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new +# page for each member. If set to NO, the documentation of a member will be part +# of the file/class/namespace that contains it. +# The default value is: NO. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen +# uses this value to replace tabs by spaces in code fragments. +# Minimum value: 1, maximum value: 16, default value: 4. + +TAB_SIZE = 8 + +# This tag can be used to specify a number of aliases that act as commands in +# the documentation. An alias has the form: +# name=value +# For example adding +# "sideeffect=@par Side Effects:\n" +# will allow you to put the command \sideeffect (or @sideeffect) in the +# documentation, which will result in a user-defined paragraph with heading +# "Side Effects:". You can put \n's in the value part of an alias to insert +# newlines. + +ALIASES = + +# This tag can be used to specify a number of word-keyword mappings (TCL only). +# A mapping has the form "name=value". For example adding "class=itcl::class" +# will allow you to use the command class in the itcl::class meaning. + +TCL_SUBST = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources +# only. Doxygen will then generate output that is more tailored for C. For +# instance, some of the names that are used will be different. The list of all +# members will be omitted, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or +# Python sources only. Doxygen will then generate output that is more tailored +# for that language. For instance, namespaces will be presented as packages, +# qualified scopes will look different, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources. Doxygen will then generate output that is tailored for Fortran. +# The default value is: NO. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for VHDL. +# The default value is: NO. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Doxygen selects the parser to use depending on the extension of the files it +# parses. With this tag you can assign which parser to use for a given +# extension. Doxygen has a built-in mapping, but you can override or extend it +# using this tag. The format is ext=language, where ext is a file extension, and +# language is one of the parsers supported by doxygen: IDL, Java, Javascript, +# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: +# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: +# Fortran. In the later case the parser tries to guess whether the code is fixed +# or free formatted code, this is the default for Fortran type files), VHDL. For +# instance to make doxygen treat .inc files as Fortran files (default is PHP), +# and .f files as C (default is Fortran), use: inc=Fortran f=C. +# +# Note: For files without extension you can use no_extension as a placeholder. +# +# Note that for custom extensions you also need to set FILE_PATTERNS otherwise +# the files are not read by doxygen. + +EXTENSION_MAPPING = + +# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments +# according to the Markdown format, which allows for more readable +# documentation. See http://daringfireball.net/projects/markdown/ for details. +# The output of markdown processing is further processed by doxygen, so you can +# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in +# case of backward compatibilities issues. +# The default value is: YES. + +MARKDOWN_SUPPORT = YES + +# When enabled doxygen tries to link words that correspond to documented +# classes, or namespaces to their corresponding documentation. Such a link can +# be prevented in individual cases by putting a % sign in front of the word or +# globally by setting AUTOLINK_SUPPORT to NO. +# The default value is: YES. + +AUTOLINK_SUPPORT = YES + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should set this +# tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); +# versus func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. +# The default value is: NO. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. +# The default value is: NO. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: +# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen +# will parse them like normal C++ but will assume all classes use public instead +# of private inheritance when no explicit protection keyword is present. +# The default value is: NO. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate +# getter and setter methods for a property. Setting this option to YES will make +# doxygen to replace the get and set methods by a property in the documentation. +# This will only work if the methods are indeed getting or setting a simple +# type. If this is not the case, or you want to show the methods anyway, you +# should set this option to NO. +# The default value is: YES. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. +# The default value is: NO. + +DISTRIBUTE_GROUP_DOC = NO + +# If one adds a struct or class to a group and this option is enabled, then also +# any nested class or struct is added to the same group. By default this option +# is disabled and one has to add nested compounds explicitly via \ingroup. +# The default value is: NO. + +GROUP_NESTED_COMPOUNDS = NO + +# Set the SUBGROUPING tag to YES to allow class member groups of the same type +# (for instance a group of public functions) to be put as a subgroup of that +# type (e.g. under the Public Functions section). Set it to NO to prevent +# subgrouping. Alternatively, this can be done per class using the +# \nosubgrouping command. +# The default value is: YES. + +SUBGROUPING = YES + +# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions +# are shown inside the group in which they are included (e.g. using \ingroup) +# instead of on a separate page (for HTML and Man pages) or section (for LaTeX +# and RTF). +# +# Note that this feature does not work in combination with +# SEPARATE_MEMBER_PAGES. +# The default value is: NO. + +INLINE_GROUPED_CLASSES = NO + +# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions +# with only public data fields or simple typedef fields will be shown inline in +# the documentation of the scope in which they are defined (i.e. file, +# namespace, or group documentation), provided this scope is documented. If set +# to NO, structs, classes, and unions are shown on a separate page (for HTML and +# Man pages) or section (for LaTeX and RTF). +# The default value is: NO. + +INLINE_SIMPLE_STRUCTS = NO + +# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or +# enum is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically be +# useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. +# The default value is: NO. + +TYPEDEF_HIDES_STRUCT = NO + +# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This +# cache is used to resolve symbols given their name and scope. Since this can be +# an expensive process and often the same symbol appears multiple times in the +# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small +# doxygen will become slower. If the cache is too large, memory is wasted. The +# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range +# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 +# symbols. At the end of a run doxygen will report the cache usage and suggest +# the optimal cache size from a speed point of view. +# Minimum value: 0, maximum value: 9, default value: 0. + +LOOKUP_CACHE_SIZE = 0 + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in +# documentation are documented, even if no documentation was available. Private +# class members and static file members will be hidden unless the +# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. +# Note: This will also disable the warnings about undocumented members that are +# normally produced when WARNINGS is set to YES. +# The default value is: NO. + +EXTRACT_ALL = NO + +# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will +# be included in the documentation. +# The default value is: NO. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal +# scope will be included in the documentation. +# The default value is: NO. + +EXTRACT_PACKAGE = NO + +# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be +# included in the documentation. +# The default value is: NO. + +EXTRACT_STATIC = NO + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined +# locally in source files will be included in the documentation. If set to NO, +# only classes defined in header files are included. Does not have any effect +# for Java sources. +# The default value is: YES. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. If set to YES, local methods, +# which are defined in the implementation section but not in the interface are +# included in the documentation. If set to NO, only methods in the interface are +# included. +# The default value is: NO. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base name of +# the file that contains the anonymous namespace. By default anonymous namespace +# are hidden. +# The default value is: NO. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all +# undocumented members inside documented classes or files. If set to NO these +# members will be included in the various overviews, but no documentation +# section is generated. This option has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. If set +# to NO, these classes will be included in the various overviews. This option +# has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend +# (class|struct|union) declarations. If set to NO, these declarations will be +# included in the documentation. +# The default value is: NO. + +HIDE_FRIEND_COMPOUNDS = YES + +# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any +# documentation blocks found inside the body of a function. If set to NO, these +# blocks will be appended to the function's detailed documentation block. +# The default value is: NO. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation that is typed after a +# \internal command is included. If the tag is set to NO then the documentation +# will be excluded. Set it to YES to include the internal documentation. +# The default value is: NO. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file +# names in lower-case letters. If set to YES, upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. +# The default value is: system dependent. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with +# their full class and namespace scopes in the documentation. If set to YES, the +# scope will be hidden. +# The default value is: NO. + +HIDE_SCOPE_NAMES = NO + +# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will +# append additional text to a page's title, such as Class Reference. If set to +# YES the compound reference will be hidden. +# The default value is: NO. + +HIDE_COMPOUND_REFERENCE= NO + +# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of +# the files that are included by a file in the documentation of that file. +# The default value is: YES. + +SHOW_INCLUDE_FILES = YES + +# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each +# grouped member an include statement to the documentation, telling the reader +# which file to include in order to use the member. +# The default value is: NO. + +SHOW_GROUPED_MEMB_INC = NO + +# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include +# files with double quotes in the documentation rather than with sharp brackets. +# The default value is: NO. + +FORCE_LOCAL_INCLUDES = NO + +# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the +# documentation for inline members. +# The default value is: YES. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the +# (detailed) documentation of file and class members alphabetically by member +# name. If set to NO, the members will appear in declaration order. +# The default value is: YES. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief +# descriptions of file, namespace and class members alphabetically by member +# name. If set to NO, the members will appear in declaration order. Note that +# this will also influence the order of the classes in the class list. +# The default value is: NO. + +SORT_BRIEF_DOCS = NO + +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the +# (brief and detailed) documentation of class members so that constructors and +# destructors are listed first. If set to NO the constructors will appear in the +# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. +# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief +# member documentation. +# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting +# detailed member documentation. +# The default value is: NO. + +SORT_MEMBERS_CTORS_1ST = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy +# of group names into alphabetical order. If set to NO the group names will +# appear in their defined order. +# The default value is: NO. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by +# fully-qualified names, including namespaces. If set to NO, the class list will +# be sorted only by class name, not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the alphabetical +# list. +# The default value is: NO. + +SORT_BY_SCOPE_NAME = NO + +# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper +# type resolution of all parameters of a function it will reject a match between +# the prototype and the implementation of a member function even if there is +# only one candidate or it is obvious which candidate to choose by doing a +# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still +# accept a match between prototype and implementation in such cases. +# The default value is: NO. + +STRICT_PROTO_MATCHING = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo +# list. This list is created by putting \todo commands in the documentation. +# The default value is: YES. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test +# list. This list is created by putting \test commands in the documentation. +# The default value is: YES. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug +# list. This list is created by putting \bug commands in the documentation. +# The default value is: YES. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO) +# the deprecated list. This list is created by putting \deprecated commands in +# the documentation. +# The default value is: YES. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional documentation +# sections, marked by \if ... \endif and \cond +# ... \endcond blocks. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the +# initial value of a variable or macro / define can have for it to appear in the +# documentation. If the initializer consists of more lines than specified here +# it will be hidden. Use a value of 0 to hide initializers completely. The +# appearance of the value of individual variables and macros / defines can be +# controlled using \showinitializer or \hideinitializer command in the +# documentation regardless of this setting. +# Minimum value: 0, maximum value: 10000, default value: 30. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at +# the bottom of the documentation of classes and structs. If set to YES, the +# list will mention the files that were used to generate the documentation. +# The default value is: YES. + +SHOW_USED_FILES = YES + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This +# will remove the Files entry from the Quick Index and from the Folder Tree View +# (if specified). +# The default value is: YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces +# page. This will remove the Namespaces entry from the Quick Index and from the +# Folder Tree View (if specified). +# The default value is: YES. + +SHOW_NAMESPACES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command command input-file, where command is the value of the +# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided +# by doxygen. Whatever the program writes to standard output is used as the file +# version. For an example see the documentation. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed +# by doxygen. The layout file controls the global structure of the generated +# output files in an output format independent way. To create the layout file +# that represents doxygen's defaults, run doxygen with the -l option. You can +# optionally specify a file name after the option, if omitted DoxygenLayout.xml +# will be used as the name of the layout file. +# +# Note that if you run doxygen from a directory containing a file called +# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE +# tag is left empty. + +LAYOUT_FILE = + +# The CITE_BIB_FILES tag can be used to specify one or more bib files containing +# the reference definitions. This must be a list of .bib files. The .bib +# extension is automatically appended if omitted. This requires the bibtex tool +# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info. +# For LaTeX the style of the bibliography can be controlled using +# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the +# search path. See also \cite for info how to create references. + +CITE_BIB_FILES = + +#--------------------------------------------------------------------------- +# Configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated to +# standard output by doxygen. If QUIET is set to YES this implies that the +# messages are off. +# The default value is: NO. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES +# this implies that the warnings are on. +# +# Tip: Turn warnings on while writing the documentation. +# The default value is: YES. + +WARNINGS = YES + +# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate +# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag +# will automatically be disabled. +# The default value is: YES. + +WARN_IF_UNDOCUMENTED = YES + +# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some parameters +# in a documented function, or documenting parameters that don't exist or using +# markup commands wrongly. +# The default value is: YES. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that +# are documented, but have no documentation for their parameters or return +# value. If set to NO, doxygen will only warn about wrong or incomplete +# parameter documentation, but not about the absence of documentation. +# The default value is: NO. + +WARN_NO_PARAMDOC = NO + +# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when +# a warning is encountered. +# The default value is: NO. + +WARN_AS_ERROR = NO + +# The WARN_FORMAT tag determines the format of the warning messages that doxygen +# can produce. The string should contain the $file, $line, and $text tags, which +# will be replaced by the file and line number from which the warning originated +# and the warning text. Optionally the format may contain $version, which will +# be replaced by the version of the file (if it could be obtained via +# FILE_VERSION_FILTER) +# The default value is: $file:$line: $text. + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning and error +# messages should be written. If left blank the output is written to standard +# error (stderr). + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# Configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag is used to specify the files and/or directories that contain +# documented source files. You may enter file names like myfile.cpp or +# directories like /usr/src/myproject. Separate the files or directories with +# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING +# Note: If this tag is empty the current directory is searched. + +INPUT = jitify.hpp + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses +# libiconv (or the iconv built into libc) for the transcoding. See the libiconv +# documentation (see: http://www.gnu.org/software/libiconv) for the list of +# possible encodings. +# The default value is: UTF-8. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and +# *.h) to filter out the source-files in the directories. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# read by doxygen. +# +# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp, +# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, +# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, +# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f, *.for, *.tcl, +# *.vhd, *.vhdl, *.ucf, *.qsf, *.as and *.js. + +FILE_PATTERNS = + +# The RECURSIVE tag can be used to specify whether or not subdirectories should +# be searched for input files as well. +# The default value is: NO. + +RECURSIVE = NO + +# The EXCLUDE tag can be used to specify files and/or directories that should be +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. +# +# Note that relative paths are relative to the directory from which doxygen is +# run. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or +# directories that are symbolic links (a Unix file system feature) are excluded +# from the input. +# The default value is: NO. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories for example use the pattern */test/* + +EXCLUDE_PATTERNS = + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories use the pattern */test/* + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or directories +# that contain example code fragments that are included (see the \include +# command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and +# *.h) to filter out the source-files in the directories. If left blank all +# files are included. + +EXAMPLE_PATTERNS = + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude commands +# irrespective of the value of the RECURSIVE tag. +# The default value is: NO. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or directories +# that contain images that are to be included in the documentation (see the +# \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command: +# +# +# +# where is the value of the INPUT_FILTER tag, and is the +# name of an input file. Doxygen will then use the output that the filter +# program writes to standard output. If FILTER_PATTERNS is specified, this tag +# will be ignored. +# +# Note that the filter must not add or remove lines; it is applied before the +# code is scanned, but not when the output code is generated. If lines are added +# or removed, the anchors will not be placed correctly. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: pattern=filter +# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how +# filters are used. If the FILTER_PATTERNS tag is empty or if none of the +# patterns match the file name, INPUT_FILTER is applied. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will also be used to filter the input files that are used for +# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). +# The default value is: NO. + +FILTER_SOURCE_FILES = NO + +# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file +# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and +# it is also possible to disable source filtering for a specific pattern using +# *.ext= (so without naming a filter). +# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. + +FILTER_SOURCE_PATTERNS = + +# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that +# is part of the input, its contents will be placed on the main page +# (index.html). This can be useful if you have a project on for instance GitHub +# and want to reuse the introduction page also for the doxygen output. + +USE_MDFILE_AS_MAINPAGE = + +#--------------------------------------------------------------------------- +# Configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will be +# generated. Documented entities will be cross-referenced with these sources. +# +# Note: To get rid of all source code in the generated output, make sure that +# also VERBATIM_HEADERS is set to NO. +# The default value is: NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body of functions, +# classes and enums directly into the documentation. +# The default value is: NO. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any +# special comment blocks from generated source code fragments. Normal C, C++ and +# Fortran comments will always remain visible. +# The default value is: YES. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES then for each documented +# function all documented functions referencing it will be listed. +# The default value is: NO. + +REFERENCED_BY_RELATION = YES + +# If the REFERENCES_RELATION tag is set to YES then for each documented function +# all documented entities called/used by that function will be listed. +# The default value is: NO. + +REFERENCES_RELATION = YES + +# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set +# to YES then the hyperlinks from functions in REFERENCES_RELATION and +# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will +# link to the documentation. +# The default value is: YES. + +REFERENCES_LINK_SOURCE = YES + +# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the +# source code will show a tooltip with additional information such as prototype, +# brief description and links to the definition and documentation. Since this +# will make the HTML file larger and loading of large files a bit slower, you +# can opt to disable this feature. +# The default value is: YES. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +SOURCE_TOOLTIPS = YES + +# If the USE_HTAGS tag is set to YES then the references to source code will +# point to the HTML generated by the htags(1) tool instead of doxygen built-in +# source browser. The htags tool is part of GNU's global source tagging system +# (see http://www.gnu.org/software/global/global.html). You will need version +# 4.8.6 or higher. +# +# To use it do the following: +# - Install the latest version of global +# - Enable SOURCE_BROWSER and USE_HTAGS in the config file +# - Make sure the INPUT points to the root of the source tree +# - Run doxygen as normal +# +# Doxygen will invoke htags (and that will in turn invoke gtags), so these +# tools must be available from the command line (i.e. in the search path). +# +# The result: instead of the source browser generated by doxygen, the links to +# source code will now point to the output of htags. +# The default value is: NO. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a +# verbatim copy of the header file for each class for which an include is +# specified. Set to NO to disable this. +# See also: Section \class. +# The default value is: YES. + +VERBATIM_HEADERS = YES + +# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the +# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the +# cost of reduced performance. This can be particularly helpful with template +# rich C++ code for which doxygen's built-in parser lacks the necessary type +# information. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse-libclang=ON option for CMake. +# The default value is: NO. + +CLANG_ASSISTED_PARSING = NO + +# If clang assisted parsing is enabled you can provide the compiler with command +# line options that you would normally use when invoking the compiler. Note that +# the include paths will already be set by doxygen for the files and directories +# specified with INPUT and INCLUDE_PATH. +# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. + +CLANG_OPTIONS = + +#--------------------------------------------------------------------------- +# Configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all +# compounds will be generated. Enable this if the project contains a lot of +# classes, structs, unions or interfaces. +# The default value is: YES. + +ALPHABETICAL_INDEX = NO + +# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in +# which the alphabetical index list will be split. +# Minimum value: 1, maximum value: 20, default value: 5. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all classes will +# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag +# can be used to specify a prefix (or a list of prefixes) that should be ignored +# while generating the index headers. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output +# The default value is: YES. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. +# The default directory is: html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each +# generated HTML page (for example: .htm, .php, .asp). +# The default value is: .html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a user-defined HTML header file for +# each generated HTML page. If the tag is left blank doxygen will generate a +# standard header. +# +# To get valid HTML the header file that includes any scripts and style sheets +# that doxygen needs, which is dependent on the configuration options used (e.g. +# the setting GENERATE_TREEVIEW). It is highly recommended to start with a +# default header using +# doxygen -w html new_header.html new_footer.html new_stylesheet.css +# YourConfigFile +# and then modify the file new_header.html. See also section "Doxygen usage" +# for information on how to generate the default header that doxygen normally +# uses. +# Note: The header is subject to change so you typically have to regenerate the +# default header when upgrading to a newer version of doxygen. For a description +# of the possible markers and block names see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each +# generated HTML page. If the tag is left blank doxygen will generate a standard +# footer. See HTML_HEADER for more information on how to generate a default +# footer and what special commands can be used inside the footer. See also +# section "Doxygen usage" for information on how to generate the default footer +# that doxygen normally uses. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style +# sheet that is used by each HTML page. It can be used to fine-tune the look of +# the HTML output. If left blank doxygen will generate a default style sheet. +# See also section "Doxygen usage" for information on how to generate the style +# sheet that doxygen normally uses. +# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as +# it is more robust and this tag (HTML_STYLESHEET) will in the future become +# obsolete. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_STYLESHEET = + +# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined +# cascading style sheets that are included after the standard style sheets +# created by doxygen. Using this option one can overrule certain style aspects. +# This is preferred over using HTML_STYLESHEET since it does not replace the +# standard style sheet and is therefore more robust against future updates. +# Doxygen will copy the style sheet files to the output directory. +# Note: The order of the extra style sheet files is of importance (e.g. the last +# style sheet in the list overrules the setting of the previous ones in the +# list). For an example see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_STYLESHEET = + +# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or +# other source files which should be copied to the HTML output directory. Note +# that these files will be copied to the base HTML output directory. Use the +# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these +# files. In the HTML_STYLESHEET file, use the file name only. Also note that the +# files will be copied as-is; there are no commands or markers available. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_FILES = + +# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen +# will adjust the colors in the style sheet and background images according to +# this color. Hue is specified as an angle on a colorwheel, see +# http://en.wikipedia.org/wiki/Hue for more information. For instance the value +# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 +# purple, and 360 is red again. +# Minimum value: 0, maximum value: 359, default value: 220. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_HUE = 220 + +# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors +# in the HTML output. For a value of 0 the output will use grayscales only. A +# value of 255 will produce the most vivid colors. +# Minimum value: 0, maximum value: 255, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_SAT = 100 + +# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the +# luminance component of the colors in the HTML output. Values below 100 +# gradually make the output lighter, whereas values above 100 make the output +# darker. The value divided by 100 is the actual gamma applied, so 80 represents +# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not +# change the gamma. +# Minimum value: 40, maximum value: 240, default value: 80. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_GAMMA = 80 + +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting this +# to YES can help to show when doxygen was last run and thus if the +# documentation is up to date. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_TIMESTAMP = NO + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_DYNAMIC_SECTIONS = NO + +# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries +# shown in the various tree structured indices initially; the user can expand +# and collapse entries dynamically later on. Doxygen will expand the tree to +# such a level that at most the specified number of entries are visible (unless +# a fully collapsed tree already exceeds this amount). So setting the number of +# entries 1 will produce a full collapsed tree by default. 0 is a special value +# representing an infinite number of entries and will result in a full expanded +# tree by default. +# Minimum value: 0, maximum value: 9999, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_INDEX_NUM_ENTRIES = 100 + +# If the GENERATE_DOCSET tag is set to YES, additional index files will be +# generated that can be used as input for Apple's Xcode 3 integrated development +# environment (see: http://developer.apple.com/tools/xcode/), introduced with +# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a +# Makefile in the HTML output directory. Running make will produce the docset in +# that directory and running make install will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at +# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html +# for more information. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_DOCSET = NO + +# This tag determines the name of the docset feed. A documentation feed provides +# an umbrella under which multiple documentation sets from a single provider +# (such as a company or product suite) can be grouped. +# The default value is: Doxygen generated docs. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# This tag specifies a string that should uniquely identify the documentation +# set bundle. This should be a reverse domain-name style string, e.g. +# com.mycompany.MyDocSet. Doxygen will append .docset to the name. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify +# the documentation publisher. This should be a reverse domain-name style +# string, e.g. com.mycompany.MyDocSet.documentation. +# The default value is: org.doxygen.Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_ID = org.doxygen.Publisher + +# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. +# The default value is: Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_NAME = Publisher + +# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three +# additional HTML index files: index.hhp, index.hhc, and index.hhk. The +# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop +# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on +# Windows. +# +# The HTML Help Workshop contains a compiler that can convert all HTML output +# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML +# files are now used as the Windows 98 help format, and will replace the old +# Windows help format (.hlp) on all Windows platforms in the future. Compressed +# HTML files also contain an index, a table of contents, and you can search for +# words in the documentation. The HTML workshop also contains a viewer for +# compressed HTML files. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_HTMLHELP = NO + +# The CHM_FILE tag can be used to specify the file name of the resulting .chm +# file. You can add a path in front of the file if the result should not be +# written to the html output directory. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_FILE = + +# The HHC_LOCATION tag can be used to specify the location (absolute path +# including file name) of the HTML help compiler (hhc.exe). If non-empty, +# doxygen will try to run the HTML help compiler on the generated index.hhp. +# The file has to be specified with full path. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +HHC_LOCATION = + +# The GENERATE_CHI flag controls if a separate .chi index file is generated +# (YES) or that it should be included in the master .chm file (NO). +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +GENERATE_CHI = NO + +# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc) +# and project file content. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_INDEX_ENCODING = + +# The BINARY_TOC flag controls whether a binary table of contents is generated +# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it +# enables the Previous and Next buttons. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members to +# the table of contents of the HTML help documentation and to the tree view. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +TOC_EXPAND = NO + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and +# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that +# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help +# (.qch) of the generated HTML documentation. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify +# the file name of the resulting .qch file. The path specified is relative to +# the HTML output folder. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help +# Project output. For more information please see Qt Help Project / Namespace +# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace). +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_NAMESPACE = org.doxygen.Project + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt +# Help Project output. For more information please see Qt Help Project / Virtual +# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual- +# folders). +# The default value is: doc. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_VIRTUAL_FOLDER = doc + +# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom +# filter to add. For more information please see Qt Help Project / Custom +# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- +# filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the +# custom filter to add. For more information please see Qt Help Project / Custom +# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- +# filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this +# project's filter section matches. Qt Help Project / Filter Attributes (see: +# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_SECT_FILTER_ATTRS = + +# The QHG_LOCATION tag can be used to specify the location of Qt's +# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the +# generated .qhp file. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHG_LOCATION = + +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be +# generated, together with the HTML files, they form an Eclipse help plugin. To +# install this plugin and make it available under the help contents menu in +# Eclipse, the contents of the directory containing the HTML and XML files needs +# to be copied into the plugins directory of eclipse. The name of the directory +# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. +# After copying Eclipse needs to be restarted before the help appears. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the Eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have this +# name. Each documentation set should have its own identifier. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. + +ECLIPSE_DOC_ID = org.doxygen.Project + +# If you want full control over the layout of the generated HTML pages it might +# be necessary to disable the index and replace it with your own. The +# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top +# of each HTML page. A value of NO enables the index and the value YES disables +# it. Since the tabs in the index contain the same information as the navigation +# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +DISABLE_INDEX = NO + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. If the tag +# value is set to YES, a side panel will be generated containing a tree-like +# index structure (just like the one that is generated for HTML Help). For this +# to work a browser that supports JavaScript, DHTML, CSS and frames is required +# (i.e. any modern browser). Windows users are probably better off using the +# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can +# further fine-tune the look of the index. As an example, the default style +# sheet generated by doxygen has an example that shows how to put an image at +# the root of the tree instead of the PROJECT_NAME. Since the tree basically has +# the same information as the tab index, you could consider setting +# DISABLE_INDEX to YES when enabling this option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_TREEVIEW = NO + +# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that +# doxygen will group on one line in the generated HTML documentation. +# +# Note that a value of 0 will completely suppress the enum values from appearing +# in the overview section. +# Minimum value: 0, maximum value: 20, default value: 4. +# This tag requires that the tag GENERATE_HTML is set to YES. + +ENUM_VALUES_PER_LINE = 4 + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used +# to set the initial width (in pixels) of the frame in which the tree is shown. +# Minimum value: 0, maximum value: 1500, default value: 250. +# This tag requires that the tag GENERATE_HTML is set to YES. + +TREEVIEW_WIDTH = 250 + +# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to +# external symbols imported via tag files in a separate window. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +EXT_LINKS_IN_WINDOW = NO + +# Use this tag to change the font size of LaTeX formulas included as images in +# the HTML documentation. When you change the font size after a successful +# doxygen run you need to manually remove any form_*.png images from the HTML +# output directory to force them to be regenerated. +# Minimum value: 8, maximum value: 50, default value: 10. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_FONTSIZE = 10 + +# Use the FORMULA_TRANPARENT tag to determine whether or not the images +# generated for formulas are transparent PNGs. Transparent PNGs are not +# supported properly for IE 6.0, but are supported on all modern browsers. +# +# Note that when changing this option you need to delete any form_*.png files in +# the HTML output directory before the changes have effect. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_TRANSPARENT = YES + +# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see +# http://www.mathjax.org) which uses client side Javascript for the rendering +# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX +# installed or if you want to formulas look prettier in the HTML output. When +# enabled you may also need to install MathJax separately and configure the path +# to it using the MATHJAX_RELPATH option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +USE_MATHJAX = NO + +# When MathJax is enabled you can set the default output format to be used for +# the MathJax output. See the MathJax site (see: +# http://docs.mathjax.org/en/latest/output.html) for more details. +# Possible values are: HTML-CSS (which is slower, but has the best +# compatibility), NativeMML (i.e. MathML) and SVG. +# The default value is: HTML-CSS. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_FORMAT = HTML-CSS + +# When MathJax is enabled you need to specify the location relative to the HTML +# output directory using the MATHJAX_RELPATH option. The destination directory +# should contain the MathJax.js script. For instance, if the mathjax directory +# is located at the same level as the HTML output directory, then +# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax +# Content Delivery Network so you can quickly see the result without installing +# MathJax. However, it is strongly recommended to install a local copy of +# MathJax from http://www.mathjax.org before deployment. +# The default value is: http://cdn.mathjax.org/mathjax/latest. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest + +# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax +# extension names that should be enabled during MathJax rendering. For example +# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_EXTENSIONS = + +# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces +# of code that will be used on startup of the MathJax code. See the MathJax site +# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an +# example see the documentation. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_CODEFILE = + +# When the SEARCHENGINE tag is enabled doxygen will generate a search box for +# the HTML output. The underlying search engine uses javascript and DHTML and +# should work on any modern browser. Note that when using HTML help +# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) +# there is already a search function so this one should typically be disabled. +# For large projects the javascript based search engine can be slow, then +# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to +# search using the keyboard; to jump to the search box use + S +# (what the is depends on the OS and browser, but it is typically +# , /