From 2c151d7f7e6862d16df3f10056c005524a4a1e62 Mon Sep 17 00:00:00 2001 From: Pawan Dhananjay Date: Thu, 12 Jan 2023 23:20:12 +0530 Subject: [PATCH] Rust bindings (#4) * working build * Move bindings.rs to root directory * tidy build script * Add initial rust safe bindings * import fewer c stuff in bindings * remove unnecessary blst definitions in bindings * remove bindgen build dependency * improve interface * Remove more stuff from bindings * Add a simple test * Update error type * Update verify_kzg_proof interface * Return array instead of vec * link with no-pie * impl Send and Sync for KzgSettings; change mut pointers to const * Remove no-pie linking * Make FIELD_ELEMENTS_PER_BLOB a compile time variable * Add load_trusted_setup method * Cleanup * Add failure case to bytes_to_bls_field * Fix conditional compilation and ensure canonical blobs in test * Add test vectors * Remove blobk_commitment test case * Change function signature * Copy and delete instead of rename in build script * Make consts public * Add error conditions for invalid trusted setup * Lowercase renamings * Make blob public * Add benchmarks * Run test vectors only for mainnet spec * Add README * clippy * Add rust CI checks * actually add CI checks * Fix CI * Fix workflow again --- .github/workflows/rust-bindings-test.yml | 31 + .gitignore | 1 + bindings/rust/.gitignore | 2 + bindings/rust/Cargo.lock | 658 ++++++++++++++++++ bindings/rust/Cargo.toml | 24 + bindings/rust/README.md | 23 + bindings/rust/benches/kzg_benches.rs | 65 ++ bindings/rust/build.rs | 91 +++ bindings/rust/src/bindings.rs | 293 ++++++++ bindings/rust/src/lib.rs | 428 ++++++++++++ .../rust/test_vectors/public_agg_proof.json | 18 + .../test_vectors/public_verify_kzg_proof.json | 21 + 12 files changed, 1655 insertions(+) create mode 100644 .github/workflows/rust-bindings-test.yml create mode 100644 bindings/rust/.gitignore create mode 100644 bindings/rust/Cargo.lock create mode 100644 bindings/rust/Cargo.toml create mode 100644 bindings/rust/README.md create mode 100644 bindings/rust/benches/kzg_benches.rs create mode 100644 bindings/rust/build.rs create mode 100644 bindings/rust/src/bindings.rs create mode 100644 bindings/rust/src/lib.rs create mode 100644 bindings/rust/test_vectors/public_agg_proof.json create mode 100644 bindings/rust/test_vectors/public_verify_kzg_proof.json diff --git a/.github/workflows/rust-bindings-test.yml b/.github/workflows/rust-bindings-test.yml new file mode 100644 index 0000000..343f460 --- /dev/null +++ b/.github/workflows/rust-bindings-test.yml @@ -0,0 +1,31 @@ +name: Rust bindings tests +on: + push: + branches: + - main + pull_request: + branches: + - main + +jobs: + test-rust-bindings: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + submodules: recursive + - name: Get latest version of stable rust + run: | + rustup update stable + - name: Build and Test (mainnet preset) + run: | + cd bindings/rust + cargo clean + cargo test --all --release --tests + - name: Build and Test (minimal preset) + run: | + cd bindings/rust + cargo clean + cargo test --all --release --features="minimal-spec" --tests + + \ No newline at end of file diff --git a/.gitignore b/.gitignore index 370b496..6d15fee 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ inc/blst_aux.h* .vscode/ .clang-format *bindings/*/*.so +*bindings/rust/target *bindings/csharp/*.exe *bindings/csharp/*.dll __pycache__ diff --git a/bindings/rust/.gitignore b/bindings/rust/.gitignore new file mode 100644 index 0000000..685e955 --- /dev/null +++ b/bindings/rust/.gitignore @@ -0,0 +1,2 @@ +src/consts.rs +target/ diff --git a/bindings/rust/Cargo.lock b/bindings/rust/Cargo.lock new file mode 100644 index 0000000..4a3728c --- /dev/null +++ b/bindings/rust/Cargo.lock @@ -0,0 +1,658 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "anes" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" + +[[package]] +name = "atty" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" +dependencies = [ + "hermit-abi 0.1.19", + "libc", + "winapi", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bumpalo" +version = "3.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "572f695136211188308f16ad2ca5c851a712c464060ae6974944458eb83880ba" + +[[package]] +name = "c-kzg" +version = "0.1.0" +dependencies = [ + "criterion", + "hex", + "libc", + "rand", + "serde_json", +] + +[[package]] +name = "cast" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "ciborium" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0c137568cc60b904a7724001b35ce2630fd00d5d84805fbb608ab89509d788f" +dependencies = [ + "ciborium-io", + "ciborium-ll", + "serde", +] + +[[package]] +name = "ciborium-io" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "346de753af073cc87b52b2083a506b38ac176a44cfb05497b622e27be899b369" + +[[package]] +name = "ciborium-ll" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "213030a2b5a4e0c0892b6652260cf6ccac84827b83a85a534e178e3906c4cf1b" +dependencies = [ + "ciborium-io", + "half", +] + +[[package]] +name = "clap" +version = "3.2.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71655c45cb9845d3270c9d6df84ebe72b4dad3c2ba3f7023ad47c144e4e473a5" +dependencies = [ + "bitflags", + "clap_lex", + "indexmap", + "textwrap", +] + +[[package]] +name = "clap_lex" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5" +dependencies = [ + "os_str_bytes", +] + +[[package]] +name = "criterion" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7c76e09c1aae2bc52b3d2f29e13c6572553b30c4aa1b8a49fd70de6412654cb" +dependencies = [ + "anes", + "atty", + "cast", + "ciborium", + "clap", + "criterion-plot", + "itertools", + "lazy_static", + "num-traits", + "oorandom", + "plotters", + "rayon", + "regex", + "serde", + "serde_derive", + "serde_json", + "tinytemplate", + "walkdir", +] + +[[package]] +name = "criterion-plot" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" +dependencies = [ + "cast", + "itertools", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521" +dependencies = [ + "cfg-if", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "715e8152b692bba2d374b53d4875445368fdf21a94751410af607a5ac677d1fc" +dependencies = [ + "cfg-if", + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01a9af1f4c2ef74bb8aa1f7e19706bc72d03598c8a570bb5de72243c7a9d9d5a" +dependencies = [ + "autocfg", + "cfg-if", + "crossbeam-utils", + "memoffset", + "scopeguard", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "either" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" + +[[package]] +name = "getrandom" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" +dependencies = [ + "cfg-if", + "libc", + "wasi", +] + +[[package]] +name = "half" +version = "1.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7" + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "hermit-abi" +version = "0.1.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" +dependencies = [ + "libc", +] + +[[package]] +name = "hermit-abi" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" +dependencies = [ + "libc", +] + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" + +[[package]] +name = "indexmap" +version = "1.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" +dependencies = [ + "autocfg", + "hashbrown", +] + +[[package]] +name = "itertools" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4217ad341ebadf8d8e724e264f13e593e0648f5b3e94b3896a5df283be015ecc" + +[[package]] +name = "js-sys" +version = "0.3.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "libc" +version = "0.2.137" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc7fcc620a3bff7cdd7a365be3376c97191aeaccc2a603e600951e452615bf89" + +[[package]] +name = "log" +version = "0.4.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "memoffset" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num-traits" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num_cpus" +version = "1.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" +dependencies = [ + "hermit-abi 0.2.6", + "libc", +] + +[[package]] +name = "once_cell" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66" + +[[package]] +name = "oorandom" +version = "11.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575" + +[[package]] +name = "os_str_bytes" +version = "6.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee" + +[[package]] +name = "plotters" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2538b639e642295546c50fcd545198c9d64ee2a38620a628724a3b266d5fbf97" +dependencies = [ + "num-traits", + "plotters-backend", + "plotters-svg", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "plotters-backend" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "193228616381fecdc1224c62e96946dfbc73ff4384fba576e052ff8c1bea8142" + +[[package]] +name = "plotters-svg" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9a81d2759aae1dae668f783c308bc5c8ebd191ff4184aaa1b37f65a6ae5a56f" +dependencies = [ + "plotters-backend", +] + +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + +[[package]] +name = "proc-macro2" +version = "1.0.49" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57a8eca9f9c4ffde41714334dee777596264c7825420f521abc92b5b5deb63a5" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "rayon" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6db3a213adf02b3bcfd2d3846bb41cb22857d131789e01df434fb7e7bc0759b7" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cac410af5d00ab6884528b4ab69d1e8e146e8d471201800fa1b4524126de6ad3" +dependencies = [ + "crossbeam-channel", + "crossbeam-deque", + "crossbeam-utils", + "num_cpus", +] + +[[package]] +name = "regex" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e076559ef8e241f2ae3479e36f97bd5741c0330689e217ad51ce2c76808b868a" +dependencies = [ + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.6.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" + +[[package]] +name = "ryu" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "scopeguard" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" + +[[package]] +name = "serde" +version = "1.0.150" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e326c9ec8042f1b5da33252c8a37e9ffbd2c9bef0155215b6e6c80c790e05f91" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.150" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42a3df25b0713732468deadad63ab9da1f1fd75a48a15024b50363f128db627e" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_json" +version = "1.0.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "020ff22c755c2ed3f8cf162dbb41a7268d934702f3ed3631656ea597e08fc3db" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "syn" +version = "1.0.107" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "textwrap" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" + +[[package]] +name = "tinytemplate" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" +dependencies = [ + "serde", + "serde_json", +] + +[[package]] +name = "unicode-ident" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" + +[[package]] +name = "walkdir" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" +dependencies = [ + "same-file", + "winapi", + "winapi-util", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f" + +[[package]] +name = "web-sys" +version = "0.3.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcda906d8be16e728fd5adc5b729afad4e444e106ab28cd1c7256e54fa61510f" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" diff --git a/bindings/rust/Cargo.toml b/bindings/rust/Cargo.toml new file mode 100644 index 0000000..5c0029e --- /dev/null +++ b/bindings/rust/Cargo.toml @@ -0,0 +1,24 @@ +[package] +name = "c-kzg" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[features] +default = ["mainnet-spec"] +mainnet-spec = [] +minimal-spec = [] + +[dependencies] +libc = "0.2" +hex = "0.4.2" + +[dev-dependencies] +rand = "0.8.5" +serde_json = "1.0.89" +criterion = "0.4" + +[[bench]] +name = "kzg_benches" +harness = false \ No newline at end of file diff --git a/bindings/rust/README.md b/bindings/rust/README.md new file mode 100644 index 0000000..1c800bb --- /dev/null +++ b/bindings/rust/README.md @@ -0,0 +1,23 @@ +# Rust bindings + +Generates the rust bindings for the c-kzg library. + +## Build + +``` +cargo build --release +``` + +Build with `--features="minimal-spec"` to set the `FIELD_ELEMENTS_PER_BLOB` compile time parameter to the pre-determined minimal spec value. + +## Test + +``` +cargo test --release +``` + +## Benchmark + +``` +cargo bench +``` diff --git a/bindings/rust/benches/kzg_benches.rs b/bindings/rust/benches/kzg_benches.rs new file mode 100644 index 0000000..ae8351d --- /dev/null +++ b/bindings/rust/benches/kzg_benches.rs @@ -0,0 +1,65 @@ +use std::path::PathBuf; + +use c_kzg::*; +use criterion::{criterion_group, criterion_main, BenchmarkId, Criterion}; +use rand::{rngs::ThreadRng, Rng}; +use std::sync::Arc; + +fn generate_random_blob_for_bench(rng: &mut ThreadRng) -> Blob { + let mut arr: Blob = [0; BYTES_PER_BLOB]; + rng.fill(&mut arr[..]); + // Ensure that the blob is canonical by ensuring that + // each field element contained in the blob is < BLS_MODULUS + for i in 0..FIELD_ELEMENTS_PER_BLOB { + arr[i * BYTES_PER_FIELD_ELEMENT + BYTES_PER_FIELD_ELEMENT - 1] = 0; + } + arr +} + +pub fn criterion_benchmark(c: &mut Criterion) { + let mut rng = rand::thread_rng(); + let trusted_setup_file = PathBuf::from("../../src/trusted_setup.txt"); + assert!(trusted_setup_file.exists()); + let kzg_settings = Arc::new(KzgSettings::load_trusted_setup_file(trusted_setup_file).unwrap()); + + let blob = generate_random_blob_for_bench(&mut rng); + c.bench_function("blob_to_kzg_commitment", |b| { + b.iter(|| KzgCommitment::blob_to_kzg_commitment(blob, &kzg_settings)) + }); + + for num_blobs in [4, 8, 16].iter() { + let mut group = c.benchmark_group("kzg operations"); + + let blobs: Vec = (0..*num_blobs) + .map(|_| generate_random_blob_for_bench(&mut rng)) + .collect(); + + group.bench_with_input( + BenchmarkId::new("compute_aggregate_kzg_proof", *num_blobs), + &blobs, + |b, blobs| b.iter(|| KzgProof::compute_aggregate_kzg_proof(blobs, &kzg_settings)), + ); + + let kzg_commitments: Vec = blobs + .clone() + .into_iter() + .map(|blob| KzgCommitment::blob_to_kzg_commitment(blob, &kzg_settings)) + .collect(); + let proof = KzgProof::compute_aggregate_kzg_proof(&blobs, &kzg_settings).unwrap(); + + group.bench_with_input( + BenchmarkId::new("verify_aggregate_kzg_proof", *num_blobs), + &blobs, + |b, blobs| { + b.iter(|| { + proof + .verify_aggregate_kzg_proof(&blobs, &kzg_commitments, &kzg_settings) + .unwrap() + }) + }, + ); + } +} + +criterion_group!(benches, criterion_benchmark); +criterion_main!(benches); diff --git a/bindings/rust/build.rs b/bindings/rust/build.rs new file mode 100644 index 0000000..8a7ac1b --- /dev/null +++ b/bindings/rust/build.rs @@ -0,0 +1,91 @@ +use std::env; +use std::path::{Path, PathBuf}; +use std::process::Command; + +const MAINNET_FIELD_ELEMENTS_PER_BLOB: usize = 4096; +const MINIMAL_FIELD_ELEMENTS_PER_BLOB: usize = 4; + +fn move_file(src: &Path, dst: &Path) -> Result<(), String> { + std::fs::copy(src, dst) + .map_err(|_| format!("Failed to copy {} to {}", src.display(), dst.display()))?; + std::fs::remove_file(src) + .map_err(|_| format!("Failed to remove file {} from source", src.display()))?; + Ok(()) +} + +fn main() { + let root_dir = PathBuf::from(env::var("CARGO_MANIFEST_DIR").unwrap()).join("../../"); + let out_dir = PathBuf::from(env::var("OUT_DIR").unwrap()); + + // Ensure libblst exists in `OUT_DIR` + // Assuming blst submodule exists + Command::new("make") + .current_dir(root_dir.join("src")) + .arg("blst") + .status() + .unwrap(); + move_file( + root_dir.join("lib/libblst.a").as_path(), + out_dir.join("libblst.a").as_path(), + ) + .unwrap(); + + let field_elements_per_blob = if cfg!(feature = "minimal-spec") { + MINIMAL_FIELD_ELEMENTS_PER_BLOB + } else { + MAINNET_FIELD_ELEMENTS_PER_BLOB + }; + + eprintln!("Using FIELD_ELEMENTS_PER_BLOB={}", field_elements_per_blob); + + // Deleting any existing assembly and object files to ensure that compiling with a different + // feature flag changes the final linked library file. + let obj_file = root_dir.join("src/c_kzg_4844.o"); + if obj_file.exists() { + std::fs::remove_file(obj_file).unwrap(); + } + + // Ensure libckzg exists in `OUT_DIR` + Command::new("make") + .current_dir(root_dir.join("src")) + .arg("all") + .arg(format!( + "FIELD_ELEMENTS_PER_BLOB={}", + field_elements_per_blob + )) + .status() + .unwrap(); + + Command::new("ar") + .current_dir(&root_dir.join("src")) + .args(["crus", "libckzg.a", "c_kzg_4844.o"]) + .status() + .unwrap(); + move_file( + root_dir.join("src/libckzg.a").as_path(), + out_dir.join("libckzg.a").as_path(), + ) + .unwrap(); + + println!("cargo:rustc-link-search={}", out_dir.display()); + println!("cargo:rustc-link-search={}", out_dir.display()); + println!("cargo:rustc-link-lib=static=ckzg"); + println!("cargo:rustc-link-lib=static=blst"); + + // Write the compile time variable to a consts.rs file to be imported to the bindings module. + let const_file = PathBuf::from(env::var("CARGO_MANIFEST_DIR").unwrap()).join("src/consts.rs"); + std::fs::write( + const_file, + format!( + "pub const FIELD_ELEMENTS_PER_BLOB: usize = {};", + field_elements_per_blob + ), + ) + .unwrap(); + + // Cleanup + let obj_file = root_dir.join("src/c_kzg_4844.o"); + if obj_file.exists() { + std::fs::remove_file(obj_file).unwrap(); + } +} diff --git a/bindings/rust/src/bindings.rs b/bindings/rust/src/bindings.rs new file mode 100644 index 0000000..2e8cfff --- /dev/null +++ b/bindings/rust/src/bindings.rs @@ -0,0 +1,293 @@ +/* automatically generated by rust-bindgen 0.61.0 */ + +include!("./consts.rs"); + +use libc::FILE; + +pub const BYTES_PER_COMMITMENT: usize = 48; +pub const BYTES_PER_PROOF: usize = 48; +pub const BYTES_PER_FIELD_ELEMENT: usize = 32; +pub const BYTES_PER_BLOB: usize = FIELD_ELEMENTS_PER_BLOB * BYTES_PER_FIELD_ELEMENT; + +pub type byte = u8; +pub type limb_t = u64; +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct blst_scalar { + pub b: [byte; 32usize], +} + +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct blst_fr { + pub l: [limb_t; 4usize], +} + +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct blst_fp { + pub l: [limb_t; 6usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct blst_fp2 { + pub fp: [blst_fp; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct blst_fp6 { + pub fp2: [blst_fp2; 3usize], +} + +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct blst_fp12 { + pub fp6: [blst_fp6; 2usize], +} + +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct blst_p1 { + pub x: blst_fp, + pub y: blst_fp, + pub z: blst_fp, +} + +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct blst_p1_affine { + pub x: blst_fp, + pub y: blst_fp, +} + +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct blst_p2 { + pub x: blst_fp2, + pub y: blst_fp2, + pub z: blst_fp2, +} + +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct blst_p2_affine { + pub x: blst_fp2, + pub y: blst_fp2, +} + +pub const FIAT_SHAMIR_PROTOCOL_DOMAIN: [u8; 16usize] = [ + 70, 83, 66, 76, 79, 66, 86, 69, 82, 73, 70, 89, 95, 86, 49, 95, +]; +pub type g1_t = blst_p1; +pub type g2_t = blst_p2; +pub type fr_t = blst_fr; +pub type KZGCommitment = g1_t; +pub type KZGProof = g1_t; +pub type BLSFieldElement = fr_t; +pub type Blob = [u8; BYTES_PER_BLOB]; +#[repr(u32)] +#[doc = " The common return type for all routines in which something can go wrong."] +#[doc = ""] +#[doc = " @warning In the case of @p C_KZG_OK or @p C_KZG_BADARGS, the caller can assume that all memory allocated by the"] +#[doc = " called routines has been deallocated. However, in the case of @p C_KZG_ERROR or @p C_KZG_MALLOC being returned, these"] +#[doc = " are unrecoverable and memory may have been leaked."] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum C_KZG_RET { + #[doc = "< Success!"] + C_KZG_OK = 0, + #[doc = "< The supplied data is invalid in some way"] + C_KZG_BADARGS = 1, + #[doc = "< Internal error - this should never occur and may indicate a bug in the library"] + C_KZG_ERROR = 2, + #[doc = "< Could not allocate memory"] + C_KZG_MALLOC = 3, +} +#[doc = " Stores the setup and parameters needed for performing FFTs."] +#[repr(C)] +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct FFTSettings { + #[doc = "< The maximum size of FFT these settings support, a power of 2."] + pub max_width: u64, + #[doc = "< Ascending powers of the root of unity, size `width + 1`."] + pub expanded_roots_of_unity: *const fr_t, + #[doc = "< Descending powers of the root of unity, size `width + 1`."] + pub reverse_roots_of_unity: *const fr_t, + #[doc = "< Powers of the root of unity in bit-reversal permutation, size `width`."] + pub roots_of_unity: *const fr_t, +} + +#[test] +fn bindgen_test_layout_FFTSettings() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(FFTSettings)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(FFTSettings)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_width) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(FFTSettings), + "::", + stringify!(max_width) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).expanded_roots_of_unity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(FFTSettings), + "::", + stringify!(expanded_roots_of_unity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).reverse_roots_of_unity) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(FFTSettings), + "::", + stringify!(reverse_roots_of_unity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).roots_of_unity) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(FFTSettings), + "::", + stringify!(roots_of_unity) + ) + ); +} +#[doc = " Stores the setup and parameters needed for computing KZG proofs."] +#[repr(C)] +#[derive(Debug, Clone, PartialEq, Eq)] +pub struct KZGSettings { + #[doc = "< The corresponding settings for performing FFTs"] + pub fs: *const FFTSettings, + #[doc = "< G1 group elements from the trusted setup, in Lagrange form bit-reversal permutation"] + pub g1_values: *const g1_t, + #[doc = "< G2 group elements from the trusted setup; both arrays have FIELD_ELEMENTS_PER_BLOB elements"] + pub g2_values: *const g2_t, +} + +/// Safety: FFTSettings is initialized once on calling `load_trusted_setup`. After +/// that, the struct is never modified. The memory for the arrays within `FFTSettings` and +/// `g1_values` and `g2_values` are only freed on calling `free_trusted_setup` which only happens +/// when we drop the struct. +unsafe impl Sync for KZGSettings {} +unsafe impl Send for KZGSettings {} + +#[test] +fn bindgen_test_layout_KZGSettings() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(KZGSettings)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(KZGSettings)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(KZGSettings), + "::", + stringify!(fs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).g1_values) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(KZGSettings), + "::", + stringify!(g1_values) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).g2_values) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(KZGSettings), + "::", + stringify!(g2_values) + ) + ); +} +extern "C" { + #[doc = " Interface functions"] + pub fn bytes_to_g1(out: *mut g1_t, in_: *const u8) -> C_KZG_RET; +} +extern "C" { + pub fn bytes_from_g1(out: *mut u8, in_: *const g1_t); +} +extern "C" { + pub fn bytes_to_bls_field(out: *mut BLSFieldElement, in_: *const u8) -> C_KZG_RET; +} +extern "C" { + pub fn load_trusted_setup_file(out: *mut KZGSettings, in_: *mut FILE) -> C_KZG_RET; +} +extern "C" { + pub fn load_trusted_setup( + out: *mut KZGSettings, + g1_bytes: *const u8, /* n1 * 48 bytes */ + n1: usize, + g2_bytes: *const u8, /* n2 * 96 bytes */ + n2: usize, + ) -> C_KZG_RET; +} +extern "C" { + pub fn free_trusted_setup(s: *mut KZGSettings); +} +extern "C" { + pub fn compute_aggregate_kzg_proof( + out: *mut KZGProof, + blobs: *const u8, // pointer to the first byte in a 2D array ([[u8; BYTES_PER_BLOB]]) + n: usize, + s: *const KZGSettings, + ) -> C_KZG_RET; +} +extern "C" { + pub fn verify_aggregate_kzg_proof( + out: *mut bool, + blobs: *const u8, // pointer to the first byte in a 2D array ([[u8; BYTES_PER_BLOB]]) + expected_kzg_commitments: *const KZGCommitment, + n: usize, + kzg_aggregated_proof: *const KZGProof, + s: *const KZGSettings, + ) -> C_KZG_RET; +} +extern "C" { + pub fn blob_to_kzg_commitment(out: *mut KZGCommitment, blob: *mut u8, s: *const KZGSettings); +} +extern "C" { + pub fn verify_kzg_proof( + out: *mut bool, + polynomial_kzg: *const KZGCommitment, + z: *const u8, + y: *const u8, + kzg_proof: *const KZGProof, + s: *const KZGSettings, + ) -> C_KZG_RET; +} diff --git a/bindings/rust/src/lib.rs b/bindings/rust/src/lib.rs new file mode 100644 index 0000000..12743d7 --- /dev/null +++ b/bindings/rust/src/lib.rs @@ -0,0 +1,428 @@ +#![allow(non_upper_case_globals)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] + +mod bindings; +use bindings::{g1_t, C_KZG_RET}; +use libc::fopen; +use std::ffi::CString; +use std::mem::MaybeUninit; +use std::os::unix::prelude::OsStrExt; +use std::path::PathBuf; + +pub use bindings::{ + Blob, BYTES_PER_BLOB, BYTES_PER_COMMITMENT, BYTES_PER_FIELD_ELEMENT, BYTES_PER_PROOF, + FIAT_SHAMIR_PROTOCOL_DOMAIN, FIELD_ELEMENTS_PER_BLOB, +}; + +pub const BYTES_PER_G1_POINT: usize = 48; +pub const BYTES_PER_G2_POINT: usize = 96; + +/// Number of G2 points required for the kzg trusted setup. +/// 65 is fixed and is used for providing multiproofs up to 64 field elements. +const NUM_G2_POINTS: usize = 65; + +#[derive(Debug)] +pub enum Error { + /// The KZG proof is invalid. + InvalidKzgProof(String), + /// The KZG commitment is invalid. + InvalidKzgCommitment(String), + /// The provided trusted setup is invalid. + InvalidTrustedSetup(String), + /// The underlying c-kzg library returned an error. + CError(C_KZG_RET), +} + +pub fn bytes_to_g1(bytes: &[u8]) -> Result { + let mut g1_point = MaybeUninit::::uninit(); + unsafe { + let res = bindings::bytes_to_g1(g1_point.as_mut_ptr(), bytes.as_ptr()); + if let C_KZG_RET::C_KZG_OK = res { + Ok(g1_point.assume_init()) + } else { + Err(Error::CError(res)) + } + } +} + +pub fn bytes_from_g1(g1_point: g1_t) -> [u8; BYTES_PER_G1_POINT] { + let mut bytes = [0; 48]; + unsafe { bindings::bytes_from_g1(bytes.as_mut_ptr(), &g1_point) } + bytes +} + +#[derive(Debug, Clone, Copy)] +pub struct BlsFieldElement(bindings::BLSFieldElement); + +impl BlsFieldElement { + pub fn bytes_to_bls_field(bytes: [u8; BYTES_PER_FIELD_ELEMENT]) -> Result { + let mut bls_field_element = MaybeUninit::::uninit(); + unsafe { + let res = bindings::bytes_to_bls_field(bls_field_element.as_mut_ptr(), bytes.as_ptr()); + if let C_KZG_RET::C_KZG_OK = res { + Ok(Self(bls_field_element.assume_init())) + } else { + Err(Error::CError(res)) + } + } + } +} + +/// Holds the parameters of a kzg trusted setup ceremony. +pub struct KzgSettings(bindings::KZGSettings); +impl KzgSettings { + /// Initializes a trusted setup from `FIELD_ELEMENTS_PER_BLOB` g1 points + /// and 65 g2 points in byte format. + pub fn load_trusted_setup( + g1_bytes: Vec<[u8; BYTES_PER_G1_POINT]>, + g2_bytes: Vec<[u8; BYTES_PER_G2_POINT]>, + ) -> Result { + if g1_bytes.len() != FIELD_ELEMENTS_PER_BLOB { + return Err(Error::InvalidTrustedSetup(format!( + "Invalid number of g1 points in trusted setup. Expected {} got {}", + FIELD_ELEMENTS_PER_BLOB, + g1_bytes.len() + ))); + } + if g2_bytes.len() != NUM_G2_POINTS { + return Err(Error::InvalidTrustedSetup(format!( + "Invalid number of g2 points in trusted setup. Expected {} got {}", + NUM_G2_POINTS, + g2_bytes.len() + ))); + } + let mut kzg_settings = MaybeUninit::::uninit(); + unsafe { + let n1 = g1_bytes.len(); + let n2 = g2_bytes.len(); + + let res = bindings::load_trusted_setup( + kzg_settings.as_mut_ptr(), + g1_bytes.as_ptr() as *const u8, + n1, + g2_bytes.as_ptr() as *const u8, + n2, + ); + if let C_KZG_RET::C_KZG_OK = res { + Ok(Self(kzg_settings.assume_init())) + } else { + Err(Error::InvalidTrustedSetup(format!( + "Invalid trusted setup: {:?}", + res + ))) + } + } + } + + /// Loads the trusted setup parameters from a file. The file format is as follows: + /// + /// FIELD_ELEMENTS_PER_BLOB + /// 65 # This is fixed and is used for providing multiproofs up to 64 field elements. + /// FIELD_ELEMENT_PER_BLOB g1 byte values + /// 65 g2 byte values + pub fn load_trusted_setup_file(file_path: PathBuf) -> Result { + let file_path = CString::new(file_path.as_os_str().as_bytes()).map_err(|e| { + Error::InvalidTrustedSetup(format!("Invalid trusted setup file: {:?}", e)) + })?; + let mut kzg_settings = MaybeUninit::::uninit(); + unsafe { + let file_ptr = fopen(file_path.as_ptr(), &('r' as libc::c_char)); + let res = bindings::load_trusted_setup_file(kzg_settings.as_mut_ptr(), file_ptr); + if let C_KZG_RET::C_KZG_OK = res { + Ok(Self(kzg_settings.assume_init())) + } else { + Err(Error::InvalidTrustedSetup(format!( + "Invalid trusted setup: {:?}", + res + ))) + } + } + } +} + +impl Drop for KzgSettings { + fn drop(&mut self) { + unsafe { bindings::free_trusted_setup(&mut self.0) } + } +} + +pub struct KzgProof(bindings::KZGProof); + +impl KzgProof { + pub fn from_bytes(bytes: &[u8]) -> Result { + if bytes.len() != BYTES_PER_PROOF { + return Err(Error::InvalidKzgProof(format!( + "Invalid byte length. Expected {} got {}", + BYTES_PER_PROOF, + bytes.len(), + ))); + } + let mut proof_bytes = [0; BYTES_PER_PROOF]; + proof_bytes.copy_from_slice(bytes); + Ok(Self(bytes_to_g1(bytes)?)) + } + + pub fn to_bytes(&self) -> [u8; BYTES_PER_G1_POINT] { + bytes_from_g1(self.0) + } + + pub fn as_hex_string(&self) -> String { + hex::encode(self.to_bytes()) + } + + pub fn compute_aggregate_kzg_proof( + blobs: &[Blob], + kzg_settings: &KzgSettings, + ) -> Result { + let mut kzg_proof = MaybeUninit::::uninit(); + unsafe { + let res = bindings::compute_aggregate_kzg_proof( + kzg_proof.as_mut_ptr(), + blobs.as_ptr() as *const u8, + blobs.len(), + &kzg_settings.0, + ); + if let C_KZG_RET::C_KZG_OK = res { + Ok(Self(kzg_proof.assume_init())) + } else { + Err(Error::CError(res)) + } + } + } + + pub fn verify_aggregate_kzg_proof( + &self, + blobs: &[Blob], + expected_kzg_commitments: &[KzgCommitment], + kzg_settings: &KzgSettings, + ) -> Result { + let mut verified: MaybeUninit = MaybeUninit::uninit(); + unsafe { + // TODO: pass without allocating a vec + let res = bindings::verify_aggregate_kzg_proof( + verified.as_mut_ptr(), + blobs.as_ptr() as *const u8, + expected_kzg_commitments + .iter() + .map(|c| c.0) + .collect::>() + .as_ptr(), + blobs.len(), + &self.0, + &kzg_settings.0, + ); + if let C_KZG_RET::C_KZG_OK = res { + Ok(verified.assume_init()) + } else { + Err(Error::CError(res)) + } + } + } + + pub fn verify_kzg_proof( + &self, + kzg_commitment: KzgCommitment, + z: [u8; BYTES_PER_FIELD_ELEMENT], + y: [u8; BYTES_PER_FIELD_ELEMENT], + kzg_settings: &KzgSettings, + ) -> Result { + let mut verified: MaybeUninit = MaybeUninit::uninit(); + unsafe { + let res = bindings::verify_kzg_proof( + verified.as_mut_ptr(), + &kzg_commitment.0, + z.as_ptr(), + y.as_ptr(), + &self.0, + &kzg_settings.0, + ); + if let C_KZG_RET::C_KZG_OK = res { + Ok(verified.assume_init()) + } else { + Err(Error::CError(res)) + } + } + } +} + +pub struct KzgCommitment(bindings::KZGCommitment); + +impl KzgCommitment { + pub fn from_bytes(bytes: &[u8]) -> Result { + if bytes.len() != BYTES_PER_COMMITMENT { + return Err(Error::InvalidKzgCommitment(format!( + "Invalid byte length. Expected {} got {}", + BYTES_PER_PROOF, + bytes.len(), + ))); + } + let mut proof_bytes = [0; BYTES_PER_COMMITMENT]; + proof_bytes.copy_from_slice(bytes); + Ok(Self(bytes_to_g1(bytes)?)) + } + + pub fn to_bytes(&self) -> [u8; BYTES_PER_G1_POINT] { + bytes_from_g1(self.0) + } + + pub fn as_hex_string(&self) -> String { + hex::encode(self.to_bytes()) + } + + pub fn blob_to_kzg_commitment(mut blob: Blob, kzg_settings: &KzgSettings) -> Self { + let mut kzg_commitment: MaybeUninit = MaybeUninit::uninit(); + unsafe { + bindings::blob_to_kzg_commitment( + kzg_commitment.as_mut_ptr(), + blob.as_mut_ptr(), + &kzg_settings.0, + ); + Self(kzg_commitment.assume_init()) + } + } +} + +#[cfg(test)] +mod tests { + use super::*; + use rand::{rngs::ThreadRng, Rng}; + + fn generate_random_blob(rng: &mut ThreadRng) -> Blob { + let mut arr: Blob = [0; BYTES_PER_BLOB]; + rng.fill(&mut arr[..]); + // Ensure that the blob is canonical by ensuring that + // each field element contained in the blob is < BLS_MODULUS + for i in 0..FIELD_ELEMENTS_PER_BLOB { + arr[i * BYTES_PER_FIELD_ELEMENT + BYTES_PER_FIELD_ELEMENT - 1] = 0; + } + arr + } + + fn test_simple(trusted_setup_file: PathBuf) { + let mut rng = rand::thread_rng(); + assert!(trusted_setup_file.exists()); + let kzg_settings = KzgSettings::load_trusted_setup_file(trusted_setup_file).unwrap(); + + let num_blobs: usize = rng.gen_range(0..16); + let mut blobs: Vec = (0..num_blobs) + .map(|_| generate_random_blob(&mut rng)) + .collect(); + + let kzg_commitments: Vec = blobs + .clone() + .into_iter() + .map(|blob| KzgCommitment::blob_to_kzg_commitment(blob, &kzg_settings)) + .collect(); + + let kzg_proof = KzgProof::compute_aggregate_kzg_proof(&blobs, &kzg_settings).unwrap(); + + assert!(kzg_proof + .verify_aggregate_kzg_proof(&blobs, &kzg_commitments, &kzg_settings) + .unwrap()); + + let incorrect_blob = generate_random_blob(&mut rng); + blobs.pop(); + blobs.push(incorrect_blob); + + assert!(!kzg_proof + .verify_aggregate_kzg_proof(&blobs, &kzg_commitments, &kzg_settings) + .unwrap()); + } + + #[test] + fn test_end_to_end() { + let trusted_setup_file = if cfg!(feature = "minimal-spec") { + PathBuf::from("../../src/trusted_setup_4.txt") + } else { + PathBuf::from("../../src/trusted_setup.txt") + }; + test_simple(trusted_setup_file); + } + + #[cfg(not(feature = "minimal-spec"))] + #[test] + fn test_compute_agg_proof() { + let trusted_setup_file = PathBuf::from("../../src/trusted_setup.txt"); + assert!(trusted_setup_file.exists()); + let kzg_settings = KzgSettings::load_trusted_setup_file(trusted_setup_file).unwrap(); + + let test_file = PathBuf::from("test_vectors/public_agg_proof.json"); + let json_data: serde_json::Value = + serde_json::from_reader(std::fs::File::open(test_file).unwrap()).unwrap(); + + let tests = json_data.get("TestCases").unwrap().as_array().unwrap(); + for test in tests.iter() { + let expected_proof = test.get("Proof").unwrap().as_str().unwrap(); + + let expected_kzg_commitments = test + .get("Commitments") + .unwrap() + .as_array() + .unwrap() + .iter() + .map(|data| data.as_str().unwrap()) + .collect::>(); + + let blobs = test + .get("Polynomials") + .unwrap() + .as_array() + .unwrap() + .iter() + .map(|data| { + let data = data.as_str().unwrap(); + let blob = hex::decode(data).unwrap(); + let mut blob_data = [0; BYTES_PER_BLOB]; + blob_data.copy_from_slice(&blob); + blob_data + }) + .collect::>(); + + let proof = KzgProof::compute_aggregate_kzg_proof(&blobs, &kzg_settings).unwrap(); + assert_eq!(proof.as_hex_string(), expected_proof); + + for (i, blob) in blobs.into_iter().enumerate() { + let commitment = KzgCommitment::blob_to_kzg_commitment(blob, &kzg_settings); + assert_eq!( + commitment.as_hex_string().as_str(), + expected_kzg_commitments[i] + ); + } + } + } + + #[cfg(not(feature = "minimal-spec"))] + #[test] + fn test_verify_kzg_proof() { + let trusted_setup_file = PathBuf::from("../../src/trusted_setup.txt"); + assert!(trusted_setup_file.exists()); + let kzg_settings = KzgSettings::load_trusted_setup_file(trusted_setup_file).unwrap(); + + let test_file = PathBuf::from("test_vectors/public_verify_kzg_proof.json"); + let json_data: serde_json::Value = + serde_json::from_reader(std::fs::File::open(test_file).unwrap()).unwrap(); + + let tests = json_data.get("TestCases").unwrap().as_array().unwrap(); + for test in tests.iter() { + let proof = test.get("Proof").unwrap().as_str().unwrap(); + let kzg_proof = KzgProof::from_bytes(&hex::decode(proof).unwrap()).unwrap(); + + let commitment = test.get("Commitment").unwrap().as_str().unwrap(); + let kzg_commitment = + KzgCommitment::from_bytes(&hex::decode(commitment).unwrap()).unwrap(); + + let z = test.get("InputPoint").unwrap().as_str().unwrap(); + let mut z_bytes = [0; BYTES_PER_FIELD_ELEMENT]; + z_bytes.copy_from_slice(&hex::decode(z).unwrap()); + + let y = test.get("ClaimedValue").unwrap().as_str().unwrap(); + let mut y_bytes = [0; BYTES_PER_FIELD_ELEMENT]; + y_bytes.copy_from_slice(&hex::decode(y).unwrap()); + + assert!(kzg_proof + .verify_kzg_proof(kzg_commitment, z_bytes, y_bytes, &kzg_settings) + .unwrap()); + } + } +} diff --git a/bindings/rust/test_vectors/public_agg_proof.json b/bindings/rust/test_vectors/public_agg_proof.json new file mode 100644 index 0000000..48326b0 --- /dev/null +++ b/bindings/rust/test_vectors/public_agg_proof.json @@ -0,0 +1,18 @@ +{ + "NumTestCases": 1, + "TestCases": [ + { + "NumPolys": 2, + "PolyDegree": 4096, + "Polynomials": [ + "00000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000f0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000013000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000150000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000019000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000001b000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001d000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000001f0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002100000000000000000000000000000000000000000000000000000000000000220000000000000000000000000000000000000000000000000000000000000023000000000000000000000000000000000000000000000000000000000000002400000000000000000000000000000000000000000000000000000000000000250000000000000000000000000000000000000000000000000000000000000026000000000000000000000000000000000000000000000000000000000000002700000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000029000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000002e000000000000000000000000000000000000000000000000000000000000002f0000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000003100000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000033000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000350000000000000000000000000000000000000000000000000000000000000036000000000000000000000000000000000000000000000000000000000000003700000000000000000000000000000000000000000000000000000000000000380000000000000000000000000000000000000000000000000000000000000039000000000000000000000000000000000000000000000000000000000000003a000000000000000000000000000000000000000000000000000000000000003b000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000003d000000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000003f0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000004100000000000000000000000000000000000000000000000000000000000000420000000000000000000000000000000000000000000000000000000000000043000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000450000000000000000000000000000000000000000000000000000000000000046000000000000000000000000000000000000000000000000000000000000004700000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000049000000000000000000000000000000000000000000000000000000000000004a000000000000000000000000000000000000000000000000000000000000004b000000000000000000000000000000000000000000000000000000000000004c000000000000000000000000000000000000000000000000000000000000004d000000000000000000000000000000000000000000000000000000000000004e000000000000000000000000000000000000000000000000000000000000004f0000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000005100000000000000000000000000000000000000000000000000000000000000520000000000000000000000000000000000000000000000000000000000000053000000000000000000000000000000000000000000000000000000000000005400000000000000000000000000000000000000000000000000000000000000550000000000000000000000000000000000000000000000000000000000000056000000000000000000000000000000000000000000000000000000000000005700000000000000000000000000000000000000000000000000000000000000580000000000000000000000000000000000000000000000000000000000000059000000000000000000000000000000000000000000000000000000000000005a000000000000000000000000000000000000000000000000000000000000005b000000000000000000000000000000000000000000000000000000000000005c000000000000000000000000000000000000000000000000000000000000005d000000000000000000000000000000000000000000000000000000000000005e000000000000000000000000000000000000000000000000000000000000005f0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000006100000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000063000000000000000000000000000000000000000000000000000000000000006400000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000066000000000000000000000000000000000000000000000000000000000000006700000000000000000000000000000000000000000000000000000000000000680000000000000000000000000000000000000000000000000000000000000069000000000000000000000000000000000000000000000000000000000000006a000000000000000000000000000000000000000000000000000000000000006b000000000000000000000000000000000000000000000000000000000000006c000000000000000000000000000000000000000000000000000000000000006d000000000000000000000000000000000000000000000000000000000000006e000000000000000000000000000000000000000000000000000000000000006f0000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000007100000000000000000000000000000000000000000000000000000000000000720000000000000000000000000000000000000000000000000000000000000073000000000000000000000000000000000000000000000000000000000000007400000000000000000000000000000000000000000000000000000000000000750000000000000000000000000000000000000000000000000000000000000076000000000000000000000000000000000000000000000000000000000000007700000000000000000000000000000000000000000000000000000000000000780000000000000000000000000000000000000000000000000000000000000079000000000000000000000000000000000000000000000000000000000000007a000000000000000000000000000000000000000000000000000000000000007b000000000000000000000000000000000000000000000000000000000000007c000000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000007e000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008100000000000000000000000000000000000000000000000000000000000000820000000000000000000000000000000000000000000000000000000000000083000000000000000000000000000000000000000000000000000000000000008400000000000000000000000000000000000000000000000000000000000000850000000000000000000000000000000000000000000000000000000000000086000000000000000000000000000000000000000000000000000000000000008700000000000000000000000000000000000000000000000000000000000000880000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000000008a000000000000000000000000000000000000000000000000000000000000008b000000000000000000000000000000000000000000000000000000000000008c000000000000000000000000000000000000000000000000000000000000008d000000000000000000000000000000000000000000000000000000000000008e000000000000000000000000000000000000000000000000000000000000008f0000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000009100000000000000000000000000000000000000000000000000000000000000920000000000000000000000000000000000000000000000000000000000000093000000000000000000000000000000000000000000000000000000000000009400000000000000000000000000000000000000000000000000000000000000950000000000000000000000000000000000000000000000000000000000000096000000000000000000000000000000000000000000000000000000000000009700000000000000000000000000000000000000000000000000000000000000980000000000000000000000000000000000000000000000000000000000000099000000000000000000000000000000000000000000000000000000000000009a000000000000000000000000000000000000000000000000000000000000009b000000000000000000000000000000000000000000000000000000000000009c000000000000000000000000000000000000000000000000000000000000009d000000000000000000000000000000000000000000000000000000000000009e000000000000000000000000000000000000000000000000000000000000009f00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000a100000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000a300000000000000000000000000000000000000000000000000000000000000a400000000000000000000000000000000000000000000000000000000000000a500000000000000000000000000000000000000000000000000000000000000a600000000000000000000000000000000000000000000000000000000000000a700000000000000000000000000000000000000000000000000000000000000a800000000000000000000000000000000000000000000000000000000000000a900000000000000000000000000000000000000000000000000000000000000aa00000000000000000000000000000000000000000000000000000000000000ab00000000000000000000000000000000000000000000000000000000000000ac00000000000000000000000000000000000000000000000000000000000000ad00000000000000000000000000000000000000000000000000000000000000ae00000000000000000000000000000000000000000000000000000000000000af00000000000000000000000000000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000b100000000000000000000000000000000000000000000000000000000000000b200000000000000000000000000000000000000000000000000000000000000b300000000000000000000000000000000000000000000000000000000000000b400000000000000000000000000000000000000000000000000000000000000b500000000000000000000000000000000000000000000000000000000000000b600000000000000000000000000000000000000000000000000000000000000b700000000000000000000000000000000000000000000000000000000000000b800000000000000000000000000000000000000000000000000000000000000b900000000000000000000000000000000000000000000000000000000000000ba00000000000000000000000000000000000000000000000000000000000000bb00000000000000000000000000000000000000000000000000000000000000bc00000000000000000000000000000000000000000000000000000000000000bd00000000000000000000000000000000000000000000000000000000000000be00000000000000000000000000000000000000000000000000000000000000bf00000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000c100000000000000000000000000000000000000000000000000000000000000c200000000000000000000000000000000000000000000000000000000000000c300000000000000000000000000000000000000000000000000000000000000c400000000000000000000000000000000000000000000000000000000000000c500000000000000000000000000000000000000000000000000000000000000c600000000000000000000000000000000000000000000000000000000000000c700000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c900000000000000000000000000000000000000000000000000000000000000ca00000000000000000000000000000000000000000000000000000000000000cb00000000000000000000000000000000000000000000000000000000000000cc00000000000000000000000000000000000000000000000000000000000000cd00000000000000000000000000000000000000000000000000000000000000ce00000000000000000000000000000000000000000000000000000000000000cf00000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000d100000000000000000000000000000000000000000000000000000000000000d200000000000000000000000000000000000000000000000000000000000000d300000000000000000000000000000000000000000000000000000000000000d400000000000000000000000000000000000000000000000000000000000000d500000000000000000000000000000000000000000000000000000000000000d600000000000000000000000000000000000000000000000000000000000000d700000000000000000000000000000000000000000000000000000000000000d800000000000000000000000000000000000000000000000000000000000000d900000000000000000000000000000000000000000000000000000000000000da00000000000000000000000000000000000000000000000000000000000000db00000000000000000000000000000000000000000000000000000000000000dc00000000000000000000000000000000000000000000000000000000000000dd00000000000000000000000000000000000000000000000000000000000000de00000000000000000000000000000000000000000000000000000000000000df00000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000e100000000000000000000000000000000000000000000000000000000000000e200000000000000000000000000000000000000000000000000000000000000e300000000000000000000000000000000000000000000000000000000000000e400000000000000000000000000000000000000000000000000000000000000e500000000000000000000000000000000000000000000000000000000000000e600000000000000000000000000000000000000000000000000000000000000e700000000000000000000000000000000000000000000000000000000000000e800000000000000000000000000000000000000000000000000000000000000e900000000000000000000000000000000000000000000000000000000000000ea00000000000000000000000000000000000000000000000000000000000000eb00000000000000000000000000000000000000000000000000000000000000ec00000000000000000000000000000000000000000000000000000000000000ed00000000000000000000000000000000000000000000000000000000000000ee00000000000000000000000000000000000000000000000000000000000000ef00000000000000000000000000000000000000000000000000000000000000f000000000000000000000000000000000000000000000000000000000000000f100000000000000000000000000000000000000000000000000000000000000f200000000000000000000000000000000000000000000000000000000000000f300000000000000000000000000000000000000000000000000000000000000f400000000000000000000000000000000000000000000000000000000000000f500000000000000000000000000000000000000000000000000000000000000f600000000000000000000000000000000000000000000000000000000000000f700000000000000000000000000000000000000000000000000000000000000f800000000000000000000000000000000000000000000000000000000000000f900000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000000fb00000000000000000000000000000000000000000000000000000000000000fc00000000000000000000000000000000000000000000000000000000000000fd00000000000000000000000000000000000000000000000000000000000000fe00000000000000000000000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000101000000000000000000000000000000000000000000000000000000000000020100000000000000000000000000000000000000000000000000000000000003010000000000000000000000000000000000000000000000000000000000000401000000000000000000000000000000000000000000000000000000000000050100000000000000000000000000000000000000000000000000000000000006010000000000000000000000000000000000000000000000000000000000000701000000000000000000000000000000000000000000000000000000000000080100000000000000000000000000000000000000000000000000000000000009010000000000000000000000000000000000000000000000000000000000000a010000000000000000000000000000000000000000000000000000000000000b010000000000000000000000000000000000000000000000000000000000000c010000000000000000000000000000000000000000000000000000000000000d010000000000000000000000000000000000000000000000000000000000000e010000000000000000000000000000000000000000000000000000000000000f0100000000000000000000000000000000000000000000000000000000000010010000000000000000000000000000000000000000000000000000000000001101000000000000000000000000000000000000000000000000000000000000120100000000000000000000000000000000000000000000000000000000000013010000000000000000000000000000000000000000000000000000000000001401000000000000000000000000000000000000000000000000000000000000150100000000000000000000000000000000000000000000000000000000000016010000000000000000000000000000000000000000000000000000000000001701000000000000000000000000000000000000000000000000000000000000180100000000000000000000000000000000000000000000000000000000000019010000000000000000000000000000000000000000000000000000000000001a010000000000000000000000000000000000000000000000000000000000001b010000000000000000000000000000000000000000000000000000000000001c010000000000000000000000000000000000000000000000000000000000001d010000000000000000000000000000000000000000000000000000000000001e010000000000000000000000000000000000000000000000000000000000001f0100000000000000000000000000000000000000000000000000000000000020010000000000000000000000000000000000000000000000000000000000002101000000000000000000000000000000000000000000000000000000000000220100000000000000000000000000000000000000000000000000000000000023010000000000000000000000000000000000000000000000000000000000002401000000000000000000000000000000000000000000000000000000000000250100000000000000000000000000000000000000000000000000000000000026010000000000000000000000000000000000000000000000000000000000002701000000000000000000000000000000000000000000000000000000000000280100000000000000000000000000000000000000000000000000000000000029010000000000000000000000000000000000000000000000000000000000002a010000000000000000000000000000000000000000000000000000000000002b010000000000000000000000000000000000000000000000000000000000002c010000000000000000000000000000000000000000000000000000000000002d010000000000000000000000000000000000000000000000000000000000002e010000000000000000000000000000000000000000000000000000000000002f0100000000000000000000000000000000000000000000000000000000000030010000000000000000000000000000000000000000000000000000000000003101000000000000000000000000000000000000000000000000000000000000320100000000000000000000000000000000000000000000000000000000000033010000000000000000000000000000000000000000000000000000000000003401000000000000000000000000000000000000000000000000000000000000350100000000000000000000000000000000000000000000000000000000000036010000000000000000000000000000000000000000000000000000000000003701000000000000000000000000000000000000000000000000000000000000380100000000000000000000000000000000000000000000000000000000000039010000000000000000000000000000000000000000000000000000000000003a010000000000000000000000000000000000000000000000000000000000003b010000000000000000000000000000000000000000000000000000000000003c010000000000000000000000000000000000000000000000000000000000003d010000000000000000000000000000000000000000000000000000000000003e010000000000000000000000000000000000000000000000000000000000003f0100000000000000000000000000000000000000000000000000000000000040010000000000000000000000000000000000000000000000000000000000004101000000000000000000000000000000000000000000000000000000000000420100000000000000000000000000000000000000000000000000000000000043010000000000000000000000000000000000000000000000000000000000004401000000000000000000000000000000000000000000000000000000000000450100000000000000000000000000000000000000000000000000000000000046010000000000000000000000000000000000000000000000000000000000004701000000000000000000000000000000000000000000000000000000000000480100000000000000000000000000000000000000000000000000000000000049010000000000000000000000000000000000000000000000000000000000004a010000000000000000000000000000000000000000000000000000000000004b010000000000000000000000000000000000000000000000000000000000004c010000000000000000000000000000000000000000000000000000000000004d010000000000000000000000000000000000000000000000000000000000004e010000000000000000000000000000000000000000000000000000000000004f0100000000000000000000000000000000000000000000000000000000000050010000000000000000000000000000000000000000000000000000000000005101000000000000000000000000000000000000000000000000000000000000520100000000000000000000000000000000000000000000000000000000000053010000000000000000000000000000000000000000000000000000000000005401000000000000000000000000000000000000000000000000000000000000550100000000000000000000000000000000000000000000000000000000000056010000000000000000000000000000000000000000000000000000000000005701000000000000000000000000000000000000000000000000000000000000580100000000000000000000000000000000000000000000000000000000000059010000000000000000000000000000000000000000000000000000000000005a010000000000000000000000000000000000000000000000000000000000005b010000000000000000000000000000000000000000000000000000000000005c010000000000000000000000000000000000000000000000000000000000005d010000000000000000000000000000000000000000000000000000000000005e010000000000000000000000000000000000000000000000000000000000005f0100000000000000000000000000000000000000000000000000000000000060010000000000000000000000000000000000000000000000000000000000006101000000000000000000000000000000000000000000000000000000000000620100000000000000000000000000000000000000000000000000000000000063010000000000000000000000000000000000000000000000000000000000006401000000000000000000000000000000000000000000000000000000000000650100000000000000000000000000000000000000000000000000000000000066010000000000000000000000000000000000000000000000000000000000006701000000000000000000000000000000000000000000000000000000000000680100000000000000000000000000000000000000000000000000000000000069010000000000000000000000000000000000000000000000000000000000006a010000000000000000000000000000000000000000000000000000000000006b010000000000000000000000000000000000000000000000000000000000006c010000000000000000000000000000000000000000000000000000000000006d010000000000000000000000000000000000000000000000000000000000006e010000000000000000000000000000000000000000000000000000000000006f0100000000000000000000000000000000000000000000000000000000000070010000000000000000000000000000000000000000000000000000000000007101000000000000000000000000000000000000000000000000000000000000720100000000000000000000000000000000000000000000000000000000000073010000000000000000000000000000000000000000000000000000000000007401000000000000000000000000000000000000000000000000000000000000750100000000000000000000000000000000000000000000000000000000000076010000000000000000000000000000000000000000000000000000000000007701000000000000000000000000000000000000000000000000000000000000780100000000000000000000000000000000000000000000000000000000000079010000000000000000000000000000000000000000000000000000000000007a010000000000000000000000000000000000000000000000000000000000007b010000000000000000000000000000000000000000000000000000000000007c010000000000000000000000000000000000000000000000000000000000007d010000000000000000000000000000000000000000000000000000000000007e010000000000000000000000000000000000000000000000000000000000007f0100000000000000000000000000000000000000000000000000000000000080010000000000000000000000000000000000000000000000000000000000008101000000000000000000000000000000000000000000000000000000000000820100000000000000000000000000000000000000000000000000000000000083010000000000000000000000000000000000000000000000000000000000008401000000000000000000000000000000000000000000000000000000000000850100000000000000000000000000000000000000000000000000000000000086010000000000000000000000000000000000000000000000000000000000008701000000000000000000000000000000000000000000000000000000000000880100000000000000000000000000000000000000000000000000000000000089010000000000000000000000000000000000000000000000000000000000008a010000000000000000000000000000000000000000000000000000000000008b010000000000000000000000000000000000000000000000000000000000008c010000000000000000000000000000000000000000000000000000000000008d010000000000000000000000000000000000000000000000000000000000008e010000000000000000000000000000000000000000000000000000000000008f0100000000000000000000000000000000000000000000000000000000000090010000000000000000000000000000000000000000000000000000000000009101000000000000000000000000000000000000000000000000000000000000920100000000000000000000000000000000000000000000000000000000000093010000000000000000000000000000000000000000000000000000000000009401000000000000000000000000000000000000000000000000000000000000950100000000000000000000000000000000000000000000000000000000000096010000000000000000000000000000000000000000000000000000000000009701000000000000000000000000000000000000000000000000000000000000980100000000000000000000000000000000000000000000000000000000000099010000000000000000000000000000000000000000000000000000000000009a010000000000000000000000000000000000000000000000000000000000009b010000000000000000000000000000000000000000000000000000000000009c010000000000000000000000000000000000000000000000000000000000009d010000000000000000000000000000000000000000000000000000000000009e010000000000000000000000000000000000000000000000000000000000009f01000000000000000000000000000000000000000000000000000000000000a001000000000000000000000000000000000000000000000000000000000000a101000000000000000000000000000000000000000000000000000000000000a201000000000000000000000000000000000000000000000000000000000000a301000000000000000000000000000000000000000000000000000000000000a401000000000000000000000000000000000000000000000000000000000000a501000000000000000000000000000000000000000000000000000000000000a601000000000000000000000000000000000000000000000000000000000000a701000000000000000000000000000000000000000000000000000000000000a801000000000000000000000000000000000000000000000000000000000000a901000000000000000000000000000000000000000000000000000000000000aa01000000000000000000000000000000000000000000000000000000000000ab01000000000000000000000000000000000000000000000000000000000000ac01000000000000000000000000000000000000000000000000000000000000ad01000000000000000000000000000000000000000000000000000000000000ae01000000000000000000000000000000000000000000000000000000000000af01000000000000000000000000000000000000000000000000000000000000b001000000000000000000000000000000000000000000000000000000000000b101000000000000000000000000000000000000000000000000000000000000b201000000000000000000000000000000000000000000000000000000000000b301000000000000000000000000000000000000000000000000000000000000b401000000000000000000000000000000000000000000000000000000000000b501000000000000000000000000000000000000000000000000000000000000b601000000000000000000000000000000000000000000000000000000000000b701000000000000000000000000000000000000000000000000000000000000b801000000000000000000000000000000000000000000000000000000000000b901000000000000000000000000000000000000000000000000000000000000ba01000000000000000000000000000000000000000000000000000000000000bb01000000000000000000000000000000000000000000000000000000000000bc01000000000000000000000000000000000000000000000000000000000000bd01000000000000000000000000000000000000000000000000000000000000be01000000000000000000000000000000000000000000000000000000000000bf01000000000000000000000000000000000000000000000000000000000000c001000000000000000000000000000000000000000000000000000000000000c101000000000000000000000000000000000000000000000000000000000000c201000000000000000000000000000000000000000000000000000000000000c301000000000000000000000000000000000000000000000000000000000000c401000000000000000000000000000000000000000000000000000000000000c501000000000000000000000000000000000000000000000000000000000000c601000000000000000000000000000000000000000000000000000000000000c701000000000000000000000000000000000000000000000000000000000000c801000000000000000000000000000000000000000000000000000000000000c901000000000000000000000000000000000000000000000000000000000000ca01000000000000000000000000000000000000000000000000000000000000cb01000000000000000000000000000000000000000000000000000000000000cc01000000000000000000000000000000000000000000000000000000000000cd01000000000000000000000000000000000000000000000000000000000000ce01000000000000000000000000000000000000000000000000000000000000cf01000000000000000000000000000000000000000000000000000000000000d001000000000000000000000000000000000000000000000000000000000000d101000000000000000000000000000000000000000000000000000000000000d201000000000000000000000000000000000000000000000000000000000000d301000000000000000000000000000000000000000000000000000000000000d401000000000000000000000000000000000000000000000000000000000000d501000000000000000000000000000000000000000000000000000000000000d601000000000000000000000000000000000000000000000000000000000000d701000000000000000000000000000000000000000000000000000000000000d801000000000000000000000000000000000000000000000000000000000000d901000000000000000000000000000000000000000000000000000000000000da01000000000000000000000000000000000000000000000000000000000000db01000000000000000000000000000000000000000000000000000000000000dc01000000000000000000000000000000000000000000000000000000000000dd01000000000000000000000000000000000000000000000000000000000000de01000000000000000000000000000000000000000000000000000000000000df01000000000000000000000000000000000000000000000000000000000000e001000000000000000000000000000000000000000000000000000000000000e101000000000000000000000000000000000000000000000000000000000000e201000000000000000000000000000000000000000000000000000000000000e301000000000000000000000000000000000000000000000000000000000000e401000000000000000000000000000000000000000000000000000000000000e501000000000000000000000000000000000000000000000000000000000000e601000000000000000000000000000000000000000000000000000000000000e701000000000000000000000000000000000000000000000000000000000000e801000000000000000000000000000000000000000000000000000000000000e901000000000000000000000000000000000000000000000000000000000000ea01000000000000000000000000000000000000000000000000000000000000eb01000000000000000000000000000000000000000000000000000000000000ec01000000000000000000000000000000000000000000000000000000000000ed01000000000000000000000000000000000000000000000000000000000000ee01000000000000000000000000000000000000000000000000000000000000ef01000000000000000000000000000000000000000000000000000000000000f001000000000000000000000000000000000000000000000000000000000000f101000000000000000000000000000000000000000000000000000000000000f201000000000000000000000000000000000000000000000000000000000000f301000000000000000000000000000000000000000000000000000000000000f401000000000000000000000000000000000000000000000000000000000000f501000000000000000000000000000000000000000000000000000000000000f601000000000000000000000000000000000000000000000000000000000000f701000000000000000000000000000000000000000000000000000000000000f801000000000000000000000000000000000000000000000000000000000000f901000000000000000000000000000000000000000000000000000000000000fa01000000000000000000000000000000000000000000000000000000000000fb01000000000000000000000000000000000000000000000000000000000000fc01000000000000000000000000000000000000000000000000000000000000fd01000000000000000000000000000000000000000000000000000000000000fe01000000000000000000000000000000000000000000000000000000000000ff0100000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000102000000000000000000000000000000000000000000000000000000000000020200000000000000000000000000000000000000000000000000000000000003020000000000000000000000000000000000000000000000000000000000000402000000000000000000000000000000000000000000000000000000000000050200000000000000000000000000000000000000000000000000000000000006020000000000000000000000000000000000000000000000000000000000000702000000000000000000000000000000000000000000000000000000000000080200000000000000000000000000000000000000000000000000000000000009020000000000000000000000000000000000000000000000000000000000000a020000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000000000c020000000000000000000000000000000000000000000000000000000000000d020000000000000000000000000000000000000000000000000000000000000e020000000000000000000000000000000000000000000000000000000000000f0200000000000000000000000000000000000000000000000000000000000010020000000000000000000000000000000000000000000000000000000000001102000000000000000000000000000000000000000000000000000000000000120200000000000000000000000000000000000000000000000000000000000013020000000000000000000000000000000000000000000000000000000000001402000000000000000000000000000000000000000000000000000000000000150200000000000000000000000000000000000000000000000000000000000016020000000000000000000000000000000000000000000000000000000000001702000000000000000000000000000000000000000000000000000000000000180200000000000000000000000000000000000000000000000000000000000019020000000000000000000000000000000000000000000000000000000000001a020000000000000000000000000000000000000000000000000000000000001b020000000000000000000000000000000000000000000000000000000000001c020000000000000000000000000000000000000000000000000000000000001d020000000000000000000000000000000000000000000000000000000000001e020000000000000000000000000000000000000000000000000000000000001f0200000000000000000000000000000000000000000000000000000000000020020000000000000000000000000000000000000000000000000000000000002102000000000000000000000000000000000000000000000000000000000000220200000000000000000000000000000000000000000000000000000000000023020000000000000000000000000000000000000000000000000000000000002402000000000000000000000000000000000000000000000000000000000000250200000000000000000000000000000000000000000000000000000000000026020000000000000000000000000000000000000000000000000000000000002702000000000000000000000000000000000000000000000000000000000000280200000000000000000000000000000000000000000000000000000000000029020000000000000000000000000000000000000000000000000000000000002a020000000000000000000000000000000000000000000000000000000000002b020000000000000000000000000000000000000000000000000000000000002c020000000000000000000000000000000000000000000000000000000000002d020000000000000000000000000000000000000000000000000000000000002e020000000000000000000000000000000000000000000000000000000000002f0200000000000000000000000000000000000000000000000000000000000030020000000000000000000000000000000000000000000000000000000000003102000000000000000000000000000000000000000000000000000000000000320200000000000000000000000000000000000000000000000000000000000033020000000000000000000000000000000000000000000000000000000000003402000000000000000000000000000000000000000000000000000000000000350200000000000000000000000000000000000000000000000000000000000036020000000000000000000000000000000000000000000000000000000000003702000000000000000000000000000000000000000000000000000000000000380200000000000000000000000000000000000000000000000000000000000039020000000000000000000000000000000000000000000000000000000000003a020000000000000000000000000000000000000000000000000000000000003b020000000000000000000000000000000000000000000000000000000000003c020000000000000000000000000000000000000000000000000000000000003d020000000000000000000000000000000000000000000000000000000000003e020000000000000000000000000000000000000000000000000000000000003f0200000000000000000000000000000000000000000000000000000000000040020000000000000000000000000000000000000000000000000000000000004102000000000000000000000000000000000000000000000000000000000000420200000000000000000000000000000000000000000000000000000000000043020000000000000000000000000000000000000000000000000000000000004402000000000000000000000000000000000000000000000000000000000000450200000000000000000000000000000000000000000000000000000000000046020000000000000000000000000000000000000000000000000000000000004702000000000000000000000000000000000000000000000000000000000000480200000000000000000000000000000000000000000000000000000000000049020000000000000000000000000000000000000000000000000000000000004a020000000000000000000000000000000000000000000000000000000000004b020000000000000000000000000000000000000000000000000000000000004c020000000000000000000000000000000000000000000000000000000000004d020000000000000000000000000000000000000000000000000000000000004e020000000000000000000000000000000000000000000000000000000000004f0200000000000000000000000000000000000000000000000000000000000050020000000000000000000000000000000000000000000000000000000000005102000000000000000000000000000000000000000000000000000000000000520200000000000000000000000000000000000000000000000000000000000053020000000000000000000000000000000000000000000000000000000000005402000000000000000000000000000000000000000000000000000000000000550200000000000000000000000000000000000000000000000000000000000056020000000000000000000000000000000000000000000000000000000000005702000000000000000000000000000000000000000000000000000000000000580200000000000000000000000000000000000000000000000000000000000059020000000000000000000000000000000000000000000000000000000000005a020000000000000000000000000000000000000000000000000000000000005b020000000000000000000000000000000000000000000000000000000000005c020000000000000000000000000000000000000000000000000000000000005d020000000000000000000000000000000000000000000000000000000000005e020000000000000000000000000000000000000000000000000000000000005f0200000000000000000000000000000000000000000000000000000000000060020000000000000000000000000000000000000000000000000000000000006102000000000000000000000000000000000000000000000000000000000000620200000000000000000000000000000000000000000000000000000000000063020000000000000000000000000000000000000000000000000000000000006402000000000000000000000000000000000000000000000000000000000000650200000000000000000000000000000000000000000000000000000000000066020000000000000000000000000000000000000000000000000000000000006702000000000000000000000000000000000000000000000000000000000000680200000000000000000000000000000000000000000000000000000000000069020000000000000000000000000000000000000000000000000000000000006a020000000000000000000000000000000000000000000000000000000000006b020000000000000000000000000000000000000000000000000000000000006c020000000000000000000000000000000000000000000000000000000000006d020000000000000000000000000000000000000000000000000000000000006e020000000000000000000000000000000000000000000000000000000000006f0200000000000000000000000000000000000000000000000000000000000070020000000000000000000000000000000000000000000000000000000000007102000000000000000000000000000000000000000000000000000000000000720200000000000000000000000000000000000000000000000000000000000073020000000000000000000000000000000000000000000000000000000000007402000000000000000000000000000000000000000000000000000000000000750200000000000000000000000000000000000000000000000000000000000076020000000000000000000000000000000000000000000000000000000000007702000000000000000000000000000000000000000000000000000000000000780200000000000000000000000000000000000000000000000000000000000079020000000000000000000000000000000000000000000000000000000000007a020000000000000000000000000000000000000000000000000000000000007b020000000000000000000000000000000000000000000000000000000000007c020000000000000000000000000000000000000000000000000000000000007d020000000000000000000000000000000000000000000000000000000000007e020000000000000000000000000000000000000000000000000000000000007f0200000000000000000000000000000000000000000000000000000000000080020000000000000000000000000000000000000000000000000000000000008102000000000000000000000000000000000000000000000000000000000000820200000000000000000000000000000000000000000000000000000000000083020000000000000000000000000000000000000000000000000000000000008402000000000000000000000000000000000000000000000000000000000000850200000000000000000000000000000000000000000000000000000000000086020000000000000000000000000000000000000000000000000000000000008702000000000000000000000000000000000000000000000000000000000000880200000000000000000000000000000000000000000000000000000000000089020000000000000000000000000000000000000000000000000000000000008a020000000000000000000000000000000000000000000000000000000000008b020000000000000000000000000000000000000000000000000000000000008c020000000000000000000000000000000000000000000000000000000000008d020000000000000000000000000000000000000000000000000000000000008e020000000000000000000000000000000000000000000000000000000000008f0200000000000000000000000000000000000000000000000000000000000090020000000000000000000000000000000000000000000000000000000000009102000000000000000000000000000000000000000000000000000000000000920200000000000000000000000000000000000000000000000000000000000093020000000000000000000000000000000000000000000000000000000000009402000000000000000000000000000000000000000000000000000000000000950200000000000000000000000000000000000000000000000000000000000096020000000000000000000000000000000000000000000000000000000000009702000000000000000000000000000000000000000000000000000000000000980200000000000000000000000000000000000000000000000000000000000099020000000000000000000000000000000000000000000000000000000000009a020000000000000000000000000000000000000000000000000000000000009b020000000000000000000000000000000000000000000000000000000000009c020000000000000000000000000000000000000000000000000000000000009d020000000000000000000000000000000000000000000000000000000000009e020000000000000000000000000000000000000000000000000000000000009f02000000000000000000000000000000000000000000000000000000000000a002000000000000000000000000000000000000000000000000000000000000a102000000000000000000000000000000000000000000000000000000000000a202000000000000000000000000000000000000000000000000000000000000a302000000000000000000000000000000000000000000000000000000000000a402000000000000000000000000000000000000000000000000000000000000a502000000000000000000000000000000000000000000000000000000000000a602000000000000000000000000000000000000000000000000000000000000a702000000000000000000000000000000000000000000000000000000000000a802000000000000000000000000000000000000000000000000000000000000a902000000000000000000000000000000000000000000000000000000000000aa02000000000000000000000000000000000000000000000000000000000000ab02000000000000000000000000000000000000000000000000000000000000ac02000000000000000000000000000000000000000000000000000000000000ad02000000000000000000000000000000000000000000000000000000000000ae02000000000000000000000000000000000000000000000000000000000000af02000000000000000000000000000000000000000000000000000000000000b002000000000000000000000000000000000000000000000000000000000000b102000000000000000000000000000000000000000000000000000000000000b202000000000000000000000000000000000000000000000000000000000000b302000000000000000000000000000000000000000000000000000000000000b402000000000000000000000000000000000000000000000000000000000000b502000000000000000000000000000000000000000000000000000000000000b602000000000000000000000000000000000000000000000000000000000000b702000000000000000000000000000000000000000000000000000000000000b802000000000000000000000000000000000000000000000000000000000000b902000000000000000000000000000000000000000000000000000000000000ba02000000000000000000000000000000000000000000000000000000000000bb02000000000000000000000000000000000000000000000000000000000000bc02000000000000000000000000000000000000000000000000000000000000bd02000000000000000000000000000000000000000000000000000000000000be02000000000000000000000000000000000000000000000000000000000000bf02000000000000000000000000000000000000000000000000000000000000c002000000000000000000000000000000000000000000000000000000000000c102000000000000000000000000000000000000000000000000000000000000c202000000000000000000000000000000000000000000000000000000000000c302000000000000000000000000000000000000000000000000000000000000c402000000000000000000000000000000000000000000000000000000000000c502000000000000000000000000000000000000000000000000000000000000c602000000000000000000000000000000000000000000000000000000000000c702000000000000000000000000000000000000000000000000000000000000c802000000000000000000000000000000000000000000000000000000000000c902000000000000000000000000000000000000000000000000000000000000ca02000000000000000000000000000000000000000000000000000000000000cb02000000000000000000000000000000000000000000000000000000000000cc02000000000000000000000000000000000000000000000000000000000000cd02000000000000000000000000000000000000000000000000000000000000ce02000000000000000000000000000000000000000000000000000000000000cf02000000000000000000000000000000000000000000000000000000000000d002000000000000000000000000000000000000000000000000000000000000d102000000000000000000000000000000000000000000000000000000000000d202000000000000000000000000000000000000000000000000000000000000d302000000000000000000000000000000000000000000000000000000000000d402000000000000000000000000000000000000000000000000000000000000d502000000000000000000000000000000000000000000000000000000000000d602000000000000000000000000000000000000000000000000000000000000d702000000000000000000000000000000000000000000000000000000000000d802000000000000000000000000000000000000000000000000000000000000d902000000000000000000000000000000000000000000000000000000000000da02000000000000000000000000000000000000000000000000000000000000db02000000000000000000000000000000000000000000000000000000000000dc02000000000000000000000000000000000000000000000000000000000000dd02000000000000000000000000000000000000000000000000000000000000de02000000000000000000000000000000000000000000000000000000000000df02000000000000000000000000000000000000000000000000000000000000e002000000000000000000000000000000000000000000000000000000000000e102000000000000000000000000000000000000000000000000000000000000e202000000000000000000000000000000000000000000000000000000000000e302000000000000000000000000000000000000000000000000000000000000e402000000000000000000000000000000000000000000000000000000000000e502000000000000000000000000000000000000000000000000000000000000e602000000000000000000000000000000000000000000000000000000000000e702000000000000000000000000000000000000000000000000000000000000e802000000000000000000000000000000000000000000000000000000000000e902000000000000000000000000000000000000000000000000000000000000ea02000000000000000000000000000000000000000000000000000000000000eb02000000000000000000000000000000000000000000000000000000000000ec02000000000000000000000000000000000000000000000000000000000000ed02000000000000000000000000000000000000000000000000000000000000ee02000000000000000000000000000000000000000000000000000000000000ef02000000000000000000000000000000000000000000000000000000000000f002000000000000000000000000000000000000000000000000000000000000f102000000000000000000000000000000000000000000000000000000000000f202000000000000000000000000000000000000000000000000000000000000f302000000000000000000000000000000000000000000000000000000000000f402000000000000000000000000000000000000000000000000000000000000f502000000000000000000000000000000000000000000000000000000000000f602000000000000000000000000000000000000000000000000000000000000f702000000000000000000000000000000000000000000000000000000000000f802000000000000000000000000000000000000000000000000000000000000f902000000000000000000000000000000000000000000000000000000000000fa02000000000000000000000000000000000000000000000000000000000000fb02000000000000000000000000000000000000000000000000000000000000fc02000000000000000000000000000000000000000000000000000000000000fd02000000000000000000000000000000000000000000000000000000000000fe02000000000000000000000000000000000000000000000000000000000000ff0200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000103000000000000000000000000000000000000000000000000000000000000020300000000000000000000000000000000000000000000000000000000000003030000000000000000000000000000000000000000000000000000000000000403000000000000000000000000000000000000000000000000000000000000050300000000000000000000000000000000000000000000000000000000000006030000000000000000000000000000000000000000000000000000000000000703000000000000000000000000000000000000000000000000000000000000080300000000000000000000000000000000000000000000000000000000000009030000000000000000000000000000000000000000000000000000000000000a030000000000000000000000000000000000000000000000000000000000000b030000000000000000000000000000000000000000000000000000000000000c030000000000000000000000000000000000000000000000000000000000000d030000000000000000000000000000000000000000000000000000000000000e030000000000000000000000000000000000000000000000000000000000000f0300000000000000000000000000000000000000000000000000000000000010030000000000000000000000000000000000000000000000000000000000001103000000000000000000000000000000000000000000000000000000000000120300000000000000000000000000000000000000000000000000000000000013030000000000000000000000000000000000000000000000000000000000001403000000000000000000000000000000000000000000000000000000000000150300000000000000000000000000000000000000000000000000000000000016030000000000000000000000000000000000000000000000000000000000001703000000000000000000000000000000000000000000000000000000000000180300000000000000000000000000000000000000000000000000000000000019030000000000000000000000000000000000000000000000000000000000001a030000000000000000000000000000000000000000000000000000000000001b030000000000000000000000000000000000000000000000000000000000001c030000000000000000000000000000000000000000000000000000000000001d030000000000000000000000000000000000000000000000000000000000001e030000000000000000000000000000000000000000000000000000000000001f0300000000000000000000000000000000000000000000000000000000000020030000000000000000000000000000000000000000000000000000000000002103000000000000000000000000000000000000000000000000000000000000220300000000000000000000000000000000000000000000000000000000000023030000000000000000000000000000000000000000000000000000000000002403000000000000000000000000000000000000000000000000000000000000250300000000000000000000000000000000000000000000000000000000000026030000000000000000000000000000000000000000000000000000000000002703000000000000000000000000000000000000000000000000000000000000280300000000000000000000000000000000000000000000000000000000000029030000000000000000000000000000000000000000000000000000000000002a030000000000000000000000000000000000000000000000000000000000002b030000000000000000000000000000000000000000000000000000000000002c030000000000000000000000000000000000000000000000000000000000002d030000000000000000000000000000000000000000000000000000000000002e030000000000000000000000000000000000000000000000000000000000002f0300000000000000000000000000000000000000000000000000000000000030030000000000000000000000000000000000000000000000000000000000003103000000000000000000000000000000000000000000000000000000000000320300000000000000000000000000000000000000000000000000000000000033030000000000000000000000000000000000000000000000000000000000003403000000000000000000000000000000000000000000000000000000000000350300000000000000000000000000000000000000000000000000000000000036030000000000000000000000000000000000000000000000000000000000003703000000000000000000000000000000000000000000000000000000000000380300000000000000000000000000000000000000000000000000000000000039030000000000000000000000000000000000000000000000000000000000003a030000000000000000000000000000000000000000000000000000000000003b030000000000000000000000000000000000000000000000000000000000003c030000000000000000000000000000000000000000000000000000000000003d030000000000000000000000000000000000000000000000000000000000003e030000000000000000000000000000000000000000000000000000000000003f0300000000000000000000000000000000000000000000000000000000000040030000000000000000000000000000000000000000000000000000000000004103000000000000000000000000000000000000000000000000000000000000420300000000000000000000000000000000000000000000000000000000000043030000000000000000000000000000000000000000000000000000000000004403000000000000000000000000000000000000000000000000000000000000450300000000000000000000000000000000000000000000000000000000000046030000000000000000000000000000000000000000000000000000000000004703000000000000000000000000000000000000000000000000000000000000480300000000000000000000000000000000000000000000000000000000000049030000000000000000000000000000000000000000000000000000000000004a030000000000000000000000000000000000000000000000000000000000004b030000000000000000000000000000000000000000000000000000000000004c030000000000000000000000000000000000000000000000000000000000004d030000000000000000000000000000000000000000000000000000000000004e030000000000000000000000000000000000000000000000000000000000004f0300000000000000000000000000000000000000000000000000000000000050030000000000000000000000000000000000000000000000000000000000005103000000000000000000000000000000000000000000000000000000000000520300000000000000000000000000000000000000000000000000000000000053030000000000000000000000000000000000000000000000000000000000005403000000000000000000000000000000000000000000000000000000000000550300000000000000000000000000000000000000000000000000000000000056030000000000000000000000000000000000000000000000000000000000005703000000000000000000000000000000000000000000000000000000000000580300000000000000000000000000000000000000000000000000000000000059030000000000000000000000000000000000000000000000000000000000005a030000000000000000000000000000000000000000000000000000000000005b030000000000000000000000000000000000000000000000000000000000005c030000000000000000000000000000000000000000000000000000000000005d030000000000000000000000000000000000000000000000000000000000005e030000000000000000000000000000000000000000000000000000000000005f0300000000000000000000000000000000000000000000000000000000000060030000000000000000000000000000000000000000000000000000000000006103000000000000000000000000000000000000000000000000000000000000620300000000000000000000000000000000000000000000000000000000000063030000000000000000000000000000000000000000000000000000000000006403000000000000000000000000000000000000000000000000000000000000650300000000000000000000000000000000000000000000000000000000000066030000000000000000000000000000000000000000000000000000000000006703000000000000000000000000000000000000000000000000000000000000680300000000000000000000000000000000000000000000000000000000000069030000000000000000000000000000000000000000000000000000000000006a030000000000000000000000000000000000000000000000000000000000006b030000000000000000000000000000000000000000000000000000000000006c030000000000000000000000000000000000000000000000000000000000006d030000000000000000000000000000000000000000000000000000000000006e030000000000000000000000000000000000000000000000000000000000006f0300000000000000000000000000000000000000000000000000000000000070030000000000000000000000000000000000000000000000000000000000007103000000000000000000000000000000000000000000000000000000000000720300000000000000000000000000000000000000000000000000000000000073030000000000000000000000000000000000000000000000000000000000007403000000000000000000000000000000000000000000000000000000000000750300000000000000000000000000000000000000000000000000000000000076030000000000000000000000000000000000000000000000000000000000007703000000000000000000000000000000000000000000000000000000000000780300000000000000000000000000000000000000000000000000000000000079030000000000000000000000000000000000000000000000000000000000007a030000000000000000000000000000000000000000000000000000000000007b030000000000000000000000000000000000000000000000000000000000007c030000000000000000000000000000000000000000000000000000000000007d030000000000000000000000000000000000000000000000000000000000007e030000000000000000000000000000000000000000000000000000000000007f0300000000000000000000000000000000000000000000000000000000000080030000000000000000000000000000000000000000000000000000000000008103000000000000000000000000000000000000000000000000000000000000820300000000000000000000000000000000000000000000000000000000000083030000000000000000000000000000000000000000000000000000000000008403000000000000000000000000000000000000000000000000000000000000850300000000000000000000000000000000000000000000000000000000000086030000000000000000000000000000000000000000000000000000000000008703000000000000000000000000000000000000000000000000000000000000880300000000000000000000000000000000000000000000000000000000000089030000000000000000000000000000000000000000000000000000000000008a030000000000000000000000000000000000000000000000000000000000008b030000000000000000000000000000000000000000000000000000000000008c030000000000000000000000000000000000000000000000000000000000008d030000000000000000000000000000000000000000000000000000000000008e030000000000000000000000000000000000000000000000000000000000008f0300000000000000000000000000000000000000000000000000000000000090030000000000000000000000000000000000000000000000000000000000009103000000000000000000000000000000000000000000000000000000000000920300000000000000000000000000000000000000000000000000000000000093030000000000000000000000000000000000000000000000000000000000009403000000000000000000000000000000000000000000000000000000000000950300000000000000000000000000000000000000000000000000000000000096030000000000000000000000000000000000000000000000000000000000009703000000000000000000000000000000000000000000000000000000000000980300000000000000000000000000000000000000000000000000000000000099030000000000000000000000000000000000000000000000000000000000009a030000000000000000000000000000000000000000000000000000000000009b030000000000000000000000000000000000000000000000000000000000009c030000000000000000000000000000000000000000000000000000000000009d030000000000000000000000000000000000000000000000000000000000009e030000000000000000000000000000000000000000000000000000000000009f03000000000000000000000000000000000000000000000000000000000000a003000000000000000000000000000000000000000000000000000000000000a103000000000000000000000000000000000000000000000000000000000000a203000000000000000000000000000000000000000000000000000000000000a303000000000000000000000000000000000000000000000000000000000000a403000000000000000000000000000000000000000000000000000000000000a503000000000000000000000000000000000000000000000000000000000000a603000000000000000000000000000000000000000000000000000000000000a703000000000000000000000000000000000000000000000000000000000000a803000000000000000000000000000000000000000000000000000000000000a903000000000000000000000000000000000000000000000000000000000000aa03000000000000000000000000000000000000000000000000000000000000ab03000000000000000000000000000000000000000000000000000000000000ac03000000000000000000000000000000000000000000000000000000000000ad03000000000000000000000000000000000000000000000000000000000000ae03000000000000000000000000000000000000000000000000000000000000af03000000000000000000000000000000000000000000000000000000000000b003000000000000000000000000000000000000000000000000000000000000b103000000000000000000000000000000000000000000000000000000000000b203000000000000000000000000000000000000000000000000000000000000b303000000000000000000000000000000000000000000000000000000000000b403000000000000000000000000000000000000000000000000000000000000b503000000000000000000000000000000000000000000000000000000000000b603000000000000000000000000000000000000000000000000000000000000b703000000000000000000000000000000000000000000000000000000000000b803000000000000000000000000000000000000000000000000000000000000b903000000000000000000000000000000000000000000000000000000000000ba03000000000000000000000000000000000000000000000000000000000000bb03000000000000000000000000000000000000000000000000000000000000bc03000000000000000000000000000000000000000000000000000000000000bd03000000000000000000000000000000000000000000000000000000000000be03000000000000000000000000000000000000000000000000000000000000bf03000000000000000000000000000000000000000000000000000000000000c003000000000000000000000000000000000000000000000000000000000000c103000000000000000000000000000000000000000000000000000000000000c203000000000000000000000000000000000000000000000000000000000000c303000000000000000000000000000000000000000000000000000000000000c403000000000000000000000000000000000000000000000000000000000000c503000000000000000000000000000000000000000000000000000000000000c603000000000000000000000000000000000000000000000000000000000000c703000000000000000000000000000000000000000000000000000000000000c803000000000000000000000000000000000000000000000000000000000000c903000000000000000000000000000000000000000000000000000000000000ca03000000000000000000000000000000000000000000000000000000000000cb03000000000000000000000000000000000000000000000000000000000000cc03000000000000000000000000000000000000000000000000000000000000cd03000000000000000000000000000000000000000000000000000000000000ce03000000000000000000000000000000000000000000000000000000000000cf03000000000000000000000000000000000000000000000000000000000000d003000000000000000000000000000000000000000000000000000000000000d103000000000000000000000000000000000000000000000000000000000000d203000000000000000000000000000000000000000000000000000000000000d303000000000000000000000000000000000000000000000000000000000000d403000000000000000000000000000000000000000000000000000000000000d503000000000000000000000000000000000000000000000000000000000000d603000000000000000000000000000000000000000000000000000000000000d703000000000000000000000000000000000000000000000000000000000000d803000000000000000000000000000000000000000000000000000000000000d903000000000000000000000000000000000000000000000000000000000000da03000000000000000000000000000000000000000000000000000000000000db03000000000000000000000000000000000000000000000000000000000000dc03000000000000000000000000000000000000000000000000000000000000dd03000000000000000000000000000000000000000000000000000000000000de03000000000000000000000000000000000000000000000000000000000000df03000000000000000000000000000000000000000000000000000000000000e003000000000000000000000000000000000000000000000000000000000000e103000000000000000000000000000000000000000000000000000000000000e203000000000000000000000000000000000000000000000000000000000000e303000000000000000000000000000000000000000000000000000000000000e403000000000000000000000000000000000000000000000000000000000000e503000000000000000000000000000000000000000000000000000000000000e603000000000000000000000000000000000000000000000000000000000000e703000000000000000000000000000000000000000000000000000000000000e803000000000000000000000000000000000000000000000000000000000000e903000000000000000000000000000000000000000000000000000000000000ea03000000000000000000000000000000000000000000000000000000000000eb03000000000000000000000000000000000000000000000000000000000000ec03000000000000000000000000000000000000000000000000000000000000ed03000000000000000000000000000000000000000000000000000000000000ee03000000000000000000000000000000000000000000000000000000000000ef03000000000000000000000000000000000000000000000000000000000000f003000000000000000000000000000000000000000000000000000000000000f103000000000000000000000000000000000000000000000000000000000000f203000000000000000000000000000000000000000000000000000000000000f303000000000000000000000000000000000000000000000000000000000000f403000000000000000000000000000000000000000000000000000000000000f503000000000000000000000000000000000000000000000000000000000000f603000000000000000000000000000000000000000000000000000000000000f703000000000000000000000000000000000000000000000000000000000000f803000000000000000000000000000000000000000000000000000000000000f903000000000000000000000000000000000000000000000000000000000000fa03000000000000000000000000000000000000000000000000000000000000fb03000000000000000000000000000000000000000000000000000000000000fc03000000000000000000000000000000000000000000000000000000000000fd03000000000000000000000000000000000000000000000000000000000000fe03000000000000000000000000000000000000000000000000000000000000ff0300000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000104000000000000000000000000000000000000000000000000000000000000020400000000000000000000000000000000000000000000000000000000000003040000000000000000000000000000000000000000000000000000000000000404000000000000000000000000000000000000000000000000000000000000050400000000000000000000000000000000000000000000000000000000000006040000000000000000000000000000000000000000000000000000000000000704000000000000000000000000000000000000000000000000000000000000080400000000000000000000000000000000000000000000000000000000000009040000000000000000000000000000000000000000000000000000000000000a040000000000000000000000000000000000000000000000000000000000000b040000000000000000000000000000000000000000000000000000000000000c040000000000000000000000000000000000000000000000000000000000000d040000000000000000000000000000000000000000000000000000000000000e040000000000000000000000000000000000000000000000000000000000000f0400000000000000000000000000000000000000000000000000000000000010040000000000000000000000000000000000000000000000000000000000001104000000000000000000000000000000000000000000000000000000000000120400000000000000000000000000000000000000000000000000000000000013040000000000000000000000000000000000000000000000000000000000001404000000000000000000000000000000000000000000000000000000000000150400000000000000000000000000000000000000000000000000000000000016040000000000000000000000000000000000000000000000000000000000001704000000000000000000000000000000000000000000000000000000000000180400000000000000000000000000000000000000000000000000000000000019040000000000000000000000000000000000000000000000000000000000001a040000000000000000000000000000000000000000000000000000000000001b040000000000000000000000000000000000000000000000000000000000001c040000000000000000000000000000000000000000000000000000000000001d040000000000000000000000000000000000000000000000000000000000001e040000000000000000000000000000000000000000000000000000000000001f0400000000000000000000000000000000000000000000000000000000000020040000000000000000000000000000000000000000000000000000000000002104000000000000000000000000000000000000000000000000000000000000220400000000000000000000000000000000000000000000000000000000000023040000000000000000000000000000000000000000000000000000000000002404000000000000000000000000000000000000000000000000000000000000250400000000000000000000000000000000000000000000000000000000000026040000000000000000000000000000000000000000000000000000000000002704000000000000000000000000000000000000000000000000000000000000280400000000000000000000000000000000000000000000000000000000000029040000000000000000000000000000000000000000000000000000000000002a040000000000000000000000000000000000000000000000000000000000002b040000000000000000000000000000000000000000000000000000000000002c040000000000000000000000000000000000000000000000000000000000002d040000000000000000000000000000000000000000000000000000000000002e040000000000000000000000000000000000000000000000000000000000002f0400000000000000000000000000000000000000000000000000000000000030040000000000000000000000000000000000000000000000000000000000003104000000000000000000000000000000000000000000000000000000000000320400000000000000000000000000000000000000000000000000000000000033040000000000000000000000000000000000000000000000000000000000003404000000000000000000000000000000000000000000000000000000000000350400000000000000000000000000000000000000000000000000000000000036040000000000000000000000000000000000000000000000000000000000003704000000000000000000000000000000000000000000000000000000000000380400000000000000000000000000000000000000000000000000000000000039040000000000000000000000000000000000000000000000000000000000003a040000000000000000000000000000000000000000000000000000000000003b040000000000000000000000000000000000000000000000000000000000003c040000000000000000000000000000000000000000000000000000000000003d040000000000000000000000000000000000000000000000000000000000003e040000000000000000000000000000000000000000000000000000000000003f0400000000000000000000000000000000000000000000000000000000000040040000000000000000000000000000000000000000000000000000000000004104000000000000000000000000000000000000000000000000000000000000420400000000000000000000000000000000000000000000000000000000000043040000000000000000000000000000000000000000000000000000000000004404000000000000000000000000000000000000000000000000000000000000450400000000000000000000000000000000000000000000000000000000000046040000000000000000000000000000000000000000000000000000000000004704000000000000000000000000000000000000000000000000000000000000480400000000000000000000000000000000000000000000000000000000000049040000000000000000000000000000000000000000000000000000000000004a040000000000000000000000000000000000000000000000000000000000004b040000000000000000000000000000000000000000000000000000000000004c040000000000000000000000000000000000000000000000000000000000004d040000000000000000000000000000000000000000000000000000000000004e040000000000000000000000000000000000000000000000000000000000004f0400000000000000000000000000000000000000000000000000000000000050040000000000000000000000000000000000000000000000000000000000005104000000000000000000000000000000000000000000000000000000000000520400000000000000000000000000000000000000000000000000000000000053040000000000000000000000000000000000000000000000000000000000005404000000000000000000000000000000000000000000000000000000000000550400000000000000000000000000000000000000000000000000000000000056040000000000000000000000000000000000000000000000000000000000005704000000000000000000000000000000000000000000000000000000000000580400000000000000000000000000000000000000000000000000000000000059040000000000000000000000000000000000000000000000000000000000005a040000000000000000000000000000000000000000000000000000000000005b040000000000000000000000000000000000000000000000000000000000005c040000000000000000000000000000000000000000000000000000000000005d040000000000000000000000000000000000000000000000000000000000005e040000000000000000000000000000000000000000000000000000000000005f0400000000000000000000000000000000000000000000000000000000000060040000000000000000000000000000000000000000000000000000000000006104000000000000000000000000000000000000000000000000000000000000620400000000000000000000000000000000000000000000000000000000000063040000000000000000000000000000000000000000000000000000000000006404000000000000000000000000000000000000000000000000000000000000650400000000000000000000000000000000000000000000000000000000000066040000000000000000000000000000000000000000000000000000000000006704000000000000000000000000000000000000000000000000000000000000680400000000000000000000000000000000000000000000000000000000000069040000000000000000000000000000000000000000000000000000000000006a040000000000000000000000000000000000000000000000000000000000006b040000000000000000000000000000000000000000000000000000000000006c040000000000000000000000000000000000000000000000000000000000006d040000000000000000000000000000000000000000000000000000000000006e040000000000000000000000000000000000000000000000000000000000006f0400000000000000000000000000000000000000000000000000000000000070040000000000000000000000000000000000000000000000000000000000007104000000000000000000000000000000000000000000000000000000000000720400000000000000000000000000000000000000000000000000000000000073040000000000000000000000000000000000000000000000000000000000007404000000000000000000000000000000000000000000000000000000000000750400000000000000000000000000000000000000000000000000000000000076040000000000000000000000000000000000000000000000000000000000007704000000000000000000000000000000000000000000000000000000000000780400000000000000000000000000000000000000000000000000000000000079040000000000000000000000000000000000000000000000000000000000007a040000000000000000000000000000000000000000000000000000000000007b040000000000000000000000000000000000000000000000000000000000007c040000000000000000000000000000000000000000000000000000000000007d040000000000000000000000000000000000000000000000000000000000007e040000000000000000000000000000000000000000000000000000000000007f0400000000000000000000000000000000000000000000000000000000000080040000000000000000000000000000000000000000000000000000000000008104000000000000000000000000000000000000000000000000000000000000820400000000000000000000000000000000000000000000000000000000000083040000000000000000000000000000000000000000000000000000000000008404000000000000000000000000000000000000000000000000000000000000850400000000000000000000000000000000000000000000000000000000000086040000000000000000000000000000000000000000000000000000000000008704000000000000000000000000000000000000000000000000000000000000880400000000000000000000000000000000000000000000000000000000000089040000000000000000000000000000000000000000000000000000000000008a040000000000000000000000000000000000000000000000000000000000008b040000000000000000000000000000000000000000000000000000000000008c040000000000000000000000000000000000000000000000000000000000008d040000000000000000000000000000000000000000000000000000000000008e040000000000000000000000000000000000000000000000000000000000008f0400000000000000000000000000000000000000000000000000000000000090040000000000000000000000000000000000000000000000000000000000009104000000000000000000000000000000000000000000000000000000000000920400000000000000000000000000000000000000000000000000000000000093040000000000000000000000000000000000000000000000000000000000009404000000000000000000000000000000000000000000000000000000000000950400000000000000000000000000000000000000000000000000000000000096040000000000000000000000000000000000000000000000000000000000009704000000000000000000000000000000000000000000000000000000000000980400000000000000000000000000000000000000000000000000000000000099040000000000000000000000000000000000000000000000000000000000009a040000000000000000000000000000000000000000000000000000000000009b040000000000000000000000000000000000000000000000000000000000009c040000000000000000000000000000000000000000000000000000000000009d040000000000000000000000000000000000000000000000000000000000009e040000000000000000000000000000000000000000000000000000000000009f04000000000000000000000000000000000000000000000000000000000000a004000000000000000000000000000000000000000000000000000000000000a104000000000000000000000000000000000000000000000000000000000000a204000000000000000000000000000000000000000000000000000000000000a304000000000000000000000000000000000000000000000000000000000000a404000000000000000000000000000000000000000000000000000000000000a504000000000000000000000000000000000000000000000000000000000000a604000000000000000000000000000000000000000000000000000000000000a704000000000000000000000000000000000000000000000000000000000000a804000000000000000000000000000000000000000000000000000000000000a904000000000000000000000000000000000000000000000000000000000000aa04000000000000000000000000000000000000000000000000000000000000ab04000000000000000000000000000000000000000000000000000000000000ac04000000000000000000000000000000000000000000000000000000000000ad04000000000000000000000000000000000000000000000000000000000000ae04000000000000000000000000000000000000000000000000000000000000af04000000000000000000000000000000000000000000000000000000000000b004000000000000000000000000000000000000000000000000000000000000b104000000000000000000000000000000000000000000000000000000000000b204000000000000000000000000000000000000000000000000000000000000b304000000000000000000000000000000000000000000000000000000000000b404000000000000000000000000000000000000000000000000000000000000b504000000000000000000000000000000000000000000000000000000000000b604000000000000000000000000000000000000000000000000000000000000b704000000000000000000000000000000000000000000000000000000000000b804000000000000000000000000000000000000000000000000000000000000b904000000000000000000000000000000000000000000000000000000000000ba04000000000000000000000000000000000000000000000000000000000000bb04000000000000000000000000000000000000000000000000000000000000bc04000000000000000000000000000000000000000000000000000000000000bd04000000000000000000000000000000000000000000000000000000000000be04000000000000000000000000000000000000000000000000000000000000bf04000000000000000000000000000000000000000000000000000000000000c004000000000000000000000000000000000000000000000000000000000000c104000000000000000000000000000000000000000000000000000000000000c204000000000000000000000000000000000000000000000000000000000000c304000000000000000000000000000000000000000000000000000000000000c404000000000000000000000000000000000000000000000000000000000000c504000000000000000000000000000000000000000000000000000000000000c604000000000000000000000000000000000000000000000000000000000000c704000000000000000000000000000000000000000000000000000000000000c804000000000000000000000000000000000000000000000000000000000000c904000000000000000000000000000000000000000000000000000000000000ca04000000000000000000000000000000000000000000000000000000000000cb04000000000000000000000000000000000000000000000000000000000000cc04000000000000000000000000000000000000000000000000000000000000cd04000000000000000000000000000000000000000000000000000000000000ce04000000000000000000000000000000000000000000000000000000000000cf04000000000000000000000000000000000000000000000000000000000000d004000000000000000000000000000000000000000000000000000000000000d104000000000000000000000000000000000000000000000000000000000000d204000000000000000000000000000000000000000000000000000000000000d304000000000000000000000000000000000000000000000000000000000000d404000000000000000000000000000000000000000000000000000000000000d504000000000000000000000000000000000000000000000000000000000000d604000000000000000000000000000000000000000000000000000000000000d704000000000000000000000000000000000000000000000000000000000000d804000000000000000000000000000000000000000000000000000000000000d904000000000000000000000000000000000000000000000000000000000000da04000000000000000000000000000000000000000000000000000000000000db04000000000000000000000000000000000000000000000000000000000000dc04000000000000000000000000000000000000000000000000000000000000dd04000000000000000000000000000000000000000000000000000000000000de04000000000000000000000000000000000000000000000000000000000000df04000000000000000000000000000000000000000000000000000000000000e004000000000000000000000000000000000000000000000000000000000000e104000000000000000000000000000000000000000000000000000000000000e204000000000000000000000000000000000000000000000000000000000000e304000000000000000000000000000000000000000000000000000000000000e404000000000000000000000000000000000000000000000000000000000000e504000000000000000000000000000000000000000000000000000000000000e604000000000000000000000000000000000000000000000000000000000000e704000000000000000000000000000000000000000000000000000000000000e804000000000000000000000000000000000000000000000000000000000000e904000000000000000000000000000000000000000000000000000000000000ea04000000000000000000000000000000000000000000000000000000000000eb04000000000000000000000000000000000000000000000000000000000000ec04000000000000000000000000000000000000000000000000000000000000ed04000000000000000000000000000000000000000000000000000000000000ee04000000000000000000000000000000000000000000000000000000000000ef04000000000000000000000000000000000000000000000000000000000000f004000000000000000000000000000000000000000000000000000000000000f104000000000000000000000000000000000000000000000000000000000000f204000000000000000000000000000000000000000000000000000000000000f304000000000000000000000000000000000000000000000000000000000000f404000000000000000000000000000000000000000000000000000000000000f504000000000000000000000000000000000000000000000000000000000000f604000000000000000000000000000000000000000000000000000000000000f704000000000000000000000000000000000000000000000000000000000000f804000000000000000000000000000000000000000000000000000000000000f904000000000000000000000000000000000000000000000000000000000000fa04000000000000000000000000000000000000000000000000000000000000fb04000000000000000000000000000000000000000000000000000000000000fc04000000000000000000000000000000000000000000000000000000000000fd04000000000000000000000000000000000000000000000000000000000000fe04000000000000000000000000000000000000000000000000000000000000ff0400000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000105000000000000000000000000000000000000000000000000000000000000020500000000000000000000000000000000000000000000000000000000000003050000000000000000000000000000000000000000000000000000000000000405000000000000000000000000000000000000000000000000000000000000050500000000000000000000000000000000000000000000000000000000000006050000000000000000000000000000000000000000000000000000000000000705000000000000000000000000000000000000000000000000000000000000080500000000000000000000000000000000000000000000000000000000000009050000000000000000000000000000000000000000000000000000000000000a050000000000000000000000000000000000000000000000000000000000000b050000000000000000000000000000000000000000000000000000000000000c050000000000000000000000000000000000000000000000000000000000000d050000000000000000000000000000000000000000000000000000000000000e050000000000000000000000000000000000000000000000000000000000000f0500000000000000000000000000000000000000000000000000000000000010050000000000000000000000000000000000000000000000000000000000001105000000000000000000000000000000000000000000000000000000000000120500000000000000000000000000000000000000000000000000000000000013050000000000000000000000000000000000000000000000000000000000001405000000000000000000000000000000000000000000000000000000000000150500000000000000000000000000000000000000000000000000000000000016050000000000000000000000000000000000000000000000000000000000001705000000000000000000000000000000000000000000000000000000000000180500000000000000000000000000000000000000000000000000000000000019050000000000000000000000000000000000000000000000000000000000001a050000000000000000000000000000000000000000000000000000000000001b050000000000000000000000000000000000000000000000000000000000001c050000000000000000000000000000000000000000000000000000000000001d050000000000000000000000000000000000000000000000000000000000001e050000000000000000000000000000000000000000000000000000000000001f0500000000000000000000000000000000000000000000000000000000000020050000000000000000000000000000000000000000000000000000000000002105000000000000000000000000000000000000000000000000000000000000220500000000000000000000000000000000000000000000000000000000000023050000000000000000000000000000000000000000000000000000000000002405000000000000000000000000000000000000000000000000000000000000250500000000000000000000000000000000000000000000000000000000000026050000000000000000000000000000000000000000000000000000000000002705000000000000000000000000000000000000000000000000000000000000280500000000000000000000000000000000000000000000000000000000000029050000000000000000000000000000000000000000000000000000000000002a050000000000000000000000000000000000000000000000000000000000002b050000000000000000000000000000000000000000000000000000000000002c050000000000000000000000000000000000000000000000000000000000002d050000000000000000000000000000000000000000000000000000000000002e050000000000000000000000000000000000000000000000000000000000002f0500000000000000000000000000000000000000000000000000000000000030050000000000000000000000000000000000000000000000000000000000003105000000000000000000000000000000000000000000000000000000000000320500000000000000000000000000000000000000000000000000000000000033050000000000000000000000000000000000000000000000000000000000003405000000000000000000000000000000000000000000000000000000000000350500000000000000000000000000000000000000000000000000000000000036050000000000000000000000000000000000000000000000000000000000003705000000000000000000000000000000000000000000000000000000000000380500000000000000000000000000000000000000000000000000000000000039050000000000000000000000000000000000000000000000000000000000003a050000000000000000000000000000000000000000000000000000000000003b050000000000000000000000000000000000000000000000000000000000003c050000000000000000000000000000000000000000000000000000000000003d050000000000000000000000000000000000000000000000000000000000003e050000000000000000000000000000000000000000000000000000000000003f0500000000000000000000000000000000000000000000000000000000000040050000000000000000000000000000000000000000000000000000000000004105000000000000000000000000000000000000000000000000000000000000420500000000000000000000000000000000000000000000000000000000000043050000000000000000000000000000000000000000000000000000000000004405000000000000000000000000000000000000000000000000000000000000450500000000000000000000000000000000000000000000000000000000000046050000000000000000000000000000000000000000000000000000000000004705000000000000000000000000000000000000000000000000000000000000480500000000000000000000000000000000000000000000000000000000000049050000000000000000000000000000000000000000000000000000000000004a050000000000000000000000000000000000000000000000000000000000004b050000000000000000000000000000000000000000000000000000000000004c050000000000000000000000000000000000000000000000000000000000004d050000000000000000000000000000000000000000000000000000000000004e050000000000000000000000000000000000000000000000000000000000004f0500000000000000000000000000000000000000000000000000000000000050050000000000000000000000000000000000000000000000000000000000005105000000000000000000000000000000000000000000000000000000000000520500000000000000000000000000000000000000000000000000000000000053050000000000000000000000000000000000000000000000000000000000005405000000000000000000000000000000000000000000000000000000000000550500000000000000000000000000000000000000000000000000000000000056050000000000000000000000000000000000000000000000000000000000005705000000000000000000000000000000000000000000000000000000000000580500000000000000000000000000000000000000000000000000000000000059050000000000000000000000000000000000000000000000000000000000005a050000000000000000000000000000000000000000000000000000000000005b050000000000000000000000000000000000000000000000000000000000005c050000000000000000000000000000000000000000000000000000000000005d050000000000000000000000000000000000000000000000000000000000005e050000000000000000000000000000000000000000000000000000000000005f0500000000000000000000000000000000000000000000000000000000000060050000000000000000000000000000000000000000000000000000000000006105000000000000000000000000000000000000000000000000000000000000620500000000000000000000000000000000000000000000000000000000000063050000000000000000000000000000000000000000000000000000000000006405000000000000000000000000000000000000000000000000000000000000650500000000000000000000000000000000000000000000000000000000000066050000000000000000000000000000000000000000000000000000000000006705000000000000000000000000000000000000000000000000000000000000680500000000000000000000000000000000000000000000000000000000000069050000000000000000000000000000000000000000000000000000000000006a050000000000000000000000000000000000000000000000000000000000006b050000000000000000000000000000000000000000000000000000000000006c050000000000000000000000000000000000000000000000000000000000006d050000000000000000000000000000000000000000000000000000000000006e050000000000000000000000000000000000000000000000000000000000006f0500000000000000000000000000000000000000000000000000000000000070050000000000000000000000000000000000000000000000000000000000007105000000000000000000000000000000000000000000000000000000000000720500000000000000000000000000000000000000000000000000000000000073050000000000000000000000000000000000000000000000000000000000007405000000000000000000000000000000000000000000000000000000000000750500000000000000000000000000000000000000000000000000000000000076050000000000000000000000000000000000000000000000000000000000007705000000000000000000000000000000000000000000000000000000000000780500000000000000000000000000000000000000000000000000000000000079050000000000000000000000000000000000000000000000000000000000007a050000000000000000000000000000000000000000000000000000000000007b050000000000000000000000000000000000000000000000000000000000007c050000000000000000000000000000000000000000000000000000000000007d050000000000000000000000000000000000000000000000000000000000007e050000000000000000000000000000000000000000000000000000000000007f0500000000000000000000000000000000000000000000000000000000000080050000000000000000000000000000000000000000000000000000000000008105000000000000000000000000000000000000000000000000000000000000820500000000000000000000000000000000000000000000000000000000000083050000000000000000000000000000000000000000000000000000000000008405000000000000000000000000000000000000000000000000000000000000850500000000000000000000000000000000000000000000000000000000000086050000000000000000000000000000000000000000000000000000000000008705000000000000000000000000000000000000000000000000000000000000880500000000000000000000000000000000000000000000000000000000000089050000000000000000000000000000000000000000000000000000000000008a050000000000000000000000000000000000000000000000000000000000008b050000000000000000000000000000000000000000000000000000000000008c050000000000000000000000000000000000000000000000000000000000008d050000000000000000000000000000000000000000000000000000000000008e050000000000000000000000000000000000000000000000000000000000008f0500000000000000000000000000000000000000000000000000000000000090050000000000000000000000000000000000000000000000000000000000009105000000000000000000000000000000000000000000000000000000000000920500000000000000000000000000000000000000000000000000000000000093050000000000000000000000000000000000000000000000000000000000009405000000000000000000000000000000000000000000000000000000000000950500000000000000000000000000000000000000000000000000000000000096050000000000000000000000000000000000000000000000000000000000009705000000000000000000000000000000000000000000000000000000000000980500000000000000000000000000000000000000000000000000000000000099050000000000000000000000000000000000000000000000000000000000009a050000000000000000000000000000000000000000000000000000000000009b050000000000000000000000000000000000000000000000000000000000009c050000000000000000000000000000000000000000000000000000000000009d050000000000000000000000000000000000000000000000000000000000009e050000000000000000000000000000000000000000000000000000000000009f05000000000000000000000000000000000000000000000000000000000000a005000000000000000000000000000000000000000000000000000000000000a105000000000000000000000000000000000000000000000000000000000000a205000000000000000000000000000000000000000000000000000000000000a305000000000000000000000000000000000000000000000000000000000000a405000000000000000000000000000000000000000000000000000000000000a505000000000000000000000000000000000000000000000000000000000000a605000000000000000000000000000000000000000000000000000000000000a705000000000000000000000000000000000000000000000000000000000000a805000000000000000000000000000000000000000000000000000000000000a905000000000000000000000000000000000000000000000000000000000000aa05000000000000000000000000000000000000000000000000000000000000ab05000000000000000000000000000000000000000000000000000000000000ac05000000000000000000000000000000000000000000000000000000000000ad05000000000000000000000000000000000000000000000000000000000000ae05000000000000000000000000000000000000000000000000000000000000af05000000000000000000000000000000000000000000000000000000000000b005000000000000000000000000000000000000000000000000000000000000b105000000000000000000000000000000000000000000000000000000000000b205000000000000000000000000000000000000000000000000000000000000b305000000000000000000000000000000000000000000000000000000000000b405000000000000000000000000000000000000000000000000000000000000b505000000000000000000000000000000000000000000000000000000000000b605000000000000000000000000000000000000000000000000000000000000b705000000000000000000000000000000000000000000000000000000000000b805000000000000000000000000000000000000000000000000000000000000b905000000000000000000000000000000000000000000000000000000000000ba05000000000000000000000000000000000000000000000000000000000000bb05000000000000000000000000000000000000000000000000000000000000bc05000000000000000000000000000000000000000000000000000000000000bd05000000000000000000000000000000000000000000000000000000000000be05000000000000000000000000000000000000000000000000000000000000bf05000000000000000000000000000000000000000000000000000000000000c005000000000000000000000000000000000000000000000000000000000000c105000000000000000000000000000000000000000000000000000000000000c205000000000000000000000000000000000000000000000000000000000000c305000000000000000000000000000000000000000000000000000000000000c405000000000000000000000000000000000000000000000000000000000000c505000000000000000000000000000000000000000000000000000000000000c605000000000000000000000000000000000000000000000000000000000000c705000000000000000000000000000000000000000000000000000000000000c805000000000000000000000000000000000000000000000000000000000000c905000000000000000000000000000000000000000000000000000000000000ca05000000000000000000000000000000000000000000000000000000000000cb05000000000000000000000000000000000000000000000000000000000000cc05000000000000000000000000000000000000000000000000000000000000cd05000000000000000000000000000000000000000000000000000000000000ce05000000000000000000000000000000000000000000000000000000000000cf05000000000000000000000000000000000000000000000000000000000000d005000000000000000000000000000000000000000000000000000000000000d105000000000000000000000000000000000000000000000000000000000000d205000000000000000000000000000000000000000000000000000000000000d305000000000000000000000000000000000000000000000000000000000000d405000000000000000000000000000000000000000000000000000000000000d505000000000000000000000000000000000000000000000000000000000000d605000000000000000000000000000000000000000000000000000000000000d705000000000000000000000000000000000000000000000000000000000000d805000000000000000000000000000000000000000000000000000000000000d905000000000000000000000000000000000000000000000000000000000000da05000000000000000000000000000000000000000000000000000000000000db05000000000000000000000000000000000000000000000000000000000000dc05000000000000000000000000000000000000000000000000000000000000dd05000000000000000000000000000000000000000000000000000000000000de05000000000000000000000000000000000000000000000000000000000000df05000000000000000000000000000000000000000000000000000000000000e005000000000000000000000000000000000000000000000000000000000000e105000000000000000000000000000000000000000000000000000000000000e205000000000000000000000000000000000000000000000000000000000000e305000000000000000000000000000000000000000000000000000000000000e405000000000000000000000000000000000000000000000000000000000000e505000000000000000000000000000000000000000000000000000000000000e605000000000000000000000000000000000000000000000000000000000000e705000000000000000000000000000000000000000000000000000000000000e805000000000000000000000000000000000000000000000000000000000000e905000000000000000000000000000000000000000000000000000000000000ea05000000000000000000000000000000000000000000000000000000000000eb05000000000000000000000000000000000000000000000000000000000000ec05000000000000000000000000000000000000000000000000000000000000ed05000000000000000000000000000000000000000000000000000000000000ee05000000000000000000000000000000000000000000000000000000000000ef05000000000000000000000000000000000000000000000000000000000000f005000000000000000000000000000000000000000000000000000000000000f105000000000000000000000000000000000000000000000000000000000000f205000000000000000000000000000000000000000000000000000000000000f305000000000000000000000000000000000000000000000000000000000000f405000000000000000000000000000000000000000000000000000000000000f505000000000000000000000000000000000000000000000000000000000000f605000000000000000000000000000000000000000000000000000000000000f705000000000000000000000000000000000000000000000000000000000000f805000000000000000000000000000000000000000000000000000000000000f905000000000000000000000000000000000000000000000000000000000000fa05000000000000000000000000000000000000000000000000000000000000fb05000000000000000000000000000000000000000000000000000000000000fc05000000000000000000000000000000000000000000000000000000000000fd05000000000000000000000000000000000000000000000000000000000000fe05000000000000000000000000000000000000000000000000000000000000ff0500000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000106000000000000000000000000000000000000000000000000000000000000020600000000000000000000000000000000000000000000000000000000000003060000000000000000000000000000000000000000000000000000000000000406000000000000000000000000000000000000000000000000000000000000050600000000000000000000000000000000000000000000000000000000000006060000000000000000000000000000000000000000000000000000000000000706000000000000000000000000000000000000000000000000000000000000080600000000000000000000000000000000000000000000000000000000000009060000000000000000000000000000000000000000000000000000000000000a060000000000000000000000000000000000000000000000000000000000000b060000000000000000000000000000000000000000000000000000000000000c060000000000000000000000000000000000000000000000000000000000000d060000000000000000000000000000000000000000000000000000000000000e060000000000000000000000000000000000000000000000000000000000000f0600000000000000000000000000000000000000000000000000000000000010060000000000000000000000000000000000000000000000000000000000001106000000000000000000000000000000000000000000000000000000000000120600000000000000000000000000000000000000000000000000000000000013060000000000000000000000000000000000000000000000000000000000001406000000000000000000000000000000000000000000000000000000000000150600000000000000000000000000000000000000000000000000000000000016060000000000000000000000000000000000000000000000000000000000001706000000000000000000000000000000000000000000000000000000000000180600000000000000000000000000000000000000000000000000000000000019060000000000000000000000000000000000000000000000000000000000001a060000000000000000000000000000000000000000000000000000000000001b060000000000000000000000000000000000000000000000000000000000001c060000000000000000000000000000000000000000000000000000000000001d060000000000000000000000000000000000000000000000000000000000001e060000000000000000000000000000000000000000000000000000000000001f0600000000000000000000000000000000000000000000000000000000000020060000000000000000000000000000000000000000000000000000000000002106000000000000000000000000000000000000000000000000000000000000220600000000000000000000000000000000000000000000000000000000000023060000000000000000000000000000000000000000000000000000000000002406000000000000000000000000000000000000000000000000000000000000250600000000000000000000000000000000000000000000000000000000000026060000000000000000000000000000000000000000000000000000000000002706000000000000000000000000000000000000000000000000000000000000280600000000000000000000000000000000000000000000000000000000000029060000000000000000000000000000000000000000000000000000000000002a060000000000000000000000000000000000000000000000000000000000002b060000000000000000000000000000000000000000000000000000000000002c060000000000000000000000000000000000000000000000000000000000002d060000000000000000000000000000000000000000000000000000000000002e060000000000000000000000000000000000000000000000000000000000002f0600000000000000000000000000000000000000000000000000000000000030060000000000000000000000000000000000000000000000000000000000003106000000000000000000000000000000000000000000000000000000000000320600000000000000000000000000000000000000000000000000000000000033060000000000000000000000000000000000000000000000000000000000003406000000000000000000000000000000000000000000000000000000000000350600000000000000000000000000000000000000000000000000000000000036060000000000000000000000000000000000000000000000000000000000003706000000000000000000000000000000000000000000000000000000000000380600000000000000000000000000000000000000000000000000000000000039060000000000000000000000000000000000000000000000000000000000003a060000000000000000000000000000000000000000000000000000000000003b060000000000000000000000000000000000000000000000000000000000003c060000000000000000000000000000000000000000000000000000000000003d060000000000000000000000000000000000000000000000000000000000003e060000000000000000000000000000000000000000000000000000000000003f0600000000000000000000000000000000000000000000000000000000000040060000000000000000000000000000000000000000000000000000000000004106000000000000000000000000000000000000000000000000000000000000420600000000000000000000000000000000000000000000000000000000000043060000000000000000000000000000000000000000000000000000000000004406000000000000000000000000000000000000000000000000000000000000450600000000000000000000000000000000000000000000000000000000000046060000000000000000000000000000000000000000000000000000000000004706000000000000000000000000000000000000000000000000000000000000480600000000000000000000000000000000000000000000000000000000000049060000000000000000000000000000000000000000000000000000000000004a060000000000000000000000000000000000000000000000000000000000004b060000000000000000000000000000000000000000000000000000000000004c060000000000000000000000000000000000000000000000000000000000004d060000000000000000000000000000000000000000000000000000000000004e060000000000000000000000000000000000000000000000000000000000004f0600000000000000000000000000000000000000000000000000000000000050060000000000000000000000000000000000000000000000000000000000005106000000000000000000000000000000000000000000000000000000000000520600000000000000000000000000000000000000000000000000000000000053060000000000000000000000000000000000000000000000000000000000005406000000000000000000000000000000000000000000000000000000000000550600000000000000000000000000000000000000000000000000000000000056060000000000000000000000000000000000000000000000000000000000005706000000000000000000000000000000000000000000000000000000000000580600000000000000000000000000000000000000000000000000000000000059060000000000000000000000000000000000000000000000000000000000005a060000000000000000000000000000000000000000000000000000000000005b060000000000000000000000000000000000000000000000000000000000005c060000000000000000000000000000000000000000000000000000000000005d060000000000000000000000000000000000000000000000000000000000005e060000000000000000000000000000000000000000000000000000000000005f0600000000000000000000000000000000000000000000000000000000000060060000000000000000000000000000000000000000000000000000000000006106000000000000000000000000000000000000000000000000000000000000620600000000000000000000000000000000000000000000000000000000000063060000000000000000000000000000000000000000000000000000000000006406000000000000000000000000000000000000000000000000000000000000650600000000000000000000000000000000000000000000000000000000000066060000000000000000000000000000000000000000000000000000000000006706000000000000000000000000000000000000000000000000000000000000680600000000000000000000000000000000000000000000000000000000000069060000000000000000000000000000000000000000000000000000000000006a060000000000000000000000000000000000000000000000000000000000006b060000000000000000000000000000000000000000000000000000000000006c060000000000000000000000000000000000000000000000000000000000006d060000000000000000000000000000000000000000000000000000000000006e060000000000000000000000000000000000000000000000000000000000006f0600000000000000000000000000000000000000000000000000000000000070060000000000000000000000000000000000000000000000000000000000007106000000000000000000000000000000000000000000000000000000000000720600000000000000000000000000000000000000000000000000000000000073060000000000000000000000000000000000000000000000000000000000007406000000000000000000000000000000000000000000000000000000000000750600000000000000000000000000000000000000000000000000000000000076060000000000000000000000000000000000000000000000000000000000007706000000000000000000000000000000000000000000000000000000000000780600000000000000000000000000000000000000000000000000000000000079060000000000000000000000000000000000000000000000000000000000007a060000000000000000000000000000000000000000000000000000000000007b060000000000000000000000000000000000000000000000000000000000007c060000000000000000000000000000000000000000000000000000000000007d060000000000000000000000000000000000000000000000000000000000007e060000000000000000000000000000000000000000000000000000000000007f0600000000000000000000000000000000000000000000000000000000000080060000000000000000000000000000000000000000000000000000000000008106000000000000000000000000000000000000000000000000000000000000820600000000000000000000000000000000000000000000000000000000000083060000000000000000000000000000000000000000000000000000000000008406000000000000000000000000000000000000000000000000000000000000850600000000000000000000000000000000000000000000000000000000000086060000000000000000000000000000000000000000000000000000000000008706000000000000000000000000000000000000000000000000000000000000880600000000000000000000000000000000000000000000000000000000000089060000000000000000000000000000000000000000000000000000000000008a060000000000000000000000000000000000000000000000000000000000008b060000000000000000000000000000000000000000000000000000000000008c060000000000000000000000000000000000000000000000000000000000008d060000000000000000000000000000000000000000000000000000000000008e060000000000000000000000000000000000000000000000000000000000008f0600000000000000000000000000000000000000000000000000000000000090060000000000000000000000000000000000000000000000000000000000009106000000000000000000000000000000000000000000000000000000000000920600000000000000000000000000000000000000000000000000000000000093060000000000000000000000000000000000000000000000000000000000009406000000000000000000000000000000000000000000000000000000000000950600000000000000000000000000000000000000000000000000000000000096060000000000000000000000000000000000000000000000000000000000009706000000000000000000000000000000000000000000000000000000000000980600000000000000000000000000000000000000000000000000000000000099060000000000000000000000000000000000000000000000000000000000009a060000000000000000000000000000000000000000000000000000000000009b060000000000000000000000000000000000000000000000000000000000009c060000000000000000000000000000000000000000000000000000000000009d060000000000000000000000000000000000000000000000000000000000009e060000000000000000000000000000000000000000000000000000000000009f06000000000000000000000000000000000000000000000000000000000000a006000000000000000000000000000000000000000000000000000000000000a106000000000000000000000000000000000000000000000000000000000000a206000000000000000000000000000000000000000000000000000000000000a306000000000000000000000000000000000000000000000000000000000000a406000000000000000000000000000000000000000000000000000000000000a506000000000000000000000000000000000000000000000000000000000000a606000000000000000000000000000000000000000000000000000000000000a706000000000000000000000000000000000000000000000000000000000000a806000000000000000000000000000000000000000000000000000000000000a906000000000000000000000000000000000000000000000000000000000000aa06000000000000000000000000000000000000000000000000000000000000ab06000000000000000000000000000000000000000000000000000000000000ac06000000000000000000000000000000000000000000000000000000000000ad06000000000000000000000000000000000000000000000000000000000000ae06000000000000000000000000000000000000000000000000000000000000af06000000000000000000000000000000000000000000000000000000000000b006000000000000000000000000000000000000000000000000000000000000b106000000000000000000000000000000000000000000000000000000000000b206000000000000000000000000000000000000000000000000000000000000b306000000000000000000000000000000000000000000000000000000000000b406000000000000000000000000000000000000000000000000000000000000b506000000000000000000000000000000000000000000000000000000000000b606000000000000000000000000000000000000000000000000000000000000b706000000000000000000000000000000000000000000000000000000000000b806000000000000000000000000000000000000000000000000000000000000b906000000000000000000000000000000000000000000000000000000000000ba06000000000000000000000000000000000000000000000000000000000000bb06000000000000000000000000000000000000000000000000000000000000bc06000000000000000000000000000000000000000000000000000000000000bd06000000000000000000000000000000000000000000000000000000000000be06000000000000000000000000000000000000000000000000000000000000bf06000000000000000000000000000000000000000000000000000000000000c006000000000000000000000000000000000000000000000000000000000000c106000000000000000000000000000000000000000000000000000000000000c206000000000000000000000000000000000000000000000000000000000000c306000000000000000000000000000000000000000000000000000000000000c406000000000000000000000000000000000000000000000000000000000000c506000000000000000000000000000000000000000000000000000000000000c606000000000000000000000000000000000000000000000000000000000000c706000000000000000000000000000000000000000000000000000000000000c806000000000000000000000000000000000000000000000000000000000000c906000000000000000000000000000000000000000000000000000000000000ca06000000000000000000000000000000000000000000000000000000000000cb06000000000000000000000000000000000000000000000000000000000000cc06000000000000000000000000000000000000000000000000000000000000cd06000000000000000000000000000000000000000000000000000000000000ce06000000000000000000000000000000000000000000000000000000000000cf06000000000000000000000000000000000000000000000000000000000000d006000000000000000000000000000000000000000000000000000000000000d106000000000000000000000000000000000000000000000000000000000000d206000000000000000000000000000000000000000000000000000000000000d306000000000000000000000000000000000000000000000000000000000000d406000000000000000000000000000000000000000000000000000000000000d506000000000000000000000000000000000000000000000000000000000000d606000000000000000000000000000000000000000000000000000000000000d706000000000000000000000000000000000000000000000000000000000000d806000000000000000000000000000000000000000000000000000000000000d906000000000000000000000000000000000000000000000000000000000000da06000000000000000000000000000000000000000000000000000000000000db06000000000000000000000000000000000000000000000000000000000000dc06000000000000000000000000000000000000000000000000000000000000dd06000000000000000000000000000000000000000000000000000000000000de06000000000000000000000000000000000000000000000000000000000000df06000000000000000000000000000000000000000000000000000000000000e006000000000000000000000000000000000000000000000000000000000000e106000000000000000000000000000000000000000000000000000000000000e206000000000000000000000000000000000000000000000000000000000000e306000000000000000000000000000000000000000000000000000000000000e406000000000000000000000000000000000000000000000000000000000000e506000000000000000000000000000000000000000000000000000000000000e606000000000000000000000000000000000000000000000000000000000000e706000000000000000000000000000000000000000000000000000000000000e806000000000000000000000000000000000000000000000000000000000000e906000000000000000000000000000000000000000000000000000000000000ea06000000000000000000000000000000000000000000000000000000000000eb06000000000000000000000000000000000000000000000000000000000000ec06000000000000000000000000000000000000000000000000000000000000ed06000000000000000000000000000000000000000000000000000000000000ee06000000000000000000000000000000000000000000000000000000000000ef06000000000000000000000000000000000000000000000000000000000000f006000000000000000000000000000000000000000000000000000000000000f106000000000000000000000000000000000000000000000000000000000000f206000000000000000000000000000000000000000000000000000000000000f306000000000000000000000000000000000000000000000000000000000000f406000000000000000000000000000000000000000000000000000000000000f506000000000000000000000000000000000000000000000000000000000000f606000000000000000000000000000000000000000000000000000000000000f706000000000000000000000000000000000000000000000000000000000000f806000000000000000000000000000000000000000000000000000000000000f906000000000000000000000000000000000000000000000000000000000000fa06000000000000000000000000000000000000000000000000000000000000fb06000000000000000000000000000000000000000000000000000000000000fc06000000000000000000000000000000000000000000000000000000000000fd06000000000000000000000000000000000000000000000000000000000000fe06000000000000000000000000000000000000000000000000000000000000ff0600000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000107000000000000000000000000000000000000000000000000000000000000020700000000000000000000000000000000000000000000000000000000000003070000000000000000000000000000000000000000000000000000000000000407000000000000000000000000000000000000000000000000000000000000050700000000000000000000000000000000000000000000000000000000000006070000000000000000000000000000000000000000000000000000000000000707000000000000000000000000000000000000000000000000000000000000080700000000000000000000000000000000000000000000000000000000000009070000000000000000000000000000000000000000000000000000000000000a070000000000000000000000000000000000000000000000000000000000000b070000000000000000000000000000000000000000000000000000000000000c070000000000000000000000000000000000000000000000000000000000000d070000000000000000000000000000000000000000000000000000000000000e070000000000000000000000000000000000000000000000000000000000000f0700000000000000000000000000000000000000000000000000000000000010070000000000000000000000000000000000000000000000000000000000001107000000000000000000000000000000000000000000000000000000000000120700000000000000000000000000000000000000000000000000000000000013070000000000000000000000000000000000000000000000000000000000001407000000000000000000000000000000000000000000000000000000000000150700000000000000000000000000000000000000000000000000000000000016070000000000000000000000000000000000000000000000000000000000001707000000000000000000000000000000000000000000000000000000000000180700000000000000000000000000000000000000000000000000000000000019070000000000000000000000000000000000000000000000000000000000001a070000000000000000000000000000000000000000000000000000000000001b070000000000000000000000000000000000000000000000000000000000001c070000000000000000000000000000000000000000000000000000000000001d070000000000000000000000000000000000000000000000000000000000001e070000000000000000000000000000000000000000000000000000000000001f0700000000000000000000000000000000000000000000000000000000000020070000000000000000000000000000000000000000000000000000000000002107000000000000000000000000000000000000000000000000000000000000220700000000000000000000000000000000000000000000000000000000000023070000000000000000000000000000000000000000000000000000000000002407000000000000000000000000000000000000000000000000000000000000250700000000000000000000000000000000000000000000000000000000000026070000000000000000000000000000000000000000000000000000000000002707000000000000000000000000000000000000000000000000000000000000280700000000000000000000000000000000000000000000000000000000000029070000000000000000000000000000000000000000000000000000000000002a070000000000000000000000000000000000000000000000000000000000002b070000000000000000000000000000000000000000000000000000000000002c070000000000000000000000000000000000000000000000000000000000002d070000000000000000000000000000000000000000000000000000000000002e070000000000000000000000000000000000000000000000000000000000002f0700000000000000000000000000000000000000000000000000000000000030070000000000000000000000000000000000000000000000000000000000003107000000000000000000000000000000000000000000000000000000000000320700000000000000000000000000000000000000000000000000000000000033070000000000000000000000000000000000000000000000000000000000003407000000000000000000000000000000000000000000000000000000000000350700000000000000000000000000000000000000000000000000000000000036070000000000000000000000000000000000000000000000000000000000003707000000000000000000000000000000000000000000000000000000000000380700000000000000000000000000000000000000000000000000000000000039070000000000000000000000000000000000000000000000000000000000003a070000000000000000000000000000000000000000000000000000000000003b070000000000000000000000000000000000000000000000000000000000003c070000000000000000000000000000000000000000000000000000000000003d070000000000000000000000000000000000000000000000000000000000003e070000000000000000000000000000000000000000000000000000000000003f0700000000000000000000000000000000000000000000000000000000000040070000000000000000000000000000000000000000000000000000000000004107000000000000000000000000000000000000000000000000000000000000420700000000000000000000000000000000000000000000000000000000000043070000000000000000000000000000000000000000000000000000000000004407000000000000000000000000000000000000000000000000000000000000450700000000000000000000000000000000000000000000000000000000000046070000000000000000000000000000000000000000000000000000000000004707000000000000000000000000000000000000000000000000000000000000480700000000000000000000000000000000000000000000000000000000000049070000000000000000000000000000000000000000000000000000000000004a070000000000000000000000000000000000000000000000000000000000004b070000000000000000000000000000000000000000000000000000000000004c070000000000000000000000000000000000000000000000000000000000004d070000000000000000000000000000000000000000000000000000000000004e070000000000000000000000000000000000000000000000000000000000004f0700000000000000000000000000000000000000000000000000000000000050070000000000000000000000000000000000000000000000000000000000005107000000000000000000000000000000000000000000000000000000000000520700000000000000000000000000000000000000000000000000000000000053070000000000000000000000000000000000000000000000000000000000005407000000000000000000000000000000000000000000000000000000000000550700000000000000000000000000000000000000000000000000000000000056070000000000000000000000000000000000000000000000000000000000005707000000000000000000000000000000000000000000000000000000000000580700000000000000000000000000000000000000000000000000000000000059070000000000000000000000000000000000000000000000000000000000005a070000000000000000000000000000000000000000000000000000000000005b070000000000000000000000000000000000000000000000000000000000005c070000000000000000000000000000000000000000000000000000000000005d070000000000000000000000000000000000000000000000000000000000005e070000000000000000000000000000000000000000000000000000000000005f0700000000000000000000000000000000000000000000000000000000000060070000000000000000000000000000000000000000000000000000000000006107000000000000000000000000000000000000000000000000000000000000620700000000000000000000000000000000000000000000000000000000000063070000000000000000000000000000000000000000000000000000000000006407000000000000000000000000000000000000000000000000000000000000650700000000000000000000000000000000000000000000000000000000000066070000000000000000000000000000000000000000000000000000000000006707000000000000000000000000000000000000000000000000000000000000680700000000000000000000000000000000000000000000000000000000000069070000000000000000000000000000000000000000000000000000000000006a070000000000000000000000000000000000000000000000000000000000006b070000000000000000000000000000000000000000000000000000000000006c070000000000000000000000000000000000000000000000000000000000006d070000000000000000000000000000000000000000000000000000000000006e070000000000000000000000000000000000000000000000000000000000006f0700000000000000000000000000000000000000000000000000000000000070070000000000000000000000000000000000000000000000000000000000007107000000000000000000000000000000000000000000000000000000000000720700000000000000000000000000000000000000000000000000000000000073070000000000000000000000000000000000000000000000000000000000007407000000000000000000000000000000000000000000000000000000000000750700000000000000000000000000000000000000000000000000000000000076070000000000000000000000000000000000000000000000000000000000007707000000000000000000000000000000000000000000000000000000000000780700000000000000000000000000000000000000000000000000000000000079070000000000000000000000000000000000000000000000000000000000007a070000000000000000000000000000000000000000000000000000000000007b070000000000000000000000000000000000000000000000000000000000007c070000000000000000000000000000000000000000000000000000000000007d070000000000000000000000000000000000000000000000000000000000007e070000000000000000000000000000000000000000000000000000000000007f0700000000000000000000000000000000000000000000000000000000000080070000000000000000000000000000000000000000000000000000000000008107000000000000000000000000000000000000000000000000000000000000820700000000000000000000000000000000000000000000000000000000000083070000000000000000000000000000000000000000000000000000000000008407000000000000000000000000000000000000000000000000000000000000850700000000000000000000000000000000000000000000000000000000000086070000000000000000000000000000000000000000000000000000000000008707000000000000000000000000000000000000000000000000000000000000880700000000000000000000000000000000000000000000000000000000000089070000000000000000000000000000000000000000000000000000000000008a070000000000000000000000000000000000000000000000000000000000008b070000000000000000000000000000000000000000000000000000000000008c070000000000000000000000000000000000000000000000000000000000008d070000000000000000000000000000000000000000000000000000000000008e070000000000000000000000000000000000000000000000000000000000008f0700000000000000000000000000000000000000000000000000000000000090070000000000000000000000000000000000000000000000000000000000009107000000000000000000000000000000000000000000000000000000000000920700000000000000000000000000000000000000000000000000000000000093070000000000000000000000000000000000000000000000000000000000009407000000000000000000000000000000000000000000000000000000000000950700000000000000000000000000000000000000000000000000000000000096070000000000000000000000000000000000000000000000000000000000009707000000000000000000000000000000000000000000000000000000000000980700000000000000000000000000000000000000000000000000000000000099070000000000000000000000000000000000000000000000000000000000009a070000000000000000000000000000000000000000000000000000000000009b070000000000000000000000000000000000000000000000000000000000009c070000000000000000000000000000000000000000000000000000000000009d070000000000000000000000000000000000000000000000000000000000009e070000000000000000000000000000000000000000000000000000000000009f07000000000000000000000000000000000000000000000000000000000000a007000000000000000000000000000000000000000000000000000000000000a107000000000000000000000000000000000000000000000000000000000000a207000000000000000000000000000000000000000000000000000000000000a307000000000000000000000000000000000000000000000000000000000000a407000000000000000000000000000000000000000000000000000000000000a507000000000000000000000000000000000000000000000000000000000000a607000000000000000000000000000000000000000000000000000000000000a707000000000000000000000000000000000000000000000000000000000000a807000000000000000000000000000000000000000000000000000000000000a907000000000000000000000000000000000000000000000000000000000000aa07000000000000000000000000000000000000000000000000000000000000ab07000000000000000000000000000000000000000000000000000000000000ac07000000000000000000000000000000000000000000000000000000000000ad07000000000000000000000000000000000000000000000000000000000000ae07000000000000000000000000000000000000000000000000000000000000af07000000000000000000000000000000000000000000000000000000000000b007000000000000000000000000000000000000000000000000000000000000b107000000000000000000000000000000000000000000000000000000000000b207000000000000000000000000000000000000000000000000000000000000b307000000000000000000000000000000000000000000000000000000000000b407000000000000000000000000000000000000000000000000000000000000b507000000000000000000000000000000000000000000000000000000000000b607000000000000000000000000000000000000000000000000000000000000b707000000000000000000000000000000000000000000000000000000000000b807000000000000000000000000000000000000000000000000000000000000b907000000000000000000000000000000000000000000000000000000000000ba07000000000000000000000000000000000000000000000000000000000000bb07000000000000000000000000000000000000000000000000000000000000bc07000000000000000000000000000000000000000000000000000000000000bd07000000000000000000000000000000000000000000000000000000000000be07000000000000000000000000000000000000000000000000000000000000bf07000000000000000000000000000000000000000000000000000000000000c007000000000000000000000000000000000000000000000000000000000000c107000000000000000000000000000000000000000000000000000000000000c207000000000000000000000000000000000000000000000000000000000000c307000000000000000000000000000000000000000000000000000000000000c407000000000000000000000000000000000000000000000000000000000000c507000000000000000000000000000000000000000000000000000000000000c607000000000000000000000000000000000000000000000000000000000000c707000000000000000000000000000000000000000000000000000000000000c807000000000000000000000000000000000000000000000000000000000000c907000000000000000000000000000000000000000000000000000000000000ca07000000000000000000000000000000000000000000000000000000000000cb07000000000000000000000000000000000000000000000000000000000000cc07000000000000000000000000000000000000000000000000000000000000cd07000000000000000000000000000000000000000000000000000000000000ce07000000000000000000000000000000000000000000000000000000000000cf07000000000000000000000000000000000000000000000000000000000000d007000000000000000000000000000000000000000000000000000000000000d107000000000000000000000000000000000000000000000000000000000000d207000000000000000000000000000000000000000000000000000000000000d307000000000000000000000000000000000000000000000000000000000000d407000000000000000000000000000000000000000000000000000000000000d507000000000000000000000000000000000000000000000000000000000000d607000000000000000000000000000000000000000000000000000000000000d707000000000000000000000000000000000000000000000000000000000000d807000000000000000000000000000000000000000000000000000000000000d907000000000000000000000000000000000000000000000000000000000000da07000000000000000000000000000000000000000000000000000000000000db07000000000000000000000000000000000000000000000000000000000000dc07000000000000000000000000000000000000000000000000000000000000dd07000000000000000000000000000000000000000000000000000000000000de07000000000000000000000000000000000000000000000000000000000000df07000000000000000000000000000000000000000000000000000000000000e007000000000000000000000000000000000000000000000000000000000000e107000000000000000000000000000000000000000000000000000000000000e207000000000000000000000000000000000000000000000000000000000000e307000000000000000000000000000000000000000000000000000000000000e407000000000000000000000000000000000000000000000000000000000000e507000000000000000000000000000000000000000000000000000000000000e607000000000000000000000000000000000000000000000000000000000000e707000000000000000000000000000000000000000000000000000000000000e807000000000000000000000000000000000000000000000000000000000000e907000000000000000000000000000000000000000000000000000000000000ea07000000000000000000000000000000000000000000000000000000000000eb07000000000000000000000000000000000000000000000000000000000000ec07000000000000000000000000000000000000000000000000000000000000ed07000000000000000000000000000000000000000000000000000000000000ee07000000000000000000000000000000000000000000000000000000000000ef07000000000000000000000000000000000000000000000000000000000000f007000000000000000000000000000000000000000000000000000000000000f107000000000000000000000000000000000000000000000000000000000000f207000000000000000000000000000000000000000000000000000000000000f307000000000000000000000000000000000000000000000000000000000000f407000000000000000000000000000000000000000000000000000000000000f507000000000000000000000000000000000000000000000000000000000000f607000000000000000000000000000000000000000000000000000000000000f707000000000000000000000000000000000000000000000000000000000000f807000000000000000000000000000000000000000000000000000000000000f907000000000000000000000000000000000000000000000000000000000000fa07000000000000000000000000000000000000000000000000000000000000fb07000000000000000000000000000000000000000000000000000000000000fc07000000000000000000000000000000000000000000000000000000000000fd07000000000000000000000000000000000000000000000000000000000000fe07000000000000000000000000000000000000000000000000000000000000ff0700000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000108000000000000000000000000000000000000000000000000000000000000020800000000000000000000000000000000000000000000000000000000000003080000000000000000000000000000000000000000000000000000000000000408000000000000000000000000000000000000000000000000000000000000050800000000000000000000000000000000000000000000000000000000000006080000000000000000000000000000000000000000000000000000000000000708000000000000000000000000000000000000000000000000000000000000080800000000000000000000000000000000000000000000000000000000000009080000000000000000000000000000000000000000000000000000000000000a080000000000000000000000000000000000000000000000000000000000000b080000000000000000000000000000000000000000000000000000000000000c080000000000000000000000000000000000000000000000000000000000000d080000000000000000000000000000000000000000000000000000000000000e080000000000000000000000000000000000000000000000000000000000000f0800000000000000000000000000000000000000000000000000000000000010080000000000000000000000000000000000000000000000000000000000001108000000000000000000000000000000000000000000000000000000000000120800000000000000000000000000000000000000000000000000000000000013080000000000000000000000000000000000000000000000000000000000001408000000000000000000000000000000000000000000000000000000000000150800000000000000000000000000000000000000000000000000000000000016080000000000000000000000000000000000000000000000000000000000001708000000000000000000000000000000000000000000000000000000000000180800000000000000000000000000000000000000000000000000000000000019080000000000000000000000000000000000000000000000000000000000001a080000000000000000000000000000000000000000000000000000000000001b080000000000000000000000000000000000000000000000000000000000001c080000000000000000000000000000000000000000000000000000000000001d080000000000000000000000000000000000000000000000000000000000001e080000000000000000000000000000000000000000000000000000000000001f0800000000000000000000000000000000000000000000000000000000000020080000000000000000000000000000000000000000000000000000000000002108000000000000000000000000000000000000000000000000000000000000220800000000000000000000000000000000000000000000000000000000000023080000000000000000000000000000000000000000000000000000000000002408000000000000000000000000000000000000000000000000000000000000250800000000000000000000000000000000000000000000000000000000000026080000000000000000000000000000000000000000000000000000000000002708000000000000000000000000000000000000000000000000000000000000280800000000000000000000000000000000000000000000000000000000000029080000000000000000000000000000000000000000000000000000000000002a080000000000000000000000000000000000000000000000000000000000002b080000000000000000000000000000000000000000000000000000000000002c080000000000000000000000000000000000000000000000000000000000002d080000000000000000000000000000000000000000000000000000000000002e080000000000000000000000000000000000000000000000000000000000002f0800000000000000000000000000000000000000000000000000000000000030080000000000000000000000000000000000000000000000000000000000003108000000000000000000000000000000000000000000000000000000000000320800000000000000000000000000000000000000000000000000000000000033080000000000000000000000000000000000000000000000000000000000003408000000000000000000000000000000000000000000000000000000000000350800000000000000000000000000000000000000000000000000000000000036080000000000000000000000000000000000000000000000000000000000003708000000000000000000000000000000000000000000000000000000000000380800000000000000000000000000000000000000000000000000000000000039080000000000000000000000000000000000000000000000000000000000003a080000000000000000000000000000000000000000000000000000000000003b080000000000000000000000000000000000000000000000000000000000003c080000000000000000000000000000000000000000000000000000000000003d080000000000000000000000000000000000000000000000000000000000003e080000000000000000000000000000000000000000000000000000000000003f0800000000000000000000000000000000000000000000000000000000000040080000000000000000000000000000000000000000000000000000000000004108000000000000000000000000000000000000000000000000000000000000420800000000000000000000000000000000000000000000000000000000000043080000000000000000000000000000000000000000000000000000000000004408000000000000000000000000000000000000000000000000000000000000450800000000000000000000000000000000000000000000000000000000000046080000000000000000000000000000000000000000000000000000000000004708000000000000000000000000000000000000000000000000000000000000480800000000000000000000000000000000000000000000000000000000000049080000000000000000000000000000000000000000000000000000000000004a080000000000000000000000000000000000000000000000000000000000004b080000000000000000000000000000000000000000000000000000000000004c080000000000000000000000000000000000000000000000000000000000004d080000000000000000000000000000000000000000000000000000000000004e080000000000000000000000000000000000000000000000000000000000004f0800000000000000000000000000000000000000000000000000000000000050080000000000000000000000000000000000000000000000000000000000005108000000000000000000000000000000000000000000000000000000000000520800000000000000000000000000000000000000000000000000000000000053080000000000000000000000000000000000000000000000000000000000005408000000000000000000000000000000000000000000000000000000000000550800000000000000000000000000000000000000000000000000000000000056080000000000000000000000000000000000000000000000000000000000005708000000000000000000000000000000000000000000000000000000000000580800000000000000000000000000000000000000000000000000000000000059080000000000000000000000000000000000000000000000000000000000005a080000000000000000000000000000000000000000000000000000000000005b080000000000000000000000000000000000000000000000000000000000005c080000000000000000000000000000000000000000000000000000000000005d080000000000000000000000000000000000000000000000000000000000005e080000000000000000000000000000000000000000000000000000000000005f0800000000000000000000000000000000000000000000000000000000000060080000000000000000000000000000000000000000000000000000000000006108000000000000000000000000000000000000000000000000000000000000620800000000000000000000000000000000000000000000000000000000000063080000000000000000000000000000000000000000000000000000000000006408000000000000000000000000000000000000000000000000000000000000650800000000000000000000000000000000000000000000000000000000000066080000000000000000000000000000000000000000000000000000000000006708000000000000000000000000000000000000000000000000000000000000680800000000000000000000000000000000000000000000000000000000000069080000000000000000000000000000000000000000000000000000000000006a080000000000000000000000000000000000000000000000000000000000006b080000000000000000000000000000000000000000000000000000000000006c080000000000000000000000000000000000000000000000000000000000006d080000000000000000000000000000000000000000000000000000000000006e080000000000000000000000000000000000000000000000000000000000006f0800000000000000000000000000000000000000000000000000000000000070080000000000000000000000000000000000000000000000000000000000007108000000000000000000000000000000000000000000000000000000000000720800000000000000000000000000000000000000000000000000000000000073080000000000000000000000000000000000000000000000000000000000007408000000000000000000000000000000000000000000000000000000000000750800000000000000000000000000000000000000000000000000000000000076080000000000000000000000000000000000000000000000000000000000007708000000000000000000000000000000000000000000000000000000000000780800000000000000000000000000000000000000000000000000000000000079080000000000000000000000000000000000000000000000000000000000007a080000000000000000000000000000000000000000000000000000000000007b080000000000000000000000000000000000000000000000000000000000007c080000000000000000000000000000000000000000000000000000000000007d080000000000000000000000000000000000000000000000000000000000007e080000000000000000000000000000000000000000000000000000000000007f0800000000000000000000000000000000000000000000000000000000000080080000000000000000000000000000000000000000000000000000000000008108000000000000000000000000000000000000000000000000000000000000820800000000000000000000000000000000000000000000000000000000000083080000000000000000000000000000000000000000000000000000000000008408000000000000000000000000000000000000000000000000000000000000850800000000000000000000000000000000000000000000000000000000000086080000000000000000000000000000000000000000000000000000000000008708000000000000000000000000000000000000000000000000000000000000880800000000000000000000000000000000000000000000000000000000000089080000000000000000000000000000000000000000000000000000000000008a080000000000000000000000000000000000000000000000000000000000008b080000000000000000000000000000000000000000000000000000000000008c080000000000000000000000000000000000000000000000000000000000008d080000000000000000000000000000000000000000000000000000000000008e080000000000000000000000000000000000000000000000000000000000008f0800000000000000000000000000000000000000000000000000000000000090080000000000000000000000000000000000000000000000000000000000009108000000000000000000000000000000000000000000000000000000000000920800000000000000000000000000000000000000000000000000000000000093080000000000000000000000000000000000000000000000000000000000009408000000000000000000000000000000000000000000000000000000000000950800000000000000000000000000000000000000000000000000000000000096080000000000000000000000000000000000000000000000000000000000009708000000000000000000000000000000000000000000000000000000000000980800000000000000000000000000000000000000000000000000000000000099080000000000000000000000000000000000000000000000000000000000009a080000000000000000000000000000000000000000000000000000000000009b080000000000000000000000000000000000000000000000000000000000009c080000000000000000000000000000000000000000000000000000000000009d080000000000000000000000000000000000000000000000000000000000009e080000000000000000000000000000000000000000000000000000000000009f08000000000000000000000000000000000000000000000000000000000000a008000000000000000000000000000000000000000000000000000000000000a108000000000000000000000000000000000000000000000000000000000000a208000000000000000000000000000000000000000000000000000000000000a308000000000000000000000000000000000000000000000000000000000000a408000000000000000000000000000000000000000000000000000000000000a508000000000000000000000000000000000000000000000000000000000000a608000000000000000000000000000000000000000000000000000000000000a708000000000000000000000000000000000000000000000000000000000000a808000000000000000000000000000000000000000000000000000000000000a908000000000000000000000000000000000000000000000000000000000000aa08000000000000000000000000000000000000000000000000000000000000ab08000000000000000000000000000000000000000000000000000000000000ac08000000000000000000000000000000000000000000000000000000000000ad08000000000000000000000000000000000000000000000000000000000000ae08000000000000000000000000000000000000000000000000000000000000af08000000000000000000000000000000000000000000000000000000000000b008000000000000000000000000000000000000000000000000000000000000b108000000000000000000000000000000000000000000000000000000000000b208000000000000000000000000000000000000000000000000000000000000b308000000000000000000000000000000000000000000000000000000000000b408000000000000000000000000000000000000000000000000000000000000b508000000000000000000000000000000000000000000000000000000000000b608000000000000000000000000000000000000000000000000000000000000b708000000000000000000000000000000000000000000000000000000000000b808000000000000000000000000000000000000000000000000000000000000b908000000000000000000000000000000000000000000000000000000000000ba08000000000000000000000000000000000000000000000000000000000000bb08000000000000000000000000000000000000000000000000000000000000bc08000000000000000000000000000000000000000000000000000000000000bd08000000000000000000000000000000000000000000000000000000000000be08000000000000000000000000000000000000000000000000000000000000bf08000000000000000000000000000000000000000000000000000000000000c008000000000000000000000000000000000000000000000000000000000000c108000000000000000000000000000000000000000000000000000000000000c208000000000000000000000000000000000000000000000000000000000000c308000000000000000000000000000000000000000000000000000000000000c408000000000000000000000000000000000000000000000000000000000000c508000000000000000000000000000000000000000000000000000000000000c608000000000000000000000000000000000000000000000000000000000000c708000000000000000000000000000000000000000000000000000000000000c808000000000000000000000000000000000000000000000000000000000000c908000000000000000000000000000000000000000000000000000000000000ca08000000000000000000000000000000000000000000000000000000000000cb08000000000000000000000000000000000000000000000000000000000000cc08000000000000000000000000000000000000000000000000000000000000cd08000000000000000000000000000000000000000000000000000000000000ce08000000000000000000000000000000000000000000000000000000000000cf08000000000000000000000000000000000000000000000000000000000000d008000000000000000000000000000000000000000000000000000000000000d108000000000000000000000000000000000000000000000000000000000000d208000000000000000000000000000000000000000000000000000000000000d308000000000000000000000000000000000000000000000000000000000000d408000000000000000000000000000000000000000000000000000000000000d508000000000000000000000000000000000000000000000000000000000000d608000000000000000000000000000000000000000000000000000000000000d708000000000000000000000000000000000000000000000000000000000000d808000000000000000000000000000000000000000000000000000000000000d908000000000000000000000000000000000000000000000000000000000000da08000000000000000000000000000000000000000000000000000000000000db08000000000000000000000000000000000000000000000000000000000000dc08000000000000000000000000000000000000000000000000000000000000dd08000000000000000000000000000000000000000000000000000000000000de08000000000000000000000000000000000000000000000000000000000000df08000000000000000000000000000000000000000000000000000000000000e008000000000000000000000000000000000000000000000000000000000000e108000000000000000000000000000000000000000000000000000000000000e208000000000000000000000000000000000000000000000000000000000000e308000000000000000000000000000000000000000000000000000000000000e408000000000000000000000000000000000000000000000000000000000000e508000000000000000000000000000000000000000000000000000000000000e608000000000000000000000000000000000000000000000000000000000000e708000000000000000000000000000000000000000000000000000000000000e808000000000000000000000000000000000000000000000000000000000000e908000000000000000000000000000000000000000000000000000000000000ea08000000000000000000000000000000000000000000000000000000000000eb08000000000000000000000000000000000000000000000000000000000000ec08000000000000000000000000000000000000000000000000000000000000ed08000000000000000000000000000000000000000000000000000000000000ee08000000000000000000000000000000000000000000000000000000000000ef08000000000000000000000000000000000000000000000000000000000000f008000000000000000000000000000000000000000000000000000000000000f108000000000000000000000000000000000000000000000000000000000000f208000000000000000000000000000000000000000000000000000000000000f308000000000000000000000000000000000000000000000000000000000000f408000000000000000000000000000000000000000000000000000000000000f508000000000000000000000000000000000000000000000000000000000000f608000000000000000000000000000000000000000000000000000000000000f708000000000000000000000000000000000000000000000000000000000000f808000000000000000000000000000000000000000000000000000000000000f908000000000000000000000000000000000000000000000000000000000000fa08000000000000000000000000000000000000000000000000000000000000fb08000000000000000000000000000000000000000000000000000000000000fc08000000000000000000000000000000000000000000000000000000000000fd08000000000000000000000000000000000000000000000000000000000000fe08000000000000000000000000000000000000000000000000000000000000ff0800000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000109000000000000000000000000000000000000000000000000000000000000020900000000000000000000000000000000000000000000000000000000000003090000000000000000000000000000000000000000000000000000000000000409000000000000000000000000000000000000000000000000000000000000050900000000000000000000000000000000000000000000000000000000000006090000000000000000000000000000000000000000000000000000000000000709000000000000000000000000000000000000000000000000000000000000080900000000000000000000000000000000000000000000000000000000000009090000000000000000000000000000000000000000000000000000000000000a090000000000000000000000000000000000000000000000000000000000000b090000000000000000000000000000000000000000000000000000000000000c090000000000000000000000000000000000000000000000000000000000000d090000000000000000000000000000000000000000000000000000000000000e090000000000000000000000000000000000000000000000000000000000000f0900000000000000000000000000000000000000000000000000000000000010090000000000000000000000000000000000000000000000000000000000001109000000000000000000000000000000000000000000000000000000000000120900000000000000000000000000000000000000000000000000000000000013090000000000000000000000000000000000000000000000000000000000001409000000000000000000000000000000000000000000000000000000000000150900000000000000000000000000000000000000000000000000000000000016090000000000000000000000000000000000000000000000000000000000001709000000000000000000000000000000000000000000000000000000000000180900000000000000000000000000000000000000000000000000000000000019090000000000000000000000000000000000000000000000000000000000001a090000000000000000000000000000000000000000000000000000000000001b090000000000000000000000000000000000000000000000000000000000001c090000000000000000000000000000000000000000000000000000000000001d090000000000000000000000000000000000000000000000000000000000001e090000000000000000000000000000000000000000000000000000000000001f0900000000000000000000000000000000000000000000000000000000000020090000000000000000000000000000000000000000000000000000000000002109000000000000000000000000000000000000000000000000000000000000220900000000000000000000000000000000000000000000000000000000000023090000000000000000000000000000000000000000000000000000000000002409000000000000000000000000000000000000000000000000000000000000250900000000000000000000000000000000000000000000000000000000000026090000000000000000000000000000000000000000000000000000000000002709000000000000000000000000000000000000000000000000000000000000280900000000000000000000000000000000000000000000000000000000000029090000000000000000000000000000000000000000000000000000000000002a090000000000000000000000000000000000000000000000000000000000002b090000000000000000000000000000000000000000000000000000000000002c090000000000000000000000000000000000000000000000000000000000002d090000000000000000000000000000000000000000000000000000000000002e090000000000000000000000000000000000000000000000000000000000002f0900000000000000000000000000000000000000000000000000000000000030090000000000000000000000000000000000000000000000000000000000003109000000000000000000000000000000000000000000000000000000000000320900000000000000000000000000000000000000000000000000000000000033090000000000000000000000000000000000000000000000000000000000003409000000000000000000000000000000000000000000000000000000000000350900000000000000000000000000000000000000000000000000000000000036090000000000000000000000000000000000000000000000000000000000003709000000000000000000000000000000000000000000000000000000000000380900000000000000000000000000000000000000000000000000000000000039090000000000000000000000000000000000000000000000000000000000003a090000000000000000000000000000000000000000000000000000000000003b090000000000000000000000000000000000000000000000000000000000003c090000000000000000000000000000000000000000000000000000000000003d090000000000000000000000000000000000000000000000000000000000003e090000000000000000000000000000000000000000000000000000000000003f0900000000000000000000000000000000000000000000000000000000000040090000000000000000000000000000000000000000000000000000000000004109000000000000000000000000000000000000000000000000000000000000420900000000000000000000000000000000000000000000000000000000000043090000000000000000000000000000000000000000000000000000000000004409000000000000000000000000000000000000000000000000000000000000450900000000000000000000000000000000000000000000000000000000000046090000000000000000000000000000000000000000000000000000000000004709000000000000000000000000000000000000000000000000000000000000480900000000000000000000000000000000000000000000000000000000000049090000000000000000000000000000000000000000000000000000000000004a090000000000000000000000000000000000000000000000000000000000004b090000000000000000000000000000000000000000000000000000000000004c090000000000000000000000000000000000000000000000000000000000004d090000000000000000000000000000000000000000000000000000000000004e090000000000000000000000000000000000000000000000000000000000004f0900000000000000000000000000000000000000000000000000000000000050090000000000000000000000000000000000000000000000000000000000005109000000000000000000000000000000000000000000000000000000000000520900000000000000000000000000000000000000000000000000000000000053090000000000000000000000000000000000000000000000000000000000005409000000000000000000000000000000000000000000000000000000000000550900000000000000000000000000000000000000000000000000000000000056090000000000000000000000000000000000000000000000000000000000005709000000000000000000000000000000000000000000000000000000000000580900000000000000000000000000000000000000000000000000000000000059090000000000000000000000000000000000000000000000000000000000005a090000000000000000000000000000000000000000000000000000000000005b090000000000000000000000000000000000000000000000000000000000005c090000000000000000000000000000000000000000000000000000000000005d090000000000000000000000000000000000000000000000000000000000005e090000000000000000000000000000000000000000000000000000000000005f0900000000000000000000000000000000000000000000000000000000000060090000000000000000000000000000000000000000000000000000000000006109000000000000000000000000000000000000000000000000000000000000620900000000000000000000000000000000000000000000000000000000000063090000000000000000000000000000000000000000000000000000000000006409000000000000000000000000000000000000000000000000000000000000650900000000000000000000000000000000000000000000000000000000000066090000000000000000000000000000000000000000000000000000000000006709000000000000000000000000000000000000000000000000000000000000680900000000000000000000000000000000000000000000000000000000000069090000000000000000000000000000000000000000000000000000000000006a090000000000000000000000000000000000000000000000000000000000006b090000000000000000000000000000000000000000000000000000000000006c090000000000000000000000000000000000000000000000000000000000006d090000000000000000000000000000000000000000000000000000000000006e090000000000000000000000000000000000000000000000000000000000006f0900000000000000000000000000000000000000000000000000000000000070090000000000000000000000000000000000000000000000000000000000007109000000000000000000000000000000000000000000000000000000000000720900000000000000000000000000000000000000000000000000000000000073090000000000000000000000000000000000000000000000000000000000007409000000000000000000000000000000000000000000000000000000000000750900000000000000000000000000000000000000000000000000000000000076090000000000000000000000000000000000000000000000000000000000007709000000000000000000000000000000000000000000000000000000000000780900000000000000000000000000000000000000000000000000000000000079090000000000000000000000000000000000000000000000000000000000007a090000000000000000000000000000000000000000000000000000000000007b090000000000000000000000000000000000000000000000000000000000007c090000000000000000000000000000000000000000000000000000000000007d090000000000000000000000000000000000000000000000000000000000007e090000000000000000000000000000000000000000000000000000000000007f0900000000000000000000000000000000000000000000000000000000000080090000000000000000000000000000000000000000000000000000000000008109000000000000000000000000000000000000000000000000000000000000820900000000000000000000000000000000000000000000000000000000000083090000000000000000000000000000000000000000000000000000000000008409000000000000000000000000000000000000000000000000000000000000850900000000000000000000000000000000000000000000000000000000000086090000000000000000000000000000000000000000000000000000000000008709000000000000000000000000000000000000000000000000000000000000880900000000000000000000000000000000000000000000000000000000000089090000000000000000000000000000000000000000000000000000000000008a090000000000000000000000000000000000000000000000000000000000008b090000000000000000000000000000000000000000000000000000000000008c090000000000000000000000000000000000000000000000000000000000008d090000000000000000000000000000000000000000000000000000000000008e090000000000000000000000000000000000000000000000000000000000008f0900000000000000000000000000000000000000000000000000000000000090090000000000000000000000000000000000000000000000000000000000009109000000000000000000000000000000000000000000000000000000000000920900000000000000000000000000000000000000000000000000000000000093090000000000000000000000000000000000000000000000000000000000009409000000000000000000000000000000000000000000000000000000000000950900000000000000000000000000000000000000000000000000000000000096090000000000000000000000000000000000000000000000000000000000009709000000000000000000000000000000000000000000000000000000000000980900000000000000000000000000000000000000000000000000000000000099090000000000000000000000000000000000000000000000000000000000009a090000000000000000000000000000000000000000000000000000000000009b090000000000000000000000000000000000000000000000000000000000009c090000000000000000000000000000000000000000000000000000000000009d090000000000000000000000000000000000000000000000000000000000009e090000000000000000000000000000000000000000000000000000000000009f09000000000000000000000000000000000000000000000000000000000000a009000000000000000000000000000000000000000000000000000000000000a109000000000000000000000000000000000000000000000000000000000000a209000000000000000000000000000000000000000000000000000000000000a309000000000000000000000000000000000000000000000000000000000000a409000000000000000000000000000000000000000000000000000000000000a509000000000000000000000000000000000000000000000000000000000000a609000000000000000000000000000000000000000000000000000000000000a709000000000000000000000000000000000000000000000000000000000000a809000000000000000000000000000000000000000000000000000000000000a909000000000000000000000000000000000000000000000000000000000000aa09000000000000000000000000000000000000000000000000000000000000ab09000000000000000000000000000000000000000000000000000000000000ac09000000000000000000000000000000000000000000000000000000000000ad09000000000000000000000000000000000000000000000000000000000000ae09000000000000000000000000000000000000000000000000000000000000af09000000000000000000000000000000000000000000000000000000000000b009000000000000000000000000000000000000000000000000000000000000b109000000000000000000000000000000000000000000000000000000000000b209000000000000000000000000000000000000000000000000000000000000b309000000000000000000000000000000000000000000000000000000000000b409000000000000000000000000000000000000000000000000000000000000b509000000000000000000000000000000000000000000000000000000000000b609000000000000000000000000000000000000000000000000000000000000b709000000000000000000000000000000000000000000000000000000000000b809000000000000000000000000000000000000000000000000000000000000b909000000000000000000000000000000000000000000000000000000000000ba09000000000000000000000000000000000000000000000000000000000000bb09000000000000000000000000000000000000000000000000000000000000bc09000000000000000000000000000000000000000000000000000000000000bd09000000000000000000000000000000000000000000000000000000000000be09000000000000000000000000000000000000000000000000000000000000bf09000000000000000000000000000000000000000000000000000000000000c009000000000000000000000000000000000000000000000000000000000000c109000000000000000000000000000000000000000000000000000000000000c209000000000000000000000000000000000000000000000000000000000000c309000000000000000000000000000000000000000000000000000000000000c409000000000000000000000000000000000000000000000000000000000000c509000000000000000000000000000000000000000000000000000000000000c609000000000000000000000000000000000000000000000000000000000000c709000000000000000000000000000000000000000000000000000000000000c809000000000000000000000000000000000000000000000000000000000000c909000000000000000000000000000000000000000000000000000000000000ca09000000000000000000000000000000000000000000000000000000000000cb09000000000000000000000000000000000000000000000000000000000000cc09000000000000000000000000000000000000000000000000000000000000cd09000000000000000000000000000000000000000000000000000000000000ce09000000000000000000000000000000000000000000000000000000000000cf09000000000000000000000000000000000000000000000000000000000000d009000000000000000000000000000000000000000000000000000000000000d109000000000000000000000000000000000000000000000000000000000000d209000000000000000000000000000000000000000000000000000000000000d309000000000000000000000000000000000000000000000000000000000000d409000000000000000000000000000000000000000000000000000000000000d509000000000000000000000000000000000000000000000000000000000000d609000000000000000000000000000000000000000000000000000000000000d709000000000000000000000000000000000000000000000000000000000000d809000000000000000000000000000000000000000000000000000000000000d909000000000000000000000000000000000000000000000000000000000000da09000000000000000000000000000000000000000000000000000000000000db09000000000000000000000000000000000000000000000000000000000000dc09000000000000000000000000000000000000000000000000000000000000dd09000000000000000000000000000000000000000000000000000000000000de09000000000000000000000000000000000000000000000000000000000000df09000000000000000000000000000000000000000000000000000000000000e009000000000000000000000000000000000000000000000000000000000000e109000000000000000000000000000000000000000000000000000000000000e209000000000000000000000000000000000000000000000000000000000000e309000000000000000000000000000000000000000000000000000000000000e409000000000000000000000000000000000000000000000000000000000000e509000000000000000000000000000000000000000000000000000000000000e609000000000000000000000000000000000000000000000000000000000000e709000000000000000000000000000000000000000000000000000000000000e809000000000000000000000000000000000000000000000000000000000000e909000000000000000000000000000000000000000000000000000000000000ea09000000000000000000000000000000000000000000000000000000000000eb09000000000000000000000000000000000000000000000000000000000000ec09000000000000000000000000000000000000000000000000000000000000ed09000000000000000000000000000000000000000000000000000000000000ee09000000000000000000000000000000000000000000000000000000000000ef09000000000000000000000000000000000000000000000000000000000000f009000000000000000000000000000000000000000000000000000000000000f109000000000000000000000000000000000000000000000000000000000000f209000000000000000000000000000000000000000000000000000000000000f309000000000000000000000000000000000000000000000000000000000000f409000000000000000000000000000000000000000000000000000000000000f509000000000000000000000000000000000000000000000000000000000000f609000000000000000000000000000000000000000000000000000000000000f709000000000000000000000000000000000000000000000000000000000000f809000000000000000000000000000000000000000000000000000000000000f909000000000000000000000000000000000000000000000000000000000000fa09000000000000000000000000000000000000000000000000000000000000fb09000000000000000000000000000000000000000000000000000000000000fc09000000000000000000000000000000000000000000000000000000000000fd09000000000000000000000000000000000000000000000000000000000000fe09000000000000000000000000000000000000000000000000000000000000ff09000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000010a000000000000000000000000000000000000000000000000000000000000020a000000000000000000000000000000000000000000000000000000000000030a000000000000000000000000000000000000000000000000000000000000040a000000000000000000000000000000000000000000000000000000000000050a000000000000000000000000000000000000000000000000000000000000060a000000000000000000000000000000000000000000000000000000000000070a000000000000000000000000000000000000000000000000000000000000080a000000000000000000000000000000000000000000000000000000000000090a0000000000000000000000000000000000000000000000000000000000000a0a0000000000000000000000000000000000000000000000000000000000000b0a0000000000000000000000000000000000000000000000000000000000000c0a0000000000000000000000000000000000000000000000000000000000000d0a0000000000000000000000000000000000000000000000000000000000000e0a0000000000000000000000000000000000000000000000000000000000000f0a000000000000000000000000000000000000000000000000000000000000100a000000000000000000000000000000000000000000000000000000000000110a000000000000000000000000000000000000000000000000000000000000120a000000000000000000000000000000000000000000000000000000000000130a000000000000000000000000000000000000000000000000000000000000140a000000000000000000000000000000000000000000000000000000000000150a000000000000000000000000000000000000000000000000000000000000160a000000000000000000000000000000000000000000000000000000000000170a000000000000000000000000000000000000000000000000000000000000180a000000000000000000000000000000000000000000000000000000000000190a0000000000000000000000000000000000000000000000000000000000001a0a0000000000000000000000000000000000000000000000000000000000001b0a0000000000000000000000000000000000000000000000000000000000001c0a0000000000000000000000000000000000000000000000000000000000001d0a0000000000000000000000000000000000000000000000000000000000001e0a0000000000000000000000000000000000000000000000000000000000001f0a000000000000000000000000000000000000000000000000000000000000200a000000000000000000000000000000000000000000000000000000000000210a000000000000000000000000000000000000000000000000000000000000220a000000000000000000000000000000000000000000000000000000000000230a000000000000000000000000000000000000000000000000000000000000240a000000000000000000000000000000000000000000000000000000000000250a000000000000000000000000000000000000000000000000000000000000260a000000000000000000000000000000000000000000000000000000000000270a000000000000000000000000000000000000000000000000000000000000280a000000000000000000000000000000000000000000000000000000000000290a0000000000000000000000000000000000000000000000000000000000002a0a0000000000000000000000000000000000000000000000000000000000002b0a0000000000000000000000000000000000000000000000000000000000002c0a0000000000000000000000000000000000000000000000000000000000002d0a0000000000000000000000000000000000000000000000000000000000002e0a0000000000000000000000000000000000000000000000000000000000002f0a000000000000000000000000000000000000000000000000000000000000300a000000000000000000000000000000000000000000000000000000000000310a000000000000000000000000000000000000000000000000000000000000320a000000000000000000000000000000000000000000000000000000000000330a000000000000000000000000000000000000000000000000000000000000340a000000000000000000000000000000000000000000000000000000000000350a000000000000000000000000000000000000000000000000000000000000360a000000000000000000000000000000000000000000000000000000000000370a000000000000000000000000000000000000000000000000000000000000380a000000000000000000000000000000000000000000000000000000000000390a0000000000000000000000000000000000000000000000000000000000003a0a0000000000000000000000000000000000000000000000000000000000003b0a0000000000000000000000000000000000000000000000000000000000003c0a0000000000000000000000000000000000000000000000000000000000003d0a0000000000000000000000000000000000000000000000000000000000003e0a0000000000000000000000000000000000000000000000000000000000003f0a000000000000000000000000000000000000000000000000000000000000400a000000000000000000000000000000000000000000000000000000000000410a000000000000000000000000000000000000000000000000000000000000420a000000000000000000000000000000000000000000000000000000000000430a000000000000000000000000000000000000000000000000000000000000440a000000000000000000000000000000000000000000000000000000000000450a000000000000000000000000000000000000000000000000000000000000460a000000000000000000000000000000000000000000000000000000000000470a000000000000000000000000000000000000000000000000000000000000480a000000000000000000000000000000000000000000000000000000000000490a0000000000000000000000000000000000000000000000000000000000004a0a0000000000000000000000000000000000000000000000000000000000004b0a0000000000000000000000000000000000000000000000000000000000004c0a0000000000000000000000000000000000000000000000000000000000004d0a0000000000000000000000000000000000000000000000000000000000004e0a0000000000000000000000000000000000000000000000000000000000004f0a000000000000000000000000000000000000000000000000000000000000500a000000000000000000000000000000000000000000000000000000000000510a000000000000000000000000000000000000000000000000000000000000520a000000000000000000000000000000000000000000000000000000000000530a000000000000000000000000000000000000000000000000000000000000540a000000000000000000000000000000000000000000000000000000000000550a000000000000000000000000000000000000000000000000000000000000560a000000000000000000000000000000000000000000000000000000000000570a000000000000000000000000000000000000000000000000000000000000580a000000000000000000000000000000000000000000000000000000000000590a0000000000000000000000000000000000000000000000000000000000005a0a0000000000000000000000000000000000000000000000000000000000005b0a0000000000000000000000000000000000000000000000000000000000005c0a0000000000000000000000000000000000000000000000000000000000005d0a0000000000000000000000000000000000000000000000000000000000005e0a0000000000000000000000000000000000000000000000000000000000005f0a000000000000000000000000000000000000000000000000000000000000600a000000000000000000000000000000000000000000000000000000000000610a000000000000000000000000000000000000000000000000000000000000620a000000000000000000000000000000000000000000000000000000000000630a000000000000000000000000000000000000000000000000000000000000640a000000000000000000000000000000000000000000000000000000000000650a000000000000000000000000000000000000000000000000000000000000660a000000000000000000000000000000000000000000000000000000000000670a000000000000000000000000000000000000000000000000000000000000680a000000000000000000000000000000000000000000000000000000000000690a0000000000000000000000000000000000000000000000000000000000006a0a0000000000000000000000000000000000000000000000000000000000006b0a0000000000000000000000000000000000000000000000000000000000006c0a0000000000000000000000000000000000000000000000000000000000006d0a0000000000000000000000000000000000000000000000000000000000006e0a0000000000000000000000000000000000000000000000000000000000006f0a000000000000000000000000000000000000000000000000000000000000700a000000000000000000000000000000000000000000000000000000000000710a000000000000000000000000000000000000000000000000000000000000720a000000000000000000000000000000000000000000000000000000000000730a000000000000000000000000000000000000000000000000000000000000740a000000000000000000000000000000000000000000000000000000000000750a000000000000000000000000000000000000000000000000000000000000760a000000000000000000000000000000000000000000000000000000000000770a000000000000000000000000000000000000000000000000000000000000780a000000000000000000000000000000000000000000000000000000000000790a0000000000000000000000000000000000000000000000000000000000007a0a0000000000000000000000000000000000000000000000000000000000007b0a0000000000000000000000000000000000000000000000000000000000007c0a0000000000000000000000000000000000000000000000000000000000007d0a0000000000000000000000000000000000000000000000000000000000007e0a0000000000000000000000000000000000000000000000000000000000007f0a000000000000000000000000000000000000000000000000000000000000800a000000000000000000000000000000000000000000000000000000000000810a000000000000000000000000000000000000000000000000000000000000820a000000000000000000000000000000000000000000000000000000000000830a000000000000000000000000000000000000000000000000000000000000840a000000000000000000000000000000000000000000000000000000000000850a000000000000000000000000000000000000000000000000000000000000860a000000000000000000000000000000000000000000000000000000000000870a000000000000000000000000000000000000000000000000000000000000880a000000000000000000000000000000000000000000000000000000000000890a0000000000000000000000000000000000000000000000000000000000008a0a0000000000000000000000000000000000000000000000000000000000008b0a0000000000000000000000000000000000000000000000000000000000008c0a0000000000000000000000000000000000000000000000000000000000008d0a0000000000000000000000000000000000000000000000000000000000008e0a0000000000000000000000000000000000000000000000000000000000008f0a000000000000000000000000000000000000000000000000000000000000900a000000000000000000000000000000000000000000000000000000000000910a000000000000000000000000000000000000000000000000000000000000920a000000000000000000000000000000000000000000000000000000000000930a000000000000000000000000000000000000000000000000000000000000940a000000000000000000000000000000000000000000000000000000000000950a000000000000000000000000000000000000000000000000000000000000960a000000000000000000000000000000000000000000000000000000000000970a000000000000000000000000000000000000000000000000000000000000980a000000000000000000000000000000000000000000000000000000000000990a0000000000000000000000000000000000000000000000000000000000009a0a0000000000000000000000000000000000000000000000000000000000009b0a0000000000000000000000000000000000000000000000000000000000009c0a0000000000000000000000000000000000000000000000000000000000009d0a0000000000000000000000000000000000000000000000000000000000009e0a0000000000000000000000000000000000000000000000000000000000009f0a000000000000000000000000000000000000000000000000000000000000a00a000000000000000000000000000000000000000000000000000000000000a10a000000000000000000000000000000000000000000000000000000000000a20a000000000000000000000000000000000000000000000000000000000000a30a000000000000000000000000000000000000000000000000000000000000a40a000000000000000000000000000000000000000000000000000000000000a50a000000000000000000000000000000000000000000000000000000000000a60a000000000000000000000000000000000000000000000000000000000000a70a000000000000000000000000000000000000000000000000000000000000a80a000000000000000000000000000000000000000000000000000000000000a90a000000000000000000000000000000000000000000000000000000000000aa0a000000000000000000000000000000000000000000000000000000000000ab0a000000000000000000000000000000000000000000000000000000000000ac0a000000000000000000000000000000000000000000000000000000000000ad0a000000000000000000000000000000000000000000000000000000000000ae0a000000000000000000000000000000000000000000000000000000000000af0a000000000000000000000000000000000000000000000000000000000000b00a000000000000000000000000000000000000000000000000000000000000b10a000000000000000000000000000000000000000000000000000000000000b20a000000000000000000000000000000000000000000000000000000000000b30a000000000000000000000000000000000000000000000000000000000000b40a000000000000000000000000000000000000000000000000000000000000b50a000000000000000000000000000000000000000000000000000000000000b60a000000000000000000000000000000000000000000000000000000000000b70a000000000000000000000000000000000000000000000000000000000000b80a000000000000000000000000000000000000000000000000000000000000b90a000000000000000000000000000000000000000000000000000000000000ba0a000000000000000000000000000000000000000000000000000000000000bb0a000000000000000000000000000000000000000000000000000000000000bc0a000000000000000000000000000000000000000000000000000000000000bd0a000000000000000000000000000000000000000000000000000000000000be0a000000000000000000000000000000000000000000000000000000000000bf0a000000000000000000000000000000000000000000000000000000000000c00a000000000000000000000000000000000000000000000000000000000000c10a000000000000000000000000000000000000000000000000000000000000c20a000000000000000000000000000000000000000000000000000000000000c30a000000000000000000000000000000000000000000000000000000000000c40a000000000000000000000000000000000000000000000000000000000000c50a000000000000000000000000000000000000000000000000000000000000c60a000000000000000000000000000000000000000000000000000000000000c70a000000000000000000000000000000000000000000000000000000000000c80a000000000000000000000000000000000000000000000000000000000000c90a000000000000000000000000000000000000000000000000000000000000ca0a000000000000000000000000000000000000000000000000000000000000cb0a000000000000000000000000000000000000000000000000000000000000cc0a000000000000000000000000000000000000000000000000000000000000cd0a000000000000000000000000000000000000000000000000000000000000ce0a000000000000000000000000000000000000000000000000000000000000cf0a000000000000000000000000000000000000000000000000000000000000d00a000000000000000000000000000000000000000000000000000000000000d10a000000000000000000000000000000000000000000000000000000000000d20a000000000000000000000000000000000000000000000000000000000000d30a000000000000000000000000000000000000000000000000000000000000d40a000000000000000000000000000000000000000000000000000000000000d50a000000000000000000000000000000000000000000000000000000000000d60a000000000000000000000000000000000000000000000000000000000000d70a000000000000000000000000000000000000000000000000000000000000d80a000000000000000000000000000000000000000000000000000000000000d90a000000000000000000000000000000000000000000000000000000000000da0a000000000000000000000000000000000000000000000000000000000000db0a000000000000000000000000000000000000000000000000000000000000dc0a000000000000000000000000000000000000000000000000000000000000dd0a000000000000000000000000000000000000000000000000000000000000de0a000000000000000000000000000000000000000000000000000000000000df0a000000000000000000000000000000000000000000000000000000000000e00a000000000000000000000000000000000000000000000000000000000000e10a000000000000000000000000000000000000000000000000000000000000e20a000000000000000000000000000000000000000000000000000000000000e30a000000000000000000000000000000000000000000000000000000000000e40a000000000000000000000000000000000000000000000000000000000000e50a000000000000000000000000000000000000000000000000000000000000e60a000000000000000000000000000000000000000000000000000000000000e70a000000000000000000000000000000000000000000000000000000000000e80a000000000000000000000000000000000000000000000000000000000000e90a000000000000000000000000000000000000000000000000000000000000ea0a000000000000000000000000000000000000000000000000000000000000eb0a000000000000000000000000000000000000000000000000000000000000ec0a000000000000000000000000000000000000000000000000000000000000ed0a000000000000000000000000000000000000000000000000000000000000ee0a000000000000000000000000000000000000000000000000000000000000ef0a000000000000000000000000000000000000000000000000000000000000f00a000000000000000000000000000000000000000000000000000000000000f10a000000000000000000000000000000000000000000000000000000000000f20a000000000000000000000000000000000000000000000000000000000000f30a000000000000000000000000000000000000000000000000000000000000f40a000000000000000000000000000000000000000000000000000000000000f50a000000000000000000000000000000000000000000000000000000000000f60a000000000000000000000000000000000000000000000000000000000000f70a000000000000000000000000000000000000000000000000000000000000f80a000000000000000000000000000000000000000000000000000000000000f90a000000000000000000000000000000000000000000000000000000000000fa0a000000000000000000000000000000000000000000000000000000000000fb0a000000000000000000000000000000000000000000000000000000000000fc0a000000000000000000000000000000000000000000000000000000000000fd0a000000000000000000000000000000000000000000000000000000000000fe0a000000000000000000000000000000000000000000000000000000000000ff0a000000000000000000000000000000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000010b000000000000000000000000000000000000000000000000000000000000020b000000000000000000000000000000000000000000000000000000000000030b000000000000000000000000000000000000000000000000000000000000040b000000000000000000000000000000000000000000000000000000000000050b000000000000000000000000000000000000000000000000000000000000060b000000000000000000000000000000000000000000000000000000000000070b000000000000000000000000000000000000000000000000000000000000080b000000000000000000000000000000000000000000000000000000000000090b0000000000000000000000000000000000000000000000000000000000000a0b0000000000000000000000000000000000000000000000000000000000000b0b0000000000000000000000000000000000000000000000000000000000000c0b0000000000000000000000000000000000000000000000000000000000000d0b0000000000000000000000000000000000000000000000000000000000000e0b0000000000000000000000000000000000000000000000000000000000000f0b000000000000000000000000000000000000000000000000000000000000100b000000000000000000000000000000000000000000000000000000000000110b000000000000000000000000000000000000000000000000000000000000120b000000000000000000000000000000000000000000000000000000000000130b000000000000000000000000000000000000000000000000000000000000140b000000000000000000000000000000000000000000000000000000000000150b000000000000000000000000000000000000000000000000000000000000160b000000000000000000000000000000000000000000000000000000000000170b000000000000000000000000000000000000000000000000000000000000180b000000000000000000000000000000000000000000000000000000000000190b0000000000000000000000000000000000000000000000000000000000001a0b0000000000000000000000000000000000000000000000000000000000001b0b0000000000000000000000000000000000000000000000000000000000001c0b0000000000000000000000000000000000000000000000000000000000001d0b0000000000000000000000000000000000000000000000000000000000001e0b0000000000000000000000000000000000000000000000000000000000001f0b000000000000000000000000000000000000000000000000000000000000200b000000000000000000000000000000000000000000000000000000000000210b000000000000000000000000000000000000000000000000000000000000220b000000000000000000000000000000000000000000000000000000000000230b000000000000000000000000000000000000000000000000000000000000240b000000000000000000000000000000000000000000000000000000000000250b000000000000000000000000000000000000000000000000000000000000260b000000000000000000000000000000000000000000000000000000000000270b000000000000000000000000000000000000000000000000000000000000280b000000000000000000000000000000000000000000000000000000000000290b0000000000000000000000000000000000000000000000000000000000002a0b0000000000000000000000000000000000000000000000000000000000002b0b0000000000000000000000000000000000000000000000000000000000002c0b0000000000000000000000000000000000000000000000000000000000002d0b0000000000000000000000000000000000000000000000000000000000002e0b0000000000000000000000000000000000000000000000000000000000002f0b000000000000000000000000000000000000000000000000000000000000300b000000000000000000000000000000000000000000000000000000000000310b000000000000000000000000000000000000000000000000000000000000320b000000000000000000000000000000000000000000000000000000000000330b000000000000000000000000000000000000000000000000000000000000340b000000000000000000000000000000000000000000000000000000000000350b000000000000000000000000000000000000000000000000000000000000360b000000000000000000000000000000000000000000000000000000000000370b000000000000000000000000000000000000000000000000000000000000380b000000000000000000000000000000000000000000000000000000000000390b0000000000000000000000000000000000000000000000000000000000003a0b0000000000000000000000000000000000000000000000000000000000003b0b0000000000000000000000000000000000000000000000000000000000003c0b0000000000000000000000000000000000000000000000000000000000003d0b0000000000000000000000000000000000000000000000000000000000003e0b0000000000000000000000000000000000000000000000000000000000003f0b000000000000000000000000000000000000000000000000000000000000400b000000000000000000000000000000000000000000000000000000000000410b000000000000000000000000000000000000000000000000000000000000420b000000000000000000000000000000000000000000000000000000000000430b000000000000000000000000000000000000000000000000000000000000440b000000000000000000000000000000000000000000000000000000000000450b000000000000000000000000000000000000000000000000000000000000460b000000000000000000000000000000000000000000000000000000000000470b000000000000000000000000000000000000000000000000000000000000480b000000000000000000000000000000000000000000000000000000000000490b0000000000000000000000000000000000000000000000000000000000004a0b0000000000000000000000000000000000000000000000000000000000004b0b0000000000000000000000000000000000000000000000000000000000004c0b0000000000000000000000000000000000000000000000000000000000004d0b0000000000000000000000000000000000000000000000000000000000004e0b0000000000000000000000000000000000000000000000000000000000004f0b000000000000000000000000000000000000000000000000000000000000500b000000000000000000000000000000000000000000000000000000000000510b000000000000000000000000000000000000000000000000000000000000520b000000000000000000000000000000000000000000000000000000000000530b000000000000000000000000000000000000000000000000000000000000540b000000000000000000000000000000000000000000000000000000000000550b000000000000000000000000000000000000000000000000000000000000560b000000000000000000000000000000000000000000000000000000000000570b000000000000000000000000000000000000000000000000000000000000580b000000000000000000000000000000000000000000000000000000000000590b0000000000000000000000000000000000000000000000000000000000005a0b0000000000000000000000000000000000000000000000000000000000005b0b0000000000000000000000000000000000000000000000000000000000005c0b0000000000000000000000000000000000000000000000000000000000005d0b0000000000000000000000000000000000000000000000000000000000005e0b0000000000000000000000000000000000000000000000000000000000005f0b000000000000000000000000000000000000000000000000000000000000600b000000000000000000000000000000000000000000000000000000000000610b000000000000000000000000000000000000000000000000000000000000620b000000000000000000000000000000000000000000000000000000000000630b000000000000000000000000000000000000000000000000000000000000640b000000000000000000000000000000000000000000000000000000000000650b000000000000000000000000000000000000000000000000000000000000660b000000000000000000000000000000000000000000000000000000000000670b000000000000000000000000000000000000000000000000000000000000680b000000000000000000000000000000000000000000000000000000000000690b0000000000000000000000000000000000000000000000000000000000006a0b0000000000000000000000000000000000000000000000000000000000006b0b0000000000000000000000000000000000000000000000000000000000006c0b0000000000000000000000000000000000000000000000000000000000006d0b0000000000000000000000000000000000000000000000000000000000006e0b0000000000000000000000000000000000000000000000000000000000006f0b000000000000000000000000000000000000000000000000000000000000700b000000000000000000000000000000000000000000000000000000000000710b000000000000000000000000000000000000000000000000000000000000720b000000000000000000000000000000000000000000000000000000000000730b000000000000000000000000000000000000000000000000000000000000740b000000000000000000000000000000000000000000000000000000000000750b000000000000000000000000000000000000000000000000000000000000760b000000000000000000000000000000000000000000000000000000000000770b000000000000000000000000000000000000000000000000000000000000780b000000000000000000000000000000000000000000000000000000000000790b0000000000000000000000000000000000000000000000000000000000007a0b0000000000000000000000000000000000000000000000000000000000007b0b0000000000000000000000000000000000000000000000000000000000007c0b0000000000000000000000000000000000000000000000000000000000007d0b0000000000000000000000000000000000000000000000000000000000007e0b0000000000000000000000000000000000000000000000000000000000007f0b000000000000000000000000000000000000000000000000000000000000800b000000000000000000000000000000000000000000000000000000000000810b000000000000000000000000000000000000000000000000000000000000820b000000000000000000000000000000000000000000000000000000000000830b000000000000000000000000000000000000000000000000000000000000840b000000000000000000000000000000000000000000000000000000000000850b000000000000000000000000000000000000000000000000000000000000860b000000000000000000000000000000000000000000000000000000000000870b000000000000000000000000000000000000000000000000000000000000880b000000000000000000000000000000000000000000000000000000000000890b0000000000000000000000000000000000000000000000000000000000008a0b0000000000000000000000000000000000000000000000000000000000008b0b0000000000000000000000000000000000000000000000000000000000008c0b0000000000000000000000000000000000000000000000000000000000008d0b0000000000000000000000000000000000000000000000000000000000008e0b0000000000000000000000000000000000000000000000000000000000008f0b000000000000000000000000000000000000000000000000000000000000900b000000000000000000000000000000000000000000000000000000000000910b000000000000000000000000000000000000000000000000000000000000920b000000000000000000000000000000000000000000000000000000000000930b000000000000000000000000000000000000000000000000000000000000940b000000000000000000000000000000000000000000000000000000000000950b000000000000000000000000000000000000000000000000000000000000960b000000000000000000000000000000000000000000000000000000000000970b000000000000000000000000000000000000000000000000000000000000980b000000000000000000000000000000000000000000000000000000000000990b0000000000000000000000000000000000000000000000000000000000009a0b0000000000000000000000000000000000000000000000000000000000009b0b0000000000000000000000000000000000000000000000000000000000009c0b0000000000000000000000000000000000000000000000000000000000009d0b0000000000000000000000000000000000000000000000000000000000009e0b0000000000000000000000000000000000000000000000000000000000009f0b000000000000000000000000000000000000000000000000000000000000a00b000000000000000000000000000000000000000000000000000000000000a10b000000000000000000000000000000000000000000000000000000000000a20b000000000000000000000000000000000000000000000000000000000000a30b000000000000000000000000000000000000000000000000000000000000a40b000000000000000000000000000000000000000000000000000000000000a50b000000000000000000000000000000000000000000000000000000000000a60b000000000000000000000000000000000000000000000000000000000000a70b000000000000000000000000000000000000000000000000000000000000a80b000000000000000000000000000000000000000000000000000000000000a90b000000000000000000000000000000000000000000000000000000000000aa0b000000000000000000000000000000000000000000000000000000000000ab0b000000000000000000000000000000000000000000000000000000000000ac0b000000000000000000000000000000000000000000000000000000000000ad0b000000000000000000000000000000000000000000000000000000000000ae0b000000000000000000000000000000000000000000000000000000000000af0b000000000000000000000000000000000000000000000000000000000000b00b000000000000000000000000000000000000000000000000000000000000b10b000000000000000000000000000000000000000000000000000000000000b20b000000000000000000000000000000000000000000000000000000000000b30b000000000000000000000000000000000000000000000000000000000000b40b000000000000000000000000000000000000000000000000000000000000b50b000000000000000000000000000000000000000000000000000000000000b60b000000000000000000000000000000000000000000000000000000000000b70b000000000000000000000000000000000000000000000000000000000000b80b000000000000000000000000000000000000000000000000000000000000b90b000000000000000000000000000000000000000000000000000000000000ba0b000000000000000000000000000000000000000000000000000000000000bb0b000000000000000000000000000000000000000000000000000000000000bc0b000000000000000000000000000000000000000000000000000000000000bd0b000000000000000000000000000000000000000000000000000000000000be0b000000000000000000000000000000000000000000000000000000000000bf0b000000000000000000000000000000000000000000000000000000000000c00b000000000000000000000000000000000000000000000000000000000000c10b000000000000000000000000000000000000000000000000000000000000c20b000000000000000000000000000000000000000000000000000000000000c30b000000000000000000000000000000000000000000000000000000000000c40b000000000000000000000000000000000000000000000000000000000000c50b000000000000000000000000000000000000000000000000000000000000c60b000000000000000000000000000000000000000000000000000000000000c70b000000000000000000000000000000000000000000000000000000000000c80b000000000000000000000000000000000000000000000000000000000000c90b000000000000000000000000000000000000000000000000000000000000ca0b000000000000000000000000000000000000000000000000000000000000cb0b000000000000000000000000000000000000000000000000000000000000cc0b000000000000000000000000000000000000000000000000000000000000cd0b000000000000000000000000000000000000000000000000000000000000ce0b000000000000000000000000000000000000000000000000000000000000cf0b000000000000000000000000000000000000000000000000000000000000d00b000000000000000000000000000000000000000000000000000000000000d10b000000000000000000000000000000000000000000000000000000000000d20b000000000000000000000000000000000000000000000000000000000000d30b000000000000000000000000000000000000000000000000000000000000d40b000000000000000000000000000000000000000000000000000000000000d50b000000000000000000000000000000000000000000000000000000000000d60b000000000000000000000000000000000000000000000000000000000000d70b000000000000000000000000000000000000000000000000000000000000d80b000000000000000000000000000000000000000000000000000000000000d90b000000000000000000000000000000000000000000000000000000000000da0b000000000000000000000000000000000000000000000000000000000000db0b000000000000000000000000000000000000000000000000000000000000dc0b000000000000000000000000000000000000000000000000000000000000dd0b000000000000000000000000000000000000000000000000000000000000de0b000000000000000000000000000000000000000000000000000000000000df0b000000000000000000000000000000000000000000000000000000000000e00b000000000000000000000000000000000000000000000000000000000000e10b000000000000000000000000000000000000000000000000000000000000e20b000000000000000000000000000000000000000000000000000000000000e30b000000000000000000000000000000000000000000000000000000000000e40b000000000000000000000000000000000000000000000000000000000000e50b000000000000000000000000000000000000000000000000000000000000e60b000000000000000000000000000000000000000000000000000000000000e70b000000000000000000000000000000000000000000000000000000000000e80b000000000000000000000000000000000000000000000000000000000000e90b000000000000000000000000000000000000000000000000000000000000ea0b000000000000000000000000000000000000000000000000000000000000eb0b000000000000000000000000000000000000000000000000000000000000ec0b000000000000000000000000000000000000000000000000000000000000ed0b000000000000000000000000000000000000000000000000000000000000ee0b000000000000000000000000000000000000000000000000000000000000ef0b000000000000000000000000000000000000000000000000000000000000f00b000000000000000000000000000000000000000000000000000000000000f10b000000000000000000000000000000000000000000000000000000000000f20b000000000000000000000000000000000000000000000000000000000000f30b000000000000000000000000000000000000000000000000000000000000f40b000000000000000000000000000000000000000000000000000000000000f50b000000000000000000000000000000000000000000000000000000000000f60b000000000000000000000000000000000000000000000000000000000000f70b000000000000000000000000000000000000000000000000000000000000f80b000000000000000000000000000000000000000000000000000000000000f90b000000000000000000000000000000000000000000000000000000000000fa0b000000000000000000000000000000000000000000000000000000000000fb0b000000000000000000000000000000000000000000000000000000000000fc0b000000000000000000000000000000000000000000000000000000000000fd0b000000000000000000000000000000000000000000000000000000000000fe0b000000000000000000000000000000000000000000000000000000000000ff0b000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000010c000000000000000000000000000000000000000000000000000000000000020c000000000000000000000000000000000000000000000000000000000000030c000000000000000000000000000000000000000000000000000000000000040c000000000000000000000000000000000000000000000000000000000000050c000000000000000000000000000000000000000000000000000000000000060c000000000000000000000000000000000000000000000000000000000000070c000000000000000000000000000000000000000000000000000000000000080c000000000000000000000000000000000000000000000000000000000000090c0000000000000000000000000000000000000000000000000000000000000a0c0000000000000000000000000000000000000000000000000000000000000b0c0000000000000000000000000000000000000000000000000000000000000c0c0000000000000000000000000000000000000000000000000000000000000d0c0000000000000000000000000000000000000000000000000000000000000e0c0000000000000000000000000000000000000000000000000000000000000f0c000000000000000000000000000000000000000000000000000000000000100c000000000000000000000000000000000000000000000000000000000000110c000000000000000000000000000000000000000000000000000000000000120c000000000000000000000000000000000000000000000000000000000000130c000000000000000000000000000000000000000000000000000000000000140c000000000000000000000000000000000000000000000000000000000000150c000000000000000000000000000000000000000000000000000000000000160c000000000000000000000000000000000000000000000000000000000000170c000000000000000000000000000000000000000000000000000000000000180c000000000000000000000000000000000000000000000000000000000000190c0000000000000000000000000000000000000000000000000000000000001a0c0000000000000000000000000000000000000000000000000000000000001b0c0000000000000000000000000000000000000000000000000000000000001c0c0000000000000000000000000000000000000000000000000000000000001d0c0000000000000000000000000000000000000000000000000000000000001e0c0000000000000000000000000000000000000000000000000000000000001f0c000000000000000000000000000000000000000000000000000000000000200c000000000000000000000000000000000000000000000000000000000000210c000000000000000000000000000000000000000000000000000000000000220c000000000000000000000000000000000000000000000000000000000000230c000000000000000000000000000000000000000000000000000000000000240c000000000000000000000000000000000000000000000000000000000000250c000000000000000000000000000000000000000000000000000000000000260c000000000000000000000000000000000000000000000000000000000000270c000000000000000000000000000000000000000000000000000000000000280c000000000000000000000000000000000000000000000000000000000000290c0000000000000000000000000000000000000000000000000000000000002a0c0000000000000000000000000000000000000000000000000000000000002b0c0000000000000000000000000000000000000000000000000000000000002c0c0000000000000000000000000000000000000000000000000000000000002d0c0000000000000000000000000000000000000000000000000000000000002e0c0000000000000000000000000000000000000000000000000000000000002f0c000000000000000000000000000000000000000000000000000000000000300c000000000000000000000000000000000000000000000000000000000000310c000000000000000000000000000000000000000000000000000000000000320c000000000000000000000000000000000000000000000000000000000000330c000000000000000000000000000000000000000000000000000000000000340c000000000000000000000000000000000000000000000000000000000000350c000000000000000000000000000000000000000000000000000000000000360c000000000000000000000000000000000000000000000000000000000000370c000000000000000000000000000000000000000000000000000000000000380c000000000000000000000000000000000000000000000000000000000000390c0000000000000000000000000000000000000000000000000000000000003a0c0000000000000000000000000000000000000000000000000000000000003b0c0000000000000000000000000000000000000000000000000000000000003c0c0000000000000000000000000000000000000000000000000000000000003d0c0000000000000000000000000000000000000000000000000000000000003e0c0000000000000000000000000000000000000000000000000000000000003f0c000000000000000000000000000000000000000000000000000000000000400c000000000000000000000000000000000000000000000000000000000000410c000000000000000000000000000000000000000000000000000000000000420c000000000000000000000000000000000000000000000000000000000000430c000000000000000000000000000000000000000000000000000000000000440c000000000000000000000000000000000000000000000000000000000000450c000000000000000000000000000000000000000000000000000000000000460c000000000000000000000000000000000000000000000000000000000000470c000000000000000000000000000000000000000000000000000000000000480c000000000000000000000000000000000000000000000000000000000000490c0000000000000000000000000000000000000000000000000000000000004a0c0000000000000000000000000000000000000000000000000000000000004b0c0000000000000000000000000000000000000000000000000000000000004c0c0000000000000000000000000000000000000000000000000000000000004d0c0000000000000000000000000000000000000000000000000000000000004e0c0000000000000000000000000000000000000000000000000000000000004f0c000000000000000000000000000000000000000000000000000000000000500c000000000000000000000000000000000000000000000000000000000000510c000000000000000000000000000000000000000000000000000000000000520c000000000000000000000000000000000000000000000000000000000000530c000000000000000000000000000000000000000000000000000000000000540c000000000000000000000000000000000000000000000000000000000000550c000000000000000000000000000000000000000000000000000000000000560c000000000000000000000000000000000000000000000000000000000000570c000000000000000000000000000000000000000000000000000000000000580c000000000000000000000000000000000000000000000000000000000000590c0000000000000000000000000000000000000000000000000000000000005a0c0000000000000000000000000000000000000000000000000000000000005b0c0000000000000000000000000000000000000000000000000000000000005c0c0000000000000000000000000000000000000000000000000000000000005d0c0000000000000000000000000000000000000000000000000000000000005e0c0000000000000000000000000000000000000000000000000000000000005f0c000000000000000000000000000000000000000000000000000000000000600c000000000000000000000000000000000000000000000000000000000000610c000000000000000000000000000000000000000000000000000000000000620c000000000000000000000000000000000000000000000000000000000000630c000000000000000000000000000000000000000000000000000000000000640c000000000000000000000000000000000000000000000000000000000000650c000000000000000000000000000000000000000000000000000000000000660c000000000000000000000000000000000000000000000000000000000000670c000000000000000000000000000000000000000000000000000000000000680c000000000000000000000000000000000000000000000000000000000000690c0000000000000000000000000000000000000000000000000000000000006a0c0000000000000000000000000000000000000000000000000000000000006b0c0000000000000000000000000000000000000000000000000000000000006c0c0000000000000000000000000000000000000000000000000000000000006d0c0000000000000000000000000000000000000000000000000000000000006e0c0000000000000000000000000000000000000000000000000000000000006f0c000000000000000000000000000000000000000000000000000000000000700c000000000000000000000000000000000000000000000000000000000000710c000000000000000000000000000000000000000000000000000000000000720c000000000000000000000000000000000000000000000000000000000000730c000000000000000000000000000000000000000000000000000000000000740c000000000000000000000000000000000000000000000000000000000000750c000000000000000000000000000000000000000000000000000000000000760c000000000000000000000000000000000000000000000000000000000000770c000000000000000000000000000000000000000000000000000000000000780c000000000000000000000000000000000000000000000000000000000000790c0000000000000000000000000000000000000000000000000000000000007a0c0000000000000000000000000000000000000000000000000000000000007b0c0000000000000000000000000000000000000000000000000000000000007c0c0000000000000000000000000000000000000000000000000000000000007d0c0000000000000000000000000000000000000000000000000000000000007e0c0000000000000000000000000000000000000000000000000000000000007f0c000000000000000000000000000000000000000000000000000000000000800c000000000000000000000000000000000000000000000000000000000000810c000000000000000000000000000000000000000000000000000000000000820c000000000000000000000000000000000000000000000000000000000000830c000000000000000000000000000000000000000000000000000000000000840c000000000000000000000000000000000000000000000000000000000000850c000000000000000000000000000000000000000000000000000000000000860c000000000000000000000000000000000000000000000000000000000000870c000000000000000000000000000000000000000000000000000000000000880c000000000000000000000000000000000000000000000000000000000000890c0000000000000000000000000000000000000000000000000000000000008a0c0000000000000000000000000000000000000000000000000000000000008b0c0000000000000000000000000000000000000000000000000000000000008c0c0000000000000000000000000000000000000000000000000000000000008d0c0000000000000000000000000000000000000000000000000000000000008e0c0000000000000000000000000000000000000000000000000000000000008f0c000000000000000000000000000000000000000000000000000000000000900c000000000000000000000000000000000000000000000000000000000000910c000000000000000000000000000000000000000000000000000000000000920c000000000000000000000000000000000000000000000000000000000000930c000000000000000000000000000000000000000000000000000000000000940c000000000000000000000000000000000000000000000000000000000000950c000000000000000000000000000000000000000000000000000000000000960c000000000000000000000000000000000000000000000000000000000000970c000000000000000000000000000000000000000000000000000000000000980c000000000000000000000000000000000000000000000000000000000000990c0000000000000000000000000000000000000000000000000000000000009a0c0000000000000000000000000000000000000000000000000000000000009b0c0000000000000000000000000000000000000000000000000000000000009c0c0000000000000000000000000000000000000000000000000000000000009d0c0000000000000000000000000000000000000000000000000000000000009e0c0000000000000000000000000000000000000000000000000000000000009f0c000000000000000000000000000000000000000000000000000000000000a00c000000000000000000000000000000000000000000000000000000000000a10c000000000000000000000000000000000000000000000000000000000000a20c000000000000000000000000000000000000000000000000000000000000a30c000000000000000000000000000000000000000000000000000000000000a40c000000000000000000000000000000000000000000000000000000000000a50c000000000000000000000000000000000000000000000000000000000000a60c000000000000000000000000000000000000000000000000000000000000a70c000000000000000000000000000000000000000000000000000000000000a80c000000000000000000000000000000000000000000000000000000000000a90c000000000000000000000000000000000000000000000000000000000000aa0c000000000000000000000000000000000000000000000000000000000000ab0c000000000000000000000000000000000000000000000000000000000000ac0c000000000000000000000000000000000000000000000000000000000000ad0c000000000000000000000000000000000000000000000000000000000000ae0c000000000000000000000000000000000000000000000000000000000000af0c000000000000000000000000000000000000000000000000000000000000b00c000000000000000000000000000000000000000000000000000000000000b10c000000000000000000000000000000000000000000000000000000000000b20c000000000000000000000000000000000000000000000000000000000000b30c000000000000000000000000000000000000000000000000000000000000b40c000000000000000000000000000000000000000000000000000000000000b50c000000000000000000000000000000000000000000000000000000000000b60c000000000000000000000000000000000000000000000000000000000000b70c000000000000000000000000000000000000000000000000000000000000b80c000000000000000000000000000000000000000000000000000000000000b90c000000000000000000000000000000000000000000000000000000000000ba0c000000000000000000000000000000000000000000000000000000000000bb0c000000000000000000000000000000000000000000000000000000000000bc0c000000000000000000000000000000000000000000000000000000000000bd0c000000000000000000000000000000000000000000000000000000000000be0c000000000000000000000000000000000000000000000000000000000000bf0c000000000000000000000000000000000000000000000000000000000000c00c000000000000000000000000000000000000000000000000000000000000c10c000000000000000000000000000000000000000000000000000000000000c20c000000000000000000000000000000000000000000000000000000000000c30c000000000000000000000000000000000000000000000000000000000000c40c000000000000000000000000000000000000000000000000000000000000c50c000000000000000000000000000000000000000000000000000000000000c60c000000000000000000000000000000000000000000000000000000000000c70c000000000000000000000000000000000000000000000000000000000000c80c000000000000000000000000000000000000000000000000000000000000c90c000000000000000000000000000000000000000000000000000000000000ca0c000000000000000000000000000000000000000000000000000000000000cb0c000000000000000000000000000000000000000000000000000000000000cc0c000000000000000000000000000000000000000000000000000000000000cd0c000000000000000000000000000000000000000000000000000000000000ce0c000000000000000000000000000000000000000000000000000000000000cf0c000000000000000000000000000000000000000000000000000000000000d00c000000000000000000000000000000000000000000000000000000000000d10c000000000000000000000000000000000000000000000000000000000000d20c000000000000000000000000000000000000000000000000000000000000d30c000000000000000000000000000000000000000000000000000000000000d40c000000000000000000000000000000000000000000000000000000000000d50c000000000000000000000000000000000000000000000000000000000000d60c000000000000000000000000000000000000000000000000000000000000d70c000000000000000000000000000000000000000000000000000000000000d80c000000000000000000000000000000000000000000000000000000000000d90c000000000000000000000000000000000000000000000000000000000000da0c000000000000000000000000000000000000000000000000000000000000db0c000000000000000000000000000000000000000000000000000000000000dc0c000000000000000000000000000000000000000000000000000000000000dd0c000000000000000000000000000000000000000000000000000000000000de0c000000000000000000000000000000000000000000000000000000000000df0c000000000000000000000000000000000000000000000000000000000000e00c000000000000000000000000000000000000000000000000000000000000e10c000000000000000000000000000000000000000000000000000000000000e20c000000000000000000000000000000000000000000000000000000000000e30c000000000000000000000000000000000000000000000000000000000000e40c000000000000000000000000000000000000000000000000000000000000e50c000000000000000000000000000000000000000000000000000000000000e60c000000000000000000000000000000000000000000000000000000000000e70c000000000000000000000000000000000000000000000000000000000000e80c000000000000000000000000000000000000000000000000000000000000e90c000000000000000000000000000000000000000000000000000000000000ea0c000000000000000000000000000000000000000000000000000000000000eb0c000000000000000000000000000000000000000000000000000000000000ec0c000000000000000000000000000000000000000000000000000000000000ed0c000000000000000000000000000000000000000000000000000000000000ee0c000000000000000000000000000000000000000000000000000000000000ef0c000000000000000000000000000000000000000000000000000000000000f00c000000000000000000000000000000000000000000000000000000000000f10c000000000000000000000000000000000000000000000000000000000000f20c000000000000000000000000000000000000000000000000000000000000f30c000000000000000000000000000000000000000000000000000000000000f40c000000000000000000000000000000000000000000000000000000000000f50c000000000000000000000000000000000000000000000000000000000000f60c000000000000000000000000000000000000000000000000000000000000f70c000000000000000000000000000000000000000000000000000000000000f80c000000000000000000000000000000000000000000000000000000000000f90c000000000000000000000000000000000000000000000000000000000000fa0c000000000000000000000000000000000000000000000000000000000000fb0c000000000000000000000000000000000000000000000000000000000000fc0c000000000000000000000000000000000000000000000000000000000000fd0c000000000000000000000000000000000000000000000000000000000000fe0c000000000000000000000000000000000000000000000000000000000000ff0c000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000010d000000000000000000000000000000000000000000000000000000000000020d000000000000000000000000000000000000000000000000000000000000030d000000000000000000000000000000000000000000000000000000000000040d000000000000000000000000000000000000000000000000000000000000050d000000000000000000000000000000000000000000000000000000000000060d000000000000000000000000000000000000000000000000000000000000070d000000000000000000000000000000000000000000000000000000000000080d000000000000000000000000000000000000000000000000000000000000090d0000000000000000000000000000000000000000000000000000000000000a0d0000000000000000000000000000000000000000000000000000000000000b0d0000000000000000000000000000000000000000000000000000000000000c0d0000000000000000000000000000000000000000000000000000000000000d0d0000000000000000000000000000000000000000000000000000000000000e0d0000000000000000000000000000000000000000000000000000000000000f0d000000000000000000000000000000000000000000000000000000000000100d000000000000000000000000000000000000000000000000000000000000110d000000000000000000000000000000000000000000000000000000000000120d000000000000000000000000000000000000000000000000000000000000130d000000000000000000000000000000000000000000000000000000000000140d000000000000000000000000000000000000000000000000000000000000150d000000000000000000000000000000000000000000000000000000000000160d000000000000000000000000000000000000000000000000000000000000170d000000000000000000000000000000000000000000000000000000000000180d000000000000000000000000000000000000000000000000000000000000190d0000000000000000000000000000000000000000000000000000000000001a0d0000000000000000000000000000000000000000000000000000000000001b0d0000000000000000000000000000000000000000000000000000000000001c0d0000000000000000000000000000000000000000000000000000000000001d0d0000000000000000000000000000000000000000000000000000000000001e0d0000000000000000000000000000000000000000000000000000000000001f0d000000000000000000000000000000000000000000000000000000000000200d000000000000000000000000000000000000000000000000000000000000210d000000000000000000000000000000000000000000000000000000000000220d000000000000000000000000000000000000000000000000000000000000230d000000000000000000000000000000000000000000000000000000000000240d000000000000000000000000000000000000000000000000000000000000250d000000000000000000000000000000000000000000000000000000000000260d000000000000000000000000000000000000000000000000000000000000270d000000000000000000000000000000000000000000000000000000000000280d000000000000000000000000000000000000000000000000000000000000290d0000000000000000000000000000000000000000000000000000000000002a0d0000000000000000000000000000000000000000000000000000000000002b0d0000000000000000000000000000000000000000000000000000000000002c0d0000000000000000000000000000000000000000000000000000000000002d0d0000000000000000000000000000000000000000000000000000000000002e0d0000000000000000000000000000000000000000000000000000000000002f0d000000000000000000000000000000000000000000000000000000000000300d000000000000000000000000000000000000000000000000000000000000310d000000000000000000000000000000000000000000000000000000000000320d000000000000000000000000000000000000000000000000000000000000330d000000000000000000000000000000000000000000000000000000000000340d000000000000000000000000000000000000000000000000000000000000350d000000000000000000000000000000000000000000000000000000000000360d000000000000000000000000000000000000000000000000000000000000370d000000000000000000000000000000000000000000000000000000000000380d000000000000000000000000000000000000000000000000000000000000390d0000000000000000000000000000000000000000000000000000000000003a0d0000000000000000000000000000000000000000000000000000000000003b0d0000000000000000000000000000000000000000000000000000000000003c0d0000000000000000000000000000000000000000000000000000000000003d0d0000000000000000000000000000000000000000000000000000000000003e0d0000000000000000000000000000000000000000000000000000000000003f0d000000000000000000000000000000000000000000000000000000000000400d000000000000000000000000000000000000000000000000000000000000410d000000000000000000000000000000000000000000000000000000000000420d000000000000000000000000000000000000000000000000000000000000430d000000000000000000000000000000000000000000000000000000000000440d000000000000000000000000000000000000000000000000000000000000450d000000000000000000000000000000000000000000000000000000000000460d000000000000000000000000000000000000000000000000000000000000470d000000000000000000000000000000000000000000000000000000000000480d000000000000000000000000000000000000000000000000000000000000490d0000000000000000000000000000000000000000000000000000000000004a0d0000000000000000000000000000000000000000000000000000000000004b0d0000000000000000000000000000000000000000000000000000000000004c0d0000000000000000000000000000000000000000000000000000000000004d0d0000000000000000000000000000000000000000000000000000000000004e0d0000000000000000000000000000000000000000000000000000000000004f0d000000000000000000000000000000000000000000000000000000000000500d000000000000000000000000000000000000000000000000000000000000510d000000000000000000000000000000000000000000000000000000000000520d000000000000000000000000000000000000000000000000000000000000530d000000000000000000000000000000000000000000000000000000000000540d000000000000000000000000000000000000000000000000000000000000550d000000000000000000000000000000000000000000000000000000000000560d000000000000000000000000000000000000000000000000000000000000570d000000000000000000000000000000000000000000000000000000000000580d000000000000000000000000000000000000000000000000000000000000590d0000000000000000000000000000000000000000000000000000000000005a0d0000000000000000000000000000000000000000000000000000000000005b0d0000000000000000000000000000000000000000000000000000000000005c0d0000000000000000000000000000000000000000000000000000000000005d0d0000000000000000000000000000000000000000000000000000000000005e0d0000000000000000000000000000000000000000000000000000000000005f0d000000000000000000000000000000000000000000000000000000000000600d000000000000000000000000000000000000000000000000000000000000610d000000000000000000000000000000000000000000000000000000000000620d000000000000000000000000000000000000000000000000000000000000630d000000000000000000000000000000000000000000000000000000000000640d000000000000000000000000000000000000000000000000000000000000650d000000000000000000000000000000000000000000000000000000000000660d000000000000000000000000000000000000000000000000000000000000670d000000000000000000000000000000000000000000000000000000000000680d000000000000000000000000000000000000000000000000000000000000690d0000000000000000000000000000000000000000000000000000000000006a0d0000000000000000000000000000000000000000000000000000000000006b0d0000000000000000000000000000000000000000000000000000000000006c0d0000000000000000000000000000000000000000000000000000000000006d0d0000000000000000000000000000000000000000000000000000000000006e0d0000000000000000000000000000000000000000000000000000000000006f0d000000000000000000000000000000000000000000000000000000000000700d000000000000000000000000000000000000000000000000000000000000710d000000000000000000000000000000000000000000000000000000000000720d000000000000000000000000000000000000000000000000000000000000730d000000000000000000000000000000000000000000000000000000000000740d000000000000000000000000000000000000000000000000000000000000750d000000000000000000000000000000000000000000000000000000000000760d000000000000000000000000000000000000000000000000000000000000770d000000000000000000000000000000000000000000000000000000000000780d000000000000000000000000000000000000000000000000000000000000790d0000000000000000000000000000000000000000000000000000000000007a0d0000000000000000000000000000000000000000000000000000000000007b0d0000000000000000000000000000000000000000000000000000000000007c0d0000000000000000000000000000000000000000000000000000000000007d0d0000000000000000000000000000000000000000000000000000000000007e0d0000000000000000000000000000000000000000000000000000000000007f0d000000000000000000000000000000000000000000000000000000000000800d000000000000000000000000000000000000000000000000000000000000810d000000000000000000000000000000000000000000000000000000000000820d000000000000000000000000000000000000000000000000000000000000830d000000000000000000000000000000000000000000000000000000000000840d000000000000000000000000000000000000000000000000000000000000850d000000000000000000000000000000000000000000000000000000000000860d000000000000000000000000000000000000000000000000000000000000870d000000000000000000000000000000000000000000000000000000000000880d000000000000000000000000000000000000000000000000000000000000890d0000000000000000000000000000000000000000000000000000000000008a0d0000000000000000000000000000000000000000000000000000000000008b0d0000000000000000000000000000000000000000000000000000000000008c0d0000000000000000000000000000000000000000000000000000000000008d0d0000000000000000000000000000000000000000000000000000000000008e0d0000000000000000000000000000000000000000000000000000000000008f0d000000000000000000000000000000000000000000000000000000000000900d000000000000000000000000000000000000000000000000000000000000910d000000000000000000000000000000000000000000000000000000000000920d000000000000000000000000000000000000000000000000000000000000930d000000000000000000000000000000000000000000000000000000000000940d000000000000000000000000000000000000000000000000000000000000950d000000000000000000000000000000000000000000000000000000000000960d000000000000000000000000000000000000000000000000000000000000970d000000000000000000000000000000000000000000000000000000000000980d000000000000000000000000000000000000000000000000000000000000990d0000000000000000000000000000000000000000000000000000000000009a0d0000000000000000000000000000000000000000000000000000000000009b0d0000000000000000000000000000000000000000000000000000000000009c0d0000000000000000000000000000000000000000000000000000000000009d0d0000000000000000000000000000000000000000000000000000000000009e0d0000000000000000000000000000000000000000000000000000000000009f0d000000000000000000000000000000000000000000000000000000000000a00d000000000000000000000000000000000000000000000000000000000000a10d000000000000000000000000000000000000000000000000000000000000a20d000000000000000000000000000000000000000000000000000000000000a30d000000000000000000000000000000000000000000000000000000000000a40d000000000000000000000000000000000000000000000000000000000000a50d000000000000000000000000000000000000000000000000000000000000a60d000000000000000000000000000000000000000000000000000000000000a70d000000000000000000000000000000000000000000000000000000000000a80d000000000000000000000000000000000000000000000000000000000000a90d000000000000000000000000000000000000000000000000000000000000aa0d000000000000000000000000000000000000000000000000000000000000ab0d000000000000000000000000000000000000000000000000000000000000ac0d000000000000000000000000000000000000000000000000000000000000ad0d000000000000000000000000000000000000000000000000000000000000ae0d000000000000000000000000000000000000000000000000000000000000af0d000000000000000000000000000000000000000000000000000000000000b00d000000000000000000000000000000000000000000000000000000000000b10d000000000000000000000000000000000000000000000000000000000000b20d000000000000000000000000000000000000000000000000000000000000b30d000000000000000000000000000000000000000000000000000000000000b40d000000000000000000000000000000000000000000000000000000000000b50d000000000000000000000000000000000000000000000000000000000000b60d000000000000000000000000000000000000000000000000000000000000b70d000000000000000000000000000000000000000000000000000000000000b80d000000000000000000000000000000000000000000000000000000000000b90d000000000000000000000000000000000000000000000000000000000000ba0d000000000000000000000000000000000000000000000000000000000000bb0d000000000000000000000000000000000000000000000000000000000000bc0d000000000000000000000000000000000000000000000000000000000000bd0d000000000000000000000000000000000000000000000000000000000000be0d000000000000000000000000000000000000000000000000000000000000bf0d000000000000000000000000000000000000000000000000000000000000c00d000000000000000000000000000000000000000000000000000000000000c10d000000000000000000000000000000000000000000000000000000000000c20d000000000000000000000000000000000000000000000000000000000000c30d000000000000000000000000000000000000000000000000000000000000c40d000000000000000000000000000000000000000000000000000000000000c50d000000000000000000000000000000000000000000000000000000000000c60d000000000000000000000000000000000000000000000000000000000000c70d000000000000000000000000000000000000000000000000000000000000c80d000000000000000000000000000000000000000000000000000000000000c90d000000000000000000000000000000000000000000000000000000000000ca0d000000000000000000000000000000000000000000000000000000000000cb0d000000000000000000000000000000000000000000000000000000000000cc0d000000000000000000000000000000000000000000000000000000000000cd0d000000000000000000000000000000000000000000000000000000000000ce0d000000000000000000000000000000000000000000000000000000000000cf0d000000000000000000000000000000000000000000000000000000000000d00d000000000000000000000000000000000000000000000000000000000000d10d000000000000000000000000000000000000000000000000000000000000d20d000000000000000000000000000000000000000000000000000000000000d30d000000000000000000000000000000000000000000000000000000000000d40d000000000000000000000000000000000000000000000000000000000000d50d000000000000000000000000000000000000000000000000000000000000d60d000000000000000000000000000000000000000000000000000000000000d70d000000000000000000000000000000000000000000000000000000000000d80d000000000000000000000000000000000000000000000000000000000000d90d000000000000000000000000000000000000000000000000000000000000da0d000000000000000000000000000000000000000000000000000000000000db0d000000000000000000000000000000000000000000000000000000000000dc0d000000000000000000000000000000000000000000000000000000000000dd0d000000000000000000000000000000000000000000000000000000000000de0d000000000000000000000000000000000000000000000000000000000000df0d000000000000000000000000000000000000000000000000000000000000e00d000000000000000000000000000000000000000000000000000000000000e10d000000000000000000000000000000000000000000000000000000000000e20d000000000000000000000000000000000000000000000000000000000000e30d000000000000000000000000000000000000000000000000000000000000e40d000000000000000000000000000000000000000000000000000000000000e50d000000000000000000000000000000000000000000000000000000000000e60d000000000000000000000000000000000000000000000000000000000000e70d000000000000000000000000000000000000000000000000000000000000e80d000000000000000000000000000000000000000000000000000000000000e90d000000000000000000000000000000000000000000000000000000000000ea0d000000000000000000000000000000000000000000000000000000000000eb0d000000000000000000000000000000000000000000000000000000000000ec0d000000000000000000000000000000000000000000000000000000000000ed0d000000000000000000000000000000000000000000000000000000000000ee0d000000000000000000000000000000000000000000000000000000000000ef0d000000000000000000000000000000000000000000000000000000000000f00d000000000000000000000000000000000000000000000000000000000000f10d000000000000000000000000000000000000000000000000000000000000f20d000000000000000000000000000000000000000000000000000000000000f30d000000000000000000000000000000000000000000000000000000000000f40d000000000000000000000000000000000000000000000000000000000000f50d000000000000000000000000000000000000000000000000000000000000f60d000000000000000000000000000000000000000000000000000000000000f70d000000000000000000000000000000000000000000000000000000000000f80d000000000000000000000000000000000000000000000000000000000000f90d000000000000000000000000000000000000000000000000000000000000fa0d000000000000000000000000000000000000000000000000000000000000fb0d000000000000000000000000000000000000000000000000000000000000fc0d000000000000000000000000000000000000000000000000000000000000fd0d000000000000000000000000000000000000000000000000000000000000fe0d000000000000000000000000000000000000000000000000000000000000ff0d000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000010e000000000000000000000000000000000000000000000000000000000000020e000000000000000000000000000000000000000000000000000000000000030e000000000000000000000000000000000000000000000000000000000000040e000000000000000000000000000000000000000000000000000000000000050e000000000000000000000000000000000000000000000000000000000000060e000000000000000000000000000000000000000000000000000000000000070e000000000000000000000000000000000000000000000000000000000000080e000000000000000000000000000000000000000000000000000000000000090e0000000000000000000000000000000000000000000000000000000000000a0e0000000000000000000000000000000000000000000000000000000000000b0e0000000000000000000000000000000000000000000000000000000000000c0e0000000000000000000000000000000000000000000000000000000000000d0e0000000000000000000000000000000000000000000000000000000000000e0e0000000000000000000000000000000000000000000000000000000000000f0e000000000000000000000000000000000000000000000000000000000000100e000000000000000000000000000000000000000000000000000000000000110e000000000000000000000000000000000000000000000000000000000000120e000000000000000000000000000000000000000000000000000000000000130e000000000000000000000000000000000000000000000000000000000000140e000000000000000000000000000000000000000000000000000000000000150e000000000000000000000000000000000000000000000000000000000000160e000000000000000000000000000000000000000000000000000000000000170e000000000000000000000000000000000000000000000000000000000000180e000000000000000000000000000000000000000000000000000000000000190e0000000000000000000000000000000000000000000000000000000000001a0e0000000000000000000000000000000000000000000000000000000000001b0e0000000000000000000000000000000000000000000000000000000000001c0e0000000000000000000000000000000000000000000000000000000000001d0e0000000000000000000000000000000000000000000000000000000000001e0e0000000000000000000000000000000000000000000000000000000000001f0e000000000000000000000000000000000000000000000000000000000000200e000000000000000000000000000000000000000000000000000000000000210e000000000000000000000000000000000000000000000000000000000000220e000000000000000000000000000000000000000000000000000000000000230e000000000000000000000000000000000000000000000000000000000000240e000000000000000000000000000000000000000000000000000000000000250e000000000000000000000000000000000000000000000000000000000000260e000000000000000000000000000000000000000000000000000000000000270e000000000000000000000000000000000000000000000000000000000000280e000000000000000000000000000000000000000000000000000000000000290e0000000000000000000000000000000000000000000000000000000000002a0e0000000000000000000000000000000000000000000000000000000000002b0e0000000000000000000000000000000000000000000000000000000000002c0e0000000000000000000000000000000000000000000000000000000000002d0e0000000000000000000000000000000000000000000000000000000000002e0e0000000000000000000000000000000000000000000000000000000000002f0e000000000000000000000000000000000000000000000000000000000000300e000000000000000000000000000000000000000000000000000000000000310e000000000000000000000000000000000000000000000000000000000000320e000000000000000000000000000000000000000000000000000000000000330e000000000000000000000000000000000000000000000000000000000000340e000000000000000000000000000000000000000000000000000000000000350e000000000000000000000000000000000000000000000000000000000000360e000000000000000000000000000000000000000000000000000000000000370e000000000000000000000000000000000000000000000000000000000000380e000000000000000000000000000000000000000000000000000000000000390e0000000000000000000000000000000000000000000000000000000000003a0e0000000000000000000000000000000000000000000000000000000000003b0e0000000000000000000000000000000000000000000000000000000000003c0e0000000000000000000000000000000000000000000000000000000000003d0e0000000000000000000000000000000000000000000000000000000000003e0e0000000000000000000000000000000000000000000000000000000000003f0e000000000000000000000000000000000000000000000000000000000000400e000000000000000000000000000000000000000000000000000000000000410e000000000000000000000000000000000000000000000000000000000000420e000000000000000000000000000000000000000000000000000000000000430e000000000000000000000000000000000000000000000000000000000000440e000000000000000000000000000000000000000000000000000000000000450e000000000000000000000000000000000000000000000000000000000000460e000000000000000000000000000000000000000000000000000000000000470e000000000000000000000000000000000000000000000000000000000000480e000000000000000000000000000000000000000000000000000000000000490e0000000000000000000000000000000000000000000000000000000000004a0e0000000000000000000000000000000000000000000000000000000000004b0e0000000000000000000000000000000000000000000000000000000000004c0e0000000000000000000000000000000000000000000000000000000000004d0e0000000000000000000000000000000000000000000000000000000000004e0e0000000000000000000000000000000000000000000000000000000000004f0e000000000000000000000000000000000000000000000000000000000000500e000000000000000000000000000000000000000000000000000000000000510e000000000000000000000000000000000000000000000000000000000000520e000000000000000000000000000000000000000000000000000000000000530e000000000000000000000000000000000000000000000000000000000000540e000000000000000000000000000000000000000000000000000000000000550e000000000000000000000000000000000000000000000000000000000000560e000000000000000000000000000000000000000000000000000000000000570e000000000000000000000000000000000000000000000000000000000000580e000000000000000000000000000000000000000000000000000000000000590e0000000000000000000000000000000000000000000000000000000000005a0e0000000000000000000000000000000000000000000000000000000000005b0e0000000000000000000000000000000000000000000000000000000000005c0e0000000000000000000000000000000000000000000000000000000000005d0e0000000000000000000000000000000000000000000000000000000000005e0e0000000000000000000000000000000000000000000000000000000000005f0e000000000000000000000000000000000000000000000000000000000000600e000000000000000000000000000000000000000000000000000000000000610e000000000000000000000000000000000000000000000000000000000000620e000000000000000000000000000000000000000000000000000000000000630e000000000000000000000000000000000000000000000000000000000000640e000000000000000000000000000000000000000000000000000000000000650e000000000000000000000000000000000000000000000000000000000000660e000000000000000000000000000000000000000000000000000000000000670e000000000000000000000000000000000000000000000000000000000000680e000000000000000000000000000000000000000000000000000000000000690e0000000000000000000000000000000000000000000000000000000000006a0e0000000000000000000000000000000000000000000000000000000000006b0e0000000000000000000000000000000000000000000000000000000000006c0e0000000000000000000000000000000000000000000000000000000000006d0e0000000000000000000000000000000000000000000000000000000000006e0e0000000000000000000000000000000000000000000000000000000000006f0e000000000000000000000000000000000000000000000000000000000000700e000000000000000000000000000000000000000000000000000000000000710e000000000000000000000000000000000000000000000000000000000000720e000000000000000000000000000000000000000000000000000000000000730e000000000000000000000000000000000000000000000000000000000000740e000000000000000000000000000000000000000000000000000000000000750e000000000000000000000000000000000000000000000000000000000000760e000000000000000000000000000000000000000000000000000000000000770e000000000000000000000000000000000000000000000000000000000000780e000000000000000000000000000000000000000000000000000000000000790e0000000000000000000000000000000000000000000000000000000000007a0e0000000000000000000000000000000000000000000000000000000000007b0e0000000000000000000000000000000000000000000000000000000000007c0e0000000000000000000000000000000000000000000000000000000000007d0e0000000000000000000000000000000000000000000000000000000000007e0e0000000000000000000000000000000000000000000000000000000000007f0e000000000000000000000000000000000000000000000000000000000000800e000000000000000000000000000000000000000000000000000000000000810e000000000000000000000000000000000000000000000000000000000000820e000000000000000000000000000000000000000000000000000000000000830e000000000000000000000000000000000000000000000000000000000000840e000000000000000000000000000000000000000000000000000000000000850e000000000000000000000000000000000000000000000000000000000000860e000000000000000000000000000000000000000000000000000000000000870e000000000000000000000000000000000000000000000000000000000000880e000000000000000000000000000000000000000000000000000000000000890e0000000000000000000000000000000000000000000000000000000000008a0e0000000000000000000000000000000000000000000000000000000000008b0e0000000000000000000000000000000000000000000000000000000000008c0e0000000000000000000000000000000000000000000000000000000000008d0e0000000000000000000000000000000000000000000000000000000000008e0e0000000000000000000000000000000000000000000000000000000000008f0e000000000000000000000000000000000000000000000000000000000000900e000000000000000000000000000000000000000000000000000000000000910e000000000000000000000000000000000000000000000000000000000000920e000000000000000000000000000000000000000000000000000000000000930e000000000000000000000000000000000000000000000000000000000000940e000000000000000000000000000000000000000000000000000000000000950e000000000000000000000000000000000000000000000000000000000000960e000000000000000000000000000000000000000000000000000000000000970e000000000000000000000000000000000000000000000000000000000000980e000000000000000000000000000000000000000000000000000000000000990e0000000000000000000000000000000000000000000000000000000000009a0e0000000000000000000000000000000000000000000000000000000000009b0e0000000000000000000000000000000000000000000000000000000000009c0e0000000000000000000000000000000000000000000000000000000000009d0e0000000000000000000000000000000000000000000000000000000000009e0e0000000000000000000000000000000000000000000000000000000000009f0e000000000000000000000000000000000000000000000000000000000000a00e000000000000000000000000000000000000000000000000000000000000a10e000000000000000000000000000000000000000000000000000000000000a20e000000000000000000000000000000000000000000000000000000000000a30e000000000000000000000000000000000000000000000000000000000000a40e000000000000000000000000000000000000000000000000000000000000a50e000000000000000000000000000000000000000000000000000000000000a60e000000000000000000000000000000000000000000000000000000000000a70e000000000000000000000000000000000000000000000000000000000000a80e000000000000000000000000000000000000000000000000000000000000a90e000000000000000000000000000000000000000000000000000000000000aa0e000000000000000000000000000000000000000000000000000000000000ab0e000000000000000000000000000000000000000000000000000000000000ac0e000000000000000000000000000000000000000000000000000000000000ad0e000000000000000000000000000000000000000000000000000000000000ae0e000000000000000000000000000000000000000000000000000000000000af0e000000000000000000000000000000000000000000000000000000000000b00e000000000000000000000000000000000000000000000000000000000000b10e000000000000000000000000000000000000000000000000000000000000b20e000000000000000000000000000000000000000000000000000000000000b30e000000000000000000000000000000000000000000000000000000000000b40e000000000000000000000000000000000000000000000000000000000000b50e000000000000000000000000000000000000000000000000000000000000b60e000000000000000000000000000000000000000000000000000000000000b70e000000000000000000000000000000000000000000000000000000000000b80e000000000000000000000000000000000000000000000000000000000000b90e000000000000000000000000000000000000000000000000000000000000ba0e000000000000000000000000000000000000000000000000000000000000bb0e000000000000000000000000000000000000000000000000000000000000bc0e000000000000000000000000000000000000000000000000000000000000bd0e000000000000000000000000000000000000000000000000000000000000be0e000000000000000000000000000000000000000000000000000000000000bf0e000000000000000000000000000000000000000000000000000000000000c00e000000000000000000000000000000000000000000000000000000000000c10e000000000000000000000000000000000000000000000000000000000000c20e000000000000000000000000000000000000000000000000000000000000c30e000000000000000000000000000000000000000000000000000000000000c40e000000000000000000000000000000000000000000000000000000000000c50e000000000000000000000000000000000000000000000000000000000000c60e000000000000000000000000000000000000000000000000000000000000c70e000000000000000000000000000000000000000000000000000000000000c80e000000000000000000000000000000000000000000000000000000000000c90e000000000000000000000000000000000000000000000000000000000000ca0e000000000000000000000000000000000000000000000000000000000000cb0e000000000000000000000000000000000000000000000000000000000000cc0e000000000000000000000000000000000000000000000000000000000000cd0e000000000000000000000000000000000000000000000000000000000000ce0e000000000000000000000000000000000000000000000000000000000000cf0e000000000000000000000000000000000000000000000000000000000000d00e000000000000000000000000000000000000000000000000000000000000d10e000000000000000000000000000000000000000000000000000000000000d20e000000000000000000000000000000000000000000000000000000000000d30e000000000000000000000000000000000000000000000000000000000000d40e000000000000000000000000000000000000000000000000000000000000d50e000000000000000000000000000000000000000000000000000000000000d60e000000000000000000000000000000000000000000000000000000000000d70e000000000000000000000000000000000000000000000000000000000000d80e000000000000000000000000000000000000000000000000000000000000d90e000000000000000000000000000000000000000000000000000000000000da0e000000000000000000000000000000000000000000000000000000000000db0e000000000000000000000000000000000000000000000000000000000000dc0e000000000000000000000000000000000000000000000000000000000000dd0e000000000000000000000000000000000000000000000000000000000000de0e000000000000000000000000000000000000000000000000000000000000df0e000000000000000000000000000000000000000000000000000000000000e00e000000000000000000000000000000000000000000000000000000000000e10e000000000000000000000000000000000000000000000000000000000000e20e000000000000000000000000000000000000000000000000000000000000e30e000000000000000000000000000000000000000000000000000000000000e40e000000000000000000000000000000000000000000000000000000000000e50e000000000000000000000000000000000000000000000000000000000000e60e000000000000000000000000000000000000000000000000000000000000e70e000000000000000000000000000000000000000000000000000000000000e80e000000000000000000000000000000000000000000000000000000000000e90e000000000000000000000000000000000000000000000000000000000000ea0e000000000000000000000000000000000000000000000000000000000000eb0e000000000000000000000000000000000000000000000000000000000000ec0e000000000000000000000000000000000000000000000000000000000000ed0e000000000000000000000000000000000000000000000000000000000000ee0e000000000000000000000000000000000000000000000000000000000000ef0e000000000000000000000000000000000000000000000000000000000000f00e000000000000000000000000000000000000000000000000000000000000f10e000000000000000000000000000000000000000000000000000000000000f20e000000000000000000000000000000000000000000000000000000000000f30e000000000000000000000000000000000000000000000000000000000000f40e000000000000000000000000000000000000000000000000000000000000f50e000000000000000000000000000000000000000000000000000000000000f60e000000000000000000000000000000000000000000000000000000000000f70e000000000000000000000000000000000000000000000000000000000000f80e000000000000000000000000000000000000000000000000000000000000f90e000000000000000000000000000000000000000000000000000000000000fa0e000000000000000000000000000000000000000000000000000000000000fb0e000000000000000000000000000000000000000000000000000000000000fc0e000000000000000000000000000000000000000000000000000000000000fd0e000000000000000000000000000000000000000000000000000000000000fe0e000000000000000000000000000000000000000000000000000000000000ff0e000000000000000000000000000000000000000000000000000000000000000f000000000000000000000000000000000000000000000000000000000000010f000000000000000000000000000000000000000000000000000000000000020f000000000000000000000000000000000000000000000000000000000000030f000000000000000000000000000000000000000000000000000000000000040f000000000000000000000000000000000000000000000000000000000000050f000000000000000000000000000000000000000000000000000000000000060f000000000000000000000000000000000000000000000000000000000000070f000000000000000000000000000000000000000000000000000000000000080f000000000000000000000000000000000000000000000000000000000000090f0000000000000000000000000000000000000000000000000000000000000a0f0000000000000000000000000000000000000000000000000000000000000b0f0000000000000000000000000000000000000000000000000000000000000c0f0000000000000000000000000000000000000000000000000000000000000d0f0000000000000000000000000000000000000000000000000000000000000e0f0000000000000000000000000000000000000000000000000000000000000f0f000000000000000000000000000000000000000000000000000000000000100f000000000000000000000000000000000000000000000000000000000000110f000000000000000000000000000000000000000000000000000000000000120f000000000000000000000000000000000000000000000000000000000000130f000000000000000000000000000000000000000000000000000000000000140f000000000000000000000000000000000000000000000000000000000000150f000000000000000000000000000000000000000000000000000000000000160f000000000000000000000000000000000000000000000000000000000000170f000000000000000000000000000000000000000000000000000000000000180f000000000000000000000000000000000000000000000000000000000000190f0000000000000000000000000000000000000000000000000000000000001a0f0000000000000000000000000000000000000000000000000000000000001b0f0000000000000000000000000000000000000000000000000000000000001c0f0000000000000000000000000000000000000000000000000000000000001d0f0000000000000000000000000000000000000000000000000000000000001e0f0000000000000000000000000000000000000000000000000000000000001f0f000000000000000000000000000000000000000000000000000000000000200f000000000000000000000000000000000000000000000000000000000000210f000000000000000000000000000000000000000000000000000000000000220f000000000000000000000000000000000000000000000000000000000000230f000000000000000000000000000000000000000000000000000000000000240f000000000000000000000000000000000000000000000000000000000000250f000000000000000000000000000000000000000000000000000000000000260f000000000000000000000000000000000000000000000000000000000000270f000000000000000000000000000000000000000000000000000000000000280f000000000000000000000000000000000000000000000000000000000000290f0000000000000000000000000000000000000000000000000000000000002a0f0000000000000000000000000000000000000000000000000000000000002b0f0000000000000000000000000000000000000000000000000000000000002c0f0000000000000000000000000000000000000000000000000000000000002d0f0000000000000000000000000000000000000000000000000000000000002e0f0000000000000000000000000000000000000000000000000000000000002f0f000000000000000000000000000000000000000000000000000000000000300f000000000000000000000000000000000000000000000000000000000000310f000000000000000000000000000000000000000000000000000000000000320f000000000000000000000000000000000000000000000000000000000000330f000000000000000000000000000000000000000000000000000000000000340f000000000000000000000000000000000000000000000000000000000000350f000000000000000000000000000000000000000000000000000000000000360f000000000000000000000000000000000000000000000000000000000000370f000000000000000000000000000000000000000000000000000000000000380f000000000000000000000000000000000000000000000000000000000000390f0000000000000000000000000000000000000000000000000000000000003a0f0000000000000000000000000000000000000000000000000000000000003b0f0000000000000000000000000000000000000000000000000000000000003c0f0000000000000000000000000000000000000000000000000000000000003d0f0000000000000000000000000000000000000000000000000000000000003e0f0000000000000000000000000000000000000000000000000000000000003f0f000000000000000000000000000000000000000000000000000000000000400f000000000000000000000000000000000000000000000000000000000000410f000000000000000000000000000000000000000000000000000000000000420f000000000000000000000000000000000000000000000000000000000000430f000000000000000000000000000000000000000000000000000000000000440f000000000000000000000000000000000000000000000000000000000000450f000000000000000000000000000000000000000000000000000000000000460f000000000000000000000000000000000000000000000000000000000000470f000000000000000000000000000000000000000000000000000000000000480f000000000000000000000000000000000000000000000000000000000000490f0000000000000000000000000000000000000000000000000000000000004a0f0000000000000000000000000000000000000000000000000000000000004b0f0000000000000000000000000000000000000000000000000000000000004c0f0000000000000000000000000000000000000000000000000000000000004d0f0000000000000000000000000000000000000000000000000000000000004e0f0000000000000000000000000000000000000000000000000000000000004f0f000000000000000000000000000000000000000000000000000000000000500f000000000000000000000000000000000000000000000000000000000000510f000000000000000000000000000000000000000000000000000000000000520f000000000000000000000000000000000000000000000000000000000000530f000000000000000000000000000000000000000000000000000000000000540f000000000000000000000000000000000000000000000000000000000000550f000000000000000000000000000000000000000000000000000000000000560f000000000000000000000000000000000000000000000000000000000000570f000000000000000000000000000000000000000000000000000000000000580f000000000000000000000000000000000000000000000000000000000000590f0000000000000000000000000000000000000000000000000000000000005a0f0000000000000000000000000000000000000000000000000000000000005b0f0000000000000000000000000000000000000000000000000000000000005c0f0000000000000000000000000000000000000000000000000000000000005d0f0000000000000000000000000000000000000000000000000000000000005e0f0000000000000000000000000000000000000000000000000000000000005f0f000000000000000000000000000000000000000000000000000000000000600f000000000000000000000000000000000000000000000000000000000000610f000000000000000000000000000000000000000000000000000000000000620f000000000000000000000000000000000000000000000000000000000000630f000000000000000000000000000000000000000000000000000000000000640f000000000000000000000000000000000000000000000000000000000000650f000000000000000000000000000000000000000000000000000000000000660f000000000000000000000000000000000000000000000000000000000000670f000000000000000000000000000000000000000000000000000000000000680f000000000000000000000000000000000000000000000000000000000000690f0000000000000000000000000000000000000000000000000000000000006a0f0000000000000000000000000000000000000000000000000000000000006b0f0000000000000000000000000000000000000000000000000000000000006c0f0000000000000000000000000000000000000000000000000000000000006d0f0000000000000000000000000000000000000000000000000000000000006e0f0000000000000000000000000000000000000000000000000000000000006f0f000000000000000000000000000000000000000000000000000000000000700f000000000000000000000000000000000000000000000000000000000000710f000000000000000000000000000000000000000000000000000000000000720f000000000000000000000000000000000000000000000000000000000000730f000000000000000000000000000000000000000000000000000000000000740f000000000000000000000000000000000000000000000000000000000000750f000000000000000000000000000000000000000000000000000000000000760f000000000000000000000000000000000000000000000000000000000000770f000000000000000000000000000000000000000000000000000000000000780f000000000000000000000000000000000000000000000000000000000000790f0000000000000000000000000000000000000000000000000000000000007a0f0000000000000000000000000000000000000000000000000000000000007b0f0000000000000000000000000000000000000000000000000000000000007c0f0000000000000000000000000000000000000000000000000000000000007d0f0000000000000000000000000000000000000000000000000000000000007e0f0000000000000000000000000000000000000000000000000000000000007f0f000000000000000000000000000000000000000000000000000000000000800f000000000000000000000000000000000000000000000000000000000000810f000000000000000000000000000000000000000000000000000000000000820f000000000000000000000000000000000000000000000000000000000000830f000000000000000000000000000000000000000000000000000000000000840f000000000000000000000000000000000000000000000000000000000000850f000000000000000000000000000000000000000000000000000000000000860f000000000000000000000000000000000000000000000000000000000000870f000000000000000000000000000000000000000000000000000000000000880f000000000000000000000000000000000000000000000000000000000000890f0000000000000000000000000000000000000000000000000000000000008a0f0000000000000000000000000000000000000000000000000000000000008b0f0000000000000000000000000000000000000000000000000000000000008c0f0000000000000000000000000000000000000000000000000000000000008d0f0000000000000000000000000000000000000000000000000000000000008e0f0000000000000000000000000000000000000000000000000000000000008f0f000000000000000000000000000000000000000000000000000000000000900f000000000000000000000000000000000000000000000000000000000000910f000000000000000000000000000000000000000000000000000000000000920f000000000000000000000000000000000000000000000000000000000000930f000000000000000000000000000000000000000000000000000000000000940f000000000000000000000000000000000000000000000000000000000000950f000000000000000000000000000000000000000000000000000000000000960f000000000000000000000000000000000000000000000000000000000000970f000000000000000000000000000000000000000000000000000000000000980f000000000000000000000000000000000000000000000000000000000000990f0000000000000000000000000000000000000000000000000000000000009a0f0000000000000000000000000000000000000000000000000000000000009b0f0000000000000000000000000000000000000000000000000000000000009c0f0000000000000000000000000000000000000000000000000000000000009d0f0000000000000000000000000000000000000000000000000000000000009e0f0000000000000000000000000000000000000000000000000000000000009f0f000000000000000000000000000000000000000000000000000000000000a00f000000000000000000000000000000000000000000000000000000000000a10f000000000000000000000000000000000000000000000000000000000000a20f000000000000000000000000000000000000000000000000000000000000a30f000000000000000000000000000000000000000000000000000000000000a40f000000000000000000000000000000000000000000000000000000000000a50f000000000000000000000000000000000000000000000000000000000000a60f000000000000000000000000000000000000000000000000000000000000a70f000000000000000000000000000000000000000000000000000000000000a80f000000000000000000000000000000000000000000000000000000000000a90f000000000000000000000000000000000000000000000000000000000000aa0f000000000000000000000000000000000000000000000000000000000000ab0f000000000000000000000000000000000000000000000000000000000000ac0f000000000000000000000000000000000000000000000000000000000000ad0f000000000000000000000000000000000000000000000000000000000000ae0f000000000000000000000000000000000000000000000000000000000000af0f000000000000000000000000000000000000000000000000000000000000b00f000000000000000000000000000000000000000000000000000000000000b10f000000000000000000000000000000000000000000000000000000000000b20f000000000000000000000000000000000000000000000000000000000000b30f000000000000000000000000000000000000000000000000000000000000b40f000000000000000000000000000000000000000000000000000000000000b50f000000000000000000000000000000000000000000000000000000000000b60f000000000000000000000000000000000000000000000000000000000000b70f000000000000000000000000000000000000000000000000000000000000b80f000000000000000000000000000000000000000000000000000000000000b90f000000000000000000000000000000000000000000000000000000000000ba0f000000000000000000000000000000000000000000000000000000000000bb0f000000000000000000000000000000000000000000000000000000000000bc0f000000000000000000000000000000000000000000000000000000000000bd0f000000000000000000000000000000000000000000000000000000000000be0f000000000000000000000000000000000000000000000000000000000000bf0f000000000000000000000000000000000000000000000000000000000000c00f000000000000000000000000000000000000000000000000000000000000c10f000000000000000000000000000000000000000000000000000000000000c20f000000000000000000000000000000000000000000000000000000000000c30f000000000000000000000000000000000000000000000000000000000000c40f000000000000000000000000000000000000000000000000000000000000c50f000000000000000000000000000000000000000000000000000000000000c60f000000000000000000000000000000000000000000000000000000000000c70f000000000000000000000000000000000000000000000000000000000000c80f000000000000000000000000000000000000000000000000000000000000c90f000000000000000000000000000000000000000000000000000000000000ca0f000000000000000000000000000000000000000000000000000000000000cb0f000000000000000000000000000000000000000000000000000000000000cc0f000000000000000000000000000000000000000000000000000000000000cd0f000000000000000000000000000000000000000000000000000000000000ce0f000000000000000000000000000000000000000000000000000000000000cf0f000000000000000000000000000000000000000000000000000000000000d00f000000000000000000000000000000000000000000000000000000000000d10f000000000000000000000000000000000000000000000000000000000000d20f000000000000000000000000000000000000000000000000000000000000d30f000000000000000000000000000000000000000000000000000000000000d40f000000000000000000000000000000000000000000000000000000000000d50f000000000000000000000000000000000000000000000000000000000000d60f000000000000000000000000000000000000000000000000000000000000d70f000000000000000000000000000000000000000000000000000000000000d80f000000000000000000000000000000000000000000000000000000000000d90f000000000000000000000000000000000000000000000000000000000000da0f000000000000000000000000000000000000000000000000000000000000db0f000000000000000000000000000000000000000000000000000000000000dc0f000000000000000000000000000000000000000000000000000000000000dd0f000000000000000000000000000000000000000000000000000000000000de0f000000000000000000000000000000000000000000000000000000000000df0f000000000000000000000000000000000000000000000000000000000000e00f000000000000000000000000000000000000000000000000000000000000e10f000000000000000000000000000000000000000000000000000000000000e20f000000000000000000000000000000000000000000000000000000000000e30f000000000000000000000000000000000000000000000000000000000000e40f000000000000000000000000000000000000000000000000000000000000e50f000000000000000000000000000000000000000000000000000000000000e60f000000000000000000000000000000000000000000000000000000000000e70f000000000000000000000000000000000000000000000000000000000000e80f000000000000000000000000000000000000000000000000000000000000e90f000000000000000000000000000000000000000000000000000000000000ea0f000000000000000000000000000000000000000000000000000000000000eb0f000000000000000000000000000000000000000000000000000000000000ec0f000000000000000000000000000000000000000000000000000000000000ed0f000000000000000000000000000000000000000000000000000000000000ee0f000000000000000000000000000000000000000000000000000000000000ef0f000000000000000000000000000000000000000000000000000000000000f00f000000000000000000000000000000000000000000000000000000000000f10f000000000000000000000000000000000000000000000000000000000000f20f000000000000000000000000000000000000000000000000000000000000f30f000000000000000000000000000000000000000000000000000000000000f40f000000000000000000000000000000000000000000000000000000000000f50f000000000000000000000000000000000000000000000000000000000000f60f000000000000000000000000000000000000000000000000000000000000f70f000000000000000000000000000000000000000000000000000000000000f80f000000000000000000000000000000000000000000000000000000000000f90f000000000000000000000000000000000000000000000000000000000000fa0f000000000000000000000000000000000000000000000000000000000000fb0f000000000000000000000000000000000000000000000000000000000000fc0f000000000000000000000000000000000000000000000000000000000000fd0f000000000000000000000000000000000000000000000000000000000000fe0f000000000000000000000000000000000000000000000000000000000000ff0f000000000000000000000000000000000000000000000000000000000000", + "00100000000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000021000000000000000000000000000000000000000000000000000000000000003100000000000000000000000000000000000000000000000000000000000000410000000000000000000000000000000000000000000000000000000000000051000000000000000000000000000000000000000000000000000000000000006100000000000000000000000000000000000000000000000000000000000000710000000000000000000000000000000000000000000000000000000000000081000000000000000000000000000000000000000000000000000000000000009100000000000000000000000000000000000000000000000000000000000000a100000000000000000000000000000000000000000000000000000000000000b100000000000000000000000000000000000000000000000000000000000000c100000000000000000000000000000000000000000000000000000000000000d100000000000000000000000000000000000000000000000000000000000000e100000000000000000000000000000000000000000000000000000000000000f1000000000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000000001110000000000000000000000000000000000000000000000000000000000000121000000000000000000000000000000000000000000000000000000000000013100000000000000000000000000000000000000000000000000000000000001410000000000000000000000000000000000000000000000000000000000000151000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000001710000000000000000000000000000000000000000000000000000000000000181000000000000000000000000000000000000000000000000000000000000019100000000000000000000000000000000000000000000000000000000000001a100000000000000000000000000000000000000000000000000000000000001b100000000000000000000000000000000000000000000000000000000000001c100000000000000000000000000000000000000000000000000000000000001d100000000000000000000000000000000000000000000000000000000000001e100000000000000000000000000000000000000000000000000000000000001f1000000000000000000000000000000000000000000000000000000000000020100000000000000000000000000000000000000000000000000000000000002110000000000000000000000000000000000000000000000000000000000000221000000000000000000000000000000000000000000000000000000000000023100000000000000000000000000000000000000000000000000000000000002410000000000000000000000000000000000000000000000000000000000000251000000000000000000000000000000000000000000000000000000000000026100000000000000000000000000000000000000000000000000000000000002710000000000000000000000000000000000000000000000000000000000000281000000000000000000000000000000000000000000000000000000000000029100000000000000000000000000000000000000000000000000000000000002a100000000000000000000000000000000000000000000000000000000000002b100000000000000000000000000000000000000000000000000000000000002c100000000000000000000000000000000000000000000000000000000000002d100000000000000000000000000000000000000000000000000000000000002e100000000000000000000000000000000000000000000000000000000000002f1000000000000000000000000000000000000000000000000000000000000030100000000000000000000000000000000000000000000000000000000000003110000000000000000000000000000000000000000000000000000000000000321000000000000000000000000000000000000000000000000000000000000033100000000000000000000000000000000000000000000000000000000000003410000000000000000000000000000000000000000000000000000000000000351000000000000000000000000000000000000000000000000000000000000036100000000000000000000000000000000000000000000000000000000000003710000000000000000000000000000000000000000000000000000000000000381000000000000000000000000000000000000000000000000000000000000039100000000000000000000000000000000000000000000000000000000000003a100000000000000000000000000000000000000000000000000000000000003b100000000000000000000000000000000000000000000000000000000000003c100000000000000000000000000000000000000000000000000000000000003d100000000000000000000000000000000000000000000000000000000000003e100000000000000000000000000000000000000000000000000000000000003f1000000000000000000000000000000000000000000000000000000000000040100000000000000000000000000000000000000000000000000000000000004110000000000000000000000000000000000000000000000000000000000000421000000000000000000000000000000000000000000000000000000000000043100000000000000000000000000000000000000000000000000000000000004410000000000000000000000000000000000000000000000000000000000000451000000000000000000000000000000000000000000000000000000000000046100000000000000000000000000000000000000000000000000000000000004710000000000000000000000000000000000000000000000000000000000000481000000000000000000000000000000000000000000000000000000000000049100000000000000000000000000000000000000000000000000000000000004a100000000000000000000000000000000000000000000000000000000000004b100000000000000000000000000000000000000000000000000000000000004c100000000000000000000000000000000000000000000000000000000000004d100000000000000000000000000000000000000000000000000000000000004e100000000000000000000000000000000000000000000000000000000000004f1000000000000000000000000000000000000000000000000000000000000050100000000000000000000000000000000000000000000000000000000000005110000000000000000000000000000000000000000000000000000000000000521000000000000000000000000000000000000000000000000000000000000053100000000000000000000000000000000000000000000000000000000000005410000000000000000000000000000000000000000000000000000000000000551000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000000000000000005710000000000000000000000000000000000000000000000000000000000000581000000000000000000000000000000000000000000000000000000000000059100000000000000000000000000000000000000000000000000000000000005a100000000000000000000000000000000000000000000000000000000000005b100000000000000000000000000000000000000000000000000000000000005c100000000000000000000000000000000000000000000000000000000000005d100000000000000000000000000000000000000000000000000000000000005e100000000000000000000000000000000000000000000000000000000000005f1000000000000000000000000000000000000000000000000000000000000060100000000000000000000000000000000000000000000000000000000000006110000000000000000000000000000000000000000000000000000000000000621000000000000000000000000000000000000000000000000000000000000063100000000000000000000000000000000000000000000000000000000000006410000000000000000000000000000000000000000000000000000000000000651000000000000000000000000000000000000000000000000000000000000066100000000000000000000000000000000000000000000000000000000000006710000000000000000000000000000000000000000000000000000000000000681000000000000000000000000000000000000000000000000000000000000069100000000000000000000000000000000000000000000000000000000000006a100000000000000000000000000000000000000000000000000000000000006b100000000000000000000000000000000000000000000000000000000000006c100000000000000000000000000000000000000000000000000000000000006d100000000000000000000000000000000000000000000000000000000000006e100000000000000000000000000000000000000000000000000000000000006f1000000000000000000000000000000000000000000000000000000000000070100000000000000000000000000000000000000000000000000000000000007110000000000000000000000000000000000000000000000000000000000000721000000000000000000000000000000000000000000000000000000000000073100000000000000000000000000000000000000000000000000000000000007410000000000000000000000000000000000000000000000000000000000000751000000000000000000000000000000000000000000000000000000000000076100000000000000000000000000000000000000000000000000000000000007710000000000000000000000000000000000000000000000000000000000000781000000000000000000000000000000000000000000000000000000000000079100000000000000000000000000000000000000000000000000000000000007a100000000000000000000000000000000000000000000000000000000000007b100000000000000000000000000000000000000000000000000000000000007c100000000000000000000000000000000000000000000000000000000000007d100000000000000000000000000000000000000000000000000000000000007e100000000000000000000000000000000000000000000000000000000000007f1000000000000000000000000000000000000000000000000000000000000080100000000000000000000000000000000000000000000000000000000000008110000000000000000000000000000000000000000000000000000000000000821000000000000000000000000000000000000000000000000000000000000083100000000000000000000000000000000000000000000000000000000000008410000000000000000000000000000000000000000000000000000000000000851000000000000000000000000000000000000000000000000000000000000086100000000000000000000000000000000000000000000000000000000000008710000000000000000000000000000000000000000000000000000000000000881000000000000000000000000000000000000000000000000000000000000089100000000000000000000000000000000000000000000000000000000000008a100000000000000000000000000000000000000000000000000000000000008b100000000000000000000000000000000000000000000000000000000000008c100000000000000000000000000000000000000000000000000000000000008d100000000000000000000000000000000000000000000000000000000000008e100000000000000000000000000000000000000000000000000000000000008f1000000000000000000000000000000000000000000000000000000000000090100000000000000000000000000000000000000000000000000000000000009110000000000000000000000000000000000000000000000000000000000000921000000000000000000000000000000000000000000000000000000000000093100000000000000000000000000000000000000000000000000000000000009410000000000000000000000000000000000000000000000000000000000000951000000000000000000000000000000000000000000000000000000000000096100000000000000000000000000000000000000000000000000000000000009710000000000000000000000000000000000000000000000000000000000000981000000000000000000000000000000000000000000000000000000000000099100000000000000000000000000000000000000000000000000000000000009a100000000000000000000000000000000000000000000000000000000000009b100000000000000000000000000000000000000000000000000000000000009c100000000000000000000000000000000000000000000000000000000000009d100000000000000000000000000000000000000000000000000000000000009e100000000000000000000000000000000000000000000000000000000000009f10000000000000000000000000000000000000000000000000000000000000a010000000000000000000000000000000000000000000000000000000000000a110000000000000000000000000000000000000000000000000000000000000a210000000000000000000000000000000000000000000000000000000000000a310000000000000000000000000000000000000000000000000000000000000a410000000000000000000000000000000000000000000000000000000000000a510000000000000000000000000000000000000000000000000000000000000a610000000000000000000000000000000000000000000000000000000000000a710000000000000000000000000000000000000000000000000000000000000a810000000000000000000000000000000000000000000000000000000000000a910000000000000000000000000000000000000000000000000000000000000aa10000000000000000000000000000000000000000000000000000000000000ab10000000000000000000000000000000000000000000000000000000000000ac10000000000000000000000000000000000000000000000000000000000000ad10000000000000000000000000000000000000000000000000000000000000ae10000000000000000000000000000000000000000000000000000000000000af10000000000000000000000000000000000000000000000000000000000000b010000000000000000000000000000000000000000000000000000000000000b110000000000000000000000000000000000000000000000000000000000000b210000000000000000000000000000000000000000000000000000000000000b310000000000000000000000000000000000000000000000000000000000000b410000000000000000000000000000000000000000000000000000000000000b510000000000000000000000000000000000000000000000000000000000000b610000000000000000000000000000000000000000000000000000000000000b710000000000000000000000000000000000000000000000000000000000000b810000000000000000000000000000000000000000000000000000000000000b910000000000000000000000000000000000000000000000000000000000000ba10000000000000000000000000000000000000000000000000000000000000bb10000000000000000000000000000000000000000000000000000000000000bc10000000000000000000000000000000000000000000000000000000000000bd10000000000000000000000000000000000000000000000000000000000000be10000000000000000000000000000000000000000000000000000000000000bf10000000000000000000000000000000000000000000000000000000000000c010000000000000000000000000000000000000000000000000000000000000c110000000000000000000000000000000000000000000000000000000000000c210000000000000000000000000000000000000000000000000000000000000c310000000000000000000000000000000000000000000000000000000000000c410000000000000000000000000000000000000000000000000000000000000c510000000000000000000000000000000000000000000000000000000000000c610000000000000000000000000000000000000000000000000000000000000c710000000000000000000000000000000000000000000000000000000000000c810000000000000000000000000000000000000000000000000000000000000c910000000000000000000000000000000000000000000000000000000000000ca10000000000000000000000000000000000000000000000000000000000000cb10000000000000000000000000000000000000000000000000000000000000cc10000000000000000000000000000000000000000000000000000000000000cd10000000000000000000000000000000000000000000000000000000000000ce10000000000000000000000000000000000000000000000000000000000000cf10000000000000000000000000000000000000000000000000000000000000d010000000000000000000000000000000000000000000000000000000000000d110000000000000000000000000000000000000000000000000000000000000d210000000000000000000000000000000000000000000000000000000000000d310000000000000000000000000000000000000000000000000000000000000d410000000000000000000000000000000000000000000000000000000000000d510000000000000000000000000000000000000000000000000000000000000d610000000000000000000000000000000000000000000000000000000000000d710000000000000000000000000000000000000000000000000000000000000d810000000000000000000000000000000000000000000000000000000000000d910000000000000000000000000000000000000000000000000000000000000da10000000000000000000000000000000000000000000000000000000000000db10000000000000000000000000000000000000000000000000000000000000dc10000000000000000000000000000000000000000000000000000000000000dd10000000000000000000000000000000000000000000000000000000000000de10000000000000000000000000000000000000000000000000000000000000df10000000000000000000000000000000000000000000000000000000000000e010000000000000000000000000000000000000000000000000000000000000e110000000000000000000000000000000000000000000000000000000000000e210000000000000000000000000000000000000000000000000000000000000e310000000000000000000000000000000000000000000000000000000000000e410000000000000000000000000000000000000000000000000000000000000e510000000000000000000000000000000000000000000000000000000000000e610000000000000000000000000000000000000000000000000000000000000e710000000000000000000000000000000000000000000000000000000000000e810000000000000000000000000000000000000000000000000000000000000e910000000000000000000000000000000000000000000000000000000000000ea10000000000000000000000000000000000000000000000000000000000000eb10000000000000000000000000000000000000000000000000000000000000ec10000000000000000000000000000000000000000000000000000000000000ed10000000000000000000000000000000000000000000000000000000000000ee10000000000000000000000000000000000000000000000000000000000000ef10000000000000000000000000000000000000000000000000000000000000f010000000000000000000000000000000000000000000000000000000000000f110000000000000000000000000000000000000000000000000000000000000f210000000000000000000000000000000000000000000000000000000000000f310000000000000000000000000000000000000000000000000000000000000f410000000000000000000000000000000000000000000000000000000000000f510000000000000000000000000000000000000000000000000000000000000f610000000000000000000000000000000000000000000000000000000000000f710000000000000000000000000000000000000000000000000000000000000f810000000000000000000000000000000000000000000000000000000000000f910000000000000000000000000000000000000000000000000000000000000fa10000000000000000000000000000000000000000000000000000000000000fb10000000000000000000000000000000000000000000000000000000000000fc10000000000000000000000000000000000000000000000000000000000000fd10000000000000000000000000000000000000000000000000000000000000fe10000000000000000000000000000000000000000000000000000000000000ff1000000000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000111000000000000000000000000000000000000000000000000000000000000021100000000000000000000000000000000000000000000000000000000000003110000000000000000000000000000000000000000000000000000000000000411000000000000000000000000000000000000000000000000000000000000051100000000000000000000000000000000000000000000000000000000000006110000000000000000000000000000000000000000000000000000000000000711000000000000000000000000000000000000000000000000000000000000081100000000000000000000000000000000000000000000000000000000000009110000000000000000000000000000000000000000000000000000000000000a110000000000000000000000000000000000000000000000000000000000000b110000000000000000000000000000000000000000000000000000000000000c110000000000000000000000000000000000000000000000000000000000000d110000000000000000000000000000000000000000000000000000000000000e110000000000000000000000000000000000000000000000000000000000000f1100000000000000000000000000000000000000000000000000000000000010110000000000000000000000000000000000000000000000000000000000001111000000000000000000000000000000000000000000000000000000000000121100000000000000000000000000000000000000000000000000000000000013110000000000000000000000000000000000000000000000000000000000001411000000000000000000000000000000000000000000000000000000000000151100000000000000000000000000000000000000000000000000000000000016110000000000000000000000000000000000000000000000000000000000001711000000000000000000000000000000000000000000000000000000000000181100000000000000000000000000000000000000000000000000000000000019110000000000000000000000000000000000000000000000000000000000001a110000000000000000000000000000000000000000000000000000000000001b110000000000000000000000000000000000000000000000000000000000001c110000000000000000000000000000000000000000000000000000000000001d110000000000000000000000000000000000000000000000000000000000001e110000000000000000000000000000000000000000000000000000000000001f1100000000000000000000000000000000000000000000000000000000000020110000000000000000000000000000000000000000000000000000000000002111000000000000000000000000000000000000000000000000000000000000221100000000000000000000000000000000000000000000000000000000000023110000000000000000000000000000000000000000000000000000000000002411000000000000000000000000000000000000000000000000000000000000251100000000000000000000000000000000000000000000000000000000000026110000000000000000000000000000000000000000000000000000000000002711000000000000000000000000000000000000000000000000000000000000281100000000000000000000000000000000000000000000000000000000000029110000000000000000000000000000000000000000000000000000000000002a110000000000000000000000000000000000000000000000000000000000002b110000000000000000000000000000000000000000000000000000000000002c110000000000000000000000000000000000000000000000000000000000002d110000000000000000000000000000000000000000000000000000000000002e110000000000000000000000000000000000000000000000000000000000002f1100000000000000000000000000000000000000000000000000000000000030110000000000000000000000000000000000000000000000000000000000003111000000000000000000000000000000000000000000000000000000000000321100000000000000000000000000000000000000000000000000000000000033110000000000000000000000000000000000000000000000000000000000003411000000000000000000000000000000000000000000000000000000000000351100000000000000000000000000000000000000000000000000000000000036110000000000000000000000000000000000000000000000000000000000003711000000000000000000000000000000000000000000000000000000000000381100000000000000000000000000000000000000000000000000000000000039110000000000000000000000000000000000000000000000000000000000003a110000000000000000000000000000000000000000000000000000000000003b110000000000000000000000000000000000000000000000000000000000003c110000000000000000000000000000000000000000000000000000000000003d110000000000000000000000000000000000000000000000000000000000003e110000000000000000000000000000000000000000000000000000000000003f1100000000000000000000000000000000000000000000000000000000000040110000000000000000000000000000000000000000000000000000000000004111000000000000000000000000000000000000000000000000000000000000421100000000000000000000000000000000000000000000000000000000000043110000000000000000000000000000000000000000000000000000000000004411000000000000000000000000000000000000000000000000000000000000451100000000000000000000000000000000000000000000000000000000000046110000000000000000000000000000000000000000000000000000000000004711000000000000000000000000000000000000000000000000000000000000481100000000000000000000000000000000000000000000000000000000000049110000000000000000000000000000000000000000000000000000000000004a110000000000000000000000000000000000000000000000000000000000004b110000000000000000000000000000000000000000000000000000000000004c110000000000000000000000000000000000000000000000000000000000004d110000000000000000000000000000000000000000000000000000000000004e110000000000000000000000000000000000000000000000000000000000004f1100000000000000000000000000000000000000000000000000000000000050110000000000000000000000000000000000000000000000000000000000005111000000000000000000000000000000000000000000000000000000000000521100000000000000000000000000000000000000000000000000000000000053110000000000000000000000000000000000000000000000000000000000005411000000000000000000000000000000000000000000000000000000000000551100000000000000000000000000000000000000000000000000000000000056110000000000000000000000000000000000000000000000000000000000005711000000000000000000000000000000000000000000000000000000000000581100000000000000000000000000000000000000000000000000000000000059110000000000000000000000000000000000000000000000000000000000005a110000000000000000000000000000000000000000000000000000000000005b110000000000000000000000000000000000000000000000000000000000005c110000000000000000000000000000000000000000000000000000000000005d110000000000000000000000000000000000000000000000000000000000005e110000000000000000000000000000000000000000000000000000000000005f1100000000000000000000000000000000000000000000000000000000000060110000000000000000000000000000000000000000000000000000000000006111000000000000000000000000000000000000000000000000000000000000621100000000000000000000000000000000000000000000000000000000000063110000000000000000000000000000000000000000000000000000000000006411000000000000000000000000000000000000000000000000000000000000651100000000000000000000000000000000000000000000000000000000000066110000000000000000000000000000000000000000000000000000000000006711000000000000000000000000000000000000000000000000000000000000681100000000000000000000000000000000000000000000000000000000000069110000000000000000000000000000000000000000000000000000000000006a110000000000000000000000000000000000000000000000000000000000006b110000000000000000000000000000000000000000000000000000000000006c110000000000000000000000000000000000000000000000000000000000006d110000000000000000000000000000000000000000000000000000000000006e110000000000000000000000000000000000000000000000000000000000006f1100000000000000000000000000000000000000000000000000000000000070110000000000000000000000000000000000000000000000000000000000007111000000000000000000000000000000000000000000000000000000000000721100000000000000000000000000000000000000000000000000000000000073110000000000000000000000000000000000000000000000000000000000007411000000000000000000000000000000000000000000000000000000000000751100000000000000000000000000000000000000000000000000000000000076110000000000000000000000000000000000000000000000000000000000007711000000000000000000000000000000000000000000000000000000000000781100000000000000000000000000000000000000000000000000000000000079110000000000000000000000000000000000000000000000000000000000007a110000000000000000000000000000000000000000000000000000000000007b110000000000000000000000000000000000000000000000000000000000007c110000000000000000000000000000000000000000000000000000000000007d110000000000000000000000000000000000000000000000000000000000007e110000000000000000000000000000000000000000000000000000000000007f1100000000000000000000000000000000000000000000000000000000000080110000000000000000000000000000000000000000000000000000000000008111000000000000000000000000000000000000000000000000000000000000821100000000000000000000000000000000000000000000000000000000000083110000000000000000000000000000000000000000000000000000000000008411000000000000000000000000000000000000000000000000000000000000851100000000000000000000000000000000000000000000000000000000000086110000000000000000000000000000000000000000000000000000000000008711000000000000000000000000000000000000000000000000000000000000881100000000000000000000000000000000000000000000000000000000000089110000000000000000000000000000000000000000000000000000000000008a110000000000000000000000000000000000000000000000000000000000008b110000000000000000000000000000000000000000000000000000000000008c110000000000000000000000000000000000000000000000000000000000008d110000000000000000000000000000000000000000000000000000000000008e110000000000000000000000000000000000000000000000000000000000008f1100000000000000000000000000000000000000000000000000000000000090110000000000000000000000000000000000000000000000000000000000009111000000000000000000000000000000000000000000000000000000000000921100000000000000000000000000000000000000000000000000000000000093110000000000000000000000000000000000000000000000000000000000009411000000000000000000000000000000000000000000000000000000000000951100000000000000000000000000000000000000000000000000000000000096110000000000000000000000000000000000000000000000000000000000009711000000000000000000000000000000000000000000000000000000000000981100000000000000000000000000000000000000000000000000000000000099110000000000000000000000000000000000000000000000000000000000009a110000000000000000000000000000000000000000000000000000000000009b110000000000000000000000000000000000000000000000000000000000009c110000000000000000000000000000000000000000000000000000000000009d110000000000000000000000000000000000000000000000000000000000009e110000000000000000000000000000000000000000000000000000000000009f11000000000000000000000000000000000000000000000000000000000000a011000000000000000000000000000000000000000000000000000000000000a111000000000000000000000000000000000000000000000000000000000000a211000000000000000000000000000000000000000000000000000000000000a311000000000000000000000000000000000000000000000000000000000000a411000000000000000000000000000000000000000000000000000000000000a511000000000000000000000000000000000000000000000000000000000000a611000000000000000000000000000000000000000000000000000000000000a711000000000000000000000000000000000000000000000000000000000000a811000000000000000000000000000000000000000000000000000000000000a911000000000000000000000000000000000000000000000000000000000000aa11000000000000000000000000000000000000000000000000000000000000ab11000000000000000000000000000000000000000000000000000000000000ac11000000000000000000000000000000000000000000000000000000000000ad11000000000000000000000000000000000000000000000000000000000000ae11000000000000000000000000000000000000000000000000000000000000af11000000000000000000000000000000000000000000000000000000000000b011000000000000000000000000000000000000000000000000000000000000b111000000000000000000000000000000000000000000000000000000000000b211000000000000000000000000000000000000000000000000000000000000b311000000000000000000000000000000000000000000000000000000000000b411000000000000000000000000000000000000000000000000000000000000b511000000000000000000000000000000000000000000000000000000000000b611000000000000000000000000000000000000000000000000000000000000b711000000000000000000000000000000000000000000000000000000000000b811000000000000000000000000000000000000000000000000000000000000b911000000000000000000000000000000000000000000000000000000000000ba11000000000000000000000000000000000000000000000000000000000000bb11000000000000000000000000000000000000000000000000000000000000bc11000000000000000000000000000000000000000000000000000000000000bd11000000000000000000000000000000000000000000000000000000000000be11000000000000000000000000000000000000000000000000000000000000bf11000000000000000000000000000000000000000000000000000000000000c011000000000000000000000000000000000000000000000000000000000000c111000000000000000000000000000000000000000000000000000000000000c211000000000000000000000000000000000000000000000000000000000000c311000000000000000000000000000000000000000000000000000000000000c411000000000000000000000000000000000000000000000000000000000000c511000000000000000000000000000000000000000000000000000000000000c611000000000000000000000000000000000000000000000000000000000000c711000000000000000000000000000000000000000000000000000000000000c811000000000000000000000000000000000000000000000000000000000000c911000000000000000000000000000000000000000000000000000000000000ca11000000000000000000000000000000000000000000000000000000000000cb11000000000000000000000000000000000000000000000000000000000000cc11000000000000000000000000000000000000000000000000000000000000cd11000000000000000000000000000000000000000000000000000000000000ce11000000000000000000000000000000000000000000000000000000000000cf11000000000000000000000000000000000000000000000000000000000000d011000000000000000000000000000000000000000000000000000000000000d111000000000000000000000000000000000000000000000000000000000000d211000000000000000000000000000000000000000000000000000000000000d311000000000000000000000000000000000000000000000000000000000000d411000000000000000000000000000000000000000000000000000000000000d511000000000000000000000000000000000000000000000000000000000000d611000000000000000000000000000000000000000000000000000000000000d711000000000000000000000000000000000000000000000000000000000000d811000000000000000000000000000000000000000000000000000000000000d911000000000000000000000000000000000000000000000000000000000000da11000000000000000000000000000000000000000000000000000000000000db11000000000000000000000000000000000000000000000000000000000000dc11000000000000000000000000000000000000000000000000000000000000dd11000000000000000000000000000000000000000000000000000000000000de11000000000000000000000000000000000000000000000000000000000000df11000000000000000000000000000000000000000000000000000000000000e011000000000000000000000000000000000000000000000000000000000000e111000000000000000000000000000000000000000000000000000000000000e211000000000000000000000000000000000000000000000000000000000000e311000000000000000000000000000000000000000000000000000000000000e411000000000000000000000000000000000000000000000000000000000000e511000000000000000000000000000000000000000000000000000000000000e611000000000000000000000000000000000000000000000000000000000000e711000000000000000000000000000000000000000000000000000000000000e811000000000000000000000000000000000000000000000000000000000000e911000000000000000000000000000000000000000000000000000000000000ea11000000000000000000000000000000000000000000000000000000000000eb11000000000000000000000000000000000000000000000000000000000000ec11000000000000000000000000000000000000000000000000000000000000ed11000000000000000000000000000000000000000000000000000000000000ee11000000000000000000000000000000000000000000000000000000000000ef11000000000000000000000000000000000000000000000000000000000000f011000000000000000000000000000000000000000000000000000000000000f111000000000000000000000000000000000000000000000000000000000000f211000000000000000000000000000000000000000000000000000000000000f311000000000000000000000000000000000000000000000000000000000000f411000000000000000000000000000000000000000000000000000000000000f511000000000000000000000000000000000000000000000000000000000000f611000000000000000000000000000000000000000000000000000000000000f711000000000000000000000000000000000000000000000000000000000000f811000000000000000000000000000000000000000000000000000000000000f911000000000000000000000000000000000000000000000000000000000000fa11000000000000000000000000000000000000000000000000000000000000fb11000000000000000000000000000000000000000000000000000000000000fc11000000000000000000000000000000000000000000000000000000000000fd11000000000000000000000000000000000000000000000000000000000000fe11000000000000000000000000000000000000000000000000000000000000ff1100000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000112000000000000000000000000000000000000000000000000000000000000021200000000000000000000000000000000000000000000000000000000000003120000000000000000000000000000000000000000000000000000000000000412000000000000000000000000000000000000000000000000000000000000051200000000000000000000000000000000000000000000000000000000000006120000000000000000000000000000000000000000000000000000000000000712000000000000000000000000000000000000000000000000000000000000081200000000000000000000000000000000000000000000000000000000000009120000000000000000000000000000000000000000000000000000000000000a120000000000000000000000000000000000000000000000000000000000000b120000000000000000000000000000000000000000000000000000000000000c120000000000000000000000000000000000000000000000000000000000000d120000000000000000000000000000000000000000000000000000000000000e120000000000000000000000000000000000000000000000000000000000000f1200000000000000000000000000000000000000000000000000000000000010120000000000000000000000000000000000000000000000000000000000001112000000000000000000000000000000000000000000000000000000000000121200000000000000000000000000000000000000000000000000000000000013120000000000000000000000000000000000000000000000000000000000001412000000000000000000000000000000000000000000000000000000000000151200000000000000000000000000000000000000000000000000000000000016120000000000000000000000000000000000000000000000000000000000001712000000000000000000000000000000000000000000000000000000000000181200000000000000000000000000000000000000000000000000000000000019120000000000000000000000000000000000000000000000000000000000001a120000000000000000000000000000000000000000000000000000000000001b120000000000000000000000000000000000000000000000000000000000001c120000000000000000000000000000000000000000000000000000000000001d120000000000000000000000000000000000000000000000000000000000001e120000000000000000000000000000000000000000000000000000000000001f1200000000000000000000000000000000000000000000000000000000000020120000000000000000000000000000000000000000000000000000000000002112000000000000000000000000000000000000000000000000000000000000221200000000000000000000000000000000000000000000000000000000000023120000000000000000000000000000000000000000000000000000000000002412000000000000000000000000000000000000000000000000000000000000251200000000000000000000000000000000000000000000000000000000000026120000000000000000000000000000000000000000000000000000000000002712000000000000000000000000000000000000000000000000000000000000281200000000000000000000000000000000000000000000000000000000000029120000000000000000000000000000000000000000000000000000000000002a120000000000000000000000000000000000000000000000000000000000002b120000000000000000000000000000000000000000000000000000000000002c120000000000000000000000000000000000000000000000000000000000002d120000000000000000000000000000000000000000000000000000000000002e120000000000000000000000000000000000000000000000000000000000002f1200000000000000000000000000000000000000000000000000000000000030120000000000000000000000000000000000000000000000000000000000003112000000000000000000000000000000000000000000000000000000000000321200000000000000000000000000000000000000000000000000000000000033120000000000000000000000000000000000000000000000000000000000003412000000000000000000000000000000000000000000000000000000000000351200000000000000000000000000000000000000000000000000000000000036120000000000000000000000000000000000000000000000000000000000003712000000000000000000000000000000000000000000000000000000000000381200000000000000000000000000000000000000000000000000000000000039120000000000000000000000000000000000000000000000000000000000003a120000000000000000000000000000000000000000000000000000000000003b120000000000000000000000000000000000000000000000000000000000003c120000000000000000000000000000000000000000000000000000000000003d120000000000000000000000000000000000000000000000000000000000003e120000000000000000000000000000000000000000000000000000000000003f1200000000000000000000000000000000000000000000000000000000000040120000000000000000000000000000000000000000000000000000000000004112000000000000000000000000000000000000000000000000000000000000421200000000000000000000000000000000000000000000000000000000000043120000000000000000000000000000000000000000000000000000000000004412000000000000000000000000000000000000000000000000000000000000451200000000000000000000000000000000000000000000000000000000000046120000000000000000000000000000000000000000000000000000000000004712000000000000000000000000000000000000000000000000000000000000481200000000000000000000000000000000000000000000000000000000000049120000000000000000000000000000000000000000000000000000000000004a120000000000000000000000000000000000000000000000000000000000004b120000000000000000000000000000000000000000000000000000000000004c120000000000000000000000000000000000000000000000000000000000004d120000000000000000000000000000000000000000000000000000000000004e120000000000000000000000000000000000000000000000000000000000004f1200000000000000000000000000000000000000000000000000000000000050120000000000000000000000000000000000000000000000000000000000005112000000000000000000000000000000000000000000000000000000000000521200000000000000000000000000000000000000000000000000000000000053120000000000000000000000000000000000000000000000000000000000005412000000000000000000000000000000000000000000000000000000000000551200000000000000000000000000000000000000000000000000000000000056120000000000000000000000000000000000000000000000000000000000005712000000000000000000000000000000000000000000000000000000000000581200000000000000000000000000000000000000000000000000000000000059120000000000000000000000000000000000000000000000000000000000005a120000000000000000000000000000000000000000000000000000000000005b120000000000000000000000000000000000000000000000000000000000005c120000000000000000000000000000000000000000000000000000000000005d120000000000000000000000000000000000000000000000000000000000005e120000000000000000000000000000000000000000000000000000000000005f1200000000000000000000000000000000000000000000000000000000000060120000000000000000000000000000000000000000000000000000000000006112000000000000000000000000000000000000000000000000000000000000621200000000000000000000000000000000000000000000000000000000000063120000000000000000000000000000000000000000000000000000000000006412000000000000000000000000000000000000000000000000000000000000651200000000000000000000000000000000000000000000000000000000000066120000000000000000000000000000000000000000000000000000000000006712000000000000000000000000000000000000000000000000000000000000681200000000000000000000000000000000000000000000000000000000000069120000000000000000000000000000000000000000000000000000000000006a120000000000000000000000000000000000000000000000000000000000006b120000000000000000000000000000000000000000000000000000000000006c120000000000000000000000000000000000000000000000000000000000006d120000000000000000000000000000000000000000000000000000000000006e120000000000000000000000000000000000000000000000000000000000006f1200000000000000000000000000000000000000000000000000000000000070120000000000000000000000000000000000000000000000000000000000007112000000000000000000000000000000000000000000000000000000000000721200000000000000000000000000000000000000000000000000000000000073120000000000000000000000000000000000000000000000000000000000007412000000000000000000000000000000000000000000000000000000000000751200000000000000000000000000000000000000000000000000000000000076120000000000000000000000000000000000000000000000000000000000007712000000000000000000000000000000000000000000000000000000000000781200000000000000000000000000000000000000000000000000000000000079120000000000000000000000000000000000000000000000000000000000007a120000000000000000000000000000000000000000000000000000000000007b120000000000000000000000000000000000000000000000000000000000007c120000000000000000000000000000000000000000000000000000000000007d120000000000000000000000000000000000000000000000000000000000007e120000000000000000000000000000000000000000000000000000000000007f1200000000000000000000000000000000000000000000000000000000000080120000000000000000000000000000000000000000000000000000000000008112000000000000000000000000000000000000000000000000000000000000821200000000000000000000000000000000000000000000000000000000000083120000000000000000000000000000000000000000000000000000000000008412000000000000000000000000000000000000000000000000000000000000851200000000000000000000000000000000000000000000000000000000000086120000000000000000000000000000000000000000000000000000000000008712000000000000000000000000000000000000000000000000000000000000881200000000000000000000000000000000000000000000000000000000000089120000000000000000000000000000000000000000000000000000000000008a120000000000000000000000000000000000000000000000000000000000008b120000000000000000000000000000000000000000000000000000000000008c120000000000000000000000000000000000000000000000000000000000008d120000000000000000000000000000000000000000000000000000000000008e120000000000000000000000000000000000000000000000000000000000008f1200000000000000000000000000000000000000000000000000000000000090120000000000000000000000000000000000000000000000000000000000009112000000000000000000000000000000000000000000000000000000000000921200000000000000000000000000000000000000000000000000000000000093120000000000000000000000000000000000000000000000000000000000009412000000000000000000000000000000000000000000000000000000000000951200000000000000000000000000000000000000000000000000000000000096120000000000000000000000000000000000000000000000000000000000009712000000000000000000000000000000000000000000000000000000000000981200000000000000000000000000000000000000000000000000000000000099120000000000000000000000000000000000000000000000000000000000009a120000000000000000000000000000000000000000000000000000000000009b120000000000000000000000000000000000000000000000000000000000009c120000000000000000000000000000000000000000000000000000000000009d120000000000000000000000000000000000000000000000000000000000009e120000000000000000000000000000000000000000000000000000000000009f12000000000000000000000000000000000000000000000000000000000000a012000000000000000000000000000000000000000000000000000000000000a112000000000000000000000000000000000000000000000000000000000000a212000000000000000000000000000000000000000000000000000000000000a312000000000000000000000000000000000000000000000000000000000000a412000000000000000000000000000000000000000000000000000000000000a512000000000000000000000000000000000000000000000000000000000000a612000000000000000000000000000000000000000000000000000000000000a712000000000000000000000000000000000000000000000000000000000000a812000000000000000000000000000000000000000000000000000000000000a912000000000000000000000000000000000000000000000000000000000000aa12000000000000000000000000000000000000000000000000000000000000ab12000000000000000000000000000000000000000000000000000000000000ac12000000000000000000000000000000000000000000000000000000000000ad12000000000000000000000000000000000000000000000000000000000000ae12000000000000000000000000000000000000000000000000000000000000af12000000000000000000000000000000000000000000000000000000000000b012000000000000000000000000000000000000000000000000000000000000b112000000000000000000000000000000000000000000000000000000000000b212000000000000000000000000000000000000000000000000000000000000b312000000000000000000000000000000000000000000000000000000000000b412000000000000000000000000000000000000000000000000000000000000b512000000000000000000000000000000000000000000000000000000000000b612000000000000000000000000000000000000000000000000000000000000b712000000000000000000000000000000000000000000000000000000000000b812000000000000000000000000000000000000000000000000000000000000b912000000000000000000000000000000000000000000000000000000000000ba12000000000000000000000000000000000000000000000000000000000000bb12000000000000000000000000000000000000000000000000000000000000bc12000000000000000000000000000000000000000000000000000000000000bd12000000000000000000000000000000000000000000000000000000000000be12000000000000000000000000000000000000000000000000000000000000bf12000000000000000000000000000000000000000000000000000000000000c012000000000000000000000000000000000000000000000000000000000000c112000000000000000000000000000000000000000000000000000000000000c212000000000000000000000000000000000000000000000000000000000000c312000000000000000000000000000000000000000000000000000000000000c412000000000000000000000000000000000000000000000000000000000000c512000000000000000000000000000000000000000000000000000000000000c612000000000000000000000000000000000000000000000000000000000000c712000000000000000000000000000000000000000000000000000000000000c812000000000000000000000000000000000000000000000000000000000000c912000000000000000000000000000000000000000000000000000000000000ca12000000000000000000000000000000000000000000000000000000000000cb12000000000000000000000000000000000000000000000000000000000000cc12000000000000000000000000000000000000000000000000000000000000cd12000000000000000000000000000000000000000000000000000000000000ce12000000000000000000000000000000000000000000000000000000000000cf12000000000000000000000000000000000000000000000000000000000000d012000000000000000000000000000000000000000000000000000000000000d112000000000000000000000000000000000000000000000000000000000000d212000000000000000000000000000000000000000000000000000000000000d312000000000000000000000000000000000000000000000000000000000000d412000000000000000000000000000000000000000000000000000000000000d512000000000000000000000000000000000000000000000000000000000000d612000000000000000000000000000000000000000000000000000000000000d712000000000000000000000000000000000000000000000000000000000000d812000000000000000000000000000000000000000000000000000000000000d912000000000000000000000000000000000000000000000000000000000000da12000000000000000000000000000000000000000000000000000000000000db12000000000000000000000000000000000000000000000000000000000000dc12000000000000000000000000000000000000000000000000000000000000dd12000000000000000000000000000000000000000000000000000000000000de12000000000000000000000000000000000000000000000000000000000000df12000000000000000000000000000000000000000000000000000000000000e012000000000000000000000000000000000000000000000000000000000000e112000000000000000000000000000000000000000000000000000000000000e212000000000000000000000000000000000000000000000000000000000000e312000000000000000000000000000000000000000000000000000000000000e412000000000000000000000000000000000000000000000000000000000000e512000000000000000000000000000000000000000000000000000000000000e612000000000000000000000000000000000000000000000000000000000000e712000000000000000000000000000000000000000000000000000000000000e812000000000000000000000000000000000000000000000000000000000000e912000000000000000000000000000000000000000000000000000000000000ea12000000000000000000000000000000000000000000000000000000000000eb12000000000000000000000000000000000000000000000000000000000000ec12000000000000000000000000000000000000000000000000000000000000ed12000000000000000000000000000000000000000000000000000000000000ee12000000000000000000000000000000000000000000000000000000000000ef12000000000000000000000000000000000000000000000000000000000000f012000000000000000000000000000000000000000000000000000000000000f112000000000000000000000000000000000000000000000000000000000000f212000000000000000000000000000000000000000000000000000000000000f312000000000000000000000000000000000000000000000000000000000000f412000000000000000000000000000000000000000000000000000000000000f512000000000000000000000000000000000000000000000000000000000000f612000000000000000000000000000000000000000000000000000000000000f712000000000000000000000000000000000000000000000000000000000000f812000000000000000000000000000000000000000000000000000000000000f912000000000000000000000000000000000000000000000000000000000000fa12000000000000000000000000000000000000000000000000000000000000fb12000000000000000000000000000000000000000000000000000000000000fc12000000000000000000000000000000000000000000000000000000000000fd12000000000000000000000000000000000000000000000000000000000000fe12000000000000000000000000000000000000000000000000000000000000ff1200000000000000000000000000000000000000000000000000000000000000130000000000000000000000000000000000000000000000000000000000000113000000000000000000000000000000000000000000000000000000000000021300000000000000000000000000000000000000000000000000000000000003130000000000000000000000000000000000000000000000000000000000000413000000000000000000000000000000000000000000000000000000000000051300000000000000000000000000000000000000000000000000000000000006130000000000000000000000000000000000000000000000000000000000000713000000000000000000000000000000000000000000000000000000000000081300000000000000000000000000000000000000000000000000000000000009130000000000000000000000000000000000000000000000000000000000000a130000000000000000000000000000000000000000000000000000000000000b130000000000000000000000000000000000000000000000000000000000000c130000000000000000000000000000000000000000000000000000000000000d130000000000000000000000000000000000000000000000000000000000000e130000000000000000000000000000000000000000000000000000000000000f1300000000000000000000000000000000000000000000000000000000000010130000000000000000000000000000000000000000000000000000000000001113000000000000000000000000000000000000000000000000000000000000121300000000000000000000000000000000000000000000000000000000000013130000000000000000000000000000000000000000000000000000000000001413000000000000000000000000000000000000000000000000000000000000151300000000000000000000000000000000000000000000000000000000000016130000000000000000000000000000000000000000000000000000000000001713000000000000000000000000000000000000000000000000000000000000181300000000000000000000000000000000000000000000000000000000000019130000000000000000000000000000000000000000000000000000000000001a130000000000000000000000000000000000000000000000000000000000001b130000000000000000000000000000000000000000000000000000000000001c130000000000000000000000000000000000000000000000000000000000001d130000000000000000000000000000000000000000000000000000000000001e130000000000000000000000000000000000000000000000000000000000001f1300000000000000000000000000000000000000000000000000000000000020130000000000000000000000000000000000000000000000000000000000002113000000000000000000000000000000000000000000000000000000000000221300000000000000000000000000000000000000000000000000000000000023130000000000000000000000000000000000000000000000000000000000002413000000000000000000000000000000000000000000000000000000000000251300000000000000000000000000000000000000000000000000000000000026130000000000000000000000000000000000000000000000000000000000002713000000000000000000000000000000000000000000000000000000000000281300000000000000000000000000000000000000000000000000000000000029130000000000000000000000000000000000000000000000000000000000002a130000000000000000000000000000000000000000000000000000000000002b130000000000000000000000000000000000000000000000000000000000002c130000000000000000000000000000000000000000000000000000000000002d130000000000000000000000000000000000000000000000000000000000002e130000000000000000000000000000000000000000000000000000000000002f1300000000000000000000000000000000000000000000000000000000000030130000000000000000000000000000000000000000000000000000000000003113000000000000000000000000000000000000000000000000000000000000321300000000000000000000000000000000000000000000000000000000000033130000000000000000000000000000000000000000000000000000000000003413000000000000000000000000000000000000000000000000000000000000351300000000000000000000000000000000000000000000000000000000000036130000000000000000000000000000000000000000000000000000000000003713000000000000000000000000000000000000000000000000000000000000381300000000000000000000000000000000000000000000000000000000000039130000000000000000000000000000000000000000000000000000000000003a130000000000000000000000000000000000000000000000000000000000003b130000000000000000000000000000000000000000000000000000000000003c130000000000000000000000000000000000000000000000000000000000003d130000000000000000000000000000000000000000000000000000000000003e130000000000000000000000000000000000000000000000000000000000003f1300000000000000000000000000000000000000000000000000000000000040130000000000000000000000000000000000000000000000000000000000004113000000000000000000000000000000000000000000000000000000000000421300000000000000000000000000000000000000000000000000000000000043130000000000000000000000000000000000000000000000000000000000004413000000000000000000000000000000000000000000000000000000000000451300000000000000000000000000000000000000000000000000000000000046130000000000000000000000000000000000000000000000000000000000004713000000000000000000000000000000000000000000000000000000000000481300000000000000000000000000000000000000000000000000000000000049130000000000000000000000000000000000000000000000000000000000004a130000000000000000000000000000000000000000000000000000000000004b130000000000000000000000000000000000000000000000000000000000004c130000000000000000000000000000000000000000000000000000000000004d130000000000000000000000000000000000000000000000000000000000004e130000000000000000000000000000000000000000000000000000000000004f1300000000000000000000000000000000000000000000000000000000000050130000000000000000000000000000000000000000000000000000000000005113000000000000000000000000000000000000000000000000000000000000521300000000000000000000000000000000000000000000000000000000000053130000000000000000000000000000000000000000000000000000000000005413000000000000000000000000000000000000000000000000000000000000551300000000000000000000000000000000000000000000000000000000000056130000000000000000000000000000000000000000000000000000000000005713000000000000000000000000000000000000000000000000000000000000581300000000000000000000000000000000000000000000000000000000000059130000000000000000000000000000000000000000000000000000000000005a130000000000000000000000000000000000000000000000000000000000005b130000000000000000000000000000000000000000000000000000000000005c130000000000000000000000000000000000000000000000000000000000005d130000000000000000000000000000000000000000000000000000000000005e130000000000000000000000000000000000000000000000000000000000005f1300000000000000000000000000000000000000000000000000000000000060130000000000000000000000000000000000000000000000000000000000006113000000000000000000000000000000000000000000000000000000000000621300000000000000000000000000000000000000000000000000000000000063130000000000000000000000000000000000000000000000000000000000006413000000000000000000000000000000000000000000000000000000000000651300000000000000000000000000000000000000000000000000000000000066130000000000000000000000000000000000000000000000000000000000006713000000000000000000000000000000000000000000000000000000000000681300000000000000000000000000000000000000000000000000000000000069130000000000000000000000000000000000000000000000000000000000006a130000000000000000000000000000000000000000000000000000000000006b130000000000000000000000000000000000000000000000000000000000006c130000000000000000000000000000000000000000000000000000000000006d130000000000000000000000000000000000000000000000000000000000006e130000000000000000000000000000000000000000000000000000000000006f1300000000000000000000000000000000000000000000000000000000000070130000000000000000000000000000000000000000000000000000000000007113000000000000000000000000000000000000000000000000000000000000721300000000000000000000000000000000000000000000000000000000000073130000000000000000000000000000000000000000000000000000000000007413000000000000000000000000000000000000000000000000000000000000751300000000000000000000000000000000000000000000000000000000000076130000000000000000000000000000000000000000000000000000000000007713000000000000000000000000000000000000000000000000000000000000781300000000000000000000000000000000000000000000000000000000000079130000000000000000000000000000000000000000000000000000000000007a130000000000000000000000000000000000000000000000000000000000007b130000000000000000000000000000000000000000000000000000000000007c130000000000000000000000000000000000000000000000000000000000007d130000000000000000000000000000000000000000000000000000000000007e130000000000000000000000000000000000000000000000000000000000007f1300000000000000000000000000000000000000000000000000000000000080130000000000000000000000000000000000000000000000000000000000008113000000000000000000000000000000000000000000000000000000000000821300000000000000000000000000000000000000000000000000000000000083130000000000000000000000000000000000000000000000000000000000008413000000000000000000000000000000000000000000000000000000000000851300000000000000000000000000000000000000000000000000000000000086130000000000000000000000000000000000000000000000000000000000008713000000000000000000000000000000000000000000000000000000000000881300000000000000000000000000000000000000000000000000000000000089130000000000000000000000000000000000000000000000000000000000008a130000000000000000000000000000000000000000000000000000000000008b130000000000000000000000000000000000000000000000000000000000008c130000000000000000000000000000000000000000000000000000000000008d130000000000000000000000000000000000000000000000000000000000008e130000000000000000000000000000000000000000000000000000000000008f1300000000000000000000000000000000000000000000000000000000000090130000000000000000000000000000000000000000000000000000000000009113000000000000000000000000000000000000000000000000000000000000921300000000000000000000000000000000000000000000000000000000000093130000000000000000000000000000000000000000000000000000000000009413000000000000000000000000000000000000000000000000000000000000951300000000000000000000000000000000000000000000000000000000000096130000000000000000000000000000000000000000000000000000000000009713000000000000000000000000000000000000000000000000000000000000981300000000000000000000000000000000000000000000000000000000000099130000000000000000000000000000000000000000000000000000000000009a130000000000000000000000000000000000000000000000000000000000009b130000000000000000000000000000000000000000000000000000000000009c130000000000000000000000000000000000000000000000000000000000009d130000000000000000000000000000000000000000000000000000000000009e130000000000000000000000000000000000000000000000000000000000009f13000000000000000000000000000000000000000000000000000000000000a013000000000000000000000000000000000000000000000000000000000000a113000000000000000000000000000000000000000000000000000000000000a213000000000000000000000000000000000000000000000000000000000000a313000000000000000000000000000000000000000000000000000000000000a413000000000000000000000000000000000000000000000000000000000000a513000000000000000000000000000000000000000000000000000000000000a613000000000000000000000000000000000000000000000000000000000000a713000000000000000000000000000000000000000000000000000000000000a813000000000000000000000000000000000000000000000000000000000000a913000000000000000000000000000000000000000000000000000000000000aa13000000000000000000000000000000000000000000000000000000000000ab13000000000000000000000000000000000000000000000000000000000000ac13000000000000000000000000000000000000000000000000000000000000ad13000000000000000000000000000000000000000000000000000000000000ae13000000000000000000000000000000000000000000000000000000000000af13000000000000000000000000000000000000000000000000000000000000b013000000000000000000000000000000000000000000000000000000000000b113000000000000000000000000000000000000000000000000000000000000b213000000000000000000000000000000000000000000000000000000000000b313000000000000000000000000000000000000000000000000000000000000b413000000000000000000000000000000000000000000000000000000000000b513000000000000000000000000000000000000000000000000000000000000b613000000000000000000000000000000000000000000000000000000000000b713000000000000000000000000000000000000000000000000000000000000b813000000000000000000000000000000000000000000000000000000000000b913000000000000000000000000000000000000000000000000000000000000ba13000000000000000000000000000000000000000000000000000000000000bb13000000000000000000000000000000000000000000000000000000000000bc13000000000000000000000000000000000000000000000000000000000000bd13000000000000000000000000000000000000000000000000000000000000be13000000000000000000000000000000000000000000000000000000000000bf13000000000000000000000000000000000000000000000000000000000000c013000000000000000000000000000000000000000000000000000000000000c113000000000000000000000000000000000000000000000000000000000000c213000000000000000000000000000000000000000000000000000000000000c313000000000000000000000000000000000000000000000000000000000000c413000000000000000000000000000000000000000000000000000000000000c513000000000000000000000000000000000000000000000000000000000000c613000000000000000000000000000000000000000000000000000000000000c713000000000000000000000000000000000000000000000000000000000000c813000000000000000000000000000000000000000000000000000000000000c913000000000000000000000000000000000000000000000000000000000000ca13000000000000000000000000000000000000000000000000000000000000cb13000000000000000000000000000000000000000000000000000000000000cc13000000000000000000000000000000000000000000000000000000000000cd13000000000000000000000000000000000000000000000000000000000000ce13000000000000000000000000000000000000000000000000000000000000cf13000000000000000000000000000000000000000000000000000000000000d013000000000000000000000000000000000000000000000000000000000000d113000000000000000000000000000000000000000000000000000000000000d213000000000000000000000000000000000000000000000000000000000000d313000000000000000000000000000000000000000000000000000000000000d413000000000000000000000000000000000000000000000000000000000000d513000000000000000000000000000000000000000000000000000000000000d613000000000000000000000000000000000000000000000000000000000000d713000000000000000000000000000000000000000000000000000000000000d813000000000000000000000000000000000000000000000000000000000000d913000000000000000000000000000000000000000000000000000000000000da13000000000000000000000000000000000000000000000000000000000000db13000000000000000000000000000000000000000000000000000000000000dc13000000000000000000000000000000000000000000000000000000000000dd13000000000000000000000000000000000000000000000000000000000000de13000000000000000000000000000000000000000000000000000000000000df13000000000000000000000000000000000000000000000000000000000000e013000000000000000000000000000000000000000000000000000000000000e113000000000000000000000000000000000000000000000000000000000000e213000000000000000000000000000000000000000000000000000000000000e313000000000000000000000000000000000000000000000000000000000000e413000000000000000000000000000000000000000000000000000000000000e513000000000000000000000000000000000000000000000000000000000000e613000000000000000000000000000000000000000000000000000000000000e713000000000000000000000000000000000000000000000000000000000000e813000000000000000000000000000000000000000000000000000000000000e913000000000000000000000000000000000000000000000000000000000000ea13000000000000000000000000000000000000000000000000000000000000eb13000000000000000000000000000000000000000000000000000000000000ec13000000000000000000000000000000000000000000000000000000000000ed13000000000000000000000000000000000000000000000000000000000000ee13000000000000000000000000000000000000000000000000000000000000ef13000000000000000000000000000000000000000000000000000000000000f013000000000000000000000000000000000000000000000000000000000000f113000000000000000000000000000000000000000000000000000000000000f213000000000000000000000000000000000000000000000000000000000000f313000000000000000000000000000000000000000000000000000000000000f413000000000000000000000000000000000000000000000000000000000000f513000000000000000000000000000000000000000000000000000000000000f613000000000000000000000000000000000000000000000000000000000000f713000000000000000000000000000000000000000000000000000000000000f813000000000000000000000000000000000000000000000000000000000000f913000000000000000000000000000000000000000000000000000000000000fa13000000000000000000000000000000000000000000000000000000000000fb13000000000000000000000000000000000000000000000000000000000000fc13000000000000000000000000000000000000000000000000000000000000fd13000000000000000000000000000000000000000000000000000000000000fe13000000000000000000000000000000000000000000000000000000000000ff1300000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000114000000000000000000000000000000000000000000000000000000000000021400000000000000000000000000000000000000000000000000000000000003140000000000000000000000000000000000000000000000000000000000000414000000000000000000000000000000000000000000000000000000000000051400000000000000000000000000000000000000000000000000000000000006140000000000000000000000000000000000000000000000000000000000000714000000000000000000000000000000000000000000000000000000000000081400000000000000000000000000000000000000000000000000000000000009140000000000000000000000000000000000000000000000000000000000000a140000000000000000000000000000000000000000000000000000000000000b140000000000000000000000000000000000000000000000000000000000000c140000000000000000000000000000000000000000000000000000000000000d140000000000000000000000000000000000000000000000000000000000000e140000000000000000000000000000000000000000000000000000000000000f1400000000000000000000000000000000000000000000000000000000000010140000000000000000000000000000000000000000000000000000000000001114000000000000000000000000000000000000000000000000000000000000121400000000000000000000000000000000000000000000000000000000000013140000000000000000000000000000000000000000000000000000000000001414000000000000000000000000000000000000000000000000000000000000151400000000000000000000000000000000000000000000000000000000000016140000000000000000000000000000000000000000000000000000000000001714000000000000000000000000000000000000000000000000000000000000181400000000000000000000000000000000000000000000000000000000000019140000000000000000000000000000000000000000000000000000000000001a140000000000000000000000000000000000000000000000000000000000001b140000000000000000000000000000000000000000000000000000000000001c140000000000000000000000000000000000000000000000000000000000001d140000000000000000000000000000000000000000000000000000000000001e140000000000000000000000000000000000000000000000000000000000001f1400000000000000000000000000000000000000000000000000000000000020140000000000000000000000000000000000000000000000000000000000002114000000000000000000000000000000000000000000000000000000000000221400000000000000000000000000000000000000000000000000000000000023140000000000000000000000000000000000000000000000000000000000002414000000000000000000000000000000000000000000000000000000000000251400000000000000000000000000000000000000000000000000000000000026140000000000000000000000000000000000000000000000000000000000002714000000000000000000000000000000000000000000000000000000000000281400000000000000000000000000000000000000000000000000000000000029140000000000000000000000000000000000000000000000000000000000002a140000000000000000000000000000000000000000000000000000000000002b140000000000000000000000000000000000000000000000000000000000002c140000000000000000000000000000000000000000000000000000000000002d140000000000000000000000000000000000000000000000000000000000002e140000000000000000000000000000000000000000000000000000000000002f1400000000000000000000000000000000000000000000000000000000000030140000000000000000000000000000000000000000000000000000000000003114000000000000000000000000000000000000000000000000000000000000321400000000000000000000000000000000000000000000000000000000000033140000000000000000000000000000000000000000000000000000000000003414000000000000000000000000000000000000000000000000000000000000351400000000000000000000000000000000000000000000000000000000000036140000000000000000000000000000000000000000000000000000000000003714000000000000000000000000000000000000000000000000000000000000381400000000000000000000000000000000000000000000000000000000000039140000000000000000000000000000000000000000000000000000000000003a140000000000000000000000000000000000000000000000000000000000003b140000000000000000000000000000000000000000000000000000000000003c140000000000000000000000000000000000000000000000000000000000003d140000000000000000000000000000000000000000000000000000000000003e140000000000000000000000000000000000000000000000000000000000003f1400000000000000000000000000000000000000000000000000000000000040140000000000000000000000000000000000000000000000000000000000004114000000000000000000000000000000000000000000000000000000000000421400000000000000000000000000000000000000000000000000000000000043140000000000000000000000000000000000000000000000000000000000004414000000000000000000000000000000000000000000000000000000000000451400000000000000000000000000000000000000000000000000000000000046140000000000000000000000000000000000000000000000000000000000004714000000000000000000000000000000000000000000000000000000000000481400000000000000000000000000000000000000000000000000000000000049140000000000000000000000000000000000000000000000000000000000004a140000000000000000000000000000000000000000000000000000000000004b140000000000000000000000000000000000000000000000000000000000004c140000000000000000000000000000000000000000000000000000000000004d140000000000000000000000000000000000000000000000000000000000004e140000000000000000000000000000000000000000000000000000000000004f1400000000000000000000000000000000000000000000000000000000000050140000000000000000000000000000000000000000000000000000000000005114000000000000000000000000000000000000000000000000000000000000521400000000000000000000000000000000000000000000000000000000000053140000000000000000000000000000000000000000000000000000000000005414000000000000000000000000000000000000000000000000000000000000551400000000000000000000000000000000000000000000000000000000000056140000000000000000000000000000000000000000000000000000000000005714000000000000000000000000000000000000000000000000000000000000581400000000000000000000000000000000000000000000000000000000000059140000000000000000000000000000000000000000000000000000000000005a140000000000000000000000000000000000000000000000000000000000005b140000000000000000000000000000000000000000000000000000000000005c140000000000000000000000000000000000000000000000000000000000005d140000000000000000000000000000000000000000000000000000000000005e140000000000000000000000000000000000000000000000000000000000005f1400000000000000000000000000000000000000000000000000000000000060140000000000000000000000000000000000000000000000000000000000006114000000000000000000000000000000000000000000000000000000000000621400000000000000000000000000000000000000000000000000000000000063140000000000000000000000000000000000000000000000000000000000006414000000000000000000000000000000000000000000000000000000000000651400000000000000000000000000000000000000000000000000000000000066140000000000000000000000000000000000000000000000000000000000006714000000000000000000000000000000000000000000000000000000000000681400000000000000000000000000000000000000000000000000000000000069140000000000000000000000000000000000000000000000000000000000006a140000000000000000000000000000000000000000000000000000000000006b140000000000000000000000000000000000000000000000000000000000006c140000000000000000000000000000000000000000000000000000000000006d140000000000000000000000000000000000000000000000000000000000006e140000000000000000000000000000000000000000000000000000000000006f1400000000000000000000000000000000000000000000000000000000000070140000000000000000000000000000000000000000000000000000000000007114000000000000000000000000000000000000000000000000000000000000721400000000000000000000000000000000000000000000000000000000000073140000000000000000000000000000000000000000000000000000000000007414000000000000000000000000000000000000000000000000000000000000751400000000000000000000000000000000000000000000000000000000000076140000000000000000000000000000000000000000000000000000000000007714000000000000000000000000000000000000000000000000000000000000781400000000000000000000000000000000000000000000000000000000000079140000000000000000000000000000000000000000000000000000000000007a140000000000000000000000000000000000000000000000000000000000007b140000000000000000000000000000000000000000000000000000000000007c140000000000000000000000000000000000000000000000000000000000007d140000000000000000000000000000000000000000000000000000000000007e140000000000000000000000000000000000000000000000000000000000007f1400000000000000000000000000000000000000000000000000000000000080140000000000000000000000000000000000000000000000000000000000008114000000000000000000000000000000000000000000000000000000000000821400000000000000000000000000000000000000000000000000000000000083140000000000000000000000000000000000000000000000000000000000008414000000000000000000000000000000000000000000000000000000000000851400000000000000000000000000000000000000000000000000000000000086140000000000000000000000000000000000000000000000000000000000008714000000000000000000000000000000000000000000000000000000000000881400000000000000000000000000000000000000000000000000000000000089140000000000000000000000000000000000000000000000000000000000008a140000000000000000000000000000000000000000000000000000000000008b140000000000000000000000000000000000000000000000000000000000008c140000000000000000000000000000000000000000000000000000000000008d140000000000000000000000000000000000000000000000000000000000008e140000000000000000000000000000000000000000000000000000000000008f1400000000000000000000000000000000000000000000000000000000000090140000000000000000000000000000000000000000000000000000000000009114000000000000000000000000000000000000000000000000000000000000921400000000000000000000000000000000000000000000000000000000000093140000000000000000000000000000000000000000000000000000000000009414000000000000000000000000000000000000000000000000000000000000951400000000000000000000000000000000000000000000000000000000000096140000000000000000000000000000000000000000000000000000000000009714000000000000000000000000000000000000000000000000000000000000981400000000000000000000000000000000000000000000000000000000000099140000000000000000000000000000000000000000000000000000000000009a140000000000000000000000000000000000000000000000000000000000009b140000000000000000000000000000000000000000000000000000000000009c140000000000000000000000000000000000000000000000000000000000009d140000000000000000000000000000000000000000000000000000000000009e140000000000000000000000000000000000000000000000000000000000009f14000000000000000000000000000000000000000000000000000000000000a014000000000000000000000000000000000000000000000000000000000000a114000000000000000000000000000000000000000000000000000000000000a214000000000000000000000000000000000000000000000000000000000000a314000000000000000000000000000000000000000000000000000000000000a414000000000000000000000000000000000000000000000000000000000000a514000000000000000000000000000000000000000000000000000000000000a614000000000000000000000000000000000000000000000000000000000000a714000000000000000000000000000000000000000000000000000000000000a814000000000000000000000000000000000000000000000000000000000000a914000000000000000000000000000000000000000000000000000000000000aa14000000000000000000000000000000000000000000000000000000000000ab14000000000000000000000000000000000000000000000000000000000000ac14000000000000000000000000000000000000000000000000000000000000ad14000000000000000000000000000000000000000000000000000000000000ae14000000000000000000000000000000000000000000000000000000000000af14000000000000000000000000000000000000000000000000000000000000b014000000000000000000000000000000000000000000000000000000000000b114000000000000000000000000000000000000000000000000000000000000b214000000000000000000000000000000000000000000000000000000000000b314000000000000000000000000000000000000000000000000000000000000b414000000000000000000000000000000000000000000000000000000000000b514000000000000000000000000000000000000000000000000000000000000b614000000000000000000000000000000000000000000000000000000000000b714000000000000000000000000000000000000000000000000000000000000b814000000000000000000000000000000000000000000000000000000000000b914000000000000000000000000000000000000000000000000000000000000ba14000000000000000000000000000000000000000000000000000000000000bb14000000000000000000000000000000000000000000000000000000000000bc14000000000000000000000000000000000000000000000000000000000000bd14000000000000000000000000000000000000000000000000000000000000be14000000000000000000000000000000000000000000000000000000000000bf14000000000000000000000000000000000000000000000000000000000000c014000000000000000000000000000000000000000000000000000000000000c114000000000000000000000000000000000000000000000000000000000000c214000000000000000000000000000000000000000000000000000000000000c314000000000000000000000000000000000000000000000000000000000000c414000000000000000000000000000000000000000000000000000000000000c514000000000000000000000000000000000000000000000000000000000000c614000000000000000000000000000000000000000000000000000000000000c714000000000000000000000000000000000000000000000000000000000000c814000000000000000000000000000000000000000000000000000000000000c914000000000000000000000000000000000000000000000000000000000000ca14000000000000000000000000000000000000000000000000000000000000cb14000000000000000000000000000000000000000000000000000000000000cc14000000000000000000000000000000000000000000000000000000000000cd14000000000000000000000000000000000000000000000000000000000000ce14000000000000000000000000000000000000000000000000000000000000cf14000000000000000000000000000000000000000000000000000000000000d014000000000000000000000000000000000000000000000000000000000000d114000000000000000000000000000000000000000000000000000000000000d214000000000000000000000000000000000000000000000000000000000000d314000000000000000000000000000000000000000000000000000000000000d414000000000000000000000000000000000000000000000000000000000000d514000000000000000000000000000000000000000000000000000000000000d614000000000000000000000000000000000000000000000000000000000000d714000000000000000000000000000000000000000000000000000000000000d814000000000000000000000000000000000000000000000000000000000000d914000000000000000000000000000000000000000000000000000000000000da14000000000000000000000000000000000000000000000000000000000000db14000000000000000000000000000000000000000000000000000000000000dc14000000000000000000000000000000000000000000000000000000000000dd14000000000000000000000000000000000000000000000000000000000000de14000000000000000000000000000000000000000000000000000000000000df14000000000000000000000000000000000000000000000000000000000000e014000000000000000000000000000000000000000000000000000000000000e114000000000000000000000000000000000000000000000000000000000000e214000000000000000000000000000000000000000000000000000000000000e314000000000000000000000000000000000000000000000000000000000000e414000000000000000000000000000000000000000000000000000000000000e514000000000000000000000000000000000000000000000000000000000000e614000000000000000000000000000000000000000000000000000000000000e714000000000000000000000000000000000000000000000000000000000000e814000000000000000000000000000000000000000000000000000000000000e914000000000000000000000000000000000000000000000000000000000000ea14000000000000000000000000000000000000000000000000000000000000eb14000000000000000000000000000000000000000000000000000000000000ec14000000000000000000000000000000000000000000000000000000000000ed14000000000000000000000000000000000000000000000000000000000000ee14000000000000000000000000000000000000000000000000000000000000ef14000000000000000000000000000000000000000000000000000000000000f014000000000000000000000000000000000000000000000000000000000000f114000000000000000000000000000000000000000000000000000000000000f214000000000000000000000000000000000000000000000000000000000000f314000000000000000000000000000000000000000000000000000000000000f414000000000000000000000000000000000000000000000000000000000000f514000000000000000000000000000000000000000000000000000000000000f614000000000000000000000000000000000000000000000000000000000000f714000000000000000000000000000000000000000000000000000000000000f814000000000000000000000000000000000000000000000000000000000000f914000000000000000000000000000000000000000000000000000000000000fa14000000000000000000000000000000000000000000000000000000000000fb14000000000000000000000000000000000000000000000000000000000000fc14000000000000000000000000000000000000000000000000000000000000fd14000000000000000000000000000000000000000000000000000000000000fe14000000000000000000000000000000000000000000000000000000000000ff1400000000000000000000000000000000000000000000000000000000000000150000000000000000000000000000000000000000000000000000000000000115000000000000000000000000000000000000000000000000000000000000021500000000000000000000000000000000000000000000000000000000000003150000000000000000000000000000000000000000000000000000000000000415000000000000000000000000000000000000000000000000000000000000051500000000000000000000000000000000000000000000000000000000000006150000000000000000000000000000000000000000000000000000000000000715000000000000000000000000000000000000000000000000000000000000081500000000000000000000000000000000000000000000000000000000000009150000000000000000000000000000000000000000000000000000000000000a150000000000000000000000000000000000000000000000000000000000000b150000000000000000000000000000000000000000000000000000000000000c150000000000000000000000000000000000000000000000000000000000000d150000000000000000000000000000000000000000000000000000000000000e150000000000000000000000000000000000000000000000000000000000000f1500000000000000000000000000000000000000000000000000000000000010150000000000000000000000000000000000000000000000000000000000001115000000000000000000000000000000000000000000000000000000000000121500000000000000000000000000000000000000000000000000000000000013150000000000000000000000000000000000000000000000000000000000001415000000000000000000000000000000000000000000000000000000000000151500000000000000000000000000000000000000000000000000000000000016150000000000000000000000000000000000000000000000000000000000001715000000000000000000000000000000000000000000000000000000000000181500000000000000000000000000000000000000000000000000000000000019150000000000000000000000000000000000000000000000000000000000001a150000000000000000000000000000000000000000000000000000000000001b150000000000000000000000000000000000000000000000000000000000001c150000000000000000000000000000000000000000000000000000000000001d150000000000000000000000000000000000000000000000000000000000001e150000000000000000000000000000000000000000000000000000000000001f1500000000000000000000000000000000000000000000000000000000000020150000000000000000000000000000000000000000000000000000000000002115000000000000000000000000000000000000000000000000000000000000221500000000000000000000000000000000000000000000000000000000000023150000000000000000000000000000000000000000000000000000000000002415000000000000000000000000000000000000000000000000000000000000251500000000000000000000000000000000000000000000000000000000000026150000000000000000000000000000000000000000000000000000000000002715000000000000000000000000000000000000000000000000000000000000281500000000000000000000000000000000000000000000000000000000000029150000000000000000000000000000000000000000000000000000000000002a150000000000000000000000000000000000000000000000000000000000002b150000000000000000000000000000000000000000000000000000000000002c150000000000000000000000000000000000000000000000000000000000002d150000000000000000000000000000000000000000000000000000000000002e150000000000000000000000000000000000000000000000000000000000002f1500000000000000000000000000000000000000000000000000000000000030150000000000000000000000000000000000000000000000000000000000003115000000000000000000000000000000000000000000000000000000000000321500000000000000000000000000000000000000000000000000000000000033150000000000000000000000000000000000000000000000000000000000003415000000000000000000000000000000000000000000000000000000000000351500000000000000000000000000000000000000000000000000000000000036150000000000000000000000000000000000000000000000000000000000003715000000000000000000000000000000000000000000000000000000000000381500000000000000000000000000000000000000000000000000000000000039150000000000000000000000000000000000000000000000000000000000003a150000000000000000000000000000000000000000000000000000000000003b150000000000000000000000000000000000000000000000000000000000003c150000000000000000000000000000000000000000000000000000000000003d150000000000000000000000000000000000000000000000000000000000003e150000000000000000000000000000000000000000000000000000000000003f1500000000000000000000000000000000000000000000000000000000000040150000000000000000000000000000000000000000000000000000000000004115000000000000000000000000000000000000000000000000000000000000421500000000000000000000000000000000000000000000000000000000000043150000000000000000000000000000000000000000000000000000000000004415000000000000000000000000000000000000000000000000000000000000451500000000000000000000000000000000000000000000000000000000000046150000000000000000000000000000000000000000000000000000000000004715000000000000000000000000000000000000000000000000000000000000481500000000000000000000000000000000000000000000000000000000000049150000000000000000000000000000000000000000000000000000000000004a150000000000000000000000000000000000000000000000000000000000004b150000000000000000000000000000000000000000000000000000000000004c150000000000000000000000000000000000000000000000000000000000004d150000000000000000000000000000000000000000000000000000000000004e150000000000000000000000000000000000000000000000000000000000004f1500000000000000000000000000000000000000000000000000000000000050150000000000000000000000000000000000000000000000000000000000005115000000000000000000000000000000000000000000000000000000000000521500000000000000000000000000000000000000000000000000000000000053150000000000000000000000000000000000000000000000000000000000005415000000000000000000000000000000000000000000000000000000000000551500000000000000000000000000000000000000000000000000000000000056150000000000000000000000000000000000000000000000000000000000005715000000000000000000000000000000000000000000000000000000000000581500000000000000000000000000000000000000000000000000000000000059150000000000000000000000000000000000000000000000000000000000005a150000000000000000000000000000000000000000000000000000000000005b150000000000000000000000000000000000000000000000000000000000005c150000000000000000000000000000000000000000000000000000000000005d150000000000000000000000000000000000000000000000000000000000005e150000000000000000000000000000000000000000000000000000000000005f1500000000000000000000000000000000000000000000000000000000000060150000000000000000000000000000000000000000000000000000000000006115000000000000000000000000000000000000000000000000000000000000621500000000000000000000000000000000000000000000000000000000000063150000000000000000000000000000000000000000000000000000000000006415000000000000000000000000000000000000000000000000000000000000651500000000000000000000000000000000000000000000000000000000000066150000000000000000000000000000000000000000000000000000000000006715000000000000000000000000000000000000000000000000000000000000681500000000000000000000000000000000000000000000000000000000000069150000000000000000000000000000000000000000000000000000000000006a150000000000000000000000000000000000000000000000000000000000006b150000000000000000000000000000000000000000000000000000000000006c150000000000000000000000000000000000000000000000000000000000006d150000000000000000000000000000000000000000000000000000000000006e150000000000000000000000000000000000000000000000000000000000006f1500000000000000000000000000000000000000000000000000000000000070150000000000000000000000000000000000000000000000000000000000007115000000000000000000000000000000000000000000000000000000000000721500000000000000000000000000000000000000000000000000000000000073150000000000000000000000000000000000000000000000000000000000007415000000000000000000000000000000000000000000000000000000000000751500000000000000000000000000000000000000000000000000000000000076150000000000000000000000000000000000000000000000000000000000007715000000000000000000000000000000000000000000000000000000000000781500000000000000000000000000000000000000000000000000000000000079150000000000000000000000000000000000000000000000000000000000007a150000000000000000000000000000000000000000000000000000000000007b150000000000000000000000000000000000000000000000000000000000007c150000000000000000000000000000000000000000000000000000000000007d150000000000000000000000000000000000000000000000000000000000007e150000000000000000000000000000000000000000000000000000000000007f1500000000000000000000000000000000000000000000000000000000000080150000000000000000000000000000000000000000000000000000000000008115000000000000000000000000000000000000000000000000000000000000821500000000000000000000000000000000000000000000000000000000000083150000000000000000000000000000000000000000000000000000000000008415000000000000000000000000000000000000000000000000000000000000851500000000000000000000000000000000000000000000000000000000000086150000000000000000000000000000000000000000000000000000000000008715000000000000000000000000000000000000000000000000000000000000881500000000000000000000000000000000000000000000000000000000000089150000000000000000000000000000000000000000000000000000000000008a150000000000000000000000000000000000000000000000000000000000008b150000000000000000000000000000000000000000000000000000000000008c150000000000000000000000000000000000000000000000000000000000008d150000000000000000000000000000000000000000000000000000000000008e150000000000000000000000000000000000000000000000000000000000008f1500000000000000000000000000000000000000000000000000000000000090150000000000000000000000000000000000000000000000000000000000009115000000000000000000000000000000000000000000000000000000000000921500000000000000000000000000000000000000000000000000000000000093150000000000000000000000000000000000000000000000000000000000009415000000000000000000000000000000000000000000000000000000000000951500000000000000000000000000000000000000000000000000000000000096150000000000000000000000000000000000000000000000000000000000009715000000000000000000000000000000000000000000000000000000000000981500000000000000000000000000000000000000000000000000000000000099150000000000000000000000000000000000000000000000000000000000009a150000000000000000000000000000000000000000000000000000000000009b150000000000000000000000000000000000000000000000000000000000009c150000000000000000000000000000000000000000000000000000000000009d150000000000000000000000000000000000000000000000000000000000009e150000000000000000000000000000000000000000000000000000000000009f15000000000000000000000000000000000000000000000000000000000000a015000000000000000000000000000000000000000000000000000000000000a115000000000000000000000000000000000000000000000000000000000000a215000000000000000000000000000000000000000000000000000000000000a315000000000000000000000000000000000000000000000000000000000000a415000000000000000000000000000000000000000000000000000000000000a515000000000000000000000000000000000000000000000000000000000000a615000000000000000000000000000000000000000000000000000000000000a715000000000000000000000000000000000000000000000000000000000000a815000000000000000000000000000000000000000000000000000000000000a915000000000000000000000000000000000000000000000000000000000000aa15000000000000000000000000000000000000000000000000000000000000ab15000000000000000000000000000000000000000000000000000000000000ac15000000000000000000000000000000000000000000000000000000000000ad15000000000000000000000000000000000000000000000000000000000000ae15000000000000000000000000000000000000000000000000000000000000af15000000000000000000000000000000000000000000000000000000000000b015000000000000000000000000000000000000000000000000000000000000b115000000000000000000000000000000000000000000000000000000000000b215000000000000000000000000000000000000000000000000000000000000b315000000000000000000000000000000000000000000000000000000000000b415000000000000000000000000000000000000000000000000000000000000b515000000000000000000000000000000000000000000000000000000000000b615000000000000000000000000000000000000000000000000000000000000b715000000000000000000000000000000000000000000000000000000000000b815000000000000000000000000000000000000000000000000000000000000b915000000000000000000000000000000000000000000000000000000000000ba15000000000000000000000000000000000000000000000000000000000000bb15000000000000000000000000000000000000000000000000000000000000bc15000000000000000000000000000000000000000000000000000000000000bd15000000000000000000000000000000000000000000000000000000000000be15000000000000000000000000000000000000000000000000000000000000bf15000000000000000000000000000000000000000000000000000000000000c015000000000000000000000000000000000000000000000000000000000000c115000000000000000000000000000000000000000000000000000000000000c215000000000000000000000000000000000000000000000000000000000000c315000000000000000000000000000000000000000000000000000000000000c415000000000000000000000000000000000000000000000000000000000000c515000000000000000000000000000000000000000000000000000000000000c615000000000000000000000000000000000000000000000000000000000000c715000000000000000000000000000000000000000000000000000000000000c815000000000000000000000000000000000000000000000000000000000000c915000000000000000000000000000000000000000000000000000000000000ca15000000000000000000000000000000000000000000000000000000000000cb15000000000000000000000000000000000000000000000000000000000000cc15000000000000000000000000000000000000000000000000000000000000cd15000000000000000000000000000000000000000000000000000000000000ce15000000000000000000000000000000000000000000000000000000000000cf15000000000000000000000000000000000000000000000000000000000000d015000000000000000000000000000000000000000000000000000000000000d115000000000000000000000000000000000000000000000000000000000000d215000000000000000000000000000000000000000000000000000000000000d315000000000000000000000000000000000000000000000000000000000000d415000000000000000000000000000000000000000000000000000000000000d515000000000000000000000000000000000000000000000000000000000000d615000000000000000000000000000000000000000000000000000000000000d715000000000000000000000000000000000000000000000000000000000000d815000000000000000000000000000000000000000000000000000000000000d915000000000000000000000000000000000000000000000000000000000000da15000000000000000000000000000000000000000000000000000000000000db15000000000000000000000000000000000000000000000000000000000000dc15000000000000000000000000000000000000000000000000000000000000dd15000000000000000000000000000000000000000000000000000000000000de15000000000000000000000000000000000000000000000000000000000000df15000000000000000000000000000000000000000000000000000000000000e015000000000000000000000000000000000000000000000000000000000000e115000000000000000000000000000000000000000000000000000000000000e215000000000000000000000000000000000000000000000000000000000000e315000000000000000000000000000000000000000000000000000000000000e415000000000000000000000000000000000000000000000000000000000000e515000000000000000000000000000000000000000000000000000000000000e615000000000000000000000000000000000000000000000000000000000000e715000000000000000000000000000000000000000000000000000000000000e815000000000000000000000000000000000000000000000000000000000000e915000000000000000000000000000000000000000000000000000000000000ea15000000000000000000000000000000000000000000000000000000000000eb15000000000000000000000000000000000000000000000000000000000000ec15000000000000000000000000000000000000000000000000000000000000ed15000000000000000000000000000000000000000000000000000000000000ee15000000000000000000000000000000000000000000000000000000000000ef15000000000000000000000000000000000000000000000000000000000000f015000000000000000000000000000000000000000000000000000000000000f115000000000000000000000000000000000000000000000000000000000000f215000000000000000000000000000000000000000000000000000000000000f315000000000000000000000000000000000000000000000000000000000000f415000000000000000000000000000000000000000000000000000000000000f515000000000000000000000000000000000000000000000000000000000000f615000000000000000000000000000000000000000000000000000000000000f715000000000000000000000000000000000000000000000000000000000000f815000000000000000000000000000000000000000000000000000000000000f915000000000000000000000000000000000000000000000000000000000000fa15000000000000000000000000000000000000000000000000000000000000fb15000000000000000000000000000000000000000000000000000000000000fc15000000000000000000000000000000000000000000000000000000000000fd15000000000000000000000000000000000000000000000000000000000000fe15000000000000000000000000000000000000000000000000000000000000ff1500000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000116000000000000000000000000000000000000000000000000000000000000021600000000000000000000000000000000000000000000000000000000000003160000000000000000000000000000000000000000000000000000000000000416000000000000000000000000000000000000000000000000000000000000051600000000000000000000000000000000000000000000000000000000000006160000000000000000000000000000000000000000000000000000000000000716000000000000000000000000000000000000000000000000000000000000081600000000000000000000000000000000000000000000000000000000000009160000000000000000000000000000000000000000000000000000000000000a160000000000000000000000000000000000000000000000000000000000000b160000000000000000000000000000000000000000000000000000000000000c160000000000000000000000000000000000000000000000000000000000000d160000000000000000000000000000000000000000000000000000000000000e160000000000000000000000000000000000000000000000000000000000000f1600000000000000000000000000000000000000000000000000000000000010160000000000000000000000000000000000000000000000000000000000001116000000000000000000000000000000000000000000000000000000000000121600000000000000000000000000000000000000000000000000000000000013160000000000000000000000000000000000000000000000000000000000001416000000000000000000000000000000000000000000000000000000000000151600000000000000000000000000000000000000000000000000000000000016160000000000000000000000000000000000000000000000000000000000001716000000000000000000000000000000000000000000000000000000000000181600000000000000000000000000000000000000000000000000000000000019160000000000000000000000000000000000000000000000000000000000001a160000000000000000000000000000000000000000000000000000000000001b160000000000000000000000000000000000000000000000000000000000001c160000000000000000000000000000000000000000000000000000000000001d160000000000000000000000000000000000000000000000000000000000001e160000000000000000000000000000000000000000000000000000000000001f1600000000000000000000000000000000000000000000000000000000000020160000000000000000000000000000000000000000000000000000000000002116000000000000000000000000000000000000000000000000000000000000221600000000000000000000000000000000000000000000000000000000000023160000000000000000000000000000000000000000000000000000000000002416000000000000000000000000000000000000000000000000000000000000251600000000000000000000000000000000000000000000000000000000000026160000000000000000000000000000000000000000000000000000000000002716000000000000000000000000000000000000000000000000000000000000281600000000000000000000000000000000000000000000000000000000000029160000000000000000000000000000000000000000000000000000000000002a160000000000000000000000000000000000000000000000000000000000002b160000000000000000000000000000000000000000000000000000000000002c160000000000000000000000000000000000000000000000000000000000002d160000000000000000000000000000000000000000000000000000000000002e160000000000000000000000000000000000000000000000000000000000002f1600000000000000000000000000000000000000000000000000000000000030160000000000000000000000000000000000000000000000000000000000003116000000000000000000000000000000000000000000000000000000000000321600000000000000000000000000000000000000000000000000000000000033160000000000000000000000000000000000000000000000000000000000003416000000000000000000000000000000000000000000000000000000000000351600000000000000000000000000000000000000000000000000000000000036160000000000000000000000000000000000000000000000000000000000003716000000000000000000000000000000000000000000000000000000000000381600000000000000000000000000000000000000000000000000000000000039160000000000000000000000000000000000000000000000000000000000003a160000000000000000000000000000000000000000000000000000000000003b160000000000000000000000000000000000000000000000000000000000003c160000000000000000000000000000000000000000000000000000000000003d160000000000000000000000000000000000000000000000000000000000003e160000000000000000000000000000000000000000000000000000000000003f1600000000000000000000000000000000000000000000000000000000000040160000000000000000000000000000000000000000000000000000000000004116000000000000000000000000000000000000000000000000000000000000421600000000000000000000000000000000000000000000000000000000000043160000000000000000000000000000000000000000000000000000000000004416000000000000000000000000000000000000000000000000000000000000451600000000000000000000000000000000000000000000000000000000000046160000000000000000000000000000000000000000000000000000000000004716000000000000000000000000000000000000000000000000000000000000481600000000000000000000000000000000000000000000000000000000000049160000000000000000000000000000000000000000000000000000000000004a160000000000000000000000000000000000000000000000000000000000004b160000000000000000000000000000000000000000000000000000000000004c160000000000000000000000000000000000000000000000000000000000004d160000000000000000000000000000000000000000000000000000000000004e160000000000000000000000000000000000000000000000000000000000004f1600000000000000000000000000000000000000000000000000000000000050160000000000000000000000000000000000000000000000000000000000005116000000000000000000000000000000000000000000000000000000000000521600000000000000000000000000000000000000000000000000000000000053160000000000000000000000000000000000000000000000000000000000005416000000000000000000000000000000000000000000000000000000000000551600000000000000000000000000000000000000000000000000000000000056160000000000000000000000000000000000000000000000000000000000005716000000000000000000000000000000000000000000000000000000000000581600000000000000000000000000000000000000000000000000000000000059160000000000000000000000000000000000000000000000000000000000005a160000000000000000000000000000000000000000000000000000000000005b160000000000000000000000000000000000000000000000000000000000005c160000000000000000000000000000000000000000000000000000000000005d160000000000000000000000000000000000000000000000000000000000005e160000000000000000000000000000000000000000000000000000000000005f1600000000000000000000000000000000000000000000000000000000000060160000000000000000000000000000000000000000000000000000000000006116000000000000000000000000000000000000000000000000000000000000621600000000000000000000000000000000000000000000000000000000000063160000000000000000000000000000000000000000000000000000000000006416000000000000000000000000000000000000000000000000000000000000651600000000000000000000000000000000000000000000000000000000000066160000000000000000000000000000000000000000000000000000000000006716000000000000000000000000000000000000000000000000000000000000681600000000000000000000000000000000000000000000000000000000000069160000000000000000000000000000000000000000000000000000000000006a160000000000000000000000000000000000000000000000000000000000006b160000000000000000000000000000000000000000000000000000000000006c160000000000000000000000000000000000000000000000000000000000006d160000000000000000000000000000000000000000000000000000000000006e160000000000000000000000000000000000000000000000000000000000006f1600000000000000000000000000000000000000000000000000000000000070160000000000000000000000000000000000000000000000000000000000007116000000000000000000000000000000000000000000000000000000000000721600000000000000000000000000000000000000000000000000000000000073160000000000000000000000000000000000000000000000000000000000007416000000000000000000000000000000000000000000000000000000000000751600000000000000000000000000000000000000000000000000000000000076160000000000000000000000000000000000000000000000000000000000007716000000000000000000000000000000000000000000000000000000000000781600000000000000000000000000000000000000000000000000000000000079160000000000000000000000000000000000000000000000000000000000007a160000000000000000000000000000000000000000000000000000000000007b160000000000000000000000000000000000000000000000000000000000007c160000000000000000000000000000000000000000000000000000000000007d160000000000000000000000000000000000000000000000000000000000007e160000000000000000000000000000000000000000000000000000000000007f1600000000000000000000000000000000000000000000000000000000000080160000000000000000000000000000000000000000000000000000000000008116000000000000000000000000000000000000000000000000000000000000821600000000000000000000000000000000000000000000000000000000000083160000000000000000000000000000000000000000000000000000000000008416000000000000000000000000000000000000000000000000000000000000851600000000000000000000000000000000000000000000000000000000000086160000000000000000000000000000000000000000000000000000000000008716000000000000000000000000000000000000000000000000000000000000881600000000000000000000000000000000000000000000000000000000000089160000000000000000000000000000000000000000000000000000000000008a160000000000000000000000000000000000000000000000000000000000008b160000000000000000000000000000000000000000000000000000000000008c160000000000000000000000000000000000000000000000000000000000008d160000000000000000000000000000000000000000000000000000000000008e160000000000000000000000000000000000000000000000000000000000008f1600000000000000000000000000000000000000000000000000000000000090160000000000000000000000000000000000000000000000000000000000009116000000000000000000000000000000000000000000000000000000000000921600000000000000000000000000000000000000000000000000000000000093160000000000000000000000000000000000000000000000000000000000009416000000000000000000000000000000000000000000000000000000000000951600000000000000000000000000000000000000000000000000000000000096160000000000000000000000000000000000000000000000000000000000009716000000000000000000000000000000000000000000000000000000000000981600000000000000000000000000000000000000000000000000000000000099160000000000000000000000000000000000000000000000000000000000009a160000000000000000000000000000000000000000000000000000000000009b160000000000000000000000000000000000000000000000000000000000009c160000000000000000000000000000000000000000000000000000000000009d160000000000000000000000000000000000000000000000000000000000009e160000000000000000000000000000000000000000000000000000000000009f16000000000000000000000000000000000000000000000000000000000000a016000000000000000000000000000000000000000000000000000000000000a116000000000000000000000000000000000000000000000000000000000000a216000000000000000000000000000000000000000000000000000000000000a316000000000000000000000000000000000000000000000000000000000000a416000000000000000000000000000000000000000000000000000000000000a516000000000000000000000000000000000000000000000000000000000000a616000000000000000000000000000000000000000000000000000000000000a716000000000000000000000000000000000000000000000000000000000000a816000000000000000000000000000000000000000000000000000000000000a916000000000000000000000000000000000000000000000000000000000000aa16000000000000000000000000000000000000000000000000000000000000ab16000000000000000000000000000000000000000000000000000000000000ac16000000000000000000000000000000000000000000000000000000000000ad16000000000000000000000000000000000000000000000000000000000000ae16000000000000000000000000000000000000000000000000000000000000af16000000000000000000000000000000000000000000000000000000000000b016000000000000000000000000000000000000000000000000000000000000b116000000000000000000000000000000000000000000000000000000000000b216000000000000000000000000000000000000000000000000000000000000b316000000000000000000000000000000000000000000000000000000000000b416000000000000000000000000000000000000000000000000000000000000b516000000000000000000000000000000000000000000000000000000000000b616000000000000000000000000000000000000000000000000000000000000b716000000000000000000000000000000000000000000000000000000000000b816000000000000000000000000000000000000000000000000000000000000b916000000000000000000000000000000000000000000000000000000000000ba16000000000000000000000000000000000000000000000000000000000000bb16000000000000000000000000000000000000000000000000000000000000bc16000000000000000000000000000000000000000000000000000000000000bd16000000000000000000000000000000000000000000000000000000000000be16000000000000000000000000000000000000000000000000000000000000bf16000000000000000000000000000000000000000000000000000000000000c016000000000000000000000000000000000000000000000000000000000000c116000000000000000000000000000000000000000000000000000000000000c216000000000000000000000000000000000000000000000000000000000000c316000000000000000000000000000000000000000000000000000000000000c416000000000000000000000000000000000000000000000000000000000000c516000000000000000000000000000000000000000000000000000000000000c616000000000000000000000000000000000000000000000000000000000000c716000000000000000000000000000000000000000000000000000000000000c816000000000000000000000000000000000000000000000000000000000000c916000000000000000000000000000000000000000000000000000000000000ca16000000000000000000000000000000000000000000000000000000000000cb16000000000000000000000000000000000000000000000000000000000000cc16000000000000000000000000000000000000000000000000000000000000cd16000000000000000000000000000000000000000000000000000000000000ce16000000000000000000000000000000000000000000000000000000000000cf16000000000000000000000000000000000000000000000000000000000000d016000000000000000000000000000000000000000000000000000000000000d116000000000000000000000000000000000000000000000000000000000000d216000000000000000000000000000000000000000000000000000000000000d316000000000000000000000000000000000000000000000000000000000000d416000000000000000000000000000000000000000000000000000000000000d516000000000000000000000000000000000000000000000000000000000000d616000000000000000000000000000000000000000000000000000000000000d716000000000000000000000000000000000000000000000000000000000000d816000000000000000000000000000000000000000000000000000000000000d916000000000000000000000000000000000000000000000000000000000000da16000000000000000000000000000000000000000000000000000000000000db16000000000000000000000000000000000000000000000000000000000000dc16000000000000000000000000000000000000000000000000000000000000dd16000000000000000000000000000000000000000000000000000000000000de16000000000000000000000000000000000000000000000000000000000000df16000000000000000000000000000000000000000000000000000000000000e016000000000000000000000000000000000000000000000000000000000000e116000000000000000000000000000000000000000000000000000000000000e216000000000000000000000000000000000000000000000000000000000000e316000000000000000000000000000000000000000000000000000000000000e416000000000000000000000000000000000000000000000000000000000000e516000000000000000000000000000000000000000000000000000000000000e616000000000000000000000000000000000000000000000000000000000000e716000000000000000000000000000000000000000000000000000000000000e816000000000000000000000000000000000000000000000000000000000000e916000000000000000000000000000000000000000000000000000000000000ea16000000000000000000000000000000000000000000000000000000000000eb16000000000000000000000000000000000000000000000000000000000000ec16000000000000000000000000000000000000000000000000000000000000ed16000000000000000000000000000000000000000000000000000000000000ee16000000000000000000000000000000000000000000000000000000000000ef16000000000000000000000000000000000000000000000000000000000000f016000000000000000000000000000000000000000000000000000000000000f116000000000000000000000000000000000000000000000000000000000000f216000000000000000000000000000000000000000000000000000000000000f316000000000000000000000000000000000000000000000000000000000000f416000000000000000000000000000000000000000000000000000000000000f516000000000000000000000000000000000000000000000000000000000000f616000000000000000000000000000000000000000000000000000000000000f716000000000000000000000000000000000000000000000000000000000000f816000000000000000000000000000000000000000000000000000000000000f916000000000000000000000000000000000000000000000000000000000000fa16000000000000000000000000000000000000000000000000000000000000fb16000000000000000000000000000000000000000000000000000000000000fc16000000000000000000000000000000000000000000000000000000000000fd16000000000000000000000000000000000000000000000000000000000000fe16000000000000000000000000000000000000000000000000000000000000ff1600000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000000117000000000000000000000000000000000000000000000000000000000000021700000000000000000000000000000000000000000000000000000000000003170000000000000000000000000000000000000000000000000000000000000417000000000000000000000000000000000000000000000000000000000000051700000000000000000000000000000000000000000000000000000000000006170000000000000000000000000000000000000000000000000000000000000717000000000000000000000000000000000000000000000000000000000000081700000000000000000000000000000000000000000000000000000000000009170000000000000000000000000000000000000000000000000000000000000a170000000000000000000000000000000000000000000000000000000000000b170000000000000000000000000000000000000000000000000000000000000c170000000000000000000000000000000000000000000000000000000000000d170000000000000000000000000000000000000000000000000000000000000e170000000000000000000000000000000000000000000000000000000000000f1700000000000000000000000000000000000000000000000000000000000010170000000000000000000000000000000000000000000000000000000000001117000000000000000000000000000000000000000000000000000000000000121700000000000000000000000000000000000000000000000000000000000013170000000000000000000000000000000000000000000000000000000000001417000000000000000000000000000000000000000000000000000000000000151700000000000000000000000000000000000000000000000000000000000016170000000000000000000000000000000000000000000000000000000000001717000000000000000000000000000000000000000000000000000000000000181700000000000000000000000000000000000000000000000000000000000019170000000000000000000000000000000000000000000000000000000000001a170000000000000000000000000000000000000000000000000000000000001b170000000000000000000000000000000000000000000000000000000000001c170000000000000000000000000000000000000000000000000000000000001d170000000000000000000000000000000000000000000000000000000000001e170000000000000000000000000000000000000000000000000000000000001f1700000000000000000000000000000000000000000000000000000000000020170000000000000000000000000000000000000000000000000000000000002117000000000000000000000000000000000000000000000000000000000000221700000000000000000000000000000000000000000000000000000000000023170000000000000000000000000000000000000000000000000000000000002417000000000000000000000000000000000000000000000000000000000000251700000000000000000000000000000000000000000000000000000000000026170000000000000000000000000000000000000000000000000000000000002717000000000000000000000000000000000000000000000000000000000000281700000000000000000000000000000000000000000000000000000000000029170000000000000000000000000000000000000000000000000000000000002a170000000000000000000000000000000000000000000000000000000000002b170000000000000000000000000000000000000000000000000000000000002c170000000000000000000000000000000000000000000000000000000000002d170000000000000000000000000000000000000000000000000000000000002e170000000000000000000000000000000000000000000000000000000000002f1700000000000000000000000000000000000000000000000000000000000030170000000000000000000000000000000000000000000000000000000000003117000000000000000000000000000000000000000000000000000000000000321700000000000000000000000000000000000000000000000000000000000033170000000000000000000000000000000000000000000000000000000000003417000000000000000000000000000000000000000000000000000000000000351700000000000000000000000000000000000000000000000000000000000036170000000000000000000000000000000000000000000000000000000000003717000000000000000000000000000000000000000000000000000000000000381700000000000000000000000000000000000000000000000000000000000039170000000000000000000000000000000000000000000000000000000000003a170000000000000000000000000000000000000000000000000000000000003b170000000000000000000000000000000000000000000000000000000000003c170000000000000000000000000000000000000000000000000000000000003d170000000000000000000000000000000000000000000000000000000000003e170000000000000000000000000000000000000000000000000000000000003f1700000000000000000000000000000000000000000000000000000000000040170000000000000000000000000000000000000000000000000000000000004117000000000000000000000000000000000000000000000000000000000000421700000000000000000000000000000000000000000000000000000000000043170000000000000000000000000000000000000000000000000000000000004417000000000000000000000000000000000000000000000000000000000000451700000000000000000000000000000000000000000000000000000000000046170000000000000000000000000000000000000000000000000000000000004717000000000000000000000000000000000000000000000000000000000000481700000000000000000000000000000000000000000000000000000000000049170000000000000000000000000000000000000000000000000000000000004a170000000000000000000000000000000000000000000000000000000000004b170000000000000000000000000000000000000000000000000000000000004c170000000000000000000000000000000000000000000000000000000000004d170000000000000000000000000000000000000000000000000000000000004e170000000000000000000000000000000000000000000000000000000000004f1700000000000000000000000000000000000000000000000000000000000050170000000000000000000000000000000000000000000000000000000000005117000000000000000000000000000000000000000000000000000000000000521700000000000000000000000000000000000000000000000000000000000053170000000000000000000000000000000000000000000000000000000000005417000000000000000000000000000000000000000000000000000000000000551700000000000000000000000000000000000000000000000000000000000056170000000000000000000000000000000000000000000000000000000000005717000000000000000000000000000000000000000000000000000000000000581700000000000000000000000000000000000000000000000000000000000059170000000000000000000000000000000000000000000000000000000000005a170000000000000000000000000000000000000000000000000000000000005b170000000000000000000000000000000000000000000000000000000000005c170000000000000000000000000000000000000000000000000000000000005d170000000000000000000000000000000000000000000000000000000000005e170000000000000000000000000000000000000000000000000000000000005f1700000000000000000000000000000000000000000000000000000000000060170000000000000000000000000000000000000000000000000000000000006117000000000000000000000000000000000000000000000000000000000000621700000000000000000000000000000000000000000000000000000000000063170000000000000000000000000000000000000000000000000000000000006417000000000000000000000000000000000000000000000000000000000000651700000000000000000000000000000000000000000000000000000000000066170000000000000000000000000000000000000000000000000000000000006717000000000000000000000000000000000000000000000000000000000000681700000000000000000000000000000000000000000000000000000000000069170000000000000000000000000000000000000000000000000000000000006a170000000000000000000000000000000000000000000000000000000000006b170000000000000000000000000000000000000000000000000000000000006c170000000000000000000000000000000000000000000000000000000000006d170000000000000000000000000000000000000000000000000000000000006e170000000000000000000000000000000000000000000000000000000000006f1700000000000000000000000000000000000000000000000000000000000070170000000000000000000000000000000000000000000000000000000000007117000000000000000000000000000000000000000000000000000000000000721700000000000000000000000000000000000000000000000000000000000073170000000000000000000000000000000000000000000000000000000000007417000000000000000000000000000000000000000000000000000000000000751700000000000000000000000000000000000000000000000000000000000076170000000000000000000000000000000000000000000000000000000000007717000000000000000000000000000000000000000000000000000000000000781700000000000000000000000000000000000000000000000000000000000079170000000000000000000000000000000000000000000000000000000000007a170000000000000000000000000000000000000000000000000000000000007b170000000000000000000000000000000000000000000000000000000000007c170000000000000000000000000000000000000000000000000000000000007d170000000000000000000000000000000000000000000000000000000000007e170000000000000000000000000000000000000000000000000000000000007f1700000000000000000000000000000000000000000000000000000000000080170000000000000000000000000000000000000000000000000000000000008117000000000000000000000000000000000000000000000000000000000000821700000000000000000000000000000000000000000000000000000000000083170000000000000000000000000000000000000000000000000000000000008417000000000000000000000000000000000000000000000000000000000000851700000000000000000000000000000000000000000000000000000000000086170000000000000000000000000000000000000000000000000000000000008717000000000000000000000000000000000000000000000000000000000000881700000000000000000000000000000000000000000000000000000000000089170000000000000000000000000000000000000000000000000000000000008a170000000000000000000000000000000000000000000000000000000000008b170000000000000000000000000000000000000000000000000000000000008c170000000000000000000000000000000000000000000000000000000000008d170000000000000000000000000000000000000000000000000000000000008e170000000000000000000000000000000000000000000000000000000000008f1700000000000000000000000000000000000000000000000000000000000090170000000000000000000000000000000000000000000000000000000000009117000000000000000000000000000000000000000000000000000000000000921700000000000000000000000000000000000000000000000000000000000093170000000000000000000000000000000000000000000000000000000000009417000000000000000000000000000000000000000000000000000000000000951700000000000000000000000000000000000000000000000000000000000096170000000000000000000000000000000000000000000000000000000000009717000000000000000000000000000000000000000000000000000000000000981700000000000000000000000000000000000000000000000000000000000099170000000000000000000000000000000000000000000000000000000000009a170000000000000000000000000000000000000000000000000000000000009b170000000000000000000000000000000000000000000000000000000000009c170000000000000000000000000000000000000000000000000000000000009d170000000000000000000000000000000000000000000000000000000000009e170000000000000000000000000000000000000000000000000000000000009f17000000000000000000000000000000000000000000000000000000000000a017000000000000000000000000000000000000000000000000000000000000a117000000000000000000000000000000000000000000000000000000000000a217000000000000000000000000000000000000000000000000000000000000a317000000000000000000000000000000000000000000000000000000000000a417000000000000000000000000000000000000000000000000000000000000a517000000000000000000000000000000000000000000000000000000000000a617000000000000000000000000000000000000000000000000000000000000a717000000000000000000000000000000000000000000000000000000000000a817000000000000000000000000000000000000000000000000000000000000a917000000000000000000000000000000000000000000000000000000000000aa17000000000000000000000000000000000000000000000000000000000000ab17000000000000000000000000000000000000000000000000000000000000ac17000000000000000000000000000000000000000000000000000000000000ad17000000000000000000000000000000000000000000000000000000000000ae17000000000000000000000000000000000000000000000000000000000000af17000000000000000000000000000000000000000000000000000000000000b017000000000000000000000000000000000000000000000000000000000000b117000000000000000000000000000000000000000000000000000000000000b217000000000000000000000000000000000000000000000000000000000000b317000000000000000000000000000000000000000000000000000000000000b417000000000000000000000000000000000000000000000000000000000000b517000000000000000000000000000000000000000000000000000000000000b617000000000000000000000000000000000000000000000000000000000000b717000000000000000000000000000000000000000000000000000000000000b817000000000000000000000000000000000000000000000000000000000000b917000000000000000000000000000000000000000000000000000000000000ba17000000000000000000000000000000000000000000000000000000000000bb17000000000000000000000000000000000000000000000000000000000000bc17000000000000000000000000000000000000000000000000000000000000bd17000000000000000000000000000000000000000000000000000000000000be17000000000000000000000000000000000000000000000000000000000000bf17000000000000000000000000000000000000000000000000000000000000c017000000000000000000000000000000000000000000000000000000000000c117000000000000000000000000000000000000000000000000000000000000c217000000000000000000000000000000000000000000000000000000000000c317000000000000000000000000000000000000000000000000000000000000c417000000000000000000000000000000000000000000000000000000000000c517000000000000000000000000000000000000000000000000000000000000c617000000000000000000000000000000000000000000000000000000000000c717000000000000000000000000000000000000000000000000000000000000c817000000000000000000000000000000000000000000000000000000000000c917000000000000000000000000000000000000000000000000000000000000ca17000000000000000000000000000000000000000000000000000000000000cb17000000000000000000000000000000000000000000000000000000000000cc17000000000000000000000000000000000000000000000000000000000000cd17000000000000000000000000000000000000000000000000000000000000ce17000000000000000000000000000000000000000000000000000000000000cf17000000000000000000000000000000000000000000000000000000000000d017000000000000000000000000000000000000000000000000000000000000d117000000000000000000000000000000000000000000000000000000000000d217000000000000000000000000000000000000000000000000000000000000d317000000000000000000000000000000000000000000000000000000000000d417000000000000000000000000000000000000000000000000000000000000d517000000000000000000000000000000000000000000000000000000000000d617000000000000000000000000000000000000000000000000000000000000d717000000000000000000000000000000000000000000000000000000000000d817000000000000000000000000000000000000000000000000000000000000d917000000000000000000000000000000000000000000000000000000000000da17000000000000000000000000000000000000000000000000000000000000db17000000000000000000000000000000000000000000000000000000000000dc17000000000000000000000000000000000000000000000000000000000000dd17000000000000000000000000000000000000000000000000000000000000de17000000000000000000000000000000000000000000000000000000000000df17000000000000000000000000000000000000000000000000000000000000e017000000000000000000000000000000000000000000000000000000000000e117000000000000000000000000000000000000000000000000000000000000e217000000000000000000000000000000000000000000000000000000000000e317000000000000000000000000000000000000000000000000000000000000e417000000000000000000000000000000000000000000000000000000000000e517000000000000000000000000000000000000000000000000000000000000e617000000000000000000000000000000000000000000000000000000000000e717000000000000000000000000000000000000000000000000000000000000e817000000000000000000000000000000000000000000000000000000000000e917000000000000000000000000000000000000000000000000000000000000ea17000000000000000000000000000000000000000000000000000000000000eb17000000000000000000000000000000000000000000000000000000000000ec17000000000000000000000000000000000000000000000000000000000000ed17000000000000000000000000000000000000000000000000000000000000ee17000000000000000000000000000000000000000000000000000000000000ef17000000000000000000000000000000000000000000000000000000000000f017000000000000000000000000000000000000000000000000000000000000f117000000000000000000000000000000000000000000000000000000000000f217000000000000000000000000000000000000000000000000000000000000f317000000000000000000000000000000000000000000000000000000000000f417000000000000000000000000000000000000000000000000000000000000f517000000000000000000000000000000000000000000000000000000000000f617000000000000000000000000000000000000000000000000000000000000f717000000000000000000000000000000000000000000000000000000000000f817000000000000000000000000000000000000000000000000000000000000f917000000000000000000000000000000000000000000000000000000000000fa17000000000000000000000000000000000000000000000000000000000000fb17000000000000000000000000000000000000000000000000000000000000fc17000000000000000000000000000000000000000000000000000000000000fd17000000000000000000000000000000000000000000000000000000000000fe17000000000000000000000000000000000000000000000000000000000000ff1700000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000118000000000000000000000000000000000000000000000000000000000000021800000000000000000000000000000000000000000000000000000000000003180000000000000000000000000000000000000000000000000000000000000418000000000000000000000000000000000000000000000000000000000000051800000000000000000000000000000000000000000000000000000000000006180000000000000000000000000000000000000000000000000000000000000718000000000000000000000000000000000000000000000000000000000000081800000000000000000000000000000000000000000000000000000000000009180000000000000000000000000000000000000000000000000000000000000a180000000000000000000000000000000000000000000000000000000000000b180000000000000000000000000000000000000000000000000000000000000c180000000000000000000000000000000000000000000000000000000000000d180000000000000000000000000000000000000000000000000000000000000e180000000000000000000000000000000000000000000000000000000000000f1800000000000000000000000000000000000000000000000000000000000010180000000000000000000000000000000000000000000000000000000000001118000000000000000000000000000000000000000000000000000000000000121800000000000000000000000000000000000000000000000000000000000013180000000000000000000000000000000000000000000000000000000000001418000000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000016180000000000000000000000000000000000000000000000000000000000001718000000000000000000000000000000000000000000000000000000000000181800000000000000000000000000000000000000000000000000000000000019180000000000000000000000000000000000000000000000000000000000001a180000000000000000000000000000000000000000000000000000000000001b180000000000000000000000000000000000000000000000000000000000001c180000000000000000000000000000000000000000000000000000000000001d180000000000000000000000000000000000000000000000000000000000001e180000000000000000000000000000000000000000000000000000000000001f1800000000000000000000000000000000000000000000000000000000000020180000000000000000000000000000000000000000000000000000000000002118000000000000000000000000000000000000000000000000000000000000221800000000000000000000000000000000000000000000000000000000000023180000000000000000000000000000000000000000000000000000000000002418000000000000000000000000000000000000000000000000000000000000251800000000000000000000000000000000000000000000000000000000000026180000000000000000000000000000000000000000000000000000000000002718000000000000000000000000000000000000000000000000000000000000281800000000000000000000000000000000000000000000000000000000000029180000000000000000000000000000000000000000000000000000000000002a180000000000000000000000000000000000000000000000000000000000002b180000000000000000000000000000000000000000000000000000000000002c180000000000000000000000000000000000000000000000000000000000002d180000000000000000000000000000000000000000000000000000000000002e180000000000000000000000000000000000000000000000000000000000002f1800000000000000000000000000000000000000000000000000000000000030180000000000000000000000000000000000000000000000000000000000003118000000000000000000000000000000000000000000000000000000000000321800000000000000000000000000000000000000000000000000000000000033180000000000000000000000000000000000000000000000000000000000003418000000000000000000000000000000000000000000000000000000000000351800000000000000000000000000000000000000000000000000000000000036180000000000000000000000000000000000000000000000000000000000003718000000000000000000000000000000000000000000000000000000000000381800000000000000000000000000000000000000000000000000000000000039180000000000000000000000000000000000000000000000000000000000003a180000000000000000000000000000000000000000000000000000000000003b180000000000000000000000000000000000000000000000000000000000003c180000000000000000000000000000000000000000000000000000000000003d180000000000000000000000000000000000000000000000000000000000003e180000000000000000000000000000000000000000000000000000000000003f1800000000000000000000000000000000000000000000000000000000000040180000000000000000000000000000000000000000000000000000000000004118000000000000000000000000000000000000000000000000000000000000421800000000000000000000000000000000000000000000000000000000000043180000000000000000000000000000000000000000000000000000000000004418000000000000000000000000000000000000000000000000000000000000451800000000000000000000000000000000000000000000000000000000000046180000000000000000000000000000000000000000000000000000000000004718000000000000000000000000000000000000000000000000000000000000481800000000000000000000000000000000000000000000000000000000000049180000000000000000000000000000000000000000000000000000000000004a180000000000000000000000000000000000000000000000000000000000004b180000000000000000000000000000000000000000000000000000000000004c180000000000000000000000000000000000000000000000000000000000004d180000000000000000000000000000000000000000000000000000000000004e180000000000000000000000000000000000000000000000000000000000004f1800000000000000000000000000000000000000000000000000000000000050180000000000000000000000000000000000000000000000000000000000005118000000000000000000000000000000000000000000000000000000000000521800000000000000000000000000000000000000000000000000000000000053180000000000000000000000000000000000000000000000000000000000005418000000000000000000000000000000000000000000000000000000000000551800000000000000000000000000000000000000000000000000000000000056180000000000000000000000000000000000000000000000000000000000005718000000000000000000000000000000000000000000000000000000000000581800000000000000000000000000000000000000000000000000000000000059180000000000000000000000000000000000000000000000000000000000005a180000000000000000000000000000000000000000000000000000000000005b180000000000000000000000000000000000000000000000000000000000005c180000000000000000000000000000000000000000000000000000000000005d180000000000000000000000000000000000000000000000000000000000005e180000000000000000000000000000000000000000000000000000000000005f1800000000000000000000000000000000000000000000000000000000000060180000000000000000000000000000000000000000000000000000000000006118000000000000000000000000000000000000000000000000000000000000621800000000000000000000000000000000000000000000000000000000000063180000000000000000000000000000000000000000000000000000000000006418000000000000000000000000000000000000000000000000000000000000651800000000000000000000000000000000000000000000000000000000000066180000000000000000000000000000000000000000000000000000000000006718000000000000000000000000000000000000000000000000000000000000681800000000000000000000000000000000000000000000000000000000000069180000000000000000000000000000000000000000000000000000000000006a180000000000000000000000000000000000000000000000000000000000006b180000000000000000000000000000000000000000000000000000000000006c180000000000000000000000000000000000000000000000000000000000006d180000000000000000000000000000000000000000000000000000000000006e180000000000000000000000000000000000000000000000000000000000006f1800000000000000000000000000000000000000000000000000000000000070180000000000000000000000000000000000000000000000000000000000007118000000000000000000000000000000000000000000000000000000000000721800000000000000000000000000000000000000000000000000000000000073180000000000000000000000000000000000000000000000000000000000007418000000000000000000000000000000000000000000000000000000000000751800000000000000000000000000000000000000000000000000000000000076180000000000000000000000000000000000000000000000000000000000007718000000000000000000000000000000000000000000000000000000000000781800000000000000000000000000000000000000000000000000000000000079180000000000000000000000000000000000000000000000000000000000007a180000000000000000000000000000000000000000000000000000000000007b180000000000000000000000000000000000000000000000000000000000007c180000000000000000000000000000000000000000000000000000000000007d180000000000000000000000000000000000000000000000000000000000007e180000000000000000000000000000000000000000000000000000000000007f1800000000000000000000000000000000000000000000000000000000000080180000000000000000000000000000000000000000000000000000000000008118000000000000000000000000000000000000000000000000000000000000821800000000000000000000000000000000000000000000000000000000000083180000000000000000000000000000000000000000000000000000000000008418000000000000000000000000000000000000000000000000000000000000851800000000000000000000000000000000000000000000000000000000000086180000000000000000000000000000000000000000000000000000000000008718000000000000000000000000000000000000000000000000000000000000881800000000000000000000000000000000000000000000000000000000000089180000000000000000000000000000000000000000000000000000000000008a180000000000000000000000000000000000000000000000000000000000008b180000000000000000000000000000000000000000000000000000000000008c180000000000000000000000000000000000000000000000000000000000008d180000000000000000000000000000000000000000000000000000000000008e180000000000000000000000000000000000000000000000000000000000008f1800000000000000000000000000000000000000000000000000000000000090180000000000000000000000000000000000000000000000000000000000009118000000000000000000000000000000000000000000000000000000000000921800000000000000000000000000000000000000000000000000000000000093180000000000000000000000000000000000000000000000000000000000009418000000000000000000000000000000000000000000000000000000000000951800000000000000000000000000000000000000000000000000000000000096180000000000000000000000000000000000000000000000000000000000009718000000000000000000000000000000000000000000000000000000000000981800000000000000000000000000000000000000000000000000000000000099180000000000000000000000000000000000000000000000000000000000009a180000000000000000000000000000000000000000000000000000000000009b180000000000000000000000000000000000000000000000000000000000009c180000000000000000000000000000000000000000000000000000000000009d180000000000000000000000000000000000000000000000000000000000009e180000000000000000000000000000000000000000000000000000000000009f18000000000000000000000000000000000000000000000000000000000000a018000000000000000000000000000000000000000000000000000000000000a118000000000000000000000000000000000000000000000000000000000000a218000000000000000000000000000000000000000000000000000000000000a318000000000000000000000000000000000000000000000000000000000000a418000000000000000000000000000000000000000000000000000000000000a518000000000000000000000000000000000000000000000000000000000000a618000000000000000000000000000000000000000000000000000000000000a718000000000000000000000000000000000000000000000000000000000000a818000000000000000000000000000000000000000000000000000000000000a918000000000000000000000000000000000000000000000000000000000000aa18000000000000000000000000000000000000000000000000000000000000ab18000000000000000000000000000000000000000000000000000000000000ac18000000000000000000000000000000000000000000000000000000000000ad18000000000000000000000000000000000000000000000000000000000000ae18000000000000000000000000000000000000000000000000000000000000af18000000000000000000000000000000000000000000000000000000000000b018000000000000000000000000000000000000000000000000000000000000b118000000000000000000000000000000000000000000000000000000000000b218000000000000000000000000000000000000000000000000000000000000b318000000000000000000000000000000000000000000000000000000000000b418000000000000000000000000000000000000000000000000000000000000b518000000000000000000000000000000000000000000000000000000000000b618000000000000000000000000000000000000000000000000000000000000b718000000000000000000000000000000000000000000000000000000000000b818000000000000000000000000000000000000000000000000000000000000b918000000000000000000000000000000000000000000000000000000000000ba18000000000000000000000000000000000000000000000000000000000000bb18000000000000000000000000000000000000000000000000000000000000bc18000000000000000000000000000000000000000000000000000000000000bd18000000000000000000000000000000000000000000000000000000000000be18000000000000000000000000000000000000000000000000000000000000bf18000000000000000000000000000000000000000000000000000000000000c018000000000000000000000000000000000000000000000000000000000000c118000000000000000000000000000000000000000000000000000000000000c218000000000000000000000000000000000000000000000000000000000000c318000000000000000000000000000000000000000000000000000000000000c418000000000000000000000000000000000000000000000000000000000000c518000000000000000000000000000000000000000000000000000000000000c618000000000000000000000000000000000000000000000000000000000000c718000000000000000000000000000000000000000000000000000000000000c818000000000000000000000000000000000000000000000000000000000000c918000000000000000000000000000000000000000000000000000000000000ca18000000000000000000000000000000000000000000000000000000000000cb18000000000000000000000000000000000000000000000000000000000000cc18000000000000000000000000000000000000000000000000000000000000cd18000000000000000000000000000000000000000000000000000000000000ce18000000000000000000000000000000000000000000000000000000000000cf18000000000000000000000000000000000000000000000000000000000000d018000000000000000000000000000000000000000000000000000000000000d118000000000000000000000000000000000000000000000000000000000000d218000000000000000000000000000000000000000000000000000000000000d318000000000000000000000000000000000000000000000000000000000000d418000000000000000000000000000000000000000000000000000000000000d518000000000000000000000000000000000000000000000000000000000000d618000000000000000000000000000000000000000000000000000000000000d718000000000000000000000000000000000000000000000000000000000000d818000000000000000000000000000000000000000000000000000000000000d918000000000000000000000000000000000000000000000000000000000000da18000000000000000000000000000000000000000000000000000000000000db18000000000000000000000000000000000000000000000000000000000000dc18000000000000000000000000000000000000000000000000000000000000dd18000000000000000000000000000000000000000000000000000000000000de18000000000000000000000000000000000000000000000000000000000000df18000000000000000000000000000000000000000000000000000000000000e018000000000000000000000000000000000000000000000000000000000000e118000000000000000000000000000000000000000000000000000000000000e218000000000000000000000000000000000000000000000000000000000000e318000000000000000000000000000000000000000000000000000000000000e418000000000000000000000000000000000000000000000000000000000000e518000000000000000000000000000000000000000000000000000000000000e618000000000000000000000000000000000000000000000000000000000000e718000000000000000000000000000000000000000000000000000000000000e818000000000000000000000000000000000000000000000000000000000000e918000000000000000000000000000000000000000000000000000000000000ea18000000000000000000000000000000000000000000000000000000000000eb18000000000000000000000000000000000000000000000000000000000000ec18000000000000000000000000000000000000000000000000000000000000ed18000000000000000000000000000000000000000000000000000000000000ee18000000000000000000000000000000000000000000000000000000000000ef18000000000000000000000000000000000000000000000000000000000000f018000000000000000000000000000000000000000000000000000000000000f118000000000000000000000000000000000000000000000000000000000000f218000000000000000000000000000000000000000000000000000000000000f318000000000000000000000000000000000000000000000000000000000000f418000000000000000000000000000000000000000000000000000000000000f518000000000000000000000000000000000000000000000000000000000000f618000000000000000000000000000000000000000000000000000000000000f718000000000000000000000000000000000000000000000000000000000000f818000000000000000000000000000000000000000000000000000000000000f918000000000000000000000000000000000000000000000000000000000000fa18000000000000000000000000000000000000000000000000000000000000fb18000000000000000000000000000000000000000000000000000000000000fc18000000000000000000000000000000000000000000000000000000000000fd18000000000000000000000000000000000000000000000000000000000000fe18000000000000000000000000000000000000000000000000000000000000ff1800000000000000000000000000000000000000000000000000000000000000190000000000000000000000000000000000000000000000000000000000000119000000000000000000000000000000000000000000000000000000000000021900000000000000000000000000000000000000000000000000000000000003190000000000000000000000000000000000000000000000000000000000000419000000000000000000000000000000000000000000000000000000000000051900000000000000000000000000000000000000000000000000000000000006190000000000000000000000000000000000000000000000000000000000000719000000000000000000000000000000000000000000000000000000000000081900000000000000000000000000000000000000000000000000000000000009190000000000000000000000000000000000000000000000000000000000000a190000000000000000000000000000000000000000000000000000000000000b190000000000000000000000000000000000000000000000000000000000000c190000000000000000000000000000000000000000000000000000000000000d190000000000000000000000000000000000000000000000000000000000000e190000000000000000000000000000000000000000000000000000000000000f1900000000000000000000000000000000000000000000000000000000000010190000000000000000000000000000000000000000000000000000000000001119000000000000000000000000000000000000000000000000000000000000121900000000000000000000000000000000000000000000000000000000000013190000000000000000000000000000000000000000000000000000000000001419000000000000000000000000000000000000000000000000000000000000151900000000000000000000000000000000000000000000000000000000000016190000000000000000000000000000000000000000000000000000000000001719000000000000000000000000000000000000000000000000000000000000181900000000000000000000000000000000000000000000000000000000000019190000000000000000000000000000000000000000000000000000000000001a190000000000000000000000000000000000000000000000000000000000001b190000000000000000000000000000000000000000000000000000000000001c190000000000000000000000000000000000000000000000000000000000001d190000000000000000000000000000000000000000000000000000000000001e190000000000000000000000000000000000000000000000000000000000001f1900000000000000000000000000000000000000000000000000000000000020190000000000000000000000000000000000000000000000000000000000002119000000000000000000000000000000000000000000000000000000000000221900000000000000000000000000000000000000000000000000000000000023190000000000000000000000000000000000000000000000000000000000002419000000000000000000000000000000000000000000000000000000000000251900000000000000000000000000000000000000000000000000000000000026190000000000000000000000000000000000000000000000000000000000002719000000000000000000000000000000000000000000000000000000000000281900000000000000000000000000000000000000000000000000000000000029190000000000000000000000000000000000000000000000000000000000002a190000000000000000000000000000000000000000000000000000000000002b190000000000000000000000000000000000000000000000000000000000002c190000000000000000000000000000000000000000000000000000000000002d190000000000000000000000000000000000000000000000000000000000002e190000000000000000000000000000000000000000000000000000000000002f1900000000000000000000000000000000000000000000000000000000000030190000000000000000000000000000000000000000000000000000000000003119000000000000000000000000000000000000000000000000000000000000321900000000000000000000000000000000000000000000000000000000000033190000000000000000000000000000000000000000000000000000000000003419000000000000000000000000000000000000000000000000000000000000351900000000000000000000000000000000000000000000000000000000000036190000000000000000000000000000000000000000000000000000000000003719000000000000000000000000000000000000000000000000000000000000381900000000000000000000000000000000000000000000000000000000000039190000000000000000000000000000000000000000000000000000000000003a190000000000000000000000000000000000000000000000000000000000003b190000000000000000000000000000000000000000000000000000000000003c190000000000000000000000000000000000000000000000000000000000003d190000000000000000000000000000000000000000000000000000000000003e190000000000000000000000000000000000000000000000000000000000003f1900000000000000000000000000000000000000000000000000000000000040190000000000000000000000000000000000000000000000000000000000004119000000000000000000000000000000000000000000000000000000000000421900000000000000000000000000000000000000000000000000000000000043190000000000000000000000000000000000000000000000000000000000004419000000000000000000000000000000000000000000000000000000000000451900000000000000000000000000000000000000000000000000000000000046190000000000000000000000000000000000000000000000000000000000004719000000000000000000000000000000000000000000000000000000000000481900000000000000000000000000000000000000000000000000000000000049190000000000000000000000000000000000000000000000000000000000004a190000000000000000000000000000000000000000000000000000000000004b190000000000000000000000000000000000000000000000000000000000004c190000000000000000000000000000000000000000000000000000000000004d190000000000000000000000000000000000000000000000000000000000004e190000000000000000000000000000000000000000000000000000000000004f1900000000000000000000000000000000000000000000000000000000000050190000000000000000000000000000000000000000000000000000000000005119000000000000000000000000000000000000000000000000000000000000521900000000000000000000000000000000000000000000000000000000000053190000000000000000000000000000000000000000000000000000000000005419000000000000000000000000000000000000000000000000000000000000551900000000000000000000000000000000000000000000000000000000000056190000000000000000000000000000000000000000000000000000000000005719000000000000000000000000000000000000000000000000000000000000581900000000000000000000000000000000000000000000000000000000000059190000000000000000000000000000000000000000000000000000000000005a190000000000000000000000000000000000000000000000000000000000005b190000000000000000000000000000000000000000000000000000000000005c190000000000000000000000000000000000000000000000000000000000005d190000000000000000000000000000000000000000000000000000000000005e190000000000000000000000000000000000000000000000000000000000005f1900000000000000000000000000000000000000000000000000000000000060190000000000000000000000000000000000000000000000000000000000006119000000000000000000000000000000000000000000000000000000000000621900000000000000000000000000000000000000000000000000000000000063190000000000000000000000000000000000000000000000000000000000006419000000000000000000000000000000000000000000000000000000000000651900000000000000000000000000000000000000000000000000000000000066190000000000000000000000000000000000000000000000000000000000006719000000000000000000000000000000000000000000000000000000000000681900000000000000000000000000000000000000000000000000000000000069190000000000000000000000000000000000000000000000000000000000006a190000000000000000000000000000000000000000000000000000000000006b190000000000000000000000000000000000000000000000000000000000006c190000000000000000000000000000000000000000000000000000000000006d190000000000000000000000000000000000000000000000000000000000006e190000000000000000000000000000000000000000000000000000000000006f1900000000000000000000000000000000000000000000000000000000000070190000000000000000000000000000000000000000000000000000000000007119000000000000000000000000000000000000000000000000000000000000721900000000000000000000000000000000000000000000000000000000000073190000000000000000000000000000000000000000000000000000000000007419000000000000000000000000000000000000000000000000000000000000751900000000000000000000000000000000000000000000000000000000000076190000000000000000000000000000000000000000000000000000000000007719000000000000000000000000000000000000000000000000000000000000781900000000000000000000000000000000000000000000000000000000000079190000000000000000000000000000000000000000000000000000000000007a190000000000000000000000000000000000000000000000000000000000007b190000000000000000000000000000000000000000000000000000000000007c190000000000000000000000000000000000000000000000000000000000007d190000000000000000000000000000000000000000000000000000000000007e190000000000000000000000000000000000000000000000000000000000007f1900000000000000000000000000000000000000000000000000000000000080190000000000000000000000000000000000000000000000000000000000008119000000000000000000000000000000000000000000000000000000000000821900000000000000000000000000000000000000000000000000000000000083190000000000000000000000000000000000000000000000000000000000008419000000000000000000000000000000000000000000000000000000000000851900000000000000000000000000000000000000000000000000000000000086190000000000000000000000000000000000000000000000000000000000008719000000000000000000000000000000000000000000000000000000000000881900000000000000000000000000000000000000000000000000000000000089190000000000000000000000000000000000000000000000000000000000008a190000000000000000000000000000000000000000000000000000000000008b190000000000000000000000000000000000000000000000000000000000008c190000000000000000000000000000000000000000000000000000000000008d190000000000000000000000000000000000000000000000000000000000008e190000000000000000000000000000000000000000000000000000000000008f1900000000000000000000000000000000000000000000000000000000000090190000000000000000000000000000000000000000000000000000000000009119000000000000000000000000000000000000000000000000000000000000921900000000000000000000000000000000000000000000000000000000000093190000000000000000000000000000000000000000000000000000000000009419000000000000000000000000000000000000000000000000000000000000951900000000000000000000000000000000000000000000000000000000000096190000000000000000000000000000000000000000000000000000000000009719000000000000000000000000000000000000000000000000000000000000981900000000000000000000000000000000000000000000000000000000000099190000000000000000000000000000000000000000000000000000000000009a190000000000000000000000000000000000000000000000000000000000009b190000000000000000000000000000000000000000000000000000000000009c190000000000000000000000000000000000000000000000000000000000009d190000000000000000000000000000000000000000000000000000000000009e190000000000000000000000000000000000000000000000000000000000009f19000000000000000000000000000000000000000000000000000000000000a019000000000000000000000000000000000000000000000000000000000000a119000000000000000000000000000000000000000000000000000000000000a219000000000000000000000000000000000000000000000000000000000000a319000000000000000000000000000000000000000000000000000000000000a419000000000000000000000000000000000000000000000000000000000000a519000000000000000000000000000000000000000000000000000000000000a619000000000000000000000000000000000000000000000000000000000000a719000000000000000000000000000000000000000000000000000000000000a819000000000000000000000000000000000000000000000000000000000000a919000000000000000000000000000000000000000000000000000000000000aa19000000000000000000000000000000000000000000000000000000000000ab19000000000000000000000000000000000000000000000000000000000000ac19000000000000000000000000000000000000000000000000000000000000ad19000000000000000000000000000000000000000000000000000000000000ae19000000000000000000000000000000000000000000000000000000000000af19000000000000000000000000000000000000000000000000000000000000b019000000000000000000000000000000000000000000000000000000000000b119000000000000000000000000000000000000000000000000000000000000b219000000000000000000000000000000000000000000000000000000000000b319000000000000000000000000000000000000000000000000000000000000b419000000000000000000000000000000000000000000000000000000000000b519000000000000000000000000000000000000000000000000000000000000b619000000000000000000000000000000000000000000000000000000000000b719000000000000000000000000000000000000000000000000000000000000b819000000000000000000000000000000000000000000000000000000000000b919000000000000000000000000000000000000000000000000000000000000ba19000000000000000000000000000000000000000000000000000000000000bb19000000000000000000000000000000000000000000000000000000000000bc19000000000000000000000000000000000000000000000000000000000000bd19000000000000000000000000000000000000000000000000000000000000be19000000000000000000000000000000000000000000000000000000000000bf19000000000000000000000000000000000000000000000000000000000000c019000000000000000000000000000000000000000000000000000000000000c119000000000000000000000000000000000000000000000000000000000000c219000000000000000000000000000000000000000000000000000000000000c319000000000000000000000000000000000000000000000000000000000000c419000000000000000000000000000000000000000000000000000000000000c519000000000000000000000000000000000000000000000000000000000000c619000000000000000000000000000000000000000000000000000000000000c719000000000000000000000000000000000000000000000000000000000000c819000000000000000000000000000000000000000000000000000000000000c919000000000000000000000000000000000000000000000000000000000000ca19000000000000000000000000000000000000000000000000000000000000cb19000000000000000000000000000000000000000000000000000000000000cc19000000000000000000000000000000000000000000000000000000000000cd19000000000000000000000000000000000000000000000000000000000000ce19000000000000000000000000000000000000000000000000000000000000cf19000000000000000000000000000000000000000000000000000000000000d019000000000000000000000000000000000000000000000000000000000000d119000000000000000000000000000000000000000000000000000000000000d219000000000000000000000000000000000000000000000000000000000000d319000000000000000000000000000000000000000000000000000000000000d419000000000000000000000000000000000000000000000000000000000000d519000000000000000000000000000000000000000000000000000000000000d619000000000000000000000000000000000000000000000000000000000000d719000000000000000000000000000000000000000000000000000000000000d819000000000000000000000000000000000000000000000000000000000000d919000000000000000000000000000000000000000000000000000000000000da19000000000000000000000000000000000000000000000000000000000000db19000000000000000000000000000000000000000000000000000000000000dc19000000000000000000000000000000000000000000000000000000000000dd19000000000000000000000000000000000000000000000000000000000000de19000000000000000000000000000000000000000000000000000000000000df19000000000000000000000000000000000000000000000000000000000000e019000000000000000000000000000000000000000000000000000000000000e119000000000000000000000000000000000000000000000000000000000000e219000000000000000000000000000000000000000000000000000000000000e319000000000000000000000000000000000000000000000000000000000000e419000000000000000000000000000000000000000000000000000000000000e519000000000000000000000000000000000000000000000000000000000000e619000000000000000000000000000000000000000000000000000000000000e719000000000000000000000000000000000000000000000000000000000000e819000000000000000000000000000000000000000000000000000000000000e919000000000000000000000000000000000000000000000000000000000000ea19000000000000000000000000000000000000000000000000000000000000eb19000000000000000000000000000000000000000000000000000000000000ec19000000000000000000000000000000000000000000000000000000000000ed19000000000000000000000000000000000000000000000000000000000000ee19000000000000000000000000000000000000000000000000000000000000ef19000000000000000000000000000000000000000000000000000000000000f019000000000000000000000000000000000000000000000000000000000000f119000000000000000000000000000000000000000000000000000000000000f219000000000000000000000000000000000000000000000000000000000000f319000000000000000000000000000000000000000000000000000000000000f419000000000000000000000000000000000000000000000000000000000000f519000000000000000000000000000000000000000000000000000000000000f619000000000000000000000000000000000000000000000000000000000000f719000000000000000000000000000000000000000000000000000000000000f819000000000000000000000000000000000000000000000000000000000000f919000000000000000000000000000000000000000000000000000000000000fa19000000000000000000000000000000000000000000000000000000000000fb19000000000000000000000000000000000000000000000000000000000000fc19000000000000000000000000000000000000000000000000000000000000fd19000000000000000000000000000000000000000000000000000000000000fe19000000000000000000000000000000000000000000000000000000000000ff19000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000011a000000000000000000000000000000000000000000000000000000000000021a000000000000000000000000000000000000000000000000000000000000031a000000000000000000000000000000000000000000000000000000000000041a000000000000000000000000000000000000000000000000000000000000051a000000000000000000000000000000000000000000000000000000000000061a000000000000000000000000000000000000000000000000000000000000071a000000000000000000000000000000000000000000000000000000000000081a000000000000000000000000000000000000000000000000000000000000091a0000000000000000000000000000000000000000000000000000000000000a1a0000000000000000000000000000000000000000000000000000000000000b1a0000000000000000000000000000000000000000000000000000000000000c1a0000000000000000000000000000000000000000000000000000000000000d1a0000000000000000000000000000000000000000000000000000000000000e1a0000000000000000000000000000000000000000000000000000000000000f1a000000000000000000000000000000000000000000000000000000000000101a000000000000000000000000000000000000000000000000000000000000111a000000000000000000000000000000000000000000000000000000000000121a000000000000000000000000000000000000000000000000000000000000131a000000000000000000000000000000000000000000000000000000000000141a000000000000000000000000000000000000000000000000000000000000151a000000000000000000000000000000000000000000000000000000000000161a000000000000000000000000000000000000000000000000000000000000171a000000000000000000000000000000000000000000000000000000000000181a000000000000000000000000000000000000000000000000000000000000191a0000000000000000000000000000000000000000000000000000000000001a1a0000000000000000000000000000000000000000000000000000000000001b1a0000000000000000000000000000000000000000000000000000000000001c1a0000000000000000000000000000000000000000000000000000000000001d1a0000000000000000000000000000000000000000000000000000000000001e1a0000000000000000000000000000000000000000000000000000000000001f1a000000000000000000000000000000000000000000000000000000000000201a000000000000000000000000000000000000000000000000000000000000211a000000000000000000000000000000000000000000000000000000000000221a000000000000000000000000000000000000000000000000000000000000231a000000000000000000000000000000000000000000000000000000000000241a000000000000000000000000000000000000000000000000000000000000251a000000000000000000000000000000000000000000000000000000000000261a000000000000000000000000000000000000000000000000000000000000271a000000000000000000000000000000000000000000000000000000000000281a000000000000000000000000000000000000000000000000000000000000291a0000000000000000000000000000000000000000000000000000000000002a1a0000000000000000000000000000000000000000000000000000000000002b1a0000000000000000000000000000000000000000000000000000000000002c1a0000000000000000000000000000000000000000000000000000000000002d1a0000000000000000000000000000000000000000000000000000000000002e1a0000000000000000000000000000000000000000000000000000000000002f1a000000000000000000000000000000000000000000000000000000000000301a000000000000000000000000000000000000000000000000000000000000311a000000000000000000000000000000000000000000000000000000000000321a000000000000000000000000000000000000000000000000000000000000331a000000000000000000000000000000000000000000000000000000000000341a000000000000000000000000000000000000000000000000000000000000351a000000000000000000000000000000000000000000000000000000000000361a000000000000000000000000000000000000000000000000000000000000371a000000000000000000000000000000000000000000000000000000000000381a000000000000000000000000000000000000000000000000000000000000391a0000000000000000000000000000000000000000000000000000000000003a1a0000000000000000000000000000000000000000000000000000000000003b1a0000000000000000000000000000000000000000000000000000000000003c1a0000000000000000000000000000000000000000000000000000000000003d1a0000000000000000000000000000000000000000000000000000000000003e1a0000000000000000000000000000000000000000000000000000000000003f1a000000000000000000000000000000000000000000000000000000000000401a000000000000000000000000000000000000000000000000000000000000411a000000000000000000000000000000000000000000000000000000000000421a000000000000000000000000000000000000000000000000000000000000431a000000000000000000000000000000000000000000000000000000000000441a000000000000000000000000000000000000000000000000000000000000451a000000000000000000000000000000000000000000000000000000000000461a000000000000000000000000000000000000000000000000000000000000471a000000000000000000000000000000000000000000000000000000000000481a000000000000000000000000000000000000000000000000000000000000491a0000000000000000000000000000000000000000000000000000000000004a1a0000000000000000000000000000000000000000000000000000000000004b1a0000000000000000000000000000000000000000000000000000000000004c1a0000000000000000000000000000000000000000000000000000000000004d1a0000000000000000000000000000000000000000000000000000000000004e1a0000000000000000000000000000000000000000000000000000000000004f1a000000000000000000000000000000000000000000000000000000000000501a000000000000000000000000000000000000000000000000000000000000511a000000000000000000000000000000000000000000000000000000000000521a000000000000000000000000000000000000000000000000000000000000531a000000000000000000000000000000000000000000000000000000000000541a000000000000000000000000000000000000000000000000000000000000551a000000000000000000000000000000000000000000000000000000000000561a000000000000000000000000000000000000000000000000000000000000571a000000000000000000000000000000000000000000000000000000000000581a000000000000000000000000000000000000000000000000000000000000591a0000000000000000000000000000000000000000000000000000000000005a1a0000000000000000000000000000000000000000000000000000000000005b1a0000000000000000000000000000000000000000000000000000000000005c1a0000000000000000000000000000000000000000000000000000000000005d1a0000000000000000000000000000000000000000000000000000000000005e1a0000000000000000000000000000000000000000000000000000000000005f1a000000000000000000000000000000000000000000000000000000000000601a000000000000000000000000000000000000000000000000000000000000611a000000000000000000000000000000000000000000000000000000000000621a000000000000000000000000000000000000000000000000000000000000631a000000000000000000000000000000000000000000000000000000000000641a000000000000000000000000000000000000000000000000000000000000651a000000000000000000000000000000000000000000000000000000000000661a000000000000000000000000000000000000000000000000000000000000671a000000000000000000000000000000000000000000000000000000000000681a000000000000000000000000000000000000000000000000000000000000691a0000000000000000000000000000000000000000000000000000000000006a1a0000000000000000000000000000000000000000000000000000000000006b1a0000000000000000000000000000000000000000000000000000000000006c1a0000000000000000000000000000000000000000000000000000000000006d1a0000000000000000000000000000000000000000000000000000000000006e1a0000000000000000000000000000000000000000000000000000000000006f1a000000000000000000000000000000000000000000000000000000000000701a000000000000000000000000000000000000000000000000000000000000711a000000000000000000000000000000000000000000000000000000000000721a000000000000000000000000000000000000000000000000000000000000731a000000000000000000000000000000000000000000000000000000000000741a000000000000000000000000000000000000000000000000000000000000751a000000000000000000000000000000000000000000000000000000000000761a000000000000000000000000000000000000000000000000000000000000771a000000000000000000000000000000000000000000000000000000000000781a000000000000000000000000000000000000000000000000000000000000791a0000000000000000000000000000000000000000000000000000000000007a1a0000000000000000000000000000000000000000000000000000000000007b1a0000000000000000000000000000000000000000000000000000000000007c1a0000000000000000000000000000000000000000000000000000000000007d1a0000000000000000000000000000000000000000000000000000000000007e1a0000000000000000000000000000000000000000000000000000000000007f1a000000000000000000000000000000000000000000000000000000000000801a000000000000000000000000000000000000000000000000000000000000811a000000000000000000000000000000000000000000000000000000000000821a000000000000000000000000000000000000000000000000000000000000831a000000000000000000000000000000000000000000000000000000000000841a000000000000000000000000000000000000000000000000000000000000851a000000000000000000000000000000000000000000000000000000000000861a000000000000000000000000000000000000000000000000000000000000871a000000000000000000000000000000000000000000000000000000000000881a000000000000000000000000000000000000000000000000000000000000891a0000000000000000000000000000000000000000000000000000000000008a1a0000000000000000000000000000000000000000000000000000000000008b1a0000000000000000000000000000000000000000000000000000000000008c1a0000000000000000000000000000000000000000000000000000000000008d1a0000000000000000000000000000000000000000000000000000000000008e1a0000000000000000000000000000000000000000000000000000000000008f1a000000000000000000000000000000000000000000000000000000000000901a000000000000000000000000000000000000000000000000000000000000911a000000000000000000000000000000000000000000000000000000000000921a000000000000000000000000000000000000000000000000000000000000931a000000000000000000000000000000000000000000000000000000000000941a000000000000000000000000000000000000000000000000000000000000951a000000000000000000000000000000000000000000000000000000000000961a000000000000000000000000000000000000000000000000000000000000971a000000000000000000000000000000000000000000000000000000000000981a000000000000000000000000000000000000000000000000000000000000991a0000000000000000000000000000000000000000000000000000000000009a1a0000000000000000000000000000000000000000000000000000000000009b1a0000000000000000000000000000000000000000000000000000000000009c1a0000000000000000000000000000000000000000000000000000000000009d1a0000000000000000000000000000000000000000000000000000000000009e1a0000000000000000000000000000000000000000000000000000000000009f1a000000000000000000000000000000000000000000000000000000000000a01a000000000000000000000000000000000000000000000000000000000000a11a000000000000000000000000000000000000000000000000000000000000a21a000000000000000000000000000000000000000000000000000000000000a31a000000000000000000000000000000000000000000000000000000000000a41a000000000000000000000000000000000000000000000000000000000000a51a000000000000000000000000000000000000000000000000000000000000a61a000000000000000000000000000000000000000000000000000000000000a71a000000000000000000000000000000000000000000000000000000000000a81a000000000000000000000000000000000000000000000000000000000000a91a000000000000000000000000000000000000000000000000000000000000aa1a000000000000000000000000000000000000000000000000000000000000ab1a000000000000000000000000000000000000000000000000000000000000ac1a000000000000000000000000000000000000000000000000000000000000ad1a000000000000000000000000000000000000000000000000000000000000ae1a000000000000000000000000000000000000000000000000000000000000af1a000000000000000000000000000000000000000000000000000000000000b01a000000000000000000000000000000000000000000000000000000000000b11a000000000000000000000000000000000000000000000000000000000000b21a000000000000000000000000000000000000000000000000000000000000b31a000000000000000000000000000000000000000000000000000000000000b41a000000000000000000000000000000000000000000000000000000000000b51a000000000000000000000000000000000000000000000000000000000000b61a000000000000000000000000000000000000000000000000000000000000b71a000000000000000000000000000000000000000000000000000000000000b81a000000000000000000000000000000000000000000000000000000000000b91a000000000000000000000000000000000000000000000000000000000000ba1a000000000000000000000000000000000000000000000000000000000000bb1a000000000000000000000000000000000000000000000000000000000000bc1a000000000000000000000000000000000000000000000000000000000000bd1a000000000000000000000000000000000000000000000000000000000000be1a000000000000000000000000000000000000000000000000000000000000bf1a000000000000000000000000000000000000000000000000000000000000c01a000000000000000000000000000000000000000000000000000000000000c11a000000000000000000000000000000000000000000000000000000000000c21a000000000000000000000000000000000000000000000000000000000000c31a000000000000000000000000000000000000000000000000000000000000c41a000000000000000000000000000000000000000000000000000000000000c51a000000000000000000000000000000000000000000000000000000000000c61a000000000000000000000000000000000000000000000000000000000000c71a000000000000000000000000000000000000000000000000000000000000c81a000000000000000000000000000000000000000000000000000000000000c91a000000000000000000000000000000000000000000000000000000000000ca1a000000000000000000000000000000000000000000000000000000000000cb1a000000000000000000000000000000000000000000000000000000000000cc1a000000000000000000000000000000000000000000000000000000000000cd1a000000000000000000000000000000000000000000000000000000000000ce1a000000000000000000000000000000000000000000000000000000000000cf1a000000000000000000000000000000000000000000000000000000000000d01a000000000000000000000000000000000000000000000000000000000000d11a000000000000000000000000000000000000000000000000000000000000d21a000000000000000000000000000000000000000000000000000000000000d31a000000000000000000000000000000000000000000000000000000000000d41a000000000000000000000000000000000000000000000000000000000000d51a000000000000000000000000000000000000000000000000000000000000d61a000000000000000000000000000000000000000000000000000000000000d71a000000000000000000000000000000000000000000000000000000000000d81a000000000000000000000000000000000000000000000000000000000000d91a000000000000000000000000000000000000000000000000000000000000da1a000000000000000000000000000000000000000000000000000000000000db1a000000000000000000000000000000000000000000000000000000000000dc1a000000000000000000000000000000000000000000000000000000000000dd1a000000000000000000000000000000000000000000000000000000000000de1a000000000000000000000000000000000000000000000000000000000000df1a000000000000000000000000000000000000000000000000000000000000e01a000000000000000000000000000000000000000000000000000000000000e11a000000000000000000000000000000000000000000000000000000000000e21a000000000000000000000000000000000000000000000000000000000000e31a000000000000000000000000000000000000000000000000000000000000e41a000000000000000000000000000000000000000000000000000000000000e51a000000000000000000000000000000000000000000000000000000000000e61a000000000000000000000000000000000000000000000000000000000000e71a000000000000000000000000000000000000000000000000000000000000e81a000000000000000000000000000000000000000000000000000000000000e91a000000000000000000000000000000000000000000000000000000000000ea1a000000000000000000000000000000000000000000000000000000000000eb1a000000000000000000000000000000000000000000000000000000000000ec1a000000000000000000000000000000000000000000000000000000000000ed1a000000000000000000000000000000000000000000000000000000000000ee1a000000000000000000000000000000000000000000000000000000000000ef1a000000000000000000000000000000000000000000000000000000000000f01a000000000000000000000000000000000000000000000000000000000000f11a000000000000000000000000000000000000000000000000000000000000f21a000000000000000000000000000000000000000000000000000000000000f31a000000000000000000000000000000000000000000000000000000000000f41a000000000000000000000000000000000000000000000000000000000000f51a000000000000000000000000000000000000000000000000000000000000f61a000000000000000000000000000000000000000000000000000000000000f71a000000000000000000000000000000000000000000000000000000000000f81a000000000000000000000000000000000000000000000000000000000000f91a000000000000000000000000000000000000000000000000000000000000fa1a000000000000000000000000000000000000000000000000000000000000fb1a000000000000000000000000000000000000000000000000000000000000fc1a000000000000000000000000000000000000000000000000000000000000fd1a000000000000000000000000000000000000000000000000000000000000fe1a000000000000000000000000000000000000000000000000000000000000ff1a000000000000000000000000000000000000000000000000000000000000001b000000000000000000000000000000000000000000000000000000000000011b000000000000000000000000000000000000000000000000000000000000021b000000000000000000000000000000000000000000000000000000000000031b000000000000000000000000000000000000000000000000000000000000041b000000000000000000000000000000000000000000000000000000000000051b000000000000000000000000000000000000000000000000000000000000061b000000000000000000000000000000000000000000000000000000000000071b000000000000000000000000000000000000000000000000000000000000081b000000000000000000000000000000000000000000000000000000000000091b0000000000000000000000000000000000000000000000000000000000000a1b0000000000000000000000000000000000000000000000000000000000000b1b0000000000000000000000000000000000000000000000000000000000000c1b0000000000000000000000000000000000000000000000000000000000000d1b0000000000000000000000000000000000000000000000000000000000000e1b0000000000000000000000000000000000000000000000000000000000000f1b000000000000000000000000000000000000000000000000000000000000101b000000000000000000000000000000000000000000000000000000000000111b000000000000000000000000000000000000000000000000000000000000121b000000000000000000000000000000000000000000000000000000000000131b000000000000000000000000000000000000000000000000000000000000141b000000000000000000000000000000000000000000000000000000000000151b000000000000000000000000000000000000000000000000000000000000161b000000000000000000000000000000000000000000000000000000000000171b000000000000000000000000000000000000000000000000000000000000181b000000000000000000000000000000000000000000000000000000000000191b0000000000000000000000000000000000000000000000000000000000001a1b0000000000000000000000000000000000000000000000000000000000001b1b0000000000000000000000000000000000000000000000000000000000001c1b0000000000000000000000000000000000000000000000000000000000001d1b0000000000000000000000000000000000000000000000000000000000001e1b0000000000000000000000000000000000000000000000000000000000001f1b000000000000000000000000000000000000000000000000000000000000201b000000000000000000000000000000000000000000000000000000000000211b000000000000000000000000000000000000000000000000000000000000221b000000000000000000000000000000000000000000000000000000000000231b000000000000000000000000000000000000000000000000000000000000241b000000000000000000000000000000000000000000000000000000000000251b000000000000000000000000000000000000000000000000000000000000261b000000000000000000000000000000000000000000000000000000000000271b000000000000000000000000000000000000000000000000000000000000281b000000000000000000000000000000000000000000000000000000000000291b0000000000000000000000000000000000000000000000000000000000002a1b0000000000000000000000000000000000000000000000000000000000002b1b0000000000000000000000000000000000000000000000000000000000002c1b0000000000000000000000000000000000000000000000000000000000002d1b0000000000000000000000000000000000000000000000000000000000002e1b0000000000000000000000000000000000000000000000000000000000002f1b000000000000000000000000000000000000000000000000000000000000301b000000000000000000000000000000000000000000000000000000000000311b000000000000000000000000000000000000000000000000000000000000321b000000000000000000000000000000000000000000000000000000000000331b000000000000000000000000000000000000000000000000000000000000341b000000000000000000000000000000000000000000000000000000000000351b000000000000000000000000000000000000000000000000000000000000361b000000000000000000000000000000000000000000000000000000000000371b000000000000000000000000000000000000000000000000000000000000381b000000000000000000000000000000000000000000000000000000000000391b0000000000000000000000000000000000000000000000000000000000003a1b0000000000000000000000000000000000000000000000000000000000003b1b0000000000000000000000000000000000000000000000000000000000003c1b0000000000000000000000000000000000000000000000000000000000003d1b0000000000000000000000000000000000000000000000000000000000003e1b0000000000000000000000000000000000000000000000000000000000003f1b000000000000000000000000000000000000000000000000000000000000401b000000000000000000000000000000000000000000000000000000000000411b000000000000000000000000000000000000000000000000000000000000421b000000000000000000000000000000000000000000000000000000000000431b000000000000000000000000000000000000000000000000000000000000441b000000000000000000000000000000000000000000000000000000000000451b000000000000000000000000000000000000000000000000000000000000461b000000000000000000000000000000000000000000000000000000000000471b000000000000000000000000000000000000000000000000000000000000481b000000000000000000000000000000000000000000000000000000000000491b0000000000000000000000000000000000000000000000000000000000004a1b0000000000000000000000000000000000000000000000000000000000004b1b0000000000000000000000000000000000000000000000000000000000004c1b0000000000000000000000000000000000000000000000000000000000004d1b0000000000000000000000000000000000000000000000000000000000004e1b0000000000000000000000000000000000000000000000000000000000004f1b000000000000000000000000000000000000000000000000000000000000501b000000000000000000000000000000000000000000000000000000000000511b000000000000000000000000000000000000000000000000000000000000521b000000000000000000000000000000000000000000000000000000000000531b000000000000000000000000000000000000000000000000000000000000541b000000000000000000000000000000000000000000000000000000000000551b000000000000000000000000000000000000000000000000000000000000561b000000000000000000000000000000000000000000000000000000000000571b000000000000000000000000000000000000000000000000000000000000581b000000000000000000000000000000000000000000000000000000000000591b0000000000000000000000000000000000000000000000000000000000005a1b0000000000000000000000000000000000000000000000000000000000005b1b0000000000000000000000000000000000000000000000000000000000005c1b0000000000000000000000000000000000000000000000000000000000005d1b0000000000000000000000000000000000000000000000000000000000005e1b0000000000000000000000000000000000000000000000000000000000005f1b000000000000000000000000000000000000000000000000000000000000601b000000000000000000000000000000000000000000000000000000000000611b000000000000000000000000000000000000000000000000000000000000621b000000000000000000000000000000000000000000000000000000000000631b000000000000000000000000000000000000000000000000000000000000641b000000000000000000000000000000000000000000000000000000000000651b000000000000000000000000000000000000000000000000000000000000661b000000000000000000000000000000000000000000000000000000000000671b000000000000000000000000000000000000000000000000000000000000681b000000000000000000000000000000000000000000000000000000000000691b0000000000000000000000000000000000000000000000000000000000006a1b0000000000000000000000000000000000000000000000000000000000006b1b0000000000000000000000000000000000000000000000000000000000006c1b0000000000000000000000000000000000000000000000000000000000006d1b0000000000000000000000000000000000000000000000000000000000006e1b0000000000000000000000000000000000000000000000000000000000006f1b000000000000000000000000000000000000000000000000000000000000701b000000000000000000000000000000000000000000000000000000000000711b000000000000000000000000000000000000000000000000000000000000721b000000000000000000000000000000000000000000000000000000000000731b000000000000000000000000000000000000000000000000000000000000741b000000000000000000000000000000000000000000000000000000000000751b000000000000000000000000000000000000000000000000000000000000761b000000000000000000000000000000000000000000000000000000000000771b000000000000000000000000000000000000000000000000000000000000781b000000000000000000000000000000000000000000000000000000000000791b0000000000000000000000000000000000000000000000000000000000007a1b0000000000000000000000000000000000000000000000000000000000007b1b0000000000000000000000000000000000000000000000000000000000007c1b0000000000000000000000000000000000000000000000000000000000007d1b0000000000000000000000000000000000000000000000000000000000007e1b0000000000000000000000000000000000000000000000000000000000007f1b000000000000000000000000000000000000000000000000000000000000801b000000000000000000000000000000000000000000000000000000000000811b000000000000000000000000000000000000000000000000000000000000821b000000000000000000000000000000000000000000000000000000000000831b000000000000000000000000000000000000000000000000000000000000841b000000000000000000000000000000000000000000000000000000000000851b000000000000000000000000000000000000000000000000000000000000861b000000000000000000000000000000000000000000000000000000000000871b000000000000000000000000000000000000000000000000000000000000881b000000000000000000000000000000000000000000000000000000000000891b0000000000000000000000000000000000000000000000000000000000008a1b0000000000000000000000000000000000000000000000000000000000008b1b0000000000000000000000000000000000000000000000000000000000008c1b0000000000000000000000000000000000000000000000000000000000008d1b0000000000000000000000000000000000000000000000000000000000008e1b0000000000000000000000000000000000000000000000000000000000008f1b000000000000000000000000000000000000000000000000000000000000901b000000000000000000000000000000000000000000000000000000000000911b000000000000000000000000000000000000000000000000000000000000921b000000000000000000000000000000000000000000000000000000000000931b000000000000000000000000000000000000000000000000000000000000941b000000000000000000000000000000000000000000000000000000000000951b000000000000000000000000000000000000000000000000000000000000961b000000000000000000000000000000000000000000000000000000000000971b000000000000000000000000000000000000000000000000000000000000981b000000000000000000000000000000000000000000000000000000000000991b0000000000000000000000000000000000000000000000000000000000009a1b0000000000000000000000000000000000000000000000000000000000009b1b0000000000000000000000000000000000000000000000000000000000009c1b0000000000000000000000000000000000000000000000000000000000009d1b0000000000000000000000000000000000000000000000000000000000009e1b0000000000000000000000000000000000000000000000000000000000009f1b000000000000000000000000000000000000000000000000000000000000a01b000000000000000000000000000000000000000000000000000000000000a11b000000000000000000000000000000000000000000000000000000000000a21b000000000000000000000000000000000000000000000000000000000000a31b000000000000000000000000000000000000000000000000000000000000a41b000000000000000000000000000000000000000000000000000000000000a51b000000000000000000000000000000000000000000000000000000000000a61b000000000000000000000000000000000000000000000000000000000000a71b000000000000000000000000000000000000000000000000000000000000a81b000000000000000000000000000000000000000000000000000000000000a91b000000000000000000000000000000000000000000000000000000000000aa1b000000000000000000000000000000000000000000000000000000000000ab1b000000000000000000000000000000000000000000000000000000000000ac1b000000000000000000000000000000000000000000000000000000000000ad1b000000000000000000000000000000000000000000000000000000000000ae1b000000000000000000000000000000000000000000000000000000000000af1b000000000000000000000000000000000000000000000000000000000000b01b000000000000000000000000000000000000000000000000000000000000b11b000000000000000000000000000000000000000000000000000000000000b21b000000000000000000000000000000000000000000000000000000000000b31b000000000000000000000000000000000000000000000000000000000000b41b000000000000000000000000000000000000000000000000000000000000b51b000000000000000000000000000000000000000000000000000000000000b61b000000000000000000000000000000000000000000000000000000000000b71b000000000000000000000000000000000000000000000000000000000000b81b000000000000000000000000000000000000000000000000000000000000b91b000000000000000000000000000000000000000000000000000000000000ba1b000000000000000000000000000000000000000000000000000000000000bb1b000000000000000000000000000000000000000000000000000000000000bc1b000000000000000000000000000000000000000000000000000000000000bd1b000000000000000000000000000000000000000000000000000000000000be1b000000000000000000000000000000000000000000000000000000000000bf1b000000000000000000000000000000000000000000000000000000000000c01b000000000000000000000000000000000000000000000000000000000000c11b000000000000000000000000000000000000000000000000000000000000c21b000000000000000000000000000000000000000000000000000000000000c31b000000000000000000000000000000000000000000000000000000000000c41b000000000000000000000000000000000000000000000000000000000000c51b000000000000000000000000000000000000000000000000000000000000c61b000000000000000000000000000000000000000000000000000000000000c71b000000000000000000000000000000000000000000000000000000000000c81b000000000000000000000000000000000000000000000000000000000000c91b000000000000000000000000000000000000000000000000000000000000ca1b000000000000000000000000000000000000000000000000000000000000cb1b000000000000000000000000000000000000000000000000000000000000cc1b000000000000000000000000000000000000000000000000000000000000cd1b000000000000000000000000000000000000000000000000000000000000ce1b000000000000000000000000000000000000000000000000000000000000cf1b000000000000000000000000000000000000000000000000000000000000d01b000000000000000000000000000000000000000000000000000000000000d11b000000000000000000000000000000000000000000000000000000000000d21b000000000000000000000000000000000000000000000000000000000000d31b000000000000000000000000000000000000000000000000000000000000d41b000000000000000000000000000000000000000000000000000000000000d51b000000000000000000000000000000000000000000000000000000000000d61b000000000000000000000000000000000000000000000000000000000000d71b000000000000000000000000000000000000000000000000000000000000d81b000000000000000000000000000000000000000000000000000000000000d91b000000000000000000000000000000000000000000000000000000000000da1b000000000000000000000000000000000000000000000000000000000000db1b000000000000000000000000000000000000000000000000000000000000dc1b000000000000000000000000000000000000000000000000000000000000dd1b000000000000000000000000000000000000000000000000000000000000de1b000000000000000000000000000000000000000000000000000000000000df1b000000000000000000000000000000000000000000000000000000000000e01b000000000000000000000000000000000000000000000000000000000000e11b000000000000000000000000000000000000000000000000000000000000e21b000000000000000000000000000000000000000000000000000000000000e31b000000000000000000000000000000000000000000000000000000000000e41b000000000000000000000000000000000000000000000000000000000000e51b000000000000000000000000000000000000000000000000000000000000e61b000000000000000000000000000000000000000000000000000000000000e71b000000000000000000000000000000000000000000000000000000000000e81b000000000000000000000000000000000000000000000000000000000000e91b000000000000000000000000000000000000000000000000000000000000ea1b000000000000000000000000000000000000000000000000000000000000eb1b000000000000000000000000000000000000000000000000000000000000ec1b000000000000000000000000000000000000000000000000000000000000ed1b000000000000000000000000000000000000000000000000000000000000ee1b000000000000000000000000000000000000000000000000000000000000ef1b000000000000000000000000000000000000000000000000000000000000f01b000000000000000000000000000000000000000000000000000000000000f11b000000000000000000000000000000000000000000000000000000000000f21b000000000000000000000000000000000000000000000000000000000000f31b000000000000000000000000000000000000000000000000000000000000f41b000000000000000000000000000000000000000000000000000000000000f51b000000000000000000000000000000000000000000000000000000000000f61b000000000000000000000000000000000000000000000000000000000000f71b000000000000000000000000000000000000000000000000000000000000f81b000000000000000000000000000000000000000000000000000000000000f91b000000000000000000000000000000000000000000000000000000000000fa1b000000000000000000000000000000000000000000000000000000000000fb1b000000000000000000000000000000000000000000000000000000000000fc1b000000000000000000000000000000000000000000000000000000000000fd1b000000000000000000000000000000000000000000000000000000000000fe1b000000000000000000000000000000000000000000000000000000000000ff1b000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000011c000000000000000000000000000000000000000000000000000000000000021c000000000000000000000000000000000000000000000000000000000000031c000000000000000000000000000000000000000000000000000000000000041c000000000000000000000000000000000000000000000000000000000000051c000000000000000000000000000000000000000000000000000000000000061c000000000000000000000000000000000000000000000000000000000000071c000000000000000000000000000000000000000000000000000000000000081c000000000000000000000000000000000000000000000000000000000000091c0000000000000000000000000000000000000000000000000000000000000a1c0000000000000000000000000000000000000000000000000000000000000b1c0000000000000000000000000000000000000000000000000000000000000c1c0000000000000000000000000000000000000000000000000000000000000d1c0000000000000000000000000000000000000000000000000000000000000e1c0000000000000000000000000000000000000000000000000000000000000f1c000000000000000000000000000000000000000000000000000000000000101c000000000000000000000000000000000000000000000000000000000000111c000000000000000000000000000000000000000000000000000000000000121c000000000000000000000000000000000000000000000000000000000000131c000000000000000000000000000000000000000000000000000000000000141c000000000000000000000000000000000000000000000000000000000000151c000000000000000000000000000000000000000000000000000000000000161c000000000000000000000000000000000000000000000000000000000000171c000000000000000000000000000000000000000000000000000000000000181c000000000000000000000000000000000000000000000000000000000000191c0000000000000000000000000000000000000000000000000000000000001a1c0000000000000000000000000000000000000000000000000000000000001b1c0000000000000000000000000000000000000000000000000000000000001c1c0000000000000000000000000000000000000000000000000000000000001d1c0000000000000000000000000000000000000000000000000000000000001e1c0000000000000000000000000000000000000000000000000000000000001f1c000000000000000000000000000000000000000000000000000000000000201c000000000000000000000000000000000000000000000000000000000000211c000000000000000000000000000000000000000000000000000000000000221c000000000000000000000000000000000000000000000000000000000000231c000000000000000000000000000000000000000000000000000000000000241c000000000000000000000000000000000000000000000000000000000000251c000000000000000000000000000000000000000000000000000000000000261c000000000000000000000000000000000000000000000000000000000000271c000000000000000000000000000000000000000000000000000000000000281c000000000000000000000000000000000000000000000000000000000000291c0000000000000000000000000000000000000000000000000000000000002a1c0000000000000000000000000000000000000000000000000000000000002b1c0000000000000000000000000000000000000000000000000000000000002c1c0000000000000000000000000000000000000000000000000000000000002d1c0000000000000000000000000000000000000000000000000000000000002e1c0000000000000000000000000000000000000000000000000000000000002f1c000000000000000000000000000000000000000000000000000000000000301c000000000000000000000000000000000000000000000000000000000000311c000000000000000000000000000000000000000000000000000000000000321c000000000000000000000000000000000000000000000000000000000000331c000000000000000000000000000000000000000000000000000000000000341c000000000000000000000000000000000000000000000000000000000000351c000000000000000000000000000000000000000000000000000000000000361c000000000000000000000000000000000000000000000000000000000000371c000000000000000000000000000000000000000000000000000000000000381c000000000000000000000000000000000000000000000000000000000000391c0000000000000000000000000000000000000000000000000000000000003a1c0000000000000000000000000000000000000000000000000000000000003b1c0000000000000000000000000000000000000000000000000000000000003c1c0000000000000000000000000000000000000000000000000000000000003d1c0000000000000000000000000000000000000000000000000000000000003e1c0000000000000000000000000000000000000000000000000000000000003f1c000000000000000000000000000000000000000000000000000000000000401c000000000000000000000000000000000000000000000000000000000000411c000000000000000000000000000000000000000000000000000000000000421c000000000000000000000000000000000000000000000000000000000000431c000000000000000000000000000000000000000000000000000000000000441c000000000000000000000000000000000000000000000000000000000000451c000000000000000000000000000000000000000000000000000000000000461c000000000000000000000000000000000000000000000000000000000000471c000000000000000000000000000000000000000000000000000000000000481c000000000000000000000000000000000000000000000000000000000000491c0000000000000000000000000000000000000000000000000000000000004a1c0000000000000000000000000000000000000000000000000000000000004b1c0000000000000000000000000000000000000000000000000000000000004c1c0000000000000000000000000000000000000000000000000000000000004d1c0000000000000000000000000000000000000000000000000000000000004e1c0000000000000000000000000000000000000000000000000000000000004f1c000000000000000000000000000000000000000000000000000000000000501c000000000000000000000000000000000000000000000000000000000000511c000000000000000000000000000000000000000000000000000000000000521c000000000000000000000000000000000000000000000000000000000000531c000000000000000000000000000000000000000000000000000000000000541c000000000000000000000000000000000000000000000000000000000000551c000000000000000000000000000000000000000000000000000000000000561c000000000000000000000000000000000000000000000000000000000000571c000000000000000000000000000000000000000000000000000000000000581c000000000000000000000000000000000000000000000000000000000000591c0000000000000000000000000000000000000000000000000000000000005a1c0000000000000000000000000000000000000000000000000000000000005b1c0000000000000000000000000000000000000000000000000000000000005c1c0000000000000000000000000000000000000000000000000000000000005d1c0000000000000000000000000000000000000000000000000000000000005e1c0000000000000000000000000000000000000000000000000000000000005f1c000000000000000000000000000000000000000000000000000000000000601c000000000000000000000000000000000000000000000000000000000000611c000000000000000000000000000000000000000000000000000000000000621c000000000000000000000000000000000000000000000000000000000000631c000000000000000000000000000000000000000000000000000000000000641c000000000000000000000000000000000000000000000000000000000000651c000000000000000000000000000000000000000000000000000000000000661c000000000000000000000000000000000000000000000000000000000000671c000000000000000000000000000000000000000000000000000000000000681c000000000000000000000000000000000000000000000000000000000000691c0000000000000000000000000000000000000000000000000000000000006a1c0000000000000000000000000000000000000000000000000000000000006b1c0000000000000000000000000000000000000000000000000000000000006c1c0000000000000000000000000000000000000000000000000000000000006d1c0000000000000000000000000000000000000000000000000000000000006e1c0000000000000000000000000000000000000000000000000000000000006f1c000000000000000000000000000000000000000000000000000000000000701c000000000000000000000000000000000000000000000000000000000000711c000000000000000000000000000000000000000000000000000000000000721c000000000000000000000000000000000000000000000000000000000000731c000000000000000000000000000000000000000000000000000000000000741c000000000000000000000000000000000000000000000000000000000000751c000000000000000000000000000000000000000000000000000000000000761c000000000000000000000000000000000000000000000000000000000000771c000000000000000000000000000000000000000000000000000000000000781c000000000000000000000000000000000000000000000000000000000000791c0000000000000000000000000000000000000000000000000000000000007a1c0000000000000000000000000000000000000000000000000000000000007b1c0000000000000000000000000000000000000000000000000000000000007c1c0000000000000000000000000000000000000000000000000000000000007d1c0000000000000000000000000000000000000000000000000000000000007e1c0000000000000000000000000000000000000000000000000000000000007f1c000000000000000000000000000000000000000000000000000000000000801c000000000000000000000000000000000000000000000000000000000000811c000000000000000000000000000000000000000000000000000000000000821c000000000000000000000000000000000000000000000000000000000000831c000000000000000000000000000000000000000000000000000000000000841c000000000000000000000000000000000000000000000000000000000000851c000000000000000000000000000000000000000000000000000000000000861c000000000000000000000000000000000000000000000000000000000000871c000000000000000000000000000000000000000000000000000000000000881c000000000000000000000000000000000000000000000000000000000000891c0000000000000000000000000000000000000000000000000000000000008a1c0000000000000000000000000000000000000000000000000000000000008b1c0000000000000000000000000000000000000000000000000000000000008c1c0000000000000000000000000000000000000000000000000000000000008d1c0000000000000000000000000000000000000000000000000000000000008e1c0000000000000000000000000000000000000000000000000000000000008f1c000000000000000000000000000000000000000000000000000000000000901c000000000000000000000000000000000000000000000000000000000000911c000000000000000000000000000000000000000000000000000000000000921c000000000000000000000000000000000000000000000000000000000000931c000000000000000000000000000000000000000000000000000000000000941c000000000000000000000000000000000000000000000000000000000000951c000000000000000000000000000000000000000000000000000000000000961c000000000000000000000000000000000000000000000000000000000000971c000000000000000000000000000000000000000000000000000000000000981c000000000000000000000000000000000000000000000000000000000000991c0000000000000000000000000000000000000000000000000000000000009a1c0000000000000000000000000000000000000000000000000000000000009b1c0000000000000000000000000000000000000000000000000000000000009c1c0000000000000000000000000000000000000000000000000000000000009d1c0000000000000000000000000000000000000000000000000000000000009e1c0000000000000000000000000000000000000000000000000000000000009f1c000000000000000000000000000000000000000000000000000000000000a01c000000000000000000000000000000000000000000000000000000000000a11c000000000000000000000000000000000000000000000000000000000000a21c000000000000000000000000000000000000000000000000000000000000a31c000000000000000000000000000000000000000000000000000000000000a41c000000000000000000000000000000000000000000000000000000000000a51c000000000000000000000000000000000000000000000000000000000000a61c000000000000000000000000000000000000000000000000000000000000a71c000000000000000000000000000000000000000000000000000000000000a81c000000000000000000000000000000000000000000000000000000000000a91c000000000000000000000000000000000000000000000000000000000000aa1c000000000000000000000000000000000000000000000000000000000000ab1c000000000000000000000000000000000000000000000000000000000000ac1c000000000000000000000000000000000000000000000000000000000000ad1c000000000000000000000000000000000000000000000000000000000000ae1c000000000000000000000000000000000000000000000000000000000000af1c000000000000000000000000000000000000000000000000000000000000b01c000000000000000000000000000000000000000000000000000000000000b11c000000000000000000000000000000000000000000000000000000000000b21c000000000000000000000000000000000000000000000000000000000000b31c000000000000000000000000000000000000000000000000000000000000b41c000000000000000000000000000000000000000000000000000000000000b51c000000000000000000000000000000000000000000000000000000000000b61c000000000000000000000000000000000000000000000000000000000000b71c000000000000000000000000000000000000000000000000000000000000b81c000000000000000000000000000000000000000000000000000000000000b91c000000000000000000000000000000000000000000000000000000000000ba1c000000000000000000000000000000000000000000000000000000000000bb1c000000000000000000000000000000000000000000000000000000000000bc1c000000000000000000000000000000000000000000000000000000000000bd1c000000000000000000000000000000000000000000000000000000000000be1c000000000000000000000000000000000000000000000000000000000000bf1c000000000000000000000000000000000000000000000000000000000000c01c000000000000000000000000000000000000000000000000000000000000c11c000000000000000000000000000000000000000000000000000000000000c21c000000000000000000000000000000000000000000000000000000000000c31c000000000000000000000000000000000000000000000000000000000000c41c000000000000000000000000000000000000000000000000000000000000c51c000000000000000000000000000000000000000000000000000000000000c61c000000000000000000000000000000000000000000000000000000000000c71c000000000000000000000000000000000000000000000000000000000000c81c000000000000000000000000000000000000000000000000000000000000c91c000000000000000000000000000000000000000000000000000000000000ca1c000000000000000000000000000000000000000000000000000000000000cb1c000000000000000000000000000000000000000000000000000000000000cc1c000000000000000000000000000000000000000000000000000000000000cd1c000000000000000000000000000000000000000000000000000000000000ce1c000000000000000000000000000000000000000000000000000000000000cf1c000000000000000000000000000000000000000000000000000000000000d01c000000000000000000000000000000000000000000000000000000000000d11c000000000000000000000000000000000000000000000000000000000000d21c000000000000000000000000000000000000000000000000000000000000d31c000000000000000000000000000000000000000000000000000000000000d41c000000000000000000000000000000000000000000000000000000000000d51c000000000000000000000000000000000000000000000000000000000000d61c000000000000000000000000000000000000000000000000000000000000d71c000000000000000000000000000000000000000000000000000000000000d81c000000000000000000000000000000000000000000000000000000000000d91c000000000000000000000000000000000000000000000000000000000000da1c000000000000000000000000000000000000000000000000000000000000db1c000000000000000000000000000000000000000000000000000000000000dc1c000000000000000000000000000000000000000000000000000000000000dd1c000000000000000000000000000000000000000000000000000000000000de1c000000000000000000000000000000000000000000000000000000000000df1c000000000000000000000000000000000000000000000000000000000000e01c000000000000000000000000000000000000000000000000000000000000e11c000000000000000000000000000000000000000000000000000000000000e21c000000000000000000000000000000000000000000000000000000000000e31c000000000000000000000000000000000000000000000000000000000000e41c000000000000000000000000000000000000000000000000000000000000e51c000000000000000000000000000000000000000000000000000000000000e61c000000000000000000000000000000000000000000000000000000000000e71c000000000000000000000000000000000000000000000000000000000000e81c000000000000000000000000000000000000000000000000000000000000e91c000000000000000000000000000000000000000000000000000000000000ea1c000000000000000000000000000000000000000000000000000000000000eb1c000000000000000000000000000000000000000000000000000000000000ec1c000000000000000000000000000000000000000000000000000000000000ed1c000000000000000000000000000000000000000000000000000000000000ee1c000000000000000000000000000000000000000000000000000000000000ef1c000000000000000000000000000000000000000000000000000000000000f01c000000000000000000000000000000000000000000000000000000000000f11c000000000000000000000000000000000000000000000000000000000000f21c000000000000000000000000000000000000000000000000000000000000f31c000000000000000000000000000000000000000000000000000000000000f41c000000000000000000000000000000000000000000000000000000000000f51c000000000000000000000000000000000000000000000000000000000000f61c000000000000000000000000000000000000000000000000000000000000f71c000000000000000000000000000000000000000000000000000000000000f81c000000000000000000000000000000000000000000000000000000000000f91c000000000000000000000000000000000000000000000000000000000000fa1c000000000000000000000000000000000000000000000000000000000000fb1c000000000000000000000000000000000000000000000000000000000000fc1c000000000000000000000000000000000000000000000000000000000000fd1c000000000000000000000000000000000000000000000000000000000000fe1c000000000000000000000000000000000000000000000000000000000000ff1c000000000000000000000000000000000000000000000000000000000000001d000000000000000000000000000000000000000000000000000000000000011d000000000000000000000000000000000000000000000000000000000000021d000000000000000000000000000000000000000000000000000000000000031d000000000000000000000000000000000000000000000000000000000000041d000000000000000000000000000000000000000000000000000000000000051d000000000000000000000000000000000000000000000000000000000000061d000000000000000000000000000000000000000000000000000000000000071d000000000000000000000000000000000000000000000000000000000000081d000000000000000000000000000000000000000000000000000000000000091d0000000000000000000000000000000000000000000000000000000000000a1d0000000000000000000000000000000000000000000000000000000000000b1d0000000000000000000000000000000000000000000000000000000000000c1d0000000000000000000000000000000000000000000000000000000000000d1d0000000000000000000000000000000000000000000000000000000000000e1d0000000000000000000000000000000000000000000000000000000000000f1d000000000000000000000000000000000000000000000000000000000000101d000000000000000000000000000000000000000000000000000000000000111d000000000000000000000000000000000000000000000000000000000000121d000000000000000000000000000000000000000000000000000000000000131d000000000000000000000000000000000000000000000000000000000000141d000000000000000000000000000000000000000000000000000000000000151d000000000000000000000000000000000000000000000000000000000000161d000000000000000000000000000000000000000000000000000000000000171d000000000000000000000000000000000000000000000000000000000000181d000000000000000000000000000000000000000000000000000000000000191d0000000000000000000000000000000000000000000000000000000000001a1d0000000000000000000000000000000000000000000000000000000000001b1d0000000000000000000000000000000000000000000000000000000000001c1d0000000000000000000000000000000000000000000000000000000000001d1d0000000000000000000000000000000000000000000000000000000000001e1d0000000000000000000000000000000000000000000000000000000000001f1d000000000000000000000000000000000000000000000000000000000000201d000000000000000000000000000000000000000000000000000000000000211d000000000000000000000000000000000000000000000000000000000000221d000000000000000000000000000000000000000000000000000000000000231d000000000000000000000000000000000000000000000000000000000000241d000000000000000000000000000000000000000000000000000000000000251d000000000000000000000000000000000000000000000000000000000000261d000000000000000000000000000000000000000000000000000000000000271d000000000000000000000000000000000000000000000000000000000000281d000000000000000000000000000000000000000000000000000000000000291d0000000000000000000000000000000000000000000000000000000000002a1d0000000000000000000000000000000000000000000000000000000000002b1d0000000000000000000000000000000000000000000000000000000000002c1d0000000000000000000000000000000000000000000000000000000000002d1d0000000000000000000000000000000000000000000000000000000000002e1d0000000000000000000000000000000000000000000000000000000000002f1d000000000000000000000000000000000000000000000000000000000000301d000000000000000000000000000000000000000000000000000000000000311d000000000000000000000000000000000000000000000000000000000000321d000000000000000000000000000000000000000000000000000000000000331d000000000000000000000000000000000000000000000000000000000000341d000000000000000000000000000000000000000000000000000000000000351d000000000000000000000000000000000000000000000000000000000000361d000000000000000000000000000000000000000000000000000000000000371d000000000000000000000000000000000000000000000000000000000000381d000000000000000000000000000000000000000000000000000000000000391d0000000000000000000000000000000000000000000000000000000000003a1d0000000000000000000000000000000000000000000000000000000000003b1d0000000000000000000000000000000000000000000000000000000000003c1d0000000000000000000000000000000000000000000000000000000000003d1d0000000000000000000000000000000000000000000000000000000000003e1d0000000000000000000000000000000000000000000000000000000000003f1d000000000000000000000000000000000000000000000000000000000000401d000000000000000000000000000000000000000000000000000000000000411d000000000000000000000000000000000000000000000000000000000000421d000000000000000000000000000000000000000000000000000000000000431d000000000000000000000000000000000000000000000000000000000000441d000000000000000000000000000000000000000000000000000000000000451d000000000000000000000000000000000000000000000000000000000000461d000000000000000000000000000000000000000000000000000000000000471d000000000000000000000000000000000000000000000000000000000000481d000000000000000000000000000000000000000000000000000000000000491d0000000000000000000000000000000000000000000000000000000000004a1d0000000000000000000000000000000000000000000000000000000000004b1d0000000000000000000000000000000000000000000000000000000000004c1d0000000000000000000000000000000000000000000000000000000000004d1d0000000000000000000000000000000000000000000000000000000000004e1d0000000000000000000000000000000000000000000000000000000000004f1d000000000000000000000000000000000000000000000000000000000000501d000000000000000000000000000000000000000000000000000000000000511d000000000000000000000000000000000000000000000000000000000000521d000000000000000000000000000000000000000000000000000000000000531d000000000000000000000000000000000000000000000000000000000000541d000000000000000000000000000000000000000000000000000000000000551d000000000000000000000000000000000000000000000000000000000000561d000000000000000000000000000000000000000000000000000000000000571d000000000000000000000000000000000000000000000000000000000000581d000000000000000000000000000000000000000000000000000000000000591d0000000000000000000000000000000000000000000000000000000000005a1d0000000000000000000000000000000000000000000000000000000000005b1d0000000000000000000000000000000000000000000000000000000000005c1d0000000000000000000000000000000000000000000000000000000000005d1d0000000000000000000000000000000000000000000000000000000000005e1d0000000000000000000000000000000000000000000000000000000000005f1d000000000000000000000000000000000000000000000000000000000000601d000000000000000000000000000000000000000000000000000000000000611d000000000000000000000000000000000000000000000000000000000000621d000000000000000000000000000000000000000000000000000000000000631d000000000000000000000000000000000000000000000000000000000000641d000000000000000000000000000000000000000000000000000000000000651d000000000000000000000000000000000000000000000000000000000000661d000000000000000000000000000000000000000000000000000000000000671d000000000000000000000000000000000000000000000000000000000000681d000000000000000000000000000000000000000000000000000000000000691d0000000000000000000000000000000000000000000000000000000000006a1d0000000000000000000000000000000000000000000000000000000000006b1d0000000000000000000000000000000000000000000000000000000000006c1d0000000000000000000000000000000000000000000000000000000000006d1d0000000000000000000000000000000000000000000000000000000000006e1d0000000000000000000000000000000000000000000000000000000000006f1d000000000000000000000000000000000000000000000000000000000000701d000000000000000000000000000000000000000000000000000000000000711d000000000000000000000000000000000000000000000000000000000000721d000000000000000000000000000000000000000000000000000000000000731d000000000000000000000000000000000000000000000000000000000000741d000000000000000000000000000000000000000000000000000000000000751d000000000000000000000000000000000000000000000000000000000000761d000000000000000000000000000000000000000000000000000000000000771d000000000000000000000000000000000000000000000000000000000000781d000000000000000000000000000000000000000000000000000000000000791d0000000000000000000000000000000000000000000000000000000000007a1d0000000000000000000000000000000000000000000000000000000000007b1d0000000000000000000000000000000000000000000000000000000000007c1d0000000000000000000000000000000000000000000000000000000000007d1d0000000000000000000000000000000000000000000000000000000000007e1d0000000000000000000000000000000000000000000000000000000000007f1d000000000000000000000000000000000000000000000000000000000000801d000000000000000000000000000000000000000000000000000000000000811d000000000000000000000000000000000000000000000000000000000000821d000000000000000000000000000000000000000000000000000000000000831d000000000000000000000000000000000000000000000000000000000000841d000000000000000000000000000000000000000000000000000000000000851d000000000000000000000000000000000000000000000000000000000000861d000000000000000000000000000000000000000000000000000000000000871d000000000000000000000000000000000000000000000000000000000000881d000000000000000000000000000000000000000000000000000000000000891d0000000000000000000000000000000000000000000000000000000000008a1d0000000000000000000000000000000000000000000000000000000000008b1d0000000000000000000000000000000000000000000000000000000000008c1d0000000000000000000000000000000000000000000000000000000000008d1d0000000000000000000000000000000000000000000000000000000000008e1d0000000000000000000000000000000000000000000000000000000000008f1d000000000000000000000000000000000000000000000000000000000000901d000000000000000000000000000000000000000000000000000000000000911d000000000000000000000000000000000000000000000000000000000000921d000000000000000000000000000000000000000000000000000000000000931d000000000000000000000000000000000000000000000000000000000000941d000000000000000000000000000000000000000000000000000000000000951d000000000000000000000000000000000000000000000000000000000000961d000000000000000000000000000000000000000000000000000000000000971d000000000000000000000000000000000000000000000000000000000000981d000000000000000000000000000000000000000000000000000000000000991d0000000000000000000000000000000000000000000000000000000000009a1d0000000000000000000000000000000000000000000000000000000000009b1d0000000000000000000000000000000000000000000000000000000000009c1d0000000000000000000000000000000000000000000000000000000000009d1d0000000000000000000000000000000000000000000000000000000000009e1d0000000000000000000000000000000000000000000000000000000000009f1d000000000000000000000000000000000000000000000000000000000000a01d000000000000000000000000000000000000000000000000000000000000a11d000000000000000000000000000000000000000000000000000000000000a21d000000000000000000000000000000000000000000000000000000000000a31d000000000000000000000000000000000000000000000000000000000000a41d000000000000000000000000000000000000000000000000000000000000a51d000000000000000000000000000000000000000000000000000000000000a61d000000000000000000000000000000000000000000000000000000000000a71d000000000000000000000000000000000000000000000000000000000000a81d000000000000000000000000000000000000000000000000000000000000a91d000000000000000000000000000000000000000000000000000000000000aa1d000000000000000000000000000000000000000000000000000000000000ab1d000000000000000000000000000000000000000000000000000000000000ac1d000000000000000000000000000000000000000000000000000000000000ad1d000000000000000000000000000000000000000000000000000000000000ae1d000000000000000000000000000000000000000000000000000000000000af1d000000000000000000000000000000000000000000000000000000000000b01d000000000000000000000000000000000000000000000000000000000000b11d000000000000000000000000000000000000000000000000000000000000b21d000000000000000000000000000000000000000000000000000000000000b31d000000000000000000000000000000000000000000000000000000000000b41d000000000000000000000000000000000000000000000000000000000000b51d000000000000000000000000000000000000000000000000000000000000b61d000000000000000000000000000000000000000000000000000000000000b71d000000000000000000000000000000000000000000000000000000000000b81d000000000000000000000000000000000000000000000000000000000000b91d000000000000000000000000000000000000000000000000000000000000ba1d000000000000000000000000000000000000000000000000000000000000bb1d000000000000000000000000000000000000000000000000000000000000bc1d000000000000000000000000000000000000000000000000000000000000bd1d000000000000000000000000000000000000000000000000000000000000be1d000000000000000000000000000000000000000000000000000000000000bf1d000000000000000000000000000000000000000000000000000000000000c01d000000000000000000000000000000000000000000000000000000000000c11d000000000000000000000000000000000000000000000000000000000000c21d000000000000000000000000000000000000000000000000000000000000c31d000000000000000000000000000000000000000000000000000000000000c41d000000000000000000000000000000000000000000000000000000000000c51d000000000000000000000000000000000000000000000000000000000000c61d000000000000000000000000000000000000000000000000000000000000c71d000000000000000000000000000000000000000000000000000000000000c81d000000000000000000000000000000000000000000000000000000000000c91d000000000000000000000000000000000000000000000000000000000000ca1d000000000000000000000000000000000000000000000000000000000000cb1d000000000000000000000000000000000000000000000000000000000000cc1d000000000000000000000000000000000000000000000000000000000000cd1d000000000000000000000000000000000000000000000000000000000000ce1d000000000000000000000000000000000000000000000000000000000000cf1d000000000000000000000000000000000000000000000000000000000000d01d000000000000000000000000000000000000000000000000000000000000d11d000000000000000000000000000000000000000000000000000000000000d21d000000000000000000000000000000000000000000000000000000000000d31d000000000000000000000000000000000000000000000000000000000000d41d000000000000000000000000000000000000000000000000000000000000d51d000000000000000000000000000000000000000000000000000000000000d61d000000000000000000000000000000000000000000000000000000000000d71d000000000000000000000000000000000000000000000000000000000000d81d000000000000000000000000000000000000000000000000000000000000d91d000000000000000000000000000000000000000000000000000000000000da1d000000000000000000000000000000000000000000000000000000000000db1d000000000000000000000000000000000000000000000000000000000000dc1d000000000000000000000000000000000000000000000000000000000000dd1d000000000000000000000000000000000000000000000000000000000000de1d000000000000000000000000000000000000000000000000000000000000df1d000000000000000000000000000000000000000000000000000000000000e01d000000000000000000000000000000000000000000000000000000000000e11d000000000000000000000000000000000000000000000000000000000000e21d000000000000000000000000000000000000000000000000000000000000e31d000000000000000000000000000000000000000000000000000000000000e41d000000000000000000000000000000000000000000000000000000000000e51d000000000000000000000000000000000000000000000000000000000000e61d000000000000000000000000000000000000000000000000000000000000e71d000000000000000000000000000000000000000000000000000000000000e81d000000000000000000000000000000000000000000000000000000000000e91d000000000000000000000000000000000000000000000000000000000000ea1d000000000000000000000000000000000000000000000000000000000000eb1d000000000000000000000000000000000000000000000000000000000000ec1d000000000000000000000000000000000000000000000000000000000000ed1d000000000000000000000000000000000000000000000000000000000000ee1d000000000000000000000000000000000000000000000000000000000000ef1d000000000000000000000000000000000000000000000000000000000000f01d000000000000000000000000000000000000000000000000000000000000f11d000000000000000000000000000000000000000000000000000000000000f21d000000000000000000000000000000000000000000000000000000000000f31d000000000000000000000000000000000000000000000000000000000000f41d000000000000000000000000000000000000000000000000000000000000f51d000000000000000000000000000000000000000000000000000000000000f61d000000000000000000000000000000000000000000000000000000000000f71d000000000000000000000000000000000000000000000000000000000000f81d000000000000000000000000000000000000000000000000000000000000f91d000000000000000000000000000000000000000000000000000000000000fa1d000000000000000000000000000000000000000000000000000000000000fb1d000000000000000000000000000000000000000000000000000000000000fc1d000000000000000000000000000000000000000000000000000000000000fd1d000000000000000000000000000000000000000000000000000000000000fe1d000000000000000000000000000000000000000000000000000000000000ff1d000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000011e000000000000000000000000000000000000000000000000000000000000021e000000000000000000000000000000000000000000000000000000000000031e000000000000000000000000000000000000000000000000000000000000041e000000000000000000000000000000000000000000000000000000000000051e000000000000000000000000000000000000000000000000000000000000061e000000000000000000000000000000000000000000000000000000000000071e000000000000000000000000000000000000000000000000000000000000081e000000000000000000000000000000000000000000000000000000000000091e0000000000000000000000000000000000000000000000000000000000000a1e0000000000000000000000000000000000000000000000000000000000000b1e0000000000000000000000000000000000000000000000000000000000000c1e0000000000000000000000000000000000000000000000000000000000000d1e0000000000000000000000000000000000000000000000000000000000000e1e0000000000000000000000000000000000000000000000000000000000000f1e000000000000000000000000000000000000000000000000000000000000101e000000000000000000000000000000000000000000000000000000000000111e000000000000000000000000000000000000000000000000000000000000121e000000000000000000000000000000000000000000000000000000000000131e000000000000000000000000000000000000000000000000000000000000141e000000000000000000000000000000000000000000000000000000000000151e000000000000000000000000000000000000000000000000000000000000161e000000000000000000000000000000000000000000000000000000000000171e000000000000000000000000000000000000000000000000000000000000181e000000000000000000000000000000000000000000000000000000000000191e0000000000000000000000000000000000000000000000000000000000001a1e0000000000000000000000000000000000000000000000000000000000001b1e0000000000000000000000000000000000000000000000000000000000001c1e0000000000000000000000000000000000000000000000000000000000001d1e0000000000000000000000000000000000000000000000000000000000001e1e0000000000000000000000000000000000000000000000000000000000001f1e000000000000000000000000000000000000000000000000000000000000201e000000000000000000000000000000000000000000000000000000000000211e000000000000000000000000000000000000000000000000000000000000221e000000000000000000000000000000000000000000000000000000000000231e000000000000000000000000000000000000000000000000000000000000241e000000000000000000000000000000000000000000000000000000000000251e000000000000000000000000000000000000000000000000000000000000261e000000000000000000000000000000000000000000000000000000000000271e000000000000000000000000000000000000000000000000000000000000281e000000000000000000000000000000000000000000000000000000000000291e0000000000000000000000000000000000000000000000000000000000002a1e0000000000000000000000000000000000000000000000000000000000002b1e0000000000000000000000000000000000000000000000000000000000002c1e0000000000000000000000000000000000000000000000000000000000002d1e0000000000000000000000000000000000000000000000000000000000002e1e0000000000000000000000000000000000000000000000000000000000002f1e000000000000000000000000000000000000000000000000000000000000301e000000000000000000000000000000000000000000000000000000000000311e000000000000000000000000000000000000000000000000000000000000321e000000000000000000000000000000000000000000000000000000000000331e000000000000000000000000000000000000000000000000000000000000341e000000000000000000000000000000000000000000000000000000000000351e000000000000000000000000000000000000000000000000000000000000361e000000000000000000000000000000000000000000000000000000000000371e000000000000000000000000000000000000000000000000000000000000381e000000000000000000000000000000000000000000000000000000000000391e0000000000000000000000000000000000000000000000000000000000003a1e0000000000000000000000000000000000000000000000000000000000003b1e0000000000000000000000000000000000000000000000000000000000003c1e0000000000000000000000000000000000000000000000000000000000003d1e0000000000000000000000000000000000000000000000000000000000003e1e0000000000000000000000000000000000000000000000000000000000003f1e000000000000000000000000000000000000000000000000000000000000401e000000000000000000000000000000000000000000000000000000000000411e000000000000000000000000000000000000000000000000000000000000421e000000000000000000000000000000000000000000000000000000000000431e000000000000000000000000000000000000000000000000000000000000441e000000000000000000000000000000000000000000000000000000000000451e000000000000000000000000000000000000000000000000000000000000461e000000000000000000000000000000000000000000000000000000000000471e000000000000000000000000000000000000000000000000000000000000481e000000000000000000000000000000000000000000000000000000000000491e0000000000000000000000000000000000000000000000000000000000004a1e0000000000000000000000000000000000000000000000000000000000004b1e0000000000000000000000000000000000000000000000000000000000004c1e0000000000000000000000000000000000000000000000000000000000004d1e0000000000000000000000000000000000000000000000000000000000004e1e0000000000000000000000000000000000000000000000000000000000004f1e000000000000000000000000000000000000000000000000000000000000501e000000000000000000000000000000000000000000000000000000000000511e000000000000000000000000000000000000000000000000000000000000521e000000000000000000000000000000000000000000000000000000000000531e000000000000000000000000000000000000000000000000000000000000541e000000000000000000000000000000000000000000000000000000000000551e000000000000000000000000000000000000000000000000000000000000561e000000000000000000000000000000000000000000000000000000000000571e000000000000000000000000000000000000000000000000000000000000581e000000000000000000000000000000000000000000000000000000000000591e0000000000000000000000000000000000000000000000000000000000005a1e0000000000000000000000000000000000000000000000000000000000005b1e0000000000000000000000000000000000000000000000000000000000005c1e0000000000000000000000000000000000000000000000000000000000005d1e0000000000000000000000000000000000000000000000000000000000005e1e0000000000000000000000000000000000000000000000000000000000005f1e000000000000000000000000000000000000000000000000000000000000601e000000000000000000000000000000000000000000000000000000000000611e000000000000000000000000000000000000000000000000000000000000621e000000000000000000000000000000000000000000000000000000000000631e000000000000000000000000000000000000000000000000000000000000641e000000000000000000000000000000000000000000000000000000000000651e000000000000000000000000000000000000000000000000000000000000661e000000000000000000000000000000000000000000000000000000000000671e000000000000000000000000000000000000000000000000000000000000681e000000000000000000000000000000000000000000000000000000000000691e0000000000000000000000000000000000000000000000000000000000006a1e0000000000000000000000000000000000000000000000000000000000006b1e0000000000000000000000000000000000000000000000000000000000006c1e0000000000000000000000000000000000000000000000000000000000006d1e0000000000000000000000000000000000000000000000000000000000006e1e0000000000000000000000000000000000000000000000000000000000006f1e000000000000000000000000000000000000000000000000000000000000701e000000000000000000000000000000000000000000000000000000000000711e000000000000000000000000000000000000000000000000000000000000721e000000000000000000000000000000000000000000000000000000000000731e000000000000000000000000000000000000000000000000000000000000741e000000000000000000000000000000000000000000000000000000000000751e000000000000000000000000000000000000000000000000000000000000761e000000000000000000000000000000000000000000000000000000000000771e000000000000000000000000000000000000000000000000000000000000781e000000000000000000000000000000000000000000000000000000000000791e0000000000000000000000000000000000000000000000000000000000007a1e0000000000000000000000000000000000000000000000000000000000007b1e0000000000000000000000000000000000000000000000000000000000007c1e0000000000000000000000000000000000000000000000000000000000007d1e0000000000000000000000000000000000000000000000000000000000007e1e0000000000000000000000000000000000000000000000000000000000007f1e000000000000000000000000000000000000000000000000000000000000801e000000000000000000000000000000000000000000000000000000000000811e000000000000000000000000000000000000000000000000000000000000821e000000000000000000000000000000000000000000000000000000000000831e000000000000000000000000000000000000000000000000000000000000841e000000000000000000000000000000000000000000000000000000000000851e000000000000000000000000000000000000000000000000000000000000861e000000000000000000000000000000000000000000000000000000000000871e000000000000000000000000000000000000000000000000000000000000881e000000000000000000000000000000000000000000000000000000000000891e0000000000000000000000000000000000000000000000000000000000008a1e0000000000000000000000000000000000000000000000000000000000008b1e0000000000000000000000000000000000000000000000000000000000008c1e0000000000000000000000000000000000000000000000000000000000008d1e0000000000000000000000000000000000000000000000000000000000008e1e0000000000000000000000000000000000000000000000000000000000008f1e000000000000000000000000000000000000000000000000000000000000901e000000000000000000000000000000000000000000000000000000000000911e000000000000000000000000000000000000000000000000000000000000921e000000000000000000000000000000000000000000000000000000000000931e000000000000000000000000000000000000000000000000000000000000941e000000000000000000000000000000000000000000000000000000000000951e000000000000000000000000000000000000000000000000000000000000961e000000000000000000000000000000000000000000000000000000000000971e000000000000000000000000000000000000000000000000000000000000981e000000000000000000000000000000000000000000000000000000000000991e0000000000000000000000000000000000000000000000000000000000009a1e0000000000000000000000000000000000000000000000000000000000009b1e0000000000000000000000000000000000000000000000000000000000009c1e0000000000000000000000000000000000000000000000000000000000009d1e0000000000000000000000000000000000000000000000000000000000009e1e0000000000000000000000000000000000000000000000000000000000009f1e000000000000000000000000000000000000000000000000000000000000a01e000000000000000000000000000000000000000000000000000000000000a11e000000000000000000000000000000000000000000000000000000000000a21e000000000000000000000000000000000000000000000000000000000000a31e000000000000000000000000000000000000000000000000000000000000a41e000000000000000000000000000000000000000000000000000000000000a51e000000000000000000000000000000000000000000000000000000000000a61e000000000000000000000000000000000000000000000000000000000000a71e000000000000000000000000000000000000000000000000000000000000a81e000000000000000000000000000000000000000000000000000000000000a91e000000000000000000000000000000000000000000000000000000000000aa1e000000000000000000000000000000000000000000000000000000000000ab1e000000000000000000000000000000000000000000000000000000000000ac1e000000000000000000000000000000000000000000000000000000000000ad1e000000000000000000000000000000000000000000000000000000000000ae1e000000000000000000000000000000000000000000000000000000000000af1e000000000000000000000000000000000000000000000000000000000000b01e000000000000000000000000000000000000000000000000000000000000b11e000000000000000000000000000000000000000000000000000000000000b21e000000000000000000000000000000000000000000000000000000000000b31e000000000000000000000000000000000000000000000000000000000000b41e000000000000000000000000000000000000000000000000000000000000b51e000000000000000000000000000000000000000000000000000000000000b61e000000000000000000000000000000000000000000000000000000000000b71e000000000000000000000000000000000000000000000000000000000000b81e000000000000000000000000000000000000000000000000000000000000b91e000000000000000000000000000000000000000000000000000000000000ba1e000000000000000000000000000000000000000000000000000000000000bb1e000000000000000000000000000000000000000000000000000000000000bc1e000000000000000000000000000000000000000000000000000000000000bd1e000000000000000000000000000000000000000000000000000000000000be1e000000000000000000000000000000000000000000000000000000000000bf1e000000000000000000000000000000000000000000000000000000000000c01e000000000000000000000000000000000000000000000000000000000000c11e000000000000000000000000000000000000000000000000000000000000c21e000000000000000000000000000000000000000000000000000000000000c31e000000000000000000000000000000000000000000000000000000000000c41e000000000000000000000000000000000000000000000000000000000000c51e000000000000000000000000000000000000000000000000000000000000c61e000000000000000000000000000000000000000000000000000000000000c71e000000000000000000000000000000000000000000000000000000000000c81e000000000000000000000000000000000000000000000000000000000000c91e000000000000000000000000000000000000000000000000000000000000ca1e000000000000000000000000000000000000000000000000000000000000cb1e000000000000000000000000000000000000000000000000000000000000cc1e000000000000000000000000000000000000000000000000000000000000cd1e000000000000000000000000000000000000000000000000000000000000ce1e000000000000000000000000000000000000000000000000000000000000cf1e000000000000000000000000000000000000000000000000000000000000d01e000000000000000000000000000000000000000000000000000000000000d11e000000000000000000000000000000000000000000000000000000000000d21e000000000000000000000000000000000000000000000000000000000000d31e000000000000000000000000000000000000000000000000000000000000d41e000000000000000000000000000000000000000000000000000000000000d51e000000000000000000000000000000000000000000000000000000000000d61e000000000000000000000000000000000000000000000000000000000000d71e000000000000000000000000000000000000000000000000000000000000d81e000000000000000000000000000000000000000000000000000000000000d91e000000000000000000000000000000000000000000000000000000000000da1e000000000000000000000000000000000000000000000000000000000000db1e000000000000000000000000000000000000000000000000000000000000dc1e000000000000000000000000000000000000000000000000000000000000dd1e000000000000000000000000000000000000000000000000000000000000de1e000000000000000000000000000000000000000000000000000000000000df1e000000000000000000000000000000000000000000000000000000000000e01e000000000000000000000000000000000000000000000000000000000000e11e000000000000000000000000000000000000000000000000000000000000e21e000000000000000000000000000000000000000000000000000000000000e31e000000000000000000000000000000000000000000000000000000000000e41e000000000000000000000000000000000000000000000000000000000000e51e000000000000000000000000000000000000000000000000000000000000e61e000000000000000000000000000000000000000000000000000000000000e71e000000000000000000000000000000000000000000000000000000000000e81e000000000000000000000000000000000000000000000000000000000000e91e000000000000000000000000000000000000000000000000000000000000ea1e000000000000000000000000000000000000000000000000000000000000eb1e000000000000000000000000000000000000000000000000000000000000ec1e000000000000000000000000000000000000000000000000000000000000ed1e000000000000000000000000000000000000000000000000000000000000ee1e000000000000000000000000000000000000000000000000000000000000ef1e000000000000000000000000000000000000000000000000000000000000f01e000000000000000000000000000000000000000000000000000000000000f11e000000000000000000000000000000000000000000000000000000000000f21e000000000000000000000000000000000000000000000000000000000000f31e000000000000000000000000000000000000000000000000000000000000f41e000000000000000000000000000000000000000000000000000000000000f51e000000000000000000000000000000000000000000000000000000000000f61e000000000000000000000000000000000000000000000000000000000000f71e000000000000000000000000000000000000000000000000000000000000f81e000000000000000000000000000000000000000000000000000000000000f91e000000000000000000000000000000000000000000000000000000000000fa1e000000000000000000000000000000000000000000000000000000000000fb1e000000000000000000000000000000000000000000000000000000000000fc1e000000000000000000000000000000000000000000000000000000000000fd1e000000000000000000000000000000000000000000000000000000000000fe1e000000000000000000000000000000000000000000000000000000000000ff1e000000000000000000000000000000000000000000000000000000000000001f000000000000000000000000000000000000000000000000000000000000011f000000000000000000000000000000000000000000000000000000000000021f000000000000000000000000000000000000000000000000000000000000031f000000000000000000000000000000000000000000000000000000000000041f000000000000000000000000000000000000000000000000000000000000051f000000000000000000000000000000000000000000000000000000000000061f000000000000000000000000000000000000000000000000000000000000071f000000000000000000000000000000000000000000000000000000000000081f000000000000000000000000000000000000000000000000000000000000091f0000000000000000000000000000000000000000000000000000000000000a1f0000000000000000000000000000000000000000000000000000000000000b1f0000000000000000000000000000000000000000000000000000000000000c1f0000000000000000000000000000000000000000000000000000000000000d1f0000000000000000000000000000000000000000000000000000000000000e1f0000000000000000000000000000000000000000000000000000000000000f1f000000000000000000000000000000000000000000000000000000000000101f000000000000000000000000000000000000000000000000000000000000111f000000000000000000000000000000000000000000000000000000000000121f000000000000000000000000000000000000000000000000000000000000131f000000000000000000000000000000000000000000000000000000000000141f000000000000000000000000000000000000000000000000000000000000151f000000000000000000000000000000000000000000000000000000000000161f000000000000000000000000000000000000000000000000000000000000171f000000000000000000000000000000000000000000000000000000000000181f000000000000000000000000000000000000000000000000000000000000191f0000000000000000000000000000000000000000000000000000000000001a1f0000000000000000000000000000000000000000000000000000000000001b1f0000000000000000000000000000000000000000000000000000000000001c1f0000000000000000000000000000000000000000000000000000000000001d1f0000000000000000000000000000000000000000000000000000000000001e1f0000000000000000000000000000000000000000000000000000000000001f1f000000000000000000000000000000000000000000000000000000000000201f000000000000000000000000000000000000000000000000000000000000211f000000000000000000000000000000000000000000000000000000000000221f000000000000000000000000000000000000000000000000000000000000231f000000000000000000000000000000000000000000000000000000000000241f000000000000000000000000000000000000000000000000000000000000251f000000000000000000000000000000000000000000000000000000000000261f000000000000000000000000000000000000000000000000000000000000271f000000000000000000000000000000000000000000000000000000000000281f000000000000000000000000000000000000000000000000000000000000291f0000000000000000000000000000000000000000000000000000000000002a1f0000000000000000000000000000000000000000000000000000000000002b1f0000000000000000000000000000000000000000000000000000000000002c1f0000000000000000000000000000000000000000000000000000000000002d1f0000000000000000000000000000000000000000000000000000000000002e1f0000000000000000000000000000000000000000000000000000000000002f1f000000000000000000000000000000000000000000000000000000000000301f000000000000000000000000000000000000000000000000000000000000311f000000000000000000000000000000000000000000000000000000000000321f000000000000000000000000000000000000000000000000000000000000331f000000000000000000000000000000000000000000000000000000000000341f000000000000000000000000000000000000000000000000000000000000351f000000000000000000000000000000000000000000000000000000000000361f000000000000000000000000000000000000000000000000000000000000371f000000000000000000000000000000000000000000000000000000000000381f000000000000000000000000000000000000000000000000000000000000391f0000000000000000000000000000000000000000000000000000000000003a1f0000000000000000000000000000000000000000000000000000000000003b1f0000000000000000000000000000000000000000000000000000000000003c1f0000000000000000000000000000000000000000000000000000000000003d1f0000000000000000000000000000000000000000000000000000000000003e1f0000000000000000000000000000000000000000000000000000000000003f1f000000000000000000000000000000000000000000000000000000000000401f000000000000000000000000000000000000000000000000000000000000411f000000000000000000000000000000000000000000000000000000000000421f000000000000000000000000000000000000000000000000000000000000431f000000000000000000000000000000000000000000000000000000000000441f000000000000000000000000000000000000000000000000000000000000451f000000000000000000000000000000000000000000000000000000000000461f000000000000000000000000000000000000000000000000000000000000471f000000000000000000000000000000000000000000000000000000000000481f000000000000000000000000000000000000000000000000000000000000491f0000000000000000000000000000000000000000000000000000000000004a1f0000000000000000000000000000000000000000000000000000000000004b1f0000000000000000000000000000000000000000000000000000000000004c1f0000000000000000000000000000000000000000000000000000000000004d1f0000000000000000000000000000000000000000000000000000000000004e1f0000000000000000000000000000000000000000000000000000000000004f1f000000000000000000000000000000000000000000000000000000000000501f000000000000000000000000000000000000000000000000000000000000511f000000000000000000000000000000000000000000000000000000000000521f000000000000000000000000000000000000000000000000000000000000531f000000000000000000000000000000000000000000000000000000000000541f000000000000000000000000000000000000000000000000000000000000551f000000000000000000000000000000000000000000000000000000000000561f000000000000000000000000000000000000000000000000000000000000571f000000000000000000000000000000000000000000000000000000000000581f000000000000000000000000000000000000000000000000000000000000591f0000000000000000000000000000000000000000000000000000000000005a1f0000000000000000000000000000000000000000000000000000000000005b1f0000000000000000000000000000000000000000000000000000000000005c1f0000000000000000000000000000000000000000000000000000000000005d1f0000000000000000000000000000000000000000000000000000000000005e1f0000000000000000000000000000000000000000000000000000000000005f1f000000000000000000000000000000000000000000000000000000000000601f000000000000000000000000000000000000000000000000000000000000611f000000000000000000000000000000000000000000000000000000000000621f000000000000000000000000000000000000000000000000000000000000631f000000000000000000000000000000000000000000000000000000000000641f000000000000000000000000000000000000000000000000000000000000651f000000000000000000000000000000000000000000000000000000000000661f000000000000000000000000000000000000000000000000000000000000671f000000000000000000000000000000000000000000000000000000000000681f000000000000000000000000000000000000000000000000000000000000691f0000000000000000000000000000000000000000000000000000000000006a1f0000000000000000000000000000000000000000000000000000000000006b1f0000000000000000000000000000000000000000000000000000000000006c1f0000000000000000000000000000000000000000000000000000000000006d1f0000000000000000000000000000000000000000000000000000000000006e1f0000000000000000000000000000000000000000000000000000000000006f1f000000000000000000000000000000000000000000000000000000000000701f000000000000000000000000000000000000000000000000000000000000711f000000000000000000000000000000000000000000000000000000000000721f000000000000000000000000000000000000000000000000000000000000731f000000000000000000000000000000000000000000000000000000000000741f000000000000000000000000000000000000000000000000000000000000751f000000000000000000000000000000000000000000000000000000000000761f000000000000000000000000000000000000000000000000000000000000771f000000000000000000000000000000000000000000000000000000000000781f000000000000000000000000000000000000000000000000000000000000791f0000000000000000000000000000000000000000000000000000000000007a1f0000000000000000000000000000000000000000000000000000000000007b1f0000000000000000000000000000000000000000000000000000000000007c1f0000000000000000000000000000000000000000000000000000000000007d1f0000000000000000000000000000000000000000000000000000000000007e1f0000000000000000000000000000000000000000000000000000000000007f1f000000000000000000000000000000000000000000000000000000000000801f000000000000000000000000000000000000000000000000000000000000811f000000000000000000000000000000000000000000000000000000000000821f000000000000000000000000000000000000000000000000000000000000831f000000000000000000000000000000000000000000000000000000000000841f000000000000000000000000000000000000000000000000000000000000851f000000000000000000000000000000000000000000000000000000000000861f000000000000000000000000000000000000000000000000000000000000871f000000000000000000000000000000000000000000000000000000000000881f000000000000000000000000000000000000000000000000000000000000891f0000000000000000000000000000000000000000000000000000000000008a1f0000000000000000000000000000000000000000000000000000000000008b1f0000000000000000000000000000000000000000000000000000000000008c1f0000000000000000000000000000000000000000000000000000000000008d1f0000000000000000000000000000000000000000000000000000000000008e1f0000000000000000000000000000000000000000000000000000000000008f1f000000000000000000000000000000000000000000000000000000000000901f000000000000000000000000000000000000000000000000000000000000911f000000000000000000000000000000000000000000000000000000000000921f000000000000000000000000000000000000000000000000000000000000931f000000000000000000000000000000000000000000000000000000000000941f000000000000000000000000000000000000000000000000000000000000951f000000000000000000000000000000000000000000000000000000000000961f000000000000000000000000000000000000000000000000000000000000971f000000000000000000000000000000000000000000000000000000000000981f000000000000000000000000000000000000000000000000000000000000991f0000000000000000000000000000000000000000000000000000000000009a1f0000000000000000000000000000000000000000000000000000000000009b1f0000000000000000000000000000000000000000000000000000000000009c1f0000000000000000000000000000000000000000000000000000000000009d1f0000000000000000000000000000000000000000000000000000000000009e1f0000000000000000000000000000000000000000000000000000000000009f1f000000000000000000000000000000000000000000000000000000000000a01f000000000000000000000000000000000000000000000000000000000000a11f000000000000000000000000000000000000000000000000000000000000a21f000000000000000000000000000000000000000000000000000000000000a31f000000000000000000000000000000000000000000000000000000000000a41f000000000000000000000000000000000000000000000000000000000000a51f000000000000000000000000000000000000000000000000000000000000a61f000000000000000000000000000000000000000000000000000000000000a71f000000000000000000000000000000000000000000000000000000000000a81f000000000000000000000000000000000000000000000000000000000000a91f000000000000000000000000000000000000000000000000000000000000aa1f000000000000000000000000000000000000000000000000000000000000ab1f000000000000000000000000000000000000000000000000000000000000ac1f000000000000000000000000000000000000000000000000000000000000ad1f000000000000000000000000000000000000000000000000000000000000ae1f000000000000000000000000000000000000000000000000000000000000af1f000000000000000000000000000000000000000000000000000000000000b01f000000000000000000000000000000000000000000000000000000000000b11f000000000000000000000000000000000000000000000000000000000000b21f000000000000000000000000000000000000000000000000000000000000b31f000000000000000000000000000000000000000000000000000000000000b41f000000000000000000000000000000000000000000000000000000000000b51f000000000000000000000000000000000000000000000000000000000000b61f000000000000000000000000000000000000000000000000000000000000b71f000000000000000000000000000000000000000000000000000000000000b81f000000000000000000000000000000000000000000000000000000000000b91f000000000000000000000000000000000000000000000000000000000000ba1f000000000000000000000000000000000000000000000000000000000000bb1f000000000000000000000000000000000000000000000000000000000000bc1f000000000000000000000000000000000000000000000000000000000000bd1f000000000000000000000000000000000000000000000000000000000000be1f000000000000000000000000000000000000000000000000000000000000bf1f000000000000000000000000000000000000000000000000000000000000c01f000000000000000000000000000000000000000000000000000000000000c11f000000000000000000000000000000000000000000000000000000000000c21f000000000000000000000000000000000000000000000000000000000000c31f000000000000000000000000000000000000000000000000000000000000c41f000000000000000000000000000000000000000000000000000000000000c51f000000000000000000000000000000000000000000000000000000000000c61f000000000000000000000000000000000000000000000000000000000000c71f000000000000000000000000000000000000000000000000000000000000c81f000000000000000000000000000000000000000000000000000000000000c91f000000000000000000000000000000000000000000000000000000000000ca1f000000000000000000000000000000000000000000000000000000000000cb1f000000000000000000000000000000000000000000000000000000000000cc1f000000000000000000000000000000000000000000000000000000000000cd1f000000000000000000000000000000000000000000000000000000000000ce1f000000000000000000000000000000000000000000000000000000000000cf1f000000000000000000000000000000000000000000000000000000000000d01f000000000000000000000000000000000000000000000000000000000000d11f000000000000000000000000000000000000000000000000000000000000d21f000000000000000000000000000000000000000000000000000000000000d31f000000000000000000000000000000000000000000000000000000000000d41f000000000000000000000000000000000000000000000000000000000000d51f000000000000000000000000000000000000000000000000000000000000d61f000000000000000000000000000000000000000000000000000000000000d71f000000000000000000000000000000000000000000000000000000000000d81f000000000000000000000000000000000000000000000000000000000000d91f000000000000000000000000000000000000000000000000000000000000da1f000000000000000000000000000000000000000000000000000000000000db1f000000000000000000000000000000000000000000000000000000000000dc1f000000000000000000000000000000000000000000000000000000000000dd1f000000000000000000000000000000000000000000000000000000000000de1f000000000000000000000000000000000000000000000000000000000000df1f000000000000000000000000000000000000000000000000000000000000e01f000000000000000000000000000000000000000000000000000000000000e11f000000000000000000000000000000000000000000000000000000000000e21f000000000000000000000000000000000000000000000000000000000000e31f000000000000000000000000000000000000000000000000000000000000e41f000000000000000000000000000000000000000000000000000000000000e51f000000000000000000000000000000000000000000000000000000000000e61f000000000000000000000000000000000000000000000000000000000000e71f000000000000000000000000000000000000000000000000000000000000e81f000000000000000000000000000000000000000000000000000000000000e91f000000000000000000000000000000000000000000000000000000000000ea1f000000000000000000000000000000000000000000000000000000000000eb1f000000000000000000000000000000000000000000000000000000000000ec1f000000000000000000000000000000000000000000000000000000000000ed1f000000000000000000000000000000000000000000000000000000000000ee1f000000000000000000000000000000000000000000000000000000000000ef1f000000000000000000000000000000000000000000000000000000000000f01f000000000000000000000000000000000000000000000000000000000000f11f000000000000000000000000000000000000000000000000000000000000f21f000000000000000000000000000000000000000000000000000000000000f31f000000000000000000000000000000000000000000000000000000000000f41f000000000000000000000000000000000000000000000000000000000000f51f000000000000000000000000000000000000000000000000000000000000f61f000000000000000000000000000000000000000000000000000000000000f71f000000000000000000000000000000000000000000000000000000000000f81f000000000000000000000000000000000000000000000000000000000000f91f000000000000000000000000000000000000000000000000000000000000fa1f000000000000000000000000000000000000000000000000000000000000fb1f000000000000000000000000000000000000000000000000000000000000fc1f000000000000000000000000000000000000000000000000000000000000fd1f000000000000000000000000000000000000000000000000000000000000fe1f000000000000000000000000000000000000000000000000000000000000ff1f000000000000000000000000000000000000000000000000000000000000" + ], + "Proof": "95ebeeea1e3993974ead1b3c909b6d3a01e8f862ee648c51e5afda300a09a910f9496cfae9a3d0d1e2c57f139649b26a", + "Commitments": [ + "a97456b8097baed6e90ce381d2b21c970a3f9ad4f6c92b1bb26337f919bd639dd43bd470839153db09115e2862051f33", + "abb6bcbe313530ce7779abdf633d5a3594a41fbad9a79f4a9b46b89c0cfe78f6a15948dec92c4404aedac8b5e7dd6059" + ] + } + ] +} \ No newline at end of file diff --git a/bindings/rust/test_vectors/public_verify_kzg_proof.json b/bindings/rust/test_vectors/public_verify_kzg_proof.json new file mode 100644 index 0000000..44a39ae --- /dev/null +++ b/bindings/rust/test_vectors/public_verify_kzg_proof.json @@ -0,0 +1,21 @@ +{ + "NumTestCases": 2, + "TestCases": [ + { + "PolyDegree": 4096, + "Polynomial": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000f0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000013000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000150000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000019000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000001b000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001d000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000001f0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002100000000000000000000000000000000000000000000000000000000000000220000000000000000000000000000000000000000000000000000000000000023000000000000000000000000000000000000000000000000000000000000002400000000000000000000000000000000000000000000000000000000000000250000000000000000000000000000000000000000000000000000000000000026000000000000000000000000000000000000000000000000000000000000002700000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000029000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000002e000000000000000000000000000000000000000000000000000000000000002f0000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000003100000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000033000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000350000000000000000000000000000000000000000000000000000000000000036000000000000000000000000000000000000000000000000000000000000003700000000000000000000000000000000000000000000000000000000000000380000000000000000000000000000000000000000000000000000000000000039000000000000000000000000000000000000000000000000000000000000003a000000000000000000000000000000000000000000000000000000000000003b000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000003d000000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000003f0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000004100000000000000000000000000000000000000000000000000000000000000420000000000000000000000000000000000000000000000000000000000000043000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000450000000000000000000000000000000000000000000000000000000000000046000000000000000000000000000000000000000000000000000000000000004700000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000049000000000000000000000000000000000000000000000000000000000000004a000000000000000000000000000000000000000000000000000000000000004b000000000000000000000000000000000000000000000000000000000000004c000000000000000000000000000000000000000000000000000000000000004d000000000000000000000000000000000000000000000000000000000000004e000000000000000000000000000000000000000000000000000000000000004f0000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000005100000000000000000000000000000000000000000000000000000000000000520000000000000000000000000000000000000000000000000000000000000053000000000000000000000000000000000000000000000000000000000000005400000000000000000000000000000000000000000000000000000000000000550000000000000000000000000000000000000000000000000000000000000056000000000000000000000000000000000000000000000000000000000000005700000000000000000000000000000000000000000000000000000000000000580000000000000000000000000000000000000000000000000000000000000059000000000000000000000000000000000000000000000000000000000000005a000000000000000000000000000000000000000000000000000000000000005b000000000000000000000000000000000000000000000000000000000000005c000000000000000000000000000000000000000000000000000000000000005d000000000000000000000000000000000000000000000000000000000000005e000000000000000000000000000000000000000000000000000000000000005f0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000006100000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000063000000000000000000000000000000000000000000000000000000000000006400000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000066000000000000000000000000000000000000000000000000000000000000006700000000000000000000000000000000000000000000000000000000000000680000000000000000000000000000000000000000000000000000000000000069000000000000000000000000000000000000000000000000000000000000006a000000000000000000000000000000000000000000000000000000000000006b000000000000000000000000000000000000000000000000000000000000006c000000000000000000000000000000000000000000000000000000000000006d000000000000000000000000000000000000000000000000000000000000006e000000000000000000000000000000000000000000000000000000000000006f0000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000007100000000000000000000000000000000000000000000000000000000000000720000000000000000000000000000000000000000000000000000000000000073000000000000000000000000000000000000000000000000000000000000007400000000000000000000000000000000000000000000000000000000000000750000000000000000000000000000000000000000000000000000000000000076000000000000000000000000000000000000000000000000000000000000007700000000000000000000000000000000000000000000000000000000000000780000000000000000000000000000000000000000000000000000000000000079000000000000000000000000000000000000000000000000000000000000007a000000000000000000000000000000000000000000000000000000000000007b000000000000000000000000000000000000000000000000000000000000007c000000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000007e000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008100000000000000000000000000000000000000000000000000000000000000820000000000000000000000000000000000000000000000000000000000000083000000000000000000000000000000000000000000000000000000000000008400000000000000000000000000000000000000000000000000000000000000850000000000000000000000000000000000000000000000000000000000000086000000000000000000000000000000000000000000000000000000000000008700000000000000000000000000000000000000000000000000000000000000880000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000000008a000000000000000000000000000000000000000000000000000000000000008b000000000000000000000000000000000000000000000000000000000000008c000000000000000000000000000000000000000000000000000000000000008d000000000000000000000000000000000000000000000000000000000000008e000000000000000000000000000000000000000000000000000000000000008f0000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000009100000000000000000000000000000000000000000000000000000000000000920000000000000000000000000000000000000000000000000000000000000093000000000000000000000000000000000000000000000000000000000000009400000000000000000000000000000000000000000000000000000000000000950000000000000000000000000000000000000000000000000000000000000096000000000000000000000000000000000000000000000000000000000000009700000000000000000000000000000000000000000000000000000000000000980000000000000000000000000000000000000000000000000000000000000099000000000000000000000000000000000000000000000000000000000000009a000000000000000000000000000000000000000000000000000000000000009b000000000000000000000000000000000000000000000000000000000000009c000000000000000000000000000000000000000000000000000000000000009d000000000000000000000000000000000000000000000000000000000000009e000000000000000000000000000000000000000000000000000000000000009f00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000a100000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000a300000000000000000000000000000000000000000000000000000000000000a400000000000000000000000000000000000000000000000000000000000000a500000000000000000000000000000000000000000000000000000000000000a600000000000000000000000000000000000000000000000000000000000000a700000000000000000000000000000000000000000000000000000000000000a800000000000000000000000000000000000000000000000000000000000000a900000000000000000000000000000000000000000000000000000000000000aa00000000000000000000000000000000000000000000000000000000000000ab00000000000000000000000000000000000000000000000000000000000000ac00000000000000000000000000000000000000000000000000000000000000ad00000000000000000000000000000000000000000000000000000000000000ae00000000000000000000000000000000000000000000000000000000000000af00000000000000000000000000000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000b100000000000000000000000000000000000000000000000000000000000000b200000000000000000000000000000000000000000000000000000000000000b300000000000000000000000000000000000000000000000000000000000000b400000000000000000000000000000000000000000000000000000000000000b500000000000000000000000000000000000000000000000000000000000000b600000000000000000000000000000000000000000000000000000000000000b700000000000000000000000000000000000000000000000000000000000000b800000000000000000000000000000000000000000000000000000000000000b900000000000000000000000000000000000000000000000000000000000000ba00000000000000000000000000000000000000000000000000000000000000bb00000000000000000000000000000000000000000000000000000000000000bc00000000000000000000000000000000000000000000000000000000000000bd00000000000000000000000000000000000000000000000000000000000000be00000000000000000000000000000000000000000000000000000000000000bf00000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000c100000000000000000000000000000000000000000000000000000000000000c200000000000000000000000000000000000000000000000000000000000000c300000000000000000000000000000000000000000000000000000000000000c400000000000000000000000000000000000000000000000000000000000000c500000000000000000000000000000000000000000000000000000000000000c600000000000000000000000000000000000000000000000000000000000000c700000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c900000000000000000000000000000000000000000000000000000000000000ca00000000000000000000000000000000000000000000000000000000000000cb00000000000000000000000000000000000000000000000000000000000000cc00000000000000000000000000000000000000000000000000000000000000cd00000000000000000000000000000000000000000000000000000000000000ce00000000000000000000000000000000000000000000000000000000000000cf00000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000d100000000000000000000000000000000000000000000000000000000000000d200000000000000000000000000000000000000000000000000000000000000d300000000000000000000000000000000000000000000000000000000000000d400000000000000000000000000000000000000000000000000000000000000d500000000000000000000000000000000000000000000000000000000000000d600000000000000000000000000000000000000000000000000000000000000d700000000000000000000000000000000000000000000000000000000000000d800000000000000000000000000000000000000000000000000000000000000d900000000000000000000000000000000000000000000000000000000000000da00000000000000000000000000000000000000000000000000000000000000db00000000000000000000000000000000000000000000000000000000000000dc00000000000000000000000000000000000000000000000000000000000000dd00000000000000000000000000000000000000000000000000000000000000de00000000000000000000000000000000000000000000000000000000000000df00000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000e100000000000000000000000000000000000000000000000000000000000000e200000000000000000000000000000000000000000000000000000000000000e300000000000000000000000000000000000000000000000000000000000000e400000000000000000000000000000000000000000000000000000000000000e500000000000000000000000000000000000000000000000000000000000000e600000000000000000000000000000000000000000000000000000000000000e700000000000000000000000000000000000000000000000000000000000000e800000000000000000000000000000000000000000000000000000000000000e900000000000000000000000000000000000000000000000000000000000000ea00000000000000000000000000000000000000000000000000000000000000eb00000000000000000000000000000000000000000000000000000000000000ec00000000000000000000000000000000000000000000000000000000000000ed00000000000000000000000000000000000000000000000000000000000000ee00000000000000000000000000000000000000000000000000000000000000ef00000000000000000000000000000000000000000000000000000000000000f000000000000000000000000000000000000000000000000000000000000000f100000000000000000000000000000000000000000000000000000000000000f200000000000000000000000000000000000000000000000000000000000000f300000000000000000000000000000000000000000000000000000000000000f400000000000000000000000000000000000000000000000000000000000000f500000000000000000000000000000000000000000000000000000000000000f600000000000000000000000000000000000000000000000000000000000000f700000000000000000000000000000000000000000000000000000000000000f800000000000000000000000000000000000000000000000000000000000000f900000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000000fb00000000000000000000000000000000000000000000000000000000000000fc00000000000000000000000000000000000000000000000000000000000000fd00000000000000000000000000000000000000000000000000000000000000fe00000000000000000000000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000000001020000000000000000000000000000000000000000000000000000000000000103000000000000000000000000000000000000000000000000000000000000010400000000000000000000000000000000000000000000000000000000000001050000000000000000000000000000000000000000000000000000000000000106000000000000000000000000000000000000000000000000000000000000010700000000000000000000000000000000000000000000000000000000000001080000000000000000000000000000000000000000000000000000000000000109000000000000000000000000000000000000000000000000000000000000010a000000000000000000000000000000000000000000000000000000000000010b000000000000000000000000000000000000000000000000000000000000010c000000000000000000000000000000000000000000000000000000000000010d000000000000000000000000000000000000000000000000000000000000010e000000000000000000000000000000000000000000000000000000000000010f0000000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000011100000000000000000000000000000000000000000000000000000000000001120000000000000000000000000000000000000000000000000000000000000113000000000000000000000000000000000000000000000000000000000000011400000000000000000000000000000000000000000000000000000000000001150000000000000000000000000000000000000000000000000000000000000116000000000000000000000000000000000000000000000000000000000000011700000000000000000000000000000000000000000000000000000000000001180000000000000000000000000000000000000000000000000000000000000119000000000000000000000000000000000000000000000000000000000000011a000000000000000000000000000000000000000000000000000000000000011b000000000000000000000000000000000000000000000000000000000000011c000000000000000000000000000000000000000000000000000000000000011d000000000000000000000000000000000000000000000000000000000000011e000000000000000000000000000000000000000000000000000000000000011f0000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000012100000000000000000000000000000000000000000000000000000000000001220000000000000000000000000000000000000000000000000000000000000123000000000000000000000000000000000000000000000000000000000000012400000000000000000000000000000000000000000000000000000000000001250000000000000000000000000000000000000000000000000000000000000126000000000000000000000000000000000000000000000000000000000000012700000000000000000000000000000000000000000000000000000000000001280000000000000000000000000000000000000000000000000000000000000129000000000000000000000000000000000000000000000000000000000000012a000000000000000000000000000000000000000000000000000000000000012b000000000000000000000000000000000000000000000000000000000000012c000000000000000000000000000000000000000000000000000000000000012d000000000000000000000000000000000000000000000000000000000000012e000000000000000000000000000000000000000000000000000000000000012f0000000000000000000000000000000000000000000000000000000000000130000000000000000000000000000000000000000000000000000000000000013100000000000000000000000000000000000000000000000000000000000001320000000000000000000000000000000000000000000000000000000000000133000000000000000000000000000000000000000000000000000000000000013400000000000000000000000000000000000000000000000000000000000001350000000000000000000000000000000000000000000000000000000000000136000000000000000000000000000000000000000000000000000000000000013700000000000000000000000000000000000000000000000000000000000001380000000000000000000000000000000000000000000000000000000000000139000000000000000000000000000000000000000000000000000000000000013a000000000000000000000000000000000000000000000000000000000000013b000000000000000000000000000000000000000000000000000000000000013c000000000000000000000000000000000000000000000000000000000000013d000000000000000000000000000000000000000000000000000000000000013e000000000000000000000000000000000000000000000000000000000000013f0000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000014100000000000000000000000000000000000000000000000000000000000001420000000000000000000000000000000000000000000000000000000000000143000000000000000000000000000000000000000000000000000000000000014400000000000000000000000000000000000000000000000000000000000001450000000000000000000000000000000000000000000000000000000000000146000000000000000000000000000000000000000000000000000000000000014700000000000000000000000000000000000000000000000000000000000001480000000000000000000000000000000000000000000000000000000000000149000000000000000000000000000000000000000000000000000000000000014a000000000000000000000000000000000000000000000000000000000000014b000000000000000000000000000000000000000000000000000000000000014c000000000000000000000000000000000000000000000000000000000000014d000000000000000000000000000000000000000000000000000000000000014e000000000000000000000000000000000000000000000000000000000000014f0000000000000000000000000000000000000000000000000000000000000150000000000000000000000000000000000000000000000000000000000000015100000000000000000000000000000000000000000000000000000000000001520000000000000000000000000000000000000000000000000000000000000153000000000000000000000000000000000000000000000000000000000000015400000000000000000000000000000000000000000000000000000000000001550000000000000000000000000000000000000000000000000000000000000156000000000000000000000000000000000000000000000000000000000000015700000000000000000000000000000000000000000000000000000000000001580000000000000000000000000000000000000000000000000000000000000159000000000000000000000000000000000000000000000000000000000000015a000000000000000000000000000000000000000000000000000000000000015b000000000000000000000000000000000000000000000000000000000000015c000000000000000000000000000000000000000000000000000000000000015d000000000000000000000000000000000000000000000000000000000000015e000000000000000000000000000000000000000000000000000000000000015f0000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000001620000000000000000000000000000000000000000000000000000000000000163000000000000000000000000000000000000000000000000000000000000016400000000000000000000000000000000000000000000000000000000000001650000000000000000000000000000000000000000000000000000000000000166000000000000000000000000000000000000000000000000000000000000016700000000000000000000000000000000000000000000000000000000000001680000000000000000000000000000000000000000000000000000000000000169000000000000000000000000000000000000000000000000000000000000016a000000000000000000000000000000000000000000000000000000000000016b000000000000000000000000000000000000000000000000000000000000016c000000000000000000000000000000000000000000000000000000000000016d000000000000000000000000000000000000000000000000000000000000016e000000000000000000000000000000000000000000000000000000000000016f0000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000000017100000000000000000000000000000000000000000000000000000000000001720000000000000000000000000000000000000000000000000000000000000173000000000000000000000000000000000000000000000000000000000000017400000000000000000000000000000000000000000000000000000000000001750000000000000000000000000000000000000000000000000000000000000176000000000000000000000000000000000000000000000000000000000000017700000000000000000000000000000000000000000000000000000000000001780000000000000000000000000000000000000000000000000000000000000179000000000000000000000000000000000000000000000000000000000000017a000000000000000000000000000000000000000000000000000000000000017b000000000000000000000000000000000000000000000000000000000000017c000000000000000000000000000000000000000000000000000000000000017d000000000000000000000000000000000000000000000000000000000000017e000000000000000000000000000000000000000000000000000000000000017f0000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000018100000000000000000000000000000000000000000000000000000000000001820000000000000000000000000000000000000000000000000000000000000183000000000000000000000000000000000000000000000000000000000000018400000000000000000000000000000000000000000000000000000000000001850000000000000000000000000000000000000000000000000000000000000186000000000000000000000000000000000000000000000000000000000000018700000000000000000000000000000000000000000000000000000000000001880000000000000000000000000000000000000000000000000000000000000189000000000000000000000000000000000000000000000000000000000000018a000000000000000000000000000000000000000000000000000000000000018b000000000000000000000000000000000000000000000000000000000000018c000000000000000000000000000000000000000000000000000000000000018d000000000000000000000000000000000000000000000000000000000000018e000000000000000000000000000000000000000000000000000000000000018f0000000000000000000000000000000000000000000000000000000000000190000000000000000000000000000000000000000000000000000000000000019100000000000000000000000000000000000000000000000000000000000001920000000000000000000000000000000000000000000000000000000000000193000000000000000000000000000000000000000000000000000000000000019400000000000000000000000000000000000000000000000000000000000001950000000000000000000000000000000000000000000000000000000000000196000000000000000000000000000000000000000000000000000000000000019700000000000000000000000000000000000000000000000000000000000001980000000000000000000000000000000000000000000000000000000000000199000000000000000000000000000000000000000000000000000000000000019a000000000000000000000000000000000000000000000000000000000000019b000000000000000000000000000000000000000000000000000000000000019c000000000000000000000000000000000000000000000000000000000000019d000000000000000000000000000000000000000000000000000000000000019e000000000000000000000000000000000000000000000000000000000000019f00000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000001a100000000000000000000000000000000000000000000000000000000000001a200000000000000000000000000000000000000000000000000000000000001a300000000000000000000000000000000000000000000000000000000000001a400000000000000000000000000000000000000000000000000000000000001a500000000000000000000000000000000000000000000000000000000000001a600000000000000000000000000000000000000000000000000000000000001a700000000000000000000000000000000000000000000000000000000000001a800000000000000000000000000000000000000000000000000000000000001a900000000000000000000000000000000000000000000000000000000000001aa00000000000000000000000000000000000000000000000000000000000001ab00000000000000000000000000000000000000000000000000000000000001ac00000000000000000000000000000000000000000000000000000000000001ad00000000000000000000000000000000000000000000000000000000000001ae00000000000000000000000000000000000000000000000000000000000001af00000000000000000000000000000000000000000000000000000000000001b000000000000000000000000000000000000000000000000000000000000001b100000000000000000000000000000000000000000000000000000000000001b200000000000000000000000000000000000000000000000000000000000001b300000000000000000000000000000000000000000000000000000000000001b400000000000000000000000000000000000000000000000000000000000001b500000000000000000000000000000000000000000000000000000000000001b600000000000000000000000000000000000000000000000000000000000001b700000000000000000000000000000000000000000000000000000000000001b800000000000000000000000000000000000000000000000000000000000001b900000000000000000000000000000000000000000000000000000000000001ba00000000000000000000000000000000000000000000000000000000000001bb00000000000000000000000000000000000000000000000000000000000001bc00000000000000000000000000000000000000000000000000000000000001bd00000000000000000000000000000000000000000000000000000000000001be00000000000000000000000000000000000000000000000000000000000001bf00000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001c100000000000000000000000000000000000000000000000000000000000001c200000000000000000000000000000000000000000000000000000000000001c300000000000000000000000000000000000000000000000000000000000001c400000000000000000000000000000000000000000000000000000000000001c500000000000000000000000000000000000000000000000000000000000001c600000000000000000000000000000000000000000000000000000000000001c700000000000000000000000000000000000000000000000000000000000001c800000000000000000000000000000000000000000000000000000000000001c900000000000000000000000000000000000000000000000000000000000001ca00000000000000000000000000000000000000000000000000000000000001cb00000000000000000000000000000000000000000000000000000000000001cc00000000000000000000000000000000000000000000000000000000000001cd00000000000000000000000000000000000000000000000000000000000001ce00000000000000000000000000000000000000000000000000000000000001cf00000000000000000000000000000000000000000000000000000000000001d000000000000000000000000000000000000000000000000000000000000001d100000000000000000000000000000000000000000000000000000000000001d200000000000000000000000000000000000000000000000000000000000001d300000000000000000000000000000000000000000000000000000000000001d400000000000000000000000000000000000000000000000000000000000001d500000000000000000000000000000000000000000000000000000000000001d600000000000000000000000000000000000000000000000000000000000001d700000000000000000000000000000000000000000000000000000000000001d800000000000000000000000000000000000000000000000000000000000001d900000000000000000000000000000000000000000000000000000000000001da00000000000000000000000000000000000000000000000000000000000001db00000000000000000000000000000000000000000000000000000000000001dc00000000000000000000000000000000000000000000000000000000000001dd00000000000000000000000000000000000000000000000000000000000001de00000000000000000000000000000000000000000000000000000000000001df00000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000001e100000000000000000000000000000000000000000000000000000000000001e200000000000000000000000000000000000000000000000000000000000001e300000000000000000000000000000000000000000000000000000000000001e400000000000000000000000000000000000000000000000000000000000001e500000000000000000000000000000000000000000000000000000000000001e600000000000000000000000000000000000000000000000000000000000001e700000000000000000000000000000000000000000000000000000000000001e800000000000000000000000000000000000000000000000000000000000001e900000000000000000000000000000000000000000000000000000000000001ea00000000000000000000000000000000000000000000000000000000000001eb00000000000000000000000000000000000000000000000000000000000001ec00000000000000000000000000000000000000000000000000000000000001ed00000000000000000000000000000000000000000000000000000000000001ee00000000000000000000000000000000000000000000000000000000000001ef00000000000000000000000000000000000000000000000000000000000001f000000000000000000000000000000000000000000000000000000000000001f100000000000000000000000000000000000000000000000000000000000001f200000000000000000000000000000000000000000000000000000000000001f300000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000001f500000000000000000000000000000000000000000000000000000000000001f600000000000000000000000000000000000000000000000000000000000001f700000000000000000000000000000000000000000000000000000000000001f800000000000000000000000000000000000000000000000000000000000001f900000000000000000000000000000000000000000000000000000000000001fa00000000000000000000000000000000000000000000000000000000000001fb00000000000000000000000000000000000000000000000000000000000001fc00000000000000000000000000000000000000000000000000000000000001fd00000000000000000000000000000000000000000000000000000000000001fe00000000000000000000000000000000000000000000000000000000000001ff0000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020100000000000000000000000000000000000000000000000000000000000002020000000000000000000000000000000000000000000000000000000000000203000000000000000000000000000000000000000000000000000000000000020400000000000000000000000000000000000000000000000000000000000002050000000000000000000000000000000000000000000000000000000000000206000000000000000000000000000000000000000000000000000000000000020700000000000000000000000000000000000000000000000000000000000002080000000000000000000000000000000000000000000000000000000000000209000000000000000000000000000000000000000000000000000000000000020a000000000000000000000000000000000000000000000000000000000000020b000000000000000000000000000000000000000000000000000000000000020c000000000000000000000000000000000000000000000000000000000000020d000000000000000000000000000000000000000000000000000000000000020e000000000000000000000000000000000000000000000000000000000000020f0000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000021100000000000000000000000000000000000000000000000000000000000002120000000000000000000000000000000000000000000000000000000000000213000000000000000000000000000000000000000000000000000000000000021400000000000000000000000000000000000000000000000000000000000002150000000000000000000000000000000000000000000000000000000000000216000000000000000000000000000000000000000000000000000000000000021700000000000000000000000000000000000000000000000000000000000002180000000000000000000000000000000000000000000000000000000000000219000000000000000000000000000000000000000000000000000000000000021a000000000000000000000000000000000000000000000000000000000000021b000000000000000000000000000000000000000000000000000000000000021c000000000000000000000000000000000000000000000000000000000000021d000000000000000000000000000000000000000000000000000000000000021e000000000000000000000000000000000000000000000000000000000000021f0000000000000000000000000000000000000000000000000000000000000220000000000000000000000000000000000000000000000000000000000000022100000000000000000000000000000000000000000000000000000000000002220000000000000000000000000000000000000000000000000000000000000223000000000000000000000000000000000000000000000000000000000000022400000000000000000000000000000000000000000000000000000000000002250000000000000000000000000000000000000000000000000000000000000226000000000000000000000000000000000000000000000000000000000000022700000000000000000000000000000000000000000000000000000000000002280000000000000000000000000000000000000000000000000000000000000229000000000000000000000000000000000000000000000000000000000000022a000000000000000000000000000000000000000000000000000000000000022b000000000000000000000000000000000000000000000000000000000000022c000000000000000000000000000000000000000000000000000000000000022d000000000000000000000000000000000000000000000000000000000000022e000000000000000000000000000000000000000000000000000000000000022f0000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000023100000000000000000000000000000000000000000000000000000000000002320000000000000000000000000000000000000000000000000000000000000233000000000000000000000000000000000000000000000000000000000000023400000000000000000000000000000000000000000000000000000000000002350000000000000000000000000000000000000000000000000000000000000236000000000000000000000000000000000000000000000000000000000000023700000000000000000000000000000000000000000000000000000000000002380000000000000000000000000000000000000000000000000000000000000239000000000000000000000000000000000000000000000000000000000000023a000000000000000000000000000000000000000000000000000000000000023b000000000000000000000000000000000000000000000000000000000000023c000000000000000000000000000000000000000000000000000000000000023d000000000000000000000000000000000000000000000000000000000000023e000000000000000000000000000000000000000000000000000000000000023f0000000000000000000000000000000000000000000000000000000000000240000000000000000000000000000000000000000000000000000000000000024100000000000000000000000000000000000000000000000000000000000002420000000000000000000000000000000000000000000000000000000000000243000000000000000000000000000000000000000000000000000000000000024400000000000000000000000000000000000000000000000000000000000002450000000000000000000000000000000000000000000000000000000000000246000000000000000000000000000000000000000000000000000000000000024700000000000000000000000000000000000000000000000000000000000002480000000000000000000000000000000000000000000000000000000000000249000000000000000000000000000000000000000000000000000000000000024a000000000000000000000000000000000000000000000000000000000000024b000000000000000000000000000000000000000000000000000000000000024c000000000000000000000000000000000000000000000000000000000000024d000000000000000000000000000000000000000000000000000000000000024e000000000000000000000000000000000000000000000000000000000000024f0000000000000000000000000000000000000000000000000000000000000250000000000000000000000000000000000000000000000000000000000000025100000000000000000000000000000000000000000000000000000000000002520000000000000000000000000000000000000000000000000000000000000253000000000000000000000000000000000000000000000000000000000000025400000000000000000000000000000000000000000000000000000000000002550000000000000000000000000000000000000000000000000000000000000256000000000000000000000000000000000000000000000000000000000000025700000000000000000000000000000000000000000000000000000000000002580000000000000000000000000000000000000000000000000000000000000259000000000000000000000000000000000000000000000000000000000000025a000000000000000000000000000000000000000000000000000000000000025b000000000000000000000000000000000000000000000000000000000000025c000000000000000000000000000000000000000000000000000000000000025d000000000000000000000000000000000000000000000000000000000000025e000000000000000000000000000000000000000000000000000000000000025f0000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000026100000000000000000000000000000000000000000000000000000000000002620000000000000000000000000000000000000000000000000000000000000263000000000000000000000000000000000000000000000000000000000000026400000000000000000000000000000000000000000000000000000000000002650000000000000000000000000000000000000000000000000000000000000266000000000000000000000000000000000000000000000000000000000000026700000000000000000000000000000000000000000000000000000000000002680000000000000000000000000000000000000000000000000000000000000269000000000000000000000000000000000000000000000000000000000000026a000000000000000000000000000000000000000000000000000000000000026b000000000000000000000000000000000000000000000000000000000000026c000000000000000000000000000000000000000000000000000000000000026d000000000000000000000000000000000000000000000000000000000000026e000000000000000000000000000000000000000000000000000000000000026f0000000000000000000000000000000000000000000000000000000000000270000000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000002720000000000000000000000000000000000000000000000000000000000000273000000000000000000000000000000000000000000000000000000000000027400000000000000000000000000000000000000000000000000000000000002750000000000000000000000000000000000000000000000000000000000000276000000000000000000000000000000000000000000000000000000000000027700000000000000000000000000000000000000000000000000000000000002780000000000000000000000000000000000000000000000000000000000000279000000000000000000000000000000000000000000000000000000000000027a000000000000000000000000000000000000000000000000000000000000027b000000000000000000000000000000000000000000000000000000000000027c000000000000000000000000000000000000000000000000000000000000027d000000000000000000000000000000000000000000000000000000000000027e000000000000000000000000000000000000000000000000000000000000027f0000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000028100000000000000000000000000000000000000000000000000000000000002820000000000000000000000000000000000000000000000000000000000000283000000000000000000000000000000000000000000000000000000000000028400000000000000000000000000000000000000000000000000000000000002850000000000000000000000000000000000000000000000000000000000000286000000000000000000000000000000000000000000000000000000000000028700000000000000000000000000000000000000000000000000000000000002880000000000000000000000000000000000000000000000000000000000000289000000000000000000000000000000000000000000000000000000000000028a000000000000000000000000000000000000000000000000000000000000028b000000000000000000000000000000000000000000000000000000000000028c000000000000000000000000000000000000000000000000000000000000028d000000000000000000000000000000000000000000000000000000000000028e000000000000000000000000000000000000000000000000000000000000028f0000000000000000000000000000000000000000000000000000000000000290000000000000000000000000000000000000000000000000000000000000029100000000000000000000000000000000000000000000000000000000000002920000000000000000000000000000000000000000000000000000000000000293000000000000000000000000000000000000000000000000000000000000029400000000000000000000000000000000000000000000000000000000000002950000000000000000000000000000000000000000000000000000000000000296000000000000000000000000000000000000000000000000000000000000029700000000000000000000000000000000000000000000000000000000000002980000000000000000000000000000000000000000000000000000000000000299000000000000000000000000000000000000000000000000000000000000029a000000000000000000000000000000000000000000000000000000000000029b000000000000000000000000000000000000000000000000000000000000029c000000000000000000000000000000000000000000000000000000000000029d000000000000000000000000000000000000000000000000000000000000029e000000000000000000000000000000000000000000000000000000000000029f00000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002a100000000000000000000000000000000000000000000000000000000000002a200000000000000000000000000000000000000000000000000000000000002a300000000000000000000000000000000000000000000000000000000000002a400000000000000000000000000000000000000000000000000000000000002a500000000000000000000000000000000000000000000000000000000000002a600000000000000000000000000000000000000000000000000000000000002a700000000000000000000000000000000000000000000000000000000000002a800000000000000000000000000000000000000000000000000000000000002a900000000000000000000000000000000000000000000000000000000000002aa00000000000000000000000000000000000000000000000000000000000002ab00000000000000000000000000000000000000000000000000000000000002ac00000000000000000000000000000000000000000000000000000000000002ad00000000000000000000000000000000000000000000000000000000000002ae00000000000000000000000000000000000000000000000000000000000002af00000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000002b100000000000000000000000000000000000000000000000000000000000002b200000000000000000000000000000000000000000000000000000000000002b300000000000000000000000000000000000000000000000000000000000002b400000000000000000000000000000000000000000000000000000000000002b500000000000000000000000000000000000000000000000000000000000002b600000000000000000000000000000000000000000000000000000000000002b700000000000000000000000000000000000000000000000000000000000002b800000000000000000000000000000000000000000000000000000000000002b900000000000000000000000000000000000000000000000000000000000002ba00000000000000000000000000000000000000000000000000000000000002bb00000000000000000000000000000000000000000000000000000000000002bc00000000000000000000000000000000000000000000000000000000000002bd00000000000000000000000000000000000000000000000000000000000002be00000000000000000000000000000000000000000000000000000000000002bf00000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000002c100000000000000000000000000000000000000000000000000000000000002c200000000000000000000000000000000000000000000000000000000000002c300000000000000000000000000000000000000000000000000000000000002c400000000000000000000000000000000000000000000000000000000000002c500000000000000000000000000000000000000000000000000000000000002c600000000000000000000000000000000000000000000000000000000000002c700000000000000000000000000000000000000000000000000000000000002c800000000000000000000000000000000000000000000000000000000000002c900000000000000000000000000000000000000000000000000000000000002ca00000000000000000000000000000000000000000000000000000000000002cb00000000000000000000000000000000000000000000000000000000000002cc00000000000000000000000000000000000000000000000000000000000002cd00000000000000000000000000000000000000000000000000000000000002ce00000000000000000000000000000000000000000000000000000000000002cf00000000000000000000000000000000000000000000000000000000000002d000000000000000000000000000000000000000000000000000000000000002d100000000000000000000000000000000000000000000000000000000000002d200000000000000000000000000000000000000000000000000000000000002d300000000000000000000000000000000000000000000000000000000000002d400000000000000000000000000000000000000000000000000000000000002d500000000000000000000000000000000000000000000000000000000000002d600000000000000000000000000000000000000000000000000000000000002d700000000000000000000000000000000000000000000000000000000000002d800000000000000000000000000000000000000000000000000000000000002d900000000000000000000000000000000000000000000000000000000000002da00000000000000000000000000000000000000000000000000000000000002db00000000000000000000000000000000000000000000000000000000000002dc00000000000000000000000000000000000000000000000000000000000002dd00000000000000000000000000000000000000000000000000000000000002de00000000000000000000000000000000000000000000000000000000000002df00000000000000000000000000000000000000000000000000000000000002e000000000000000000000000000000000000000000000000000000000000002e100000000000000000000000000000000000000000000000000000000000002e200000000000000000000000000000000000000000000000000000000000002e300000000000000000000000000000000000000000000000000000000000002e400000000000000000000000000000000000000000000000000000000000002e500000000000000000000000000000000000000000000000000000000000002e600000000000000000000000000000000000000000000000000000000000002e700000000000000000000000000000000000000000000000000000000000002e800000000000000000000000000000000000000000000000000000000000002e900000000000000000000000000000000000000000000000000000000000002ea00000000000000000000000000000000000000000000000000000000000002eb00000000000000000000000000000000000000000000000000000000000002ec00000000000000000000000000000000000000000000000000000000000002ed00000000000000000000000000000000000000000000000000000000000002ee00000000000000000000000000000000000000000000000000000000000002ef00000000000000000000000000000000000000000000000000000000000002f000000000000000000000000000000000000000000000000000000000000002f100000000000000000000000000000000000000000000000000000000000002f200000000000000000000000000000000000000000000000000000000000002f300000000000000000000000000000000000000000000000000000000000002f400000000000000000000000000000000000000000000000000000000000002f500000000000000000000000000000000000000000000000000000000000002f600000000000000000000000000000000000000000000000000000000000002f700000000000000000000000000000000000000000000000000000000000002f800000000000000000000000000000000000000000000000000000000000002f900000000000000000000000000000000000000000000000000000000000002fa00000000000000000000000000000000000000000000000000000000000002fb00000000000000000000000000000000000000000000000000000000000002fc00000000000000000000000000000000000000000000000000000000000002fd00000000000000000000000000000000000000000000000000000000000002fe00000000000000000000000000000000000000000000000000000000000002ff0000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000030100000000000000000000000000000000000000000000000000000000000003020000000000000000000000000000000000000000000000000000000000000303000000000000000000000000000000000000000000000000000000000000030400000000000000000000000000000000000000000000000000000000000003050000000000000000000000000000000000000000000000000000000000000306000000000000000000000000000000000000000000000000000000000000030700000000000000000000000000000000000000000000000000000000000003080000000000000000000000000000000000000000000000000000000000000309000000000000000000000000000000000000000000000000000000000000030a000000000000000000000000000000000000000000000000000000000000030b000000000000000000000000000000000000000000000000000000000000030c000000000000000000000000000000000000000000000000000000000000030d000000000000000000000000000000000000000000000000000000000000030e000000000000000000000000000000000000000000000000000000000000030f0000000000000000000000000000000000000000000000000000000000000310000000000000000000000000000000000000000000000000000000000000031100000000000000000000000000000000000000000000000000000000000003120000000000000000000000000000000000000000000000000000000000000313000000000000000000000000000000000000000000000000000000000000031400000000000000000000000000000000000000000000000000000000000003150000000000000000000000000000000000000000000000000000000000000316000000000000000000000000000000000000000000000000000000000000031700000000000000000000000000000000000000000000000000000000000003180000000000000000000000000000000000000000000000000000000000000319000000000000000000000000000000000000000000000000000000000000031a000000000000000000000000000000000000000000000000000000000000031b000000000000000000000000000000000000000000000000000000000000031c000000000000000000000000000000000000000000000000000000000000031d000000000000000000000000000000000000000000000000000000000000031e000000000000000000000000000000000000000000000000000000000000031f0000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000032100000000000000000000000000000000000000000000000000000000000003220000000000000000000000000000000000000000000000000000000000000323000000000000000000000000000000000000000000000000000000000000032400000000000000000000000000000000000000000000000000000000000003250000000000000000000000000000000000000000000000000000000000000326000000000000000000000000000000000000000000000000000000000000032700000000000000000000000000000000000000000000000000000000000003280000000000000000000000000000000000000000000000000000000000000329000000000000000000000000000000000000000000000000000000000000032a000000000000000000000000000000000000000000000000000000000000032b000000000000000000000000000000000000000000000000000000000000032c000000000000000000000000000000000000000000000000000000000000032d000000000000000000000000000000000000000000000000000000000000032e000000000000000000000000000000000000000000000000000000000000032f0000000000000000000000000000000000000000000000000000000000000330000000000000000000000000000000000000000000000000000000000000033100000000000000000000000000000000000000000000000000000000000003320000000000000000000000000000000000000000000000000000000000000333000000000000000000000000000000000000000000000000000000000000033400000000000000000000000000000000000000000000000000000000000003350000000000000000000000000000000000000000000000000000000000000336000000000000000000000000000000000000000000000000000000000000033700000000000000000000000000000000000000000000000000000000000003380000000000000000000000000000000000000000000000000000000000000339000000000000000000000000000000000000000000000000000000000000033a000000000000000000000000000000000000000000000000000000000000033b000000000000000000000000000000000000000000000000000000000000033c000000000000000000000000000000000000000000000000000000000000033d000000000000000000000000000000000000000000000000000000000000033e000000000000000000000000000000000000000000000000000000000000033f0000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000034100000000000000000000000000000000000000000000000000000000000003420000000000000000000000000000000000000000000000000000000000000343000000000000000000000000000000000000000000000000000000000000034400000000000000000000000000000000000000000000000000000000000003450000000000000000000000000000000000000000000000000000000000000346000000000000000000000000000000000000000000000000000000000000034700000000000000000000000000000000000000000000000000000000000003480000000000000000000000000000000000000000000000000000000000000349000000000000000000000000000000000000000000000000000000000000034a000000000000000000000000000000000000000000000000000000000000034b000000000000000000000000000000000000000000000000000000000000034c000000000000000000000000000000000000000000000000000000000000034d000000000000000000000000000000000000000000000000000000000000034e000000000000000000000000000000000000000000000000000000000000034f0000000000000000000000000000000000000000000000000000000000000350000000000000000000000000000000000000000000000000000000000000035100000000000000000000000000000000000000000000000000000000000003520000000000000000000000000000000000000000000000000000000000000353000000000000000000000000000000000000000000000000000000000000035400000000000000000000000000000000000000000000000000000000000003550000000000000000000000000000000000000000000000000000000000000356000000000000000000000000000000000000000000000000000000000000035700000000000000000000000000000000000000000000000000000000000003580000000000000000000000000000000000000000000000000000000000000359000000000000000000000000000000000000000000000000000000000000035a000000000000000000000000000000000000000000000000000000000000035b000000000000000000000000000000000000000000000000000000000000035c000000000000000000000000000000000000000000000000000000000000035d000000000000000000000000000000000000000000000000000000000000035e000000000000000000000000000000000000000000000000000000000000035f0000000000000000000000000000000000000000000000000000000000000360000000000000000000000000000000000000000000000000000000000000036100000000000000000000000000000000000000000000000000000000000003620000000000000000000000000000000000000000000000000000000000000363000000000000000000000000000000000000000000000000000000000000036400000000000000000000000000000000000000000000000000000000000003650000000000000000000000000000000000000000000000000000000000000366000000000000000000000000000000000000000000000000000000000000036700000000000000000000000000000000000000000000000000000000000003680000000000000000000000000000000000000000000000000000000000000369000000000000000000000000000000000000000000000000000000000000036a000000000000000000000000000000000000000000000000000000000000036b000000000000000000000000000000000000000000000000000000000000036c000000000000000000000000000000000000000000000000000000000000036d000000000000000000000000000000000000000000000000000000000000036e000000000000000000000000000000000000000000000000000000000000036f0000000000000000000000000000000000000000000000000000000000000370000000000000000000000000000000000000000000000000000000000000037100000000000000000000000000000000000000000000000000000000000003720000000000000000000000000000000000000000000000000000000000000373000000000000000000000000000000000000000000000000000000000000037400000000000000000000000000000000000000000000000000000000000003750000000000000000000000000000000000000000000000000000000000000376000000000000000000000000000000000000000000000000000000000000037700000000000000000000000000000000000000000000000000000000000003780000000000000000000000000000000000000000000000000000000000000379000000000000000000000000000000000000000000000000000000000000037a000000000000000000000000000000000000000000000000000000000000037b000000000000000000000000000000000000000000000000000000000000037c000000000000000000000000000000000000000000000000000000000000037d000000000000000000000000000000000000000000000000000000000000037e000000000000000000000000000000000000000000000000000000000000037f0000000000000000000000000000000000000000000000000000000000000380000000000000000000000000000000000000000000000000000000000000038100000000000000000000000000000000000000000000000000000000000003820000000000000000000000000000000000000000000000000000000000000383000000000000000000000000000000000000000000000000000000000000038400000000000000000000000000000000000000000000000000000000000003850000000000000000000000000000000000000000000000000000000000000386000000000000000000000000000000000000000000000000000000000000038700000000000000000000000000000000000000000000000000000000000003880000000000000000000000000000000000000000000000000000000000000389000000000000000000000000000000000000000000000000000000000000038a000000000000000000000000000000000000000000000000000000000000038b000000000000000000000000000000000000000000000000000000000000038c000000000000000000000000000000000000000000000000000000000000038d000000000000000000000000000000000000000000000000000000000000038e000000000000000000000000000000000000000000000000000000000000038f0000000000000000000000000000000000000000000000000000000000000390000000000000000000000000000000000000000000000000000000000000039100000000000000000000000000000000000000000000000000000000000003920000000000000000000000000000000000000000000000000000000000000393000000000000000000000000000000000000000000000000000000000000039400000000000000000000000000000000000000000000000000000000000003950000000000000000000000000000000000000000000000000000000000000396000000000000000000000000000000000000000000000000000000000000039700000000000000000000000000000000000000000000000000000000000003980000000000000000000000000000000000000000000000000000000000000399000000000000000000000000000000000000000000000000000000000000039a000000000000000000000000000000000000000000000000000000000000039b000000000000000000000000000000000000000000000000000000000000039c000000000000000000000000000000000000000000000000000000000000039d000000000000000000000000000000000000000000000000000000000000039e000000000000000000000000000000000000000000000000000000000000039f00000000000000000000000000000000000000000000000000000000000003a000000000000000000000000000000000000000000000000000000000000003a100000000000000000000000000000000000000000000000000000000000003a200000000000000000000000000000000000000000000000000000000000003a300000000000000000000000000000000000000000000000000000000000003a400000000000000000000000000000000000000000000000000000000000003a500000000000000000000000000000000000000000000000000000000000003a600000000000000000000000000000000000000000000000000000000000003a700000000000000000000000000000000000000000000000000000000000003a800000000000000000000000000000000000000000000000000000000000003a900000000000000000000000000000000000000000000000000000000000003aa00000000000000000000000000000000000000000000000000000000000003ab00000000000000000000000000000000000000000000000000000000000003ac00000000000000000000000000000000000000000000000000000000000003ad00000000000000000000000000000000000000000000000000000000000003ae00000000000000000000000000000000000000000000000000000000000003af00000000000000000000000000000000000000000000000000000000000003b000000000000000000000000000000000000000000000000000000000000003b100000000000000000000000000000000000000000000000000000000000003b200000000000000000000000000000000000000000000000000000000000003b300000000000000000000000000000000000000000000000000000000000003b400000000000000000000000000000000000000000000000000000000000003b500000000000000000000000000000000000000000000000000000000000003b600000000000000000000000000000000000000000000000000000000000003b700000000000000000000000000000000000000000000000000000000000003b800000000000000000000000000000000000000000000000000000000000003b900000000000000000000000000000000000000000000000000000000000003ba00000000000000000000000000000000000000000000000000000000000003bb00000000000000000000000000000000000000000000000000000000000003bc00000000000000000000000000000000000000000000000000000000000003bd00000000000000000000000000000000000000000000000000000000000003be00000000000000000000000000000000000000000000000000000000000003bf00000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000003c100000000000000000000000000000000000000000000000000000000000003c200000000000000000000000000000000000000000000000000000000000003c300000000000000000000000000000000000000000000000000000000000003c400000000000000000000000000000000000000000000000000000000000003c500000000000000000000000000000000000000000000000000000000000003c600000000000000000000000000000000000000000000000000000000000003c700000000000000000000000000000000000000000000000000000000000003c800000000000000000000000000000000000000000000000000000000000003c900000000000000000000000000000000000000000000000000000000000003ca00000000000000000000000000000000000000000000000000000000000003cb00000000000000000000000000000000000000000000000000000000000003cc00000000000000000000000000000000000000000000000000000000000003cd00000000000000000000000000000000000000000000000000000000000003ce00000000000000000000000000000000000000000000000000000000000003cf00000000000000000000000000000000000000000000000000000000000003d000000000000000000000000000000000000000000000000000000000000003d100000000000000000000000000000000000000000000000000000000000003d200000000000000000000000000000000000000000000000000000000000003d300000000000000000000000000000000000000000000000000000000000003d400000000000000000000000000000000000000000000000000000000000003d500000000000000000000000000000000000000000000000000000000000003d600000000000000000000000000000000000000000000000000000000000003d700000000000000000000000000000000000000000000000000000000000003d800000000000000000000000000000000000000000000000000000000000003d900000000000000000000000000000000000000000000000000000000000003da00000000000000000000000000000000000000000000000000000000000003db00000000000000000000000000000000000000000000000000000000000003dc00000000000000000000000000000000000000000000000000000000000003dd00000000000000000000000000000000000000000000000000000000000003de00000000000000000000000000000000000000000000000000000000000003df00000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000003e100000000000000000000000000000000000000000000000000000000000003e200000000000000000000000000000000000000000000000000000000000003e300000000000000000000000000000000000000000000000000000000000003e400000000000000000000000000000000000000000000000000000000000003e500000000000000000000000000000000000000000000000000000000000003e600000000000000000000000000000000000000000000000000000000000003e700000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000003e900000000000000000000000000000000000000000000000000000000000003ea00000000000000000000000000000000000000000000000000000000000003eb00000000000000000000000000000000000000000000000000000000000003ec00000000000000000000000000000000000000000000000000000000000003ed00000000000000000000000000000000000000000000000000000000000003ee00000000000000000000000000000000000000000000000000000000000003ef00000000000000000000000000000000000000000000000000000000000003f000000000000000000000000000000000000000000000000000000000000003f100000000000000000000000000000000000000000000000000000000000003f200000000000000000000000000000000000000000000000000000000000003f300000000000000000000000000000000000000000000000000000000000003f400000000000000000000000000000000000000000000000000000000000003f500000000000000000000000000000000000000000000000000000000000003f600000000000000000000000000000000000000000000000000000000000003f700000000000000000000000000000000000000000000000000000000000003f800000000000000000000000000000000000000000000000000000000000003f900000000000000000000000000000000000000000000000000000000000003fa00000000000000000000000000000000000000000000000000000000000003fb00000000000000000000000000000000000000000000000000000000000003fc00000000000000000000000000000000000000000000000000000000000003fd00000000000000000000000000000000000000000000000000000000000003fe00000000000000000000000000000000000000000000000000000000000003ff0000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040100000000000000000000000000000000000000000000000000000000000004020000000000000000000000000000000000000000000000000000000000000403000000000000000000000000000000000000000000000000000000000000040400000000000000000000000000000000000000000000000000000000000004050000000000000000000000000000000000000000000000000000000000000406000000000000000000000000000000000000000000000000000000000000040700000000000000000000000000000000000000000000000000000000000004080000000000000000000000000000000000000000000000000000000000000409000000000000000000000000000000000000000000000000000000000000040a000000000000000000000000000000000000000000000000000000000000040b000000000000000000000000000000000000000000000000000000000000040c000000000000000000000000000000000000000000000000000000000000040d000000000000000000000000000000000000000000000000000000000000040e000000000000000000000000000000000000000000000000000000000000040f0000000000000000000000000000000000000000000000000000000000000410000000000000000000000000000000000000000000000000000000000000041100000000000000000000000000000000000000000000000000000000000004120000000000000000000000000000000000000000000000000000000000000413000000000000000000000000000000000000000000000000000000000000041400000000000000000000000000000000000000000000000000000000000004150000000000000000000000000000000000000000000000000000000000000416000000000000000000000000000000000000000000000000000000000000041700000000000000000000000000000000000000000000000000000000000004180000000000000000000000000000000000000000000000000000000000000419000000000000000000000000000000000000000000000000000000000000041a000000000000000000000000000000000000000000000000000000000000041b000000000000000000000000000000000000000000000000000000000000041c000000000000000000000000000000000000000000000000000000000000041d000000000000000000000000000000000000000000000000000000000000041e000000000000000000000000000000000000000000000000000000000000041f0000000000000000000000000000000000000000000000000000000000000420000000000000000000000000000000000000000000000000000000000000042100000000000000000000000000000000000000000000000000000000000004220000000000000000000000000000000000000000000000000000000000000423000000000000000000000000000000000000000000000000000000000000042400000000000000000000000000000000000000000000000000000000000004250000000000000000000000000000000000000000000000000000000000000426000000000000000000000000000000000000000000000000000000000000042700000000000000000000000000000000000000000000000000000000000004280000000000000000000000000000000000000000000000000000000000000429000000000000000000000000000000000000000000000000000000000000042a000000000000000000000000000000000000000000000000000000000000042b000000000000000000000000000000000000000000000000000000000000042c000000000000000000000000000000000000000000000000000000000000042d000000000000000000000000000000000000000000000000000000000000042e000000000000000000000000000000000000000000000000000000000000042f0000000000000000000000000000000000000000000000000000000000000430000000000000000000000000000000000000000000000000000000000000043100000000000000000000000000000000000000000000000000000000000004320000000000000000000000000000000000000000000000000000000000000433000000000000000000000000000000000000000000000000000000000000043400000000000000000000000000000000000000000000000000000000000004350000000000000000000000000000000000000000000000000000000000000436000000000000000000000000000000000000000000000000000000000000043700000000000000000000000000000000000000000000000000000000000004380000000000000000000000000000000000000000000000000000000000000439000000000000000000000000000000000000000000000000000000000000043a000000000000000000000000000000000000000000000000000000000000043b000000000000000000000000000000000000000000000000000000000000043c000000000000000000000000000000000000000000000000000000000000043d000000000000000000000000000000000000000000000000000000000000043e000000000000000000000000000000000000000000000000000000000000043f0000000000000000000000000000000000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000044100000000000000000000000000000000000000000000000000000000000004420000000000000000000000000000000000000000000000000000000000000443000000000000000000000000000000000000000000000000000000000000044400000000000000000000000000000000000000000000000000000000000004450000000000000000000000000000000000000000000000000000000000000446000000000000000000000000000000000000000000000000000000000000044700000000000000000000000000000000000000000000000000000000000004480000000000000000000000000000000000000000000000000000000000000449000000000000000000000000000000000000000000000000000000000000044a000000000000000000000000000000000000000000000000000000000000044b000000000000000000000000000000000000000000000000000000000000044c000000000000000000000000000000000000000000000000000000000000044d000000000000000000000000000000000000000000000000000000000000044e000000000000000000000000000000000000000000000000000000000000044f0000000000000000000000000000000000000000000000000000000000000450000000000000000000000000000000000000000000000000000000000000045100000000000000000000000000000000000000000000000000000000000004520000000000000000000000000000000000000000000000000000000000000453000000000000000000000000000000000000000000000000000000000000045400000000000000000000000000000000000000000000000000000000000004550000000000000000000000000000000000000000000000000000000000000456000000000000000000000000000000000000000000000000000000000000045700000000000000000000000000000000000000000000000000000000000004580000000000000000000000000000000000000000000000000000000000000459000000000000000000000000000000000000000000000000000000000000045a000000000000000000000000000000000000000000000000000000000000045b000000000000000000000000000000000000000000000000000000000000045c000000000000000000000000000000000000000000000000000000000000045d000000000000000000000000000000000000000000000000000000000000045e000000000000000000000000000000000000000000000000000000000000045f0000000000000000000000000000000000000000000000000000000000000460000000000000000000000000000000000000000000000000000000000000046100000000000000000000000000000000000000000000000000000000000004620000000000000000000000000000000000000000000000000000000000000463000000000000000000000000000000000000000000000000000000000000046400000000000000000000000000000000000000000000000000000000000004650000000000000000000000000000000000000000000000000000000000000466000000000000000000000000000000000000000000000000000000000000046700000000000000000000000000000000000000000000000000000000000004680000000000000000000000000000000000000000000000000000000000000469000000000000000000000000000000000000000000000000000000000000046a000000000000000000000000000000000000000000000000000000000000046b000000000000000000000000000000000000000000000000000000000000046c000000000000000000000000000000000000000000000000000000000000046d000000000000000000000000000000000000000000000000000000000000046e000000000000000000000000000000000000000000000000000000000000046f0000000000000000000000000000000000000000000000000000000000000470000000000000000000000000000000000000000000000000000000000000047100000000000000000000000000000000000000000000000000000000000004720000000000000000000000000000000000000000000000000000000000000473000000000000000000000000000000000000000000000000000000000000047400000000000000000000000000000000000000000000000000000000000004750000000000000000000000000000000000000000000000000000000000000476000000000000000000000000000000000000000000000000000000000000047700000000000000000000000000000000000000000000000000000000000004780000000000000000000000000000000000000000000000000000000000000479000000000000000000000000000000000000000000000000000000000000047a000000000000000000000000000000000000000000000000000000000000047b000000000000000000000000000000000000000000000000000000000000047c000000000000000000000000000000000000000000000000000000000000047d000000000000000000000000000000000000000000000000000000000000047e000000000000000000000000000000000000000000000000000000000000047f0000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000048100000000000000000000000000000000000000000000000000000000000004820000000000000000000000000000000000000000000000000000000000000483000000000000000000000000000000000000000000000000000000000000048400000000000000000000000000000000000000000000000000000000000004850000000000000000000000000000000000000000000000000000000000000486000000000000000000000000000000000000000000000000000000000000048700000000000000000000000000000000000000000000000000000000000004880000000000000000000000000000000000000000000000000000000000000489000000000000000000000000000000000000000000000000000000000000048a000000000000000000000000000000000000000000000000000000000000048b000000000000000000000000000000000000000000000000000000000000048c000000000000000000000000000000000000000000000000000000000000048d000000000000000000000000000000000000000000000000000000000000048e000000000000000000000000000000000000000000000000000000000000048f0000000000000000000000000000000000000000000000000000000000000490000000000000000000000000000000000000000000000000000000000000049100000000000000000000000000000000000000000000000000000000000004920000000000000000000000000000000000000000000000000000000000000493000000000000000000000000000000000000000000000000000000000000049400000000000000000000000000000000000000000000000000000000000004950000000000000000000000000000000000000000000000000000000000000496000000000000000000000000000000000000000000000000000000000000049700000000000000000000000000000000000000000000000000000000000004980000000000000000000000000000000000000000000000000000000000000499000000000000000000000000000000000000000000000000000000000000049a000000000000000000000000000000000000000000000000000000000000049b000000000000000000000000000000000000000000000000000000000000049c000000000000000000000000000000000000000000000000000000000000049d000000000000000000000000000000000000000000000000000000000000049e000000000000000000000000000000000000000000000000000000000000049f00000000000000000000000000000000000000000000000000000000000004a000000000000000000000000000000000000000000000000000000000000004a100000000000000000000000000000000000000000000000000000000000004a200000000000000000000000000000000000000000000000000000000000004a300000000000000000000000000000000000000000000000000000000000004a400000000000000000000000000000000000000000000000000000000000004a500000000000000000000000000000000000000000000000000000000000004a600000000000000000000000000000000000000000000000000000000000004a700000000000000000000000000000000000000000000000000000000000004a800000000000000000000000000000000000000000000000000000000000004a900000000000000000000000000000000000000000000000000000000000004aa00000000000000000000000000000000000000000000000000000000000004ab00000000000000000000000000000000000000000000000000000000000004ac00000000000000000000000000000000000000000000000000000000000004ad00000000000000000000000000000000000000000000000000000000000004ae00000000000000000000000000000000000000000000000000000000000004af00000000000000000000000000000000000000000000000000000000000004b000000000000000000000000000000000000000000000000000000000000004b100000000000000000000000000000000000000000000000000000000000004b200000000000000000000000000000000000000000000000000000000000004b300000000000000000000000000000000000000000000000000000000000004b400000000000000000000000000000000000000000000000000000000000004b500000000000000000000000000000000000000000000000000000000000004b600000000000000000000000000000000000000000000000000000000000004b700000000000000000000000000000000000000000000000000000000000004b800000000000000000000000000000000000000000000000000000000000004b900000000000000000000000000000000000000000000000000000000000004ba00000000000000000000000000000000000000000000000000000000000004bb00000000000000000000000000000000000000000000000000000000000004bc00000000000000000000000000000000000000000000000000000000000004bd00000000000000000000000000000000000000000000000000000000000004be00000000000000000000000000000000000000000000000000000000000004bf00000000000000000000000000000000000000000000000000000000000004c000000000000000000000000000000000000000000000000000000000000004c100000000000000000000000000000000000000000000000000000000000004c200000000000000000000000000000000000000000000000000000000000004c300000000000000000000000000000000000000000000000000000000000004c400000000000000000000000000000000000000000000000000000000000004c500000000000000000000000000000000000000000000000000000000000004c600000000000000000000000000000000000000000000000000000000000004c700000000000000000000000000000000000000000000000000000000000004c800000000000000000000000000000000000000000000000000000000000004c900000000000000000000000000000000000000000000000000000000000004ca00000000000000000000000000000000000000000000000000000000000004cb00000000000000000000000000000000000000000000000000000000000004cc00000000000000000000000000000000000000000000000000000000000004cd00000000000000000000000000000000000000000000000000000000000004ce00000000000000000000000000000000000000000000000000000000000004cf00000000000000000000000000000000000000000000000000000000000004d000000000000000000000000000000000000000000000000000000000000004d100000000000000000000000000000000000000000000000000000000000004d200000000000000000000000000000000000000000000000000000000000004d300000000000000000000000000000000000000000000000000000000000004d400000000000000000000000000000000000000000000000000000000000004d500000000000000000000000000000000000000000000000000000000000004d600000000000000000000000000000000000000000000000000000000000004d700000000000000000000000000000000000000000000000000000000000004d800000000000000000000000000000000000000000000000000000000000004d900000000000000000000000000000000000000000000000000000000000004da00000000000000000000000000000000000000000000000000000000000004db00000000000000000000000000000000000000000000000000000000000004dc00000000000000000000000000000000000000000000000000000000000004dd00000000000000000000000000000000000000000000000000000000000004de00000000000000000000000000000000000000000000000000000000000004df00000000000000000000000000000000000000000000000000000000000004e000000000000000000000000000000000000000000000000000000000000004e100000000000000000000000000000000000000000000000000000000000004e200000000000000000000000000000000000000000000000000000000000004e300000000000000000000000000000000000000000000000000000000000004e400000000000000000000000000000000000000000000000000000000000004e500000000000000000000000000000000000000000000000000000000000004e600000000000000000000000000000000000000000000000000000000000004e700000000000000000000000000000000000000000000000000000000000004e800000000000000000000000000000000000000000000000000000000000004e900000000000000000000000000000000000000000000000000000000000004ea00000000000000000000000000000000000000000000000000000000000004eb00000000000000000000000000000000000000000000000000000000000004ec00000000000000000000000000000000000000000000000000000000000004ed00000000000000000000000000000000000000000000000000000000000004ee00000000000000000000000000000000000000000000000000000000000004ef00000000000000000000000000000000000000000000000000000000000004f000000000000000000000000000000000000000000000000000000000000004f100000000000000000000000000000000000000000000000000000000000004f200000000000000000000000000000000000000000000000000000000000004f300000000000000000000000000000000000000000000000000000000000004f400000000000000000000000000000000000000000000000000000000000004f500000000000000000000000000000000000000000000000000000000000004f600000000000000000000000000000000000000000000000000000000000004f700000000000000000000000000000000000000000000000000000000000004f800000000000000000000000000000000000000000000000000000000000004f900000000000000000000000000000000000000000000000000000000000004fa00000000000000000000000000000000000000000000000000000000000004fb00000000000000000000000000000000000000000000000000000000000004fc00000000000000000000000000000000000000000000000000000000000004fd00000000000000000000000000000000000000000000000000000000000004fe00000000000000000000000000000000000000000000000000000000000004ff0000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000050100000000000000000000000000000000000000000000000000000000000005020000000000000000000000000000000000000000000000000000000000000503000000000000000000000000000000000000000000000000000000000000050400000000000000000000000000000000000000000000000000000000000005050000000000000000000000000000000000000000000000000000000000000506000000000000000000000000000000000000000000000000000000000000050700000000000000000000000000000000000000000000000000000000000005080000000000000000000000000000000000000000000000000000000000000509000000000000000000000000000000000000000000000000000000000000050a000000000000000000000000000000000000000000000000000000000000050b000000000000000000000000000000000000000000000000000000000000050c000000000000000000000000000000000000000000000000000000000000050d000000000000000000000000000000000000000000000000000000000000050e000000000000000000000000000000000000000000000000000000000000050f0000000000000000000000000000000000000000000000000000000000000510000000000000000000000000000000000000000000000000000000000000051100000000000000000000000000000000000000000000000000000000000005120000000000000000000000000000000000000000000000000000000000000513000000000000000000000000000000000000000000000000000000000000051400000000000000000000000000000000000000000000000000000000000005150000000000000000000000000000000000000000000000000000000000000516000000000000000000000000000000000000000000000000000000000000051700000000000000000000000000000000000000000000000000000000000005180000000000000000000000000000000000000000000000000000000000000519000000000000000000000000000000000000000000000000000000000000051a000000000000000000000000000000000000000000000000000000000000051b000000000000000000000000000000000000000000000000000000000000051c000000000000000000000000000000000000000000000000000000000000051d000000000000000000000000000000000000000000000000000000000000051e000000000000000000000000000000000000000000000000000000000000051f0000000000000000000000000000000000000000000000000000000000000520000000000000000000000000000000000000000000000000000000000000052100000000000000000000000000000000000000000000000000000000000005220000000000000000000000000000000000000000000000000000000000000523000000000000000000000000000000000000000000000000000000000000052400000000000000000000000000000000000000000000000000000000000005250000000000000000000000000000000000000000000000000000000000000526000000000000000000000000000000000000000000000000000000000000052700000000000000000000000000000000000000000000000000000000000005280000000000000000000000000000000000000000000000000000000000000529000000000000000000000000000000000000000000000000000000000000052a000000000000000000000000000000000000000000000000000000000000052b000000000000000000000000000000000000000000000000000000000000052c000000000000000000000000000000000000000000000000000000000000052d000000000000000000000000000000000000000000000000000000000000052e000000000000000000000000000000000000000000000000000000000000052f0000000000000000000000000000000000000000000000000000000000000530000000000000000000000000000000000000000000000000000000000000053100000000000000000000000000000000000000000000000000000000000005320000000000000000000000000000000000000000000000000000000000000533000000000000000000000000000000000000000000000000000000000000053400000000000000000000000000000000000000000000000000000000000005350000000000000000000000000000000000000000000000000000000000000536000000000000000000000000000000000000000000000000000000000000053700000000000000000000000000000000000000000000000000000000000005380000000000000000000000000000000000000000000000000000000000000539000000000000000000000000000000000000000000000000000000000000053a000000000000000000000000000000000000000000000000000000000000053b000000000000000000000000000000000000000000000000000000000000053c000000000000000000000000000000000000000000000000000000000000053d000000000000000000000000000000000000000000000000000000000000053e000000000000000000000000000000000000000000000000000000000000053f0000000000000000000000000000000000000000000000000000000000000540000000000000000000000000000000000000000000000000000000000000054100000000000000000000000000000000000000000000000000000000000005420000000000000000000000000000000000000000000000000000000000000543000000000000000000000000000000000000000000000000000000000000054400000000000000000000000000000000000000000000000000000000000005450000000000000000000000000000000000000000000000000000000000000546000000000000000000000000000000000000000000000000000000000000054700000000000000000000000000000000000000000000000000000000000005480000000000000000000000000000000000000000000000000000000000000549000000000000000000000000000000000000000000000000000000000000054a000000000000000000000000000000000000000000000000000000000000054b000000000000000000000000000000000000000000000000000000000000054c000000000000000000000000000000000000000000000000000000000000054d000000000000000000000000000000000000000000000000000000000000054e000000000000000000000000000000000000000000000000000000000000054f0000000000000000000000000000000000000000000000000000000000000550000000000000000000000000000000000000000000000000000000000000055100000000000000000000000000000000000000000000000000000000000005520000000000000000000000000000000000000000000000000000000000000553000000000000000000000000000000000000000000000000000000000000055400000000000000000000000000000000000000000000000000000000000005550000000000000000000000000000000000000000000000000000000000000556000000000000000000000000000000000000000000000000000000000000055700000000000000000000000000000000000000000000000000000000000005580000000000000000000000000000000000000000000000000000000000000559000000000000000000000000000000000000000000000000000000000000055a000000000000000000000000000000000000000000000000000000000000055b000000000000000000000000000000000000000000000000000000000000055c000000000000000000000000000000000000000000000000000000000000055d000000000000000000000000000000000000000000000000000000000000055e000000000000000000000000000000000000000000000000000000000000055f0000000000000000000000000000000000000000000000000000000000000560000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000000000000000005620000000000000000000000000000000000000000000000000000000000000563000000000000000000000000000000000000000000000000000000000000056400000000000000000000000000000000000000000000000000000000000005650000000000000000000000000000000000000000000000000000000000000566000000000000000000000000000000000000000000000000000000000000056700000000000000000000000000000000000000000000000000000000000005680000000000000000000000000000000000000000000000000000000000000569000000000000000000000000000000000000000000000000000000000000056a000000000000000000000000000000000000000000000000000000000000056b000000000000000000000000000000000000000000000000000000000000056c000000000000000000000000000000000000000000000000000000000000056d000000000000000000000000000000000000000000000000000000000000056e000000000000000000000000000000000000000000000000000000000000056f0000000000000000000000000000000000000000000000000000000000000570000000000000000000000000000000000000000000000000000000000000057100000000000000000000000000000000000000000000000000000000000005720000000000000000000000000000000000000000000000000000000000000573000000000000000000000000000000000000000000000000000000000000057400000000000000000000000000000000000000000000000000000000000005750000000000000000000000000000000000000000000000000000000000000576000000000000000000000000000000000000000000000000000000000000057700000000000000000000000000000000000000000000000000000000000005780000000000000000000000000000000000000000000000000000000000000579000000000000000000000000000000000000000000000000000000000000057a000000000000000000000000000000000000000000000000000000000000057b000000000000000000000000000000000000000000000000000000000000057c000000000000000000000000000000000000000000000000000000000000057d000000000000000000000000000000000000000000000000000000000000057e000000000000000000000000000000000000000000000000000000000000057f0000000000000000000000000000000000000000000000000000000000000580000000000000000000000000000000000000000000000000000000000000058100000000000000000000000000000000000000000000000000000000000005820000000000000000000000000000000000000000000000000000000000000583000000000000000000000000000000000000000000000000000000000000058400000000000000000000000000000000000000000000000000000000000005850000000000000000000000000000000000000000000000000000000000000586000000000000000000000000000000000000000000000000000000000000058700000000000000000000000000000000000000000000000000000000000005880000000000000000000000000000000000000000000000000000000000000589000000000000000000000000000000000000000000000000000000000000058a000000000000000000000000000000000000000000000000000000000000058b000000000000000000000000000000000000000000000000000000000000058c000000000000000000000000000000000000000000000000000000000000058d000000000000000000000000000000000000000000000000000000000000058e000000000000000000000000000000000000000000000000000000000000058f0000000000000000000000000000000000000000000000000000000000000590000000000000000000000000000000000000000000000000000000000000059100000000000000000000000000000000000000000000000000000000000005920000000000000000000000000000000000000000000000000000000000000593000000000000000000000000000000000000000000000000000000000000059400000000000000000000000000000000000000000000000000000000000005950000000000000000000000000000000000000000000000000000000000000596000000000000000000000000000000000000000000000000000000000000059700000000000000000000000000000000000000000000000000000000000005980000000000000000000000000000000000000000000000000000000000000599000000000000000000000000000000000000000000000000000000000000059a000000000000000000000000000000000000000000000000000000000000059b000000000000000000000000000000000000000000000000000000000000059c000000000000000000000000000000000000000000000000000000000000059d000000000000000000000000000000000000000000000000000000000000059e000000000000000000000000000000000000000000000000000000000000059f00000000000000000000000000000000000000000000000000000000000005a000000000000000000000000000000000000000000000000000000000000005a100000000000000000000000000000000000000000000000000000000000005a200000000000000000000000000000000000000000000000000000000000005a300000000000000000000000000000000000000000000000000000000000005a400000000000000000000000000000000000000000000000000000000000005a500000000000000000000000000000000000000000000000000000000000005a600000000000000000000000000000000000000000000000000000000000005a700000000000000000000000000000000000000000000000000000000000005a800000000000000000000000000000000000000000000000000000000000005a900000000000000000000000000000000000000000000000000000000000005aa00000000000000000000000000000000000000000000000000000000000005ab00000000000000000000000000000000000000000000000000000000000005ac00000000000000000000000000000000000000000000000000000000000005ad00000000000000000000000000000000000000000000000000000000000005ae00000000000000000000000000000000000000000000000000000000000005af00000000000000000000000000000000000000000000000000000000000005b000000000000000000000000000000000000000000000000000000000000005b100000000000000000000000000000000000000000000000000000000000005b200000000000000000000000000000000000000000000000000000000000005b300000000000000000000000000000000000000000000000000000000000005b400000000000000000000000000000000000000000000000000000000000005b500000000000000000000000000000000000000000000000000000000000005b600000000000000000000000000000000000000000000000000000000000005b700000000000000000000000000000000000000000000000000000000000005b800000000000000000000000000000000000000000000000000000000000005b900000000000000000000000000000000000000000000000000000000000005ba00000000000000000000000000000000000000000000000000000000000005bb00000000000000000000000000000000000000000000000000000000000005bc00000000000000000000000000000000000000000000000000000000000005bd00000000000000000000000000000000000000000000000000000000000005be00000000000000000000000000000000000000000000000000000000000005bf00000000000000000000000000000000000000000000000000000000000005c000000000000000000000000000000000000000000000000000000000000005c100000000000000000000000000000000000000000000000000000000000005c200000000000000000000000000000000000000000000000000000000000005c300000000000000000000000000000000000000000000000000000000000005c400000000000000000000000000000000000000000000000000000000000005c500000000000000000000000000000000000000000000000000000000000005c600000000000000000000000000000000000000000000000000000000000005c700000000000000000000000000000000000000000000000000000000000005c800000000000000000000000000000000000000000000000000000000000005c900000000000000000000000000000000000000000000000000000000000005ca00000000000000000000000000000000000000000000000000000000000005cb00000000000000000000000000000000000000000000000000000000000005cc00000000000000000000000000000000000000000000000000000000000005cd00000000000000000000000000000000000000000000000000000000000005ce00000000000000000000000000000000000000000000000000000000000005cf00000000000000000000000000000000000000000000000000000000000005d000000000000000000000000000000000000000000000000000000000000005d100000000000000000000000000000000000000000000000000000000000005d200000000000000000000000000000000000000000000000000000000000005d300000000000000000000000000000000000000000000000000000000000005d400000000000000000000000000000000000000000000000000000000000005d500000000000000000000000000000000000000000000000000000000000005d600000000000000000000000000000000000000000000000000000000000005d700000000000000000000000000000000000000000000000000000000000005d800000000000000000000000000000000000000000000000000000000000005d900000000000000000000000000000000000000000000000000000000000005da00000000000000000000000000000000000000000000000000000000000005db00000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000005dd00000000000000000000000000000000000000000000000000000000000005de00000000000000000000000000000000000000000000000000000000000005df00000000000000000000000000000000000000000000000000000000000005e000000000000000000000000000000000000000000000000000000000000005e100000000000000000000000000000000000000000000000000000000000005e200000000000000000000000000000000000000000000000000000000000005e300000000000000000000000000000000000000000000000000000000000005e400000000000000000000000000000000000000000000000000000000000005e500000000000000000000000000000000000000000000000000000000000005e600000000000000000000000000000000000000000000000000000000000005e700000000000000000000000000000000000000000000000000000000000005e800000000000000000000000000000000000000000000000000000000000005e900000000000000000000000000000000000000000000000000000000000005ea00000000000000000000000000000000000000000000000000000000000005eb00000000000000000000000000000000000000000000000000000000000005ec00000000000000000000000000000000000000000000000000000000000005ed00000000000000000000000000000000000000000000000000000000000005ee00000000000000000000000000000000000000000000000000000000000005ef00000000000000000000000000000000000000000000000000000000000005f000000000000000000000000000000000000000000000000000000000000005f100000000000000000000000000000000000000000000000000000000000005f200000000000000000000000000000000000000000000000000000000000005f300000000000000000000000000000000000000000000000000000000000005f400000000000000000000000000000000000000000000000000000000000005f500000000000000000000000000000000000000000000000000000000000005f600000000000000000000000000000000000000000000000000000000000005f700000000000000000000000000000000000000000000000000000000000005f800000000000000000000000000000000000000000000000000000000000005f900000000000000000000000000000000000000000000000000000000000005fa00000000000000000000000000000000000000000000000000000000000005fb00000000000000000000000000000000000000000000000000000000000005fc00000000000000000000000000000000000000000000000000000000000005fd00000000000000000000000000000000000000000000000000000000000005fe00000000000000000000000000000000000000000000000000000000000005ff0000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000060100000000000000000000000000000000000000000000000000000000000006020000000000000000000000000000000000000000000000000000000000000603000000000000000000000000000000000000000000000000000000000000060400000000000000000000000000000000000000000000000000000000000006050000000000000000000000000000000000000000000000000000000000000606000000000000000000000000000000000000000000000000000000000000060700000000000000000000000000000000000000000000000000000000000006080000000000000000000000000000000000000000000000000000000000000609000000000000000000000000000000000000000000000000000000000000060a000000000000000000000000000000000000000000000000000000000000060b000000000000000000000000000000000000000000000000000000000000060c000000000000000000000000000000000000000000000000000000000000060d000000000000000000000000000000000000000000000000000000000000060e000000000000000000000000000000000000000000000000000000000000060f0000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000061100000000000000000000000000000000000000000000000000000000000006120000000000000000000000000000000000000000000000000000000000000613000000000000000000000000000000000000000000000000000000000000061400000000000000000000000000000000000000000000000000000000000006150000000000000000000000000000000000000000000000000000000000000616000000000000000000000000000000000000000000000000000000000000061700000000000000000000000000000000000000000000000000000000000006180000000000000000000000000000000000000000000000000000000000000619000000000000000000000000000000000000000000000000000000000000061a000000000000000000000000000000000000000000000000000000000000061b000000000000000000000000000000000000000000000000000000000000061c000000000000000000000000000000000000000000000000000000000000061d000000000000000000000000000000000000000000000000000000000000061e000000000000000000000000000000000000000000000000000000000000061f0000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000062100000000000000000000000000000000000000000000000000000000000006220000000000000000000000000000000000000000000000000000000000000623000000000000000000000000000000000000000000000000000000000000062400000000000000000000000000000000000000000000000000000000000006250000000000000000000000000000000000000000000000000000000000000626000000000000000000000000000000000000000000000000000000000000062700000000000000000000000000000000000000000000000000000000000006280000000000000000000000000000000000000000000000000000000000000629000000000000000000000000000000000000000000000000000000000000062a000000000000000000000000000000000000000000000000000000000000062b000000000000000000000000000000000000000000000000000000000000062c000000000000000000000000000000000000000000000000000000000000062d000000000000000000000000000000000000000000000000000000000000062e000000000000000000000000000000000000000000000000000000000000062f0000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000063100000000000000000000000000000000000000000000000000000000000006320000000000000000000000000000000000000000000000000000000000000633000000000000000000000000000000000000000000000000000000000000063400000000000000000000000000000000000000000000000000000000000006350000000000000000000000000000000000000000000000000000000000000636000000000000000000000000000000000000000000000000000000000000063700000000000000000000000000000000000000000000000000000000000006380000000000000000000000000000000000000000000000000000000000000639000000000000000000000000000000000000000000000000000000000000063a000000000000000000000000000000000000000000000000000000000000063b000000000000000000000000000000000000000000000000000000000000063c000000000000000000000000000000000000000000000000000000000000063d000000000000000000000000000000000000000000000000000000000000063e000000000000000000000000000000000000000000000000000000000000063f0000000000000000000000000000000000000000000000000000000000000640000000000000000000000000000000000000000000000000000000000000064100000000000000000000000000000000000000000000000000000000000006420000000000000000000000000000000000000000000000000000000000000643000000000000000000000000000000000000000000000000000000000000064400000000000000000000000000000000000000000000000000000000000006450000000000000000000000000000000000000000000000000000000000000646000000000000000000000000000000000000000000000000000000000000064700000000000000000000000000000000000000000000000000000000000006480000000000000000000000000000000000000000000000000000000000000649000000000000000000000000000000000000000000000000000000000000064a000000000000000000000000000000000000000000000000000000000000064b000000000000000000000000000000000000000000000000000000000000064c000000000000000000000000000000000000000000000000000000000000064d000000000000000000000000000000000000000000000000000000000000064e000000000000000000000000000000000000000000000000000000000000064f0000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000065100000000000000000000000000000000000000000000000000000000000006520000000000000000000000000000000000000000000000000000000000000653000000000000000000000000000000000000000000000000000000000000065400000000000000000000000000000000000000000000000000000000000006550000000000000000000000000000000000000000000000000000000000000656000000000000000000000000000000000000000000000000000000000000065700000000000000000000000000000000000000000000000000000000000006580000000000000000000000000000000000000000000000000000000000000659000000000000000000000000000000000000000000000000000000000000065a000000000000000000000000000000000000000000000000000000000000065b000000000000000000000000000000000000000000000000000000000000065c000000000000000000000000000000000000000000000000000000000000065d000000000000000000000000000000000000000000000000000000000000065e000000000000000000000000000000000000000000000000000000000000065f0000000000000000000000000000000000000000000000000000000000000660000000000000000000000000000000000000000000000000000000000000066100000000000000000000000000000000000000000000000000000000000006620000000000000000000000000000000000000000000000000000000000000663000000000000000000000000000000000000000000000000000000000000066400000000000000000000000000000000000000000000000000000000000006650000000000000000000000000000000000000000000000000000000000000666000000000000000000000000000000000000000000000000000000000000066700000000000000000000000000000000000000000000000000000000000006680000000000000000000000000000000000000000000000000000000000000669000000000000000000000000000000000000000000000000000000000000066a000000000000000000000000000000000000000000000000000000000000066b000000000000000000000000000000000000000000000000000000000000066c000000000000000000000000000000000000000000000000000000000000066d000000000000000000000000000000000000000000000000000000000000066e000000000000000000000000000000000000000000000000000000000000066f0000000000000000000000000000000000000000000000000000000000000670000000000000000000000000000000000000000000000000000000000000067100000000000000000000000000000000000000000000000000000000000006720000000000000000000000000000000000000000000000000000000000000673000000000000000000000000000000000000000000000000000000000000067400000000000000000000000000000000000000000000000000000000000006750000000000000000000000000000000000000000000000000000000000000676000000000000000000000000000000000000000000000000000000000000067700000000000000000000000000000000000000000000000000000000000006780000000000000000000000000000000000000000000000000000000000000679000000000000000000000000000000000000000000000000000000000000067a000000000000000000000000000000000000000000000000000000000000067b000000000000000000000000000000000000000000000000000000000000067c000000000000000000000000000000000000000000000000000000000000067d000000000000000000000000000000000000000000000000000000000000067e000000000000000000000000000000000000000000000000000000000000067f0000000000000000000000000000000000000000000000000000000000000680000000000000000000000000000000000000000000000000000000000000068100000000000000000000000000000000000000000000000000000000000006820000000000000000000000000000000000000000000000000000000000000683000000000000000000000000000000000000000000000000000000000000068400000000000000000000000000000000000000000000000000000000000006850000000000000000000000000000000000000000000000000000000000000686000000000000000000000000000000000000000000000000000000000000068700000000000000000000000000000000000000000000000000000000000006880000000000000000000000000000000000000000000000000000000000000689000000000000000000000000000000000000000000000000000000000000068a000000000000000000000000000000000000000000000000000000000000068b000000000000000000000000000000000000000000000000000000000000068c000000000000000000000000000000000000000000000000000000000000068d000000000000000000000000000000000000000000000000000000000000068e000000000000000000000000000000000000000000000000000000000000068f0000000000000000000000000000000000000000000000000000000000000690000000000000000000000000000000000000000000000000000000000000069100000000000000000000000000000000000000000000000000000000000006920000000000000000000000000000000000000000000000000000000000000693000000000000000000000000000000000000000000000000000000000000069400000000000000000000000000000000000000000000000000000000000006950000000000000000000000000000000000000000000000000000000000000696000000000000000000000000000000000000000000000000000000000000069700000000000000000000000000000000000000000000000000000000000006980000000000000000000000000000000000000000000000000000000000000699000000000000000000000000000000000000000000000000000000000000069a000000000000000000000000000000000000000000000000000000000000069b000000000000000000000000000000000000000000000000000000000000069c000000000000000000000000000000000000000000000000000000000000069d000000000000000000000000000000000000000000000000000000000000069e000000000000000000000000000000000000000000000000000000000000069f00000000000000000000000000000000000000000000000000000000000006a000000000000000000000000000000000000000000000000000000000000006a100000000000000000000000000000000000000000000000000000000000006a200000000000000000000000000000000000000000000000000000000000006a300000000000000000000000000000000000000000000000000000000000006a400000000000000000000000000000000000000000000000000000000000006a500000000000000000000000000000000000000000000000000000000000006a600000000000000000000000000000000000000000000000000000000000006a700000000000000000000000000000000000000000000000000000000000006a800000000000000000000000000000000000000000000000000000000000006a900000000000000000000000000000000000000000000000000000000000006aa00000000000000000000000000000000000000000000000000000000000006ab00000000000000000000000000000000000000000000000000000000000006ac00000000000000000000000000000000000000000000000000000000000006ad00000000000000000000000000000000000000000000000000000000000006ae00000000000000000000000000000000000000000000000000000000000006af00000000000000000000000000000000000000000000000000000000000006b000000000000000000000000000000000000000000000000000000000000006b100000000000000000000000000000000000000000000000000000000000006b200000000000000000000000000000000000000000000000000000000000006b300000000000000000000000000000000000000000000000000000000000006b400000000000000000000000000000000000000000000000000000000000006b500000000000000000000000000000000000000000000000000000000000006b600000000000000000000000000000000000000000000000000000000000006b700000000000000000000000000000000000000000000000000000000000006b800000000000000000000000000000000000000000000000000000000000006b900000000000000000000000000000000000000000000000000000000000006ba00000000000000000000000000000000000000000000000000000000000006bb00000000000000000000000000000000000000000000000000000000000006bc00000000000000000000000000000000000000000000000000000000000006bd00000000000000000000000000000000000000000000000000000000000006be00000000000000000000000000000000000000000000000000000000000006bf00000000000000000000000000000000000000000000000000000000000006c000000000000000000000000000000000000000000000000000000000000006c100000000000000000000000000000000000000000000000000000000000006c200000000000000000000000000000000000000000000000000000000000006c300000000000000000000000000000000000000000000000000000000000006c400000000000000000000000000000000000000000000000000000000000006c500000000000000000000000000000000000000000000000000000000000006c600000000000000000000000000000000000000000000000000000000000006c700000000000000000000000000000000000000000000000000000000000006c800000000000000000000000000000000000000000000000000000000000006c900000000000000000000000000000000000000000000000000000000000006ca00000000000000000000000000000000000000000000000000000000000006cb00000000000000000000000000000000000000000000000000000000000006cc00000000000000000000000000000000000000000000000000000000000006cd00000000000000000000000000000000000000000000000000000000000006ce00000000000000000000000000000000000000000000000000000000000006cf00000000000000000000000000000000000000000000000000000000000006d000000000000000000000000000000000000000000000000000000000000006d100000000000000000000000000000000000000000000000000000000000006d200000000000000000000000000000000000000000000000000000000000006d300000000000000000000000000000000000000000000000000000000000006d400000000000000000000000000000000000000000000000000000000000006d500000000000000000000000000000000000000000000000000000000000006d600000000000000000000000000000000000000000000000000000000000006d700000000000000000000000000000000000000000000000000000000000006d800000000000000000000000000000000000000000000000000000000000006d900000000000000000000000000000000000000000000000000000000000006da00000000000000000000000000000000000000000000000000000000000006db00000000000000000000000000000000000000000000000000000000000006dc00000000000000000000000000000000000000000000000000000000000006dd00000000000000000000000000000000000000000000000000000000000006de00000000000000000000000000000000000000000000000000000000000006df00000000000000000000000000000000000000000000000000000000000006e000000000000000000000000000000000000000000000000000000000000006e100000000000000000000000000000000000000000000000000000000000006e200000000000000000000000000000000000000000000000000000000000006e300000000000000000000000000000000000000000000000000000000000006e400000000000000000000000000000000000000000000000000000000000006e500000000000000000000000000000000000000000000000000000000000006e600000000000000000000000000000000000000000000000000000000000006e700000000000000000000000000000000000000000000000000000000000006e800000000000000000000000000000000000000000000000000000000000006e900000000000000000000000000000000000000000000000000000000000006ea00000000000000000000000000000000000000000000000000000000000006eb00000000000000000000000000000000000000000000000000000000000006ec00000000000000000000000000000000000000000000000000000000000006ed00000000000000000000000000000000000000000000000000000000000006ee00000000000000000000000000000000000000000000000000000000000006ef00000000000000000000000000000000000000000000000000000000000006f000000000000000000000000000000000000000000000000000000000000006f100000000000000000000000000000000000000000000000000000000000006f200000000000000000000000000000000000000000000000000000000000006f300000000000000000000000000000000000000000000000000000000000006f400000000000000000000000000000000000000000000000000000000000006f500000000000000000000000000000000000000000000000000000000000006f600000000000000000000000000000000000000000000000000000000000006f700000000000000000000000000000000000000000000000000000000000006f800000000000000000000000000000000000000000000000000000000000006f900000000000000000000000000000000000000000000000000000000000006fa00000000000000000000000000000000000000000000000000000000000006fb00000000000000000000000000000000000000000000000000000000000006fc00000000000000000000000000000000000000000000000000000000000006fd00000000000000000000000000000000000000000000000000000000000006fe00000000000000000000000000000000000000000000000000000000000006ff0000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000070100000000000000000000000000000000000000000000000000000000000007020000000000000000000000000000000000000000000000000000000000000703000000000000000000000000000000000000000000000000000000000000070400000000000000000000000000000000000000000000000000000000000007050000000000000000000000000000000000000000000000000000000000000706000000000000000000000000000000000000000000000000000000000000070700000000000000000000000000000000000000000000000000000000000007080000000000000000000000000000000000000000000000000000000000000709000000000000000000000000000000000000000000000000000000000000070a000000000000000000000000000000000000000000000000000000000000070b000000000000000000000000000000000000000000000000000000000000070c000000000000000000000000000000000000000000000000000000000000070d000000000000000000000000000000000000000000000000000000000000070e000000000000000000000000000000000000000000000000000000000000070f0000000000000000000000000000000000000000000000000000000000000710000000000000000000000000000000000000000000000000000000000000071100000000000000000000000000000000000000000000000000000000000007120000000000000000000000000000000000000000000000000000000000000713000000000000000000000000000000000000000000000000000000000000071400000000000000000000000000000000000000000000000000000000000007150000000000000000000000000000000000000000000000000000000000000716000000000000000000000000000000000000000000000000000000000000071700000000000000000000000000000000000000000000000000000000000007180000000000000000000000000000000000000000000000000000000000000719000000000000000000000000000000000000000000000000000000000000071a000000000000000000000000000000000000000000000000000000000000071b000000000000000000000000000000000000000000000000000000000000071c000000000000000000000000000000000000000000000000000000000000071d000000000000000000000000000000000000000000000000000000000000071e000000000000000000000000000000000000000000000000000000000000071f0000000000000000000000000000000000000000000000000000000000000720000000000000000000000000000000000000000000000000000000000000072100000000000000000000000000000000000000000000000000000000000007220000000000000000000000000000000000000000000000000000000000000723000000000000000000000000000000000000000000000000000000000000072400000000000000000000000000000000000000000000000000000000000007250000000000000000000000000000000000000000000000000000000000000726000000000000000000000000000000000000000000000000000000000000072700000000000000000000000000000000000000000000000000000000000007280000000000000000000000000000000000000000000000000000000000000729000000000000000000000000000000000000000000000000000000000000072a000000000000000000000000000000000000000000000000000000000000072b000000000000000000000000000000000000000000000000000000000000072c000000000000000000000000000000000000000000000000000000000000072d000000000000000000000000000000000000000000000000000000000000072e000000000000000000000000000000000000000000000000000000000000072f0000000000000000000000000000000000000000000000000000000000000730000000000000000000000000000000000000000000000000000000000000073100000000000000000000000000000000000000000000000000000000000007320000000000000000000000000000000000000000000000000000000000000733000000000000000000000000000000000000000000000000000000000000073400000000000000000000000000000000000000000000000000000000000007350000000000000000000000000000000000000000000000000000000000000736000000000000000000000000000000000000000000000000000000000000073700000000000000000000000000000000000000000000000000000000000007380000000000000000000000000000000000000000000000000000000000000739000000000000000000000000000000000000000000000000000000000000073a000000000000000000000000000000000000000000000000000000000000073b000000000000000000000000000000000000000000000000000000000000073c000000000000000000000000000000000000000000000000000000000000073d000000000000000000000000000000000000000000000000000000000000073e000000000000000000000000000000000000000000000000000000000000073f0000000000000000000000000000000000000000000000000000000000000740000000000000000000000000000000000000000000000000000000000000074100000000000000000000000000000000000000000000000000000000000007420000000000000000000000000000000000000000000000000000000000000743000000000000000000000000000000000000000000000000000000000000074400000000000000000000000000000000000000000000000000000000000007450000000000000000000000000000000000000000000000000000000000000746000000000000000000000000000000000000000000000000000000000000074700000000000000000000000000000000000000000000000000000000000007480000000000000000000000000000000000000000000000000000000000000749000000000000000000000000000000000000000000000000000000000000074a000000000000000000000000000000000000000000000000000000000000074b000000000000000000000000000000000000000000000000000000000000074c000000000000000000000000000000000000000000000000000000000000074d000000000000000000000000000000000000000000000000000000000000074e000000000000000000000000000000000000000000000000000000000000074f0000000000000000000000000000000000000000000000000000000000000750000000000000000000000000000000000000000000000000000000000000075100000000000000000000000000000000000000000000000000000000000007520000000000000000000000000000000000000000000000000000000000000753000000000000000000000000000000000000000000000000000000000000075400000000000000000000000000000000000000000000000000000000000007550000000000000000000000000000000000000000000000000000000000000756000000000000000000000000000000000000000000000000000000000000075700000000000000000000000000000000000000000000000000000000000007580000000000000000000000000000000000000000000000000000000000000759000000000000000000000000000000000000000000000000000000000000075a000000000000000000000000000000000000000000000000000000000000075b000000000000000000000000000000000000000000000000000000000000075c000000000000000000000000000000000000000000000000000000000000075d000000000000000000000000000000000000000000000000000000000000075e000000000000000000000000000000000000000000000000000000000000075f0000000000000000000000000000000000000000000000000000000000000760000000000000000000000000000000000000000000000000000000000000076100000000000000000000000000000000000000000000000000000000000007620000000000000000000000000000000000000000000000000000000000000763000000000000000000000000000000000000000000000000000000000000076400000000000000000000000000000000000000000000000000000000000007650000000000000000000000000000000000000000000000000000000000000766000000000000000000000000000000000000000000000000000000000000076700000000000000000000000000000000000000000000000000000000000007680000000000000000000000000000000000000000000000000000000000000769000000000000000000000000000000000000000000000000000000000000076a000000000000000000000000000000000000000000000000000000000000076b000000000000000000000000000000000000000000000000000000000000076c000000000000000000000000000000000000000000000000000000000000076d000000000000000000000000000000000000000000000000000000000000076e000000000000000000000000000000000000000000000000000000000000076f0000000000000000000000000000000000000000000000000000000000000770000000000000000000000000000000000000000000000000000000000000077100000000000000000000000000000000000000000000000000000000000007720000000000000000000000000000000000000000000000000000000000000773000000000000000000000000000000000000000000000000000000000000077400000000000000000000000000000000000000000000000000000000000007750000000000000000000000000000000000000000000000000000000000000776000000000000000000000000000000000000000000000000000000000000077700000000000000000000000000000000000000000000000000000000000007780000000000000000000000000000000000000000000000000000000000000779000000000000000000000000000000000000000000000000000000000000077a000000000000000000000000000000000000000000000000000000000000077b000000000000000000000000000000000000000000000000000000000000077c000000000000000000000000000000000000000000000000000000000000077d000000000000000000000000000000000000000000000000000000000000077e000000000000000000000000000000000000000000000000000000000000077f0000000000000000000000000000000000000000000000000000000000000780000000000000000000000000000000000000000000000000000000000000078100000000000000000000000000000000000000000000000000000000000007820000000000000000000000000000000000000000000000000000000000000783000000000000000000000000000000000000000000000000000000000000078400000000000000000000000000000000000000000000000000000000000007850000000000000000000000000000000000000000000000000000000000000786000000000000000000000000000000000000000000000000000000000000078700000000000000000000000000000000000000000000000000000000000007880000000000000000000000000000000000000000000000000000000000000789000000000000000000000000000000000000000000000000000000000000078a000000000000000000000000000000000000000000000000000000000000078b000000000000000000000000000000000000000000000000000000000000078c000000000000000000000000000000000000000000000000000000000000078d000000000000000000000000000000000000000000000000000000000000078e000000000000000000000000000000000000000000000000000000000000078f0000000000000000000000000000000000000000000000000000000000000790000000000000000000000000000000000000000000000000000000000000079100000000000000000000000000000000000000000000000000000000000007920000000000000000000000000000000000000000000000000000000000000793000000000000000000000000000000000000000000000000000000000000079400000000000000000000000000000000000000000000000000000000000007950000000000000000000000000000000000000000000000000000000000000796000000000000000000000000000000000000000000000000000000000000079700000000000000000000000000000000000000000000000000000000000007980000000000000000000000000000000000000000000000000000000000000799000000000000000000000000000000000000000000000000000000000000079a000000000000000000000000000000000000000000000000000000000000079b000000000000000000000000000000000000000000000000000000000000079c000000000000000000000000000000000000000000000000000000000000079d000000000000000000000000000000000000000000000000000000000000079e000000000000000000000000000000000000000000000000000000000000079f00000000000000000000000000000000000000000000000000000000000007a000000000000000000000000000000000000000000000000000000000000007a100000000000000000000000000000000000000000000000000000000000007a200000000000000000000000000000000000000000000000000000000000007a300000000000000000000000000000000000000000000000000000000000007a400000000000000000000000000000000000000000000000000000000000007a500000000000000000000000000000000000000000000000000000000000007a600000000000000000000000000000000000000000000000000000000000007a700000000000000000000000000000000000000000000000000000000000007a800000000000000000000000000000000000000000000000000000000000007a900000000000000000000000000000000000000000000000000000000000007aa00000000000000000000000000000000000000000000000000000000000007ab00000000000000000000000000000000000000000000000000000000000007ac00000000000000000000000000000000000000000000000000000000000007ad00000000000000000000000000000000000000000000000000000000000007ae00000000000000000000000000000000000000000000000000000000000007af00000000000000000000000000000000000000000000000000000000000007b000000000000000000000000000000000000000000000000000000000000007b100000000000000000000000000000000000000000000000000000000000007b200000000000000000000000000000000000000000000000000000000000007b300000000000000000000000000000000000000000000000000000000000007b400000000000000000000000000000000000000000000000000000000000007b500000000000000000000000000000000000000000000000000000000000007b600000000000000000000000000000000000000000000000000000000000007b700000000000000000000000000000000000000000000000000000000000007b800000000000000000000000000000000000000000000000000000000000007b900000000000000000000000000000000000000000000000000000000000007ba00000000000000000000000000000000000000000000000000000000000007bb00000000000000000000000000000000000000000000000000000000000007bc00000000000000000000000000000000000000000000000000000000000007bd00000000000000000000000000000000000000000000000000000000000007be00000000000000000000000000000000000000000000000000000000000007bf00000000000000000000000000000000000000000000000000000000000007c000000000000000000000000000000000000000000000000000000000000007c100000000000000000000000000000000000000000000000000000000000007c200000000000000000000000000000000000000000000000000000000000007c300000000000000000000000000000000000000000000000000000000000007c400000000000000000000000000000000000000000000000000000000000007c500000000000000000000000000000000000000000000000000000000000007c600000000000000000000000000000000000000000000000000000000000007c700000000000000000000000000000000000000000000000000000000000007c800000000000000000000000000000000000000000000000000000000000007c900000000000000000000000000000000000000000000000000000000000007ca00000000000000000000000000000000000000000000000000000000000007cb00000000000000000000000000000000000000000000000000000000000007cc00000000000000000000000000000000000000000000000000000000000007cd00000000000000000000000000000000000000000000000000000000000007ce00000000000000000000000000000000000000000000000000000000000007cf00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000007d100000000000000000000000000000000000000000000000000000000000007d200000000000000000000000000000000000000000000000000000000000007d300000000000000000000000000000000000000000000000000000000000007d400000000000000000000000000000000000000000000000000000000000007d500000000000000000000000000000000000000000000000000000000000007d600000000000000000000000000000000000000000000000000000000000007d700000000000000000000000000000000000000000000000000000000000007d800000000000000000000000000000000000000000000000000000000000007d900000000000000000000000000000000000000000000000000000000000007da00000000000000000000000000000000000000000000000000000000000007db00000000000000000000000000000000000000000000000000000000000007dc00000000000000000000000000000000000000000000000000000000000007dd00000000000000000000000000000000000000000000000000000000000007de00000000000000000000000000000000000000000000000000000000000007df00000000000000000000000000000000000000000000000000000000000007e000000000000000000000000000000000000000000000000000000000000007e100000000000000000000000000000000000000000000000000000000000007e200000000000000000000000000000000000000000000000000000000000007e300000000000000000000000000000000000000000000000000000000000007e400000000000000000000000000000000000000000000000000000000000007e500000000000000000000000000000000000000000000000000000000000007e600000000000000000000000000000000000000000000000000000000000007e700000000000000000000000000000000000000000000000000000000000007e800000000000000000000000000000000000000000000000000000000000007e900000000000000000000000000000000000000000000000000000000000007ea00000000000000000000000000000000000000000000000000000000000007eb00000000000000000000000000000000000000000000000000000000000007ec00000000000000000000000000000000000000000000000000000000000007ed00000000000000000000000000000000000000000000000000000000000007ee00000000000000000000000000000000000000000000000000000000000007ef00000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000007f100000000000000000000000000000000000000000000000000000000000007f200000000000000000000000000000000000000000000000000000000000007f300000000000000000000000000000000000000000000000000000000000007f400000000000000000000000000000000000000000000000000000000000007f500000000000000000000000000000000000000000000000000000000000007f600000000000000000000000000000000000000000000000000000000000007f700000000000000000000000000000000000000000000000000000000000007f800000000000000000000000000000000000000000000000000000000000007f900000000000000000000000000000000000000000000000000000000000007fa00000000000000000000000000000000000000000000000000000000000007fb00000000000000000000000000000000000000000000000000000000000007fc00000000000000000000000000000000000000000000000000000000000007fd00000000000000000000000000000000000000000000000000000000000007fe00000000000000000000000000000000000000000000000000000000000007ff0000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080100000000000000000000000000000000000000000000000000000000000008020000000000000000000000000000000000000000000000000000000000000803000000000000000000000000000000000000000000000000000000000000080400000000000000000000000000000000000000000000000000000000000008050000000000000000000000000000000000000000000000000000000000000806000000000000000000000000000000000000000000000000000000000000080700000000000000000000000000000000000000000000000000000000000008080000000000000000000000000000000000000000000000000000000000000809000000000000000000000000000000000000000000000000000000000000080a000000000000000000000000000000000000000000000000000000000000080b000000000000000000000000000000000000000000000000000000000000080c000000000000000000000000000000000000000000000000000000000000080d000000000000000000000000000000000000000000000000000000000000080e000000000000000000000000000000000000000000000000000000000000080f0000000000000000000000000000000000000000000000000000000000000810000000000000000000000000000000000000000000000000000000000000081100000000000000000000000000000000000000000000000000000000000008120000000000000000000000000000000000000000000000000000000000000813000000000000000000000000000000000000000000000000000000000000081400000000000000000000000000000000000000000000000000000000000008150000000000000000000000000000000000000000000000000000000000000816000000000000000000000000000000000000000000000000000000000000081700000000000000000000000000000000000000000000000000000000000008180000000000000000000000000000000000000000000000000000000000000819000000000000000000000000000000000000000000000000000000000000081a000000000000000000000000000000000000000000000000000000000000081b000000000000000000000000000000000000000000000000000000000000081c000000000000000000000000000000000000000000000000000000000000081d000000000000000000000000000000000000000000000000000000000000081e000000000000000000000000000000000000000000000000000000000000081f0000000000000000000000000000000000000000000000000000000000000820000000000000000000000000000000000000000000000000000000000000082100000000000000000000000000000000000000000000000000000000000008220000000000000000000000000000000000000000000000000000000000000823000000000000000000000000000000000000000000000000000000000000082400000000000000000000000000000000000000000000000000000000000008250000000000000000000000000000000000000000000000000000000000000826000000000000000000000000000000000000000000000000000000000000082700000000000000000000000000000000000000000000000000000000000008280000000000000000000000000000000000000000000000000000000000000829000000000000000000000000000000000000000000000000000000000000082a000000000000000000000000000000000000000000000000000000000000082b000000000000000000000000000000000000000000000000000000000000082c000000000000000000000000000000000000000000000000000000000000082d000000000000000000000000000000000000000000000000000000000000082e000000000000000000000000000000000000000000000000000000000000082f0000000000000000000000000000000000000000000000000000000000000830000000000000000000000000000000000000000000000000000000000000083100000000000000000000000000000000000000000000000000000000000008320000000000000000000000000000000000000000000000000000000000000833000000000000000000000000000000000000000000000000000000000000083400000000000000000000000000000000000000000000000000000000000008350000000000000000000000000000000000000000000000000000000000000836000000000000000000000000000000000000000000000000000000000000083700000000000000000000000000000000000000000000000000000000000008380000000000000000000000000000000000000000000000000000000000000839000000000000000000000000000000000000000000000000000000000000083a000000000000000000000000000000000000000000000000000000000000083b000000000000000000000000000000000000000000000000000000000000083c000000000000000000000000000000000000000000000000000000000000083d000000000000000000000000000000000000000000000000000000000000083e000000000000000000000000000000000000000000000000000000000000083f0000000000000000000000000000000000000000000000000000000000000840000000000000000000000000000000000000000000000000000000000000084100000000000000000000000000000000000000000000000000000000000008420000000000000000000000000000000000000000000000000000000000000843000000000000000000000000000000000000000000000000000000000000084400000000000000000000000000000000000000000000000000000000000008450000000000000000000000000000000000000000000000000000000000000846000000000000000000000000000000000000000000000000000000000000084700000000000000000000000000000000000000000000000000000000000008480000000000000000000000000000000000000000000000000000000000000849000000000000000000000000000000000000000000000000000000000000084a000000000000000000000000000000000000000000000000000000000000084b000000000000000000000000000000000000000000000000000000000000084c000000000000000000000000000000000000000000000000000000000000084d000000000000000000000000000000000000000000000000000000000000084e000000000000000000000000000000000000000000000000000000000000084f0000000000000000000000000000000000000000000000000000000000000850000000000000000000000000000000000000000000000000000000000000085100000000000000000000000000000000000000000000000000000000000008520000000000000000000000000000000000000000000000000000000000000853000000000000000000000000000000000000000000000000000000000000085400000000000000000000000000000000000000000000000000000000000008550000000000000000000000000000000000000000000000000000000000000856000000000000000000000000000000000000000000000000000000000000085700000000000000000000000000000000000000000000000000000000000008580000000000000000000000000000000000000000000000000000000000000859000000000000000000000000000000000000000000000000000000000000085a000000000000000000000000000000000000000000000000000000000000085b000000000000000000000000000000000000000000000000000000000000085c000000000000000000000000000000000000000000000000000000000000085d000000000000000000000000000000000000000000000000000000000000085e000000000000000000000000000000000000000000000000000000000000085f0000000000000000000000000000000000000000000000000000000000000860000000000000000000000000000000000000000000000000000000000000086100000000000000000000000000000000000000000000000000000000000008620000000000000000000000000000000000000000000000000000000000000863000000000000000000000000000000000000000000000000000000000000086400000000000000000000000000000000000000000000000000000000000008650000000000000000000000000000000000000000000000000000000000000866000000000000000000000000000000000000000000000000000000000000086700000000000000000000000000000000000000000000000000000000000008680000000000000000000000000000000000000000000000000000000000000869000000000000000000000000000000000000000000000000000000000000086a000000000000000000000000000000000000000000000000000000000000086b000000000000000000000000000000000000000000000000000000000000086c000000000000000000000000000000000000000000000000000000000000086d000000000000000000000000000000000000000000000000000000000000086e000000000000000000000000000000000000000000000000000000000000086f0000000000000000000000000000000000000000000000000000000000000870000000000000000000000000000000000000000000000000000000000000087100000000000000000000000000000000000000000000000000000000000008720000000000000000000000000000000000000000000000000000000000000873000000000000000000000000000000000000000000000000000000000000087400000000000000000000000000000000000000000000000000000000000008750000000000000000000000000000000000000000000000000000000000000876000000000000000000000000000000000000000000000000000000000000087700000000000000000000000000000000000000000000000000000000000008780000000000000000000000000000000000000000000000000000000000000879000000000000000000000000000000000000000000000000000000000000087a000000000000000000000000000000000000000000000000000000000000087b000000000000000000000000000000000000000000000000000000000000087c000000000000000000000000000000000000000000000000000000000000087d000000000000000000000000000000000000000000000000000000000000087e000000000000000000000000000000000000000000000000000000000000087f0000000000000000000000000000000000000000000000000000000000000880000000000000000000000000000000000000000000000000000000000000088100000000000000000000000000000000000000000000000000000000000008820000000000000000000000000000000000000000000000000000000000000883000000000000000000000000000000000000000000000000000000000000088400000000000000000000000000000000000000000000000000000000000008850000000000000000000000000000000000000000000000000000000000000886000000000000000000000000000000000000000000000000000000000000088700000000000000000000000000000000000000000000000000000000000008880000000000000000000000000000000000000000000000000000000000000889000000000000000000000000000000000000000000000000000000000000088a000000000000000000000000000000000000000000000000000000000000088b000000000000000000000000000000000000000000000000000000000000088c000000000000000000000000000000000000000000000000000000000000088d000000000000000000000000000000000000000000000000000000000000088e000000000000000000000000000000000000000000000000000000000000088f0000000000000000000000000000000000000000000000000000000000000890000000000000000000000000000000000000000000000000000000000000089100000000000000000000000000000000000000000000000000000000000008920000000000000000000000000000000000000000000000000000000000000893000000000000000000000000000000000000000000000000000000000000089400000000000000000000000000000000000000000000000000000000000008950000000000000000000000000000000000000000000000000000000000000896000000000000000000000000000000000000000000000000000000000000089700000000000000000000000000000000000000000000000000000000000008980000000000000000000000000000000000000000000000000000000000000899000000000000000000000000000000000000000000000000000000000000089a000000000000000000000000000000000000000000000000000000000000089b000000000000000000000000000000000000000000000000000000000000089c000000000000000000000000000000000000000000000000000000000000089d000000000000000000000000000000000000000000000000000000000000089e000000000000000000000000000000000000000000000000000000000000089f00000000000000000000000000000000000000000000000000000000000008a000000000000000000000000000000000000000000000000000000000000008a100000000000000000000000000000000000000000000000000000000000008a200000000000000000000000000000000000000000000000000000000000008a300000000000000000000000000000000000000000000000000000000000008a400000000000000000000000000000000000000000000000000000000000008a500000000000000000000000000000000000000000000000000000000000008a600000000000000000000000000000000000000000000000000000000000008a700000000000000000000000000000000000000000000000000000000000008a800000000000000000000000000000000000000000000000000000000000008a900000000000000000000000000000000000000000000000000000000000008aa00000000000000000000000000000000000000000000000000000000000008ab00000000000000000000000000000000000000000000000000000000000008ac00000000000000000000000000000000000000000000000000000000000008ad00000000000000000000000000000000000000000000000000000000000008ae00000000000000000000000000000000000000000000000000000000000008af00000000000000000000000000000000000000000000000000000000000008b000000000000000000000000000000000000000000000000000000000000008b100000000000000000000000000000000000000000000000000000000000008b200000000000000000000000000000000000000000000000000000000000008b300000000000000000000000000000000000000000000000000000000000008b400000000000000000000000000000000000000000000000000000000000008b500000000000000000000000000000000000000000000000000000000000008b600000000000000000000000000000000000000000000000000000000000008b700000000000000000000000000000000000000000000000000000000000008b800000000000000000000000000000000000000000000000000000000000008b900000000000000000000000000000000000000000000000000000000000008ba00000000000000000000000000000000000000000000000000000000000008bb00000000000000000000000000000000000000000000000000000000000008bc00000000000000000000000000000000000000000000000000000000000008bd00000000000000000000000000000000000000000000000000000000000008be00000000000000000000000000000000000000000000000000000000000008bf00000000000000000000000000000000000000000000000000000000000008c000000000000000000000000000000000000000000000000000000000000008c100000000000000000000000000000000000000000000000000000000000008c200000000000000000000000000000000000000000000000000000000000008c300000000000000000000000000000000000000000000000000000000000008c400000000000000000000000000000000000000000000000000000000000008c500000000000000000000000000000000000000000000000000000000000008c600000000000000000000000000000000000000000000000000000000000008c700000000000000000000000000000000000000000000000000000000000008c800000000000000000000000000000000000000000000000000000000000008c900000000000000000000000000000000000000000000000000000000000008ca00000000000000000000000000000000000000000000000000000000000008cb00000000000000000000000000000000000000000000000000000000000008cc00000000000000000000000000000000000000000000000000000000000008cd00000000000000000000000000000000000000000000000000000000000008ce00000000000000000000000000000000000000000000000000000000000008cf00000000000000000000000000000000000000000000000000000000000008d000000000000000000000000000000000000000000000000000000000000008d100000000000000000000000000000000000000000000000000000000000008d200000000000000000000000000000000000000000000000000000000000008d300000000000000000000000000000000000000000000000000000000000008d400000000000000000000000000000000000000000000000000000000000008d500000000000000000000000000000000000000000000000000000000000008d600000000000000000000000000000000000000000000000000000000000008d700000000000000000000000000000000000000000000000000000000000008d800000000000000000000000000000000000000000000000000000000000008d900000000000000000000000000000000000000000000000000000000000008da00000000000000000000000000000000000000000000000000000000000008db00000000000000000000000000000000000000000000000000000000000008dc00000000000000000000000000000000000000000000000000000000000008dd00000000000000000000000000000000000000000000000000000000000008de00000000000000000000000000000000000000000000000000000000000008df00000000000000000000000000000000000000000000000000000000000008e000000000000000000000000000000000000000000000000000000000000008e100000000000000000000000000000000000000000000000000000000000008e200000000000000000000000000000000000000000000000000000000000008e300000000000000000000000000000000000000000000000000000000000008e400000000000000000000000000000000000000000000000000000000000008e500000000000000000000000000000000000000000000000000000000000008e600000000000000000000000000000000000000000000000000000000000008e700000000000000000000000000000000000000000000000000000000000008e800000000000000000000000000000000000000000000000000000000000008e900000000000000000000000000000000000000000000000000000000000008ea00000000000000000000000000000000000000000000000000000000000008eb00000000000000000000000000000000000000000000000000000000000008ec00000000000000000000000000000000000000000000000000000000000008ed00000000000000000000000000000000000000000000000000000000000008ee00000000000000000000000000000000000000000000000000000000000008ef00000000000000000000000000000000000000000000000000000000000008f000000000000000000000000000000000000000000000000000000000000008f100000000000000000000000000000000000000000000000000000000000008f200000000000000000000000000000000000000000000000000000000000008f300000000000000000000000000000000000000000000000000000000000008f400000000000000000000000000000000000000000000000000000000000008f500000000000000000000000000000000000000000000000000000000000008f600000000000000000000000000000000000000000000000000000000000008f700000000000000000000000000000000000000000000000000000000000008f800000000000000000000000000000000000000000000000000000000000008f900000000000000000000000000000000000000000000000000000000000008fa00000000000000000000000000000000000000000000000000000000000008fb00000000000000000000000000000000000000000000000000000000000008fc00000000000000000000000000000000000000000000000000000000000008fd00000000000000000000000000000000000000000000000000000000000008fe00000000000000000000000000000000000000000000000000000000000008ff0000000000000000000000000000000000000000000000000000000000000900000000000000000000000000000000000000000000000000000000000000090100000000000000000000000000000000000000000000000000000000000009020000000000000000000000000000000000000000000000000000000000000903000000000000000000000000000000000000000000000000000000000000090400000000000000000000000000000000000000000000000000000000000009050000000000000000000000000000000000000000000000000000000000000906000000000000000000000000000000000000000000000000000000000000090700000000000000000000000000000000000000000000000000000000000009080000000000000000000000000000000000000000000000000000000000000909000000000000000000000000000000000000000000000000000000000000090a000000000000000000000000000000000000000000000000000000000000090b000000000000000000000000000000000000000000000000000000000000090c000000000000000000000000000000000000000000000000000000000000090d000000000000000000000000000000000000000000000000000000000000090e000000000000000000000000000000000000000000000000000000000000090f0000000000000000000000000000000000000000000000000000000000000910000000000000000000000000000000000000000000000000000000000000091100000000000000000000000000000000000000000000000000000000000009120000000000000000000000000000000000000000000000000000000000000913000000000000000000000000000000000000000000000000000000000000091400000000000000000000000000000000000000000000000000000000000009150000000000000000000000000000000000000000000000000000000000000916000000000000000000000000000000000000000000000000000000000000091700000000000000000000000000000000000000000000000000000000000009180000000000000000000000000000000000000000000000000000000000000919000000000000000000000000000000000000000000000000000000000000091a000000000000000000000000000000000000000000000000000000000000091b000000000000000000000000000000000000000000000000000000000000091c000000000000000000000000000000000000000000000000000000000000091d000000000000000000000000000000000000000000000000000000000000091e000000000000000000000000000000000000000000000000000000000000091f0000000000000000000000000000000000000000000000000000000000000920000000000000000000000000000000000000000000000000000000000000092100000000000000000000000000000000000000000000000000000000000009220000000000000000000000000000000000000000000000000000000000000923000000000000000000000000000000000000000000000000000000000000092400000000000000000000000000000000000000000000000000000000000009250000000000000000000000000000000000000000000000000000000000000926000000000000000000000000000000000000000000000000000000000000092700000000000000000000000000000000000000000000000000000000000009280000000000000000000000000000000000000000000000000000000000000929000000000000000000000000000000000000000000000000000000000000092a000000000000000000000000000000000000000000000000000000000000092b000000000000000000000000000000000000000000000000000000000000092c000000000000000000000000000000000000000000000000000000000000092d000000000000000000000000000000000000000000000000000000000000092e000000000000000000000000000000000000000000000000000000000000092f0000000000000000000000000000000000000000000000000000000000000930000000000000000000000000000000000000000000000000000000000000093100000000000000000000000000000000000000000000000000000000000009320000000000000000000000000000000000000000000000000000000000000933000000000000000000000000000000000000000000000000000000000000093400000000000000000000000000000000000000000000000000000000000009350000000000000000000000000000000000000000000000000000000000000936000000000000000000000000000000000000000000000000000000000000093700000000000000000000000000000000000000000000000000000000000009380000000000000000000000000000000000000000000000000000000000000939000000000000000000000000000000000000000000000000000000000000093a000000000000000000000000000000000000000000000000000000000000093b000000000000000000000000000000000000000000000000000000000000093c000000000000000000000000000000000000000000000000000000000000093d000000000000000000000000000000000000000000000000000000000000093e000000000000000000000000000000000000000000000000000000000000093f0000000000000000000000000000000000000000000000000000000000000940000000000000000000000000000000000000000000000000000000000000094100000000000000000000000000000000000000000000000000000000000009420000000000000000000000000000000000000000000000000000000000000943000000000000000000000000000000000000000000000000000000000000094400000000000000000000000000000000000000000000000000000000000009450000000000000000000000000000000000000000000000000000000000000946000000000000000000000000000000000000000000000000000000000000094700000000000000000000000000000000000000000000000000000000000009480000000000000000000000000000000000000000000000000000000000000949000000000000000000000000000000000000000000000000000000000000094a000000000000000000000000000000000000000000000000000000000000094b000000000000000000000000000000000000000000000000000000000000094c000000000000000000000000000000000000000000000000000000000000094d000000000000000000000000000000000000000000000000000000000000094e000000000000000000000000000000000000000000000000000000000000094f0000000000000000000000000000000000000000000000000000000000000950000000000000000000000000000000000000000000000000000000000000095100000000000000000000000000000000000000000000000000000000000009520000000000000000000000000000000000000000000000000000000000000953000000000000000000000000000000000000000000000000000000000000095400000000000000000000000000000000000000000000000000000000000009550000000000000000000000000000000000000000000000000000000000000956000000000000000000000000000000000000000000000000000000000000095700000000000000000000000000000000000000000000000000000000000009580000000000000000000000000000000000000000000000000000000000000959000000000000000000000000000000000000000000000000000000000000095a000000000000000000000000000000000000000000000000000000000000095b000000000000000000000000000000000000000000000000000000000000095c000000000000000000000000000000000000000000000000000000000000095d000000000000000000000000000000000000000000000000000000000000095e000000000000000000000000000000000000000000000000000000000000095f0000000000000000000000000000000000000000000000000000000000000960000000000000000000000000000000000000000000000000000000000000096100000000000000000000000000000000000000000000000000000000000009620000000000000000000000000000000000000000000000000000000000000963000000000000000000000000000000000000000000000000000000000000096400000000000000000000000000000000000000000000000000000000000009650000000000000000000000000000000000000000000000000000000000000966000000000000000000000000000000000000000000000000000000000000096700000000000000000000000000000000000000000000000000000000000009680000000000000000000000000000000000000000000000000000000000000969000000000000000000000000000000000000000000000000000000000000096a000000000000000000000000000000000000000000000000000000000000096b000000000000000000000000000000000000000000000000000000000000096c000000000000000000000000000000000000000000000000000000000000096d000000000000000000000000000000000000000000000000000000000000096e000000000000000000000000000000000000000000000000000000000000096f0000000000000000000000000000000000000000000000000000000000000970000000000000000000000000000000000000000000000000000000000000097100000000000000000000000000000000000000000000000000000000000009720000000000000000000000000000000000000000000000000000000000000973000000000000000000000000000000000000000000000000000000000000097400000000000000000000000000000000000000000000000000000000000009750000000000000000000000000000000000000000000000000000000000000976000000000000000000000000000000000000000000000000000000000000097700000000000000000000000000000000000000000000000000000000000009780000000000000000000000000000000000000000000000000000000000000979000000000000000000000000000000000000000000000000000000000000097a000000000000000000000000000000000000000000000000000000000000097b000000000000000000000000000000000000000000000000000000000000097c000000000000000000000000000000000000000000000000000000000000097d000000000000000000000000000000000000000000000000000000000000097e000000000000000000000000000000000000000000000000000000000000097f0000000000000000000000000000000000000000000000000000000000000980000000000000000000000000000000000000000000000000000000000000098100000000000000000000000000000000000000000000000000000000000009820000000000000000000000000000000000000000000000000000000000000983000000000000000000000000000000000000000000000000000000000000098400000000000000000000000000000000000000000000000000000000000009850000000000000000000000000000000000000000000000000000000000000986000000000000000000000000000000000000000000000000000000000000098700000000000000000000000000000000000000000000000000000000000009880000000000000000000000000000000000000000000000000000000000000989000000000000000000000000000000000000000000000000000000000000098a000000000000000000000000000000000000000000000000000000000000098b000000000000000000000000000000000000000000000000000000000000098c000000000000000000000000000000000000000000000000000000000000098d000000000000000000000000000000000000000000000000000000000000098e000000000000000000000000000000000000000000000000000000000000098f0000000000000000000000000000000000000000000000000000000000000990000000000000000000000000000000000000000000000000000000000000099100000000000000000000000000000000000000000000000000000000000009920000000000000000000000000000000000000000000000000000000000000993000000000000000000000000000000000000000000000000000000000000099400000000000000000000000000000000000000000000000000000000000009950000000000000000000000000000000000000000000000000000000000000996000000000000000000000000000000000000000000000000000000000000099700000000000000000000000000000000000000000000000000000000000009980000000000000000000000000000000000000000000000000000000000000999000000000000000000000000000000000000000000000000000000000000099a000000000000000000000000000000000000000000000000000000000000099b000000000000000000000000000000000000000000000000000000000000099c000000000000000000000000000000000000000000000000000000000000099d000000000000000000000000000000000000000000000000000000000000099e000000000000000000000000000000000000000000000000000000000000099f00000000000000000000000000000000000000000000000000000000000009a000000000000000000000000000000000000000000000000000000000000009a100000000000000000000000000000000000000000000000000000000000009a200000000000000000000000000000000000000000000000000000000000009a300000000000000000000000000000000000000000000000000000000000009a400000000000000000000000000000000000000000000000000000000000009a500000000000000000000000000000000000000000000000000000000000009a600000000000000000000000000000000000000000000000000000000000009a700000000000000000000000000000000000000000000000000000000000009a800000000000000000000000000000000000000000000000000000000000009a900000000000000000000000000000000000000000000000000000000000009aa00000000000000000000000000000000000000000000000000000000000009ab00000000000000000000000000000000000000000000000000000000000009ac00000000000000000000000000000000000000000000000000000000000009ad00000000000000000000000000000000000000000000000000000000000009ae00000000000000000000000000000000000000000000000000000000000009af00000000000000000000000000000000000000000000000000000000000009b000000000000000000000000000000000000000000000000000000000000009b100000000000000000000000000000000000000000000000000000000000009b200000000000000000000000000000000000000000000000000000000000009b300000000000000000000000000000000000000000000000000000000000009b400000000000000000000000000000000000000000000000000000000000009b500000000000000000000000000000000000000000000000000000000000009b600000000000000000000000000000000000000000000000000000000000009b700000000000000000000000000000000000000000000000000000000000009b800000000000000000000000000000000000000000000000000000000000009b900000000000000000000000000000000000000000000000000000000000009ba00000000000000000000000000000000000000000000000000000000000009bb00000000000000000000000000000000000000000000000000000000000009bc00000000000000000000000000000000000000000000000000000000000009bd00000000000000000000000000000000000000000000000000000000000009be00000000000000000000000000000000000000000000000000000000000009bf00000000000000000000000000000000000000000000000000000000000009c000000000000000000000000000000000000000000000000000000000000009c100000000000000000000000000000000000000000000000000000000000009c200000000000000000000000000000000000000000000000000000000000009c300000000000000000000000000000000000000000000000000000000000009c400000000000000000000000000000000000000000000000000000000000009c500000000000000000000000000000000000000000000000000000000000009c600000000000000000000000000000000000000000000000000000000000009c700000000000000000000000000000000000000000000000000000000000009c800000000000000000000000000000000000000000000000000000000000009c900000000000000000000000000000000000000000000000000000000000009ca00000000000000000000000000000000000000000000000000000000000009cb00000000000000000000000000000000000000000000000000000000000009cc00000000000000000000000000000000000000000000000000000000000009cd00000000000000000000000000000000000000000000000000000000000009ce00000000000000000000000000000000000000000000000000000000000009cf00000000000000000000000000000000000000000000000000000000000009d000000000000000000000000000000000000000000000000000000000000009d100000000000000000000000000000000000000000000000000000000000009d200000000000000000000000000000000000000000000000000000000000009d300000000000000000000000000000000000000000000000000000000000009d400000000000000000000000000000000000000000000000000000000000009d500000000000000000000000000000000000000000000000000000000000009d600000000000000000000000000000000000000000000000000000000000009d700000000000000000000000000000000000000000000000000000000000009d800000000000000000000000000000000000000000000000000000000000009d900000000000000000000000000000000000000000000000000000000000009da00000000000000000000000000000000000000000000000000000000000009db00000000000000000000000000000000000000000000000000000000000009dc00000000000000000000000000000000000000000000000000000000000009dd00000000000000000000000000000000000000000000000000000000000009de00000000000000000000000000000000000000000000000000000000000009df00000000000000000000000000000000000000000000000000000000000009e000000000000000000000000000000000000000000000000000000000000009e100000000000000000000000000000000000000000000000000000000000009e200000000000000000000000000000000000000000000000000000000000009e300000000000000000000000000000000000000000000000000000000000009e400000000000000000000000000000000000000000000000000000000000009e500000000000000000000000000000000000000000000000000000000000009e600000000000000000000000000000000000000000000000000000000000009e700000000000000000000000000000000000000000000000000000000000009e800000000000000000000000000000000000000000000000000000000000009e900000000000000000000000000000000000000000000000000000000000009ea00000000000000000000000000000000000000000000000000000000000009eb00000000000000000000000000000000000000000000000000000000000009ec00000000000000000000000000000000000000000000000000000000000009ed00000000000000000000000000000000000000000000000000000000000009ee00000000000000000000000000000000000000000000000000000000000009ef00000000000000000000000000000000000000000000000000000000000009f000000000000000000000000000000000000000000000000000000000000009f100000000000000000000000000000000000000000000000000000000000009f200000000000000000000000000000000000000000000000000000000000009f300000000000000000000000000000000000000000000000000000000000009f400000000000000000000000000000000000000000000000000000000000009f500000000000000000000000000000000000000000000000000000000000009f600000000000000000000000000000000000000000000000000000000000009f700000000000000000000000000000000000000000000000000000000000009f800000000000000000000000000000000000000000000000000000000000009f900000000000000000000000000000000000000000000000000000000000009fa00000000000000000000000000000000000000000000000000000000000009fb00000000000000000000000000000000000000000000000000000000000009fc00000000000000000000000000000000000000000000000000000000000009fd00000000000000000000000000000000000000000000000000000000000009fe00000000000000000000000000000000000000000000000000000000000009ff0000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000a010000000000000000000000000000000000000000000000000000000000000a020000000000000000000000000000000000000000000000000000000000000a030000000000000000000000000000000000000000000000000000000000000a040000000000000000000000000000000000000000000000000000000000000a050000000000000000000000000000000000000000000000000000000000000a060000000000000000000000000000000000000000000000000000000000000a070000000000000000000000000000000000000000000000000000000000000a080000000000000000000000000000000000000000000000000000000000000a090000000000000000000000000000000000000000000000000000000000000a0a0000000000000000000000000000000000000000000000000000000000000a0b0000000000000000000000000000000000000000000000000000000000000a0c0000000000000000000000000000000000000000000000000000000000000a0d0000000000000000000000000000000000000000000000000000000000000a0e0000000000000000000000000000000000000000000000000000000000000a0f0000000000000000000000000000000000000000000000000000000000000a100000000000000000000000000000000000000000000000000000000000000a110000000000000000000000000000000000000000000000000000000000000a120000000000000000000000000000000000000000000000000000000000000a130000000000000000000000000000000000000000000000000000000000000a140000000000000000000000000000000000000000000000000000000000000a150000000000000000000000000000000000000000000000000000000000000a160000000000000000000000000000000000000000000000000000000000000a170000000000000000000000000000000000000000000000000000000000000a180000000000000000000000000000000000000000000000000000000000000a190000000000000000000000000000000000000000000000000000000000000a1a0000000000000000000000000000000000000000000000000000000000000a1b0000000000000000000000000000000000000000000000000000000000000a1c0000000000000000000000000000000000000000000000000000000000000a1d0000000000000000000000000000000000000000000000000000000000000a1e0000000000000000000000000000000000000000000000000000000000000a1f0000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000a210000000000000000000000000000000000000000000000000000000000000a220000000000000000000000000000000000000000000000000000000000000a230000000000000000000000000000000000000000000000000000000000000a240000000000000000000000000000000000000000000000000000000000000a250000000000000000000000000000000000000000000000000000000000000a260000000000000000000000000000000000000000000000000000000000000a270000000000000000000000000000000000000000000000000000000000000a280000000000000000000000000000000000000000000000000000000000000a290000000000000000000000000000000000000000000000000000000000000a2a0000000000000000000000000000000000000000000000000000000000000a2b0000000000000000000000000000000000000000000000000000000000000a2c0000000000000000000000000000000000000000000000000000000000000a2d0000000000000000000000000000000000000000000000000000000000000a2e0000000000000000000000000000000000000000000000000000000000000a2f0000000000000000000000000000000000000000000000000000000000000a300000000000000000000000000000000000000000000000000000000000000a310000000000000000000000000000000000000000000000000000000000000a320000000000000000000000000000000000000000000000000000000000000a330000000000000000000000000000000000000000000000000000000000000a340000000000000000000000000000000000000000000000000000000000000a350000000000000000000000000000000000000000000000000000000000000a360000000000000000000000000000000000000000000000000000000000000a370000000000000000000000000000000000000000000000000000000000000a380000000000000000000000000000000000000000000000000000000000000a390000000000000000000000000000000000000000000000000000000000000a3a0000000000000000000000000000000000000000000000000000000000000a3b0000000000000000000000000000000000000000000000000000000000000a3c0000000000000000000000000000000000000000000000000000000000000a3d0000000000000000000000000000000000000000000000000000000000000a3e0000000000000000000000000000000000000000000000000000000000000a3f0000000000000000000000000000000000000000000000000000000000000a400000000000000000000000000000000000000000000000000000000000000a410000000000000000000000000000000000000000000000000000000000000a420000000000000000000000000000000000000000000000000000000000000a430000000000000000000000000000000000000000000000000000000000000a440000000000000000000000000000000000000000000000000000000000000a450000000000000000000000000000000000000000000000000000000000000a460000000000000000000000000000000000000000000000000000000000000a470000000000000000000000000000000000000000000000000000000000000a480000000000000000000000000000000000000000000000000000000000000a490000000000000000000000000000000000000000000000000000000000000a4a0000000000000000000000000000000000000000000000000000000000000a4b0000000000000000000000000000000000000000000000000000000000000a4c0000000000000000000000000000000000000000000000000000000000000a4d0000000000000000000000000000000000000000000000000000000000000a4e0000000000000000000000000000000000000000000000000000000000000a4f0000000000000000000000000000000000000000000000000000000000000a500000000000000000000000000000000000000000000000000000000000000a510000000000000000000000000000000000000000000000000000000000000a520000000000000000000000000000000000000000000000000000000000000a530000000000000000000000000000000000000000000000000000000000000a540000000000000000000000000000000000000000000000000000000000000a550000000000000000000000000000000000000000000000000000000000000a560000000000000000000000000000000000000000000000000000000000000a570000000000000000000000000000000000000000000000000000000000000a580000000000000000000000000000000000000000000000000000000000000a590000000000000000000000000000000000000000000000000000000000000a5a0000000000000000000000000000000000000000000000000000000000000a5b0000000000000000000000000000000000000000000000000000000000000a5c0000000000000000000000000000000000000000000000000000000000000a5d0000000000000000000000000000000000000000000000000000000000000a5e0000000000000000000000000000000000000000000000000000000000000a5f0000000000000000000000000000000000000000000000000000000000000a600000000000000000000000000000000000000000000000000000000000000a610000000000000000000000000000000000000000000000000000000000000a620000000000000000000000000000000000000000000000000000000000000a630000000000000000000000000000000000000000000000000000000000000a640000000000000000000000000000000000000000000000000000000000000a650000000000000000000000000000000000000000000000000000000000000a660000000000000000000000000000000000000000000000000000000000000a670000000000000000000000000000000000000000000000000000000000000a680000000000000000000000000000000000000000000000000000000000000a690000000000000000000000000000000000000000000000000000000000000a6a0000000000000000000000000000000000000000000000000000000000000a6b0000000000000000000000000000000000000000000000000000000000000a6c0000000000000000000000000000000000000000000000000000000000000a6d0000000000000000000000000000000000000000000000000000000000000a6e0000000000000000000000000000000000000000000000000000000000000a6f0000000000000000000000000000000000000000000000000000000000000a700000000000000000000000000000000000000000000000000000000000000a710000000000000000000000000000000000000000000000000000000000000a720000000000000000000000000000000000000000000000000000000000000a730000000000000000000000000000000000000000000000000000000000000a740000000000000000000000000000000000000000000000000000000000000a750000000000000000000000000000000000000000000000000000000000000a760000000000000000000000000000000000000000000000000000000000000a770000000000000000000000000000000000000000000000000000000000000a780000000000000000000000000000000000000000000000000000000000000a790000000000000000000000000000000000000000000000000000000000000a7a0000000000000000000000000000000000000000000000000000000000000a7b0000000000000000000000000000000000000000000000000000000000000a7c0000000000000000000000000000000000000000000000000000000000000a7d0000000000000000000000000000000000000000000000000000000000000a7e0000000000000000000000000000000000000000000000000000000000000a7f0000000000000000000000000000000000000000000000000000000000000a800000000000000000000000000000000000000000000000000000000000000a810000000000000000000000000000000000000000000000000000000000000a820000000000000000000000000000000000000000000000000000000000000a830000000000000000000000000000000000000000000000000000000000000a840000000000000000000000000000000000000000000000000000000000000a850000000000000000000000000000000000000000000000000000000000000a860000000000000000000000000000000000000000000000000000000000000a870000000000000000000000000000000000000000000000000000000000000a880000000000000000000000000000000000000000000000000000000000000a890000000000000000000000000000000000000000000000000000000000000a8a0000000000000000000000000000000000000000000000000000000000000a8b0000000000000000000000000000000000000000000000000000000000000a8c0000000000000000000000000000000000000000000000000000000000000a8d0000000000000000000000000000000000000000000000000000000000000a8e0000000000000000000000000000000000000000000000000000000000000a8f0000000000000000000000000000000000000000000000000000000000000a900000000000000000000000000000000000000000000000000000000000000a910000000000000000000000000000000000000000000000000000000000000a920000000000000000000000000000000000000000000000000000000000000a930000000000000000000000000000000000000000000000000000000000000a940000000000000000000000000000000000000000000000000000000000000a950000000000000000000000000000000000000000000000000000000000000a960000000000000000000000000000000000000000000000000000000000000a970000000000000000000000000000000000000000000000000000000000000a980000000000000000000000000000000000000000000000000000000000000a990000000000000000000000000000000000000000000000000000000000000a9a0000000000000000000000000000000000000000000000000000000000000a9b0000000000000000000000000000000000000000000000000000000000000a9c0000000000000000000000000000000000000000000000000000000000000a9d0000000000000000000000000000000000000000000000000000000000000a9e0000000000000000000000000000000000000000000000000000000000000a9f0000000000000000000000000000000000000000000000000000000000000aa00000000000000000000000000000000000000000000000000000000000000aa10000000000000000000000000000000000000000000000000000000000000aa20000000000000000000000000000000000000000000000000000000000000aa30000000000000000000000000000000000000000000000000000000000000aa40000000000000000000000000000000000000000000000000000000000000aa50000000000000000000000000000000000000000000000000000000000000aa60000000000000000000000000000000000000000000000000000000000000aa70000000000000000000000000000000000000000000000000000000000000aa80000000000000000000000000000000000000000000000000000000000000aa90000000000000000000000000000000000000000000000000000000000000aaa0000000000000000000000000000000000000000000000000000000000000aab0000000000000000000000000000000000000000000000000000000000000aac0000000000000000000000000000000000000000000000000000000000000aad0000000000000000000000000000000000000000000000000000000000000aae0000000000000000000000000000000000000000000000000000000000000aaf0000000000000000000000000000000000000000000000000000000000000ab00000000000000000000000000000000000000000000000000000000000000ab10000000000000000000000000000000000000000000000000000000000000ab20000000000000000000000000000000000000000000000000000000000000ab30000000000000000000000000000000000000000000000000000000000000ab40000000000000000000000000000000000000000000000000000000000000ab50000000000000000000000000000000000000000000000000000000000000ab60000000000000000000000000000000000000000000000000000000000000ab70000000000000000000000000000000000000000000000000000000000000ab80000000000000000000000000000000000000000000000000000000000000ab90000000000000000000000000000000000000000000000000000000000000aba0000000000000000000000000000000000000000000000000000000000000abb0000000000000000000000000000000000000000000000000000000000000abc0000000000000000000000000000000000000000000000000000000000000abd0000000000000000000000000000000000000000000000000000000000000abe0000000000000000000000000000000000000000000000000000000000000abf0000000000000000000000000000000000000000000000000000000000000ac00000000000000000000000000000000000000000000000000000000000000ac10000000000000000000000000000000000000000000000000000000000000ac20000000000000000000000000000000000000000000000000000000000000ac30000000000000000000000000000000000000000000000000000000000000ac40000000000000000000000000000000000000000000000000000000000000ac50000000000000000000000000000000000000000000000000000000000000ac60000000000000000000000000000000000000000000000000000000000000ac70000000000000000000000000000000000000000000000000000000000000ac80000000000000000000000000000000000000000000000000000000000000ac90000000000000000000000000000000000000000000000000000000000000aca0000000000000000000000000000000000000000000000000000000000000acb0000000000000000000000000000000000000000000000000000000000000acc0000000000000000000000000000000000000000000000000000000000000acd0000000000000000000000000000000000000000000000000000000000000ace0000000000000000000000000000000000000000000000000000000000000acf0000000000000000000000000000000000000000000000000000000000000ad00000000000000000000000000000000000000000000000000000000000000ad10000000000000000000000000000000000000000000000000000000000000ad20000000000000000000000000000000000000000000000000000000000000ad30000000000000000000000000000000000000000000000000000000000000ad40000000000000000000000000000000000000000000000000000000000000ad50000000000000000000000000000000000000000000000000000000000000ad60000000000000000000000000000000000000000000000000000000000000ad70000000000000000000000000000000000000000000000000000000000000ad80000000000000000000000000000000000000000000000000000000000000ad90000000000000000000000000000000000000000000000000000000000000ada0000000000000000000000000000000000000000000000000000000000000adb0000000000000000000000000000000000000000000000000000000000000adc0000000000000000000000000000000000000000000000000000000000000add0000000000000000000000000000000000000000000000000000000000000ade0000000000000000000000000000000000000000000000000000000000000adf0000000000000000000000000000000000000000000000000000000000000ae00000000000000000000000000000000000000000000000000000000000000ae10000000000000000000000000000000000000000000000000000000000000ae20000000000000000000000000000000000000000000000000000000000000ae30000000000000000000000000000000000000000000000000000000000000ae40000000000000000000000000000000000000000000000000000000000000ae50000000000000000000000000000000000000000000000000000000000000ae60000000000000000000000000000000000000000000000000000000000000ae70000000000000000000000000000000000000000000000000000000000000ae80000000000000000000000000000000000000000000000000000000000000ae90000000000000000000000000000000000000000000000000000000000000aea0000000000000000000000000000000000000000000000000000000000000aeb0000000000000000000000000000000000000000000000000000000000000aec0000000000000000000000000000000000000000000000000000000000000aed0000000000000000000000000000000000000000000000000000000000000aee0000000000000000000000000000000000000000000000000000000000000aef0000000000000000000000000000000000000000000000000000000000000af00000000000000000000000000000000000000000000000000000000000000af10000000000000000000000000000000000000000000000000000000000000af20000000000000000000000000000000000000000000000000000000000000af30000000000000000000000000000000000000000000000000000000000000af40000000000000000000000000000000000000000000000000000000000000af50000000000000000000000000000000000000000000000000000000000000af60000000000000000000000000000000000000000000000000000000000000af70000000000000000000000000000000000000000000000000000000000000af80000000000000000000000000000000000000000000000000000000000000af90000000000000000000000000000000000000000000000000000000000000afa0000000000000000000000000000000000000000000000000000000000000afb0000000000000000000000000000000000000000000000000000000000000afc0000000000000000000000000000000000000000000000000000000000000afd0000000000000000000000000000000000000000000000000000000000000afe0000000000000000000000000000000000000000000000000000000000000aff0000000000000000000000000000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000b010000000000000000000000000000000000000000000000000000000000000b020000000000000000000000000000000000000000000000000000000000000b030000000000000000000000000000000000000000000000000000000000000b040000000000000000000000000000000000000000000000000000000000000b050000000000000000000000000000000000000000000000000000000000000b060000000000000000000000000000000000000000000000000000000000000b070000000000000000000000000000000000000000000000000000000000000b080000000000000000000000000000000000000000000000000000000000000b090000000000000000000000000000000000000000000000000000000000000b0a0000000000000000000000000000000000000000000000000000000000000b0b0000000000000000000000000000000000000000000000000000000000000b0c0000000000000000000000000000000000000000000000000000000000000b0d0000000000000000000000000000000000000000000000000000000000000b0e0000000000000000000000000000000000000000000000000000000000000b0f0000000000000000000000000000000000000000000000000000000000000b100000000000000000000000000000000000000000000000000000000000000b110000000000000000000000000000000000000000000000000000000000000b120000000000000000000000000000000000000000000000000000000000000b130000000000000000000000000000000000000000000000000000000000000b140000000000000000000000000000000000000000000000000000000000000b150000000000000000000000000000000000000000000000000000000000000b160000000000000000000000000000000000000000000000000000000000000b170000000000000000000000000000000000000000000000000000000000000b180000000000000000000000000000000000000000000000000000000000000b190000000000000000000000000000000000000000000000000000000000000b1a0000000000000000000000000000000000000000000000000000000000000b1b0000000000000000000000000000000000000000000000000000000000000b1c0000000000000000000000000000000000000000000000000000000000000b1d0000000000000000000000000000000000000000000000000000000000000b1e0000000000000000000000000000000000000000000000000000000000000b1f0000000000000000000000000000000000000000000000000000000000000b200000000000000000000000000000000000000000000000000000000000000b210000000000000000000000000000000000000000000000000000000000000b220000000000000000000000000000000000000000000000000000000000000b230000000000000000000000000000000000000000000000000000000000000b240000000000000000000000000000000000000000000000000000000000000b250000000000000000000000000000000000000000000000000000000000000b260000000000000000000000000000000000000000000000000000000000000b270000000000000000000000000000000000000000000000000000000000000b280000000000000000000000000000000000000000000000000000000000000b290000000000000000000000000000000000000000000000000000000000000b2a0000000000000000000000000000000000000000000000000000000000000b2b0000000000000000000000000000000000000000000000000000000000000b2c0000000000000000000000000000000000000000000000000000000000000b2d0000000000000000000000000000000000000000000000000000000000000b2e0000000000000000000000000000000000000000000000000000000000000b2f0000000000000000000000000000000000000000000000000000000000000b300000000000000000000000000000000000000000000000000000000000000b310000000000000000000000000000000000000000000000000000000000000b320000000000000000000000000000000000000000000000000000000000000b330000000000000000000000000000000000000000000000000000000000000b340000000000000000000000000000000000000000000000000000000000000b350000000000000000000000000000000000000000000000000000000000000b360000000000000000000000000000000000000000000000000000000000000b370000000000000000000000000000000000000000000000000000000000000b380000000000000000000000000000000000000000000000000000000000000b390000000000000000000000000000000000000000000000000000000000000b3a0000000000000000000000000000000000000000000000000000000000000b3b0000000000000000000000000000000000000000000000000000000000000b3c0000000000000000000000000000000000000000000000000000000000000b3d0000000000000000000000000000000000000000000000000000000000000b3e0000000000000000000000000000000000000000000000000000000000000b3f0000000000000000000000000000000000000000000000000000000000000b400000000000000000000000000000000000000000000000000000000000000b410000000000000000000000000000000000000000000000000000000000000b420000000000000000000000000000000000000000000000000000000000000b430000000000000000000000000000000000000000000000000000000000000b440000000000000000000000000000000000000000000000000000000000000b450000000000000000000000000000000000000000000000000000000000000b460000000000000000000000000000000000000000000000000000000000000b470000000000000000000000000000000000000000000000000000000000000b480000000000000000000000000000000000000000000000000000000000000b490000000000000000000000000000000000000000000000000000000000000b4a0000000000000000000000000000000000000000000000000000000000000b4b0000000000000000000000000000000000000000000000000000000000000b4c0000000000000000000000000000000000000000000000000000000000000b4d0000000000000000000000000000000000000000000000000000000000000b4e0000000000000000000000000000000000000000000000000000000000000b4f0000000000000000000000000000000000000000000000000000000000000b500000000000000000000000000000000000000000000000000000000000000b510000000000000000000000000000000000000000000000000000000000000b520000000000000000000000000000000000000000000000000000000000000b530000000000000000000000000000000000000000000000000000000000000b540000000000000000000000000000000000000000000000000000000000000b550000000000000000000000000000000000000000000000000000000000000b560000000000000000000000000000000000000000000000000000000000000b570000000000000000000000000000000000000000000000000000000000000b580000000000000000000000000000000000000000000000000000000000000b590000000000000000000000000000000000000000000000000000000000000b5a0000000000000000000000000000000000000000000000000000000000000b5b0000000000000000000000000000000000000000000000000000000000000b5c0000000000000000000000000000000000000000000000000000000000000b5d0000000000000000000000000000000000000000000000000000000000000b5e0000000000000000000000000000000000000000000000000000000000000b5f0000000000000000000000000000000000000000000000000000000000000b600000000000000000000000000000000000000000000000000000000000000b610000000000000000000000000000000000000000000000000000000000000b620000000000000000000000000000000000000000000000000000000000000b630000000000000000000000000000000000000000000000000000000000000b640000000000000000000000000000000000000000000000000000000000000b650000000000000000000000000000000000000000000000000000000000000b660000000000000000000000000000000000000000000000000000000000000b670000000000000000000000000000000000000000000000000000000000000b680000000000000000000000000000000000000000000000000000000000000b690000000000000000000000000000000000000000000000000000000000000b6a0000000000000000000000000000000000000000000000000000000000000b6b0000000000000000000000000000000000000000000000000000000000000b6c0000000000000000000000000000000000000000000000000000000000000b6d0000000000000000000000000000000000000000000000000000000000000b6e0000000000000000000000000000000000000000000000000000000000000b6f0000000000000000000000000000000000000000000000000000000000000b700000000000000000000000000000000000000000000000000000000000000b710000000000000000000000000000000000000000000000000000000000000b720000000000000000000000000000000000000000000000000000000000000b730000000000000000000000000000000000000000000000000000000000000b740000000000000000000000000000000000000000000000000000000000000b750000000000000000000000000000000000000000000000000000000000000b760000000000000000000000000000000000000000000000000000000000000b770000000000000000000000000000000000000000000000000000000000000b780000000000000000000000000000000000000000000000000000000000000b790000000000000000000000000000000000000000000000000000000000000b7a0000000000000000000000000000000000000000000000000000000000000b7b0000000000000000000000000000000000000000000000000000000000000b7c0000000000000000000000000000000000000000000000000000000000000b7d0000000000000000000000000000000000000000000000000000000000000b7e0000000000000000000000000000000000000000000000000000000000000b7f0000000000000000000000000000000000000000000000000000000000000b800000000000000000000000000000000000000000000000000000000000000b810000000000000000000000000000000000000000000000000000000000000b820000000000000000000000000000000000000000000000000000000000000b830000000000000000000000000000000000000000000000000000000000000b840000000000000000000000000000000000000000000000000000000000000b850000000000000000000000000000000000000000000000000000000000000b860000000000000000000000000000000000000000000000000000000000000b870000000000000000000000000000000000000000000000000000000000000b880000000000000000000000000000000000000000000000000000000000000b890000000000000000000000000000000000000000000000000000000000000b8a0000000000000000000000000000000000000000000000000000000000000b8b0000000000000000000000000000000000000000000000000000000000000b8c0000000000000000000000000000000000000000000000000000000000000b8d0000000000000000000000000000000000000000000000000000000000000b8e0000000000000000000000000000000000000000000000000000000000000b8f0000000000000000000000000000000000000000000000000000000000000b900000000000000000000000000000000000000000000000000000000000000b910000000000000000000000000000000000000000000000000000000000000b920000000000000000000000000000000000000000000000000000000000000b930000000000000000000000000000000000000000000000000000000000000b940000000000000000000000000000000000000000000000000000000000000b950000000000000000000000000000000000000000000000000000000000000b960000000000000000000000000000000000000000000000000000000000000b970000000000000000000000000000000000000000000000000000000000000b980000000000000000000000000000000000000000000000000000000000000b990000000000000000000000000000000000000000000000000000000000000b9a0000000000000000000000000000000000000000000000000000000000000b9b0000000000000000000000000000000000000000000000000000000000000b9c0000000000000000000000000000000000000000000000000000000000000b9d0000000000000000000000000000000000000000000000000000000000000b9e0000000000000000000000000000000000000000000000000000000000000b9f0000000000000000000000000000000000000000000000000000000000000ba00000000000000000000000000000000000000000000000000000000000000ba10000000000000000000000000000000000000000000000000000000000000ba20000000000000000000000000000000000000000000000000000000000000ba30000000000000000000000000000000000000000000000000000000000000ba40000000000000000000000000000000000000000000000000000000000000ba50000000000000000000000000000000000000000000000000000000000000ba60000000000000000000000000000000000000000000000000000000000000ba70000000000000000000000000000000000000000000000000000000000000ba80000000000000000000000000000000000000000000000000000000000000ba90000000000000000000000000000000000000000000000000000000000000baa0000000000000000000000000000000000000000000000000000000000000bab0000000000000000000000000000000000000000000000000000000000000bac0000000000000000000000000000000000000000000000000000000000000bad0000000000000000000000000000000000000000000000000000000000000bae0000000000000000000000000000000000000000000000000000000000000baf0000000000000000000000000000000000000000000000000000000000000bb00000000000000000000000000000000000000000000000000000000000000bb10000000000000000000000000000000000000000000000000000000000000bb20000000000000000000000000000000000000000000000000000000000000bb30000000000000000000000000000000000000000000000000000000000000bb40000000000000000000000000000000000000000000000000000000000000bb50000000000000000000000000000000000000000000000000000000000000bb60000000000000000000000000000000000000000000000000000000000000bb70000000000000000000000000000000000000000000000000000000000000bb80000000000000000000000000000000000000000000000000000000000000bb90000000000000000000000000000000000000000000000000000000000000bba0000000000000000000000000000000000000000000000000000000000000bbb0000000000000000000000000000000000000000000000000000000000000bbc0000000000000000000000000000000000000000000000000000000000000bbd0000000000000000000000000000000000000000000000000000000000000bbe0000000000000000000000000000000000000000000000000000000000000bbf0000000000000000000000000000000000000000000000000000000000000bc00000000000000000000000000000000000000000000000000000000000000bc10000000000000000000000000000000000000000000000000000000000000bc20000000000000000000000000000000000000000000000000000000000000bc30000000000000000000000000000000000000000000000000000000000000bc40000000000000000000000000000000000000000000000000000000000000bc50000000000000000000000000000000000000000000000000000000000000bc60000000000000000000000000000000000000000000000000000000000000bc70000000000000000000000000000000000000000000000000000000000000bc80000000000000000000000000000000000000000000000000000000000000bc90000000000000000000000000000000000000000000000000000000000000bca0000000000000000000000000000000000000000000000000000000000000bcb0000000000000000000000000000000000000000000000000000000000000bcc0000000000000000000000000000000000000000000000000000000000000bcd0000000000000000000000000000000000000000000000000000000000000bce0000000000000000000000000000000000000000000000000000000000000bcf0000000000000000000000000000000000000000000000000000000000000bd00000000000000000000000000000000000000000000000000000000000000bd10000000000000000000000000000000000000000000000000000000000000bd20000000000000000000000000000000000000000000000000000000000000bd30000000000000000000000000000000000000000000000000000000000000bd40000000000000000000000000000000000000000000000000000000000000bd50000000000000000000000000000000000000000000000000000000000000bd60000000000000000000000000000000000000000000000000000000000000bd70000000000000000000000000000000000000000000000000000000000000bd80000000000000000000000000000000000000000000000000000000000000bd90000000000000000000000000000000000000000000000000000000000000bda0000000000000000000000000000000000000000000000000000000000000bdb0000000000000000000000000000000000000000000000000000000000000bdc0000000000000000000000000000000000000000000000000000000000000bdd0000000000000000000000000000000000000000000000000000000000000bde0000000000000000000000000000000000000000000000000000000000000bdf0000000000000000000000000000000000000000000000000000000000000be00000000000000000000000000000000000000000000000000000000000000be10000000000000000000000000000000000000000000000000000000000000be20000000000000000000000000000000000000000000000000000000000000be30000000000000000000000000000000000000000000000000000000000000be40000000000000000000000000000000000000000000000000000000000000be50000000000000000000000000000000000000000000000000000000000000be60000000000000000000000000000000000000000000000000000000000000be70000000000000000000000000000000000000000000000000000000000000be80000000000000000000000000000000000000000000000000000000000000be90000000000000000000000000000000000000000000000000000000000000bea0000000000000000000000000000000000000000000000000000000000000beb0000000000000000000000000000000000000000000000000000000000000bec0000000000000000000000000000000000000000000000000000000000000bed0000000000000000000000000000000000000000000000000000000000000bee0000000000000000000000000000000000000000000000000000000000000bef0000000000000000000000000000000000000000000000000000000000000bf00000000000000000000000000000000000000000000000000000000000000bf10000000000000000000000000000000000000000000000000000000000000bf20000000000000000000000000000000000000000000000000000000000000bf30000000000000000000000000000000000000000000000000000000000000bf40000000000000000000000000000000000000000000000000000000000000bf50000000000000000000000000000000000000000000000000000000000000bf60000000000000000000000000000000000000000000000000000000000000bf70000000000000000000000000000000000000000000000000000000000000bf80000000000000000000000000000000000000000000000000000000000000bf90000000000000000000000000000000000000000000000000000000000000bfa0000000000000000000000000000000000000000000000000000000000000bfb0000000000000000000000000000000000000000000000000000000000000bfc0000000000000000000000000000000000000000000000000000000000000bfd0000000000000000000000000000000000000000000000000000000000000bfe0000000000000000000000000000000000000000000000000000000000000bff0000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000c010000000000000000000000000000000000000000000000000000000000000c020000000000000000000000000000000000000000000000000000000000000c030000000000000000000000000000000000000000000000000000000000000c040000000000000000000000000000000000000000000000000000000000000c050000000000000000000000000000000000000000000000000000000000000c060000000000000000000000000000000000000000000000000000000000000c070000000000000000000000000000000000000000000000000000000000000c080000000000000000000000000000000000000000000000000000000000000c090000000000000000000000000000000000000000000000000000000000000c0a0000000000000000000000000000000000000000000000000000000000000c0b0000000000000000000000000000000000000000000000000000000000000c0c0000000000000000000000000000000000000000000000000000000000000c0d0000000000000000000000000000000000000000000000000000000000000c0e0000000000000000000000000000000000000000000000000000000000000c0f0000000000000000000000000000000000000000000000000000000000000c100000000000000000000000000000000000000000000000000000000000000c110000000000000000000000000000000000000000000000000000000000000c120000000000000000000000000000000000000000000000000000000000000c130000000000000000000000000000000000000000000000000000000000000c140000000000000000000000000000000000000000000000000000000000000c150000000000000000000000000000000000000000000000000000000000000c160000000000000000000000000000000000000000000000000000000000000c170000000000000000000000000000000000000000000000000000000000000c180000000000000000000000000000000000000000000000000000000000000c190000000000000000000000000000000000000000000000000000000000000c1a0000000000000000000000000000000000000000000000000000000000000c1b0000000000000000000000000000000000000000000000000000000000000c1c0000000000000000000000000000000000000000000000000000000000000c1d0000000000000000000000000000000000000000000000000000000000000c1e0000000000000000000000000000000000000000000000000000000000000c1f0000000000000000000000000000000000000000000000000000000000000c200000000000000000000000000000000000000000000000000000000000000c210000000000000000000000000000000000000000000000000000000000000c220000000000000000000000000000000000000000000000000000000000000c230000000000000000000000000000000000000000000000000000000000000c240000000000000000000000000000000000000000000000000000000000000c250000000000000000000000000000000000000000000000000000000000000c260000000000000000000000000000000000000000000000000000000000000c270000000000000000000000000000000000000000000000000000000000000c280000000000000000000000000000000000000000000000000000000000000c290000000000000000000000000000000000000000000000000000000000000c2a0000000000000000000000000000000000000000000000000000000000000c2b0000000000000000000000000000000000000000000000000000000000000c2c0000000000000000000000000000000000000000000000000000000000000c2d0000000000000000000000000000000000000000000000000000000000000c2e0000000000000000000000000000000000000000000000000000000000000c2f0000000000000000000000000000000000000000000000000000000000000c300000000000000000000000000000000000000000000000000000000000000c310000000000000000000000000000000000000000000000000000000000000c320000000000000000000000000000000000000000000000000000000000000c330000000000000000000000000000000000000000000000000000000000000c340000000000000000000000000000000000000000000000000000000000000c350000000000000000000000000000000000000000000000000000000000000c360000000000000000000000000000000000000000000000000000000000000c370000000000000000000000000000000000000000000000000000000000000c380000000000000000000000000000000000000000000000000000000000000c390000000000000000000000000000000000000000000000000000000000000c3a0000000000000000000000000000000000000000000000000000000000000c3b0000000000000000000000000000000000000000000000000000000000000c3c0000000000000000000000000000000000000000000000000000000000000c3d0000000000000000000000000000000000000000000000000000000000000c3e0000000000000000000000000000000000000000000000000000000000000c3f0000000000000000000000000000000000000000000000000000000000000c400000000000000000000000000000000000000000000000000000000000000c410000000000000000000000000000000000000000000000000000000000000c420000000000000000000000000000000000000000000000000000000000000c430000000000000000000000000000000000000000000000000000000000000c440000000000000000000000000000000000000000000000000000000000000c450000000000000000000000000000000000000000000000000000000000000c460000000000000000000000000000000000000000000000000000000000000c470000000000000000000000000000000000000000000000000000000000000c480000000000000000000000000000000000000000000000000000000000000c490000000000000000000000000000000000000000000000000000000000000c4a0000000000000000000000000000000000000000000000000000000000000c4b0000000000000000000000000000000000000000000000000000000000000c4c0000000000000000000000000000000000000000000000000000000000000c4d0000000000000000000000000000000000000000000000000000000000000c4e0000000000000000000000000000000000000000000000000000000000000c4f0000000000000000000000000000000000000000000000000000000000000c500000000000000000000000000000000000000000000000000000000000000c510000000000000000000000000000000000000000000000000000000000000c520000000000000000000000000000000000000000000000000000000000000c530000000000000000000000000000000000000000000000000000000000000c540000000000000000000000000000000000000000000000000000000000000c550000000000000000000000000000000000000000000000000000000000000c560000000000000000000000000000000000000000000000000000000000000c570000000000000000000000000000000000000000000000000000000000000c580000000000000000000000000000000000000000000000000000000000000c590000000000000000000000000000000000000000000000000000000000000c5a0000000000000000000000000000000000000000000000000000000000000c5b0000000000000000000000000000000000000000000000000000000000000c5c0000000000000000000000000000000000000000000000000000000000000c5d0000000000000000000000000000000000000000000000000000000000000c5e0000000000000000000000000000000000000000000000000000000000000c5f0000000000000000000000000000000000000000000000000000000000000c600000000000000000000000000000000000000000000000000000000000000c610000000000000000000000000000000000000000000000000000000000000c620000000000000000000000000000000000000000000000000000000000000c630000000000000000000000000000000000000000000000000000000000000c640000000000000000000000000000000000000000000000000000000000000c650000000000000000000000000000000000000000000000000000000000000c660000000000000000000000000000000000000000000000000000000000000c670000000000000000000000000000000000000000000000000000000000000c680000000000000000000000000000000000000000000000000000000000000c690000000000000000000000000000000000000000000000000000000000000c6a0000000000000000000000000000000000000000000000000000000000000c6b0000000000000000000000000000000000000000000000000000000000000c6c0000000000000000000000000000000000000000000000000000000000000c6d0000000000000000000000000000000000000000000000000000000000000c6e0000000000000000000000000000000000000000000000000000000000000c6f0000000000000000000000000000000000000000000000000000000000000c700000000000000000000000000000000000000000000000000000000000000c710000000000000000000000000000000000000000000000000000000000000c720000000000000000000000000000000000000000000000000000000000000c730000000000000000000000000000000000000000000000000000000000000c740000000000000000000000000000000000000000000000000000000000000c750000000000000000000000000000000000000000000000000000000000000c760000000000000000000000000000000000000000000000000000000000000c770000000000000000000000000000000000000000000000000000000000000c780000000000000000000000000000000000000000000000000000000000000c790000000000000000000000000000000000000000000000000000000000000c7a0000000000000000000000000000000000000000000000000000000000000c7b0000000000000000000000000000000000000000000000000000000000000c7c0000000000000000000000000000000000000000000000000000000000000c7d0000000000000000000000000000000000000000000000000000000000000c7e0000000000000000000000000000000000000000000000000000000000000c7f0000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c810000000000000000000000000000000000000000000000000000000000000c820000000000000000000000000000000000000000000000000000000000000c830000000000000000000000000000000000000000000000000000000000000c840000000000000000000000000000000000000000000000000000000000000c850000000000000000000000000000000000000000000000000000000000000c860000000000000000000000000000000000000000000000000000000000000c870000000000000000000000000000000000000000000000000000000000000c880000000000000000000000000000000000000000000000000000000000000c890000000000000000000000000000000000000000000000000000000000000c8a0000000000000000000000000000000000000000000000000000000000000c8b0000000000000000000000000000000000000000000000000000000000000c8c0000000000000000000000000000000000000000000000000000000000000c8d0000000000000000000000000000000000000000000000000000000000000c8e0000000000000000000000000000000000000000000000000000000000000c8f0000000000000000000000000000000000000000000000000000000000000c900000000000000000000000000000000000000000000000000000000000000c910000000000000000000000000000000000000000000000000000000000000c920000000000000000000000000000000000000000000000000000000000000c930000000000000000000000000000000000000000000000000000000000000c940000000000000000000000000000000000000000000000000000000000000c950000000000000000000000000000000000000000000000000000000000000c960000000000000000000000000000000000000000000000000000000000000c970000000000000000000000000000000000000000000000000000000000000c980000000000000000000000000000000000000000000000000000000000000c990000000000000000000000000000000000000000000000000000000000000c9a0000000000000000000000000000000000000000000000000000000000000c9b0000000000000000000000000000000000000000000000000000000000000c9c0000000000000000000000000000000000000000000000000000000000000c9d0000000000000000000000000000000000000000000000000000000000000c9e0000000000000000000000000000000000000000000000000000000000000c9f0000000000000000000000000000000000000000000000000000000000000ca00000000000000000000000000000000000000000000000000000000000000ca10000000000000000000000000000000000000000000000000000000000000ca20000000000000000000000000000000000000000000000000000000000000ca30000000000000000000000000000000000000000000000000000000000000ca40000000000000000000000000000000000000000000000000000000000000ca50000000000000000000000000000000000000000000000000000000000000ca60000000000000000000000000000000000000000000000000000000000000ca70000000000000000000000000000000000000000000000000000000000000ca80000000000000000000000000000000000000000000000000000000000000ca90000000000000000000000000000000000000000000000000000000000000caa0000000000000000000000000000000000000000000000000000000000000cab0000000000000000000000000000000000000000000000000000000000000cac0000000000000000000000000000000000000000000000000000000000000cad0000000000000000000000000000000000000000000000000000000000000cae0000000000000000000000000000000000000000000000000000000000000caf0000000000000000000000000000000000000000000000000000000000000cb00000000000000000000000000000000000000000000000000000000000000cb10000000000000000000000000000000000000000000000000000000000000cb20000000000000000000000000000000000000000000000000000000000000cb30000000000000000000000000000000000000000000000000000000000000cb40000000000000000000000000000000000000000000000000000000000000cb50000000000000000000000000000000000000000000000000000000000000cb60000000000000000000000000000000000000000000000000000000000000cb70000000000000000000000000000000000000000000000000000000000000cb80000000000000000000000000000000000000000000000000000000000000cb90000000000000000000000000000000000000000000000000000000000000cba0000000000000000000000000000000000000000000000000000000000000cbb0000000000000000000000000000000000000000000000000000000000000cbc0000000000000000000000000000000000000000000000000000000000000cbd0000000000000000000000000000000000000000000000000000000000000cbe0000000000000000000000000000000000000000000000000000000000000cbf0000000000000000000000000000000000000000000000000000000000000cc00000000000000000000000000000000000000000000000000000000000000cc10000000000000000000000000000000000000000000000000000000000000cc20000000000000000000000000000000000000000000000000000000000000cc30000000000000000000000000000000000000000000000000000000000000cc40000000000000000000000000000000000000000000000000000000000000cc50000000000000000000000000000000000000000000000000000000000000cc60000000000000000000000000000000000000000000000000000000000000cc70000000000000000000000000000000000000000000000000000000000000cc80000000000000000000000000000000000000000000000000000000000000cc90000000000000000000000000000000000000000000000000000000000000cca0000000000000000000000000000000000000000000000000000000000000ccb0000000000000000000000000000000000000000000000000000000000000ccc0000000000000000000000000000000000000000000000000000000000000ccd0000000000000000000000000000000000000000000000000000000000000cce0000000000000000000000000000000000000000000000000000000000000ccf0000000000000000000000000000000000000000000000000000000000000cd00000000000000000000000000000000000000000000000000000000000000cd10000000000000000000000000000000000000000000000000000000000000cd20000000000000000000000000000000000000000000000000000000000000cd30000000000000000000000000000000000000000000000000000000000000cd40000000000000000000000000000000000000000000000000000000000000cd50000000000000000000000000000000000000000000000000000000000000cd60000000000000000000000000000000000000000000000000000000000000cd70000000000000000000000000000000000000000000000000000000000000cd80000000000000000000000000000000000000000000000000000000000000cd90000000000000000000000000000000000000000000000000000000000000cda0000000000000000000000000000000000000000000000000000000000000cdb0000000000000000000000000000000000000000000000000000000000000cdc0000000000000000000000000000000000000000000000000000000000000cdd0000000000000000000000000000000000000000000000000000000000000cde0000000000000000000000000000000000000000000000000000000000000cdf0000000000000000000000000000000000000000000000000000000000000ce00000000000000000000000000000000000000000000000000000000000000ce10000000000000000000000000000000000000000000000000000000000000ce20000000000000000000000000000000000000000000000000000000000000ce30000000000000000000000000000000000000000000000000000000000000ce40000000000000000000000000000000000000000000000000000000000000ce50000000000000000000000000000000000000000000000000000000000000ce60000000000000000000000000000000000000000000000000000000000000ce70000000000000000000000000000000000000000000000000000000000000ce80000000000000000000000000000000000000000000000000000000000000ce90000000000000000000000000000000000000000000000000000000000000cea0000000000000000000000000000000000000000000000000000000000000ceb0000000000000000000000000000000000000000000000000000000000000cec0000000000000000000000000000000000000000000000000000000000000ced0000000000000000000000000000000000000000000000000000000000000cee0000000000000000000000000000000000000000000000000000000000000cef0000000000000000000000000000000000000000000000000000000000000cf00000000000000000000000000000000000000000000000000000000000000cf10000000000000000000000000000000000000000000000000000000000000cf20000000000000000000000000000000000000000000000000000000000000cf30000000000000000000000000000000000000000000000000000000000000cf40000000000000000000000000000000000000000000000000000000000000cf50000000000000000000000000000000000000000000000000000000000000cf60000000000000000000000000000000000000000000000000000000000000cf70000000000000000000000000000000000000000000000000000000000000cf80000000000000000000000000000000000000000000000000000000000000cf90000000000000000000000000000000000000000000000000000000000000cfa0000000000000000000000000000000000000000000000000000000000000cfb0000000000000000000000000000000000000000000000000000000000000cfc0000000000000000000000000000000000000000000000000000000000000cfd0000000000000000000000000000000000000000000000000000000000000cfe0000000000000000000000000000000000000000000000000000000000000cff0000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000d010000000000000000000000000000000000000000000000000000000000000d020000000000000000000000000000000000000000000000000000000000000d030000000000000000000000000000000000000000000000000000000000000d040000000000000000000000000000000000000000000000000000000000000d050000000000000000000000000000000000000000000000000000000000000d060000000000000000000000000000000000000000000000000000000000000d070000000000000000000000000000000000000000000000000000000000000d080000000000000000000000000000000000000000000000000000000000000d090000000000000000000000000000000000000000000000000000000000000d0a0000000000000000000000000000000000000000000000000000000000000d0b0000000000000000000000000000000000000000000000000000000000000d0c0000000000000000000000000000000000000000000000000000000000000d0d0000000000000000000000000000000000000000000000000000000000000d0e0000000000000000000000000000000000000000000000000000000000000d0f0000000000000000000000000000000000000000000000000000000000000d100000000000000000000000000000000000000000000000000000000000000d110000000000000000000000000000000000000000000000000000000000000d120000000000000000000000000000000000000000000000000000000000000d130000000000000000000000000000000000000000000000000000000000000d140000000000000000000000000000000000000000000000000000000000000d150000000000000000000000000000000000000000000000000000000000000d160000000000000000000000000000000000000000000000000000000000000d170000000000000000000000000000000000000000000000000000000000000d180000000000000000000000000000000000000000000000000000000000000d190000000000000000000000000000000000000000000000000000000000000d1a0000000000000000000000000000000000000000000000000000000000000d1b0000000000000000000000000000000000000000000000000000000000000d1c0000000000000000000000000000000000000000000000000000000000000d1d0000000000000000000000000000000000000000000000000000000000000d1e0000000000000000000000000000000000000000000000000000000000000d1f0000000000000000000000000000000000000000000000000000000000000d200000000000000000000000000000000000000000000000000000000000000d210000000000000000000000000000000000000000000000000000000000000d220000000000000000000000000000000000000000000000000000000000000d230000000000000000000000000000000000000000000000000000000000000d240000000000000000000000000000000000000000000000000000000000000d250000000000000000000000000000000000000000000000000000000000000d260000000000000000000000000000000000000000000000000000000000000d270000000000000000000000000000000000000000000000000000000000000d280000000000000000000000000000000000000000000000000000000000000d290000000000000000000000000000000000000000000000000000000000000d2a0000000000000000000000000000000000000000000000000000000000000d2b0000000000000000000000000000000000000000000000000000000000000d2c0000000000000000000000000000000000000000000000000000000000000d2d0000000000000000000000000000000000000000000000000000000000000d2e0000000000000000000000000000000000000000000000000000000000000d2f0000000000000000000000000000000000000000000000000000000000000d300000000000000000000000000000000000000000000000000000000000000d310000000000000000000000000000000000000000000000000000000000000d320000000000000000000000000000000000000000000000000000000000000d330000000000000000000000000000000000000000000000000000000000000d340000000000000000000000000000000000000000000000000000000000000d350000000000000000000000000000000000000000000000000000000000000d360000000000000000000000000000000000000000000000000000000000000d370000000000000000000000000000000000000000000000000000000000000d380000000000000000000000000000000000000000000000000000000000000d390000000000000000000000000000000000000000000000000000000000000d3a0000000000000000000000000000000000000000000000000000000000000d3b0000000000000000000000000000000000000000000000000000000000000d3c0000000000000000000000000000000000000000000000000000000000000d3d0000000000000000000000000000000000000000000000000000000000000d3e0000000000000000000000000000000000000000000000000000000000000d3f0000000000000000000000000000000000000000000000000000000000000d400000000000000000000000000000000000000000000000000000000000000d410000000000000000000000000000000000000000000000000000000000000d420000000000000000000000000000000000000000000000000000000000000d430000000000000000000000000000000000000000000000000000000000000d440000000000000000000000000000000000000000000000000000000000000d450000000000000000000000000000000000000000000000000000000000000d460000000000000000000000000000000000000000000000000000000000000d470000000000000000000000000000000000000000000000000000000000000d480000000000000000000000000000000000000000000000000000000000000d490000000000000000000000000000000000000000000000000000000000000d4a0000000000000000000000000000000000000000000000000000000000000d4b0000000000000000000000000000000000000000000000000000000000000d4c0000000000000000000000000000000000000000000000000000000000000d4d0000000000000000000000000000000000000000000000000000000000000d4e0000000000000000000000000000000000000000000000000000000000000d4f0000000000000000000000000000000000000000000000000000000000000d500000000000000000000000000000000000000000000000000000000000000d510000000000000000000000000000000000000000000000000000000000000d520000000000000000000000000000000000000000000000000000000000000d530000000000000000000000000000000000000000000000000000000000000d540000000000000000000000000000000000000000000000000000000000000d550000000000000000000000000000000000000000000000000000000000000d560000000000000000000000000000000000000000000000000000000000000d570000000000000000000000000000000000000000000000000000000000000d580000000000000000000000000000000000000000000000000000000000000d590000000000000000000000000000000000000000000000000000000000000d5a0000000000000000000000000000000000000000000000000000000000000d5b0000000000000000000000000000000000000000000000000000000000000d5c0000000000000000000000000000000000000000000000000000000000000d5d0000000000000000000000000000000000000000000000000000000000000d5e0000000000000000000000000000000000000000000000000000000000000d5f0000000000000000000000000000000000000000000000000000000000000d600000000000000000000000000000000000000000000000000000000000000d610000000000000000000000000000000000000000000000000000000000000d620000000000000000000000000000000000000000000000000000000000000d630000000000000000000000000000000000000000000000000000000000000d640000000000000000000000000000000000000000000000000000000000000d650000000000000000000000000000000000000000000000000000000000000d660000000000000000000000000000000000000000000000000000000000000d670000000000000000000000000000000000000000000000000000000000000d680000000000000000000000000000000000000000000000000000000000000d690000000000000000000000000000000000000000000000000000000000000d6a0000000000000000000000000000000000000000000000000000000000000d6b0000000000000000000000000000000000000000000000000000000000000d6c0000000000000000000000000000000000000000000000000000000000000d6d0000000000000000000000000000000000000000000000000000000000000d6e0000000000000000000000000000000000000000000000000000000000000d6f0000000000000000000000000000000000000000000000000000000000000d700000000000000000000000000000000000000000000000000000000000000d710000000000000000000000000000000000000000000000000000000000000d720000000000000000000000000000000000000000000000000000000000000d730000000000000000000000000000000000000000000000000000000000000d740000000000000000000000000000000000000000000000000000000000000d750000000000000000000000000000000000000000000000000000000000000d760000000000000000000000000000000000000000000000000000000000000d770000000000000000000000000000000000000000000000000000000000000d780000000000000000000000000000000000000000000000000000000000000d790000000000000000000000000000000000000000000000000000000000000d7a0000000000000000000000000000000000000000000000000000000000000d7b0000000000000000000000000000000000000000000000000000000000000d7c0000000000000000000000000000000000000000000000000000000000000d7d0000000000000000000000000000000000000000000000000000000000000d7e0000000000000000000000000000000000000000000000000000000000000d7f0000000000000000000000000000000000000000000000000000000000000d800000000000000000000000000000000000000000000000000000000000000d810000000000000000000000000000000000000000000000000000000000000d820000000000000000000000000000000000000000000000000000000000000d830000000000000000000000000000000000000000000000000000000000000d840000000000000000000000000000000000000000000000000000000000000d850000000000000000000000000000000000000000000000000000000000000d860000000000000000000000000000000000000000000000000000000000000d870000000000000000000000000000000000000000000000000000000000000d880000000000000000000000000000000000000000000000000000000000000d890000000000000000000000000000000000000000000000000000000000000d8a0000000000000000000000000000000000000000000000000000000000000d8b0000000000000000000000000000000000000000000000000000000000000d8c0000000000000000000000000000000000000000000000000000000000000d8d0000000000000000000000000000000000000000000000000000000000000d8e0000000000000000000000000000000000000000000000000000000000000d8f0000000000000000000000000000000000000000000000000000000000000d900000000000000000000000000000000000000000000000000000000000000d910000000000000000000000000000000000000000000000000000000000000d920000000000000000000000000000000000000000000000000000000000000d930000000000000000000000000000000000000000000000000000000000000d940000000000000000000000000000000000000000000000000000000000000d950000000000000000000000000000000000000000000000000000000000000d960000000000000000000000000000000000000000000000000000000000000d970000000000000000000000000000000000000000000000000000000000000d980000000000000000000000000000000000000000000000000000000000000d990000000000000000000000000000000000000000000000000000000000000d9a0000000000000000000000000000000000000000000000000000000000000d9b0000000000000000000000000000000000000000000000000000000000000d9c0000000000000000000000000000000000000000000000000000000000000d9d0000000000000000000000000000000000000000000000000000000000000d9e0000000000000000000000000000000000000000000000000000000000000d9f0000000000000000000000000000000000000000000000000000000000000da00000000000000000000000000000000000000000000000000000000000000da10000000000000000000000000000000000000000000000000000000000000da20000000000000000000000000000000000000000000000000000000000000da30000000000000000000000000000000000000000000000000000000000000da40000000000000000000000000000000000000000000000000000000000000da50000000000000000000000000000000000000000000000000000000000000da60000000000000000000000000000000000000000000000000000000000000da70000000000000000000000000000000000000000000000000000000000000da80000000000000000000000000000000000000000000000000000000000000da90000000000000000000000000000000000000000000000000000000000000daa0000000000000000000000000000000000000000000000000000000000000dab0000000000000000000000000000000000000000000000000000000000000dac0000000000000000000000000000000000000000000000000000000000000dad0000000000000000000000000000000000000000000000000000000000000dae0000000000000000000000000000000000000000000000000000000000000daf0000000000000000000000000000000000000000000000000000000000000db00000000000000000000000000000000000000000000000000000000000000db10000000000000000000000000000000000000000000000000000000000000db20000000000000000000000000000000000000000000000000000000000000db30000000000000000000000000000000000000000000000000000000000000db40000000000000000000000000000000000000000000000000000000000000db50000000000000000000000000000000000000000000000000000000000000db60000000000000000000000000000000000000000000000000000000000000db70000000000000000000000000000000000000000000000000000000000000db80000000000000000000000000000000000000000000000000000000000000db90000000000000000000000000000000000000000000000000000000000000dba0000000000000000000000000000000000000000000000000000000000000dbb0000000000000000000000000000000000000000000000000000000000000dbc0000000000000000000000000000000000000000000000000000000000000dbd0000000000000000000000000000000000000000000000000000000000000dbe0000000000000000000000000000000000000000000000000000000000000dbf0000000000000000000000000000000000000000000000000000000000000dc00000000000000000000000000000000000000000000000000000000000000dc10000000000000000000000000000000000000000000000000000000000000dc20000000000000000000000000000000000000000000000000000000000000dc30000000000000000000000000000000000000000000000000000000000000dc40000000000000000000000000000000000000000000000000000000000000dc50000000000000000000000000000000000000000000000000000000000000dc60000000000000000000000000000000000000000000000000000000000000dc70000000000000000000000000000000000000000000000000000000000000dc80000000000000000000000000000000000000000000000000000000000000dc90000000000000000000000000000000000000000000000000000000000000dca0000000000000000000000000000000000000000000000000000000000000dcb0000000000000000000000000000000000000000000000000000000000000dcc0000000000000000000000000000000000000000000000000000000000000dcd0000000000000000000000000000000000000000000000000000000000000dce0000000000000000000000000000000000000000000000000000000000000dcf0000000000000000000000000000000000000000000000000000000000000dd00000000000000000000000000000000000000000000000000000000000000dd10000000000000000000000000000000000000000000000000000000000000dd20000000000000000000000000000000000000000000000000000000000000dd30000000000000000000000000000000000000000000000000000000000000dd40000000000000000000000000000000000000000000000000000000000000dd50000000000000000000000000000000000000000000000000000000000000dd60000000000000000000000000000000000000000000000000000000000000dd70000000000000000000000000000000000000000000000000000000000000dd80000000000000000000000000000000000000000000000000000000000000dd90000000000000000000000000000000000000000000000000000000000000dda0000000000000000000000000000000000000000000000000000000000000ddb0000000000000000000000000000000000000000000000000000000000000ddc0000000000000000000000000000000000000000000000000000000000000ddd0000000000000000000000000000000000000000000000000000000000000dde0000000000000000000000000000000000000000000000000000000000000ddf0000000000000000000000000000000000000000000000000000000000000de00000000000000000000000000000000000000000000000000000000000000de10000000000000000000000000000000000000000000000000000000000000de20000000000000000000000000000000000000000000000000000000000000de30000000000000000000000000000000000000000000000000000000000000de40000000000000000000000000000000000000000000000000000000000000de50000000000000000000000000000000000000000000000000000000000000de60000000000000000000000000000000000000000000000000000000000000de70000000000000000000000000000000000000000000000000000000000000de80000000000000000000000000000000000000000000000000000000000000de90000000000000000000000000000000000000000000000000000000000000dea0000000000000000000000000000000000000000000000000000000000000deb0000000000000000000000000000000000000000000000000000000000000dec0000000000000000000000000000000000000000000000000000000000000ded0000000000000000000000000000000000000000000000000000000000000dee0000000000000000000000000000000000000000000000000000000000000def0000000000000000000000000000000000000000000000000000000000000df00000000000000000000000000000000000000000000000000000000000000df10000000000000000000000000000000000000000000000000000000000000df20000000000000000000000000000000000000000000000000000000000000df30000000000000000000000000000000000000000000000000000000000000df40000000000000000000000000000000000000000000000000000000000000df50000000000000000000000000000000000000000000000000000000000000df60000000000000000000000000000000000000000000000000000000000000df70000000000000000000000000000000000000000000000000000000000000df80000000000000000000000000000000000000000000000000000000000000df90000000000000000000000000000000000000000000000000000000000000dfa0000000000000000000000000000000000000000000000000000000000000dfb0000000000000000000000000000000000000000000000000000000000000dfc0000000000000000000000000000000000000000000000000000000000000dfd0000000000000000000000000000000000000000000000000000000000000dfe0000000000000000000000000000000000000000000000000000000000000dff0000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000e010000000000000000000000000000000000000000000000000000000000000e020000000000000000000000000000000000000000000000000000000000000e030000000000000000000000000000000000000000000000000000000000000e040000000000000000000000000000000000000000000000000000000000000e050000000000000000000000000000000000000000000000000000000000000e060000000000000000000000000000000000000000000000000000000000000e070000000000000000000000000000000000000000000000000000000000000e080000000000000000000000000000000000000000000000000000000000000e090000000000000000000000000000000000000000000000000000000000000e0a0000000000000000000000000000000000000000000000000000000000000e0b0000000000000000000000000000000000000000000000000000000000000e0c0000000000000000000000000000000000000000000000000000000000000e0d0000000000000000000000000000000000000000000000000000000000000e0e0000000000000000000000000000000000000000000000000000000000000e0f0000000000000000000000000000000000000000000000000000000000000e100000000000000000000000000000000000000000000000000000000000000e110000000000000000000000000000000000000000000000000000000000000e120000000000000000000000000000000000000000000000000000000000000e130000000000000000000000000000000000000000000000000000000000000e140000000000000000000000000000000000000000000000000000000000000e150000000000000000000000000000000000000000000000000000000000000e160000000000000000000000000000000000000000000000000000000000000e170000000000000000000000000000000000000000000000000000000000000e180000000000000000000000000000000000000000000000000000000000000e190000000000000000000000000000000000000000000000000000000000000e1a0000000000000000000000000000000000000000000000000000000000000e1b0000000000000000000000000000000000000000000000000000000000000e1c0000000000000000000000000000000000000000000000000000000000000e1d0000000000000000000000000000000000000000000000000000000000000e1e0000000000000000000000000000000000000000000000000000000000000e1f0000000000000000000000000000000000000000000000000000000000000e200000000000000000000000000000000000000000000000000000000000000e210000000000000000000000000000000000000000000000000000000000000e220000000000000000000000000000000000000000000000000000000000000e230000000000000000000000000000000000000000000000000000000000000e240000000000000000000000000000000000000000000000000000000000000e250000000000000000000000000000000000000000000000000000000000000e260000000000000000000000000000000000000000000000000000000000000e270000000000000000000000000000000000000000000000000000000000000e280000000000000000000000000000000000000000000000000000000000000e290000000000000000000000000000000000000000000000000000000000000e2a0000000000000000000000000000000000000000000000000000000000000e2b0000000000000000000000000000000000000000000000000000000000000e2c0000000000000000000000000000000000000000000000000000000000000e2d0000000000000000000000000000000000000000000000000000000000000e2e0000000000000000000000000000000000000000000000000000000000000e2f0000000000000000000000000000000000000000000000000000000000000e300000000000000000000000000000000000000000000000000000000000000e310000000000000000000000000000000000000000000000000000000000000e320000000000000000000000000000000000000000000000000000000000000e330000000000000000000000000000000000000000000000000000000000000e340000000000000000000000000000000000000000000000000000000000000e350000000000000000000000000000000000000000000000000000000000000e360000000000000000000000000000000000000000000000000000000000000e370000000000000000000000000000000000000000000000000000000000000e380000000000000000000000000000000000000000000000000000000000000e390000000000000000000000000000000000000000000000000000000000000e3a0000000000000000000000000000000000000000000000000000000000000e3b0000000000000000000000000000000000000000000000000000000000000e3c0000000000000000000000000000000000000000000000000000000000000e3d0000000000000000000000000000000000000000000000000000000000000e3e0000000000000000000000000000000000000000000000000000000000000e3f0000000000000000000000000000000000000000000000000000000000000e400000000000000000000000000000000000000000000000000000000000000e410000000000000000000000000000000000000000000000000000000000000e420000000000000000000000000000000000000000000000000000000000000e430000000000000000000000000000000000000000000000000000000000000e440000000000000000000000000000000000000000000000000000000000000e450000000000000000000000000000000000000000000000000000000000000e460000000000000000000000000000000000000000000000000000000000000e470000000000000000000000000000000000000000000000000000000000000e480000000000000000000000000000000000000000000000000000000000000e490000000000000000000000000000000000000000000000000000000000000e4a0000000000000000000000000000000000000000000000000000000000000e4b0000000000000000000000000000000000000000000000000000000000000e4c0000000000000000000000000000000000000000000000000000000000000e4d0000000000000000000000000000000000000000000000000000000000000e4e0000000000000000000000000000000000000000000000000000000000000e4f0000000000000000000000000000000000000000000000000000000000000e500000000000000000000000000000000000000000000000000000000000000e510000000000000000000000000000000000000000000000000000000000000e520000000000000000000000000000000000000000000000000000000000000e530000000000000000000000000000000000000000000000000000000000000e540000000000000000000000000000000000000000000000000000000000000e550000000000000000000000000000000000000000000000000000000000000e560000000000000000000000000000000000000000000000000000000000000e570000000000000000000000000000000000000000000000000000000000000e580000000000000000000000000000000000000000000000000000000000000e590000000000000000000000000000000000000000000000000000000000000e5a0000000000000000000000000000000000000000000000000000000000000e5b0000000000000000000000000000000000000000000000000000000000000e5c0000000000000000000000000000000000000000000000000000000000000e5d0000000000000000000000000000000000000000000000000000000000000e5e0000000000000000000000000000000000000000000000000000000000000e5f0000000000000000000000000000000000000000000000000000000000000e600000000000000000000000000000000000000000000000000000000000000e610000000000000000000000000000000000000000000000000000000000000e620000000000000000000000000000000000000000000000000000000000000e630000000000000000000000000000000000000000000000000000000000000e640000000000000000000000000000000000000000000000000000000000000e650000000000000000000000000000000000000000000000000000000000000e660000000000000000000000000000000000000000000000000000000000000e670000000000000000000000000000000000000000000000000000000000000e680000000000000000000000000000000000000000000000000000000000000e690000000000000000000000000000000000000000000000000000000000000e6a0000000000000000000000000000000000000000000000000000000000000e6b0000000000000000000000000000000000000000000000000000000000000e6c0000000000000000000000000000000000000000000000000000000000000e6d0000000000000000000000000000000000000000000000000000000000000e6e0000000000000000000000000000000000000000000000000000000000000e6f0000000000000000000000000000000000000000000000000000000000000e700000000000000000000000000000000000000000000000000000000000000e710000000000000000000000000000000000000000000000000000000000000e720000000000000000000000000000000000000000000000000000000000000e730000000000000000000000000000000000000000000000000000000000000e740000000000000000000000000000000000000000000000000000000000000e750000000000000000000000000000000000000000000000000000000000000e760000000000000000000000000000000000000000000000000000000000000e770000000000000000000000000000000000000000000000000000000000000e780000000000000000000000000000000000000000000000000000000000000e790000000000000000000000000000000000000000000000000000000000000e7a0000000000000000000000000000000000000000000000000000000000000e7b0000000000000000000000000000000000000000000000000000000000000e7c0000000000000000000000000000000000000000000000000000000000000e7d0000000000000000000000000000000000000000000000000000000000000e7e0000000000000000000000000000000000000000000000000000000000000e7f0000000000000000000000000000000000000000000000000000000000000e800000000000000000000000000000000000000000000000000000000000000e810000000000000000000000000000000000000000000000000000000000000e820000000000000000000000000000000000000000000000000000000000000e830000000000000000000000000000000000000000000000000000000000000e840000000000000000000000000000000000000000000000000000000000000e850000000000000000000000000000000000000000000000000000000000000e860000000000000000000000000000000000000000000000000000000000000e870000000000000000000000000000000000000000000000000000000000000e880000000000000000000000000000000000000000000000000000000000000e890000000000000000000000000000000000000000000000000000000000000e8a0000000000000000000000000000000000000000000000000000000000000e8b0000000000000000000000000000000000000000000000000000000000000e8c0000000000000000000000000000000000000000000000000000000000000e8d0000000000000000000000000000000000000000000000000000000000000e8e0000000000000000000000000000000000000000000000000000000000000e8f0000000000000000000000000000000000000000000000000000000000000e900000000000000000000000000000000000000000000000000000000000000e910000000000000000000000000000000000000000000000000000000000000e920000000000000000000000000000000000000000000000000000000000000e930000000000000000000000000000000000000000000000000000000000000e940000000000000000000000000000000000000000000000000000000000000e950000000000000000000000000000000000000000000000000000000000000e960000000000000000000000000000000000000000000000000000000000000e970000000000000000000000000000000000000000000000000000000000000e980000000000000000000000000000000000000000000000000000000000000e990000000000000000000000000000000000000000000000000000000000000e9a0000000000000000000000000000000000000000000000000000000000000e9b0000000000000000000000000000000000000000000000000000000000000e9c0000000000000000000000000000000000000000000000000000000000000e9d0000000000000000000000000000000000000000000000000000000000000e9e0000000000000000000000000000000000000000000000000000000000000e9f0000000000000000000000000000000000000000000000000000000000000ea00000000000000000000000000000000000000000000000000000000000000ea10000000000000000000000000000000000000000000000000000000000000ea20000000000000000000000000000000000000000000000000000000000000ea30000000000000000000000000000000000000000000000000000000000000ea40000000000000000000000000000000000000000000000000000000000000ea50000000000000000000000000000000000000000000000000000000000000ea60000000000000000000000000000000000000000000000000000000000000ea70000000000000000000000000000000000000000000000000000000000000ea80000000000000000000000000000000000000000000000000000000000000ea90000000000000000000000000000000000000000000000000000000000000eaa0000000000000000000000000000000000000000000000000000000000000eab0000000000000000000000000000000000000000000000000000000000000eac0000000000000000000000000000000000000000000000000000000000000ead0000000000000000000000000000000000000000000000000000000000000eae0000000000000000000000000000000000000000000000000000000000000eaf0000000000000000000000000000000000000000000000000000000000000eb00000000000000000000000000000000000000000000000000000000000000eb10000000000000000000000000000000000000000000000000000000000000eb20000000000000000000000000000000000000000000000000000000000000eb30000000000000000000000000000000000000000000000000000000000000eb40000000000000000000000000000000000000000000000000000000000000eb50000000000000000000000000000000000000000000000000000000000000eb60000000000000000000000000000000000000000000000000000000000000eb70000000000000000000000000000000000000000000000000000000000000eb80000000000000000000000000000000000000000000000000000000000000eb90000000000000000000000000000000000000000000000000000000000000eba0000000000000000000000000000000000000000000000000000000000000ebb0000000000000000000000000000000000000000000000000000000000000ebc0000000000000000000000000000000000000000000000000000000000000ebd0000000000000000000000000000000000000000000000000000000000000ebe0000000000000000000000000000000000000000000000000000000000000ebf0000000000000000000000000000000000000000000000000000000000000ec00000000000000000000000000000000000000000000000000000000000000ec10000000000000000000000000000000000000000000000000000000000000ec20000000000000000000000000000000000000000000000000000000000000ec30000000000000000000000000000000000000000000000000000000000000ec40000000000000000000000000000000000000000000000000000000000000ec50000000000000000000000000000000000000000000000000000000000000ec60000000000000000000000000000000000000000000000000000000000000ec70000000000000000000000000000000000000000000000000000000000000ec80000000000000000000000000000000000000000000000000000000000000ec90000000000000000000000000000000000000000000000000000000000000eca0000000000000000000000000000000000000000000000000000000000000ecb0000000000000000000000000000000000000000000000000000000000000ecc0000000000000000000000000000000000000000000000000000000000000ecd0000000000000000000000000000000000000000000000000000000000000ece0000000000000000000000000000000000000000000000000000000000000ecf0000000000000000000000000000000000000000000000000000000000000ed00000000000000000000000000000000000000000000000000000000000000ed10000000000000000000000000000000000000000000000000000000000000ed20000000000000000000000000000000000000000000000000000000000000ed30000000000000000000000000000000000000000000000000000000000000ed40000000000000000000000000000000000000000000000000000000000000ed50000000000000000000000000000000000000000000000000000000000000ed60000000000000000000000000000000000000000000000000000000000000ed70000000000000000000000000000000000000000000000000000000000000ed80000000000000000000000000000000000000000000000000000000000000ed90000000000000000000000000000000000000000000000000000000000000eda0000000000000000000000000000000000000000000000000000000000000edb0000000000000000000000000000000000000000000000000000000000000edc0000000000000000000000000000000000000000000000000000000000000edd0000000000000000000000000000000000000000000000000000000000000ede0000000000000000000000000000000000000000000000000000000000000edf0000000000000000000000000000000000000000000000000000000000000ee00000000000000000000000000000000000000000000000000000000000000ee10000000000000000000000000000000000000000000000000000000000000ee20000000000000000000000000000000000000000000000000000000000000ee30000000000000000000000000000000000000000000000000000000000000ee40000000000000000000000000000000000000000000000000000000000000ee50000000000000000000000000000000000000000000000000000000000000ee60000000000000000000000000000000000000000000000000000000000000ee70000000000000000000000000000000000000000000000000000000000000ee80000000000000000000000000000000000000000000000000000000000000ee90000000000000000000000000000000000000000000000000000000000000eea0000000000000000000000000000000000000000000000000000000000000eeb0000000000000000000000000000000000000000000000000000000000000eec0000000000000000000000000000000000000000000000000000000000000eed0000000000000000000000000000000000000000000000000000000000000eee0000000000000000000000000000000000000000000000000000000000000eef0000000000000000000000000000000000000000000000000000000000000ef00000000000000000000000000000000000000000000000000000000000000ef10000000000000000000000000000000000000000000000000000000000000ef20000000000000000000000000000000000000000000000000000000000000ef30000000000000000000000000000000000000000000000000000000000000ef40000000000000000000000000000000000000000000000000000000000000ef50000000000000000000000000000000000000000000000000000000000000ef60000000000000000000000000000000000000000000000000000000000000ef70000000000000000000000000000000000000000000000000000000000000ef80000000000000000000000000000000000000000000000000000000000000ef90000000000000000000000000000000000000000000000000000000000000efa0000000000000000000000000000000000000000000000000000000000000efb0000000000000000000000000000000000000000000000000000000000000efc0000000000000000000000000000000000000000000000000000000000000efd0000000000000000000000000000000000000000000000000000000000000efe0000000000000000000000000000000000000000000000000000000000000eff0000000000000000000000000000000000000000000000000000000000000f000000000000000000000000000000000000000000000000000000000000000f010000000000000000000000000000000000000000000000000000000000000f020000000000000000000000000000000000000000000000000000000000000f030000000000000000000000000000000000000000000000000000000000000f040000000000000000000000000000000000000000000000000000000000000f050000000000000000000000000000000000000000000000000000000000000f060000000000000000000000000000000000000000000000000000000000000f070000000000000000000000000000000000000000000000000000000000000f080000000000000000000000000000000000000000000000000000000000000f090000000000000000000000000000000000000000000000000000000000000f0a0000000000000000000000000000000000000000000000000000000000000f0b0000000000000000000000000000000000000000000000000000000000000f0c0000000000000000000000000000000000000000000000000000000000000f0d0000000000000000000000000000000000000000000000000000000000000f0e0000000000000000000000000000000000000000000000000000000000000f0f0000000000000000000000000000000000000000000000000000000000000f100000000000000000000000000000000000000000000000000000000000000f110000000000000000000000000000000000000000000000000000000000000f120000000000000000000000000000000000000000000000000000000000000f130000000000000000000000000000000000000000000000000000000000000f140000000000000000000000000000000000000000000000000000000000000f150000000000000000000000000000000000000000000000000000000000000f160000000000000000000000000000000000000000000000000000000000000f170000000000000000000000000000000000000000000000000000000000000f180000000000000000000000000000000000000000000000000000000000000f190000000000000000000000000000000000000000000000000000000000000f1a0000000000000000000000000000000000000000000000000000000000000f1b0000000000000000000000000000000000000000000000000000000000000f1c0000000000000000000000000000000000000000000000000000000000000f1d0000000000000000000000000000000000000000000000000000000000000f1e0000000000000000000000000000000000000000000000000000000000000f1f0000000000000000000000000000000000000000000000000000000000000f200000000000000000000000000000000000000000000000000000000000000f210000000000000000000000000000000000000000000000000000000000000f220000000000000000000000000000000000000000000000000000000000000f230000000000000000000000000000000000000000000000000000000000000f240000000000000000000000000000000000000000000000000000000000000f250000000000000000000000000000000000000000000000000000000000000f260000000000000000000000000000000000000000000000000000000000000f270000000000000000000000000000000000000000000000000000000000000f280000000000000000000000000000000000000000000000000000000000000f290000000000000000000000000000000000000000000000000000000000000f2a0000000000000000000000000000000000000000000000000000000000000f2b0000000000000000000000000000000000000000000000000000000000000f2c0000000000000000000000000000000000000000000000000000000000000f2d0000000000000000000000000000000000000000000000000000000000000f2e0000000000000000000000000000000000000000000000000000000000000f2f0000000000000000000000000000000000000000000000000000000000000f300000000000000000000000000000000000000000000000000000000000000f310000000000000000000000000000000000000000000000000000000000000f320000000000000000000000000000000000000000000000000000000000000f330000000000000000000000000000000000000000000000000000000000000f340000000000000000000000000000000000000000000000000000000000000f350000000000000000000000000000000000000000000000000000000000000f360000000000000000000000000000000000000000000000000000000000000f370000000000000000000000000000000000000000000000000000000000000f380000000000000000000000000000000000000000000000000000000000000f390000000000000000000000000000000000000000000000000000000000000f3a0000000000000000000000000000000000000000000000000000000000000f3b0000000000000000000000000000000000000000000000000000000000000f3c0000000000000000000000000000000000000000000000000000000000000f3d0000000000000000000000000000000000000000000000000000000000000f3e0000000000000000000000000000000000000000000000000000000000000f3f0000000000000000000000000000000000000000000000000000000000000f400000000000000000000000000000000000000000000000000000000000000f410000000000000000000000000000000000000000000000000000000000000f420000000000000000000000000000000000000000000000000000000000000f430000000000000000000000000000000000000000000000000000000000000f440000000000000000000000000000000000000000000000000000000000000f450000000000000000000000000000000000000000000000000000000000000f460000000000000000000000000000000000000000000000000000000000000f470000000000000000000000000000000000000000000000000000000000000f480000000000000000000000000000000000000000000000000000000000000f490000000000000000000000000000000000000000000000000000000000000f4a0000000000000000000000000000000000000000000000000000000000000f4b0000000000000000000000000000000000000000000000000000000000000f4c0000000000000000000000000000000000000000000000000000000000000f4d0000000000000000000000000000000000000000000000000000000000000f4e0000000000000000000000000000000000000000000000000000000000000f4f0000000000000000000000000000000000000000000000000000000000000f500000000000000000000000000000000000000000000000000000000000000f510000000000000000000000000000000000000000000000000000000000000f520000000000000000000000000000000000000000000000000000000000000f530000000000000000000000000000000000000000000000000000000000000f540000000000000000000000000000000000000000000000000000000000000f550000000000000000000000000000000000000000000000000000000000000f560000000000000000000000000000000000000000000000000000000000000f570000000000000000000000000000000000000000000000000000000000000f580000000000000000000000000000000000000000000000000000000000000f590000000000000000000000000000000000000000000000000000000000000f5a0000000000000000000000000000000000000000000000000000000000000f5b0000000000000000000000000000000000000000000000000000000000000f5c0000000000000000000000000000000000000000000000000000000000000f5d0000000000000000000000000000000000000000000000000000000000000f5e0000000000000000000000000000000000000000000000000000000000000f5f0000000000000000000000000000000000000000000000000000000000000f600000000000000000000000000000000000000000000000000000000000000f610000000000000000000000000000000000000000000000000000000000000f620000000000000000000000000000000000000000000000000000000000000f630000000000000000000000000000000000000000000000000000000000000f640000000000000000000000000000000000000000000000000000000000000f650000000000000000000000000000000000000000000000000000000000000f660000000000000000000000000000000000000000000000000000000000000f670000000000000000000000000000000000000000000000000000000000000f680000000000000000000000000000000000000000000000000000000000000f690000000000000000000000000000000000000000000000000000000000000f6a0000000000000000000000000000000000000000000000000000000000000f6b0000000000000000000000000000000000000000000000000000000000000f6c0000000000000000000000000000000000000000000000000000000000000f6d0000000000000000000000000000000000000000000000000000000000000f6e0000000000000000000000000000000000000000000000000000000000000f6f0000000000000000000000000000000000000000000000000000000000000f700000000000000000000000000000000000000000000000000000000000000f710000000000000000000000000000000000000000000000000000000000000f720000000000000000000000000000000000000000000000000000000000000f730000000000000000000000000000000000000000000000000000000000000f740000000000000000000000000000000000000000000000000000000000000f750000000000000000000000000000000000000000000000000000000000000f760000000000000000000000000000000000000000000000000000000000000f770000000000000000000000000000000000000000000000000000000000000f780000000000000000000000000000000000000000000000000000000000000f790000000000000000000000000000000000000000000000000000000000000f7a0000000000000000000000000000000000000000000000000000000000000f7b0000000000000000000000000000000000000000000000000000000000000f7c0000000000000000000000000000000000000000000000000000000000000f7d0000000000000000000000000000000000000000000000000000000000000f7e0000000000000000000000000000000000000000000000000000000000000f7f0000000000000000000000000000000000000000000000000000000000000f800000000000000000000000000000000000000000000000000000000000000f810000000000000000000000000000000000000000000000000000000000000f820000000000000000000000000000000000000000000000000000000000000f830000000000000000000000000000000000000000000000000000000000000f840000000000000000000000000000000000000000000000000000000000000f850000000000000000000000000000000000000000000000000000000000000f860000000000000000000000000000000000000000000000000000000000000f870000000000000000000000000000000000000000000000000000000000000f880000000000000000000000000000000000000000000000000000000000000f890000000000000000000000000000000000000000000000000000000000000f8a0000000000000000000000000000000000000000000000000000000000000f8b0000000000000000000000000000000000000000000000000000000000000f8c0000000000000000000000000000000000000000000000000000000000000f8d0000000000000000000000000000000000000000000000000000000000000f8e0000000000000000000000000000000000000000000000000000000000000f8f0000000000000000000000000000000000000000000000000000000000000f900000000000000000000000000000000000000000000000000000000000000f910000000000000000000000000000000000000000000000000000000000000f920000000000000000000000000000000000000000000000000000000000000f930000000000000000000000000000000000000000000000000000000000000f940000000000000000000000000000000000000000000000000000000000000f950000000000000000000000000000000000000000000000000000000000000f960000000000000000000000000000000000000000000000000000000000000f970000000000000000000000000000000000000000000000000000000000000f980000000000000000000000000000000000000000000000000000000000000f990000000000000000000000000000000000000000000000000000000000000f9a0000000000000000000000000000000000000000000000000000000000000f9b0000000000000000000000000000000000000000000000000000000000000f9c0000000000000000000000000000000000000000000000000000000000000f9d0000000000000000000000000000000000000000000000000000000000000f9e0000000000000000000000000000000000000000000000000000000000000f9f0000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000000fa10000000000000000000000000000000000000000000000000000000000000fa20000000000000000000000000000000000000000000000000000000000000fa30000000000000000000000000000000000000000000000000000000000000fa40000000000000000000000000000000000000000000000000000000000000fa50000000000000000000000000000000000000000000000000000000000000fa60000000000000000000000000000000000000000000000000000000000000fa70000000000000000000000000000000000000000000000000000000000000fa80000000000000000000000000000000000000000000000000000000000000fa90000000000000000000000000000000000000000000000000000000000000faa0000000000000000000000000000000000000000000000000000000000000fab0000000000000000000000000000000000000000000000000000000000000fac0000000000000000000000000000000000000000000000000000000000000fad0000000000000000000000000000000000000000000000000000000000000fae0000000000000000000000000000000000000000000000000000000000000faf0000000000000000000000000000000000000000000000000000000000000fb00000000000000000000000000000000000000000000000000000000000000fb10000000000000000000000000000000000000000000000000000000000000fb20000000000000000000000000000000000000000000000000000000000000fb30000000000000000000000000000000000000000000000000000000000000fb40000000000000000000000000000000000000000000000000000000000000fb50000000000000000000000000000000000000000000000000000000000000fb60000000000000000000000000000000000000000000000000000000000000fb70000000000000000000000000000000000000000000000000000000000000fb80000000000000000000000000000000000000000000000000000000000000fb90000000000000000000000000000000000000000000000000000000000000fba0000000000000000000000000000000000000000000000000000000000000fbb0000000000000000000000000000000000000000000000000000000000000fbc0000000000000000000000000000000000000000000000000000000000000fbd0000000000000000000000000000000000000000000000000000000000000fbe0000000000000000000000000000000000000000000000000000000000000fbf0000000000000000000000000000000000000000000000000000000000000fc00000000000000000000000000000000000000000000000000000000000000fc10000000000000000000000000000000000000000000000000000000000000fc20000000000000000000000000000000000000000000000000000000000000fc30000000000000000000000000000000000000000000000000000000000000fc40000000000000000000000000000000000000000000000000000000000000fc50000000000000000000000000000000000000000000000000000000000000fc60000000000000000000000000000000000000000000000000000000000000fc70000000000000000000000000000000000000000000000000000000000000fc80000000000000000000000000000000000000000000000000000000000000fc90000000000000000000000000000000000000000000000000000000000000fca0000000000000000000000000000000000000000000000000000000000000fcb0000000000000000000000000000000000000000000000000000000000000fcc0000000000000000000000000000000000000000000000000000000000000fcd0000000000000000000000000000000000000000000000000000000000000fce0000000000000000000000000000000000000000000000000000000000000fcf0000000000000000000000000000000000000000000000000000000000000fd00000000000000000000000000000000000000000000000000000000000000fd10000000000000000000000000000000000000000000000000000000000000fd20000000000000000000000000000000000000000000000000000000000000fd30000000000000000000000000000000000000000000000000000000000000fd40000000000000000000000000000000000000000000000000000000000000fd50000000000000000000000000000000000000000000000000000000000000fd60000000000000000000000000000000000000000000000000000000000000fd70000000000000000000000000000000000000000000000000000000000000fd80000000000000000000000000000000000000000000000000000000000000fd90000000000000000000000000000000000000000000000000000000000000fda0000000000000000000000000000000000000000000000000000000000000fdb0000000000000000000000000000000000000000000000000000000000000fdc0000000000000000000000000000000000000000000000000000000000000fdd0000000000000000000000000000000000000000000000000000000000000fde0000000000000000000000000000000000000000000000000000000000000fdf0000000000000000000000000000000000000000000000000000000000000fe00000000000000000000000000000000000000000000000000000000000000fe10000000000000000000000000000000000000000000000000000000000000fe20000000000000000000000000000000000000000000000000000000000000fe30000000000000000000000000000000000000000000000000000000000000fe40000000000000000000000000000000000000000000000000000000000000fe50000000000000000000000000000000000000000000000000000000000000fe60000000000000000000000000000000000000000000000000000000000000fe70000000000000000000000000000000000000000000000000000000000000fe80000000000000000000000000000000000000000000000000000000000000fe90000000000000000000000000000000000000000000000000000000000000fea0000000000000000000000000000000000000000000000000000000000000feb0000000000000000000000000000000000000000000000000000000000000fec0000000000000000000000000000000000000000000000000000000000000fed0000000000000000000000000000000000000000000000000000000000000fee0000000000000000000000000000000000000000000000000000000000000fef0000000000000000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000ff10000000000000000000000000000000000000000000000000000000000000ff20000000000000000000000000000000000000000000000000000000000000ff30000000000000000000000000000000000000000000000000000000000000ff40000000000000000000000000000000000000000000000000000000000000ff50000000000000000000000000000000000000000000000000000000000000ff60000000000000000000000000000000000000000000000000000000000000ff70000000000000000000000000000000000000000000000000000000000000ff80000000000000000000000000000000000000000000000000000000000000ff90000000000000000000000000000000000000000000000000000000000000ffa0000000000000000000000000000000000000000000000000000000000000ffb0000000000000000000000000000000000000000000000000000000000000ffc0000000000000000000000000000000000000000000000000000000000000ffd0000000000000000000000000000000000000000000000000000000000000ffe0000000000000000000000000000000000000000000000000000000000000fff", + "Proof": "a02259f9ef800813c1c9b0e85536564eda2eb9dabc837f3b72b27348e83c570d3539adc475c5cf6cd80c9f4ac0989f1a", + "Commitment": "a97456b8097baed6e90ce381d2b21c970a3f9ad4f6c92b1bb26337f919bd639dd43bd470839153db09115e2862051f33", + "InputPoint": "0020000000000000000000000000000000000000000000000000000000000000", + "ClaimedValue": "5cf0915a508d1d174d41618271bb8244b3abad27844cf8f121de6a99f527ae6c" + }, + { + "PolyDegree": 4096, + "Polynomial": "0000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100100000000000000000000000000000000000000000000000000000000000010020000000000000000000000000000000000000000000000000000000000001003000000000000000000000000000000000000000000000000000000000000100400000000000000000000000000000000000000000000000000000000000010050000000000000000000000000000000000000000000000000000000000001006000000000000000000000000000000000000000000000000000000000000100700000000000000000000000000000000000000000000000000000000000010080000000000000000000000000000000000000000000000000000000000001009000000000000000000000000000000000000000000000000000000000000100a000000000000000000000000000000000000000000000000000000000000100b000000000000000000000000000000000000000000000000000000000000100c000000000000000000000000000000000000000000000000000000000000100d000000000000000000000000000000000000000000000000000000000000100e000000000000000000000000000000000000000000000000000000000000100f0000000000000000000000000000000000000000000000000000000000001010000000000000000000000000000000000000000000000000000000000000101100000000000000000000000000000000000000000000000000000000000010120000000000000000000000000000000000000000000000000000000000001013000000000000000000000000000000000000000000000000000000000000101400000000000000000000000000000000000000000000000000000000000010150000000000000000000000000000000000000000000000000000000000001016000000000000000000000000000000000000000000000000000000000000101700000000000000000000000000000000000000000000000000000000000010180000000000000000000000000000000000000000000000000000000000001019000000000000000000000000000000000000000000000000000000000000101a000000000000000000000000000000000000000000000000000000000000101b000000000000000000000000000000000000000000000000000000000000101c000000000000000000000000000000000000000000000000000000000000101d000000000000000000000000000000000000000000000000000000000000101e000000000000000000000000000000000000000000000000000000000000101f0000000000000000000000000000000000000000000000000000000000001020000000000000000000000000000000000000000000000000000000000000102100000000000000000000000000000000000000000000000000000000000010220000000000000000000000000000000000000000000000000000000000001023000000000000000000000000000000000000000000000000000000000000102400000000000000000000000000000000000000000000000000000000000010250000000000000000000000000000000000000000000000000000000000001026000000000000000000000000000000000000000000000000000000000000102700000000000000000000000000000000000000000000000000000000000010280000000000000000000000000000000000000000000000000000000000001029000000000000000000000000000000000000000000000000000000000000102a000000000000000000000000000000000000000000000000000000000000102b000000000000000000000000000000000000000000000000000000000000102c000000000000000000000000000000000000000000000000000000000000102d000000000000000000000000000000000000000000000000000000000000102e000000000000000000000000000000000000000000000000000000000000102f0000000000000000000000000000000000000000000000000000000000001030000000000000000000000000000000000000000000000000000000000000103100000000000000000000000000000000000000000000000000000000000010320000000000000000000000000000000000000000000000000000000000001033000000000000000000000000000000000000000000000000000000000000103400000000000000000000000000000000000000000000000000000000000010350000000000000000000000000000000000000000000000000000000000001036000000000000000000000000000000000000000000000000000000000000103700000000000000000000000000000000000000000000000000000000000010380000000000000000000000000000000000000000000000000000000000001039000000000000000000000000000000000000000000000000000000000000103a000000000000000000000000000000000000000000000000000000000000103b000000000000000000000000000000000000000000000000000000000000103c000000000000000000000000000000000000000000000000000000000000103d000000000000000000000000000000000000000000000000000000000000103e000000000000000000000000000000000000000000000000000000000000103f0000000000000000000000000000000000000000000000000000000000001040000000000000000000000000000000000000000000000000000000000000104100000000000000000000000000000000000000000000000000000000000010420000000000000000000000000000000000000000000000000000000000001043000000000000000000000000000000000000000000000000000000000000104400000000000000000000000000000000000000000000000000000000000010450000000000000000000000000000000000000000000000000000000000001046000000000000000000000000000000000000000000000000000000000000104700000000000000000000000000000000000000000000000000000000000010480000000000000000000000000000000000000000000000000000000000001049000000000000000000000000000000000000000000000000000000000000104a000000000000000000000000000000000000000000000000000000000000104b000000000000000000000000000000000000000000000000000000000000104c000000000000000000000000000000000000000000000000000000000000104d000000000000000000000000000000000000000000000000000000000000104e000000000000000000000000000000000000000000000000000000000000104f0000000000000000000000000000000000000000000000000000000000001050000000000000000000000000000000000000000000000000000000000000105100000000000000000000000000000000000000000000000000000000000010520000000000000000000000000000000000000000000000000000000000001053000000000000000000000000000000000000000000000000000000000000105400000000000000000000000000000000000000000000000000000000000010550000000000000000000000000000000000000000000000000000000000001056000000000000000000000000000000000000000000000000000000000000105700000000000000000000000000000000000000000000000000000000000010580000000000000000000000000000000000000000000000000000000000001059000000000000000000000000000000000000000000000000000000000000105a000000000000000000000000000000000000000000000000000000000000105b000000000000000000000000000000000000000000000000000000000000105c000000000000000000000000000000000000000000000000000000000000105d000000000000000000000000000000000000000000000000000000000000105e000000000000000000000000000000000000000000000000000000000000105f0000000000000000000000000000000000000000000000000000000000001060000000000000000000000000000000000000000000000000000000000000106100000000000000000000000000000000000000000000000000000000000010620000000000000000000000000000000000000000000000000000000000001063000000000000000000000000000000000000000000000000000000000000106400000000000000000000000000000000000000000000000000000000000010650000000000000000000000000000000000000000000000000000000000001066000000000000000000000000000000000000000000000000000000000000106700000000000000000000000000000000000000000000000000000000000010680000000000000000000000000000000000000000000000000000000000001069000000000000000000000000000000000000000000000000000000000000106a000000000000000000000000000000000000000000000000000000000000106b000000000000000000000000000000000000000000000000000000000000106c000000000000000000000000000000000000000000000000000000000000106d000000000000000000000000000000000000000000000000000000000000106e000000000000000000000000000000000000000000000000000000000000106f0000000000000000000000000000000000000000000000000000000000001070000000000000000000000000000000000000000000000000000000000000107100000000000000000000000000000000000000000000000000000000000010720000000000000000000000000000000000000000000000000000000000001073000000000000000000000000000000000000000000000000000000000000107400000000000000000000000000000000000000000000000000000000000010750000000000000000000000000000000000000000000000000000000000001076000000000000000000000000000000000000000000000000000000000000107700000000000000000000000000000000000000000000000000000000000010780000000000000000000000000000000000000000000000000000000000001079000000000000000000000000000000000000000000000000000000000000107a000000000000000000000000000000000000000000000000000000000000107b000000000000000000000000000000000000000000000000000000000000107c000000000000000000000000000000000000000000000000000000000000107d000000000000000000000000000000000000000000000000000000000000107e000000000000000000000000000000000000000000000000000000000000107f0000000000000000000000000000000000000000000000000000000000001080000000000000000000000000000000000000000000000000000000000000108100000000000000000000000000000000000000000000000000000000000010820000000000000000000000000000000000000000000000000000000000001083000000000000000000000000000000000000000000000000000000000000108400000000000000000000000000000000000000000000000000000000000010850000000000000000000000000000000000000000000000000000000000001086000000000000000000000000000000000000000000000000000000000000108700000000000000000000000000000000000000000000000000000000000010880000000000000000000000000000000000000000000000000000000000001089000000000000000000000000000000000000000000000000000000000000108a000000000000000000000000000000000000000000000000000000000000108b000000000000000000000000000000000000000000000000000000000000108c000000000000000000000000000000000000000000000000000000000000108d000000000000000000000000000000000000000000000000000000000000108e000000000000000000000000000000000000000000000000000000000000108f0000000000000000000000000000000000000000000000000000000000001090000000000000000000000000000000000000000000000000000000000000109100000000000000000000000000000000000000000000000000000000000010920000000000000000000000000000000000000000000000000000000000001093000000000000000000000000000000000000000000000000000000000000109400000000000000000000000000000000000000000000000000000000000010950000000000000000000000000000000000000000000000000000000000001096000000000000000000000000000000000000000000000000000000000000109700000000000000000000000000000000000000000000000000000000000010980000000000000000000000000000000000000000000000000000000000001099000000000000000000000000000000000000000000000000000000000000109a000000000000000000000000000000000000000000000000000000000000109b000000000000000000000000000000000000000000000000000000000000109c000000000000000000000000000000000000000000000000000000000000109d000000000000000000000000000000000000000000000000000000000000109e000000000000000000000000000000000000000000000000000000000000109f00000000000000000000000000000000000000000000000000000000000010a000000000000000000000000000000000000000000000000000000000000010a100000000000000000000000000000000000000000000000000000000000010a200000000000000000000000000000000000000000000000000000000000010a300000000000000000000000000000000000000000000000000000000000010a400000000000000000000000000000000000000000000000000000000000010a500000000000000000000000000000000000000000000000000000000000010a600000000000000000000000000000000000000000000000000000000000010a700000000000000000000000000000000000000000000000000000000000010a800000000000000000000000000000000000000000000000000000000000010a900000000000000000000000000000000000000000000000000000000000010aa00000000000000000000000000000000000000000000000000000000000010ab00000000000000000000000000000000000000000000000000000000000010ac00000000000000000000000000000000000000000000000000000000000010ad00000000000000000000000000000000000000000000000000000000000010ae00000000000000000000000000000000000000000000000000000000000010af00000000000000000000000000000000000000000000000000000000000010b000000000000000000000000000000000000000000000000000000000000010b100000000000000000000000000000000000000000000000000000000000010b200000000000000000000000000000000000000000000000000000000000010b300000000000000000000000000000000000000000000000000000000000010b400000000000000000000000000000000000000000000000000000000000010b500000000000000000000000000000000000000000000000000000000000010b600000000000000000000000000000000000000000000000000000000000010b700000000000000000000000000000000000000000000000000000000000010b800000000000000000000000000000000000000000000000000000000000010b900000000000000000000000000000000000000000000000000000000000010ba00000000000000000000000000000000000000000000000000000000000010bb00000000000000000000000000000000000000000000000000000000000010bc00000000000000000000000000000000000000000000000000000000000010bd00000000000000000000000000000000000000000000000000000000000010be00000000000000000000000000000000000000000000000000000000000010bf00000000000000000000000000000000000000000000000000000000000010c000000000000000000000000000000000000000000000000000000000000010c100000000000000000000000000000000000000000000000000000000000010c200000000000000000000000000000000000000000000000000000000000010c300000000000000000000000000000000000000000000000000000000000010c400000000000000000000000000000000000000000000000000000000000010c500000000000000000000000000000000000000000000000000000000000010c600000000000000000000000000000000000000000000000000000000000010c700000000000000000000000000000000000000000000000000000000000010c800000000000000000000000000000000000000000000000000000000000010c900000000000000000000000000000000000000000000000000000000000010ca00000000000000000000000000000000000000000000000000000000000010cb00000000000000000000000000000000000000000000000000000000000010cc00000000000000000000000000000000000000000000000000000000000010cd00000000000000000000000000000000000000000000000000000000000010ce00000000000000000000000000000000000000000000000000000000000010cf00000000000000000000000000000000000000000000000000000000000010d000000000000000000000000000000000000000000000000000000000000010d100000000000000000000000000000000000000000000000000000000000010d200000000000000000000000000000000000000000000000000000000000010d300000000000000000000000000000000000000000000000000000000000010d400000000000000000000000000000000000000000000000000000000000010d500000000000000000000000000000000000000000000000000000000000010d600000000000000000000000000000000000000000000000000000000000010d700000000000000000000000000000000000000000000000000000000000010d800000000000000000000000000000000000000000000000000000000000010d900000000000000000000000000000000000000000000000000000000000010da00000000000000000000000000000000000000000000000000000000000010db00000000000000000000000000000000000000000000000000000000000010dc00000000000000000000000000000000000000000000000000000000000010dd00000000000000000000000000000000000000000000000000000000000010de00000000000000000000000000000000000000000000000000000000000010df00000000000000000000000000000000000000000000000000000000000010e000000000000000000000000000000000000000000000000000000000000010e100000000000000000000000000000000000000000000000000000000000010e200000000000000000000000000000000000000000000000000000000000010e300000000000000000000000000000000000000000000000000000000000010e400000000000000000000000000000000000000000000000000000000000010e500000000000000000000000000000000000000000000000000000000000010e600000000000000000000000000000000000000000000000000000000000010e700000000000000000000000000000000000000000000000000000000000010e800000000000000000000000000000000000000000000000000000000000010e900000000000000000000000000000000000000000000000000000000000010ea00000000000000000000000000000000000000000000000000000000000010eb00000000000000000000000000000000000000000000000000000000000010ec00000000000000000000000000000000000000000000000000000000000010ed00000000000000000000000000000000000000000000000000000000000010ee00000000000000000000000000000000000000000000000000000000000010ef00000000000000000000000000000000000000000000000000000000000010f000000000000000000000000000000000000000000000000000000000000010f100000000000000000000000000000000000000000000000000000000000010f200000000000000000000000000000000000000000000000000000000000010f300000000000000000000000000000000000000000000000000000000000010f400000000000000000000000000000000000000000000000000000000000010f500000000000000000000000000000000000000000000000000000000000010f600000000000000000000000000000000000000000000000000000000000010f700000000000000000000000000000000000000000000000000000000000010f800000000000000000000000000000000000000000000000000000000000010f900000000000000000000000000000000000000000000000000000000000010fa00000000000000000000000000000000000000000000000000000000000010fb00000000000000000000000000000000000000000000000000000000000010fc00000000000000000000000000000000000000000000000000000000000010fd00000000000000000000000000000000000000000000000000000000000010fe00000000000000000000000000000000000000000000000000000000000010ff0000000000000000000000000000000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000110100000000000000000000000000000000000000000000000000000000000011020000000000000000000000000000000000000000000000000000000000001103000000000000000000000000000000000000000000000000000000000000110400000000000000000000000000000000000000000000000000000000000011050000000000000000000000000000000000000000000000000000000000001106000000000000000000000000000000000000000000000000000000000000110700000000000000000000000000000000000000000000000000000000000011080000000000000000000000000000000000000000000000000000000000001109000000000000000000000000000000000000000000000000000000000000110a000000000000000000000000000000000000000000000000000000000000110b000000000000000000000000000000000000000000000000000000000000110c000000000000000000000000000000000000000000000000000000000000110d000000000000000000000000000000000000000000000000000000000000110e000000000000000000000000000000000000000000000000000000000000110f0000000000000000000000000000000000000000000000000000000000001110000000000000000000000000000000000000000000000000000000000000111100000000000000000000000000000000000000000000000000000000000011120000000000000000000000000000000000000000000000000000000000001113000000000000000000000000000000000000000000000000000000000000111400000000000000000000000000000000000000000000000000000000000011150000000000000000000000000000000000000000000000000000000000001116000000000000000000000000000000000000000000000000000000000000111700000000000000000000000000000000000000000000000000000000000011180000000000000000000000000000000000000000000000000000000000001119000000000000000000000000000000000000000000000000000000000000111a000000000000000000000000000000000000000000000000000000000000111b000000000000000000000000000000000000000000000000000000000000111c000000000000000000000000000000000000000000000000000000000000111d000000000000000000000000000000000000000000000000000000000000111e000000000000000000000000000000000000000000000000000000000000111f0000000000000000000000000000000000000000000000000000000000001120000000000000000000000000000000000000000000000000000000000000112100000000000000000000000000000000000000000000000000000000000011220000000000000000000000000000000000000000000000000000000000001123000000000000000000000000000000000000000000000000000000000000112400000000000000000000000000000000000000000000000000000000000011250000000000000000000000000000000000000000000000000000000000001126000000000000000000000000000000000000000000000000000000000000112700000000000000000000000000000000000000000000000000000000000011280000000000000000000000000000000000000000000000000000000000001129000000000000000000000000000000000000000000000000000000000000112a000000000000000000000000000000000000000000000000000000000000112b000000000000000000000000000000000000000000000000000000000000112c000000000000000000000000000000000000000000000000000000000000112d000000000000000000000000000000000000000000000000000000000000112e000000000000000000000000000000000000000000000000000000000000112f0000000000000000000000000000000000000000000000000000000000001130000000000000000000000000000000000000000000000000000000000000113100000000000000000000000000000000000000000000000000000000000011320000000000000000000000000000000000000000000000000000000000001133000000000000000000000000000000000000000000000000000000000000113400000000000000000000000000000000000000000000000000000000000011350000000000000000000000000000000000000000000000000000000000001136000000000000000000000000000000000000000000000000000000000000113700000000000000000000000000000000000000000000000000000000000011380000000000000000000000000000000000000000000000000000000000001139000000000000000000000000000000000000000000000000000000000000113a000000000000000000000000000000000000000000000000000000000000113b000000000000000000000000000000000000000000000000000000000000113c000000000000000000000000000000000000000000000000000000000000113d000000000000000000000000000000000000000000000000000000000000113e000000000000000000000000000000000000000000000000000000000000113f0000000000000000000000000000000000000000000000000000000000001140000000000000000000000000000000000000000000000000000000000000114100000000000000000000000000000000000000000000000000000000000011420000000000000000000000000000000000000000000000000000000000001143000000000000000000000000000000000000000000000000000000000000114400000000000000000000000000000000000000000000000000000000000011450000000000000000000000000000000000000000000000000000000000001146000000000000000000000000000000000000000000000000000000000000114700000000000000000000000000000000000000000000000000000000000011480000000000000000000000000000000000000000000000000000000000001149000000000000000000000000000000000000000000000000000000000000114a000000000000000000000000000000000000000000000000000000000000114b000000000000000000000000000000000000000000000000000000000000114c000000000000000000000000000000000000000000000000000000000000114d000000000000000000000000000000000000000000000000000000000000114e000000000000000000000000000000000000000000000000000000000000114f0000000000000000000000000000000000000000000000000000000000001150000000000000000000000000000000000000000000000000000000000000115100000000000000000000000000000000000000000000000000000000000011520000000000000000000000000000000000000000000000000000000000001153000000000000000000000000000000000000000000000000000000000000115400000000000000000000000000000000000000000000000000000000000011550000000000000000000000000000000000000000000000000000000000001156000000000000000000000000000000000000000000000000000000000000115700000000000000000000000000000000000000000000000000000000000011580000000000000000000000000000000000000000000000000000000000001159000000000000000000000000000000000000000000000000000000000000115a000000000000000000000000000000000000000000000000000000000000115b000000000000000000000000000000000000000000000000000000000000115c000000000000000000000000000000000000000000000000000000000000115d000000000000000000000000000000000000000000000000000000000000115e000000000000000000000000000000000000000000000000000000000000115f0000000000000000000000000000000000000000000000000000000000001160000000000000000000000000000000000000000000000000000000000000116100000000000000000000000000000000000000000000000000000000000011620000000000000000000000000000000000000000000000000000000000001163000000000000000000000000000000000000000000000000000000000000116400000000000000000000000000000000000000000000000000000000000011650000000000000000000000000000000000000000000000000000000000001166000000000000000000000000000000000000000000000000000000000000116700000000000000000000000000000000000000000000000000000000000011680000000000000000000000000000000000000000000000000000000000001169000000000000000000000000000000000000000000000000000000000000116a000000000000000000000000000000000000000000000000000000000000116b000000000000000000000000000000000000000000000000000000000000116c000000000000000000000000000000000000000000000000000000000000116d000000000000000000000000000000000000000000000000000000000000116e000000000000000000000000000000000000000000000000000000000000116f0000000000000000000000000000000000000000000000000000000000001170000000000000000000000000000000000000000000000000000000000000117100000000000000000000000000000000000000000000000000000000000011720000000000000000000000000000000000000000000000000000000000001173000000000000000000000000000000000000000000000000000000000000117400000000000000000000000000000000000000000000000000000000000011750000000000000000000000000000000000000000000000000000000000001176000000000000000000000000000000000000000000000000000000000000117700000000000000000000000000000000000000000000000000000000000011780000000000000000000000000000000000000000000000000000000000001179000000000000000000000000000000000000000000000000000000000000117a000000000000000000000000000000000000000000000000000000000000117b000000000000000000000000000000000000000000000000000000000000117c000000000000000000000000000000000000000000000000000000000000117d000000000000000000000000000000000000000000000000000000000000117e000000000000000000000000000000000000000000000000000000000000117f0000000000000000000000000000000000000000000000000000000000001180000000000000000000000000000000000000000000000000000000000000118100000000000000000000000000000000000000000000000000000000000011820000000000000000000000000000000000000000000000000000000000001183000000000000000000000000000000000000000000000000000000000000118400000000000000000000000000000000000000000000000000000000000011850000000000000000000000000000000000000000000000000000000000001186000000000000000000000000000000000000000000000000000000000000118700000000000000000000000000000000000000000000000000000000000011880000000000000000000000000000000000000000000000000000000000001189000000000000000000000000000000000000000000000000000000000000118a000000000000000000000000000000000000000000000000000000000000118b000000000000000000000000000000000000000000000000000000000000118c000000000000000000000000000000000000000000000000000000000000118d000000000000000000000000000000000000000000000000000000000000118e000000000000000000000000000000000000000000000000000000000000118f0000000000000000000000000000000000000000000000000000000000001190000000000000000000000000000000000000000000000000000000000000119100000000000000000000000000000000000000000000000000000000000011920000000000000000000000000000000000000000000000000000000000001193000000000000000000000000000000000000000000000000000000000000119400000000000000000000000000000000000000000000000000000000000011950000000000000000000000000000000000000000000000000000000000001196000000000000000000000000000000000000000000000000000000000000119700000000000000000000000000000000000000000000000000000000000011980000000000000000000000000000000000000000000000000000000000001199000000000000000000000000000000000000000000000000000000000000119a000000000000000000000000000000000000000000000000000000000000119b000000000000000000000000000000000000000000000000000000000000119c000000000000000000000000000000000000000000000000000000000000119d000000000000000000000000000000000000000000000000000000000000119e000000000000000000000000000000000000000000000000000000000000119f00000000000000000000000000000000000000000000000000000000000011a000000000000000000000000000000000000000000000000000000000000011a100000000000000000000000000000000000000000000000000000000000011a200000000000000000000000000000000000000000000000000000000000011a300000000000000000000000000000000000000000000000000000000000011a400000000000000000000000000000000000000000000000000000000000011a500000000000000000000000000000000000000000000000000000000000011a600000000000000000000000000000000000000000000000000000000000011a700000000000000000000000000000000000000000000000000000000000011a800000000000000000000000000000000000000000000000000000000000011a900000000000000000000000000000000000000000000000000000000000011aa00000000000000000000000000000000000000000000000000000000000011ab00000000000000000000000000000000000000000000000000000000000011ac00000000000000000000000000000000000000000000000000000000000011ad00000000000000000000000000000000000000000000000000000000000011ae00000000000000000000000000000000000000000000000000000000000011af00000000000000000000000000000000000000000000000000000000000011b000000000000000000000000000000000000000000000000000000000000011b100000000000000000000000000000000000000000000000000000000000011b200000000000000000000000000000000000000000000000000000000000011b300000000000000000000000000000000000000000000000000000000000011b400000000000000000000000000000000000000000000000000000000000011b500000000000000000000000000000000000000000000000000000000000011b600000000000000000000000000000000000000000000000000000000000011b700000000000000000000000000000000000000000000000000000000000011b800000000000000000000000000000000000000000000000000000000000011b900000000000000000000000000000000000000000000000000000000000011ba00000000000000000000000000000000000000000000000000000000000011bb00000000000000000000000000000000000000000000000000000000000011bc00000000000000000000000000000000000000000000000000000000000011bd00000000000000000000000000000000000000000000000000000000000011be00000000000000000000000000000000000000000000000000000000000011bf00000000000000000000000000000000000000000000000000000000000011c000000000000000000000000000000000000000000000000000000000000011c100000000000000000000000000000000000000000000000000000000000011c200000000000000000000000000000000000000000000000000000000000011c300000000000000000000000000000000000000000000000000000000000011c400000000000000000000000000000000000000000000000000000000000011c500000000000000000000000000000000000000000000000000000000000011c600000000000000000000000000000000000000000000000000000000000011c700000000000000000000000000000000000000000000000000000000000011c800000000000000000000000000000000000000000000000000000000000011c900000000000000000000000000000000000000000000000000000000000011ca00000000000000000000000000000000000000000000000000000000000011cb00000000000000000000000000000000000000000000000000000000000011cc00000000000000000000000000000000000000000000000000000000000011cd00000000000000000000000000000000000000000000000000000000000011ce00000000000000000000000000000000000000000000000000000000000011cf00000000000000000000000000000000000000000000000000000000000011d000000000000000000000000000000000000000000000000000000000000011d100000000000000000000000000000000000000000000000000000000000011d200000000000000000000000000000000000000000000000000000000000011d300000000000000000000000000000000000000000000000000000000000011d400000000000000000000000000000000000000000000000000000000000011d500000000000000000000000000000000000000000000000000000000000011d600000000000000000000000000000000000000000000000000000000000011d700000000000000000000000000000000000000000000000000000000000011d800000000000000000000000000000000000000000000000000000000000011d900000000000000000000000000000000000000000000000000000000000011da00000000000000000000000000000000000000000000000000000000000011db00000000000000000000000000000000000000000000000000000000000011dc00000000000000000000000000000000000000000000000000000000000011dd00000000000000000000000000000000000000000000000000000000000011de00000000000000000000000000000000000000000000000000000000000011df00000000000000000000000000000000000000000000000000000000000011e000000000000000000000000000000000000000000000000000000000000011e100000000000000000000000000000000000000000000000000000000000011e200000000000000000000000000000000000000000000000000000000000011e300000000000000000000000000000000000000000000000000000000000011e400000000000000000000000000000000000000000000000000000000000011e500000000000000000000000000000000000000000000000000000000000011e600000000000000000000000000000000000000000000000000000000000011e700000000000000000000000000000000000000000000000000000000000011e800000000000000000000000000000000000000000000000000000000000011e900000000000000000000000000000000000000000000000000000000000011ea00000000000000000000000000000000000000000000000000000000000011eb00000000000000000000000000000000000000000000000000000000000011ec00000000000000000000000000000000000000000000000000000000000011ed00000000000000000000000000000000000000000000000000000000000011ee00000000000000000000000000000000000000000000000000000000000011ef00000000000000000000000000000000000000000000000000000000000011f000000000000000000000000000000000000000000000000000000000000011f100000000000000000000000000000000000000000000000000000000000011f200000000000000000000000000000000000000000000000000000000000011f300000000000000000000000000000000000000000000000000000000000011f400000000000000000000000000000000000000000000000000000000000011f500000000000000000000000000000000000000000000000000000000000011f600000000000000000000000000000000000000000000000000000000000011f700000000000000000000000000000000000000000000000000000000000011f800000000000000000000000000000000000000000000000000000000000011f900000000000000000000000000000000000000000000000000000000000011fa00000000000000000000000000000000000000000000000000000000000011fb00000000000000000000000000000000000000000000000000000000000011fc00000000000000000000000000000000000000000000000000000000000011fd00000000000000000000000000000000000000000000000000000000000011fe00000000000000000000000000000000000000000000000000000000000011ff0000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000120100000000000000000000000000000000000000000000000000000000000012020000000000000000000000000000000000000000000000000000000000001203000000000000000000000000000000000000000000000000000000000000120400000000000000000000000000000000000000000000000000000000000012050000000000000000000000000000000000000000000000000000000000001206000000000000000000000000000000000000000000000000000000000000120700000000000000000000000000000000000000000000000000000000000012080000000000000000000000000000000000000000000000000000000000001209000000000000000000000000000000000000000000000000000000000000120a000000000000000000000000000000000000000000000000000000000000120b000000000000000000000000000000000000000000000000000000000000120c000000000000000000000000000000000000000000000000000000000000120d000000000000000000000000000000000000000000000000000000000000120e000000000000000000000000000000000000000000000000000000000000120f0000000000000000000000000000000000000000000000000000000000001210000000000000000000000000000000000000000000000000000000000000121100000000000000000000000000000000000000000000000000000000000012120000000000000000000000000000000000000000000000000000000000001213000000000000000000000000000000000000000000000000000000000000121400000000000000000000000000000000000000000000000000000000000012150000000000000000000000000000000000000000000000000000000000001216000000000000000000000000000000000000000000000000000000000000121700000000000000000000000000000000000000000000000000000000000012180000000000000000000000000000000000000000000000000000000000001219000000000000000000000000000000000000000000000000000000000000121a000000000000000000000000000000000000000000000000000000000000121b000000000000000000000000000000000000000000000000000000000000121c000000000000000000000000000000000000000000000000000000000000121d000000000000000000000000000000000000000000000000000000000000121e000000000000000000000000000000000000000000000000000000000000121f0000000000000000000000000000000000000000000000000000000000001220000000000000000000000000000000000000000000000000000000000000122100000000000000000000000000000000000000000000000000000000000012220000000000000000000000000000000000000000000000000000000000001223000000000000000000000000000000000000000000000000000000000000122400000000000000000000000000000000000000000000000000000000000012250000000000000000000000000000000000000000000000000000000000001226000000000000000000000000000000000000000000000000000000000000122700000000000000000000000000000000000000000000000000000000000012280000000000000000000000000000000000000000000000000000000000001229000000000000000000000000000000000000000000000000000000000000122a000000000000000000000000000000000000000000000000000000000000122b000000000000000000000000000000000000000000000000000000000000122c000000000000000000000000000000000000000000000000000000000000122d000000000000000000000000000000000000000000000000000000000000122e000000000000000000000000000000000000000000000000000000000000122f0000000000000000000000000000000000000000000000000000000000001230000000000000000000000000000000000000000000000000000000000000123100000000000000000000000000000000000000000000000000000000000012320000000000000000000000000000000000000000000000000000000000001233000000000000000000000000000000000000000000000000000000000000123400000000000000000000000000000000000000000000000000000000000012350000000000000000000000000000000000000000000000000000000000001236000000000000000000000000000000000000000000000000000000000000123700000000000000000000000000000000000000000000000000000000000012380000000000000000000000000000000000000000000000000000000000001239000000000000000000000000000000000000000000000000000000000000123a000000000000000000000000000000000000000000000000000000000000123b000000000000000000000000000000000000000000000000000000000000123c000000000000000000000000000000000000000000000000000000000000123d000000000000000000000000000000000000000000000000000000000000123e000000000000000000000000000000000000000000000000000000000000123f0000000000000000000000000000000000000000000000000000000000001240000000000000000000000000000000000000000000000000000000000000124100000000000000000000000000000000000000000000000000000000000012420000000000000000000000000000000000000000000000000000000000001243000000000000000000000000000000000000000000000000000000000000124400000000000000000000000000000000000000000000000000000000000012450000000000000000000000000000000000000000000000000000000000001246000000000000000000000000000000000000000000000000000000000000124700000000000000000000000000000000000000000000000000000000000012480000000000000000000000000000000000000000000000000000000000001249000000000000000000000000000000000000000000000000000000000000124a000000000000000000000000000000000000000000000000000000000000124b000000000000000000000000000000000000000000000000000000000000124c000000000000000000000000000000000000000000000000000000000000124d000000000000000000000000000000000000000000000000000000000000124e000000000000000000000000000000000000000000000000000000000000124f0000000000000000000000000000000000000000000000000000000000001250000000000000000000000000000000000000000000000000000000000000125100000000000000000000000000000000000000000000000000000000000012520000000000000000000000000000000000000000000000000000000000001253000000000000000000000000000000000000000000000000000000000000125400000000000000000000000000000000000000000000000000000000000012550000000000000000000000000000000000000000000000000000000000001256000000000000000000000000000000000000000000000000000000000000125700000000000000000000000000000000000000000000000000000000000012580000000000000000000000000000000000000000000000000000000000001259000000000000000000000000000000000000000000000000000000000000125a000000000000000000000000000000000000000000000000000000000000125b000000000000000000000000000000000000000000000000000000000000125c000000000000000000000000000000000000000000000000000000000000125d000000000000000000000000000000000000000000000000000000000000125e000000000000000000000000000000000000000000000000000000000000125f0000000000000000000000000000000000000000000000000000000000001260000000000000000000000000000000000000000000000000000000000000126100000000000000000000000000000000000000000000000000000000000012620000000000000000000000000000000000000000000000000000000000001263000000000000000000000000000000000000000000000000000000000000126400000000000000000000000000000000000000000000000000000000000012650000000000000000000000000000000000000000000000000000000000001266000000000000000000000000000000000000000000000000000000000000126700000000000000000000000000000000000000000000000000000000000012680000000000000000000000000000000000000000000000000000000000001269000000000000000000000000000000000000000000000000000000000000126a000000000000000000000000000000000000000000000000000000000000126b000000000000000000000000000000000000000000000000000000000000126c000000000000000000000000000000000000000000000000000000000000126d000000000000000000000000000000000000000000000000000000000000126e000000000000000000000000000000000000000000000000000000000000126f0000000000000000000000000000000000000000000000000000000000001270000000000000000000000000000000000000000000000000000000000000127100000000000000000000000000000000000000000000000000000000000012720000000000000000000000000000000000000000000000000000000000001273000000000000000000000000000000000000000000000000000000000000127400000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000000000000001276000000000000000000000000000000000000000000000000000000000000127700000000000000000000000000000000000000000000000000000000000012780000000000000000000000000000000000000000000000000000000000001279000000000000000000000000000000000000000000000000000000000000127a000000000000000000000000000000000000000000000000000000000000127b000000000000000000000000000000000000000000000000000000000000127c000000000000000000000000000000000000000000000000000000000000127d000000000000000000000000000000000000000000000000000000000000127e000000000000000000000000000000000000000000000000000000000000127f0000000000000000000000000000000000000000000000000000000000001280000000000000000000000000000000000000000000000000000000000000128100000000000000000000000000000000000000000000000000000000000012820000000000000000000000000000000000000000000000000000000000001283000000000000000000000000000000000000000000000000000000000000128400000000000000000000000000000000000000000000000000000000000012850000000000000000000000000000000000000000000000000000000000001286000000000000000000000000000000000000000000000000000000000000128700000000000000000000000000000000000000000000000000000000000012880000000000000000000000000000000000000000000000000000000000001289000000000000000000000000000000000000000000000000000000000000128a000000000000000000000000000000000000000000000000000000000000128b000000000000000000000000000000000000000000000000000000000000128c000000000000000000000000000000000000000000000000000000000000128d000000000000000000000000000000000000000000000000000000000000128e000000000000000000000000000000000000000000000000000000000000128f0000000000000000000000000000000000000000000000000000000000001290000000000000000000000000000000000000000000000000000000000000129100000000000000000000000000000000000000000000000000000000000012920000000000000000000000000000000000000000000000000000000000001293000000000000000000000000000000000000000000000000000000000000129400000000000000000000000000000000000000000000000000000000000012950000000000000000000000000000000000000000000000000000000000001296000000000000000000000000000000000000000000000000000000000000129700000000000000000000000000000000000000000000000000000000000012980000000000000000000000000000000000000000000000000000000000001299000000000000000000000000000000000000000000000000000000000000129a000000000000000000000000000000000000000000000000000000000000129b000000000000000000000000000000000000000000000000000000000000129c000000000000000000000000000000000000000000000000000000000000129d000000000000000000000000000000000000000000000000000000000000129e000000000000000000000000000000000000000000000000000000000000129f00000000000000000000000000000000000000000000000000000000000012a000000000000000000000000000000000000000000000000000000000000012a100000000000000000000000000000000000000000000000000000000000012a200000000000000000000000000000000000000000000000000000000000012a300000000000000000000000000000000000000000000000000000000000012a400000000000000000000000000000000000000000000000000000000000012a500000000000000000000000000000000000000000000000000000000000012a600000000000000000000000000000000000000000000000000000000000012a700000000000000000000000000000000000000000000000000000000000012a800000000000000000000000000000000000000000000000000000000000012a900000000000000000000000000000000000000000000000000000000000012aa00000000000000000000000000000000000000000000000000000000000012ab00000000000000000000000000000000000000000000000000000000000012ac00000000000000000000000000000000000000000000000000000000000012ad00000000000000000000000000000000000000000000000000000000000012ae00000000000000000000000000000000000000000000000000000000000012af00000000000000000000000000000000000000000000000000000000000012b000000000000000000000000000000000000000000000000000000000000012b100000000000000000000000000000000000000000000000000000000000012b200000000000000000000000000000000000000000000000000000000000012b300000000000000000000000000000000000000000000000000000000000012b400000000000000000000000000000000000000000000000000000000000012b500000000000000000000000000000000000000000000000000000000000012b600000000000000000000000000000000000000000000000000000000000012b700000000000000000000000000000000000000000000000000000000000012b800000000000000000000000000000000000000000000000000000000000012b900000000000000000000000000000000000000000000000000000000000012ba00000000000000000000000000000000000000000000000000000000000012bb00000000000000000000000000000000000000000000000000000000000012bc00000000000000000000000000000000000000000000000000000000000012bd00000000000000000000000000000000000000000000000000000000000012be00000000000000000000000000000000000000000000000000000000000012bf00000000000000000000000000000000000000000000000000000000000012c000000000000000000000000000000000000000000000000000000000000012c100000000000000000000000000000000000000000000000000000000000012c200000000000000000000000000000000000000000000000000000000000012c300000000000000000000000000000000000000000000000000000000000012c400000000000000000000000000000000000000000000000000000000000012c500000000000000000000000000000000000000000000000000000000000012c600000000000000000000000000000000000000000000000000000000000012c700000000000000000000000000000000000000000000000000000000000012c800000000000000000000000000000000000000000000000000000000000012c900000000000000000000000000000000000000000000000000000000000012ca00000000000000000000000000000000000000000000000000000000000012cb00000000000000000000000000000000000000000000000000000000000012cc00000000000000000000000000000000000000000000000000000000000012cd00000000000000000000000000000000000000000000000000000000000012ce00000000000000000000000000000000000000000000000000000000000012cf00000000000000000000000000000000000000000000000000000000000012d000000000000000000000000000000000000000000000000000000000000012d100000000000000000000000000000000000000000000000000000000000012d200000000000000000000000000000000000000000000000000000000000012d300000000000000000000000000000000000000000000000000000000000012d400000000000000000000000000000000000000000000000000000000000012d500000000000000000000000000000000000000000000000000000000000012d600000000000000000000000000000000000000000000000000000000000012d700000000000000000000000000000000000000000000000000000000000012d800000000000000000000000000000000000000000000000000000000000012d900000000000000000000000000000000000000000000000000000000000012da00000000000000000000000000000000000000000000000000000000000012db00000000000000000000000000000000000000000000000000000000000012dc00000000000000000000000000000000000000000000000000000000000012dd00000000000000000000000000000000000000000000000000000000000012de00000000000000000000000000000000000000000000000000000000000012df00000000000000000000000000000000000000000000000000000000000012e000000000000000000000000000000000000000000000000000000000000012e100000000000000000000000000000000000000000000000000000000000012e200000000000000000000000000000000000000000000000000000000000012e300000000000000000000000000000000000000000000000000000000000012e400000000000000000000000000000000000000000000000000000000000012e500000000000000000000000000000000000000000000000000000000000012e600000000000000000000000000000000000000000000000000000000000012e700000000000000000000000000000000000000000000000000000000000012e800000000000000000000000000000000000000000000000000000000000012e900000000000000000000000000000000000000000000000000000000000012ea00000000000000000000000000000000000000000000000000000000000012eb00000000000000000000000000000000000000000000000000000000000012ec00000000000000000000000000000000000000000000000000000000000012ed00000000000000000000000000000000000000000000000000000000000012ee00000000000000000000000000000000000000000000000000000000000012ef00000000000000000000000000000000000000000000000000000000000012f000000000000000000000000000000000000000000000000000000000000012f100000000000000000000000000000000000000000000000000000000000012f200000000000000000000000000000000000000000000000000000000000012f300000000000000000000000000000000000000000000000000000000000012f400000000000000000000000000000000000000000000000000000000000012f500000000000000000000000000000000000000000000000000000000000012f600000000000000000000000000000000000000000000000000000000000012f700000000000000000000000000000000000000000000000000000000000012f800000000000000000000000000000000000000000000000000000000000012f900000000000000000000000000000000000000000000000000000000000012fa00000000000000000000000000000000000000000000000000000000000012fb00000000000000000000000000000000000000000000000000000000000012fc00000000000000000000000000000000000000000000000000000000000012fd00000000000000000000000000000000000000000000000000000000000012fe00000000000000000000000000000000000000000000000000000000000012ff0000000000000000000000000000000000000000000000000000000000001300000000000000000000000000000000000000000000000000000000000000130100000000000000000000000000000000000000000000000000000000000013020000000000000000000000000000000000000000000000000000000000001303000000000000000000000000000000000000000000000000000000000000130400000000000000000000000000000000000000000000000000000000000013050000000000000000000000000000000000000000000000000000000000001306000000000000000000000000000000000000000000000000000000000000130700000000000000000000000000000000000000000000000000000000000013080000000000000000000000000000000000000000000000000000000000001309000000000000000000000000000000000000000000000000000000000000130a000000000000000000000000000000000000000000000000000000000000130b000000000000000000000000000000000000000000000000000000000000130c000000000000000000000000000000000000000000000000000000000000130d000000000000000000000000000000000000000000000000000000000000130e000000000000000000000000000000000000000000000000000000000000130f0000000000000000000000000000000000000000000000000000000000001310000000000000000000000000000000000000000000000000000000000000131100000000000000000000000000000000000000000000000000000000000013120000000000000000000000000000000000000000000000000000000000001313000000000000000000000000000000000000000000000000000000000000131400000000000000000000000000000000000000000000000000000000000013150000000000000000000000000000000000000000000000000000000000001316000000000000000000000000000000000000000000000000000000000000131700000000000000000000000000000000000000000000000000000000000013180000000000000000000000000000000000000000000000000000000000001319000000000000000000000000000000000000000000000000000000000000131a000000000000000000000000000000000000000000000000000000000000131b000000000000000000000000000000000000000000000000000000000000131c000000000000000000000000000000000000000000000000000000000000131d000000000000000000000000000000000000000000000000000000000000131e000000000000000000000000000000000000000000000000000000000000131f0000000000000000000000000000000000000000000000000000000000001320000000000000000000000000000000000000000000000000000000000000132100000000000000000000000000000000000000000000000000000000000013220000000000000000000000000000000000000000000000000000000000001323000000000000000000000000000000000000000000000000000000000000132400000000000000000000000000000000000000000000000000000000000013250000000000000000000000000000000000000000000000000000000000001326000000000000000000000000000000000000000000000000000000000000132700000000000000000000000000000000000000000000000000000000000013280000000000000000000000000000000000000000000000000000000000001329000000000000000000000000000000000000000000000000000000000000132a000000000000000000000000000000000000000000000000000000000000132b000000000000000000000000000000000000000000000000000000000000132c000000000000000000000000000000000000000000000000000000000000132d000000000000000000000000000000000000000000000000000000000000132e000000000000000000000000000000000000000000000000000000000000132f0000000000000000000000000000000000000000000000000000000000001330000000000000000000000000000000000000000000000000000000000000133100000000000000000000000000000000000000000000000000000000000013320000000000000000000000000000000000000000000000000000000000001333000000000000000000000000000000000000000000000000000000000000133400000000000000000000000000000000000000000000000000000000000013350000000000000000000000000000000000000000000000000000000000001336000000000000000000000000000000000000000000000000000000000000133700000000000000000000000000000000000000000000000000000000000013380000000000000000000000000000000000000000000000000000000000001339000000000000000000000000000000000000000000000000000000000000133a000000000000000000000000000000000000000000000000000000000000133b000000000000000000000000000000000000000000000000000000000000133c000000000000000000000000000000000000000000000000000000000000133d000000000000000000000000000000000000000000000000000000000000133e000000000000000000000000000000000000000000000000000000000000133f0000000000000000000000000000000000000000000000000000000000001340000000000000000000000000000000000000000000000000000000000000134100000000000000000000000000000000000000000000000000000000000013420000000000000000000000000000000000000000000000000000000000001343000000000000000000000000000000000000000000000000000000000000134400000000000000000000000000000000000000000000000000000000000013450000000000000000000000000000000000000000000000000000000000001346000000000000000000000000000000000000000000000000000000000000134700000000000000000000000000000000000000000000000000000000000013480000000000000000000000000000000000000000000000000000000000001349000000000000000000000000000000000000000000000000000000000000134a000000000000000000000000000000000000000000000000000000000000134b000000000000000000000000000000000000000000000000000000000000134c000000000000000000000000000000000000000000000000000000000000134d000000000000000000000000000000000000000000000000000000000000134e000000000000000000000000000000000000000000000000000000000000134f0000000000000000000000000000000000000000000000000000000000001350000000000000000000000000000000000000000000000000000000000000135100000000000000000000000000000000000000000000000000000000000013520000000000000000000000000000000000000000000000000000000000001353000000000000000000000000000000000000000000000000000000000000135400000000000000000000000000000000000000000000000000000000000013550000000000000000000000000000000000000000000000000000000000001356000000000000000000000000000000000000000000000000000000000000135700000000000000000000000000000000000000000000000000000000000013580000000000000000000000000000000000000000000000000000000000001359000000000000000000000000000000000000000000000000000000000000135a000000000000000000000000000000000000000000000000000000000000135b000000000000000000000000000000000000000000000000000000000000135c000000000000000000000000000000000000000000000000000000000000135d000000000000000000000000000000000000000000000000000000000000135e000000000000000000000000000000000000000000000000000000000000135f0000000000000000000000000000000000000000000000000000000000001360000000000000000000000000000000000000000000000000000000000000136100000000000000000000000000000000000000000000000000000000000013620000000000000000000000000000000000000000000000000000000000001363000000000000000000000000000000000000000000000000000000000000136400000000000000000000000000000000000000000000000000000000000013650000000000000000000000000000000000000000000000000000000000001366000000000000000000000000000000000000000000000000000000000000136700000000000000000000000000000000000000000000000000000000000013680000000000000000000000000000000000000000000000000000000000001369000000000000000000000000000000000000000000000000000000000000136a000000000000000000000000000000000000000000000000000000000000136b000000000000000000000000000000000000000000000000000000000000136c000000000000000000000000000000000000000000000000000000000000136d000000000000000000000000000000000000000000000000000000000000136e000000000000000000000000000000000000000000000000000000000000136f0000000000000000000000000000000000000000000000000000000000001370000000000000000000000000000000000000000000000000000000000000137100000000000000000000000000000000000000000000000000000000000013720000000000000000000000000000000000000000000000000000000000001373000000000000000000000000000000000000000000000000000000000000137400000000000000000000000000000000000000000000000000000000000013750000000000000000000000000000000000000000000000000000000000001376000000000000000000000000000000000000000000000000000000000000137700000000000000000000000000000000000000000000000000000000000013780000000000000000000000000000000000000000000000000000000000001379000000000000000000000000000000000000000000000000000000000000137a000000000000000000000000000000000000000000000000000000000000137b000000000000000000000000000000000000000000000000000000000000137c000000000000000000000000000000000000000000000000000000000000137d000000000000000000000000000000000000000000000000000000000000137e000000000000000000000000000000000000000000000000000000000000137f0000000000000000000000000000000000000000000000000000000000001380000000000000000000000000000000000000000000000000000000000000138100000000000000000000000000000000000000000000000000000000000013820000000000000000000000000000000000000000000000000000000000001383000000000000000000000000000000000000000000000000000000000000138400000000000000000000000000000000000000000000000000000000000013850000000000000000000000000000000000000000000000000000000000001386000000000000000000000000000000000000000000000000000000000000138700000000000000000000000000000000000000000000000000000000000013880000000000000000000000000000000000000000000000000000000000001389000000000000000000000000000000000000000000000000000000000000138a000000000000000000000000000000000000000000000000000000000000138b000000000000000000000000000000000000000000000000000000000000138c000000000000000000000000000000000000000000000000000000000000138d000000000000000000000000000000000000000000000000000000000000138e000000000000000000000000000000000000000000000000000000000000138f0000000000000000000000000000000000000000000000000000000000001390000000000000000000000000000000000000000000000000000000000000139100000000000000000000000000000000000000000000000000000000000013920000000000000000000000000000000000000000000000000000000000001393000000000000000000000000000000000000000000000000000000000000139400000000000000000000000000000000000000000000000000000000000013950000000000000000000000000000000000000000000000000000000000001396000000000000000000000000000000000000000000000000000000000000139700000000000000000000000000000000000000000000000000000000000013980000000000000000000000000000000000000000000000000000000000001399000000000000000000000000000000000000000000000000000000000000139a000000000000000000000000000000000000000000000000000000000000139b000000000000000000000000000000000000000000000000000000000000139c000000000000000000000000000000000000000000000000000000000000139d000000000000000000000000000000000000000000000000000000000000139e000000000000000000000000000000000000000000000000000000000000139f00000000000000000000000000000000000000000000000000000000000013a000000000000000000000000000000000000000000000000000000000000013a100000000000000000000000000000000000000000000000000000000000013a200000000000000000000000000000000000000000000000000000000000013a300000000000000000000000000000000000000000000000000000000000013a400000000000000000000000000000000000000000000000000000000000013a500000000000000000000000000000000000000000000000000000000000013a600000000000000000000000000000000000000000000000000000000000013a700000000000000000000000000000000000000000000000000000000000013a800000000000000000000000000000000000000000000000000000000000013a900000000000000000000000000000000000000000000000000000000000013aa00000000000000000000000000000000000000000000000000000000000013ab00000000000000000000000000000000000000000000000000000000000013ac00000000000000000000000000000000000000000000000000000000000013ad00000000000000000000000000000000000000000000000000000000000013ae00000000000000000000000000000000000000000000000000000000000013af00000000000000000000000000000000000000000000000000000000000013b000000000000000000000000000000000000000000000000000000000000013b100000000000000000000000000000000000000000000000000000000000013b200000000000000000000000000000000000000000000000000000000000013b300000000000000000000000000000000000000000000000000000000000013b400000000000000000000000000000000000000000000000000000000000013b500000000000000000000000000000000000000000000000000000000000013b600000000000000000000000000000000000000000000000000000000000013b700000000000000000000000000000000000000000000000000000000000013b800000000000000000000000000000000000000000000000000000000000013b900000000000000000000000000000000000000000000000000000000000013ba00000000000000000000000000000000000000000000000000000000000013bb00000000000000000000000000000000000000000000000000000000000013bc00000000000000000000000000000000000000000000000000000000000013bd00000000000000000000000000000000000000000000000000000000000013be00000000000000000000000000000000000000000000000000000000000013bf00000000000000000000000000000000000000000000000000000000000013c000000000000000000000000000000000000000000000000000000000000013c100000000000000000000000000000000000000000000000000000000000013c200000000000000000000000000000000000000000000000000000000000013c300000000000000000000000000000000000000000000000000000000000013c400000000000000000000000000000000000000000000000000000000000013c500000000000000000000000000000000000000000000000000000000000013c600000000000000000000000000000000000000000000000000000000000013c700000000000000000000000000000000000000000000000000000000000013c800000000000000000000000000000000000000000000000000000000000013c900000000000000000000000000000000000000000000000000000000000013ca00000000000000000000000000000000000000000000000000000000000013cb00000000000000000000000000000000000000000000000000000000000013cc00000000000000000000000000000000000000000000000000000000000013cd00000000000000000000000000000000000000000000000000000000000013ce00000000000000000000000000000000000000000000000000000000000013cf00000000000000000000000000000000000000000000000000000000000013d000000000000000000000000000000000000000000000000000000000000013d100000000000000000000000000000000000000000000000000000000000013d200000000000000000000000000000000000000000000000000000000000013d300000000000000000000000000000000000000000000000000000000000013d400000000000000000000000000000000000000000000000000000000000013d500000000000000000000000000000000000000000000000000000000000013d600000000000000000000000000000000000000000000000000000000000013d700000000000000000000000000000000000000000000000000000000000013d800000000000000000000000000000000000000000000000000000000000013d900000000000000000000000000000000000000000000000000000000000013da00000000000000000000000000000000000000000000000000000000000013db00000000000000000000000000000000000000000000000000000000000013dc00000000000000000000000000000000000000000000000000000000000013dd00000000000000000000000000000000000000000000000000000000000013de00000000000000000000000000000000000000000000000000000000000013df00000000000000000000000000000000000000000000000000000000000013e000000000000000000000000000000000000000000000000000000000000013e100000000000000000000000000000000000000000000000000000000000013e200000000000000000000000000000000000000000000000000000000000013e300000000000000000000000000000000000000000000000000000000000013e400000000000000000000000000000000000000000000000000000000000013e500000000000000000000000000000000000000000000000000000000000013e600000000000000000000000000000000000000000000000000000000000013e700000000000000000000000000000000000000000000000000000000000013e800000000000000000000000000000000000000000000000000000000000013e900000000000000000000000000000000000000000000000000000000000013ea00000000000000000000000000000000000000000000000000000000000013eb00000000000000000000000000000000000000000000000000000000000013ec00000000000000000000000000000000000000000000000000000000000013ed00000000000000000000000000000000000000000000000000000000000013ee00000000000000000000000000000000000000000000000000000000000013ef00000000000000000000000000000000000000000000000000000000000013f000000000000000000000000000000000000000000000000000000000000013f100000000000000000000000000000000000000000000000000000000000013f200000000000000000000000000000000000000000000000000000000000013f300000000000000000000000000000000000000000000000000000000000013f400000000000000000000000000000000000000000000000000000000000013f500000000000000000000000000000000000000000000000000000000000013f600000000000000000000000000000000000000000000000000000000000013f700000000000000000000000000000000000000000000000000000000000013f800000000000000000000000000000000000000000000000000000000000013f900000000000000000000000000000000000000000000000000000000000013fa00000000000000000000000000000000000000000000000000000000000013fb00000000000000000000000000000000000000000000000000000000000013fc00000000000000000000000000000000000000000000000000000000000013fd00000000000000000000000000000000000000000000000000000000000013fe00000000000000000000000000000000000000000000000000000000000013ff0000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000140100000000000000000000000000000000000000000000000000000000000014020000000000000000000000000000000000000000000000000000000000001403000000000000000000000000000000000000000000000000000000000000140400000000000000000000000000000000000000000000000000000000000014050000000000000000000000000000000000000000000000000000000000001406000000000000000000000000000000000000000000000000000000000000140700000000000000000000000000000000000000000000000000000000000014080000000000000000000000000000000000000000000000000000000000001409000000000000000000000000000000000000000000000000000000000000140a000000000000000000000000000000000000000000000000000000000000140b000000000000000000000000000000000000000000000000000000000000140c000000000000000000000000000000000000000000000000000000000000140d000000000000000000000000000000000000000000000000000000000000140e000000000000000000000000000000000000000000000000000000000000140f0000000000000000000000000000000000000000000000000000000000001410000000000000000000000000000000000000000000000000000000000000141100000000000000000000000000000000000000000000000000000000000014120000000000000000000000000000000000000000000000000000000000001413000000000000000000000000000000000000000000000000000000000000141400000000000000000000000000000000000000000000000000000000000014150000000000000000000000000000000000000000000000000000000000001416000000000000000000000000000000000000000000000000000000000000141700000000000000000000000000000000000000000000000000000000000014180000000000000000000000000000000000000000000000000000000000001419000000000000000000000000000000000000000000000000000000000000141a000000000000000000000000000000000000000000000000000000000000141b000000000000000000000000000000000000000000000000000000000000141c000000000000000000000000000000000000000000000000000000000000141d000000000000000000000000000000000000000000000000000000000000141e000000000000000000000000000000000000000000000000000000000000141f0000000000000000000000000000000000000000000000000000000000001420000000000000000000000000000000000000000000000000000000000000142100000000000000000000000000000000000000000000000000000000000014220000000000000000000000000000000000000000000000000000000000001423000000000000000000000000000000000000000000000000000000000000142400000000000000000000000000000000000000000000000000000000000014250000000000000000000000000000000000000000000000000000000000001426000000000000000000000000000000000000000000000000000000000000142700000000000000000000000000000000000000000000000000000000000014280000000000000000000000000000000000000000000000000000000000001429000000000000000000000000000000000000000000000000000000000000142a000000000000000000000000000000000000000000000000000000000000142b000000000000000000000000000000000000000000000000000000000000142c000000000000000000000000000000000000000000000000000000000000142d000000000000000000000000000000000000000000000000000000000000142e000000000000000000000000000000000000000000000000000000000000142f0000000000000000000000000000000000000000000000000000000000001430000000000000000000000000000000000000000000000000000000000000143100000000000000000000000000000000000000000000000000000000000014320000000000000000000000000000000000000000000000000000000000001433000000000000000000000000000000000000000000000000000000000000143400000000000000000000000000000000000000000000000000000000000014350000000000000000000000000000000000000000000000000000000000001436000000000000000000000000000000000000000000000000000000000000143700000000000000000000000000000000000000000000000000000000000014380000000000000000000000000000000000000000000000000000000000001439000000000000000000000000000000000000000000000000000000000000143a000000000000000000000000000000000000000000000000000000000000143b000000000000000000000000000000000000000000000000000000000000143c000000000000000000000000000000000000000000000000000000000000143d000000000000000000000000000000000000000000000000000000000000143e000000000000000000000000000000000000000000000000000000000000143f0000000000000000000000000000000000000000000000000000000000001440000000000000000000000000000000000000000000000000000000000000144100000000000000000000000000000000000000000000000000000000000014420000000000000000000000000000000000000000000000000000000000001443000000000000000000000000000000000000000000000000000000000000144400000000000000000000000000000000000000000000000000000000000014450000000000000000000000000000000000000000000000000000000000001446000000000000000000000000000000000000000000000000000000000000144700000000000000000000000000000000000000000000000000000000000014480000000000000000000000000000000000000000000000000000000000001449000000000000000000000000000000000000000000000000000000000000144a000000000000000000000000000000000000000000000000000000000000144b000000000000000000000000000000000000000000000000000000000000144c000000000000000000000000000000000000000000000000000000000000144d000000000000000000000000000000000000000000000000000000000000144e000000000000000000000000000000000000000000000000000000000000144f0000000000000000000000000000000000000000000000000000000000001450000000000000000000000000000000000000000000000000000000000000145100000000000000000000000000000000000000000000000000000000000014520000000000000000000000000000000000000000000000000000000000001453000000000000000000000000000000000000000000000000000000000000145400000000000000000000000000000000000000000000000000000000000014550000000000000000000000000000000000000000000000000000000000001456000000000000000000000000000000000000000000000000000000000000145700000000000000000000000000000000000000000000000000000000000014580000000000000000000000000000000000000000000000000000000000001459000000000000000000000000000000000000000000000000000000000000145a000000000000000000000000000000000000000000000000000000000000145b000000000000000000000000000000000000000000000000000000000000145c000000000000000000000000000000000000000000000000000000000000145d000000000000000000000000000000000000000000000000000000000000145e000000000000000000000000000000000000000000000000000000000000145f0000000000000000000000000000000000000000000000000000000000001460000000000000000000000000000000000000000000000000000000000000146100000000000000000000000000000000000000000000000000000000000014620000000000000000000000000000000000000000000000000000000000001463000000000000000000000000000000000000000000000000000000000000146400000000000000000000000000000000000000000000000000000000000014650000000000000000000000000000000000000000000000000000000000001466000000000000000000000000000000000000000000000000000000000000146700000000000000000000000000000000000000000000000000000000000014680000000000000000000000000000000000000000000000000000000000001469000000000000000000000000000000000000000000000000000000000000146a000000000000000000000000000000000000000000000000000000000000146b000000000000000000000000000000000000000000000000000000000000146c000000000000000000000000000000000000000000000000000000000000146d000000000000000000000000000000000000000000000000000000000000146e000000000000000000000000000000000000000000000000000000000000146f0000000000000000000000000000000000000000000000000000000000001470000000000000000000000000000000000000000000000000000000000000147100000000000000000000000000000000000000000000000000000000000014720000000000000000000000000000000000000000000000000000000000001473000000000000000000000000000000000000000000000000000000000000147400000000000000000000000000000000000000000000000000000000000014750000000000000000000000000000000000000000000000000000000000001476000000000000000000000000000000000000000000000000000000000000147700000000000000000000000000000000000000000000000000000000000014780000000000000000000000000000000000000000000000000000000000001479000000000000000000000000000000000000000000000000000000000000147a000000000000000000000000000000000000000000000000000000000000147b000000000000000000000000000000000000000000000000000000000000147c000000000000000000000000000000000000000000000000000000000000147d000000000000000000000000000000000000000000000000000000000000147e000000000000000000000000000000000000000000000000000000000000147f0000000000000000000000000000000000000000000000000000000000001480000000000000000000000000000000000000000000000000000000000000148100000000000000000000000000000000000000000000000000000000000014820000000000000000000000000000000000000000000000000000000000001483000000000000000000000000000000000000000000000000000000000000148400000000000000000000000000000000000000000000000000000000000014850000000000000000000000000000000000000000000000000000000000001486000000000000000000000000000000000000000000000000000000000000148700000000000000000000000000000000000000000000000000000000000014880000000000000000000000000000000000000000000000000000000000001489000000000000000000000000000000000000000000000000000000000000148a000000000000000000000000000000000000000000000000000000000000148b000000000000000000000000000000000000000000000000000000000000148c000000000000000000000000000000000000000000000000000000000000148d000000000000000000000000000000000000000000000000000000000000148e000000000000000000000000000000000000000000000000000000000000148f0000000000000000000000000000000000000000000000000000000000001490000000000000000000000000000000000000000000000000000000000000149100000000000000000000000000000000000000000000000000000000000014920000000000000000000000000000000000000000000000000000000000001493000000000000000000000000000000000000000000000000000000000000149400000000000000000000000000000000000000000000000000000000000014950000000000000000000000000000000000000000000000000000000000001496000000000000000000000000000000000000000000000000000000000000149700000000000000000000000000000000000000000000000000000000000014980000000000000000000000000000000000000000000000000000000000001499000000000000000000000000000000000000000000000000000000000000149a000000000000000000000000000000000000000000000000000000000000149b000000000000000000000000000000000000000000000000000000000000149c000000000000000000000000000000000000000000000000000000000000149d000000000000000000000000000000000000000000000000000000000000149e000000000000000000000000000000000000000000000000000000000000149f00000000000000000000000000000000000000000000000000000000000014a000000000000000000000000000000000000000000000000000000000000014a100000000000000000000000000000000000000000000000000000000000014a200000000000000000000000000000000000000000000000000000000000014a300000000000000000000000000000000000000000000000000000000000014a400000000000000000000000000000000000000000000000000000000000014a500000000000000000000000000000000000000000000000000000000000014a600000000000000000000000000000000000000000000000000000000000014a700000000000000000000000000000000000000000000000000000000000014a800000000000000000000000000000000000000000000000000000000000014a900000000000000000000000000000000000000000000000000000000000014aa00000000000000000000000000000000000000000000000000000000000014ab00000000000000000000000000000000000000000000000000000000000014ac00000000000000000000000000000000000000000000000000000000000014ad00000000000000000000000000000000000000000000000000000000000014ae00000000000000000000000000000000000000000000000000000000000014af00000000000000000000000000000000000000000000000000000000000014b000000000000000000000000000000000000000000000000000000000000014b100000000000000000000000000000000000000000000000000000000000014b200000000000000000000000000000000000000000000000000000000000014b300000000000000000000000000000000000000000000000000000000000014b400000000000000000000000000000000000000000000000000000000000014b500000000000000000000000000000000000000000000000000000000000014b600000000000000000000000000000000000000000000000000000000000014b700000000000000000000000000000000000000000000000000000000000014b800000000000000000000000000000000000000000000000000000000000014b900000000000000000000000000000000000000000000000000000000000014ba00000000000000000000000000000000000000000000000000000000000014bb00000000000000000000000000000000000000000000000000000000000014bc00000000000000000000000000000000000000000000000000000000000014bd00000000000000000000000000000000000000000000000000000000000014be00000000000000000000000000000000000000000000000000000000000014bf00000000000000000000000000000000000000000000000000000000000014c000000000000000000000000000000000000000000000000000000000000014c100000000000000000000000000000000000000000000000000000000000014c200000000000000000000000000000000000000000000000000000000000014c300000000000000000000000000000000000000000000000000000000000014c400000000000000000000000000000000000000000000000000000000000014c500000000000000000000000000000000000000000000000000000000000014c600000000000000000000000000000000000000000000000000000000000014c700000000000000000000000000000000000000000000000000000000000014c800000000000000000000000000000000000000000000000000000000000014c900000000000000000000000000000000000000000000000000000000000014ca00000000000000000000000000000000000000000000000000000000000014cb00000000000000000000000000000000000000000000000000000000000014cc00000000000000000000000000000000000000000000000000000000000014cd00000000000000000000000000000000000000000000000000000000000014ce00000000000000000000000000000000000000000000000000000000000014cf00000000000000000000000000000000000000000000000000000000000014d000000000000000000000000000000000000000000000000000000000000014d100000000000000000000000000000000000000000000000000000000000014d200000000000000000000000000000000000000000000000000000000000014d300000000000000000000000000000000000000000000000000000000000014d400000000000000000000000000000000000000000000000000000000000014d500000000000000000000000000000000000000000000000000000000000014d600000000000000000000000000000000000000000000000000000000000014d700000000000000000000000000000000000000000000000000000000000014d800000000000000000000000000000000000000000000000000000000000014d900000000000000000000000000000000000000000000000000000000000014da00000000000000000000000000000000000000000000000000000000000014db00000000000000000000000000000000000000000000000000000000000014dc00000000000000000000000000000000000000000000000000000000000014dd00000000000000000000000000000000000000000000000000000000000014de00000000000000000000000000000000000000000000000000000000000014df00000000000000000000000000000000000000000000000000000000000014e000000000000000000000000000000000000000000000000000000000000014e100000000000000000000000000000000000000000000000000000000000014e200000000000000000000000000000000000000000000000000000000000014e300000000000000000000000000000000000000000000000000000000000014e400000000000000000000000000000000000000000000000000000000000014e500000000000000000000000000000000000000000000000000000000000014e600000000000000000000000000000000000000000000000000000000000014e700000000000000000000000000000000000000000000000000000000000014e800000000000000000000000000000000000000000000000000000000000014e900000000000000000000000000000000000000000000000000000000000014ea00000000000000000000000000000000000000000000000000000000000014eb00000000000000000000000000000000000000000000000000000000000014ec00000000000000000000000000000000000000000000000000000000000014ed00000000000000000000000000000000000000000000000000000000000014ee00000000000000000000000000000000000000000000000000000000000014ef00000000000000000000000000000000000000000000000000000000000014f000000000000000000000000000000000000000000000000000000000000014f100000000000000000000000000000000000000000000000000000000000014f200000000000000000000000000000000000000000000000000000000000014f300000000000000000000000000000000000000000000000000000000000014f400000000000000000000000000000000000000000000000000000000000014f500000000000000000000000000000000000000000000000000000000000014f600000000000000000000000000000000000000000000000000000000000014f700000000000000000000000000000000000000000000000000000000000014f800000000000000000000000000000000000000000000000000000000000014f900000000000000000000000000000000000000000000000000000000000014fa00000000000000000000000000000000000000000000000000000000000014fb00000000000000000000000000000000000000000000000000000000000014fc00000000000000000000000000000000000000000000000000000000000014fd00000000000000000000000000000000000000000000000000000000000014fe00000000000000000000000000000000000000000000000000000000000014ff0000000000000000000000000000000000000000000000000000000000001500000000000000000000000000000000000000000000000000000000000000150100000000000000000000000000000000000000000000000000000000000015020000000000000000000000000000000000000000000000000000000000001503000000000000000000000000000000000000000000000000000000000000150400000000000000000000000000000000000000000000000000000000000015050000000000000000000000000000000000000000000000000000000000001506000000000000000000000000000000000000000000000000000000000000150700000000000000000000000000000000000000000000000000000000000015080000000000000000000000000000000000000000000000000000000000001509000000000000000000000000000000000000000000000000000000000000150a000000000000000000000000000000000000000000000000000000000000150b000000000000000000000000000000000000000000000000000000000000150c000000000000000000000000000000000000000000000000000000000000150d000000000000000000000000000000000000000000000000000000000000150e000000000000000000000000000000000000000000000000000000000000150f0000000000000000000000000000000000000000000000000000000000001510000000000000000000000000000000000000000000000000000000000000151100000000000000000000000000000000000000000000000000000000000015120000000000000000000000000000000000000000000000000000000000001513000000000000000000000000000000000000000000000000000000000000151400000000000000000000000000000000000000000000000000000000000015150000000000000000000000000000000000000000000000000000000000001516000000000000000000000000000000000000000000000000000000000000151700000000000000000000000000000000000000000000000000000000000015180000000000000000000000000000000000000000000000000000000000001519000000000000000000000000000000000000000000000000000000000000151a000000000000000000000000000000000000000000000000000000000000151b000000000000000000000000000000000000000000000000000000000000151c000000000000000000000000000000000000000000000000000000000000151d000000000000000000000000000000000000000000000000000000000000151e000000000000000000000000000000000000000000000000000000000000151f0000000000000000000000000000000000000000000000000000000000001520000000000000000000000000000000000000000000000000000000000000152100000000000000000000000000000000000000000000000000000000000015220000000000000000000000000000000000000000000000000000000000001523000000000000000000000000000000000000000000000000000000000000152400000000000000000000000000000000000000000000000000000000000015250000000000000000000000000000000000000000000000000000000000001526000000000000000000000000000000000000000000000000000000000000152700000000000000000000000000000000000000000000000000000000000015280000000000000000000000000000000000000000000000000000000000001529000000000000000000000000000000000000000000000000000000000000152a000000000000000000000000000000000000000000000000000000000000152b000000000000000000000000000000000000000000000000000000000000152c000000000000000000000000000000000000000000000000000000000000152d000000000000000000000000000000000000000000000000000000000000152e000000000000000000000000000000000000000000000000000000000000152f0000000000000000000000000000000000000000000000000000000000001530000000000000000000000000000000000000000000000000000000000000153100000000000000000000000000000000000000000000000000000000000015320000000000000000000000000000000000000000000000000000000000001533000000000000000000000000000000000000000000000000000000000000153400000000000000000000000000000000000000000000000000000000000015350000000000000000000000000000000000000000000000000000000000001536000000000000000000000000000000000000000000000000000000000000153700000000000000000000000000000000000000000000000000000000000015380000000000000000000000000000000000000000000000000000000000001539000000000000000000000000000000000000000000000000000000000000153a000000000000000000000000000000000000000000000000000000000000153b000000000000000000000000000000000000000000000000000000000000153c000000000000000000000000000000000000000000000000000000000000153d000000000000000000000000000000000000000000000000000000000000153e000000000000000000000000000000000000000000000000000000000000153f0000000000000000000000000000000000000000000000000000000000001540000000000000000000000000000000000000000000000000000000000000154100000000000000000000000000000000000000000000000000000000000015420000000000000000000000000000000000000000000000000000000000001543000000000000000000000000000000000000000000000000000000000000154400000000000000000000000000000000000000000000000000000000000015450000000000000000000000000000000000000000000000000000000000001546000000000000000000000000000000000000000000000000000000000000154700000000000000000000000000000000000000000000000000000000000015480000000000000000000000000000000000000000000000000000000000001549000000000000000000000000000000000000000000000000000000000000154a000000000000000000000000000000000000000000000000000000000000154b000000000000000000000000000000000000000000000000000000000000154c000000000000000000000000000000000000000000000000000000000000154d000000000000000000000000000000000000000000000000000000000000154e000000000000000000000000000000000000000000000000000000000000154f0000000000000000000000000000000000000000000000000000000000001550000000000000000000000000000000000000000000000000000000000000155100000000000000000000000000000000000000000000000000000000000015520000000000000000000000000000000000000000000000000000000000001553000000000000000000000000000000000000000000000000000000000000155400000000000000000000000000000000000000000000000000000000000015550000000000000000000000000000000000000000000000000000000000001556000000000000000000000000000000000000000000000000000000000000155700000000000000000000000000000000000000000000000000000000000015580000000000000000000000000000000000000000000000000000000000001559000000000000000000000000000000000000000000000000000000000000155a000000000000000000000000000000000000000000000000000000000000155b000000000000000000000000000000000000000000000000000000000000155c000000000000000000000000000000000000000000000000000000000000155d000000000000000000000000000000000000000000000000000000000000155e000000000000000000000000000000000000000000000000000000000000155f0000000000000000000000000000000000000000000000000000000000001560000000000000000000000000000000000000000000000000000000000000156100000000000000000000000000000000000000000000000000000000000015620000000000000000000000000000000000000000000000000000000000001563000000000000000000000000000000000000000000000000000000000000156400000000000000000000000000000000000000000000000000000000000015650000000000000000000000000000000000000000000000000000000000001566000000000000000000000000000000000000000000000000000000000000156700000000000000000000000000000000000000000000000000000000000015680000000000000000000000000000000000000000000000000000000000001569000000000000000000000000000000000000000000000000000000000000156a000000000000000000000000000000000000000000000000000000000000156b000000000000000000000000000000000000000000000000000000000000156c000000000000000000000000000000000000000000000000000000000000156d000000000000000000000000000000000000000000000000000000000000156e000000000000000000000000000000000000000000000000000000000000156f0000000000000000000000000000000000000000000000000000000000001570000000000000000000000000000000000000000000000000000000000000157100000000000000000000000000000000000000000000000000000000000015720000000000000000000000000000000000000000000000000000000000001573000000000000000000000000000000000000000000000000000000000000157400000000000000000000000000000000000000000000000000000000000015750000000000000000000000000000000000000000000000000000000000001576000000000000000000000000000000000000000000000000000000000000157700000000000000000000000000000000000000000000000000000000000015780000000000000000000000000000000000000000000000000000000000001579000000000000000000000000000000000000000000000000000000000000157a000000000000000000000000000000000000000000000000000000000000157b000000000000000000000000000000000000000000000000000000000000157c000000000000000000000000000000000000000000000000000000000000157d000000000000000000000000000000000000000000000000000000000000157e000000000000000000000000000000000000000000000000000000000000157f0000000000000000000000000000000000000000000000000000000000001580000000000000000000000000000000000000000000000000000000000000158100000000000000000000000000000000000000000000000000000000000015820000000000000000000000000000000000000000000000000000000000001583000000000000000000000000000000000000000000000000000000000000158400000000000000000000000000000000000000000000000000000000000015850000000000000000000000000000000000000000000000000000000000001586000000000000000000000000000000000000000000000000000000000000158700000000000000000000000000000000000000000000000000000000000015880000000000000000000000000000000000000000000000000000000000001589000000000000000000000000000000000000000000000000000000000000158a000000000000000000000000000000000000000000000000000000000000158b000000000000000000000000000000000000000000000000000000000000158c000000000000000000000000000000000000000000000000000000000000158d000000000000000000000000000000000000000000000000000000000000158e000000000000000000000000000000000000000000000000000000000000158f0000000000000000000000000000000000000000000000000000000000001590000000000000000000000000000000000000000000000000000000000000159100000000000000000000000000000000000000000000000000000000000015920000000000000000000000000000000000000000000000000000000000001593000000000000000000000000000000000000000000000000000000000000159400000000000000000000000000000000000000000000000000000000000015950000000000000000000000000000000000000000000000000000000000001596000000000000000000000000000000000000000000000000000000000000159700000000000000000000000000000000000000000000000000000000000015980000000000000000000000000000000000000000000000000000000000001599000000000000000000000000000000000000000000000000000000000000159a000000000000000000000000000000000000000000000000000000000000159b000000000000000000000000000000000000000000000000000000000000159c000000000000000000000000000000000000000000000000000000000000159d000000000000000000000000000000000000000000000000000000000000159e000000000000000000000000000000000000000000000000000000000000159f00000000000000000000000000000000000000000000000000000000000015a000000000000000000000000000000000000000000000000000000000000015a100000000000000000000000000000000000000000000000000000000000015a200000000000000000000000000000000000000000000000000000000000015a300000000000000000000000000000000000000000000000000000000000015a400000000000000000000000000000000000000000000000000000000000015a500000000000000000000000000000000000000000000000000000000000015a600000000000000000000000000000000000000000000000000000000000015a700000000000000000000000000000000000000000000000000000000000015a800000000000000000000000000000000000000000000000000000000000015a900000000000000000000000000000000000000000000000000000000000015aa00000000000000000000000000000000000000000000000000000000000015ab00000000000000000000000000000000000000000000000000000000000015ac00000000000000000000000000000000000000000000000000000000000015ad00000000000000000000000000000000000000000000000000000000000015ae00000000000000000000000000000000000000000000000000000000000015af00000000000000000000000000000000000000000000000000000000000015b000000000000000000000000000000000000000000000000000000000000015b100000000000000000000000000000000000000000000000000000000000015b200000000000000000000000000000000000000000000000000000000000015b300000000000000000000000000000000000000000000000000000000000015b400000000000000000000000000000000000000000000000000000000000015b500000000000000000000000000000000000000000000000000000000000015b600000000000000000000000000000000000000000000000000000000000015b700000000000000000000000000000000000000000000000000000000000015b800000000000000000000000000000000000000000000000000000000000015b900000000000000000000000000000000000000000000000000000000000015ba00000000000000000000000000000000000000000000000000000000000015bb00000000000000000000000000000000000000000000000000000000000015bc00000000000000000000000000000000000000000000000000000000000015bd00000000000000000000000000000000000000000000000000000000000015be00000000000000000000000000000000000000000000000000000000000015bf00000000000000000000000000000000000000000000000000000000000015c000000000000000000000000000000000000000000000000000000000000015c100000000000000000000000000000000000000000000000000000000000015c200000000000000000000000000000000000000000000000000000000000015c300000000000000000000000000000000000000000000000000000000000015c400000000000000000000000000000000000000000000000000000000000015c500000000000000000000000000000000000000000000000000000000000015c600000000000000000000000000000000000000000000000000000000000015c700000000000000000000000000000000000000000000000000000000000015c800000000000000000000000000000000000000000000000000000000000015c900000000000000000000000000000000000000000000000000000000000015ca00000000000000000000000000000000000000000000000000000000000015cb00000000000000000000000000000000000000000000000000000000000015cc00000000000000000000000000000000000000000000000000000000000015cd00000000000000000000000000000000000000000000000000000000000015ce00000000000000000000000000000000000000000000000000000000000015cf00000000000000000000000000000000000000000000000000000000000015d000000000000000000000000000000000000000000000000000000000000015d100000000000000000000000000000000000000000000000000000000000015d200000000000000000000000000000000000000000000000000000000000015d300000000000000000000000000000000000000000000000000000000000015d400000000000000000000000000000000000000000000000000000000000015d500000000000000000000000000000000000000000000000000000000000015d600000000000000000000000000000000000000000000000000000000000015d700000000000000000000000000000000000000000000000000000000000015d800000000000000000000000000000000000000000000000000000000000015d900000000000000000000000000000000000000000000000000000000000015da00000000000000000000000000000000000000000000000000000000000015db00000000000000000000000000000000000000000000000000000000000015dc00000000000000000000000000000000000000000000000000000000000015dd00000000000000000000000000000000000000000000000000000000000015de00000000000000000000000000000000000000000000000000000000000015df00000000000000000000000000000000000000000000000000000000000015e000000000000000000000000000000000000000000000000000000000000015e100000000000000000000000000000000000000000000000000000000000015e200000000000000000000000000000000000000000000000000000000000015e300000000000000000000000000000000000000000000000000000000000015e400000000000000000000000000000000000000000000000000000000000015e500000000000000000000000000000000000000000000000000000000000015e600000000000000000000000000000000000000000000000000000000000015e700000000000000000000000000000000000000000000000000000000000015e800000000000000000000000000000000000000000000000000000000000015e900000000000000000000000000000000000000000000000000000000000015ea00000000000000000000000000000000000000000000000000000000000015eb00000000000000000000000000000000000000000000000000000000000015ec00000000000000000000000000000000000000000000000000000000000015ed00000000000000000000000000000000000000000000000000000000000015ee00000000000000000000000000000000000000000000000000000000000015ef00000000000000000000000000000000000000000000000000000000000015f000000000000000000000000000000000000000000000000000000000000015f100000000000000000000000000000000000000000000000000000000000015f200000000000000000000000000000000000000000000000000000000000015f300000000000000000000000000000000000000000000000000000000000015f400000000000000000000000000000000000000000000000000000000000015f500000000000000000000000000000000000000000000000000000000000015f600000000000000000000000000000000000000000000000000000000000015f700000000000000000000000000000000000000000000000000000000000015f800000000000000000000000000000000000000000000000000000000000015f900000000000000000000000000000000000000000000000000000000000015fa00000000000000000000000000000000000000000000000000000000000015fb00000000000000000000000000000000000000000000000000000000000015fc00000000000000000000000000000000000000000000000000000000000015fd00000000000000000000000000000000000000000000000000000000000015fe00000000000000000000000000000000000000000000000000000000000015ff0000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000000160100000000000000000000000000000000000000000000000000000000000016020000000000000000000000000000000000000000000000000000000000001603000000000000000000000000000000000000000000000000000000000000160400000000000000000000000000000000000000000000000000000000000016050000000000000000000000000000000000000000000000000000000000001606000000000000000000000000000000000000000000000000000000000000160700000000000000000000000000000000000000000000000000000000000016080000000000000000000000000000000000000000000000000000000000001609000000000000000000000000000000000000000000000000000000000000160a000000000000000000000000000000000000000000000000000000000000160b000000000000000000000000000000000000000000000000000000000000160c000000000000000000000000000000000000000000000000000000000000160d000000000000000000000000000000000000000000000000000000000000160e000000000000000000000000000000000000000000000000000000000000160f0000000000000000000000000000000000000000000000000000000000001610000000000000000000000000000000000000000000000000000000000000161100000000000000000000000000000000000000000000000000000000000016120000000000000000000000000000000000000000000000000000000000001613000000000000000000000000000000000000000000000000000000000000161400000000000000000000000000000000000000000000000000000000000016150000000000000000000000000000000000000000000000000000000000001616000000000000000000000000000000000000000000000000000000000000161700000000000000000000000000000000000000000000000000000000000016180000000000000000000000000000000000000000000000000000000000001619000000000000000000000000000000000000000000000000000000000000161a000000000000000000000000000000000000000000000000000000000000161b000000000000000000000000000000000000000000000000000000000000161c000000000000000000000000000000000000000000000000000000000000161d000000000000000000000000000000000000000000000000000000000000161e000000000000000000000000000000000000000000000000000000000000161f0000000000000000000000000000000000000000000000000000000000001620000000000000000000000000000000000000000000000000000000000000162100000000000000000000000000000000000000000000000000000000000016220000000000000000000000000000000000000000000000000000000000001623000000000000000000000000000000000000000000000000000000000000162400000000000000000000000000000000000000000000000000000000000016250000000000000000000000000000000000000000000000000000000000001626000000000000000000000000000000000000000000000000000000000000162700000000000000000000000000000000000000000000000000000000000016280000000000000000000000000000000000000000000000000000000000001629000000000000000000000000000000000000000000000000000000000000162a000000000000000000000000000000000000000000000000000000000000162b000000000000000000000000000000000000000000000000000000000000162c000000000000000000000000000000000000000000000000000000000000162d000000000000000000000000000000000000000000000000000000000000162e000000000000000000000000000000000000000000000000000000000000162f0000000000000000000000000000000000000000000000000000000000001630000000000000000000000000000000000000000000000000000000000000163100000000000000000000000000000000000000000000000000000000000016320000000000000000000000000000000000000000000000000000000000001633000000000000000000000000000000000000000000000000000000000000163400000000000000000000000000000000000000000000000000000000000016350000000000000000000000000000000000000000000000000000000000001636000000000000000000000000000000000000000000000000000000000000163700000000000000000000000000000000000000000000000000000000000016380000000000000000000000000000000000000000000000000000000000001639000000000000000000000000000000000000000000000000000000000000163a000000000000000000000000000000000000000000000000000000000000163b000000000000000000000000000000000000000000000000000000000000163c000000000000000000000000000000000000000000000000000000000000163d000000000000000000000000000000000000000000000000000000000000163e000000000000000000000000000000000000000000000000000000000000163f0000000000000000000000000000000000000000000000000000000000001640000000000000000000000000000000000000000000000000000000000000164100000000000000000000000000000000000000000000000000000000000016420000000000000000000000000000000000000000000000000000000000001643000000000000000000000000000000000000000000000000000000000000164400000000000000000000000000000000000000000000000000000000000016450000000000000000000000000000000000000000000000000000000000001646000000000000000000000000000000000000000000000000000000000000164700000000000000000000000000000000000000000000000000000000000016480000000000000000000000000000000000000000000000000000000000001649000000000000000000000000000000000000000000000000000000000000164a000000000000000000000000000000000000000000000000000000000000164b000000000000000000000000000000000000000000000000000000000000164c000000000000000000000000000000000000000000000000000000000000164d000000000000000000000000000000000000000000000000000000000000164e000000000000000000000000000000000000000000000000000000000000164f0000000000000000000000000000000000000000000000000000000000001650000000000000000000000000000000000000000000000000000000000000165100000000000000000000000000000000000000000000000000000000000016520000000000000000000000000000000000000000000000000000000000001653000000000000000000000000000000000000000000000000000000000000165400000000000000000000000000000000000000000000000000000000000016550000000000000000000000000000000000000000000000000000000000001656000000000000000000000000000000000000000000000000000000000000165700000000000000000000000000000000000000000000000000000000000016580000000000000000000000000000000000000000000000000000000000001659000000000000000000000000000000000000000000000000000000000000165a000000000000000000000000000000000000000000000000000000000000165b000000000000000000000000000000000000000000000000000000000000165c000000000000000000000000000000000000000000000000000000000000165d000000000000000000000000000000000000000000000000000000000000165e000000000000000000000000000000000000000000000000000000000000165f0000000000000000000000000000000000000000000000000000000000001660000000000000000000000000000000000000000000000000000000000000166100000000000000000000000000000000000000000000000000000000000016620000000000000000000000000000000000000000000000000000000000001663000000000000000000000000000000000000000000000000000000000000166400000000000000000000000000000000000000000000000000000000000016650000000000000000000000000000000000000000000000000000000000001666000000000000000000000000000000000000000000000000000000000000166700000000000000000000000000000000000000000000000000000000000016680000000000000000000000000000000000000000000000000000000000001669000000000000000000000000000000000000000000000000000000000000166a000000000000000000000000000000000000000000000000000000000000166b000000000000000000000000000000000000000000000000000000000000166c000000000000000000000000000000000000000000000000000000000000166d000000000000000000000000000000000000000000000000000000000000166e000000000000000000000000000000000000000000000000000000000000166f0000000000000000000000000000000000000000000000000000000000001670000000000000000000000000000000000000000000000000000000000000167100000000000000000000000000000000000000000000000000000000000016720000000000000000000000000000000000000000000000000000000000001673000000000000000000000000000000000000000000000000000000000000167400000000000000000000000000000000000000000000000000000000000016750000000000000000000000000000000000000000000000000000000000001676000000000000000000000000000000000000000000000000000000000000167700000000000000000000000000000000000000000000000000000000000016780000000000000000000000000000000000000000000000000000000000001679000000000000000000000000000000000000000000000000000000000000167a000000000000000000000000000000000000000000000000000000000000167b000000000000000000000000000000000000000000000000000000000000167c000000000000000000000000000000000000000000000000000000000000167d000000000000000000000000000000000000000000000000000000000000167e000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000001680000000000000000000000000000000000000000000000000000000000000168100000000000000000000000000000000000000000000000000000000000016820000000000000000000000000000000000000000000000000000000000001683000000000000000000000000000000000000000000000000000000000000168400000000000000000000000000000000000000000000000000000000000016850000000000000000000000000000000000000000000000000000000000001686000000000000000000000000000000000000000000000000000000000000168700000000000000000000000000000000000000000000000000000000000016880000000000000000000000000000000000000000000000000000000000001689000000000000000000000000000000000000000000000000000000000000168a000000000000000000000000000000000000000000000000000000000000168b000000000000000000000000000000000000000000000000000000000000168c000000000000000000000000000000000000000000000000000000000000168d000000000000000000000000000000000000000000000000000000000000168e000000000000000000000000000000000000000000000000000000000000168f0000000000000000000000000000000000000000000000000000000000001690000000000000000000000000000000000000000000000000000000000000169100000000000000000000000000000000000000000000000000000000000016920000000000000000000000000000000000000000000000000000000000001693000000000000000000000000000000000000000000000000000000000000169400000000000000000000000000000000000000000000000000000000000016950000000000000000000000000000000000000000000000000000000000001696000000000000000000000000000000000000000000000000000000000000169700000000000000000000000000000000000000000000000000000000000016980000000000000000000000000000000000000000000000000000000000001699000000000000000000000000000000000000000000000000000000000000169a000000000000000000000000000000000000000000000000000000000000169b000000000000000000000000000000000000000000000000000000000000169c000000000000000000000000000000000000000000000000000000000000169d000000000000000000000000000000000000000000000000000000000000169e000000000000000000000000000000000000000000000000000000000000169f00000000000000000000000000000000000000000000000000000000000016a000000000000000000000000000000000000000000000000000000000000016a100000000000000000000000000000000000000000000000000000000000016a200000000000000000000000000000000000000000000000000000000000016a300000000000000000000000000000000000000000000000000000000000016a400000000000000000000000000000000000000000000000000000000000016a500000000000000000000000000000000000000000000000000000000000016a600000000000000000000000000000000000000000000000000000000000016a700000000000000000000000000000000000000000000000000000000000016a800000000000000000000000000000000000000000000000000000000000016a900000000000000000000000000000000000000000000000000000000000016aa00000000000000000000000000000000000000000000000000000000000016ab00000000000000000000000000000000000000000000000000000000000016ac00000000000000000000000000000000000000000000000000000000000016ad00000000000000000000000000000000000000000000000000000000000016ae00000000000000000000000000000000000000000000000000000000000016af00000000000000000000000000000000000000000000000000000000000016b000000000000000000000000000000000000000000000000000000000000016b100000000000000000000000000000000000000000000000000000000000016b200000000000000000000000000000000000000000000000000000000000016b300000000000000000000000000000000000000000000000000000000000016b400000000000000000000000000000000000000000000000000000000000016b500000000000000000000000000000000000000000000000000000000000016b600000000000000000000000000000000000000000000000000000000000016b700000000000000000000000000000000000000000000000000000000000016b800000000000000000000000000000000000000000000000000000000000016b900000000000000000000000000000000000000000000000000000000000016ba00000000000000000000000000000000000000000000000000000000000016bb00000000000000000000000000000000000000000000000000000000000016bc00000000000000000000000000000000000000000000000000000000000016bd00000000000000000000000000000000000000000000000000000000000016be00000000000000000000000000000000000000000000000000000000000016bf00000000000000000000000000000000000000000000000000000000000016c000000000000000000000000000000000000000000000000000000000000016c100000000000000000000000000000000000000000000000000000000000016c200000000000000000000000000000000000000000000000000000000000016c300000000000000000000000000000000000000000000000000000000000016c400000000000000000000000000000000000000000000000000000000000016c500000000000000000000000000000000000000000000000000000000000016c600000000000000000000000000000000000000000000000000000000000016c700000000000000000000000000000000000000000000000000000000000016c800000000000000000000000000000000000000000000000000000000000016c900000000000000000000000000000000000000000000000000000000000016ca00000000000000000000000000000000000000000000000000000000000016cb00000000000000000000000000000000000000000000000000000000000016cc00000000000000000000000000000000000000000000000000000000000016cd00000000000000000000000000000000000000000000000000000000000016ce00000000000000000000000000000000000000000000000000000000000016cf00000000000000000000000000000000000000000000000000000000000016d000000000000000000000000000000000000000000000000000000000000016d100000000000000000000000000000000000000000000000000000000000016d200000000000000000000000000000000000000000000000000000000000016d300000000000000000000000000000000000000000000000000000000000016d400000000000000000000000000000000000000000000000000000000000016d500000000000000000000000000000000000000000000000000000000000016d600000000000000000000000000000000000000000000000000000000000016d700000000000000000000000000000000000000000000000000000000000016d800000000000000000000000000000000000000000000000000000000000016d900000000000000000000000000000000000000000000000000000000000016da00000000000000000000000000000000000000000000000000000000000016db00000000000000000000000000000000000000000000000000000000000016dc00000000000000000000000000000000000000000000000000000000000016dd00000000000000000000000000000000000000000000000000000000000016de00000000000000000000000000000000000000000000000000000000000016df00000000000000000000000000000000000000000000000000000000000016e000000000000000000000000000000000000000000000000000000000000016e100000000000000000000000000000000000000000000000000000000000016e200000000000000000000000000000000000000000000000000000000000016e300000000000000000000000000000000000000000000000000000000000016e400000000000000000000000000000000000000000000000000000000000016e500000000000000000000000000000000000000000000000000000000000016e600000000000000000000000000000000000000000000000000000000000016e700000000000000000000000000000000000000000000000000000000000016e800000000000000000000000000000000000000000000000000000000000016e900000000000000000000000000000000000000000000000000000000000016ea00000000000000000000000000000000000000000000000000000000000016eb00000000000000000000000000000000000000000000000000000000000016ec00000000000000000000000000000000000000000000000000000000000016ed00000000000000000000000000000000000000000000000000000000000016ee00000000000000000000000000000000000000000000000000000000000016ef00000000000000000000000000000000000000000000000000000000000016f000000000000000000000000000000000000000000000000000000000000016f100000000000000000000000000000000000000000000000000000000000016f200000000000000000000000000000000000000000000000000000000000016f300000000000000000000000000000000000000000000000000000000000016f400000000000000000000000000000000000000000000000000000000000016f500000000000000000000000000000000000000000000000000000000000016f600000000000000000000000000000000000000000000000000000000000016f700000000000000000000000000000000000000000000000000000000000016f800000000000000000000000000000000000000000000000000000000000016f900000000000000000000000000000000000000000000000000000000000016fa00000000000000000000000000000000000000000000000000000000000016fb00000000000000000000000000000000000000000000000000000000000016fc00000000000000000000000000000000000000000000000000000000000016fd00000000000000000000000000000000000000000000000000000000000016fe00000000000000000000000000000000000000000000000000000000000016ff0000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000170100000000000000000000000000000000000000000000000000000000000017020000000000000000000000000000000000000000000000000000000000001703000000000000000000000000000000000000000000000000000000000000170400000000000000000000000000000000000000000000000000000000000017050000000000000000000000000000000000000000000000000000000000001706000000000000000000000000000000000000000000000000000000000000170700000000000000000000000000000000000000000000000000000000000017080000000000000000000000000000000000000000000000000000000000001709000000000000000000000000000000000000000000000000000000000000170a000000000000000000000000000000000000000000000000000000000000170b000000000000000000000000000000000000000000000000000000000000170c000000000000000000000000000000000000000000000000000000000000170d000000000000000000000000000000000000000000000000000000000000170e000000000000000000000000000000000000000000000000000000000000170f0000000000000000000000000000000000000000000000000000000000001710000000000000000000000000000000000000000000000000000000000000171100000000000000000000000000000000000000000000000000000000000017120000000000000000000000000000000000000000000000000000000000001713000000000000000000000000000000000000000000000000000000000000171400000000000000000000000000000000000000000000000000000000000017150000000000000000000000000000000000000000000000000000000000001716000000000000000000000000000000000000000000000000000000000000171700000000000000000000000000000000000000000000000000000000000017180000000000000000000000000000000000000000000000000000000000001719000000000000000000000000000000000000000000000000000000000000171a000000000000000000000000000000000000000000000000000000000000171b000000000000000000000000000000000000000000000000000000000000171c000000000000000000000000000000000000000000000000000000000000171d000000000000000000000000000000000000000000000000000000000000171e000000000000000000000000000000000000000000000000000000000000171f0000000000000000000000000000000000000000000000000000000000001720000000000000000000000000000000000000000000000000000000000000172100000000000000000000000000000000000000000000000000000000000017220000000000000000000000000000000000000000000000000000000000001723000000000000000000000000000000000000000000000000000000000000172400000000000000000000000000000000000000000000000000000000000017250000000000000000000000000000000000000000000000000000000000001726000000000000000000000000000000000000000000000000000000000000172700000000000000000000000000000000000000000000000000000000000017280000000000000000000000000000000000000000000000000000000000001729000000000000000000000000000000000000000000000000000000000000172a000000000000000000000000000000000000000000000000000000000000172b000000000000000000000000000000000000000000000000000000000000172c000000000000000000000000000000000000000000000000000000000000172d000000000000000000000000000000000000000000000000000000000000172e000000000000000000000000000000000000000000000000000000000000172f0000000000000000000000000000000000000000000000000000000000001730000000000000000000000000000000000000000000000000000000000000173100000000000000000000000000000000000000000000000000000000000017320000000000000000000000000000000000000000000000000000000000001733000000000000000000000000000000000000000000000000000000000000173400000000000000000000000000000000000000000000000000000000000017350000000000000000000000000000000000000000000000000000000000001736000000000000000000000000000000000000000000000000000000000000173700000000000000000000000000000000000000000000000000000000000017380000000000000000000000000000000000000000000000000000000000001739000000000000000000000000000000000000000000000000000000000000173a000000000000000000000000000000000000000000000000000000000000173b000000000000000000000000000000000000000000000000000000000000173c000000000000000000000000000000000000000000000000000000000000173d000000000000000000000000000000000000000000000000000000000000173e000000000000000000000000000000000000000000000000000000000000173f0000000000000000000000000000000000000000000000000000000000001740000000000000000000000000000000000000000000000000000000000000174100000000000000000000000000000000000000000000000000000000000017420000000000000000000000000000000000000000000000000000000000001743000000000000000000000000000000000000000000000000000000000000174400000000000000000000000000000000000000000000000000000000000017450000000000000000000000000000000000000000000000000000000000001746000000000000000000000000000000000000000000000000000000000000174700000000000000000000000000000000000000000000000000000000000017480000000000000000000000000000000000000000000000000000000000001749000000000000000000000000000000000000000000000000000000000000174a000000000000000000000000000000000000000000000000000000000000174b000000000000000000000000000000000000000000000000000000000000174c000000000000000000000000000000000000000000000000000000000000174d000000000000000000000000000000000000000000000000000000000000174e000000000000000000000000000000000000000000000000000000000000174f0000000000000000000000000000000000000000000000000000000000001750000000000000000000000000000000000000000000000000000000000000175100000000000000000000000000000000000000000000000000000000000017520000000000000000000000000000000000000000000000000000000000001753000000000000000000000000000000000000000000000000000000000000175400000000000000000000000000000000000000000000000000000000000017550000000000000000000000000000000000000000000000000000000000001756000000000000000000000000000000000000000000000000000000000000175700000000000000000000000000000000000000000000000000000000000017580000000000000000000000000000000000000000000000000000000000001759000000000000000000000000000000000000000000000000000000000000175a000000000000000000000000000000000000000000000000000000000000175b000000000000000000000000000000000000000000000000000000000000175c000000000000000000000000000000000000000000000000000000000000175d000000000000000000000000000000000000000000000000000000000000175e000000000000000000000000000000000000000000000000000000000000175f0000000000000000000000000000000000000000000000000000000000001760000000000000000000000000000000000000000000000000000000000000176100000000000000000000000000000000000000000000000000000000000017620000000000000000000000000000000000000000000000000000000000001763000000000000000000000000000000000000000000000000000000000000176400000000000000000000000000000000000000000000000000000000000017650000000000000000000000000000000000000000000000000000000000001766000000000000000000000000000000000000000000000000000000000000176700000000000000000000000000000000000000000000000000000000000017680000000000000000000000000000000000000000000000000000000000001769000000000000000000000000000000000000000000000000000000000000176a000000000000000000000000000000000000000000000000000000000000176b000000000000000000000000000000000000000000000000000000000000176c000000000000000000000000000000000000000000000000000000000000176d000000000000000000000000000000000000000000000000000000000000176e000000000000000000000000000000000000000000000000000000000000176f0000000000000000000000000000000000000000000000000000000000001770000000000000000000000000000000000000000000000000000000000000177100000000000000000000000000000000000000000000000000000000000017720000000000000000000000000000000000000000000000000000000000001773000000000000000000000000000000000000000000000000000000000000177400000000000000000000000000000000000000000000000000000000000017750000000000000000000000000000000000000000000000000000000000001776000000000000000000000000000000000000000000000000000000000000177700000000000000000000000000000000000000000000000000000000000017780000000000000000000000000000000000000000000000000000000000001779000000000000000000000000000000000000000000000000000000000000177a000000000000000000000000000000000000000000000000000000000000177b000000000000000000000000000000000000000000000000000000000000177c000000000000000000000000000000000000000000000000000000000000177d000000000000000000000000000000000000000000000000000000000000177e000000000000000000000000000000000000000000000000000000000000177f0000000000000000000000000000000000000000000000000000000000001780000000000000000000000000000000000000000000000000000000000000178100000000000000000000000000000000000000000000000000000000000017820000000000000000000000000000000000000000000000000000000000001783000000000000000000000000000000000000000000000000000000000000178400000000000000000000000000000000000000000000000000000000000017850000000000000000000000000000000000000000000000000000000000001786000000000000000000000000000000000000000000000000000000000000178700000000000000000000000000000000000000000000000000000000000017880000000000000000000000000000000000000000000000000000000000001789000000000000000000000000000000000000000000000000000000000000178a000000000000000000000000000000000000000000000000000000000000178b000000000000000000000000000000000000000000000000000000000000178c000000000000000000000000000000000000000000000000000000000000178d000000000000000000000000000000000000000000000000000000000000178e000000000000000000000000000000000000000000000000000000000000178f0000000000000000000000000000000000000000000000000000000000001790000000000000000000000000000000000000000000000000000000000000179100000000000000000000000000000000000000000000000000000000000017920000000000000000000000000000000000000000000000000000000000001793000000000000000000000000000000000000000000000000000000000000179400000000000000000000000000000000000000000000000000000000000017950000000000000000000000000000000000000000000000000000000000001796000000000000000000000000000000000000000000000000000000000000179700000000000000000000000000000000000000000000000000000000000017980000000000000000000000000000000000000000000000000000000000001799000000000000000000000000000000000000000000000000000000000000179a000000000000000000000000000000000000000000000000000000000000179b000000000000000000000000000000000000000000000000000000000000179c000000000000000000000000000000000000000000000000000000000000179d000000000000000000000000000000000000000000000000000000000000179e000000000000000000000000000000000000000000000000000000000000179f00000000000000000000000000000000000000000000000000000000000017a000000000000000000000000000000000000000000000000000000000000017a100000000000000000000000000000000000000000000000000000000000017a200000000000000000000000000000000000000000000000000000000000017a300000000000000000000000000000000000000000000000000000000000017a400000000000000000000000000000000000000000000000000000000000017a500000000000000000000000000000000000000000000000000000000000017a600000000000000000000000000000000000000000000000000000000000017a700000000000000000000000000000000000000000000000000000000000017a800000000000000000000000000000000000000000000000000000000000017a900000000000000000000000000000000000000000000000000000000000017aa00000000000000000000000000000000000000000000000000000000000017ab00000000000000000000000000000000000000000000000000000000000017ac00000000000000000000000000000000000000000000000000000000000017ad00000000000000000000000000000000000000000000000000000000000017ae00000000000000000000000000000000000000000000000000000000000017af00000000000000000000000000000000000000000000000000000000000017b000000000000000000000000000000000000000000000000000000000000017b100000000000000000000000000000000000000000000000000000000000017b200000000000000000000000000000000000000000000000000000000000017b300000000000000000000000000000000000000000000000000000000000017b400000000000000000000000000000000000000000000000000000000000017b500000000000000000000000000000000000000000000000000000000000017b600000000000000000000000000000000000000000000000000000000000017b700000000000000000000000000000000000000000000000000000000000017b800000000000000000000000000000000000000000000000000000000000017b900000000000000000000000000000000000000000000000000000000000017ba00000000000000000000000000000000000000000000000000000000000017bb00000000000000000000000000000000000000000000000000000000000017bc00000000000000000000000000000000000000000000000000000000000017bd00000000000000000000000000000000000000000000000000000000000017be00000000000000000000000000000000000000000000000000000000000017bf00000000000000000000000000000000000000000000000000000000000017c000000000000000000000000000000000000000000000000000000000000017c100000000000000000000000000000000000000000000000000000000000017c200000000000000000000000000000000000000000000000000000000000017c300000000000000000000000000000000000000000000000000000000000017c400000000000000000000000000000000000000000000000000000000000017c500000000000000000000000000000000000000000000000000000000000017c600000000000000000000000000000000000000000000000000000000000017c700000000000000000000000000000000000000000000000000000000000017c800000000000000000000000000000000000000000000000000000000000017c900000000000000000000000000000000000000000000000000000000000017ca00000000000000000000000000000000000000000000000000000000000017cb00000000000000000000000000000000000000000000000000000000000017cc00000000000000000000000000000000000000000000000000000000000017cd00000000000000000000000000000000000000000000000000000000000017ce00000000000000000000000000000000000000000000000000000000000017cf00000000000000000000000000000000000000000000000000000000000017d000000000000000000000000000000000000000000000000000000000000017d100000000000000000000000000000000000000000000000000000000000017d200000000000000000000000000000000000000000000000000000000000017d300000000000000000000000000000000000000000000000000000000000017d400000000000000000000000000000000000000000000000000000000000017d500000000000000000000000000000000000000000000000000000000000017d600000000000000000000000000000000000000000000000000000000000017d700000000000000000000000000000000000000000000000000000000000017d800000000000000000000000000000000000000000000000000000000000017d900000000000000000000000000000000000000000000000000000000000017da00000000000000000000000000000000000000000000000000000000000017db00000000000000000000000000000000000000000000000000000000000017dc00000000000000000000000000000000000000000000000000000000000017dd00000000000000000000000000000000000000000000000000000000000017de00000000000000000000000000000000000000000000000000000000000017df00000000000000000000000000000000000000000000000000000000000017e000000000000000000000000000000000000000000000000000000000000017e100000000000000000000000000000000000000000000000000000000000017e200000000000000000000000000000000000000000000000000000000000017e300000000000000000000000000000000000000000000000000000000000017e400000000000000000000000000000000000000000000000000000000000017e500000000000000000000000000000000000000000000000000000000000017e600000000000000000000000000000000000000000000000000000000000017e700000000000000000000000000000000000000000000000000000000000017e800000000000000000000000000000000000000000000000000000000000017e900000000000000000000000000000000000000000000000000000000000017ea00000000000000000000000000000000000000000000000000000000000017eb00000000000000000000000000000000000000000000000000000000000017ec00000000000000000000000000000000000000000000000000000000000017ed00000000000000000000000000000000000000000000000000000000000017ee00000000000000000000000000000000000000000000000000000000000017ef00000000000000000000000000000000000000000000000000000000000017f000000000000000000000000000000000000000000000000000000000000017f100000000000000000000000000000000000000000000000000000000000017f200000000000000000000000000000000000000000000000000000000000017f300000000000000000000000000000000000000000000000000000000000017f400000000000000000000000000000000000000000000000000000000000017f500000000000000000000000000000000000000000000000000000000000017f600000000000000000000000000000000000000000000000000000000000017f700000000000000000000000000000000000000000000000000000000000017f800000000000000000000000000000000000000000000000000000000000017f900000000000000000000000000000000000000000000000000000000000017fa00000000000000000000000000000000000000000000000000000000000017fb00000000000000000000000000000000000000000000000000000000000017fc00000000000000000000000000000000000000000000000000000000000017fd00000000000000000000000000000000000000000000000000000000000017fe00000000000000000000000000000000000000000000000000000000000017ff0000000000000000000000000000000000000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000180100000000000000000000000000000000000000000000000000000000000018020000000000000000000000000000000000000000000000000000000000001803000000000000000000000000000000000000000000000000000000000000180400000000000000000000000000000000000000000000000000000000000018050000000000000000000000000000000000000000000000000000000000001806000000000000000000000000000000000000000000000000000000000000180700000000000000000000000000000000000000000000000000000000000018080000000000000000000000000000000000000000000000000000000000001809000000000000000000000000000000000000000000000000000000000000180a000000000000000000000000000000000000000000000000000000000000180b000000000000000000000000000000000000000000000000000000000000180c000000000000000000000000000000000000000000000000000000000000180d000000000000000000000000000000000000000000000000000000000000180e000000000000000000000000000000000000000000000000000000000000180f0000000000000000000000000000000000000000000000000000000000001810000000000000000000000000000000000000000000000000000000000000181100000000000000000000000000000000000000000000000000000000000018120000000000000000000000000000000000000000000000000000000000001813000000000000000000000000000000000000000000000000000000000000181400000000000000000000000000000000000000000000000000000000000018150000000000000000000000000000000000000000000000000000000000001816000000000000000000000000000000000000000000000000000000000000181700000000000000000000000000000000000000000000000000000000000018180000000000000000000000000000000000000000000000000000000000001819000000000000000000000000000000000000000000000000000000000000181a000000000000000000000000000000000000000000000000000000000000181b000000000000000000000000000000000000000000000000000000000000181c000000000000000000000000000000000000000000000000000000000000181d000000000000000000000000000000000000000000000000000000000000181e000000000000000000000000000000000000000000000000000000000000181f0000000000000000000000000000000000000000000000000000000000001820000000000000000000000000000000000000000000000000000000000000182100000000000000000000000000000000000000000000000000000000000018220000000000000000000000000000000000000000000000000000000000001823000000000000000000000000000000000000000000000000000000000000182400000000000000000000000000000000000000000000000000000000000018250000000000000000000000000000000000000000000000000000000000001826000000000000000000000000000000000000000000000000000000000000182700000000000000000000000000000000000000000000000000000000000018280000000000000000000000000000000000000000000000000000000000001829000000000000000000000000000000000000000000000000000000000000182a000000000000000000000000000000000000000000000000000000000000182b000000000000000000000000000000000000000000000000000000000000182c000000000000000000000000000000000000000000000000000000000000182d000000000000000000000000000000000000000000000000000000000000182e000000000000000000000000000000000000000000000000000000000000182f0000000000000000000000000000000000000000000000000000000000001830000000000000000000000000000000000000000000000000000000000000183100000000000000000000000000000000000000000000000000000000000018320000000000000000000000000000000000000000000000000000000000001833000000000000000000000000000000000000000000000000000000000000183400000000000000000000000000000000000000000000000000000000000018350000000000000000000000000000000000000000000000000000000000001836000000000000000000000000000000000000000000000000000000000000183700000000000000000000000000000000000000000000000000000000000018380000000000000000000000000000000000000000000000000000000000001839000000000000000000000000000000000000000000000000000000000000183a000000000000000000000000000000000000000000000000000000000000183b000000000000000000000000000000000000000000000000000000000000183c000000000000000000000000000000000000000000000000000000000000183d000000000000000000000000000000000000000000000000000000000000183e000000000000000000000000000000000000000000000000000000000000183f0000000000000000000000000000000000000000000000000000000000001840000000000000000000000000000000000000000000000000000000000000184100000000000000000000000000000000000000000000000000000000000018420000000000000000000000000000000000000000000000000000000000001843000000000000000000000000000000000000000000000000000000000000184400000000000000000000000000000000000000000000000000000000000018450000000000000000000000000000000000000000000000000000000000001846000000000000000000000000000000000000000000000000000000000000184700000000000000000000000000000000000000000000000000000000000018480000000000000000000000000000000000000000000000000000000000001849000000000000000000000000000000000000000000000000000000000000184a000000000000000000000000000000000000000000000000000000000000184b000000000000000000000000000000000000000000000000000000000000184c000000000000000000000000000000000000000000000000000000000000184d000000000000000000000000000000000000000000000000000000000000184e000000000000000000000000000000000000000000000000000000000000184f0000000000000000000000000000000000000000000000000000000000001850000000000000000000000000000000000000000000000000000000000000185100000000000000000000000000000000000000000000000000000000000018520000000000000000000000000000000000000000000000000000000000001853000000000000000000000000000000000000000000000000000000000000185400000000000000000000000000000000000000000000000000000000000018550000000000000000000000000000000000000000000000000000000000001856000000000000000000000000000000000000000000000000000000000000185700000000000000000000000000000000000000000000000000000000000018580000000000000000000000000000000000000000000000000000000000001859000000000000000000000000000000000000000000000000000000000000185a000000000000000000000000000000000000000000000000000000000000185b000000000000000000000000000000000000000000000000000000000000185c000000000000000000000000000000000000000000000000000000000000185d000000000000000000000000000000000000000000000000000000000000185e000000000000000000000000000000000000000000000000000000000000185f0000000000000000000000000000000000000000000000000000000000001860000000000000000000000000000000000000000000000000000000000000186100000000000000000000000000000000000000000000000000000000000018620000000000000000000000000000000000000000000000000000000000001863000000000000000000000000000000000000000000000000000000000000186400000000000000000000000000000000000000000000000000000000000018650000000000000000000000000000000000000000000000000000000000001866000000000000000000000000000000000000000000000000000000000000186700000000000000000000000000000000000000000000000000000000000018680000000000000000000000000000000000000000000000000000000000001869000000000000000000000000000000000000000000000000000000000000186a000000000000000000000000000000000000000000000000000000000000186b000000000000000000000000000000000000000000000000000000000000186c000000000000000000000000000000000000000000000000000000000000186d000000000000000000000000000000000000000000000000000000000000186e000000000000000000000000000000000000000000000000000000000000186f0000000000000000000000000000000000000000000000000000000000001870000000000000000000000000000000000000000000000000000000000000187100000000000000000000000000000000000000000000000000000000000018720000000000000000000000000000000000000000000000000000000000001873000000000000000000000000000000000000000000000000000000000000187400000000000000000000000000000000000000000000000000000000000018750000000000000000000000000000000000000000000000000000000000001876000000000000000000000000000000000000000000000000000000000000187700000000000000000000000000000000000000000000000000000000000018780000000000000000000000000000000000000000000000000000000000001879000000000000000000000000000000000000000000000000000000000000187a000000000000000000000000000000000000000000000000000000000000187b000000000000000000000000000000000000000000000000000000000000187c000000000000000000000000000000000000000000000000000000000000187d000000000000000000000000000000000000000000000000000000000000187e000000000000000000000000000000000000000000000000000000000000187f0000000000000000000000000000000000000000000000000000000000001880000000000000000000000000000000000000000000000000000000000000188100000000000000000000000000000000000000000000000000000000000018820000000000000000000000000000000000000000000000000000000000001883000000000000000000000000000000000000000000000000000000000000188400000000000000000000000000000000000000000000000000000000000018850000000000000000000000000000000000000000000000000000000000001886000000000000000000000000000000000000000000000000000000000000188700000000000000000000000000000000000000000000000000000000000018880000000000000000000000000000000000000000000000000000000000001889000000000000000000000000000000000000000000000000000000000000188a000000000000000000000000000000000000000000000000000000000000188b000000000000000000000000000000000000000000000000000000000000188c000000000000000000000000000000000000000000000000000000000000188d000000000000000000000000000000000000000000000000000000000000188e000000000000000000000000000000000000000000000000000000000000188f0000000000000000000000000000000000000000000000000000000000001890000000000000000000000000000000000000000000000000000000000000189100000000000000000000000000000000000000000000000000000000000018920000000000000000000000000000000000000000000000000000000000001893000000000000000000000000000000000000000000000000000000000000189400000000000000000000000000000000000000000000000000000000000018950000000000000000000000000000000000000000000000000000000000001896000000000000000000000000000000000000000000000000000000000000189700000000000000000000000000000000000000000000000000000000000018980000000000000000000000000000000000000000000000000000000000001899000000000000000000000000000000000000000000000000000000000000189a000000000000000000000000000000000000000000000000000000000000189b000000000000000000000000000000000000000000000000000000000000189c000000000000000000000000000000000000000000000000000000000000189d000000000000000000000000000000000000000000000000000000000000189e000000000000000000000000000000000000000000000000000000000000189f00000000000000000000000000000000000000000000000000000000000018a000000000000000000000000000000000000000000000000000000000000018a100000000000000000000000000000000000000000000000000000000000018a200000000000000000000000000000000000000000000000000000000000018a300000000000000000000000000000000000000000000000000000000000018a400000000000000000000000000000000000000000000000000000000000018a500000000000000000000000000000000000000000000000000000000000018a600000000000000000000000000000000000000000000000000000000000018a700000000000000000000000000000000000000000000000000000000000018a800000000000000000000000000000000000000000000000000000000000018a900000000000000000000000000000000000000000000000000000000000018aa00000000000000000000000000000000000000000000000000000000000018ab00000000000000000000000000000000000000000000000000000000000018ac00000000000000000000000000000000000000000000000000000000000018ad00000000000000000000000000000000000000000000000000000000000018ae00000000000000000000000000000000000000000000000000000000000018af00000000000000000000000000000000000000000000000000000000000018b000000000000000000000000000000000000000000000000000000000000018b100000000000000000000000000000000000000000000000000000000000018b200000000000000000000000000000000000000000000000000000000000018b300000000000000000000000000000000000000000000000000000000000018b400000000000000000000000000000000000000000000000000000000000018b500000000000000000000000000000000000000000000000000000000000018b600000000000000000000000000000000000000000000000000000000000018b700000000000000000000000000000000000000000000000000000000000018b800000000000000000000000000000000000000000000000000000000000018b900000000000000000000000000000000000000000000000000000000000018ba00000000000000000000000000000000000000000000000000000000000018bb00000000000000000000000000000000000000000000000000000000000018bc00000000000000000000000000000000000000000000000000000000000018bd00000000000000000000000000000000000000000000000000000000000018be00000000000000000000000000000000000000000000000000000000000018bf00000000000000000000000000000000000000000000000000000000000018c000000000000000000000000000000000000000000000000000000000000018c100000000000000000000000000000000000000000000000000000000000018c200000000000000000000000000000000000000000000000000000000000018c300000000000000000000000000000000000000000000000000000000000018c400000000000000000000000000000000000000000000000000000000000018c500000000000000000000000000000000000000000000000000000000000018c600000000000000000000000000000000000000000000000000000000000018c700000000000000000000000000000000000000000000000000000000000018c800000000000000000000000000000000000000000000000000000000000018c900000000000000000000000000000000000000000000000000000000000018ca00000000000000000000000000000000000000000000000000000000000018cb00000000000000000000000000000000000000000000000000000000000018cc00000000000000000000000000000000000000000000000000000000000018cd00000000000000000000000000000000000000000000000000000000000018ce00000000000000000000000000000000000000000000000000000000000018cf00000000000000000000000000000000000000000000000000000000000018d000000000000000000000000000000000000000000000000000000000000018d100000000000000000000000000000000000000000000000000000000000018d200000000000000000000000000000000000000000000000000000000000018d300000000000000000000000000000000000000000000000000000000000018d400000000000000000000000000000000000000000000000000000000000018d500000000000000000000000000000000000000000000000000000000000018d600000000000000000000000000000000000000000000000000000000000018d700000000000000000000000000000000000000000000000000000000000018d800000000000000000000000000000000000000000000000000000000000018d900000000000000000000000000000000000000000000000000000000000018da00000000000000000000000000000000000000000000000000000000000018db00000000000000000000000000000000000000000000000000000000000018dc00000000000000000000000000000000000000000000000000000000000018dd00000000000000000000000000000000000000000000000000000000000018de00000000000000000000000000000000000000000000000000000000000018df00000000000000000000000000000000000000000000000000000000000018e000000000000000000000000000000000000000000000000000000000000018e100000000000000000000000000000000000000000000000000000000000018e200000000000000000000000000000000000000000000000000000000000018e300000000000000000000000000000000000000000000000000000000000018e400000000000000000000000000000000000000000000000000000000000018e500000000000000000000000000000000000000000000000000000000000018e600000000000000000000000000000000000000000000000000000000000018e700000000000000000000000000000000000000000000000000000000000018e800000000000000000000000000000000000000000000000000000000000018e900000000000000000000000000000000000000000000000000000000000018ea00000000000000000000000000000000000000000000000000000000000018eb00000000000000000000000000000000000000000000000000000000000018ec00000000000000000000000000000000000000000000000000000000000018ed00000000000000000000000000000000000000000000000000000000000018ee00000000000000000000000000000000000000000000000000000000000018ef00000000000000000000000000000000000000000000000000000000000018f000000000000000000000000000000000000000000000000000000000000018f100000000000000000000000000000000000000000000000000000000000018f200000000000000000000000000000000000000000000000000000000000018f300000000000000000000000000000000000000000000000000000000000018f400000000000000000000000000000000000000000000000000000000000018f500000000000000000000000000000000000000000000000000000000000018f600000000000000000000000000000000000000000000000000000000000018f700000000000000000000000000000000000000000000000000000000000018f800000000000000000000000000000000000000000000000000000000000018f900000000000000000000000000000000000000000000000000000000000018fa00000000000000000000000000000000000000000000000000000000000018fb00000000000000000000000000000000000000000000000000000000000018fc00000000000000000000000000000000000000000000000000000000000018fd00000000000000000000000000000000000000000000000000000000000018fe00000000000000000000000000000000000000000000000000000000000018ff0000000000000000000000000000000000000000000000000000000000001900000000000000000000000000000000000000000000000000000000000000190100000000000000000000000000000000000000000000000000000000000019020000000000000000000000000000000000000000000000000000000000001903000000000000000000000000000000000000000000000000000000000000190400000000000000000000000000000000000000000000000000000000000019050000000000000000000000000000000000000000000000000000000000001906000000000000000000000000000000000000000000000000000000000000190700000000000000000000000000000000000000000000000000000000000019080000000000000000000000000000000000000000000000000000000000001909000000000000000000000000000000000000000000000000000000000000190a000000000000000000000000000000000000000000000000000000000000190b000000000000000000000000000000000000000000000000000000000000190c000000000000000000000000000000000000000000000000000000000000190d000000000000000000000000000000000000000000000000000000000000190e000000000000000000000000000000000000000000000000000000000000190f0000000000000000000000000000000000000000000000000000000000001910000000000000000000000000000000000000000000000000000000000000191100000000000000000000000000000000000000000000000000000000000019120000000000000000000000000000000000000000000000000000000000001913000000000000000000000000000000000000000000000000000000000000191400000000000000000000000000000000000000000000000000000000000019150000000000000000000000000000000000000000000000000000000000001916000000000000000000000000000000000000000000000000000000000000191700000000000000000000000000000000000000000000000000000000000019180000000000000000000000000000000000000000000000000000000000001919000000000000000000000000000000000000000000000000000000000000191a000000000000000000000000000000000000000000000000000000000000191b000000000000000000000000000000000000000000000000000000000000191c000000000000000000000000000000000000000000000000000000000000191d000000000000000000000000000000000000000000000000000000000000191e000000000000000000000000000000000000000000000000000000000000191f0000000000000000000000000000000000000000000000000000000000001920000000000000000000000000000000000000000000000000000000000000192100000000000000000000000000000000000000000000000000000000000019220000000000000000000000000000000000000000000000000000000000001923000000000000000000000000000000000000000000000000000000000000192400000000000000000000000000000000000000000000000000000000000019250000000000000000000000000000000000000000000000000000000000001926000000000000000000000000000000000000000000000000000000000000192700000000000000000000000000000000000000000000000000000000000019280000000000000000000000000000000000000000000000000000000000001929000000000000000000000000000000000000000000000000000000000000192a000000000000000000000000000000000000000000000000000000000000192b000000000000000000000000000000000000000000000000000000000000192c000000000000000000000000000000000000000000000000000000000000192d000000000000000000000000000000000000000000000000000000000000192e000000000000000000000000000000000000000000000000000000000000192f0000000000000000000000000000000000000000000000000000000000001930000000000000000000000000000000000000000000000000000000000000193100000000000000000000000000000000000000000000000000000000000019320000000000000000000000000000000000000000000000000000000000001933000000000000000000000000000000000000000000000000000000000000193400000000000000000000000000000000000000000000000000000000000019350000000000000000000000000000000000000000000000000000000000001936000000000000000000000000000000000000000000000000000000000000193700000000000000000000000000000000000000000000000000000000000019380000000000000000000000000000000000000000000000000000000000001939000000000000000000000000000000000000000000000000000000000000193a000000000000000000000000000000000000000000000000000000000000193b000000000000000000000000000000000000000000000000000000000000193c000000000000000000000000000000000000000000000000000000000000193d000000000000000000000000000000000000000000000000000000000000193e000000000000000000000000000000000000000000000000000000000000193f0000000000000000000000000000000000000000000000000000000000001940000000000000000000000000000000000000000000000000000000000000194100000000000000000000000000000000000000000000000000000000000019420000000000000000000000000000000000000000000000000000000000001943000000000000000000000000000000000000000000000000000000000000194400000000000000000000000000000000000000000000000000000000000019450000000000000000000000000000000000000000000000000000000000001946000000000000000000000000000000000000000000000000000000000000194700000000000000000000000000000000000000000000000000000000000019480000000000000000000000000000000000000000000000000000000000001949000000000000000000000000000000000000000000000000000000000000194a000000000000000000000000000000000000000000000000000000000000194b000000000000000000000000000000000000000000000000000000000000194c000000000000000000000000000000000000000000000000000000000000194d000000000000000000000000000000000000000000000000000000000000194e000000000000000000000000000000000000000000000000000000000000194f0000000000000000000000000000000000000000000000000000000000001950000000000000000000000000000000000000000000000000000000000000195100000000000000000000000000000000000000000000000000000000000019520000000000000000000000000000000000000000000000000000000000001953000000000000000000000000000000000000000000000000000000000000195400000000000000000000000000000000000000000000000000000000000019550000000000000000000000000000000000000000000000000000000000001956000000000000000000000000000000000000000000000000000000000000195700000000000000000000000000000000000000000000000000000000000019580000000000000000000000000000000000000000000000000000000000001959000000000000000000000000000000000000000000000000000000000000195a000000000000000000000000000000000000000000000000000000000000195b000000000000000000000000000000000000000000000000000000000000195c000000000000000000000000000000000000000000000000000000000000195d000000000000000000000000000000000000000000000000000000000000195e000000000000000000000000000000000000000000000000000000000000195f0000000000000000000000000000000000000000000000000000000000001960000000000000000000000000000000000000000000000000000000000000196100000000000000000000000000000000000000000000000000000000000019620000000000000000000000000000000000000000000000000000000000001963000000000000000000000000000000000000000000000000000000000000196400000000000000000000000000000000000000000000000000000000000019650000000000000000000000000000000000000000000000000000000000001966000000000000000000000000000000000000000000000000000000000000196700000000000000000000000000000000000000000000000000000000000019680000000000000000000000000000000000000000000000000000000000001969000000000000000000000000000000000000000000000000000000000000196a000000000000000000000000000000000000000000000000000000000000196b000000000000000000000000000000000000000000000000000000000000196c000000000000000000000000000000000000000000000000000000000000196d000000000000000000000000000000000000000000000000000000000000196e000000000000000000000000000000000000000000000000000000000000196f0000000000000000000000000000000000000000000000000000000000001970000000000000000000000000000000000000000000000000000000000000197100000000000000000000000000000000000000000000000000000000000019720000000000000000000000000000000000000000000000000000000000001973000000000000000000000000000000000000000000000000000000000000197400000000000000000000000000000000000000000000000000000000000019750000000000000000000000000000000000000000000000000000000000001976000000000000000000000000000000000000000000000000000000000000197700000000000000000000000000000000000000000000000000000000000019780000000000000000000000000000000000000000000000000000000000001979000000000000000000000000000000000000000000000000000000000000197a000000000000000000000000000000000000000000000000000000000000197b000000000000000000000000000000000000000000000000000000000000197c000000000000000000000000000000000000000000000000000000000000197d000000000000000000000000000000000000000000000000000000000000197e000000000000000000000000000000000000000000000000000000000000197f0000000000000000000000000000000000000000000000000000000000001980000000000000000000000000000000000000000000000000000000000000198100000000000000000000000000000000000000000000000000000000000019820000000000000000000000000000000000000000000000000000000000001983000000000000000000000000000000000000000000000000000000000000198400000000000000000000000000000000000000000000000000000000000019850000000000000000000000000000000000000000000000000000000000001986000000000000000000000000000000000000000000000000000000000000198700000000000000000000000000000000000000000000000000000000000019880000000000000000000000000000000000000000000000000000000000001989000000000000000000000000000000000000000000000000000000000000198a000000000000000000000000000000000000000000000000000000000000198b000000000000000000000000000000000000000000000000000000000000198c000000000000000000000000000000000000000000000000000000000000198d000000000000000000000000000000000000000000000000000000000000198e000000000000000000000000000000000000000000000000000000000000198f0000000000000000000000000000000000000000000000000000000000001990000000000000000000000000000000000000000000000000000000000000199100000000000000000000000000000000000000000000000000000000000019920000000000000000000000000000000000000000000000000000000000001993000000000000000000000000000000000000000000000000000000000000199400000000000000000000000000000000000000000000000000000000000019950000000000000000000000000000000000000000000000000000000000001996000000000000000000000000000000000000000000000000000000000000199700000000000000000000000000000000000000000000000000000000000019980000000000000000000000000000000000000000000000000000000000001999000000000000000000000000000000000000000000000000000000000000199a000000000000000000000000000000000000000000000000000000000000199b000000000000000000000000000000000000000000000000000000000000199c000000000000000000000000000000000000000000000000000000000000199d000000000000000000000000000000000000000000000000000000000000199e000000000000000000000000000000000000000000000000000000000000199f00000000000000000000000000000000000000000000000000000000000019a000000000000000000000000000000000000000000000000000000000000019a100000000000000000000000000000000000000000000000000000000000019a200000000000000000000000000000000000000000000000000000000000019a300000000000000000000000000000000000000000000000000000000000019a400000000000000000000000000000000000000000000000000000000000019a500000000000000000000000000000000000000000000000000000000000019a600000000000000000000000000000000000000000000000000000000000019a700000000000000000000000000000000000000000000000000000000000019a800000000000000000000000000000000000000000000000000000000000019a900000000000000000000000000000000000000000000000000000000000019aa00000000000000000000000000000000000000000000000000000000000019ab00000000000000000000000000000000000000000000000000000000000019ac00000000000000000000000000000000000000000000000000000000000019ad00000000000000000000000000000000000000000000000000000000000019ae00000000000000000000000000000000000000000000000000000000000019af00000000000000000000000000000000000000000000000000000000000019b000000000000000000000000000000000000000000000000000000000000019b100000000000000000000000000000000000000000000000000000000000019b200000000000000000000000000000000000000000000000000000000000019b300000000000000000000000000000000000000000000000000000000000019b400000000000000000000000000000000000000000000000000000000000019b500000000000000000000000000000000000000000000000000000000000019b600000000000000000000000000000000000000000000000000000000000019b700000000000000000000000000000000000000000000000000000000000019b800000000000000000000000000000000000000000000000000000000000019b900000000000000000000000000000000000000000000000000000000000019ba00000000000000000000000000000000000000000000000000000000000019bb00000000000000000000000000000000000000000000000000000000000019bc00000000000000000000000000000000000000000000000000000000000019bd00000000000000000000000000000000000000000000000000000000000019be00000000000000000000000000000000000000000000000000000000000019bf00000000000000000000000000000000000000000000000000000000000019c000000000000000000000000000000000000000000000000000000000000019c100000000000000000000000000000000000000000000000000000000000019c200000000000000000000000000000000000000000000000000000000000019c300000000000000000000000000000000000000000000000000000000000019c400000000000000000000000000000000000000000000000000000000000019c500000000000000000000000000000000000000000000000000000000000019c600000000000000000000000000000000000000000000000000000000000019c700000000000000000000000000000000000000000000000000000000000019c800000000000000000000000000000000000000000000000000000000000019c900000000000000000000000000000000000000000000000000000000000019ca00000000000000000000000000000000000000000000000000000000000019cb00000000000000000000000000000000000000000000000000000000000019cc00000000000000000000000000000000000000000000000000000000000019cd00000000000000000000000000000000000000000000000000000000000019ce00000000000000000000000000000000000000000000000000000000000019cf00000000000000000000000000000000000000000000000000000000000019d000000000000000000000000000000000000000000000000000000000000019d100000000000000000000000000000000000000000000000000000000000019d200000000000000000000000000000000000000000000000000000000000019d300000000000000000000000000000000000000000000000000000000000019d400000000000000000000000000000000000000000000000000000000000019d500000000000000000000000000000000000000000000000000000000000019d600000000000000000000000000000000000000000000000000000000000019d700000000000000000000000000000000000000000000000000000000000019d800000000000000000000000000000000000000000000000000000000000019d900000000000000000000000000000000000000000000000000000000000019da00000000000000000000000000000000000000000000000000000000000019db00000000000000000000000000000000000000000000000000000000000019dc00000000000000000000000000000000000000000000000000000000000019dd00000000000000000000000000000000000000000000000000000000000019de00000000000000000000000000000000000000000000000000000000000019df00000000000000000000000000000000000000000000000000000000000019e000000000000000000000000000000000000000000000000000000000000019e100000000000000000000000000000000000000000000000000000000000019e200000000000000000000000000000000000000000000000000000000000019e300000000000000000000000000000000000000000000000000000000000019e400000000000000000000000000000000000000000000000000000000000019e500000000000000000000000000000000000000000000000000000000000019e600000000000000000000000000000000000000000000000000000000000019e700000000000000000000000000000000000000000000000000000000000019e800000000000000000000000000000000000000000000000000000000000019e900000000000000000000000000000000000000000000000000000000000019ea00000000000000000000000000000000000000000000000000000000000019eb00000000000000000000000000000000000000000000000000000000000019ec00000000000000000000000000000000000000000000000000000000000019ed00000000000000000000000000000000000000000000000000000000000019ee00000000000000000000000000000000000000000000000000000000000019ef00000000000000000000000000000000000000000000000000000000000019f000000000000000000000000000000000000000000000000000000000000019f100000000000000000000000000000000000000000000000000000000000019f200000000000000000000000000000000000000000000000000000000000019f300000000000000000000000000000000000000000000000000000000000019f400000000000000000000000000000000000000000000000000000000000019f500000000000000000000000000000000000000000000000000000000000019f600000000000000000000000000000000000000000000000000000000000019f700000000000000000000000000000000000000000000000000000000000019f800000000000000000000000000000000000000000000000000000000000019f900000000000000000000000000000000000000000000000000000000000019fa00000000000000000000000000000000000000000000000000000000000019fb00000000000000000000000000000000000000000000000000000000000019fc00000000000000000000000000000000000000000000000000000000000019fd00000000000000000000000000000000000000000000000000000000000019fe00000000000000000000000000000000000000000000000000000000000019ff0000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000001a010000000000000000000000000000000000000000000000000000000000001a020000000000000000000000000000000000000000000000000000000000001a030000000000000000000000000000000000000000000000000000000000001a040000000000000000000000000000000000000000000000000000000000001a050000000000000000000000000000000000000000000000000000000000001a060000000000000000000000000000000000000000000000000000000000001a070000000000000000000000000000000000000000000000000000000000001a080000000000000000000000000000000000000000000000000000000000001a090000000000000000000000000000000000000000000000000000000000001a0a0000000000000000000000000000000000000000000000000000000000001a0b0000000000000000000000000000000000000000000000000000000000001a0c0000000000000000000000000000000000000000000000000000000000001a0d0000000000000000000000000000000000000000000000000000000000001a0e0000000000000000000000000000000000000000000000000000000000001a0f0000000000000000000000000000000000000000000000000000000000001a100000000000000000000000000000000000000000000000000000000000001a110000000000000000000000000000000000000000000000000000000000001a120000000000000000000000000000000000000000000000000000000000001a130000000000000000000000000000000000000000000000000000000000001a140000000000000000000000000000000000000000000000000000000000001a150000000000000000000000000000000000000000000000000000000000001a160000000000000000000000000000000000000000000000000000000000001a170000000000000000000000000000000000000000000000000000000000001a180000000000000000000000000000000000000000000000000000000000001a190000000000000000000000000000000000000000000000000000000000001a1a0000000000000000000000000000000000000000000000000000000000001a1b0000000000000000000000000000000000000000000000000000000000001a1c0000000000000000000000000000000000000000000000000000000000001a1d0000000000000000000000000000000000000000000000000000000000001a1e0000000000000000000000000000000000000000000000000000000000001a1f0000000000000000000000000000000000000000000000000000000000001a200000000000000000000000000000000000000000000000000000000000001a210000000000000000000000000000000000000000000000000000000000001a220000000000000000000000000000000000000000000000000000000000001a230000000000000000000000000000000000000000000000000000000000001a240000000000000000000000000000000000000000000000000000000000001a250000000000000000000000000000000000000000000000000000000000001a260000000000000000000000000000000000000000000000000000000000001a270000000000000000000000000000000000000000000000000000000000001a280000000000000000000000000000000000000000000000000000000000001a290000000000000000000000000000000000000000000000000000000000001a2a0000000000000000000000000000000000000000000000000000000000001a2b0000000000000000000000000000000000000000000000000000000000001a2c0000000000000000000000000000000000000000000000000000000000001a2d0000000000000000000000000000000000000000000000000000000000001a2e0000000000000000000000000000000000000000000000000000000000001a2f0000000000000000000000000000000000000000000000000000000000001a300000000000000000000000000000000000000000000000000000000000001a310000000000000000000000000000000000000000000000000000000000001a320000000000000000000000000000000000000000000000000000000000001a330000000000000000000000000000000000000000000000000000000000001a340000000000000000000000000000000000000000000000000000000000001a350000000000000000000000000000000000000000000000000000000000001a360000000000000000000000000000000000000000000000000000000000001a370000000000000000000000000000000000000000000000000000000000001a380000000000000000000000000000000000000000000000000000000000001a390000000000000000000000000000000000000000000000000000000000001a3a0000000000000000000000000000000000000000000000000000000000001a3b0000000000000000000000000000000000000000000000000000000000001a3c0000000000000000000000000000000000000000000000000000000000001a3d0000000000000000000000000000000000000000000000000000000000001a3e0000000000000000000000000000000000000000000000000000000000001a3f0000000000000000000000000000000000000000000000000000000000001a400000000000000000000000000000000000000000000000000000000000001a410000000000000000000000000000000000000000000000000000000000001a420000000000000000000000000000000000000000000000000000000000001a430000000000000000000000000000000000000000000000000000000000001a440000000000000000000000000000000000000000000000000000000000001a450000000000000000000000000000000000000000000000000000000000001a460000000000000000000000000000000000000000000000000000000000001a470000000000000000000000000000000000000000000000000000000000001a480000000000000000000000000000000000000000000000000000000000001a490000000000000000000000000000000000000000000000000000000000001a4a0000000000000000000000000000000000000000000000000000000000001a4b0000000000000000000000000000000000000000000000000000000000001a4c0000000000000000000000000000000000000000000000000000000000001a4d0000000000000000000000000000000000000000000000000000000000001a4e0000000000000000000000000000000000000000000000000000000000001a4f0000000000000000000000000000000000000000000000000000000000001a500000000000000000000000000000000000000000000000000000000000001a510000000000000000000000000000000000000000000000000000000000001a520000000000000000000000000000000000000000000000000000000000001a530000000000000000000000000000000000000000000000000000000000001a540000000000000000000000000000000000000000000000000000000000001a550000000000000000000000000000000000000000000000000000000000001a560000000000000000000000000000000000000000000000000000000000001a570000000000000000000000000000000000000000000000000000000000001a580000000000000000000000000000000000000000000000000000000000001a590000000000000000000000000000000000000000000000000000000000001a5a0000000000000000000000000000000000000000000000000000000000001a5b0000000000000000000000000000000000000000000000000000000000001a5c0000000000000000000000000000000000000000000000000000000000001a5d0000000000000000000000000000000000000000000000000000000000001a5e0000000000000000000000000000000000000000000000000000000000001a5f0000000000000000000000000000000000000000000000000000000000001a600000000000000000000000000000000000000000000000000000000000001a610000000000000000000000000000000000000000000000000000000000001a620000000000000000000000000000000000000000000000000000000000001a630000000000000000000000000000000000000000000000000000000000001a640000000000000000000000000000000000000000000000000000000000001a650000000000000000000000000000000000000000000000000000000000001a660000000000000000000000000000000000000000000000000000000000001a670000000000000000000000000000000000000000000000000000000000001a680000000000000000000000000000000000000000000000000000000000001a690000000000000000000000000000000000000000000000000000000000001a6a0000000000000000000000000000000000000000000000000000000000001a6b0000000000000000000000000000000000000000000000000000000000001a6c0000000000000000000000000000000000000000000000000000000000001a6d0000000000000000000000000000000000000000000000000000000000001a6e0000000000000000000000000000000000000000000000000000000000001a6f0000000000000000000000000000000000000000000000000000000000001a700000000000000000000000000000000000000000000000000000000000001a710000000000000000000000000000000000000000000000000000000000001a720000000000000000000000000000000000000000000000000000000000001a730000000000000000000000000000000000000000000000000000000000001a740000000000000000000000000000000000000000000000000000000000001a750000000000000000000000000000000000000000000000000000000000001a760000000000000000000000000000000000000000000000000000000000001a770000000000000000000000000000000000000000000000000000000000001a780000000000000000000000000000000000000000000000000000000000001a790000000000000000000000000000000000000000000000000000000000001a7a0000000000000000000000000000000000000000000000000000000000001a7b0000000000000000000000000000000000000000000000000000000000001a7c0000000000000000000000000000000000000000000000000000000000001a7d0000000000000000000000000000000000000000000000000000000000001a7e0000000000000000000000000000000000000000000000000000000000001a7f0000000000000000000000000000000000000000000000000000000000001a800000000000000000000000000000000000000000000000000000000000001a810000000000000000000000000000000000000000000000000000000000001a820000000000000000000000000000000000000000000000000000000000001a830000000000000000000000000000000000000000000000000000000000001a840000000000000000000000000000000000000000000000000000000000001a850000000000000000000000000000000000000000000000000000000000001a860000000000000000000000000000000000000000000000000000000000001a870000000000000000000000000000000000000000000000000000000000001a880000000000000000000000000000000000000000000000000000000000001a890000000000000000000000000000000000000000000000000000000000001a8a0000000000000000000000000000000000000000000000000000000000001a8b0000000000000000000000000000000000000000000000000000000000001a8c0000000000000000000000000000000000000000000000000000000000001a8d0000000000000000000000000000000000000000000000000000000000001a8e0000000000000000000000000000000000000000000000000000000000001a8f0000000000000000000000000000000000000000000000000000000000001a900000000000000000000000000000000000000000000000000000000000001a910000000000000000000000000000000000000000000000000000000000001a920000000000000000000000000000000000000000000000000000000000001a930000000000000000000000000000000000000000000000000000000000001a940000000000000000000000000000000000000000000000000000000000001a950000000000000000000000000000000000000000000000000000000000001a960000000000000000000000000000000000000000000000000000000000001a970000000000000000000000000000000000000000000000000000000000001a980000000000000000000000000000000000000000000000000000000000001a990000000000000000000000000000000000000000000000000000000000001a9a0000000000000000000000000000000000000000000000000000000000001a9b0000000000000000000000000000000000000000000000000000000000001a9c0000000000000000000000000000000000000000000000000000000000001a9d0000000000000000000000000000000000000000000000000000000000001a9e0000000000000000000000000000000000000000000000000000000000001a9f0000000000000000000000000000000000000000000000000000000000001aa00000000000000000000000000000000000000000000000000000000000001aa10000000000000000000000000000000000000000000000000000000000001aa20000000000000000000000000000000000000000000000000000000000001aa30000000000000000000000000000000000000000000000000000000000001aa40000000000000000000000000000000000000000000000000000000000001aa50000000000000000000000000000000000000000000000000000000000001aa60000000000000000000000000000000000000000000000000000000000001aa70000000000000000000000000000000000000000000000000000000000001aa80000000000000000000000000000000000000000000000000000000000001aa90000000000000000000000000000000000000000000000000000000000001aaa0000000000000000000000000000000000000000000000000000000000001aab0000000000000000000000000000000000000000000000000000000000001aac0000000000000000000000000000000000000000000000000000000000001aad0000000000000000000000000000000000000000000000000000000000001aae0000000000000000000000000000000000000000000000000000000000001aaf0000000000000000000000000000000000000000000000000000000000001ab00000000000000000000000000000000000000000000000000000000000001ab10000000000000000000000000000000000000000000000000000000000001ab20000000000000000000000000000000000000000000000000000000000001ab30000000000000000000000000000000000000000000000000000000000001ab40000000000000000000000000000000000000000000000000000000000001ab50000000000000000000000000000000000000000000000000000000000001ab60000000000000000000000000000000000000000000000000000000000001ab70000000000000000000000000000000000000000000000000000000000001ab80000000000000000000000000000000000000000000000000000000000001ab90000000000000000000000000000000000000000000000000000000000001aba0000000000000000000000000000000000000000000000000000000000001abb0000000000000000000000000000000000000000000000000000000000001abc0000000000000000000000000000000000000000000000000000000000001abd0000000000000000000000000000000000000000000000000000000000001abe0000000000000000000000000000000000000000000000000000000000001abf0000000000000000000000000000000000000000000000000000000000001ac00000000000000000000000000000000000000000000000000000000000001ac10000000000000000000000000000000000000000000000000000000000001ac20000000000000000000000000000000000000000000000000000000000001ac30000000000000000000000000000000000000000000000000000000000001ac40000000000000000000000000000000000000000000000000000000000001ac50000000000000000000000000000000000000000000000000000000000001ac60000000000000000000000000000000000000000000000000000000000001ac70000000000000000000000000000000000000000000000000000000000001ac80000000000000000000000000000000000000000000000000000000000001ac90000000000000000000000000000000000000000000000000000000000001aca0000000000000000000000000000000000000000000000000000000000001acb0000000000000000000000000000000000000000000000000000000000001acc0000000000000000000000000000000000000000000000000000000000001acd0000000000000000000000000000000000000000000000000000000000001ace0000000000000000000000000000000000000000000000000000000000001acf0000000000000000000000000000000000000000000000000000000000001ad00000000000000000000000000000000000000000000000000000000000001ad10000000000000000000000000000000000000000000000000000000000001ad20000000000000000000000000000000000000000000000000000000000001ad30000000000000000000000000000000000000000000000000000000000001ad40000000000000000000000000000000000000000000000000000000000001ad50000000000000000000000000000000000000000000000000000000000001ad60000000000000000000000000000000000000000000000000000000000001ad70000000000000000000000000000000000000000000000000000000000001ad80000000000000000000000000000000000000000000000000000000000001ad90000000000000000000000000000000000000000000000000000000000001ada0000000000000000000000000000000000000000000000000000000000001adb0000000000000000000000000000000000000000000000000000000000001adc0000000000000000000000000000000000000000000000000000000000001add0000000000000000000000000000000000000000000000000000000000001ade0000000000000000000000000000000000000000000000000000000000001adf0000000000000000000000000000000000000000000000000000000000001ae00000000000000000000000000000000000000000000000000000000000001ae10000000000000000000000000000000000000000000000000000000000001ae20000000000000000000000000000000000000000000000000000000000001ae30000000000000000000000000000000000000000000000000000000000001ae40000000000000000000000000000000000000000000000000000000000001ae50000000000000000000000000000000000000000000000000000000000001ae60000000000000000000000000000000000000000000000000000000000001ae70000000000000000000000000000000000000000000000000000000000001ae80000000000000000000000000000000000000000000000000000000000001ae90000000000000000000000000000000000000000000000000000000000001aea0000000000000000000000000000000000000000000000000000000000001aeb0000000000000000000000000000000000000000000000000000000000001aec0000000000000000000000000000000000000000000000000000000000001aed0000000000000000000000000000000000000000000000000000000000001aee0000000000000000000000000000000000000000000000000000000000001aef0000000000000000000000000000000000000000000000000000000000001af00000000000000000000000000000000000000000000000000000000000001af10000000000000000000000000000000000000000000000000000000000001af20000000000000000000000000000000000000000000000000000000000001af30000000000000000000000000000000000000000000000000000000000001af40000000000000000000000000000000000000000000000000000000000001af50000000000000000000000000000000000000000000000000000000000001af60000000000000000000000000000000000000000000000000000000000001af70000000000000000000000000000000000000000000000000000000000001af80000000000000000000000000000000000000000000000000000000000001af90000000000000000000000000000000000000000000000000000000000001afa0000000000000000000000000000000000000000000000000000000000001afb0000000000000000000000000000000000000000000000000000000000001afc0000000000000000000000000000000000000000000000000000000000001afd0000000000000000000000000000000000000000000000000000000000001afe0000000000000000000000000000000000000000000000000000000000001aff0000000000000000000000000000000000000000000000000000000000001b000000000000000000000000000000000000000000000000000000000000001b010000000000000000000000000000000000000000000000000000000000001b020000000000000000000000000000000000000000000000000000000000001b030000000000000000000000000000000000000000000000000000000000001b040000000000000000000000000000000000000000000000000000000000001b050000000000000000000000000000000000000000000000000000000000001b060000000000000000000000000000000000000000000000000000000000001b070000000000000000000000000000000000000000000000000000000000001b080000000000000000000000000000000000000000000000000000000000001b090000000000000000000000000000000000000000000000000000000000001b0a0000000000000000000000000000000000000000000000000000000000001b0b0000000000000000000000000000000000000000000000000000000000001b0c0000000000000000000000000000000000000000000000000000000000001b0d0000000000000000000000000000000000000000000000000000000000001b0e0000000000000000000000000000000000000000000000000000000000001b0f0000000000000000000000000000000000000000000000000000000000001b100000000000000000000000000000000000000000000000000000000000001b110000000000000000000000000000000000000000000000000000000000001b120000000000000000000000000000000000000000000000000000000000001b130000000000000000000000000000000000000000000000000000000000001b140000000000000000000000000000000000000000000000000000000000001b150000000000000000000000000000000000000000000000000000000000001b160000000000000000000000000000000000000000000000000000000000001b170000000000000000000000000000000000000000000000000000000000001b180000000000000000000000000000000000000000000000000000000000001b190000000000000000000000000000000000000000000000000000000000001b1a0000000000000000000000000000000000000000000000000000000000001b1b0000000000000000000000000000000000000000000000000000000000001b1c0000000000000000000000000000000000000000000000000000000000001b1d0000000000000000000000000000000000000000000000000000000000001b1e0000000000000000000000000000000000000000000000000000000000001b1f0000000000000000000000000000000000000000000000000000000000001b200000000000000000000000000000000000000000000000000000000000001b210000000000000000000000000000000000000000000000000000000000001b220000000000000000000000000000000000000000000000000000000000001b230000000000000000000000000000000000000000000000000000000000001b240000000000000000000000000000000000000000000000000000000000001b250000000000000000000000000000000000000000000000000000000000001b260000000000000000000000000000000000000000000000000000000000001b270000000000000000000000000000000000000000000000000000000000001b280000000000000000000000000000000000000000000000000000000000001b290000000000000000000000000000000000000000000000000000000000001b2a0000000000000000000000000000000000000000000000000000000000001b2b0000000000000000000000000000000000000000000000000000000000001b2c0000000000000000000000000000000000000000000000000000000000001b2d0000000000000000000000000000000000000000000000000000000000001b2e0000000000000000000000000000000000000000000000000000000000001b2f0000000000000000000000000000000000000000000000000000000000001b300000000000000000000000000000000000000000000000000000000000001b310000000000000000000000000000000000000000000000000000000000001b320000000000000000000000000000000000000000000000000000000000001b330000000000000000000000000000000000000000000000000000000000001b340000000000000000000000000000000000000000000000000000000000001b350000000000000000000000000000000000000000000000000000000000001b360000000000000000000000000000000000000000000000000000000000001b370000000000000000000000000000000000000000000000000000000000001b380000000000000000000000000000000000000000000000000000000000001b390000000000000000000000000000000000000000000000000000000000001b3a0000000000000000000000000000000000000000000000000000000000001b3b0000000000000000000000000000000000000000000000000000000000001b3c0000000000000000000000000000000000000000000000000000000000001b3d0000000000000000000000000000000000000000000000000000000000001b3e0000000000000000000000000000000000000000000000000000000000001b3f0000000000000000000000000000000000000000000000000000000000001b400000000000000000000000000000000000000000000000000000000000001b410000000000000000000000000000000000000000000000000000000000001b420000000000000000000000000000000000000000000000000000000000001b430000000000000000000000000000000000000000000000000000000000001b440000000000000000000000000000000000000000000000000000000000001b450000000000000000000000000000000000000000000000000000000000001b460000000000000000000000000000000000000000000000000000000000001b470000000000000000000000000000000000000000000000000000000000001b480000000000000000000000000000000000000000000000000000000000001b490000000000000000000000000000000000000000000000000000000000001b4a0000000000000000000000000000000000000000000000000000000000001b4b0000000000000000000000000000000000000000000000000000000000001b4c0000000000000000000000000000000000000000000000000000000000001b4d0000000000000000000000000000000000000000000000000000000000001b4e0000000000000000000000000000000000000000000000000000000000001b4f0000000000000000000000000000000000000000000000000000000000001b500000000000000000000000000000000000000000000000000000000000001b510000000000000000000000000000000000000000000000000000000000001b520000000000000000000000000000000000000000000000000000000000001b530000000000000000000000000000000000000000000000000000000000001b540000000000000000000000000000000000000000000000000000000000001b550000000000000000000000000000000000000000000000000000000000001b560000000000000000000000000000000000000000000000000000000000001b570000000000000000000000000000000000000000000000000000000000001b580000000000000000000000000000000000000000000000000000000000001b590000000000000000000000000000000000000000000000000000000000001b5a0000000000000000000000000000000000000000000000000000000000001b5b0000000000000000000000000000000000000000000000000000000000001b5c0000000000000000000000000000000000000000000000000000000000001b5d0000000000000000000000000000000000000000000000000000000000001b5e0000000000000000000000000000000000000000000000000000000000001b5f0000000000000000000000000000000000000000000000000000000000001b600000000000000000000000000000000000000000000000000000000000001b610000000000000000000000000000000000000000000000000000000000001b620000000000000000000000000000000000000000000000000000000000001b630000000000000000000000000000000000000000000000000000000000001b640000000000000000000000000000000000000000000000000000000000001b650000000000000000000000000000000000000000000000000000000000001b660000000000000000000000000000000000000000000000000000000000001b670000000000000000000000000000000000000000000000000000000000001b680000000000000000000000000000000000000000000000000000000000001b690000000000000000000000000000000000000000000000000000000000001b6a0000000000000000000000000000000000000000000000000000000000001b6b0000000000000000000000000000000000000000000000000000000000001b6c0000000000000000000000000000000000000000000000000000000000001b6d0000000000000000000000000000000000000000000000000000000000001b6e0000000000000000000000000000000000000000000000000000000000001b6f0000000000000000000000000000000000000000000000000000000000001b700000000000000000000000000000000000000000000000000000000000001b710000000000000000000000000000000000000000000000000000000000001b720000000000000000000000000000000000000000000000000000000000001b730000000000000000000000000000000000000000000000000000000000001b740000000000000000000000000000000000000000000000000000000000001b750000000000000000000000000000000000000000000000000000000000001b760000000000000000000000000000000000000000000000000000000000001b770000000000000000000000000000000000000000000000000000000000001b780000000000000000000000000000000000000000000000000000000000001b790000000000000000000000000000000000000000000000000000000000001b7a0000000000000000000000000000000000000000000000000000000000001b7b0000000000000000000000000000000000000000000000000000000000001b7c0000000000000000000000000000000000000000000000000000000000001b7d0000000000000000000000000000000000000000000000000000000000001b7e0000000000000000000000000000000000000000000000000000000000001b7f0000000000000000000000000000000000000000000000000000000000001b800000000000000000000000000000000000000000000000000000000000001b810000000000000000000000000000000000000000000000000000000000001b820000000000000000000000000000000000000000000000000000000000001b830000000000000000000000000000000000000000000000000000000000001b840000000000000000000000000000000000000000000000000000000000001b850000000000000000000000000000000000000000000000000000000000001b860000000000000000000000000000000000000000000000000000000000001b870000000000000000000000000000000000000000000000000000000000001b880000000000000000000000000000000000000000000000000000000000001b890000000000000000000000000000000000000000000000000000000000001b8a0000000000000000000000000000000000000000000000000000000000001b8b0000000000000000000000000000000000000000000000000000000000001b8c0000000000000000000000000000000000000000000000000000000000001b8d0000000000000000000000000000000000000000000000000000000000001b8e0000000000000000000000000000000000000000000000000000000000001b8f0000000000000000000000000000000000000000000000000000000000001b900000000000000000000000000000000000000000000000000000000000001b910000000000000000000000000000000000000000000000000000000000001b920000000000000000000000000000000000000000000000000000000000001b930000000000000000000000000000000000000000000000000000000000001b940000000000000000000000000000000000000000000000000000000000001b950000000000000000000000000000000000000000000000000000000000001b960000000000000000000000000000000000000000000000000000000000001b970000000000000000000000000000000000000000000000000000000000001b980000000000000000000000000000000000000000000000000000000000001b990000000000000000000000000000000000000000000000000000000000001b9a0000000000000000000000000000000000000000000000000000000000001b9b0000000000000000000000000000000000000000000000000000000000001b9c0000000000000000000000000000000000000000000000000000000000001b9d0000000000000000000000000000000000000000000000000000000000001b9e0000000000000000000000000000000000000000000000000000000000001b9f0000000000000000000000000000000000000000000000000000000000001ba00000000000000000000000000000000000000000000000000000000000001ba10000000000000000000000000000000000000000000000000000000000001ba20000000000000000000000000000000000000000000000000000000000001ba30000000000000000000000000000000000000000000000000000000000001ba40000000000000000000000000000000000000000000000000000000000001ba50000000000000000000000000000000000000000000000000000000000001ba60000000000000000000000000000000000000000000000000000000000001ba70000000000000000000000000000000000000000000000000000000000001ba80000000000000000000000000000000000000000000000000000000000001ba90000000000000000000000000000000000000000000000000000000000001baa0000000000000000000000000000000000000000000000000000000000001bab0000000000000000000000000000000000000000000000000000000000001bac0000000000000000000000000000000000000000000000000000000000001bad0000000000000000000000000000000000000000000000000000000000001bae0000000000000000000000000000000000000000000000000000000000001baf0000000000000000000000000000000000000000000000000000000000001bb00000000000000000000000000000000000000000000000000000000000001bb10000000000000000000000000000000000000000000000000000000000001bb20000000000000000000000000000000000000000000000000000000000001bb30000000000000000000000000000000000000000000000000000000000001bb40000000000000000000000000000000000000000000000000000000000001bb50000000000000000000000000000000000000000000000000000000000001bb60000000000000000000000000000000000000000000000000000000000001bb70000000000000000000000000000000000000000000000000000000000001bb80000000000000000000000000000000000000000000000000000000000001bb90000000000000000000000000000000000000000000000000000000000001bba0000000000000000000000000000000000000000000000000000000000001bbb0000000000000000000000000000000000000000000000000000000000001bbc0000000000000000000000000000000000000000000000000000000000001bbd0000000000000000000000000000000000000000000000000000000000001bbe0000000000000000000000000000000000000000000000000000000000001bbf0000000000000000000000000000000000000000000000000000000000001bc00000000000000000000000000000000000000000000000000000000000001bc10000000000000000000000000000000000000000000000000000000000001bc20000000000000000000000000000000000000000000000000000000000001bc30000000000000000000000000000000000000000000000000000000000001bc40000000000000000000000000000000000000000000000000000000000001bc50000000000000000000000000000000000000000000000000000000000001bc60000000000000000000000000000000000000000000000000000000000001bc70000000000000000000000000000000000000000000000000000000000001bc80000000000000000000000000000000000000000000000000000000000001bc90000000000000000000000000000000000000000000000000000000000001bca0000000000000000000000000000000000000000000000000000000000001bcb0000000000000000000000000000000000000000000000000000000000001bcc0000000000000000000000000000000000000000000000000000000000001bcd0000000000000000000000000000000000000000000000000000000000001bce0000000000000000000000000000000000000000000000000000000000001bcf0000000000000000000000000000000000000000000000000000000000001bd00000000000000000000000000000000000000000000000000000000000001bd10000000000000000000000000000000000000000000000000000000000001bd20000000000000000000000000000000000000000000000000000000000001bd30000000000000000000000000000000000000000000000000000000000001bd40000000000000000000000000000000000000000000000000000000000001bd50000000000000000000000000000000000000000000000000000000000001bd60000000000000000000000000000000000000000000000000000000000001bd70000000000000000000000000000000000000000000000000000000000001bd80000000000000000000000000000000000000000000000000000000000001bd90000000000000000000000000000000000000000000000000000000000001bda0000000000000000000000000000000000000000000000000000000000001bdb0000000000000000000000000000000000000000000000000000000000001bdc0000000000000000000000000000000000000000000000000000000000001bdd0000000000000000000000000000000000000000000000000000000000001bde0000000000000000000000000000000000000000000000000000000000001bdf0000000000000000000000000000000000000000000000000000000000001be00000000000000000000000000000000000000000000000000000000000001be10000000000000000000000000000000000000000000000000000000000001be20000000000000000000000000000000000000000000000000000000000001be30000000000000000000000000000000000000000000000000000000000001be40000000000000000000000000000000000000000000000000000000000001be50000000000000000000000000000000000000000000000000000000000001be60000000000000000000000000000000000000000000000000000000000001be70000000000000000000000000000000000000000000000000000000000001be80000000000000000000000000000000000000000000000000000000000001be90000000000000000000000000000000000000000000000000000000000001bea0000000000000000000000000000000000000000000000000000000000001beb0000000000000000000000000000000000000000000000000000000000001bec0000000000000000000000000000000000000000000000000000000000001bed0000000000000000000000000000000000000000000000000000000000001bee0000000000000000000000000000000000000000000000000000000000001bef0000000000000000000000000000000000000000000000000000000000001bf00000000000000000000000000000000000000000000000000000000000001bf10000000000000000000000000000000000000000000000000000000000001bf20000000000000000000000000000000000000000000000000000000000001bf30000000000000000000000000000000000000000000000000000000000001bf40000000000000000000000000000000000000000000000000000000000001bf50000000000000000000000000000000000000000000000000000000000001bf60000000000000000000000000000000000000000000000000000000000001bf70000000000000000000000000000000000000000000000000000000000001bf80000000000000000000000000000000000000000000000000000000000001bf90000000000000000000000000000000000000000000000000000000000001bfa0000000000000000000000000000000000000000000000000000000000001bfb0000000000000000000000000000000000000000000000000000000000001bfc0000000000000000000000000000000000000000000000000000000000001bfd0000000000000000000000000000000000000000000000000000000000001bfe0000000000000000000000000000000000000000000000000000000000001bff0000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000001c010000000000000000000000000000000000000000000000000000000000001c020000000000000000000000000000000000000000000000000000000000001c030000000000000000000000000000000000000000000000000000000000001c040000000000000000000000000000000000000000000000000000000000001c050000000000000000000000000000000000000000000000000000000000001c060000000000000000000000000000000000000000000000000000000000001c070000000000000000000000000000000000000000000000000000000000001c080000000000000000000000000000000000000000000000000000000000001c090000000000000000000000000000000000000000000000000000000000001c0a0000000000000000000000000000000000000000000000000000000000001c0b0000000000000000000000000000000000000000000000000000000000001c0c0000000000000000000000000000000000000000000000000000000000001c0d0000000000000000000000000000000000000000000000000000000000001c0e0000000000000000000000000000000000000000000000000000000000001c0f0000000000000000000000000000000000000000000000000000000000001c100000000000000000000000000000000000000000000000000000000000001c110000000000000000000000000000000000000000000000000000000000001c120000000000000000000000000000000000000000000000000000000000001c130000000000000000000000000000000000000000000000000000000000001c140000000000000000000000000000000000000000000000000000000000001c150000000000000000000000000000000000000000000000000000000000001c160000000000000000000000000000000000000000000000000000000000001c170000000000000000000000000000000000000000000000000000000000001c180000000000000000000000000000000000000000000000000000000000001c190000000000000000000000000000000000000000000000000000000000001c1a0000000000000000000000000000000000000000000000000000000000001c1b0000000000000000000000000000000000000000000000000000000000001c1c0000000000000000000000000000000000000000000000000000000000001c1d0000000000000000000000000000000000000000000000000000000000001c1e0000000000000000000000000000000000000000000000000000000000001c1f0000000000000000000000000000000000000000000000000000000000001c200000000000000000000000000000000000000000000000000000000000001c210000000000000000000000000000000000000000000000000000000000001c220000000000000000000000000000000000000000000000000000000000001c230000000000000000000000000000000000000000000000000000000000001c240000000000000000000000000000000000000000000000000000000000001c250000000000000000000000000000000000000000000000000000000000001c260000000000000000000000000000000000000000000000000000000000001c270000000000000000000000000000000000000000000000000000000000001c280000000000000000000000000000000000000000000000000000000000001c290000000000000000000000000000000000000000000000000000000000001c2a0000000000000000000000000000000000000000000000000000000000001c2b0000000000000000000000000000000000000000000000000000000000001c2c0000000000000000000000000000000000000000000000000000000000001c2d0000000000000000000000000000000000000000000000000000000000001c2e0000000000000000000000000000000000000000000000000000000000001c2f0000000000000000000000000000000000000000000000000000000000001c300000000000000000000000000000000000000000000000000000000000001c310000000000000000000000000000000000000000000000000000000000001c320000000000000000000000000000000000000000000000000000000000001c330000000000000000000000000000000000000000000000000000000000001c340000000000000000000000000000000000000000000000000000000000001c350000000000000000000000000000000000000000000000000000000000001c360000000000000000000000000000000000000000000000000000000000001c370000000000000000000000000000000000000000000000000000000000001c380000000000000000000000000000000000000000000000000000000000001c390000000000000000000000000000000000000000000000000000000000001c3a0000000000000000000000000000000000000000000000000000000000001c3b0000000000000000000000000000000000000000000000000000000000001c3c0000000000000000000000000000000000000000000000000000000000001c3d0000000000000000000000000000000000000000000000000000000000001c3e0000000000000000000000000000000000000000000000000000000000001c3f0000000000000000000000000000000000000000000000000000000000001c400000000000000000000000000000000000000000000000000000000000001c410000000000000000000000000000000000000000000000000000000000001c420000000000000000000000000000000000000000000000000000000000001c430000000000000000000000000000000000000000000000000000000000001c440000000000000000000000000000000000000000000000000000000000001c450000000000000000000000000000000000000000000000000000000000001c460000000000000000000000000000000000000000000000000000000000001c470000000000000000000000000000000000000000000000000000000000001c480000000000000000000000000000000000000000000000000000000000001c490000000000000000000000000000000000000000000000000000000000001c4a0000000000000000000000000000000000000000000000000000000000001c4b0000000000000000000000000000000000000000000000000000000000001c4c0000000000000000000000000000000000000000000000000000000000001c4d0000000000000000000000000000000000000000000000000000000000001c4e0000000000000000000000000000000000000000000000000000000000001c4f0000000000000000000000000000000000000000000000000000000000001c500000000000000000000000000000000000000000000000000000000000001c510000000000000000000000000000000000000000000000000000000000001c520000000000000000000000000000000000000000000000000000000000001c530000000000000000000000000000000000000000000000000000000000001c540000000000000000000000000000000000000000000000000000000000001c550000000000000000000000000000000000000000000000000000000000001c560000000000000000000000000000000000000000000000000000000000001c570000000000000000000000000000000000000000000000000000000000001c580000000000000000000000000000000000000000000000000000000000001c590000000000000000000000000000000000000000000000000000000000001c5a0000000000000000000000000000000000000000000000000000000000001c5b0000000000000000000000000000000000000000000000000000000000001c5c0000000000000000000000000000000000000000000000000000000000001c5d0000000000000000000000000000000000000000000000000000000000001c5e0000000000000000000000000000000000000000000000000000000000001c5f0000000000000000000000000000000000000000000000000000000000001c600000000000000000000000000000000000000000000000000000000000001c610000000000000000000000000000000000000000000000000000000000001c620000000000000000000000000000000000000000000000000000000000001c630000000000000000000000000000000000000000000000000000000000001c640000000000000000000000000000000000000000000000000000000000001c650000000000000000000000000000000000000000000000000000000000001c660000000000000000000000000000000000000000000000000000000000001c670000000000000000000000000000000000000000000000000000000000001c680000000000000000000000000000000000000000000000000000000000001c690000000000000000000000000000000000000000000000000000000000001c6a0000000000000000000000000000000000000000000000000000000000001c6b0000000000000000000000000000000000000000000000000000000000001c6c0000000000000000000000000000000000000000000000000000000000001c6d0000000000000000000000000000000000000000000000000000000000001c6e0000000000000000000000000000000000000000000000000000000000001c6f0000000000000000000000000000000000000000000000000000000000001c700000000000000000000000000000000000000000000000000000000000001c710000000000000000000000000000000000000000000000000000000000001c720000000000000000000000000000000000000000000000000000000000001c730000000000000000000000000000000000000000000000000000000000001c740000000000000000000000000000000000000000000000000000000000001c750000000000000000000000000000000000000000000000000000000000001c760000000000000000000000000000000000000000000000000000000000001c770000000000000000000000000000000000000000000000000000000000001c780000000000000000000000000000000000000000000000000000000000001c790000000000000000000000000000000000000000000000000000000000001c7a0000000000000000000000000000000000000000000000000000000000001c7b0000000000000000000000000000000000000000000000000000000000001c7c0000000000000000000000000000000000000000000000000000000000001c7d0000000000000000000000000000000000000000000000000000000000001c7e0000000000000000000000000000000000000000000000000000000000001c7f0000000000000000000000000000000000000000000000000000000000001c800000000000000000000000000000000000000000000000000000000000001c810000000000000000000000000000000000000000000000000000000000001c820000000000000000000000000000000000000000000000000000000000001c830000000000000000000000000000000000000000000000000000000000001c840000000000000000000000000000000000000000000000000000000000001c850000000000000000000000000000000000000000000000000000000000001c860000000000000000000000000000000000000000000000000000000000001c870000000000000000000000000000000000000000000000000000000000001c880000000000000000000000000000000000000000000000000000000000001c890000000000000000000000000000000000000000000000000000000000001c8a0000000000000000000000000000000000000000000000000000000000001c8b0000000000000000000000000000000000000000000000000000000000001c8c0000000000000000000000000000000000000000000000000000000000001c8d0000000000000000000000000000000000000000000000000000000000001c8e0000000000000000000000000000000000000000000000000000000000001c8f0000000000000000000000000000000000000000000000000000000000001c900000000000000000000000000000000000000000000000000000000000001c910000000000000000000000000000000000000000000000000000000000001c920000000000000000000000000000000000000000000000000000000000001c930000000000000000000000000000000000000000000000000000000000001c940000000000000000000000000000000000000000000000000000000000001c950000000000000000000000000000000000000000000000000000000000001c960000000000000000000000000000000000000000000000000000000000001c970000000000000000000000000000000000000000000000000000000000001c980000000000000000000000000000000000000000000000000000000000001c990000000000000000000000000000000000000000000000000000000000001c9a0000000000000000000000000000000000000000000000000000000000001c9b0000000000000000000000000000000000000000000000000000000000001c9c0000000000000000000000000000000000000000000000000000000000001c9d0000000000000000000000000000000000000000000000000000000000001c9e0000000000000000000000000000000000000000000000000000000000001c9f0000000000000000000000000000000000000000000000000000000000001ca00000000000000000000000000000000000000000000000000000000000001ca10000000000000000000000000000000000000000000000000000000000001ca20000000000000000000000000000000000000000000000000000000000001ca30000000000000000000000000000000000000000000000000000000000001ca40000000000000000000000000000000000000000000000000000000000001ca50000000000000000000000000000000000000000000000000000000000001ca60000000000000000000000000000000000000000000000000000000000001ca70000000000000000000000000000000000000000000000000000000000001ca80000000000000000000000000000000000000000000000000000000000001ca90000000000000000000000000000000000000000000000000000000000001caa0000000000000000000000000000000000000000000000000000000000001cab0000000000000000000000000000000000000000000000000000000000001cac0000000000000000000000000000000000000000000000000000000000001cad0000000000000000000000000000000000000000000000000000000000001cae0000000000000000000000000000000000000000000000000000000000001caf0000000000000000000000000000000000000000000000000000000000001cb00000000000000000000000000000000000000000000000000000000000001cb10000000000000000000000000000000000000000000000000000000000001cb20000000000000000000000000000000000000000000000000000000000001cb30000000000000000000000000000000000000000000000000000000000001cb40000000000000000000000000000000000000000000000000000000000001cb50000000000000000000000000000000000000000000000000000000000001cb60000000000000000000000000000000000000000000000000000000000001cb70000000000000000000000000000000000000000000000000000000000001cb80000000000000000000000000000000000000000000000000000000000001cb90000000000000000000000000000000000000000000000000000000000001cba0000000000000000000000000000000000000000000000000000000000001cbb0000000000000000000000000000000000000000000000000000000000001cbc0000000000000000000000000000000000000000000000000000000000001cbd0000000000000000000000000000000000000000000000000000000000001cbe0000000000000000000000000000000000000000000000000000000000001cbf0000000000000000000000000000000000000000000000000000000000001cc00000000000000000000000000000000000000000000000000000000000001cc10000000000000000000000000000000000000000000000000000000000001cc20000000000000000000000000000000000000000000000000000000000001cc30000000000000000000000000000000000000000000000000000000000001cc40000000000000000000000000000000000000000000000000000000000001cc50000000000000000000000000000000000000000000000000000000000001cc60000000000000000000000000000000000000000000000000000000000001cc70000000000000000000000000000000000000000000000000000000000001cc80000000000000000000000000000000000000000000000000000000000001cc90000000000000000000000000000000000000000000000000000000000001cca0000000000000000000000000000000000000000000000000000000000001ccb0000000000000000000000000000000000000000000000000000000000001ccc0000000000000000000000000000000000000000000000000000000000001ccd0000000000000000000000000000000000000000000000000000000000001cce0000000000000000000000000000000000000000000000000000000000001ccf0000000000000000000000000000000000000000000000000000000000001cd00000000000000000000000000000000000000000000000000000000000001cd10000000000000000000000000000000000000000000000000000000000001cd20000000000000000000000000000000000000000000000000000000000001cd30000000000000000000000000000000000000000000000000000000000001cd40000000000000000000000000000000000000000000000000000000000001cd50000000000000000000000000000000000000000000000000000000000001cd60000000000000000000000000000000000000000000000000000000000001cd70000000000000000000000000000000000000000000000000000000000001cd80000000000000000000000000000000000000000000000000000000000001cd90000000000000000000000000000000000000000000000000000000000001cda0000000000000000000000000000000000000000000000000000000000001cdb0000000000000000000000000000000000000000000000000000000000001cdc0000000000000000000000000000000000000000000000000000000000001cdd0000000000000000000000000000000000000000000000000000000000001cde0000000000000000000000000000000000000000000000000000000000001cdf0000000000000000000000000000000000000000000000000000000000001ce00000000000000000000000000000000000000000000000000000000000001ce10000000000000000000000000000000000000000000000000000000000001ce20000000000000000000000000000000000000000000000000000000000001ce30000000000000000000000000000000000000000000000000000000000001ce40000000000000000000000000000000000000000000000000000000000001ce50000000000000000000000000000000000000000000000000000000000001ce60000000000000000000000000000000000000000000000000000000000001ce70000000000000000000000000000000000000000000000000000000000001ce80000000000000000000000000000000000000000000000000000000000001ce90000000000000000000000000000000000000000000000000000000000001cea0000000000000000000000000000000000000000000000000000000000001ceb0000000000000000000000000000000000000000000000000000000000001cec0000000000000000000000000000000000000000000000000000000000001ced0000000000000000000000000000000000000000000000000000000000001cee0000000000000000000000000000000000000000000000000000000000001cef0000000000000000000000000000000000000000000000000000000000001cf00000000000000000000000000000000000000000000000000000000000001cf10000000000000000000000000000000000000000000000000000000000001cf20000000000000000000000000000000000000000000000000000000000001cf30000000000000000000000000000000000000000000000000000000000001cf40000000000000000000000000000000000000000000000000000000000001cf50000000000000000000000000000000000000000000000000000000000001cf60000000000000000000000000000000000000000000000000000000000001cf70000000000000000000000000000000000000000000000000000000000001cf80000000000000000000000000000000000000000000000000000000000001cf90000000000000000000000000000000000000000000000000000000000001cfa0000000000000000000000000000000000000000000000000000000000001cfb0000000000000000000000000000000000000000000000000000000000001cfc0000000000000000000000000000000000000000000000000000000000001cfd0000000000000000000000000000000000000000000000000000000000001cfe0000000000000000000000000000000000000000000000000000000000001cff0000000000000000000000000000000000000000000000000000000000001d000000000000000000000000000000000000000000000000000000000000001d010000000000000000000000000000000000000000000000000000000000001d020000000000000000000000000000000000000000000000000000000000001d030000000000000000000000000000000000000000000000000000000000001d040000000000000000000000000000000000000000000000000000000000001d050000000000000000000000000000000000000000000000000000000000001d060000000000000000000000000000000000000000000000000000000000001d070000000000000000000000000000000000000000000000000000000000001d080000000000000000000000000000000000000000000000000000000000001d090000000000000000000000000000000000000000000000000000000000001d0a0000000000000000000000000000000000000000000000000000000000001d0b0000000000000000000000000000000000000000000000000000000000001d0c0000000000000000000000000000000000000000000000000000000000001d0d0000000000000000000000000000000000000000000000000000000000001d0e0000000000000000000000000000000000000000000000000000000000001d0f0000000000000000000000000000000000000000000000000000000000001d100000000000000000000000000000000000000000000000000000000000001d110000000000000000000000000000000000000000000000000000000000001d120000000000000000000000000000000000000000000000000000000000001d130000000000000000000000000000000000000000000000000000000000001d140000000000000000000000000000000000000000000000000000000000001d150000000000000000000000000000000000000000000000000000000000001d160000000000000000000000000000000000000000000000000000000000001d170000000000000000000000000000000000000000000000000000000000001d180000000000000000000000000000000000000000000000000000000000001d190000000000000000000000000000000000000000000000000000000000001d1a0000000000000000000000000000000000000000000000000000000000001d1b0000000000000000000000000000000000000000000000000000000000001d1c0000000000000000000000000000000000000000000000000000000000001d1d0000000000000000000000000000000000000000000000000000000000001d1e0000000000000000000000000000000000000000000000000000000000001d1f0000000000000000000000000000000000000000000000000000000000001d200000000000000000000000000000000000000000000000000000000000001d210000000000000000000000000000000000000000000000000000000000001d220000000000000000000000000000000000000000000000000000000000001d230000000000000000000000000000000000000000000000000000000000001d240000000000000000000000000000000000000000000000000000000000001d250000000000000000000000000000000000000000000000000000000000001d260000000000000000000000000000000000000000000000000000000000001d270000000000000000000000000000000000000000000000000000000000001d280000000000000000000000000000000000000000000000000000000000001d290000000000000000000000000000000000000000000000000000000000001d2a0000000000000000000000000000000000000000000000000000000000001d2b0000000000000000000000000000000000000000000000000000000000001d2c0000000000000000000000000000000000000000000000000000000000001d2d0000000000000000000000000000000000000000000000000000000000001d2e0000000000000000000000000000000000000000000000000000000000001d2f0000000000000000000000000000000000000000000000000000000000001d300000000000000000000000000000000000000000000000000000000000001d310000000000000000000000000000000000000000000000000000000000001d320000000000000000000000000000000000000000000000000000000000001d330000000000000000000000000000000000000000000000000000000000001d340000000000000000000000000000000000000000000000000000000000001d350000000000000000000000000000000000000000000000000000000000001d360000000000000000000000000000000000000000000000000000000000001d370000000000000000000000000000000000000000000000000000000000001d380000000000000000000000000000000000000000000000000000000000001d390000000000000000000000000000000000000000000000000000000000001d3a0000000000000000000000000000000000000000000000000000000000001d3b0000000000000000000000000000000000000000000000000000000000001d3c0000000000000000000000000000000000000000000000000000000000001d3d0000000000000000000000000000000000000000000000000000000000001d3e0000000000000000000000000000000000000000000000000000000000001d3f0000000000000000000000000000000000000000000000000000000000001d400000000000000000000000000000000000000000000000000000000000001d410000000000000000000000000000000000000000000000000000000000001d420000000000000000000000000000000000000000000000000000000000001d430000000000000000000000000000000000000000000000000000000000001d440000000000000000000000000000000000000000000000000000000000001d450000000000000000000000000000000000000000000000000000000000001d460000000000000000000000000000000000000000000000000000000000001d470000000000000000000000000000000000000000000000000000000000001d480000000000000000000000000000000000000000000000000000000000001d490000000000000000000000000000000000000000000000000000000000001d4a0000000000000000000000000000000000000000000000000000000000001d4b0000000000000000000000000000000000000000000000000000000000001d4c0000000000000000000000000000000000000000000000000000000000001d4d0000000000000000000000000000000000000000000000000000000000001d4e0000000000000000000000000000000000000000000000000000000000001d4f0000000000000000000000000000000000000000000000000000000000001d500000000000000000000000000000000000000000000000000000000000001d510000000000000000000000000000000000000000000000000000000000001d520000000000000000000000000000000000000000000000000000000000001d530000000000000000000000000000000000000000000000000000000000001d540000000000000000000000000000000000000000000000000000000000001d550000000000000000000000000000000000000000000000000000000000001d560000000000000000000000000000000000000000000000000000000000001d570000000000000000000000000000000000000000000000000000000000001d580000000000000000000000000000000000000000000000000000000000001d590000000000000000000000000000000000000000000000000000000000001d5a0000000000000000000000000000000000000000000000000000000000001d5b0000000000000000000000000000000000000000000000000000000000001d5c0000000000000000000000000000000000000000000000000000000000001d5d0000000000000000000000000000000000000000000000000000000000001d5e0000000000000000000000000000000000000000000000000000000000001d5f0000000000000000000000000000000000000000000000000000000000001d600000000000000000000000000000000000000000000000000000000000001d610000000000000000000000000000000000000000000000000000000000001d620000000000000000000000000000000000000000000000000000000000001d630000000000000000000000000000000000000000000000000000000000001d640000000000000000000000000000000000000000000000000000000000001d650000000000000000000000000000000000000000000000000000000000001d660000000000000000000000000000000000000000000000000000000000001d670000000000000000000000000000000000000000000000000000000000001d680000000000000000000000000000000000000000000000000000000000001d690000000000000000000000000000000000000000000000000000000000001d6a0000000000000000000000000000000000000000000000000000000000001d6b0000000000000000000000000000000000000000000000000000000000001d6c0000000000000000000000000000000000000000000000000000000000001d6d0000000000000000000000000000000000000000000000000000000000001d6e0000000000000000000000000000000000000000000000000000000000001d6f0000000000000000000000000000000000000000000000000000000000001d700000000000000000000000000000000000000000000000000000000000001d710000000000000000000000000000000000000000000000000000000000001d720000000000000000000000000000000000000000000000000000000000001d730000000000000000000000000000000000000000000000000000000000001d740000000000000000000000000000000000000000000000000000000000001d750000000000000000000000000000000000000000000000000000000000001d760000000000000000000000000000000000000000000000000000000000001d770000000000000000000000000000000000000000000000000000000000001d780000000000000000000000000000000000000000000000000000000000001d790000000000000000000000000000000000000000000000000000000000001d7a0000000000000000000000000000000000000000000000000000000000001d7b0000000000000000000000000000000000000000000000000000000000001d7c0000000000000000000000000000000000000000000000000000000000001d7d0000000000000000000000000000000000000000000000000000000000001d7e0000000000000000000000000000000000000000000000000000000000001d7f0000000000000000000000000000000000000000000000000000000000001d800000000000000000000000000000000000000000000000000000000000001d810000000000000000000000000000000000000000000000000000000000001d820000000000000000000000000000000000000000000000000000000000001d830000000000000000000000000000000000000000000000000000000000001d840000000000000000000000000000000000000000000000000000000000001d850000000000000000000000000000000000000000000000000000000000001d860000000000000000000000000000000000000000000000000000000000001d870000000000000000000000000000000000000000000000000000000000001d880000000000000000000000000000000000000000000000000000000000001d890000000000000000000000000000000000000000000000000000000000001d8a0000000000000000000000000000000000000000000000000000000000001d8b0000000000000000000000000000000000000000000000000000000000001d8c0000000000000000000000000000000000000000000000000000000000001d8d0000000000000000000000000000000000000000000000000000000000001d8e0000000000000000000000000000000000000000000000000000000000001d8f0000000000000000000000000000000000000000000000000000000000001d900000000000000000000000000000000000000000000000000000000000001d910000000000000000000000000000000000000000000000000000000000001d920000000000000000000000000000000000000000000000000000000000001d930000000000000000000000000000000000000000000000000000000000001d940000000000000000000000000000000000000000000000000000000000001d950000000000000000000000000000000000000000000000000000000000001d960000000000000000000000000000000000000000000000000000000000001d970000000000000000000000000000000000000000000000000000000000001d980000000000000000000000000000000000000000000000000000000000001d990000000000000000000000000000000000000000000000000000000000001d9a0000000000000000000000000000000000000000000000000000000000001d9b0000000000000000000000000000000000000000000000000000000000001d9c0000000000000000000000000000000000000000000000000000000000001d9d0000000000000000000000000000000000000000000000000000000000001d9e0000000000000000000000000000000000000000000000000000000000001d9f0000000000000000000000000000000000000000000000000000000000001da00000000000000000000000000000000000000000000000000000000000001da10000000000000000000000000000000000000000000000000000000000001da20000000000000000000000000000000000000000000000000000000000001da30000000000000000000000000000000000000000000000000000000000001da40000000000000000000000000000000000000000000000000000000000001da50000000000000000000000000000000000000000000000000000000000001da60000000000000000000000000000000000000000000000000000000000001da70000000000000000000000000000000000000000000000000000000000001da80000000000000000000000000000000000000000000000000000000000001da90000000000000000000000000000000000000000000000000000000000001daa0000000000000000000000000000000000000000000000000000000000001dab0000000000000000000000000000000000000000000000000000000000001dac0000000000000000000000000000000000000000000000000000000000001dad0000000000000000000000000000000000000000000000000000000000001dae0000000000000000000000000000000000000000000000000000000000001daf0000000000000000000000000000000000000000000000000000000000001db00000000000000000000000000000000000000000000000000000000000001db10000000000000000000000000000000000000000000000000000000000001db20000000000000000000000000000000000000000000000000000000000001db30000000000000000000000000000000000000000000000000000000000001db40000000000000000000000000000000000000000000000000000000000001db50000000000000000000000000000000000000000000000000000000000001db60000000000000000000000000000000000000000000000000000000000001db70000000000000000000000000000000000000000000000000000000000001db80000000000000000000000000000000000000000000000000000000000001db90000000000000000000000000000000000000000000000000000000000001dba0000000000000000000000000000000000000000000000000000000000001dbb0000000000000000000000000000000000000000000000000000000000001dbc0000000000000000000000000000000000000000000000000000000000001dbd0000000000000000000000000000000000000000000000000000000000001dbe0000000000000000000000000000000000000000000000000000000000001dbf0000000000000000000000000000000000000000000000000000000000001dc00000000000000000000000000000000000000000000000000000000000001dc10000000000000000000000000000000000000000000000000000000000001dc20000000000000000000000000000000000000000000000000000000000001dc30000000000000000000000000000000000000000000000000000000000001dc40000000000000000000000000000000000000000000000000000000000001dc50000000000000000000000000000000000000000000000000000000000001dc60000000000000000000000000000000000000000000000000000000000001dc70000000000000000000000000000000000000000000000000000000000001dc80000000000000000000000000000000000000000000000000000000000001dc90000000000000000000000000000000000000000000000000000000000001dca0000000000000000000000000000000000000000000000000000000000001dcb0000000000000000000000000000000000000000000000000000000000001dcc0000000000000000000000000000000000000000000000000000000000001dcd0000000000000000000000000000000000000000000000000000000000001dce0000000000000000000000000000000000000000000000000000000000001dcf0000000000000000000000000000000000000000000000000000000000001dd00000000000000000000000000000000000000000000000000000000000001dd10000000000000000000000000000000000000000000000000000000000001dd20000000000000000000000000000000000000000000000000000000000001dd30000000000000000000000000000000000000000000000000000000000001dd40000000000000000000000000000000000000000000000000000000000001dd50000000000000000000000000000000000000000000000000000000000001dd60000000000000000000000000000000000000000000000000000000000001dd70000000000000000000000000000000000000000000000000000000000001dd80000000000000000000000000000000000000000000000000000000000001dd90000000000000000000000000000000000000000000000000000000000001dda0000000000000000000000000000000000000000000000000000000000001ddb0000000000000000000000000000000000000000000000000000000000001ddc0000000000000000000000000000000000000000000000000000000000001ddd0000000000000000000000000000000000000000000000000000000000001dde0000000000000000000000000000000000000000000000000000000000001ddf0000000000000000000000000000000000000000000000000000000000001de00000000000000000000000000000000000000000000000000000000000001de10000000000000000000000000000000000000000000000000000000000001de20000000000000000000000000000000000000000000000000000000000001de30000000000000000000000000000000000000000000000000000000000001de40000000000000000000000000000000000000000000000000000000000001de50000000000000000000000000000000000000000000000000000000000001de60000000000000000000000000000000000000000000000000000000000001de70000000000000000000000000000000000000000000000000000000000001de80000000000000000000000000000000000000000000000000000000000001de90000000000000000000000000000000000000000000000000000000000001dea0000000000000000000000000000000000000000000000000000000000001deb0000000000000000000000000000000000000000000000000000000000001dec0000000000000000000000000000000000000000000000000000000000001ded0000000000000000000000000000000000000000000000000000000000001dee0000000000000000000000000000000000000000000000000000000000001def0000000000000000000000000000000000000000000000000000000000001df00000000000000000000000000000000000000000000000000000000000001df10000000000000000000000000000000000000000000000000000000000001df20000000000000000000000000000000000000000000000000000000000001df30000000000000000000000000000000000000000000000000000000000001df40000000000000000000000000000000000000000000000000000000000001df50000000000000000000000000000000000000000000000000000000000001df60000000000000000000000000000000000000000000000000000000000001df70000000000000000000000000000000000000000000000000000000000001df80000000000000000000000000000000000000000000000000000000000001df90000000000000000000000000000000000000000000000000000000000001dfa0000000000000000000000000000000000000000000000000000000000001dfb0000000000000000000000000000000000000000000000000000000000001dfc0000000000000000000000000000000000000000000000000000000000001dfd0000000000000000000000000000000000000000000000000000000000001dfe0000000000000000000000000000000000000000000000000000000000001dff0000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000001e010000000000000000000000000000000000000000000000000000000000001e020000000000000000000000000000000000000000000000000000000000001e030000000000000000000000000000000000000000000000000000000000001e040000000000000000000000000000000000000000000000000000000000001e050000000000000000000000000000000000000000000000000000000000001e060000000000000000000000000000000000000000000000000000000000001e070000000000000000000000000000000000000000000000000000000000001e080000000000000000000000000000000000000000000000000000000000001e090000000000000000000000000000000000000000000000000000000000001e0a0000000000000000000000000000000000000000000000000000000000001e0b0000000000000000000000000000000000000000000000000000000000001e0c0000000000000000000000000000000000000000000000000000000000001e0d0000000000000000000000000000000000000000000000000000000000001e0e0000000000000000000000000000000000000000000000000000000000001e0f0000000000000000000000000000000000000000000000000000000000001e100000000000000000000000000000000000000000000000000000000000001e110000000000000000000000000000000000000000000000000000000000001e120000000000000000000000000000000000000000000000000000000000001e130000000000000000000000000000000000000000000000000000000000001e140000000000000000000000000000000000000000000000000000000000001e150000000000000000000000000000000000000000000000000000000000001e160000000000000000000000000000000000000000000000000000000000001e170000000000000000000000000000000000000000000000000000000000001e180000000000000000000000000000000000000000000000000000000000001e190000000000000000000000000000000000000000000000000000000000001e1a0000000000000000000000000000000000000000000000000000000000001e1b0000000000000000000000000000000000000000000000000000000000001e1c0000000000000000000000000000000000000000000000000000000000001e1d0000000000000000000000000000000000000000000000000000000000001e1e0000000000000000000000000000000000000000000000000000000000001e1f0000000000000000000000000000000000000000000000000000000000001e200000000000000000000000000000000000000000000000000000000000001e210000000000000000000000000000000000000000000000000000000000001e220000000000000000000000000000000000000000000000000000000000001e230000000000000000000000000000000000000000000000000000000000001e240000000000000000000000000000000000000000000000000000000000001e250000000000000000000000000000000000000000000000000000000000001e260000000000000000000000000000000000000000000000000000000000001e270000000000000000000000000000000000000000000000000000000000001e280000000000000000000000000000000000000000000000000000000000001e290000000000000000000000000000000000000000000000000000000000001e2a0000000000000000000000000000000000000000000000000000000000001e2b0000000000000000000000000000000000000000000000000000000000001e2c0000000000000000000000000000000000000000000000000000000000001e2d0000000000000000000000000000000000000000000000000000000000001e2e0000000000000000000000000000000000000000000000000000000000001e2f0000000000000000000000000000000000000000000000000000000000001e300000000000000000000000000000000000000000000000000000000000001e310000000000000000000000000000000000000000000000000000000000001e320000000000000000000000000000000000000000000000000000000000001e330000000000000000000000000000000000000000000000000000000000001e340000000000000000000000000000000000000000000000000000000000001e350000000000000000000000000000000000000000000000000000000000001e360000000000000000000000000000000000000000000000000000000000001e370000000000000000000000000000000000000000000000000000000000001e380000000000000000000000000000000000000000000000000000000000001e390000000000000000000000000000000000000000000000000000000000001e3a0000000000000000000000000000000000000000000000000000000000001e3b0000000000000000000000000000000000000000000000000000000000001e3c0000000000000000000000000000000000000000000000000000000000001e3d0000000000000000000000000000000000000000000000000000000000001e3e0000000000000000000000000000000000000000000000000000000000001e3f0000000000000000000000000000000000000000000000000000000000001e400000000000000000000000000000000000000000000000000000000000001e410000000000000000000000000000000000000000000000000000000000001e420000000000000000000000000000000000000000000000000000000000001e430000000000000000000000000000000000000000000000000000000000001e440000000000000000000000000000000000000000000000000000000000001e450000000000000000000000000000000000000000000000000000000000001e460000000000000000000000000000000000000000000000000000000000001e470000000000000000000000000000000000000000000000000000000000001e480000000000000000000000000000000000000000000000000000000000001e490000000000000000000000000000000000000000000000000000000000001e4a0000000000000000000000000000000000000000000000000000000000001e4b0000000000000000000000000000000000000000000000000000000000001e4c0000000000000000000000000000000000000000000000000000000000001e4d0000000000000000000000000000000000000000000000000000000000001e4e0000000000000000000000000000000000000000000000000000000000001e4f0000000000000000000000000000000000000000000000000000000000001e500000000000000000000000000000000000000000000000000000000000001e510000000000000000000000000000000000000000000000000000000000001e520000000000000000000000000000000000000000000000000000000000001e530000000000000000000000000000000000000000000000000000000000001e540000000000000000000000000000000000000000000000000000000000001e550000000000000000000000000000000000000000000000000000000000001e560000000000000000000000000000000000000000000000000000000000001e570000000000000000000000000000000000000000000000000000000000001e580000000000000000000000000000000000000000000000000000000000001e590000000000000000000000000000000000000000000000000000000000001e5a0000000000000000000000000000000000000000000000000000000000001e5b0000000000000000000000000000000000000000000000000000000000001e5c0000000000000000000000000000000000000000000000000000000000001e5d0000000000000000000000000000000000000000000000000000000000001e5e0000000000000000000000000000000000000000000000000000000000001e5f0000000000000000000000000000000000000000000000000000000000001e600000000000000000000000000000000000000000000000000000000000001e610000000000000000000000000000000000000000000000000000000000001e620000000000000000000000000000000000000000000000000000000000001e630000000000000000000000000000000000000000000000000000000000001e640000000000000000000000000000000000000000000000000000000000001e650000000000000000000000000000000000000000000000000000000000001e660000000000000000000000000000000000000000000000000000000000001e670000000000000000000000000000000000000000000000000000000000001e680000000000000000000000000000000000000000000000000000000000001e690000000000000000000000000000000000000000000000000000000000001e6a0000000000000000000000000000000000000000000000000000000000001e6b0000000000000000000000000000000000000000000000000000000000001e6c0000000000000000000000000000000000000000000000000000000000001e6d0000000000000000000000000000000000000000000000000000000000001e6e0000000000000000000000000000000000000000000000000000000000001e6f0000000000000000000000000000000000000000000000000000000000001e700000000000000000000000000000000000000000000000000000000000001e710000000000000000000000000000000000000000000000000000000000001e720000000000000000000000000000000000000000000000000000000000001e730000000000000000000000000000000000000000000000000000000000001e740000000000000000000000000000000000000000000000000000000000001e750000000000000000000000000000000000000000000000000000000000001e760000000000000000000000000000000000000000000000000000000000001e770000000000000000000000000000000000000000000000000000000000001e780000000000000000000000000000000000000000000000000000000000001e790000000000000000000000000000000000000000000000000000000000001e7a0000000000000000000000000000000000000000000000000000000000001e7b0000000000000000000000000000000000000000000000000000000000001e7c0000000000000000000000000000000000000000000000000000000000001e7d0000000000000000000000000000000000000000000000000000000000001e7e0000000000000000000000000000000000000000000000000000000000001e7f0000000000000000000000000000000000000000000000000000000000001e800000000000000000000000000000000000000000000000000000000000001e810000000000000000000000000000000000000000000000000000000000001e820000000000000000000000000000000000000000000000000000000000001e830000000000000000000000000000000000000000000000000000000000001e840000000000000000000000000000000000000000000000000000000000001e850000000000000000000000000000000000000000000000000000000000001e860000000000000000000000000000000000000000000000000000000000001e870000000000000000000000000000000000000000000000000000000000001e880000000000000000000000000000000000000000000000000000000000001e890000000000000000000000000000000000000000000000000000000000001e8a0000000000000000000000000000000000000000000000000000000000001e8b0000000000000000000000000000000000000000000000000000000000001e8c0000000000000000000000000000000000000000000000000000000000001e8d0000000000000000000000000000000000000000000000000000000000001e8e0000000000000000000000000000000000000000000000000000000000001e8f0000000000000000000000000000000000000000000000000000000000001e900000000000000000000000000000000000000000000000000000000000001e910000000000000000000000000000000000000000000000000000000000001e920000000000000000000000000000000000000000000000000000000000001e930000000000000000000000000000000000000000000000000000000000001e940000000000000000000000000000000000000000000000000000000000001e950000000000000000000000000000000000000000000000000000000000001e960000000000000000000000000000000000000000000000000000000000001e970000000000000000000000000000000000000000000000000000000000001e980000000000000000000000000000000000000000000000000000000000001e990000000000000000000000000000000000000000000000000000000000001e9a0000000000000000000000000000000000000000000000000000000000001e9b0000000000000000000000000000000000000000000000000000000000001e9c0000000000000000000000000000000000000000000000000000000000001e9d0000000000000000000000000000000000000000000000000000000000001e9e0000000000000000000000000000000000000000000000000000000000001e9f0000000000000000000000000000000000000000000000000000000000001ea00000000000000000000000000000000000000000000000000000000000001ea10000000000000000000000000000000000000000000000000000000000001ea20000000000000000000000000000000000000000000000000000000000001ea30000000000000000000000000000000000000000000000000000000000001ea40000000000000000000000000000000000000000000000000000000000001ea50000000000000000000000000000000000000000000000000000000000001ea60000000000000000000000000000000000000000000000000000000000001ea70000000000000000000000000000000000000000000000000000000000001ea80000000000000000000000000000000000000000000000000000000000001ea90000000000000000000000000000000000000000000000000000000000001eaa0000000000000000000000000000000000000000000000000000000000001eab0000000000000000000000000000000000000000000000000000000000001eac0000000000000000000000000000000000000000000000000000000000001ead0000000000000000000000000000000000000000000000000000000000001eae0000000000000000000000000000000000000000000000000000000000001eaf0000000000000000000000000000000000000000000000000000000000001eb00000000000000000000000000000000000000000000000000000000000001eb10000000000000000000000000000000000000000000000000000000000001eb20000000000000000000000000000000000000000000000000000000000001eb30000000000000000000000000000000000000000000000000000000000001eb40000000000000000000000000000000000000000000000000000000000001eb50000000000000000000000000000000000000000000000000000000000001eb60000000000000000000000000000000000000000000000000000000000001eb70000000000000000000000000000000000000000000000000000000000001eb80000000000000000000000000000000000000000000000000000000000001eb90000000000000000000000000000000000000000000000000000000000001eba0000000000000000000000000000000000000000000000000000000000001ebb0000000000000000000000000000000000000000000000000000000000001ebc0000000000000000000000000000000000000000000000000000000000001ebd0000000000000000000000000000000000000000000000000000000000001ebe0000000000000000000000000000000000000000000000000000000000001ebf0000000000000000000000000000000000000000000000000000000000001ec00000000000000000000000000000000000000000000000000000000000001ec10000000000000000000000000000000000000000000000000000000000001ec20000000000000000000000000000000000000000000000000000000000001ec30000000000000000000000000000000000000000000000000000000000001ec40000000000000000000000000000000000000000000000000000000000001ec50000000000000000000000000000000000000000000000000000000000001ec60000000000000000000000000000000000000000000000000000000000001ec70000000000000000000000000000000000000000000000000000000000001ec80000000000000000000000000000000000000000000000000000000000001ec90000000000000000000000000000000000000000000000000000000000001eca0000000000000000000000000000000000000000000000000000000000001ecb0000000000000000000000000000000000000000000000000000000000001ecc0000000000000000000000000000000000000000000000000000000000001ecd0000000000000000000000000000000000000000000000000000000000001ece0000000000000000000000000000000000000000000000000000000000001ecf0000000000000000000000000000000000000000000000000000000000001ed00000000000000000000000000000000000000000000000000000000000001ed10000000000000000000000000000000000000000000000000000000000001ed20000000000000000000000000000000000000000000000000000000000001ed30000000000000000000000000000000000000000000000000000000000001ed40000000000000000000000000000000000000000000000000000000000001ed50000000000000000000000000000000000000000000000000000000000001ed60000000000000000000000000000000000000000000000000000000000001ed70000000000000000000000000000000000000000000000000000000000001ed80000000000000000000000000000000000000000000000000000000000001ed90000000000000000000000000000000000000000000000000000000000001eda0000000000000000000000000000000000000000000000000000000000001edb0000000000000000000000000000000000000000000000000000000000001edc0000000000000000000000000000000000000000000000000000000000001edd0000000000000000000000000000000000000000000000000000000000001ede0000000000000000000000000000000000000000000000000000000000001edf0000000000000000000000000000000000000000000000000000000000001ee00000000000000000000000000000000000000000000000000000000000001ee10000000000000000000000000000000000000000000000000000000000001ee20000000000000000000000000000000000000000000000000000000000001ee30000000000000000000000000000000000000000000000000000000000001ee40000000000000000000000000000000000000000000000000000000000001ee50000000000000000000000000000000000000000000000000000000000001ee60000000000000000000000000000000000000000000000000000000000001ee70000000000000000000000000000000000000000000000000000000000001ee80000000000000000000000000000000000000000000000000000000000001ee90000000000000000000000000000000000000000000000000000000000001eea0000000000000000000000000000000000000000000000000000000000001eeb0000000000000000000000000000000000000000000000000000000000001eec0000000000000000000000000000000000000000000000000000000000001eed0000000000000000000000000000000000000000000000000000000000001eee0000000000000000000000000000000000000000000000000000000000001eef0000000000000000000000000000000000000000000000000000000000001ef00000000000000000000000000000000000000000000000000000000000001ef10000000000000000000000000000000000000000000000000000000000001ef20000000000000000000000000000000000000000000000000000000000001ef30000000000000000000000000000000000000000000000000000000000001ef40000000000000000000000000000000000000000000000000000000000001ef50000000000000000000000000000000000000000000000000000000000001ef60000000000000000000000000000000000000000000000000000000000001ef70000000000000000000000000000000000000000000000000000000000001ef80000000000000000000000000000000000000000000000000000000000001ef90000000000000000000000000000000000000000000000000000000000001efa0000000000000000000000000000000000000000000000000000000000001efb0000000000000000000000000000000000000000000000000000000000001efc0000000000000000000000000000000000000000000000000000000000001efd0000000000000000000000000000000000000000000000000000000000001efe0000000000000000000000000000000000000000000000000000000000001eff0000000000000000000000000000000000000000000000000000000000001f000000000000000000000000000000000000000000000000000000000000001f010000000000000000000000000000000000000000000000000000000000001f020000000000000000000000000000000000000000000000000000000000001f030000000000000000000000000000000000000000000000000000000000001f040000000000000000000000000000000000000000000000000000000000001f050000000000000000000000000000000000000000000000000000000000001f060000000000000000000000000000000000000000000000000000000000001f070000000000000000000000000000000000000000000000000000000000001f080000000000000000000000000000000000000000000000000000000000001f090000000000000000000000000000000000000000000000000000000000001f0a0000000000000000000000000000000000000000000000000000000000001f0b0000000000000000000000000000000000000000000000000000000000001f0c0000000000000000000000000000000000000000000000000000000000001f0d0000000000000000000000000000000000000000000000000000000000001f0e0000000000000000000000000000000000000000000000000000000000001f0f0000000000000000000000000000000000000000000000000000000000001f100000000000000000000000000000000000000000000000000000000000001f110000000000000000000000000000000000000000000000000000000000001f120000000000000000000000000000000000000000000000000000000000001f130000000000000000000000000000000000000000000000000000000000001f140000000000000000000000000000000000000000000000000000000000001f150000000000000000000000000000000000000000000000000000000000001f160000000000000000000000000000000000000000000000000000000000001f170000000000000000000000000000000000000000000000000000000000001f180000000000000000000000000000000000000000000000000000000000001f190000000000000000000000000000000000000000000000000000000000001f1a0000000000000000000000000000000000000000000000000000000000001f1b0000000000000000000000000000000000000000000000000000000000001f1c0000000000000000000000000000000000000000000000000000000000001f1d0000000000000000000000000000000000000000000000000000000000001f1e0000000000000000000000000000000000000000000000000000000000001f1f0000000000000000000000000000000000000000000000000000000000001f200000000000000000000000000000000000000000000000000000000000001f210000000000000000000000000000000000000000000000000000000000001f220000000000000000000000000000000000000000000000000000000000001f230000000000000000000000000000000000000000000000000000000000001f240000000000000000000000000000000000000000000000000000000000001f250000000000000000000000000000000000000000000000000000000000001f260000000000000000000000000000000000000000000000000000000000001f270000000000000000000000000000000000000000000000000000000000001f280000000000000000000000000000000000000000000000000000000000001f290000000000000000000000000000000000000000000000000000000000001f2a0000000000000000000000000000000000000000000000000000000000001f2b0000000000000000000000000000000000000000000000000000000000001f2c0000000000000000000000000000000000000000000000000000000000001f2d0000000000000000000000000000000000000000000000000000000000001f2e0000000000000000000000000000000000000000000000000000000000001f2f0000000000000000000000000000000000000000000000000000000000001f300000000000000000000000000000000000000000000000000000000000001f310000000000000000000000000000000000000000000000000000000000001f320000000000000000000000000000000000000000000000000000000000001f330000000000000000000000000000000000000000000000000000000000001f340000000000000000000000000000000000000000000000000000000000001f350000000000000000000000000000000000000000000000000000000000001f360000000000000000000000000000000000000000000000000000000000001f370000000000000000000000000000000000000000000000000000000000001f380000000000000000000000000000000000000000000000000000000000001f390000000000000000000000000000000000000000000000000000000000001f3a0000000000000000000000000000000000000000000000000000000000001f3b0000000000000000000000000000000000000000000000000000000000001f3c0000000000000000000000000000000000000000000000000000000000001f3d0000000000000000000000000000000000000000000000000000000000001f3e0000000000000000000000000000000000000000000000000000000000001f3f0000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000001f410000000000000000000000000000000000000000000000000000000000001f420000000000000000000000000000000000000000000000000000000000001f430000000000000000000000000000000000000000000000000000000000001f440000000000000000000000000000000000000000000000000000000000001f450000000000000000000000000000000000000000000000000000000000001f460000000000000000000000000000000000000000000000000000000000001f470000000000000000000000000000000000000000000000000000000000001f480000000000000000000000000000000000000000000000000000000000001f490000000000000000000000000000000000000000000000000000000000001f4a0000000000000000000000000000000000000000000000000000000000001f4b0000000000000000000000000000000000000000000000000000000000001f4c0000000000000000000000000000000000000000000000000000000000001f4d0000000000000000000000000000000000000000000000000000000000001f4e0000000000000000000000000000000000000000000000000000000000001f4f0000000000000000000000000000000000000000000000000000000000001f500000000000000000000000000000000000000000000000000000000000001f510000000000000000000000000000000000000000000000000000000000001f520000000000000000000000000000000000000000000000000000000000001f530000000000000000000000000000000000000000000000000000000000001f540000000000000000000000000000000000000000000000000000000000001f550000000000000000000000000000000000000000000000000000000000001f560000000000000000000000000000000000000000000000000000000000001f570000000000000000000000000000000000000000000000000000000000001f580000000000000000000000000000000000000000000000000000000000001f590000000000000000000000000000000000000000000000000000000000001f5a0000000000000000000000000000000000000000000000000000000000001f5b0000000000000000000000000000000000000000000000000000000000001f5c0000000000000000000000000000000000000000000000000000000000001f5d0000000000000000000000000000000000000000000000000000000000001f5e0000000000000000000000000000000000000000000000000000000000001f5f0000000000000000000000000000000000000000000000000000000000001f600000000000000000000000000000000000000000000000000000000000001f610000000000000000000000000000000000000000000000000000000000001f620000000000000000000000000000000000000000000000000000000000001f630000000000000000000000000000000000000000000000000000000000001f640000000000000000000000000000000000000000000000000000000000001f650000000000000000000000000000000000000000000000000000000000001f660000000000000000000000000000000000000000000000000000000000001f670000000000000000000000000000000000000000000000000000000000001f680000000000000000000000000000000000000000000000000000000000001f690000000000000000000000000000000000000000000000000000000000001f6a0000000000000000000000000000000000000000000000000000000000001f6b0000000000000000000000000000000000000000000000000000000000001f6c0000000000000000000000000000000000000000000000000000000000001f6d0000000000000000000000000000000000000000000000000000000000001f6e0000000000000000000000000000000000000000000000000000000000001f6f0000000000000000000000000000000000000000000000000000000000001f700000000000000000000000000000000000000000000000000000000000001f710000000000000000000000000000000000000000000000000000000000001f720000000000000000000000000000000000000000000000000000000000001f730000000000000000000000000000000000000000000000000000000000001f740000000000000000000000000000000000000000000000000000000000001f750000000000000000000000000000000000000000000000000000000000001f760000000000000000000000000000000000000000000000000000000000001f770000000000000000000000000000000000000000000000000000000000001f780000000000000000000000000000000000000000000000000000000000001f790000000000000000000000000000000000000000000000000000000000001f7a0000000000000000000000000000000000000000000000000000000000001f7b0000000000000000000000000000000000000000000000000000000000001f7c0000000000000000000000000000000000000000000000000000000000001f7d0000000000000000000000000000000000000000000000000000000000001f7e0000000000000000000000000000000000000000000000000000000000001f7f0000000000000000000000000000000000000000000000000000000000001f800000000000000000000000000000000000000000000000000000000000001f810000000000000000000000000000000000000000000000000000000000001f820000000000000000000000000000000000000000000000000000000000001f830000000000000000000000000000000000000000000000000000000000001f840000000000000000000000000000000000000000000000000000000000001f850000000000000000000000000000000000000000000000000000000000001f860000000000000000000000000000000000000000000000000000000000001f870000000000000000000000000000000000000000000000000000000000001f880000000000000000000000000000000000000000000000000000000000001f890000000000000000000000000000000000000000000000000000000000001f8a0000000000000000000000000000000000000000000000000000000000001f8b0000000000000000000000000000000000000000000000000000000000001f8c0000000000000000000000000000000000000000000000000000000000001f8d0000000000000000000000000000000000000000000000000000000000001f8e0000000000000000000000000000000000000000000000000000000000001f8f0000000000000000000000000000000000000000000000000000000000001f900000000000000000000000000000000000000000000000000000000000001f910000000000000000000000000000000000000000000000000000000000001f920000000000000000000000000000000000000000000000000000000000001f930000000000000000000000000000000000000000000000000000000000001f940000000000000000000000000000000000000000000000000000000000001f950000000000000000000000000000000000000000000000000000000000001f960000000000000000000000000000000000000000000000000000000000001f970000000000000000000000000000000000000000000000000000000000001f980000000000000000000000000000000000000000000000000000000000001f990000000000000000000000000000000000000000000000000000000000001f9a0000000000000000000000000000000000000000000000000000000000001f9b0000000000000000000000000000000000000000000000000000000000001f9c0000000000000000000000000000000000000000000000000000000000001f9d0000000000000000000000000000000000000000000000000000000000001f9e0000000000000000000000000000000000000000000000000000000000001f9f0000000000000000000000000000000000000000000000000000000000001fa00000000000000000000000000000000000000000000000000000000000001fa10000000000000000000000000000000000000000000000000000000000001fa20000000000000000000000000000000000000000000000000000000000001fa30000000000000000000000000000000000000000000000000000000000001fa40000000000000000000000000000000000000000000000000000000000001fa50000000000000000000000000000000000000000000000000000000000001fa60000000000000000000000000000000000000000000000000000000000001fa70000000000000000000000000000000000000000000000000000000000001fa80000000000000000000000000000000000000000000000000000000000001fa90000000000000000000000000000000000000000000000000000000000001faa0000000000000000000000000000000000000000000000000000000000001fab0000000000000000000000000000000000000000000000000000000000001fac0000000000000000000000000000000000000000000000000000000000001fad0000000000000000000000000000000000000000000000000000000000001fae0000000000000000000000000000000000000000000000000000000000001faf0000000000000000000000000000000000000000000000000000000000001fb00000000000000000000000000000000000000000000000000000000000001fb10000000000000000000000000000000000000000000000000000000000001fb20000000000000000000000000000000000000000000000000000000000001fb30000000000000000000000000000000000000000000000000000000000001fb40000000000000000000000000000000000000000000000000000000000001fb50000000000000000000000000000000000000000000000000000000000001fb60000000000000000000000000000000000000000000000000000000000001fb70000000000000000000000000000000000000000000000000000000000001fb80000000000000000000000000000000000000000000000000000000000001fb90000000000000000000000000000000000000000000000000000000000001fba0000000000000000000000000000000000000000000000000000000000001fbb0000000000000000000000000000000000000000000000000000000000001fbc0000000000000000000000000000000000000000000000000000000000001fbd0000000000000000000000000000000000000000000000000000000000001fbe0000000000000000000000000000000000000000000000000000000000001fbf0000000000000000000000000000000000000000000000000000000000001fc00000000000000000000000000000000000000000000000000000000000001fc10000000000000000000000000000000000000000000000000000000000001fc20000000000000000000000000000000000000000000000000000000000001fc30000000000000000000000000000000000000000000000000000000000001fc40000000000000000000000000000000000000000000000000000000000001fc50000000000000000000000000000000000000000000000000000000000001fc60000000000000000000000000000000000000000000000000000000000001fc70000000000000000000000000000000000000000000000000000000000001fc80000000000000000000000000000000000000000000000000000000000001fc90000000000000000000000000000000000000000000000000000000000001fca0000000000000000000000000000000000000000000000000000000000001fcb0000000000000000000000000000000000000000000000000000000000001fcc0000000000000000000000000000000000000000000000000000000000001fcd0000000000000000000000000000000000000000000000000000000000001fce0000000000000000000000000000000000000000000000000000000000001fcf0000000000000000000000000000000000000000000000000000000000001fd00000000000000000000000000000000000000000000000000000000000001fd10000000000000000000000000000000000000000000000000000000000001fd20000000000000000000000000000000000000000000000000000000000001fd30000000000000000000000000000000000000000000000000000000000001fd40000000000000000000000000000000000000000000000000000000000001fd50000000000000000000000000000000000000000000000000000000000001fd60000000000000000000000000000000000000000000000000000000000001fd70000000000000000000000000000000000000000000000000000000000001fd80000000000000000000000000000000000000000000000000000000000001fd90000000000000000000000000000000000000000000000000000000000001fda0000000000000000000000000000000000000000000000000000000000001fdb0000000000000000000000000000000000000000000000000000000000001fdc0000000000000000000000000000000000000000000000000000000000001fdd0000000000000000000000000000000000000000000000000000000000001fde0000000000000000000000000000000000000000000000000000000000001fdf0000000000000000000000000000000000000000000000000000000000001fe00000000000000000000000000000000000000000000000000000000000001fe10000000000000000000000000000000000000000000000000000000000001fe20000000000000000000000000000000000000000000000000000000000001fe30000000000000000000000000000000000000000000000000000000000001fe40000000000000000000000000000000000000000000000000000000000001fe50000000000000000000000000000000000000000000000000000000000001fe60000000000000000000000000000000000000000000000000000000000001fe70000000000000000000000000000000000000000000000000000000000001fe80000000000000000000000000000000000000000000000000000000000001fe90000000000000000000000000000000000000000000000000000000000001fea0000000000000000000000000000000000000000000000000000000000001feb0000000000000000000000000000000000000000000000000000000000001fec0000000000000000000000000000000000000000000000000000000000001fed0000000000000000000000000000000000000000000000000000000000001fee0000000000000000000000000000000000000000000000000000000000001fef0000000000000000000000000000000000000000000000000000000000001ff00000000000000000000000000000000000000000000000000000000000001ff10000000000000000000000000000000000000000000000000000000000001ff20000000000000000000000000000000000000000000000000000000000001ff30000000000000000000000000000000000000000000000000000000000001ff40000000000000000000000000000000000000000000000000000000000001ff50000000000000000000000000000000000000000000000000000000000001ff60000000000000000000000000000000000000000000000000000000000001ff70000000000000000000000000000000000000000000000000000000000001ff80000000000000000000000000000000000000000000000000000000000001ff90000000000000000000000000000000000000000000000000000000000001ffa0000000000000000000000000000000000000000000000000000000000001ffb0000000000000000000000000000000000000000000000000000000000001ffc0000000000000000000000000000000000000000000000000000000000001ffd0000000000000000000000000000000000000000000000000000000000001ffe0000000000000000000000000000000000000000000000000000000000001fff", + "Proof": "8ad6f539bc7280de6af4c95e7cef39bb6873f18c46ee5eb67299324ee7c6e6da71be2dbd5e2cbafbae4b2d60b40a808c", + "Commitment": "abb6bcbe313530ce7779abdf633d5a3594a41fbad9a79f4a9b46b89c0cfe78f6a15948dec92c4404aedac8b5e7dd6059", + "InputPoint": "0120000000000000000000000000000000000000000000000000000000000000", + "ClaimedValue": "48cdd065593bd932707001e88674108ade9dd71d2e849e9a55fa71b70f06690f" + } + ] +} \ No newline at end of file